{ "name": "frontend", "version": "0.1.0", "private": true, "scripts": { "start": "vite", "dev": "vite", "build": "vite build", "preview": "vite preview", "test": "vitest run" }, "dependencies": { "@chakra-ui/icons": "^2.1.1", "@chakra-ui/react": "^2.8.2", "@emotion/react": "^11.11.1", "@emotion/styled": "^11.11.0", "@hookform/resolvers": "^3.3.4", "@lobehub/icons": "^1.10.1", "@monaco-editor/react": "^4.6.0", "@tanstack/react-query": "^4.36.1", "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", "@tinymce/tinymce-react": "^6.3.0", "@types/jest": "^27.5.2", "@types/node": "^20.17.47", "@types/qrcode": "^1.5.6", "@types/react": "^18.2.45", "@types/react-dom": "^18.2.18", "@types/react-frame-component": "^4.1.6", "axios": "^1.13.6", "chart.js": "^4.4.1", "date-fns": "^4.1.0", "dompurify": "^3.3.0", "framer-motion": "^10.16.4", "i18next": "^23.7.16", "i18next-browser-languagedetector": "^7.2.0", "i18next-http-backend": "^2.4.2", "lucide-react": "^0.379.0", "maplibre-gl": "^5.9.0", "monaco-editor": "^0.49.0", "popmotion": "^11.0.5", "qrcode": "^1.5.4", "quill": "^2.0.3", "react": "^18.2.0", "react-beautiful-dnd": "^13.1.1", "react-chartjs-2": "^5.2.0", "react-datepicker": "^8.7.0", "react-dom": "^18.2.0", "react-frame-component": "^5.2.7", "react-helmet-async": "^2.0.5", "react-hook-form": "^7.48.2", "react-i18next": "^13.5.0", "react-icons": "^4.12.0", "react-image-crop": "^11.0.10", "react-markdown": "^10.1.0", "react-quill": "^2.0.0", "react-router-dom": "^6.30.2", "react-simple-maps": "^3.0.0", "react-syntax-highlighter": "^15.6.6", "tinymce": "^8.2.2", "typescript": "^4.9.5", "web-vitals": "^2.1.4", "yup": "^1.3.3" }, "devDependencies": { "@types/chart.js": "^2.9.41", "@types/dompurify": "^3.0.5", "@types/geojson": "^7946.0.8", "@types/maplibre-gl": "^1.13.2", "@types/react-beautiful-dnd": "^13.1.8", "@types/react-chartjs-2": "^2.0.2", "@types/react-image-crop": "^8.1.6", "@types/react-syntax-highlighter": "^15.5.13", "@vitejs/plugin-react": "^4.4.1", "eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-react-hooks": "^7.0.1", "jsdom": "^26.1.0", "vite": "^6.3.5", "vitest": "^3.1.1" }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] } }