1{2 "name": "peach",3 "version": "1.9.5",4 "description": "Zero-knowledge password manager",5 "type": "module",6 "scripts": {7 "dev": "vite",8 "build": "vite build && node scripts/sync-chrome-dist.mjs",9 "build:chrome": "BUILD_TARGET=chrome vite build && node scripts/sync-chrome-dist.mjs",10 "build:firefox": "node scripts/clean-firefox-artifacts.mjs && BUILD_TARGET=firefox vite build",11 "build:e2e": "PEACH_E2E_PASSKEYS=1 BUILD_TARGET=chrome vite build && node scripts/sync-chrome-dist.mjs",12 "build:ci": "npm run build:chrome && npm run build:firefox",13 "package:firefox": "node scripts/clean-firefox-artifacts.mjs && npm run build:firefox && cd dist-firefox && web-ext build --overwrite-dest",14 "typecheck": "tsc --noEmit",15 "test": "vitest run",16 "test:watch": "vitest",17 "test:passkeys": "npm run build:e2e && playwright test tests/passkeys.spec.ts"18 },19 "dependencies": {20 "@bokuweb/zstd-wasm": "^0.0.27",21 "@noble/ciphers": "^2.2.0",22 "@noble/curves": "^2.2.0",23 "@noble/hashes": "^2.2.0",24 "eff-diceware-passphrase": "^3.0.0",25 "hash-wasm": "^4.12.0",26 "onnxruntime-web": "^1.24.3",27 "otpauth": "^9.5.0",28 "papaparse": "^5.5.3",29 "qrcode": "^1.5.4",30 "tldts": "^7.0.28",31 "webextension-polyfill": "^0.12.0",32 "zxcvbn": "^4.4.2"33 },34 "devDependencies": {35 "@crxjs/vite-plugin": "^2.4.0",36 "@playwright/test": "^1.59.1",37 "@types/chrome": "^0.1.40",38 "@types/node": "^22.0.0",39 "@types/papaparse": "^5.5.2",40 "@types/qrcode": "^1.5.6",41 "@types/zxcvbn": "^4.4.5",42 "@vitest/ui": "^4.1.4",43 "jsdom": "^29.0.2",44 "playwright": "^1.59.1",45 "typescript": "^6.0.3",46 "vite-plugin-solid": "^2.11.12",47 "vitest": "^4.1.4",48 "web-ext": "^8.10.0"49 }50}