115 lines
6.3 KiB
JSON
115 lines
6.3 KiB
JSON
{
|
|
"name": "genshin-artifact-assistant",
|
|
"version": "0.1.0",
|
|
"author": "Bao",
|
|
"private": true,
|
|
"description": "Local Windows assistant for scanning Genshin artifacts and suggesting no-brainer builds.",
|
|
"main": "dist-electron/electron/main.js",
|
|
"type": "module",
|
|
"scripts": {
|
|
"predev": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\kill-stale-instances.ps1 && tsc -p tsconfig.electron.json && copy electron\\preload.cjs dist-electron\\electron\\preload.cjs",
|
|
"dev": "concurrently -k \"vite --host 127.0.0.1\" \"wait-on tcp:5173 && cross-env VITE_DEV_SERVER_URL=http://127.0.0.1:5173 electron .\"",
|
|
"dev:web": "vite --host 127.0.0.1",
|
|
"dev:admin": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\dev-admin.ps1 -ProjectRoot .",
|
|
"build": "tsc && vite build && tsc -p tsconfig.electron.json && copy electron\\\\preload.cjs dist-electron\\\\electron\\\\preload.cjs",
|
|
"icon:build": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\generate-app-icon.ps1",
|
|
"package:dir": "npm run icon:build && npm run build && npm run helper:build && cross-env CSC_IDENTITY_AUTO_DISCOVERY=false electron-builder --dir --win",
|
|
"package:verify:static": "node scripts/verify-packaged-app.mjs --static",
|
|
"package:verify": "node scripts/verify-packaged-app.mjs --input=outputs/dist/win-unpacked",
|
|
"package:offline-check": "npm run package:dir && npm run package:verify",
|
|
"package:live:inspect": "node scripts/run-packaged-live-acceptance.mjs --mode=inspect --view=inventory",
|
|
"package:live:scan5": "node scripts/run-packaged-live-acceptance.mjs --mode=scan5 --view=inventory",
|
|
"package:live:ui-scan5": "node scripts/run-packaged-live-acceptance.mjs --mode=ui-scan5 --view=scan",
|
|
"package:live:ui-row1": "node scripts/run-packaged-live-acceptance.mjs --mode=ui-scan-row1 --view=scan",
|
|
"package:live:ui-stream20": "node scripts/run-packaged-live-acceptance.mjs --mode=ui-stream20 --view=scan",
|
|
"package:live:ui-full-inventory": "node scripts/run-packaged-live-acceptance.mjs --mode=ui-full-inventory --view=scan",
|
|
"package:live:builds": "node scripts/run-packaged-builds-acceptance.mjs",
|
|
"acceptance:offline": "node scripts/run-offline-acceptance.mjs",
|
|
"dev-cleanup:test": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\kill-stale-instances.ps1 -SelfTest",
|
|
"preview": "vite preview --host 127.0.0.1",
|
|
"start": "electron .",
|
|
"lint": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"eval": "vitest run src/eval/ocrEval.test.ts",
|
|
"eval:review-candidates": "node scripts/export-review-eval-candidates.cjs",
|
|
"eval:prepare-confirmed": "node scripts/prepare-confirmed-review-case.cjs",
|
|
"scan:soak": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\live-soak.ps1",
|
|
"scan:goal": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\live-soak.ps1 -GoalRun",
|
|
"scan:goal:validated": "npm run scan:live:preflight && npm run scan:goal && npm run scan:assessment:validate -- --latest --summary",
|
|
"scan:goal:validated:wait": "npm run scan:live:preflight:wait && npm run scan:goal && npm run scan:assessment:validate -- --latest --summary",
|
|
"scan:iterate": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\live-soak.ps1 -Limits 20 -BenchmarkOcr",
|
|
"scan:iterate:validated": "npm run scan:live:preflight && npm run scan:iterate && npm run scan:assessment:validate -- --latest --summary --limit=20",
|
|
"scan:iterate:validated:wait": "npm run scan:live:preflight:wait && npm run scan:iterate && npm run scan:assessment:validate -- --latest --summary --limit=20",
|
|
"scan:repeatability": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\live-soak.ps1 -RepeatabilityRun -ScanEngine current",
|
|
"scan:repeatability:wait": "npm run scan:live:preflight:wait && npm run scan:repeatability && npm run scan:assessment:validate -- --latest --summary --limit=100 --expect-winner=current",
|
|
"scan:live:preflight": "node scripts/live-preflight.cjs",
|
|
"scan:live:preflight:wait": "node scripts/live-preflight.cjs --wait=120",
|
|
"scan:assessment:test": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\live-soak.ps1 -SelfTestAssessment",
|
|
"scan:assessment:validate": "node scripts/validate-scan-assessment.cjs",
|
|
"scan:native:smoke": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\native-live-smoke.ps1",
|
|
"scan:native:smoke:5": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts\\native-live-smoke.ps1 -Limit 5",
|
|
"scan:native:replay": "vite-node scripts/replay-native-results.ts",
|
|
"scan:native:analyze-review": "vite-node scripts/analyze-native-review.ts",
|
|
"scan:native:validate:saved": "vite-node scripts/validate-saved-native-runs.ts",
|
|
"helper:test": "dotnet run --project native/input-helper-tests/InputHelper.Tests.csproj -c Release",
|
|
"helper:build": "dotnet publish native/input-helper/InputHelper.csproj -c Release -o native/input-helper/bin/publish",
|
|
"data:genshin": "node scripts/generate-genshin-data.cjs"
|
|
},
|
|
"dependencies": {
|
|
"@vitejs/plugin-react": "^4.3.4",
|
|
"genshin-db": "^5.2.12",
|
|
"lucide-react": "^0.468.0",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"tesseract.js": "^7.0.0",
|
|
"vite": "^6.0.3"
|
|
},
|
|
"devDependencies": {
|
|
"@electron/asar": "^4.2.0",
|
|
"@types/node": "^22.10.2",
|
|
"@types/react": "^18.3.17",
|
|
"@types/react-dom": "^18.3.5",
|
|
"concurrently": "^9.1.0",
|
|
"cross-env": "^7.0.3",
|
|
"electron": "^43.1.0",
|
|
"electron-builder": "^26.15.3",
|
|
"typescript": "^5.7.2",
|
|
"vite-node": "^3.2.4",
|
|
"vitest": "^4.1.10",
|
|
"wait-on": "^8.0.1"
|
|
},
|
|
"build": {
|
|
"appId": "local.genshin.artifact-assistant",
|
|
"productName": "Genshin Artifact Assistant",
|
|
"directories": {
|
|
"output": "outputs/dist"
|
|
},
|
|
"files": [
|
|
"dist/**/*",
|
|
"dist-electron/**/*",
|
|
"package.json"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "native/input-helper/bin/publish",
|
|
"to": "input-helper",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
},
|
|
{
|
|
"from": "data/ik-inventorylists",
|
|
"to": "ik-inventorylists",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
}
|
|
],
|
|
"win": {
|
|
"icon": "build/icon.png",
|
|
"target": "nsis",
|
|
"requestedExecutionLevel": "requireAdministrator"
|
|
}
|
|
}
|
|
}
|