{ "name": "clash-verge", "version": "2.5.4-rc", "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/collision": "^0.5.0", "@dnd-kit/dom": "^0.5.0", "@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.6.0", "@tauri-apps/plugin-opener": "2.5.5", "@tauri-apps/plugin-updater": "2.11.0", "ahooks": "^3.9.7", "cidr-block": "^2.3.0", "compare-versions": "^6.1.1", "dayjs": "1.11.23", "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.3.0", "react-dom": "19.3.0", "react-error-boundary": "6.1.5", "react-hook-form": "^7.76.1", "react-i18next": "17.0.14", "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.3.0", "@types/react-dom": "19.3.0", "@types/validator": "^13.15.10", "@vitejs/plugin-legacy": "^8.0.2", "@vitejs/plugin-react": "^6.0.2", "@wdio/tauri-service": "1.4.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.35.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": "^5.0.0", "webdriverio": "9.31.9", "ws": "8.21.3" }, "lint-staged": { "*.{ts,tsx,js,mjs}": [ "eslint --fix --max-warnings=0", "biome format --write" ], "*.{css,json}": [ "biome format --write" ] }, "type": "module", "packageManager": "pnpm@12.4.1" }