{ "name": "web-ui", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "clean": "rimraf dist", "build": "npm run clean && vite build", "deploy:nas": "node scripts/deploy-nas.cjs", "release:nas": "npm run build && npm run deploy:nas", "lint": "eslint .", "preview": "vite preview", "test": "vitest", "test:run": "vitest run" }, "dependencies": { "@xyflow/react": "^12.10.2", "leaflet": "^1.9.4", "react": "^18.2.0", "react-dom": "^18.2.0", "react-leaflet": "^4.2.1", "react-router-dom": "^6.30.3", "react-swipeable": "^7.0.2", "recharts": "^3.7.0", "three": "^0.182.0" }, "devDependencies": { "@eslint/js": "^9.39.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", "@types/react": "^18.2.79", "@types/react-dom": "^18.2.25", "@vitejs/plugin-react": "^5.1.1", "eslint": "^9.39.1", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.4.24", "globals": "^16.5.0", "jsdom": "^25.0.1", "rimraf": "^6.1.2", "vite": "^7.2.4", "vitest": "^2.1.9" } }