mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-10-18 20:05:03 +03:00
a1f2589eb5
The frontend uses MSW only through its Node test interceptor, but the unused browser worker requires synchronization after dependency updates and currently breaks make verify. Remove the unused asset, worker-directory configuration, and freshness checks while preserving Node MSW tests and the separate PWA worker. Update tooling descriptions to match. Fixes #6858
120 lines
3.3 KiB
JSON
120 lines
3.3 KiB
JSON
{
|
|
"name": "3x-ui-frontend",
|
|
"private": true,
|
|
"version": "1.0.0",
|
|
"type": "module",
|
|
"description": "3x-ui panel frontend (React 19 + Ant Design 6 + Vite 8).",
|
|
"engines": {
|
|
"node": ">=26.0.0",
|
|
"npm": ">=11.0.0"
|
|
},
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "npm run gen:api && vite build",
|
|
"preview": "vite preview",
|
|
"lint": "oxlint src tools",
|
|
"lint:fix": "oxlint --fix src tools",
|
|
"lint:deprecated": "oxlint --type-aware -A all -D typescript/no-deprecated src",
|
|
"format": "oxfmt src tools",
|
|
"format:check": "oxfmt --check src tools",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"storybook": "storybook dev -p 6006",
|
|
"build-storybook": "storybook build",
|
|
"gen": "npm run gen:zod && npm run gen:api",
|
|
"gen:api": "node scripts/build-openapi.mjs",
|
|
"gen:zod": "cd .. && go run ./tools/openapigen",
|
|
"prepare": "cd .. && husky frontend/.husky || true"
|
|
},
|
|
"lint-staged": {
|
|
"src/**/*.{ts,tsx}": [
|
|
"oxfmt",
|
|
"oxlint --fix"
|
|
]
|
|
},
|
|
"dependencies": {
|
|
"@ant-design/icons": "^6.3.4",
|
|
"@codemirror/lang-json": "^6.0.2",
|
|
"@codemirror/theme-one-dark": "^6.1.3",
|
|
"@hookform/resolvers": "^5.9.1",
|
|
"@noble/hashes": "^2.4.0",
|
|
"@tanstack/react-query": "^5.104.2",
|
|
"@tanstack/react-query-devtools": "^5.104.2",
|
|
"antd": "^6.6.5",
|
|
"codemirror": "^6.0.2",
|
|
"dayjs": "^1.11.23",
|
|
"i18next": "^26.4.3",
|
|
"otpauth": "^9.5.2",
|
|
"persian-calendar-suite": "^1.5.6",
|
|
"react": "^19.3.0",
|
|
"react-dom": "^19.3.0",
|
|
"react-hook-form": "^7.90.0",
|
|
"react-i18next": "^17.0.16",
|
|
"react-router": "^8.4.0",
|
|
"swagger-ui-react": "^5.33.1",
|
|
"uplot": "^1.6.32",
|
|
"zod": "^4.6.6"
|
|
},
|
|
"devDependencies": {
|
|
"@storybook/addon-a11y": "^10.6.1",
|
|
"@storybook/addon-docs": "^10.6.1",
|
|
"@storybook/addon-vitest": "^10.6.1",
|
|
"@storybook/react-vite": "^10.6.1",
|
|
"@testing-library/dom": "^10.4.2",
|
|
"@testing-library/react": "^16.3.3",
|
|
"@types/react": "^19.3.0",
|
|
"@types/react-dom": "^19.3.0",
|
|
"@types/swagger-ui-react": "^5.18.0",
|
|
"@vitejs/plugin-react": "^6.1.2",
|
|
"@vitest/browser-playwright": "5.0.3",
|
|
"@vitest/coverage-v8": "^5.0.3",
|
|
"husky": "^9.1.7",
|
|
"jsdom": "^30.1.2",
|
|
"lint-staged": "^17.6.0",
|
|
"msw": "^3.0.3",
|
|
"oxfmt": "0.72.0",
|
|
"oxlint": "1.87.0",
|
|
"oxlint-tsgolint": "^7.0.2004",
|
|
"playwright": "^1.64.0",
|
|
"storybook": "^10.6.1",
|
|
"typescript": "7.0.2",
|
|
"vite": "8.3.4",
|
|
"vitest": "^5.0.3"
|
|
},
|
|
"overrides": {
|
|
"dompurify": "^3.4.15",
|
|
"react-copy-to-clipboard": "^5.1.1",
|
|
"react-inspector": "^9.0.0",
|
|
"seroval": "^1.6.8",
|
|
"seroval-plugins": "^1.6.8",
|
|
"react-debounce-input": {
|
|
"react": "^19.0.0"
|
|
},
|
|
"swagger-ui-react": {
|
|
"js-yaml": "^4.3.2",
|
|
"brace-expansion": "^5.0.9"
|
|
},
|
|
"@typeschema/valibot": {
|
|
"valibot": "^1.1.0"
|
|
},
|
|
"@storybook/addon-vitest": {
|
|
"vitest": "^5.0.0",
|
|
"@vitest/browser-playwright": "^5.0.0",
|
|
"@vitest/browser": "^5.0.0"
|
|
},
|
|
"remarkable": {
|
|
"argparse": "^2.0.1"
|
|
}
|
|
},
|
|
"allowScripts": {
|
|
"@scarf/scarf": false,
|
|
"@tree-sitter-grammars/tree-sitter-yaml": false,
|
|
"tree-sitter": false,
|
|
"core-js-pure": false,
|
|
"tree-sitter-json": false,
|
|
"msw": false,
|
|
"esbuild": false
|
|
}
|
|
}
|