mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-10-14 21:20:48 +08:00
Drive the production home traffic graph through embedded WebDriver in an isolated optimized measurement build. Record attributed WebContent and main process CPU/RSS distributions across foreground, hidden and restored phases. Keep replay, raw reports, independent-run comparison, cleanup checks and focused validation available through project commands. Normal release builds exclude the automation service and measurement entry points.
147 lines
5.0 KiB
JSON
147 lines
5.0 KiB
JSON
{
|
|
"name": "clash-verge",
|
|
"version": "2.5.4",
|
|
"license": "GPL-3.0-only",
|
|
"scripts": {
|
|
"prepare": "husky || true",
|
|
"dev": "node scripts/dev.mjs dev",
|
|
"dev:service": "node scripts/dev.mjs service",
|
|
"dev:sidecar": "node scripts/dev.mjs sidecar",
|
|
"dev:diff": "node scripts/dev.mjs dev",
|
|
"dev:trace": "node scripts/dev.mjs trace",
|
|
"dev:tauri": "cross-env RUST_BACKTRACE=full tauri dev -f tauri-dev",
|
|
"build": "cross-env NODE_OPTIONS='--max-old-space-size=4096' tauri build",
|
|
"build:fast": "cross-env NODE_OPTIONS='--max-old-space-size=4096' tauri build -- --profile fast-release",
|
|
"tauri": "tauri",
|
|
"web:dev": "vite",
|
|
"web:build": "tsc --noEmit && vite build",
|
|
"web:serve": "vite preview",
|
|
"prebuild": "node scripts/prebuild.mjs",
|
|
"updater": "node scripts/updater.mjs",
|
|
"updater-fixed-webview2": "node scripts/updater-fixed-webview2.mjs",
|
|
"release-version": "node scripts/release-version.mjs",
|
|
"release:autobuild": "pnpm release-version autobuild",
|
|
"release:deploytest": "pnpm release-version deploytest",
|
|
"eslint": "pnpm lint",
|
|
"lint": "eslint -c eslint.config.ts --max-warnings=0 --cache --cache-location .eslintcache src",
|
|
"lint:fix": "eslint -c eslint.config.ts --max-warnings=0 --cache --cache-location .eslintcache --fix src",
|
|
"format": "biome format --write .",
|
|
"format:check": "biome format .",
|
|
"i18n:check": "node scripts/cleanup-unused-i18n.mjs",
|
|
"i18n:format": "node scripts/cleanup-unused-i18n.mjs --align --apply",
|
|
"i18n:types": "node scripts/generate-i18n-keys.mjs",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"knip:check": "knip",
|
|
"knip:report": "knip --no-exit-code",
|
|
"perf:build": "node scripts/perf/build.mjs",
|
|
"perf:run": "node scripts/perf/run.mjs",
|
|
"perf:compare": "node scripts/perf/compare.mjs",
|
|
"perf:test": "node --test scripts/perf/report.test.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@dnd-kit/helpers": "^0.5.0",
|
|
"@dnd-kit/react": "^0.5.0",
|
|
"@emotion/react": "^11.14.0",
|
|
"@emotion/styled": "^11.14.1",
|
|
"@juggle/resize-observer": "^3.4.0",
|
|
"@monaco-editor/react": "^4.7.0",
|
|
"@mui/icons-material": "^9.0.1",
|
|
"@mui/material": "^9.0.1",
|
|
"@tanstack/react-virtual": "^3.13.25",
|
|
"@tauri-apps/api": "2.11.1",
|
|
"@tauri-apps/plugin-clipboard-manager": "^2.3.2",
|
|
"@tauri-apps/plugin-dialog": "^2.7.1",
|
|
"@tauri-apps/plugin-fs": "^2.5.1",
|
|
"@tauri-apps/plugin-http": "~2.5.9",
|
|
"@tauri-apps/plugin-opener": "2.5.4",
|
|
"@tauri-apps/plugin-updater": "2.10.1",
|
|
"ahooks": "^3.9.7",
|
|
"cidr-block": "^2.3.0",
|
|
"compare-versions": "^6.1.1",
|
|
"dayjs": "1.11.21",
|
|
"foxact": "^0.3.4",
|
|
"foxts": "^5.4.2",
|
|
"i18next": "^26.2.0",
|
|
"js-yaml": "^5.0.0",
|
|
"lodash-es": "^4.18.1",
|
|
"meta-json-schema": "^1.19.25",
|
|
"monaco-editor": "^0.56.0",
|
|
"monaco-yaml": "^5.5.0",
|
|
"nanoid": "^6.0.0",
|
|
"qrcode.react": "^4.2.0",
|
|
"react": "19.2.8",
|
|
"react-dom": "19.2.8",
|
|
"react-error-boundary": "6.1.2",
|
|
"react-hook-form": "^7.76.1",
|
|
"react-i18next": "17.0.11",
|
|
"react-markdown": "10.1.0",
|
|
"react-router": "^8.0.0",
|
|
"rehype-raw": "^7.0.0",
|
|
"rehype-sanitize": "^6.0.0",
|
|
"remark-gfm": "^4.0.1",
|
|
"swr": "^2.4.2",
|
|
"tauri-plugin-mihomo-api": "github:clash-verge-rev/tauri-plugin-mihomo#main",
|
|
"types-pac": "^1.0.3",
|
|
"validator": "^13.15.35"
|
|
},
|
|
"devDependencies": {
|
|
"@actions/github": "^9.1.1",
|
|
"@biomejs/biome": "^2.4.15",
|
|
"@eslint-react/eslint-plugin": "^5.8.5",
|
|
"@eslint/js": "^10.0.1",
|
|
"@tauri-apps/cli": "2.11.4",
|
|
"@types/lodash-es": "^4.17.12",
|
|
"@types/node": "^24.12.4",
|
|
"@types/react": "19.2.18",
|
|
"@types/react-dom": "19.2.4",
|
|
"@types/validator": "^13.15.10",
|
|
"@vitejs/plugin-legacy": "^8.0.2",
|
|
"@vitejs/plugin-react": "^6.0.2",
|
|
"@wdio/tauri-service": "1.3.0",
|
|
"adm-zip": "^0.6.0",
|
|
"axios": "^1.16.1",
|
|
"cli-color": "^2.0.4",
|
|
"commander": "^15.0.0",
|
|
"cross-env": "^10.1.0",
|
|
"eslint": "^10.4.0",
|
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
"eslint-plugin-es-x": "^10.0.0",
|
|
"eslint-plugin-import-x": "^4.16.2",
|
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
|
"eslint-plugin-react-hooks": "^7.1.1",
|
|
"eslint-plugin-react-refresh": "^0.5.2",
|
|
"eslint-plugin-sukka": "^10.0.0",
|
|
"eslint-plugin-unused-imports": "^4.4.1",
|
|
"glob": "^13.0.6",
|
|
"globals": "^17.6.0",
|
|
"https-proxy-agent": "^9.0.0",
|
|
"husky": "^9.1.7",
|
|
"jiti": "^2.7.0",
|
|
"knip": "6.32.1",
|
|
"lint-staged": "^17.0.5",
|
|
"sass": "^1.100.0",
|
|
"tar": "^7.5.15",
|
|
"terser": "^5.48.0",
|
|
"typescript": "^6.0.3",
|
|
"typescript-eslint": "^8.59.4",
|
|
"vite": "^8.0.14",
|
|
"vite-plugin-svgr": "^5.2.0",
|
|
"vitest": "^4.1.10",
|
|
"webdriverio": "9.30.0",
|
|
"ws": "8.19.0"
|
|
},
|
|
"lint-staged": {
|
|
"*.{ts,tsx,js,mjs}": [
|
|
"eslint --fix --max-warnings=0",
|
|
"biome format --write"
|
|
],
|
|
"*.{css,json}": [
|
|
"biome format --write"
|
|
]
|
|
},
|
|
"type": "module",
|
|
"packageManager": "pnpm@12.3.3"
|
|
}
|