93 lines
3.4 KiB
JSON
93 lines
3.4 KiB
JSON
{
|
|
"name": "opsxshell-gui",
|
|
"version": "2.1.1",
|
|
"description": "简单好用的原生运维终端 · SSH / SFTP / 转发 / RDP·VNC · 短路径、不堆堡垒",
|
|
"author": "OpsXShell Team",
|
|
"license": "MIT",
|
|
"scripts": {
|
|
"dev": "tauri dev",
|
|
"dev:ui": "vite",
|
|
"dev:tauri": "tauri dev",
|
|
"build": "tauri build",
|
|
"build:ui": "tsc --noEmit && vite build",
|
|
"build:tauri": "tauri build",
|
|
"preview": "vite preview",
|
|
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
|
|
"lint:fix": "eslint . --ext ts,tsx --fix",
|
|
"format": "prettier --write \"**/*.{ts,tsx,css,json,md}\"",
|
|
"format:check": "prettier --check \"**/*.{ts,tsx,css,json,md}\"",
|
|
"typecheck": "npm run typecheck:ui && npm run typecheck:test",
|
|
"typecheck:ui": "tsc --noEmit",
|
|
"typecheck:test": "tsc --noEmit -p tsconfig.test.json",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"test:patrol": "vitest run test/patrol",
|
|
"test:coverage": "vitest run --coverage",
|
|
"test:release": "node --test scripts/*.test.mjs",
|
|
"acceptance": "npm run acceptance:quick",
|
|
"acceptance:quick": "node scripts/acceptance.mjs quick",
|
|
"acceptance:full": "node scripts/acceptance.mjs full",
|
|
"clean": "rimraf dist src-tauri/target/release src-tauri/target/*/release",
|
|
"prepare": "husky",
|
|
"dist": "tauri build",
|
|
"dist:win": "tauri build --target x86_64-pc-windows-msvc",
|
|
"dist:mac": "tauri build --target aarch64-apple-darwin",
|
|
"release:preflight:mac": "node scripts/release-preflight.mjs macos",
|
|
"release:preflight:win": "node scripts/release-preflight.mjs windows",
|
|
"release:verify:mac": "node scripts/verify-release.mjs macos",
|
|
"release:verify:win": "node scripts/verify-release.mjs windows",
|
|
"dist:linux": "tauri build --target x86_64-unknown-linux-gnu",
|
|
"start": "bash scripts/run.sh",
|
|
"build:native": "bash scripts/build.sh"
|
|
},
|
|
"dependencies": {
|
|
"@monaco-editor/react": "^4.7.0",
|
|
"@tauri-apps/api": "^2.11.1",
|
|
"@tauri-apps/plugin-opener": "^2.7.1",
|
|
"@vitest/coverage-v8": "^4.1.4",
|
|
"@xterm/addon-fit": "^0.10.0",
|
|
"@xterm/addon-search": "^0.16.0",
|
|
"@xterm/addon-web-links": "^0.11.0",
|
|
"@xterm/xterm": "^5.5.0",
|
|
"husky": "^9.1.7",
|
|
"i18next": "^26.3.6",
|
|
"lint-staged": "^16.4.0",
|
|
"lucide-react": "^0.294.0",
|
|
"monaco-editor": "^0.55.1",
|
|
"prettier": "^3.8.3",
|
|
"prettier-plugin-tailwindcss": "^0.7.2",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-i18next": "^17.0.11",
|
|
"react-markdown": "^10.1.0",
|
|
"react-router-dom": "^6.21.0",
|
|
"remark-gfm": "^4.0.1",
|
|
"rimraf": "^6.1.3",
|
|
"zmodem-ts": "^1.0.8",
|
|
"zustand": "^4.4.7"
|
|
},
|
|
"devDependencies": {
|
|
"@tauri-apps/cli": "^2.11.4",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@testing-library/user-event": "^14.6.1",
|
|
"@types/node": "^22.20.1",
|
|
"@types/react": "^18.2.43",
|
|
"@types/react-dom": "^18.2.17",
|
|
"@typescript-eslint/eslint-plugin": "^6.14.0",
|
|
"@typescript-eslint/parser": "^6.14.0",
|
|
"@vitejs/plugin-react": "^4.2.1",
|
|
"@xterm/addon-webgl": "^0.19.0",
|
|
"autoprefixer": "^10.4.16",
|
|
"eslint": "^8.55.0",
|
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
"eslint-plugin-react-refresh": "^0.4.5",
|
|
"jsdom": "^29.0.1",
|
|
"postcss": "^8.4.32",
|
|
"tailwindcss": "^3.3.6",
|
|
"typescript": "^5.2.2",
|
|
"vite": "^5.0.8",
|
|
"vitest": "^4.1.2"
|
|
}
|
|
}
|