{
  "name": "kerui-portal",
  "version": "0.0.0",
  "private": true,
  "type": "module",
  "engines": {
    "node": "^20.19.0 || >=22.12.0"
  },
  "scripts": {
    "dev": "vite",
    "build:local": "node --max_old_space_size=4096 ./node_modules/vite/bin/vite.js build",
    "build:dev": "node --max_old_space_size=8192 ./node_modules/vite/bin/vite.js build --mode dev",
    "build:test": "node --max_old_space_size=4096 ./node_modules/vite/bin/vite.js build --mode test",
    "build:stage": "node --max_old_space_size=4096 ./node_modules/vite/bin/vite.js build --mode stage",
    "build:prod": "node --max_old_space_size=8192 ./node_modules/vite/bin/vite.js build --mode prod",
    "preview": "vite preview",
    "build-only": "vite build",
    "type-check": "vue-tsc --build"
  },
  "dependencies": {
    "@iconify/iconify": "^3.1.1",
    "@iconify/vue": "^5.0.0",
    "@types/qs": "^6.14.0",
    "axios": "^1.13.1",
    "crypto-js": "^4.2.0",
    "dingtalk-jsapi": "^3.2.5",
    "echarts": "^6.0.0",
    "element-plus": "^2.11.7",
    "jsencrypt": "^3.5.4",
    "motion-v": "^1.7.4",
    "pinia": "^3.0.3",
    "pinia-plugin-persistedstate": "^4.7.1",
    "qs": "^6.14.0",
    "vue": "^3.5.22",
    "vue-router": "^4.6.3",
    "vue-types": "^6.0.0",
    "vue3-count-to": "^1.1.2",
    "web-storage-cache": "^1.1.1"
  },
  "devDependencies": {
    "@tailwindcss/vite": "^4.1.16",
    "@tsconfig/node22": "^22.0.2",
    "@types/crypto-js": "^4.2.2",
    "@types/node": "^22.18.11",
    "@vitejs/plugin-vue": "^6.0.1",
    "@vue/tsconfig": "^0.8.1",
    "autoprefixer": "^10.4.21",
    "npm-run-all2": "^8.0.4",
    "postcss": "^8.5.6",
    "tailwindcss": "^4.1.16",
    "typescript": "~5.9.0",
    "unplugin-auto-import": "^20.2.0",
    "unplugin-vue-components": "^30.0.0",
    "vite": "^7.1.11",
    "vite-plugin-vue-devtools": "^8.0.3",
    "vue-tsc": "^3.1.1"
  }
}
