{
  "type": "module",
  "private": true,
  "author": {
    "name": "HaoZi Tech",
    "email": "admin@haozi.net",
    "url": "https://git.haozi.net/org"
  },
  "license": "MIT",
  "repository": {
    "url": "https://github.com/tnb-labs/panel"
  },
  "scripts": {
    "dev": "vite",
    "build": "run-s gen-auto-import type-check build-only copy",
    "preview": "vite preview",
    "build-only": "vite build",
    "type-check": "vue-tsc --noEmit",
    "lint": "run-s gen-auto-import lint-only",
    "lint-only": "eslint . --fix",
    "format": "prettier --write src/",
    "copy": "cpx \"dist/**/*\" \"../pkg/embed/frontend\" -C",
    "gen-auto-import": "tsx gen-auto-import.ts",
    "gettext:extract": "vue-gettext-extract",
    "gettext:compile": "vue-gettext-compile"
  },
  "dependencies": {
    "@alova/adapter-xhr": "^2.1.1",
    "@eslint/eslintrc": "^3.3.1",
    "@fontsource-variable/jetbrains-mono": "^5.2.5",
    "@guolao/vue-monaco-editor": "^1.5.5",
    "@vavt/copy2clipboard": "^1.0.3",
    "@vue-js-cron/naive-ui": "^2.0.11",
    "@vueuse/core": "^13.2.0",
    "@xterm/addon-attach": "^0.11.0",
    "@xterm/addon-clipboard": "^0.1.0",
    "@xterm/addon-fit": "^0.10.0",
    "@xterm/addon-unicode11": "^0.8.0",
    "@xterm/addon-web-links": "^0.11.0",
    "@xterm/addon-webgl": "^0.18.0",
    "@xterm/xterm": "^5.5.0",
    "alova": "^3.2.11",
    "cronstrue": "^2.61.0",
    "echarts": "^5.6.0",
    "install": "^0.13.0",
    "lodash-es": "^4.17.21",
    "luxon": "^3.6.1",
    "marked": "^16.0.0",
    "mitt": "^3.0.1",
    "node-forge": "^1.3.1",
    "pinia": "^3.0.2",
    "pinia-plugin-persistedstate": "^4.3.0",
    "remove": "^0.1.5",
    "vue": "^3.5.14",
    "vue-echarts": "^7.0.3",
    "vue-router": "^4.5.1",
    "vue3-gettext": "4.0.0-alpha.8"
  },
  "devDependencies": {
    "@iconify/json": "^2.2.341",
    "@iconify/vue": "^5.0.0",
    "@rushstack/eslint-patch": "^1.11.0",
    "@tsconfig/node22": "^22.0.2",
    "@types/lodash-es": "^4.17.12",
    "@types/luxon": "^3.6.2",
    "@types/node": "^22.15.21",
    "@types/node-forge": "^1.3.11",
    "@unocss/eslint-config": "^66.1.2",
    "@vitejs/plugin-vue": "^6.0.0",
    "@vue/eslint-config-prettier": "^10.2.0",
    "@vue/eslint-config-typescript": "^14.5.0",
    "@vue/tsconfig": "^0.7.0",
    "colord": "^2.9.3",
    "cpx2": "^8.0.0",
    "eslint": "^9.27.0",
    "eslint-plugin-vue": "^10.1.0",
    "md-editor-v3": "^5.6.0",
    "monaco-editor": "^0.52.2",
    "naive-ui": "^2.41.0",
    "npm-run-all2": "^8.0.4",
    "prettier": "^3.5.3",
    "prettier-plugin-organize-imports": "^4.1.0",
    "sass": "^1.89.0",
    "tsx": "^4.19.4",
    "typescript": "5.8.3",
    "unocss": "^66.1.2",
    "unplugin-auto-import": "^19.3.0",
    "unplugin-icons": "^22.1.0",
    "unplugin-vue-components": "^28.7.0",
    "vite": "^7.0.0",
    "vite-plugin-html": "^3.2.2",
    "vite-plugin-mock": "^3.0.2",
    "vite-plugin-static-copy": "^3.0.0",
    "vite-plugin-vue-devtools": "^7.7.6",
    "vue-tsc": "^2.2.10"
  }
}
