forked from jsnbuchanan/crowd-funder-for-time-pwa
- Add @capacitor/camera@6.0.0 for cross-platform photo capture - Add @capacitor/filesystem@6.0.0 for file system operations - Maintain compatibility with existing Capacitor core v6.2.1 These plugins enable native camera access and file system operations for the Capacitor platform implementation.
187 lines
7.3 KiB
JSON
187 lines
7.3 KiB
JSON
{
|
|
"name": "timesafari",
|
|
"version": "0.4.4",
|
|
"description": "Time Safari Application",
|
|
"author": {
|
|
"name": "Time Safari Team"
|
|
},
|
|
"scripts": {
|
|
"dev": "vite --config vite.config.dev.mts",
|
|
"serve": "vite preview",
|
|
"build": "VITE_GIT_HASH=`git log -1 --pretty=format:%h` vite build --config vite.config.mts",
|
|
"lint": "eslint --ext .js,.ts,.vue --ignore-path .gitignore src",
|
|
"lint-fix": "eslint --ext .js,.ts,.vue --ignore-path .gitignore --fix src",
|
|
"prebuild": "eslint --ext .js,.ts,.vue --ignore-path .gitignore src && node sw_combine.js",
|
|
"test:all": "npm run test:prerequisites && npm run build && npm run test:web && npm run test:mobile",
|
|
"test:prerequisites": "node scripts/check-prerequisites.js",
|
|
"test:web": "npx playwright test -c playwright.config-local.ts --trace on",
|
|
"test:mobile": "npm run build:capacitor && npm run test:android && npm run test:ios",
|
|
"test:android": "node scripts/test-android.js",
|
|
"test:ios": "node scripts/test-ios.js",
|
|
"check:android-device": "adb devices | grep -w 'device' || (echo 'No Android device connected' && exit 1)",
|
|
"check:ios-device": "xcrun xctrace list devices 2>&1 | grep -w 'Booted' || (echo 'No iOS simulator running' && exit 1)",
|
|
"clean:electron": "rimraf dist-electron",
|
|
"build:pywebview": "vite build --config vite.config.pywebview.mts",
|
|
"build:electron": "npm run clean:electron && vite build --config vite.config.electron.mts && node scripts/build-electron.js",
|
|
"build:capacitor": "vite build --config vite.config.capacitor.mts",
|
|
"build:web": "vite build --config vite.config.web.mts",
|
|
"electron:dev": "npm run build && electron dist-electron",
|
|
"electron:start": "electron dist-electron",
|
|
"electron:build-linux": "npm run build:electron && electron-builder --linux AppImage",
|
|
"electron:build-linux-deb": "npm run build:electron && electron-builder --linux deb",
|
|
"electron:build-linux-prod": "NODE_ENV=production npm run build:electron && electron-builder --linux AppImage",
|
|
"build:electron-prod": "NODE_ENV=production npm run build:electron",
|
|
"pywebview:dev": "vite build --config vite.config.pywebview.mts && .venv/bin/python src/pywebview/main.py",
|
|
"pywebview:build": "vite build --config vite.config.pywebview.mts && .venv/bin/python src/pywebview/main.py",
|
|
"pywebview:package-linux": "vite build --mode pywebview --config vite.config.pywebview.mts && .venv/bin/python -m PyInstaller --name TimeSafari --add-data 'dist:www' src/pywebview/main.py",
|
|
"pywebview:package-win": "vite build --mode pywebview --config vite.config.pywebview.mts && .venv/Scripts/python -m PyInstaller --name TimeSafari --add-data 'dist;www' src/pywebview/main.py",
|
|
"pywebview:package-mac": "vite build --mode pywebview --config vite.config.pywebview.mts && .venv/bin/python -m PyInstaller --name TimeSafari --add-data 'dist:www' src/pywebview/main.py",
|
|
"fastlane:ios:beta": "cd ios && fastlane beta",
|
|
"fastlane:ios:release": "cd ios && fastlane release",
|
|
"fastlane:android:beta": "cd android && fastlane beta",
|
|
"fastlane:android:release": "cd android && fastlane release"
|
|
},
|
|
"dependencies": {
|
|
"@capacitor/android": "^6.2.0",
|
|
"@capacitor/app": "^6.0.0",
|
|
"@capacitor/camera": "^6.0.0",
|
|
"@capacitor/cli": "^6.2.0",
|
|
"@capacitor/core": "^6.2.0",
|
|
"@capacitor/filesystem": "^6.0.0",
|
|
"@capacitor/ios": "^6.2.0",
|
|
"@dicebear/collection": "^5.4.1",
|
|
"@dicebear/core": "^5.4.1",
|
|
"@ethersproject/hdnode": "^5.7.0",
|
|
"@ethersproject/wallet": "^5.8.0",
|
|
"@fortawesome/fontawesome-svg-core": "^6.5.1",
|
|
"@fortawesome/free-solid-svg-icons": "^6.5.1",
|
|
"@fortawesome/vue-fontawesome": "^3.0.6",
|
|
"@peculiar/asn1-ecc": "^2.3.8",
|
|
"@peculiar/asn1-schema": "^2.3.8",
|
|
"@pvermeer/dexie-encrypted-addon": "^3.0.0",
|
|
"@simplewebauthn/browser": "^10.0.0",
|
|
"@simplewebauthn/server": "^10.0.0",
|
|
"@tweenjs/tween.js": "^21.1.1",
|
|
"@types/qrcode": "^1.5.5",
|
|
"@veramo/core": "^5.6.0",
|
|
"@veramo/credential-w3c": "^5.6.0",
|
|
"@veramo/data-store": "^5.6.0",
|
|
"@veramo/did-manager": "^5.6.0",
|
|
"@veramo/did-provider-ethr": "^5.6.0",
|
|
"@veramo/did-provider-peer": "^6.0.0",
|
|
"@veramo/did-resolver": "^5.6.0",
|
|
"@veramo/key-manager": "^5.6.0",
|
|
"@vue-leaflet/vue-leaflet": "^0.10.1",
|
|
"@vueuse/core": "^12.3.0",
|
|
"@zxing/text-encoding": "^0.9.0",
|
|
"asn1-ber": "^1.2.2",
|
|
"axios": "^1.6.8",
|
|
"cbor-x": "^1.5.9",
|
|
"class-transformer": "^0.5.1",
|
|
"dexie": "^3.2.7",
|
|
"dexie-export-import": "^4.1.4",
|
|
"did-jwt": "^7.4.7",
|
|
"did-resolver": "^4.1.0",
|
|
"dotenv": "^16.0.3",
|
|
"ethereum-cryptography": "^2.1.3",
|
|
"ethereumjs-util": "^7.1.5",
|
|
"jdenticon": "^3.2.0",
|
|
"js-generate-password": "^0.1.9",
|
|
"js-yaml": "^4.1.0",
|
|
"leaflet": "^1.9.4",
|
|
"localstorage-slim": "^2.7.0",
|
|
"lru-cache": "^10.2.0",
|
|
"luxon": "^3.4.4",
|
|
"merkletreejs": "^0.3.11",
|
|
"nostr-tools": "^2.10.4",
|
|
"notiwind": "^2.0.2",
|
|
"papaparse": "^5.4.1",
|
|
"pina": "^0.20.2204228",
|
|
"pinia-plugin-persistedstate": "^3.2.1",
|
|
"qr-code-generator-vue3": "^1.4.21",
|
|
"qrcode": "^1.5.4",
|
|
"ramda": "^0.29.1",
|
|
"readable-stream": "^4.5.2",
|
|
"reflect-metadata": "^0.1.14",
|
|
"register-service-worker": "^1.7.2",
|
|
"simple-vue-camera": "^1.1.3",
|
|
"sqlite3": "^5.1.7",
|
|
"stream-browserify": "^3.0.0",
|
|
"three": "^0.156.1",
|
|
"ua-parser-js": "^1.0.37",
|
|
"vue": "^3.5.13",
|
|
"vue-axios": "^3.5.2",
|
|
"vue-facing-decorator": "^3.0.4",
|
|
"vue-picture-cropper": "^0.7.0",
|
|
"vue-qrcode-reader": "^5.5.3",
|
|
"vue-router": "^4.5.0",
|
|
"web-did-resolver": "^2.0.27",
|
|
"zod": "^3.24.2"
|
|
},
|
|
"devDependencies": {
|
|
"@capacitor/assets": "^3.0.5",
|
|
"@playwright/test": "^1.45.2",
|
|
"@types/dom-webcodecs": "^0.1.7",
|
|
"@types/js-yaml": "^4.0.9",
|
|
"@types/leaflet": "^1.9.8",
|
|
"@types/luxon": "^3.4.2",
|
|
"@types/node": "^20.14.11",
|
|
"@types/node-fetch": "^2.6.12",
|
|
"@types/ramda": "^0.29.11",
|
|
"@types/sqlite3": "^3.1.11",
|
|
"@types/three": "^0.155.1",
|
|
"@types/ua-parser-js": "^0.7.39",
|
|
"@typescript-eslint/eslint-plugin": "^6.21.0",
|
|
"@typescript-eslint/parser": "^6.21.0",
|
|
"@vitejs/plugin-vue": "^5.2.1",
|
|
"@vue/eslint-config-typescript": "^11.0.3",
|
|
"autoprefixer": "^10.4.19",
|
|
"concurrently": "^8.2.2",
|
|
"electron": "^33.2.1",
|
|
"electron-builder": "^25.1.8",
|
|
"eslint": "^8.57.0",
|
|
"eslint-config-prettier": "^9.1.0",
|
|
"eslint-plugin-prettier": "^5.2.1",
|
|
"eslint-plugin-vue": "^9.32.0",
|
|
"fs-extra": "^11.3.0",
|
|
"markdownlint": "^0.37.4",
|
|
"markdownlint-cli": "^0.44.0",
|
|
"npm-check-updates": "^17.1.13",
|
|
"postcss": "^8.4.38",
|
|
"prettier": "^3.2.5",
|
|
"rimraf": "^6.0.1",
|
|
"tailwindcss": "^3.4.1",
|
|
"typescript": "~5.2.2",
|
|
"vite": "^5.2.0",
|
|
"vite-plugin-pwa": "^0.19.8"
|
|
},
|
|
"main": "./dist-electron/main.js",
|
|
"build": {
|
|
"appId": "app.timesafari",
|
|
"productName": "TimeSafari",
|
|
"directories": {
|
|
"output": "dist-electron-packages"
|
|
},
|
|
"files": [
|
|
"dist-electron/**/*",
|
|
"src/electron/**/*",
|
|
"main.js"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "dist-electron",
|
|
"to": "."
|
|
}
|
|
],
|
|
"linux": {
|
|
"target": [
|
|
"AppImage",
|
|
"deb"
|
|
],
|
|
"category": "Office",
|
|
"icon": "build/icon.png"
|
|
},
|
|
"asar": true
|
|
}
|
|
}
|