From eaa2a85c8049bde900abec0c3098c21f35b9607b Mon Sep 17 00:00:00 2001 From: mi9688 Date: Thu, 28 Nov 2024 12:57:22 +0800 Subject: [PATCH] 11 --- .eslintrc.cjs | 11 + .gitignore | 30 + .vscode/extensions.json | 6 + index.html | 21 + jsconfig.json | 12 + package-lock.json | 3554 +++++++++++++++++++++++++++++ package.json | 33 + public/favicon.ico | Bin 0 -> 1349 bytes src/App.vue | 41 + src/apis/loginApi.ts | 29 + src/assets/base.css | 86 + src/assets/loading.gif | Bin 0 -> 42424 bytes src/assets/logo.svg | 1 + src/assets/main.css | 35 + src/assets/speech.gif | Bin 0 -> 43008 bytes src/assets/think.gif | Bin 0 -> 56599 bytes src/assets/头像.png | Bin 0 -> 2320 bytes src/main.js | 35 + src/router/index.js | 31 + src/stores/user.js | 73 + src/styles/common.scss | 86 + src/utils/http.js | 65 + src/views/container.vue | 90 + src/views/echarts/temp.vue | 47 + src/views/layout/Layout.vue | 62 + src/views/layout/LayoutHeader.vue | 99 + src/views/layout/TheAside.vue | 21 + src/views/layout/TheHeader.vue | 89 + src/views/layout/TheLogo.vue | 58 + src/views/layout/TheMenu.vue | 138 ++ src/views/layout/User.vue | 64 + src/views/layout/UserInfoEdit.vue | 181 ++ src/views/pages/index/Index.vue | 19 + src/views/pages/line/Line.vue | 19 + src/views/pages/login/Login.vue | 471 ++++ src/views/pages/util/Loading.vue | 28 + src/views/pages/util/limit.vue | 65 + vite.config.js | 16 + 38 files changed, 5616 insertions(+) create mode 100644 .eslintrc.cjs create mode 100644 .gitignore create mode 100644 .vscode/extensions.json create mode 100644 index.html create mode 100644 jsconfig.json create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/favicon.ico create mode 100644 src/App.vue create mode 100644 src/apis/loginApi.ts create mode 100644 src/assets/base.css create mode 100644 src/assets/loading.gif create mode 100644 src/assets/logo.svg create mode 100644 src/assets/main.css create mode 100644 src/assets/speech.gif create mode 100644 src/assets/think.gif create mode 100644 src/assets/头像.png create mode 100644 src/main.js create mode 100644 src/router/index.js create mode 100644 src/stores/user.js create mode 100644 src/styles/common.scss create mode 100644 src/utils/http.js create mode 100644 src/views/container.vue create mode 100644 src/views/echarts/temp.vue create mode 100644 src/views/layout/Layout.vue create mode 100644 src/views/layout/LayoutHeader.vue create mode 100644 src/views/layout/TheAside.vue create mode 100644 src/views/layout/TheHeader.vue create mode 100644 src/views/layout/TheLogo.vue create mode 100644 src/views/layout/TheMenu.vue create mode 100644 src/views/layout/User.vue create mode 100644 src/views/layout/UserInfoEdit.vue create mode 100644 src/views/pages/index/Index.vue create mode 100644 src/views/pages/line/Line.vue create mode 100644 src/views/pages/login/Login.vue create mode 100644 src/views/pages/util/Loading.vue create mode 100644 src/views/pages/util/limit.vue create mode 100644 vite.config.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..15f62d7 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,11 @@ +/* eslint-env node */ +module.exports = { + root: true, + 'extends': [ + 'plugin:vue/vue3-essential', + 'eslint:recommended' + ], + parserOptions: { + ecmaVersion: 'latest' + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8ee54e8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,30 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +.DS_Store +dist +dist-ssr +coverage +*.local + +/cypress/videos/ +/cypress/screenshots/ + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +*.tsbuildinfo diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..64db0b2 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,6 @@ +{ + "recommendations": [ + "Vue.volar", + "dbaeumer.vscode-eslint" + ] +} diff --git a/index.html b/index.html new file mode 100644 index 0000000..a472e64 --- /dev/null +++ b/index.html @@ -0,0 +1,21 @@ + + + + + + + demo + + + + +
+ +
+ + + + + diff --git a/jsconfig.json b/jsconfig.json new file mode 100644 index 0000000..8c119b7 --- /dev/null +++ b/jsconfig.json @@ -0,0 +1,12 @@ +{ + "compilerOptions": { + "baseUrl": "./", + "paths": { + "@/*": [ + "src/*" + ] + + + } + } +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..2724528 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3554 @@ +{ + "name": "fat-vue3", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "fat-vue3", + "version": "0.0.0", + "dependencies": { + "@microsoft/fetch-event-source": "^2.0.1", + "axios": "^1.6.8", + "crypto-js": "^4.2.0", + "echarts-stat": "^1.2.0", + "element-plus": "^2.6.3", + "md-editor-v3": "^4.17.4", + "pinia": "^2.1.7", + "vue": "^3.4.21", + "vue-router": "^4.3.0", + "vue3-scroll-seamless": "^1.0.6", + "vue3-seamless-scroll": "^2.0.1" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.0.4", + "echarts": "^5.5.0", + "eslint": "^8.57.0", + "eslint-plugin-vue": "^9.23.0", + "sass": "^1.75.0", + "vite": "^5.2.8" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@codemirror/autocomplete": { + "version": "6.16.2", + "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.16.2.tgz", + "integrity": "sha512-MjfDrHy0gHKlPWsvSsikhO1+BOh+eBHNgfH1OXs1+DAf30IonQldgMM3kxLDTG9ktE7kDLaA1j/l7KMPA4KNfw==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0" + }, + "peerDependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@codemirror/commands": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.6.0.tgz", + "integrity": "sha512-qnY+b7j1UNcTS31Eenuc/5YJB6gQOzkUoNmJQc0rznwqSRpeaWWpjkWy2C/MPTcePpsKJEM26hXrOXl1+nceXg==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.4.0", + "@codemirror/view": "^6.27.0", + "@lezer/common": "^1.1.0" + } + }, + "node_modules/@codemirror/lang-angular": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@codemirror/lang-angular/-/lang-angular-0.1.3.tgz", + "integrity": "sha512-xgeWGJQQl1LyStvndWtruUvb4SnBZDAu/gvFH/ZU+c0W25tQR8e5hq7WTwiIY2dNxnf+49mRiGI/9yxIwB6f5w==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-javascript": "^6.1.2", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.3" + } + }, + "node_modules/@codemirror/lang-cpp": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-cpp/-/lang-cpp-6.0.2.tgz", + "integrity": "sha512-6oYEYUKHvrnacXxWxYa6t4puTlbN3dgV662BDfSH8+MfjQjVmP697/KYTDOqpxgerkvoNm7q5wlFMBeX8ZMocg==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/cpp": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-css": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-css/-/lang-css-6.2.1.tgz", + "integrity": "sha512-/UNWDNV5Viwi/1lpr/dIXJNWiwDxpw13I4pTUAsNxZdg6E0mI2kTQb0P2iHczg1Tu+H4EBgJR+hYhKiHKko7qg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.2", + "@lezer/css": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-go": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-go/-/lang-go-6.0.1.tgz", + "integrity": "sha512-7fNvbyNylvqCphW9HD6WFnRpcDjr+KXX/FgqXy5H5ZS0eC5edDljukm/yNgYkwTsgp2busdod50AOTIy6Jikfg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.6.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/go": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-html": { + "version": "6.4.9", + "resolved": "https://registry.npmjs.org/@codemirror/lang-html/-/lang-html-6.4.9.tgz", + "integrity": "sha512-aQv37pIMSlueybId/2PVSP6NPnmurFDVmZwzc7jszd2KAF8qd4VBbvNYPXWQq90WIARjsdVkPbw29pszmHws3Q==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/lang-css": "^6.0.0", + "@codemirror/lang-javascript": "^6.0.0", + "@codemirror/language": "^6.4.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0", + "@lezer/css": "^1.1.0", + "@lezer/html": "^1.3.0" + } + }, + "node_modules/@codemirror/lang-java": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-java/-/lang-java-6.0.1.tgz", + "integrity": "sha512-OOnmhH67h97jHzCuFaIEspbmsT98fNdhVhmA3zCxW0cn7l8rChDhZtwiwJ/JOKXgfm4J+ELxQihxaI7bj7mJRg==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/java": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-javascript": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-6.2.2.tgz", + "integrity": "sha512-VGQfY+FCc285AhWuwjYxQyUQcYurWlxdKYT4bqwr3Twnd5wP5WSeu52t4tvvuWmljT4EmgEgZCqSieokhtY8hg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.6.0", + "@codemirror/lint": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0", + "@lezer/javascript": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-json": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-json/-/lang-json-6.0.1.tgz", + "integrity": "sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/json": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-less": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-less/-/lang-less-6.0.2.tgz", + "integrity": "sha512-EYdQTG22V+KUUk8Qq582g7FMnCZeEHsyuOJisHRft/mQ+ZSZ2w51NupvDUHiqtsOy7It5cHLPGfHQLpMh9bqpQ==", + "dependencies": { + "@codemirror/lang-css": "^6.2.0", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-liquid": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-liquid/-/lang-liquid-6.2.1.tgz", + "integrity": "sha512-J1Mratcm6JLNEiX+U2OlCDTysGuwbHD76XwuL5o5bo9soJtSbz2g6RU3vGHFyS5DC8rgVmFSzi7i6oBftm7tnA==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.1" + } + }, + "node_modules/@codemirror/lang-markdown": { + "version": "6.2.5", + "resolved": "https://registry.npmjs.org/@codemirror/lang-markdown/-/lang-markdown-6.2.5.tgz", + "integrity": "sha512-Hgke565YcO4fd9pe2uLYxnMufHO5rQwRr+AAhFq8ABuhkrjyX8R5p5s+hZUTdV60O0dMRjxKhBLxz8pu/MkUVA==", + "dependencies": { + "@codemirror/autocomplete": "^6.7.1", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.3.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.2.1", + "@lezer/markdown": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-php": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-php/-/lang-php-6.0.1.tgz", + "integrity": "sha512-ublojMdw/PNWa7qdN5TMsjmqkNuTBD3k6ndZ4Z0S25SBAiweFGyY68AS3xNcIOlb6DDFDvKlinLQ40vSLqf8xA==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/php": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-python": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/@codemirror/lang-python/-/lang-python-6.1.6.tgz", + "integrity": "sha512-ai+01WfZhWqM92UqjnvorkxosZ2aq2u28kHvr+N3gu012XqY2CThD67JPMHnGceRfXPDBmn1HnyqowdpF57bNg==", + "dependencies": { + "@codemirror/autocomplete": "^6.3.2", + "@codemirror/language": "^6.8.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.1", + "@lezer/python": "^1.1.4" + } + }, + "node_modules/@codemirror/lang-rust": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-rust/-/lang-rust-6.0.1.tgz", + "integrity": "sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/rust": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-sass": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-sass/-/lang-sass-6.0.2.tgz", + "integrity": "sha512-l/bdzIABvnTo1nzdY6U+kPAC51czYQcOErfzQ9zSm9D8GmNPD0WTW8st/CJwBTPLO8jlrbyvlSEcN20dc4iL0Q==", + "dependencies": { + "@codemirror/lang-css": "^6.2.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.2", + "@lezer/sass": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-sql": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@codemirror/lang-sql/-/lang-sql-6.6.4.tgz", + "integrity": "sha512-n+FVfKGut+frOvor9dU5pFUalcP614WBNQ9IT1kOUj1t6LFLjWHi2I9DdxXnJuxqFV9jTyYF79coDV3ilSJqCw==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-vue": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@codemirror/lang-vue/-/lang-vue-0.1.3.tgz", + "integrity": "sha512-QSKdtYTDRhEHCfo5zOShzxCmqKJvgGrZwDQSdbvCRJ5pRLWBS7pD/8e/tH44aVQT6FKm0t6RVNoSUWHOI5vNug==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-javascript": "^6.1.2", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.1" + } + }, + "node_modules/@codemirror/lang-wast": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-wast/-/lang-wast-6.0.2.tgz", + "integrity": "sha512-Imi2KTpVGm7TKuUkqyJ5NRmeFWF7aMpNiwHnLQe0x9kmrxElndyH0K6H/gXtWwY6UshMRAhpENsgfpSwsgmC6Q==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-xml": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@codemirror/lang-xml/-/lang-xml-6.1.0.tgz", + "integrity": "sha512-3z0blhicHLfwi2UgkZYRPioSgVTo9PV5GP5ducFH6FaHy0IAJRg+ixj5gTR1gnT/glAIC8xv4w2VL1LoZfs+Jg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.4.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/xml": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-yaml": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-yaml/-/lang-yaml-6.1.1.tgz", + "integrity": "sha512-HV2NzbK9bbVnjWxwObuZh5FuPCowx51mEfoFT9y3y+M37fA3+pbxx4I7uePuygFzDsAmCTwQSc/kXh/flab4uw==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.2.0", + "@lezer/yaml": "^1.0.0" + } + }, + "node_modules/@codemirror/language": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.2.tgz", + "integrity": "sha512-kgbTYTo0Au6dCSc/TFy7fK3fpJmgHDv1sG1KNQKJXVi+xBTEeBPY/M30YXiU6mMXeH+YIDLsbrT4ZwNRdtF+SA==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.23.0", + "@lezer/common": "^1.1.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0", + "style-mod": "^4.0.0" + } + }, + "node_modules/@codemirror/language-data": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@codemirror/language-data/-/language-data-6.5.1.tgz", + "integrity": "sha512-0sWxeUSNlBr6OmkqybUTImADFUP0M3P0IiSde4nc24bz/6jIYzqYSgkOSLS+CBIoW1vU8Q9KUWXscBXeoMVC9w==", + "dependencies": { + "@codemirror/lang-angular": "^0.1.0", + "@codemirror/lang-cpp": "^6.0.0", + "@codemirror/lang-css": "^6.0.0", + "@codemirror/lang-go": "^6.0.0", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-java": "^6.0.0", + "@codemirror/lang-javascript": "^6.0.0", + "@codemirror/lang-json": "^6.0.0", + "@codemirror/lang-less": "^6.0.0", + "@codemirror/lang-liquid": "^6.0.0", + "@codemirror/lang-markdown": "^6.0.0", + "@codemirror/lang-php": "^6.0.0", + "@codemirror/lang-python": "^6.0.0", + "@codemirror/lang-rust": "^6.0.0", + "@codemirror/lang-sass": "^6.0.0", + "@codemirror/lang-sql": "^6.0.0", + "@codemirror/lang-vue": "^0.1.1", + "@codemirror/lang-wast": "^6.0.0", + "@codemirror/lang-xml": "^6.0.0", + "@codemirror/lang-yaml": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/legacy-modes": "^6.4.0" + } + }, + "node_modules/@codemirror/legacy-modes": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@codemirror/legacy-modes/-/legacy-modes-6.4.0.tgz", + "integrity": "sha512-5m/K+1A6gYR0e+h/dEde7LoGimMjRtWXZFg4Lo70cc8HzjSdHe3fLwjWMR0VRl5KFT1SxalSap7uMgPKF28wBA==", + "dependencies": { + "@codemirror/language": "^6.0.0" + } + }, + "node_modules/@codemirror/lint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.8.0.tgz", + "integrity": "sha512-lsFofvaw0lnPRJlQylNsC4IRt/1lI4OD/yYslrSGVndOJfStc58v+8p9dgGiD90ktOfL7OhBWns1ZETYgz0EJA==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "crelt": "^1.0.5" + } + }, + "node_modules/@codemirror/search": { + "version": "6.5.6", + "resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.5.6.tgz", + "integrity": "sha512-rpMgcsh7o0GuCDUXKPvww+muLA1pDJaFrpq/CCHtpQJYz8xopu4D1hPcKRoDD0YlF8gZaqTNIRa4VRBWyhyy7Q==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "crelt": "^1.0.5" + } + }, + "node_modules/@codemirror/state": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.4.1.tgz", + "integrity": "sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==" + }, + "node_modules/@codemirror/view": { + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.28.0.tgz", + "integrity": "sha512-fo7CelaUDKWIyemw4b+J57cWuRkOu4SWCCPfNDkPvfWkGjM9D5racHQXr4EQeYCD6zEBIBxGCeaKkQo+ysl0gA==", + "dependencies": { + "@codemirror/state": "^6.4.0", + "style-mod": "^4.1.0", + "w3c-keyname": "^2.2.4" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz", + "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@element-plus/icons-vue": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz", + "integrity": "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz", + "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==", + "dependencies": { + "@floating-ui/utils": "^0.2.1" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.3.tgz", + "integrity": "sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==", + "dependencies": { + "@floating-ui/core": "^1.0.0", + "@floating-ui/utils": "^0.2.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz", + "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "dev": true + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@lezer/common": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.1.tgz", + "integrity": "sha512-yemX0ZD2xS/73llMZIK6KplkjIjf2EvAHcinDi/TfJ9hS25G0388+ClHt6/3but0oOxinTcQHJLDXh6w1crzFQ==" + }, + "node_modules/@lezer/cpp": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@lezer/cpp/-/cpp-1.1.2.tgz", + "integrity": "sha512-macwKtyeUO0EW86r3xWQCzOV9/CF8imJLpJlPv3sDY57cPGeUZ8gXWOWNlJr52TVByMV3PayFQCA5SHEERDmVQ==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/css": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@lezer/css/-/css-1.1.8.tgz", + "integrity": "sha512-7JhxupKuMBaWQKjQoLtzhGj83DdnZY9MckEOG5+/iLKNK2ZJqKc6hf6uc0HjwCX7Qlok44jBNqZhHKDhEhZYLA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/go": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@lezer/go/-/go-1.0.0.tgz", + "integrity": "sha512-co9JfT3QqX1YkrMmourYw2Z8meGC50Ko4d54QEcQbEYpvdUvN4yb0NBZdn/9ertgvjsySxHsKzH3lbm3vqJ4Jw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/highlight": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.0.tgz", + "integrity": "sha512-WrS5Mw51sGrpqjlh3d4/fOwpEV2Hd3YOkp9DBt4k8XZQcoTHZFB7sx030A6OcahF4J1nDQAa3jXlTVVYH50IFA==", + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@lezer/html": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@lezer/html/-/html-1.3.10.tgz", + "integrity": "sha512-dqpT8nISx/p9Do3AchvYGV3qYc4/rKr3IBZxlHmpIKam56P47RSHkSF5f13Vu9hebS1jM0HmtJIwLbWz1VIY6w==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/java": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@lezer/java/-/java-1.1.2.tgz", + "integrity": "sha512-3j8X70JvYf0BZt8iSRLXLkt0Ry1hVUgH6wT32yBxH/Xi55nW2VMhc1Az4SKwu4YGSmxCm1fsqDDcHTuFjC8pmg==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/javascript": { + "version": "1.4.17", + "resolved": "https://registry.npmjs.org/@lezer/javascript/-/javascript-1.4.17.tgz", + "integrity": "sha512-bYW4ctpyGK+JMumDApeUzuIezX01H76R1foD6LcRX224FWfyYit/HYxiPGDjXXe/wQWASjCvVGoukTH68+0HIA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.1.3", + "@lezer/lr": "^1.3.0" + } + }, + "node_modules/@lezer/json": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/json/-/json-1.0.2.tgz", + "integrity": "sha512-xHT2P4S5eeCYECyKNPhr4cbEL9tc8w83SPwRC373o9uEdrvGKTZoJVAGxpOsZckMlEh9W23Pc72ew918RWQOBQ==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/lr": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.1.tgz", + "integrity": "sha512-CHsKq8DMKBf9b3yXPDIU4DbH+ZJd/sJdYOW2llbW/HudP5u0VS6Bfq1hLYfgU7uAYGFIyGGQIsSOXGPEErZiJw==", + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@lezer/markdown": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@lezer/markdown/-/markdown-1.3.0.tgz", + "integrity": "sha512-ErbEQ15eowmJUyT095e9NJc3BI9yZ894fjSDtHftD0InkfUBGgnKSU6dvan9jqsZuNHg2+ag/1oyDRxNsENupQ==", + "dependencies": { + "@lezer/common": "^1.0.0", + "@lezer/highlight": "^1.0.0" + } + }, + "node_modules/@lezer/php": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/php/-/php-1.0.2.tgz", + "integrity": "sha512-GN7BnqtGRpFyeoKSEqxvGvhJQiI4zkgmYnDk/JIyc7H7Ifc1tkPnUn/R2R8meH3h/aBf5rzjvU8ZQoyiNDtDrA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.1.0" + } + }, + "node_modules/@lezer/python": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/@lezer/python/-/python-1.1.14.tgz", + "integrity": "sha512-ykDOb2Ti24n76PJsSa4ZoDF0zH12BSw1LGfQXCYJhJyOGiFTfGaX0Du66Ze72R+u/P35U+O6I9m8TFXov1JzsA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/rust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/rust/-/rust-1.0.2.tgz", + "integrity": "sha512-Lz5sIPBdF2FUXcWeCu1//ojFAZqzTQNRga0aYv6dYXqJqPfMdCAI0NzajWUd4Xijj1IKJLtjoXRPMvTKWBcqKg==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/sass": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@lezer/sass/-/sass-1.0.6.tgz", + "integrity": "sha512-w/RCO2dIzZH1To8p+xjs8cE+yfgGus8NZ/dXeWl/QzHyr+TeBs71qiE70KPImEwvTsmEjoWh0A5SxMzKd5BWBQ==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/xml": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@lezer/xml/-/xml-1.0.5.tgz", + "integrity": "sha512-VFouqOzmUWfIg+tfmpcdV33ewtK+NSwd4ngSe1aG7HFb4BN0ExyY1b8msp+ndFrnlG4V4iC8yXacjFtrwERnaw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/yaml": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@lezer/yaml/-/yaml-1.0.3.tgz", + "integrity": "sha512-GuBLekbw9jDBDhGur82nuwkxKQ+a3W5H0GfaAthDXcAu+XdpS43VlnxA9E9hllkpSP5ellRDKjLLj7Lu9Wr6xA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.4.0" + } + }, + "node_modules/@microsoft/fetch-event-source": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/fetch-event-source/-/fetch-event-source-2.0.1.tgz", + "integrity": "sha512-W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "name": "@sxzz/popperjs-es", + "version": "2.11.7", + "resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", + "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.14.1.tgz", + "integrity": "sha512-fH8/o8nSUek8ceQnT7K4EQbSiV7jgkHq81m9lWZFIXjJ7lJzpWXbQFpT/Zh6OZYnpFykvzC3fbEvEAFZu03dPA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.14.1.tgz", + "integrity": "sha512-Y/9OHLjzkunF+KGEoJr3heiD5X9OLa8sbT1lm0NYeKyaM3oMhhQFvPB0bNZYJwlq93j8Z6wSxh9+cyKQaxS7PQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.14.1.tgz", + "integrity": "sha512-+kecg3FY84WadgcuSVm6llrABOdQAEbNdnpi5X3UwWiFVhZIZvKgGrF7kmLguvxHNQy+UuRV66cLVl3S+Rkt+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.14.1.tgz", + "integrity": "sha512-2pYRzEjVqq2TB/UNv47BV/8vQiXkFGVmPFwJb+1E0IFFZbIX8/jo1olxqqMbo6xCXf8kabANhp5bzCij2tFLUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.14.1.tgz", + "integrity": "sha512-mS6wQ6Do6/wmrF9aTFVpIJ3/IDXhg1EZcQFYHZLHqw6AzMBjTHWnCG35HxSqUNphh0EHqSM6wRTT8HsL1C0x5g==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.14.1.tgz", + "integrity": "sha512-p9rGKYkHdFMzhckOTFubfxgyIO1vw//7IIjBBRVzyZebWlzRLeNhqxuSaZ7kCEKVkm/kuC9fVRW9HkC/zNRG2w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.14.1.tgz", + "integrity": "sha512-nDY6Yz5xS/Y4M2i9JLQd3Rofh5OR8Bn8qe3Mv/qCVpHFlwtZSBYSPaU4mrGazWkXrdQ98GB//H0BirGR/SKFSw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.14.1.tgz", + "integrity": "sha512-im7HE4VBL+aDswvcmfx88Mp1soqL9OBsdDBU8NqDEYtkri0qV0THhQsvZtZeNNlLeCUQ16PZyv7cqutjDF35qw==", + "cpu": [ + "ppc64le" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.14.1.tgz", + "integrity": "sha512-RWdiHuAxWmzPJgaHJdpvUUlDz8sdQz4P2uv367T2JocdDa98iRw2UjIJ4QxSyt077mXZT2X6pKfT2iYtVEvOFw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.14.1.tgz", + "integrity": "sha512-VMgaGQ5zRX6ZqV/fas65/sUGc9cPmsntq2FiGmayW9KMNfWVG/j0BAqImvU4KTeOOgYSf1F+k6at1UfNONuNjA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.14.1.tgz", + "integrity": "sha512-9Q7DGjZN+hTdJomaQ3Iub4m6VPu1r94bmK2z3UeWP3dGUecRC54tmVu9vKHTm1bOt3ASoYtEz6JSRLFzrysKlA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.14.1.tgz", + "integrity": "sha512-JNEG/Ti55413SsreTguSx0LOVKX902OfXIKVg+TCXO6Gjans/k9O6ww9q3oLGjNDaTLxM+IHFMeXy/0RXL5R/g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.14.1.tgz", + "integrity": "sha512-ryS22I9y0mumlLNwDFYZRDFLwWh3aKaC72CWjFcFvxK0U6v/mOkM5Up1bTbCRAhv3kEIwW2ajROegCIQViUCeA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.14.1.tgz", + "integrity": "sha512-TdloItiGk+T0mTxKx7Hp279xy30LspMso+GzQvV2maYePMAWdmrzqSNZhUpPj3CGw12aGj57I026PgLCTu8CGg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.14.1.tgz", + "integrity": "sha512-wQGI+LY/Py20zdUPq+XCem7JcPOyzIJBm3dli+56DJsQOHbnXZFEwgmnC6el1TPAfC8lBT3m+z69RmLykNUbew==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==" + }, + "node_modules/@types/lodash": { + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", + "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==" + }, + "node_modules/@types/lodash-es": { + "version": "4.17.12", + "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.12.tgz", + "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/markdown-it": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", + "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", + "dependencies": { + "@types/linkify-it": "^5", + "@types/mdurl": "^2" + } + }, + "node_modules/@types/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", + "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/@vavt/util": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@vavt/util/-/util-1.7.0.tgz", + "integrity": "sha512-EAwplP/2Lm79KCFj5umtU/HKgFUi8Ec6a1clK2Za4MErkAkY8+mdOSnAFJdltceWzmnauZrEc+By+u0ZvX6u6g==" + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz", + "integrity": "sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==", + "dev": true, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", + "dependencies": { + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.1.tgz", + "integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA==" + }, + "node_modules/@vue/reactivity": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", + "dependencies": { + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", + "dependencies": { + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", + "dependencies": { + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "vue": "3.4.21" + } + }, + "node_modules/@vue/shared": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==" + }, + "node_modules/@vueuse/core": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz", + "integrity": "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==", + "dependencies": { + "@types/web-bluetooth": "^0.0.16", + "@vueuse/metadata": "9.13.0", + "@vueuse/shared": "9.13.0", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz", + "integrity": "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz", + "integrity": "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==", + "dependencies": { + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/axios": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/codemirror": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-6.0.1.tgz", + "integrity": "sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/commands": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/lint": "^6.0.0", + "@codemirror/search": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "dependencies": { + "toggle-selection": "^1.0.6" + } + }, + "node_modules/crelt": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz", + "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==" + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/dayjs": { + "version": "1.11.10", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", + "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/echarts": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.5.0.tgz", + "integrity": "sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==", + "dev": true, + "dependencies": { + "tslib": "2.3.0", + "zrender": "5.5.0" + } + }, + "node_modules/echarts-stat": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/echarts-stat/-/echarts-stat-1.2.0.tgz", + "integrity": "sha512-zLd7Kgs+tuTSeaK0VQEMNmnMivEkhvHIk1gpBtLzpRerfcIQ+Bd5XudOMmtwpaTc1WDZbA7d1V//iiBccR46Qg==" + }, + "node_modules/element-plus": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/element-plus/-/element-plus-2.6.3.tgz", + "integrity": "sha512-U4L/mr+1r+EmAUYUHrs0V/8hHMdBGP07rPymSC72LZCN4jK1UwygQYICegTQ5us4mxeqBvW6wfoEfo003fwCqw==", + "dependencies": { + "@ctrl/tinycolor": "^3.4.1", + "@element-plus/icons-vue": "^2.3.1", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", + "@types/lodash": "^4.14.182", + "@types/lodash-es": "^4.17.6", + "@vueuse/core": "^9.1.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.3", + "escape-html": "^1.0.3", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "lodash-unified": "^1.0.2", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.24.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.24.1.tgz", + "integrity": "sha512-wk3SuwmS1pZdcuJlokGYEi/buDOwD6KltvhIZyOnpJ/378dcQ4zchu9PAMbbLAaydCz1iYc5AozszcOOgZIIOg==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "globals": "^13.24.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^6.0.15", + "semver": "^7.6.0", + "vue-eslint-parser": "^9.4.2", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "dependencies": { + "uc.micro": "^2.0.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "peerDependencies": { + "@types/lodash-es": "*", + "lodash": "*", + "lodash-es": "*" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz", + "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/markdown-it": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" + } + }, + "node_modules/markdown-it-image-figures": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/markdown-it-image-figures/-/markdown-it-image-figures-2.1.1.tgz", + "integrity": "sha512-mwXSQ2nPeVUzCMIE3HlLvjRioopiqyJLNph0pyx38yf9mpqFDhNGnMpAXF9/A2Xv0oiF2cVyg9xwfF0HNAz05g==", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "markdown-it": "*" + } + }, + "node_modules/markdown-it-task-lists": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/markdown-it-task-lists/-/markdown-it-task-lists-2.1.1.tgz", + "integrity": "sha512-TxFAc76Jnhb2OUu+n3yz9RMu4CwGfaT788br6HhEDlvWfdeJcLUsxk1Hgw2yJio0OXsxv7pyIPmvECY7bMbluA==" + }, + "node_modules/md-editor-v3": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/md-editor-v3/-/md-editor-v3-4.17.4.tgz", + "integrity": "sha512-g7fDBFNfahS0bNHbweVLepd1e8BnZtHNSobduSIa3nTEiGHCD0VzQtf+JyHsDYdGhDwZrBGReGpHxK+/9AZb/w==", + "dependencies": { + "@codemirror/lang-markdown": "^6.2.5", + "@codemirror/language-data": "^6.5.1", + "@types/markdown-it": "^14.0.1", + "@vavt/util": "^1.6.2", + "codemirror": "^6.0.1", + "copy-to-clipboard": "^3.3.3", + "lru-cache": "^10.2.0", + "markdown-it": "^14.0.0", + "markdown-it-image-figures": "^2.1.1", + "markdown-it-task-lists": "^2.1.1", + "medium-zoom": "^1.1.0", + "punycode": "^2.3.1", + "xss": "^1.0.15" + }, + "peerDependencies": { + "vue": "^3.2.47" + } + }, + "node_modules/md-editor-v3/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==" + }, + "node_modules/medium-zoom": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/medium-zoom/-/medium-zoom-1.1.0.tgz", + "integrity": "sha512-ewyDsp7k4InCUp3jRmwHBRFGyjBimKps/AJLjRSox+2q/2H4p/PNpQf+pwONWlJiOudkBXtbdmVbFjqyybfTmQ==" + }, + "node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pinia": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.7.tgz", + "integrity": "sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==", + "dependencies": { + "@vue/devtools-api": "^6.5.0", + "vue-demi": ">=0.14.5" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.3.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/vue-demi": { + "version": "0.14.7", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.7.tgz", + "integrity": "sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/postcss": { + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.14.1.tgz", + "integrity": "sha512-4LnHSdd3QK2pa1J6dFbfm1HN0D7vSK/ZuZTsdyUAlA6Rr1yTouUTL13HaDOGJVgby461AhrNGBS7sCGXXtT+SA==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.14.1", + "@rollup/rollup-android-arm64": "4.14.1", + "@rollup/rollup-darwin-arm64": "4.14.1", + "@rollup/rollup-darwin-x64": "4.14.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.14.1", + "@rollup/rollup-linux-arm64-gnu": "4.14.1", + "@rollup/rollup-linux-arm64-musl": "4.14.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.14.1", + "@rollup/rollup-linux-riscv64-gnu": "4.14.1", + "@rollup/rollup-linux-s390x-gnu": "4.14.1", + "@rollup/rollup-linux-x64-gnu": "4.14.1", + "@rollup/rollup-linux-x64-musl": "4.14.1", + "@rollup/rollup-win32-arm64-msvc": "4.14.1", + "@rollup/rollup-win32-ia32-msvc": "4.14.1", + "@rollup/rollup-win32-x64-msvc": "4.14.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/sass": { + "version": "1.75.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.75.0.tgz", + "integrity": "sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-mod": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", + "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/throttle-debounce": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-5.0.0.tgz", + "integrity": "sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg==", + "engines": { + "node": ">=12.22" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, + "node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vite": { + "version": "5.2.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", + "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "dev": true, + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-eslint-parser": { + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.2.tgz", + "integrity": "sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-router": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.3.0.tgz", + "integrity": "sha512-dqUcs8tUeG+ssgWhcPbjHvazML16Oga5w34uCUmsk7i0BcnskoLGwjpa15fqMr2Fa5JgVBrdL2MEgqz6XZ/6IQ==", + "dependencies": { + "@vue/devtools-api": "^6.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue3-scroll-seamless": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/vue3-scroll-seamless/-/vue3-scroll-seamless-1.0.6.tgz", + "integrity": "sha512-2vcnZ2HmEehV8bZGE3mK7b4XgiMqsf/1bIjV+OjDP+JsyShhUQaFdgGY4nBJt12mjL+A4f8ed9oLPNznVS816g==", + "dependencies": { + "typescript": "^4.8.4" + } + }, + "node_modules/vue3-seamless-scroll": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/vue3-seamless-scroll/-/vue3-seamless-scroll-2.0.1.tgz", + "integrity": "sha512-mI3BaDU3pjcPUhVSw3/xNKdfPBDABTi/OdZaZqKysx4cSdNfGRbVvGNDzzptBbJ5S7imv5T55l6x/SqgnxKreg==", + "dependencies": { + "throttle-debounce": "5.0.0" + } + }, + "node_modules/w3c-keyname": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/xss": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.15.tgz", + "integrity": "sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg==", + "dependencies": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zrender": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.5.0.tgz", + "integrity": "sha512-O3MilSi/9mwoovx77m6ROZM7sXShR/O/JIanvzTwjN3FORfLSr81PsUGd7jlaYOeds9d8tw82oP44+3YucVo+w==", + "dev": true, + "dependencies": { + "tslib": "2.3.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..73d19c5 --- /dev/null +++ b/package.json @@ -0,0 +1,33 @@ +{ + "name": "fat-vue3", + "version": "0.0.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore" + }, + "dependencies": { + "@microsoft/fetch-event-source": "^2.0.1", + "axios": "^1.6.8", + "crypto-js": "^4.2.0", + "echarts-stat": "^1.2.0", + "element-plus": "^2.6.3", + "md-editor-v3": "^4.17.4", + "pinia": "^2.1.7", + "vue": "^3.4.21", + "vue-router": "^4.3.0", + "vue3-scroll-seamless": "^1.0.6", + "vue3-seamless-scroll": "^2.0.1" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.0.4", + "echarts": "^5.5.0", + "eslint": "^8.57.0", + "eslint-plugin-vue": "^9.23.0", + "sass": "^1.75.0", + "vite": "^5.2.8" + } +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..5b5f26cb46723fede0be850f6fae4a7be8a3b0ae GIT binary patch literal 1349 zcmV-L1-kl)P)Px(|4BqaR9HvtS8I$DRTTctw9^HIuyk5M*r|&U6?_GS08tFYL;~{Y6w_dQ5rPN? zNiY#21Y=ZQCW47k<72~0kRL1Tv}iE;!}!3UC?<+;P}g=?#qE@37kO-F?lE`TLg{wd z2QmEd{JOdKJihtvckaDIxWq=6xIQilK+ufDK@iz!YG+?Rq|X3?iO5)D{$3U)7T08A zM}FxGh+YBE8Y9a=m_UM7y2PUt;!kB!7Gko`?f6cpRSO8pzKoGN&{HtI17PaM08|6m zAei=?1whKJ5MmM$o(Iru8|e}M6@W7U0t9S!nam;pA?P-r!qXX83&LqTn(qHUfQw=v zoYZf3U5s}eu5XK5*z^3^+h?biXzlZeJOyK0XP756H$GpBeh3U^``*L7sRn+QR`r7GHqw=weY#S znR$D5h_zm8)n@^?AHZAyK4M;+iCM4r2tcS&U&4e}%AAjaX_XyIy(#C1G+Z@U@jE6F z*H%|mjX6B?uoNhQjru|&Yy=Q4jc4MAvQg`e9swv}K>D|oCL^H1&8dswbFNnu-kVRz z6CG7KUcJs+_vSzdpbjX_}zBd!KWc+znQH0@yK1DD-@d8W4Q@gdc zUwgHCTpmUMWOoD$+2ov5{t3G}Jp|J{@uHMTxlOiV?e7tQP%<=#MgKo#%MtP0nWz;n z25P4MK7c#R6BU?v*ETGVArFA5CkkDV?VsZsD{h_Y7C24hW0VwV}8 z5#cugV*pH)Ykm$4JsSJfYs;c_aTM2lEvY8Px0zV_rlNDmjNHP+dp&vyr%Py-s`pDj z2CZ;%Vq5VJ(MWYD-Yn@fd8||p|#5utF zJq+Y~pRvr2rM<(gTL!!vOjV^?Wxuy7Ip3I;c++2AV8hsernY`mw zIewJiBX3A0cX~uiyhYxo-2;#w!9?UaVt%~f-3G=k07-x+gJ@MH0P?9u3O4id4lzSnt(w>)=BJ9$7{3;&)&hP=Ja{ikg)%mG? zc5^0_95IcB@}UPn!Gz4*^jAY0M_ry%oYBF6dZ73|xKME~wmXNe)-E<93_upr%*Y*pxWYCp??mj2T@--66fBRq +import router from '@/router/index' +import {ref,onMounted} from 'vue' + + + +const isLogging=()=>{ + const user=localStorage.getItem('userInfo') + if(user){ + console.log('登录中') + if(!JSON.parse(user).token){ + return false + } + return true + } + return false +} + +onMounted(()=>{ + console.log(isLogging()) + if(isLogging()){ + router.replace({ path: "/index" }) + }else{ + router.replace({ path: "/login" }) + } + + + +}) + + + + + + + diff --git a/src/apis/loginApi.ts b/src/apis/loginApi.ts new file mode 100644 index 0000000..349f948 --- /dev/null +++ b/src/apis/loginApi.ts @@ -0,0 +1,29 @@ +import http from '@/utils/http' + +//用户登录 +export function loginAPI({ account, password}) { + + return http({ + url: 'admin/login', + method: 'POST', + data: { + username: account, + password: password + } + }) +} + +//账密注册 +export function registerAPI({ account, password,password2}) { + return http({ + url: 'user/register', + method: 'POST', + data: { + account: account, + password: password, + password2:password2 + } + }) +} + + diff --git a/src/assets/base.css b/src/assets/base.css new file mode 100644 index 0000000..8816868 --- /dev/null +++ b/src/assets/base.css @@ -0,0 +1,86 @@ +/* color palette from */ +:root { + --vt-c-white: #ffffff; + --vt-c-white-soft: #f8f8f8; + --vt-c-white-mute: #f2f2f2; + + --vt-c-black: #181818; + --vt-c-black-soft: #222222; + --vt-c-black-mute: #282828; + + --vt-c-indigo: #2c3e50; + + --vt-c-divider-light-1: rgba(60, 60, 60, 0.29); + --vt-c-divider-light-2: rgba(60, 60, 60, 0.12); + --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65); + --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48); + + --vt-c-text-light-1: var(--vt-c-indigo); + --vt-c-text-light-2: rgba(60, 60, 60, 0.66); + --vt-c-text-dark-1: var(--vt-c-white); + --vt-c-text-dark-2: rgba(235, 235, 235, 0.64); +} + +/* semantic color variables for this project */ +:root { + --color-background: var(--vt-c-white); + --color-background-soft: var(--vt-c-white-soft); + --color-background-mute: var(--vt-c-white-mute); + + --color-border: var(--vt-c-divider-light-2); + --color-border-hover: var(--vt-c-divider-light-1); + + --color-heading: var(--vt-c-text-light-1); + --color-text: var(--vt-c-text-light-1); + + --section-gap: 160px; +} + +@media (prefers-color-scheme: dark) { + :root { + --color-background: var(--vt-c-black); + --color-background-soft: var(--vt-c-black-soft); + --color-background-mute: var(--vt-c-black-mute); + + --color-border: var(--vt-c-divider-dark-2); + --color-border-hover: var(--vt-c-divider-dark-1); + + --color-heading: var(--vt-c-text-dark-1); + --color-text: var(--vt-c-text-dark-2); + } +} + +*, +*::before, +*::after { + box-sizing: border-box; + margin: 0; + font-weight: normal; +} + +body { + min-height: 100vh; + color: var(--color-text); + background: var(--color-background); + transition: + color 0.5s, + background-color 0.5s; + line-height: 1.6; + font-family: + Inter, + -apple-system, + BlinkMacSystemFont, + 'Segoe UI', + Roboto, + Oxygen, + Ubuntu, + Cantarell, + 'Fira Sans', + 'Droid Sans', + 'Helvetica Neue', + sans-serif; + font-size: 15px; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} diff --git a/src/assets/loading.gif b/src/assets/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..a46be347d9b64d749f54a73095fadc94c938af8f GIT binary patch literal 42424 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 Z2v8$HjQ}+Q)Cf=`K#c%30$&w@{{gQxqpkn| literal 0 HcmV?d00001 diff --git a/src/assets/logo.svg b/src/assets/logo.svg new file mode 100644 index 0000000..7565660 --- /dev/null +++ b/src/assets/logo.svg @@ -0,0 +1 @@ + diff --git a/src/assets/main.css b/src/assets/main.css new file mode 100644 index 0000000..36fb845 --- /dev/null +++ b/src/assets/main.css @@ -0,0 +1,35 @@ +@import './base.css'; + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + font-weight: normal; +} + +a, +.green { + text-decoration: none; + color: hsla(160, 100%, 37%, 1); + transition: 0.4s; + padding: 3px; +} + +@media (hover: hover) { + a:hover { + background-color: hsla(160, 100%, 37%, 0.2); + } +} + +@media (min-width: 1024px) { + body { + display: flex; + place-items: center; + } + + #app { + display: grid; + grid-template-columns: 1fr 1fr; + padding: 0 2rem; + } +} diff --git a/src/assets/speech.gif b/src/assets/speech.gif new file mode 100644 index 0000000000000000000000000000000000000000..ab8962505e3d4fe1b0d0f52ffba56bf804aea783 GIT binary patch literal 43008 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 literal 0 HcmV?d00001 diff --git a/src/assets/头像.png b/src/assets/头像.png new file mode 100644 index 0000000000000000000000000000000000000000..5fd9e933ecfe3a5d3cd42339952f76389214f538 GIT binary patch literal 2320 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 { + // 定义管理用户数据的state + const userInfo = ref({ + name:'', + token:'' + }) + + // 从本地存储中加载数据 + const loadUserInfoFromLocalStorage = () => { + const savedUserInfo = JSON.parse(localStorage.getItem('userInfo')) + if (savedUserInfo) { + console.log('用户信息本地存在!') + userInfo.value = savedUserInfo + return + } + // localStorage.removeItem('userInfo') + // sessionStorage.clear() + // if(router.currentRoute.value.path==='/login'){ + // return + // } + // ElMessage({ type: 'error', message: '登录状态丢失,请重新登录!' }) + // router.replace('/login') + } + + // 在 store 创建时加载数据 + loadUserInfoFromLocalStorage() + + //账密登录 + const getUserInfo = async ({ account, password }) => { + console.log('本地没有用户信息,开始请求接口') + const res = await loginAPI({ account: account, password: password }) + if(res.code===0){ + userInfo.value = res.data + // 保存数据到本地存储 + localStorage.setItem('userInfo', JSON.stringify(res.data)) + } + return res + } + +// 注册并登录 + const registerAndLogin = async ({ account, password, password2 }) => { + const res = await registerAPI({ account: account, password: password, password2: password2 }) + if(res.code===0){ + userInfo.value = res.data + // 保存数据到本地存储 + localStorage.setItem('userInfo', JSON.stringify(res.data)) + } + return res + } + + + + // 清除用户信息 + const clearUserInfo = () => { + userInfo.value = {} + localStorage.removeItem('userInfo') + } + + // 返回state和actions + return { + userInfo, + getUserInfo, + clearUserInfo, + registerAndLogin + } +}) \ No newline at end of file diff --git a/src/styles/common.scss b/src/styles/common.scss new file mode 100644 index 0000000..55f8c29 --- /dev/null +++ b/src/styles/common.scss @@ -0,0 +1,86 @@ +// 重置样式 +* { + box-sizing: border-box; +} +html { + height: 100vh; + width: 100vw; + font-size: 14px; +} +::-webkit-scrollbar { + width: 0px; /* 设置滚动条的宽度 */ + height: 0px; +} +::-webkit-scrollbar-track { + background-color: #ffffff; /* 设置滚动条轨道的背景颜色 */ +} +::-webkit-scrollbar-thumb { + background-color: #00144d; /* 设置滚动条滑块的背景颜色 */ +} +body { + // transform: scale(0.8); + height: 100%; + width: 100%; + // color: #ffffff; + background-color: #ffffff; + /* 隐藏水平滚动条 */ + overflow-x:auto; + min-width: 100vw; + font: 1em/1.4 'Microsoft Yahei', 'PingFang SC', 'Avenir', 'Segoe UI', + 'Hiragino Sans GB', 'STHeiti', 'Microsoft Sans Serif', 'WenQuanYi Micro Hei', + sans-serif; +} +body, +ul, +h1, +h3, +h4, +p, +dl, +dd { + padding: 0; + margin: 0; +} +a { + text-decoration: none; + color: #333; + outline: none; +} +i { + font-style: normal; +} + +img { + max-width: 100%; + max-height: 100%; + vertical-align: middle; + // background: #ebebeb url('@/assets/images/200.png') no-repeat center / contain; + //当图片未获取到的默认图片 +} +ul { + list-style: none; +} + +#app { + width: 100%; + height: 100%; + // display: flex; + // min-height: 100%; + // user-select: none;//禁止复制 + // background: #f7b8b8; + +} + +.common-layout{ + width: 100%; + height: 100%; +} + + +.el-link:hover { + color: #ff6600; +} +.el-link:hover .el-icon { + color: #ff6600; +} + diff --git a/src/utils/http.js b/src/utils/http.js new file mode 100644 index 0000000..734d562 --- /dev/null +++ b/src/utils/http.js @@ -0,0 +1,65 @@ +//axios基础的封装 +import axios from "axios" +import { ElMessage } from "element-plus" +import "element-plus/theme-chalk/el-message.css" +import { useUserStore } from "@/stores/user" +// import router from "@/router/index" + +//axios基础封装1(默认) +const httpInstance1 = axios.create({ + //配置基地址 + baseURL: "http://192.168.1.6:8080/", + // baseURL: "http://www.mi9688.top/api/", + + //配置超时时间 + timeout: 20000, +}) + +// axios请求拦截器 +httpInstance1.interceptors.request.use( + (config) => { + const userStore = useUserStore(); + const token = userStore.userInfo.token; + // console.log("请求拦截器得到token:" + token); + config.headers["Content-Type"] = "application/json"; + if (token) { + config.headers.Authorization = "Bearer " + token; + } + eval() + return config; + }, + (e) => Promise.reject(e) +) + +// axios响应式拦截器 +httpInstance1.interceptors.response.use( + (res) => res.data, + (e) => { + console.log("响应拦截器:") + console.log(e.response) + //统一错误提示 + + + //服务器错误处理 + if (e.response.status === 500) { + ElMessage({ + type: "error", + message: "服务器错误!", + }) + } + //业务异常处理 + if(e.response.data.code===0){ + ElMessage({ + type: "error", + message: e.response.data.message, + }) + } + ElMessage({ + type: "error", + message: "网络波动异常!", + }) + return Promise.reject(e) + } +); + +export default httpInstance1 diff --git a/src/views/container.vue b/src/views/container.vue new file mode 100644 index 0000000..8e0a334 --- /dev/null +++ b/src/views/container.vue @@ -0,0 +1,90 @@ + + + + + \ No newline at end of file diff --git a/src/views/echarts/temp.vue b/src/views/echarts/temp.vue new file mode 100644 index 0000000..aca125b --- /dev/null +++ b/src/views/echarts/temp.vue @@ -0,0 +1,47 @@ + + + + + \ No newline at end of file diff --git a/src/views/layout/Layout.vue b/src/views/layout/Layout.vue new file mode 100644 index 0000000..f87b17b --- /dev/null +++ b/src/views/layout/Layout.vue @@ -0,0 +1,62 @@ + + + + + \ No newline at end of file diff --git a/src/views/layout/LayoutHeader.vue b/src/views/layout/LayoutHeader.vue new file mode 100644 index 0000000..9ad4994 --- /dev/null +++ b/src/views/layout/LayoutHeader.vue @@ -0,0 +1,99 @@ + + + + \ No newline at end of file diff --git a/src/views/layout/TheAside.vue b/src/views/layout/TheAside.vue new file mode 100644 index 0000000..1d18013 --- /dev/null +++ b/src/views/layout/TheAside.vue @@ -0,0 +1,21 @@ + + + + + \ No newline at end of file diff --git a/src/views/layout/TheHeader.vue b/src/views/layout/TheHeader.vue new file mode 100644 index 0000000..6af1a57 --- /dev/null +++ b/src/views/layout/TheHeader.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/src/views/layout/TheLogo.vue b/src/views/layout/TheLogo.vue new file mode 100644 index 0000000..f0b2f7d --- /dev/null +++ b/src/views/layout/TheLogo.vue @@ -0,0 +1,58 @@ + + + + + diff --git a/src/views/layout/TheMenu.vue b/src/views/layout/TheMenu.vue new file mode 100644 index 0000000..5f0171b --- /dev/null +++ b/src/views/layout/TheMenu.vue @@ -0,0 +1,138 @@ + + + + + \ No newline at end of file diff --git a/src/views/layout/User.vue b/src/views/layout/User.vue new file mode 100644 index 0000000..f613e6e --- /dev/null +++ b/src/views/layout/User.vue @@ -0,0 +1,64 @@ + + + + + \ No newline at end of file diff --git a/src/views/layout/UserInfoEdit.vue b/src/views/layout/UserInfoEdit.vue new file mode 100644 index 0000000..415f914 --- /dev/null +++ b/src/views/layout/UserInfoEdit.vue @@ -0,0 +1,181 @@ + + + + + + + \ No newline at end of file diff --git a/src/views/pages/index/Index.vue b/src/views/pages/index/Index.vue new file mode 100644 index 0000000..28f27c0 --- /dev/null +++ b/src/views/pages/index/Index.vue @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/src/views/pages/line/Line.vue b/src/views/pages/line/Line.vue new file mode 100644 index 0000000..87aa7d1 --- /dev/null +++ b/src/views/pages/line/Line.vue @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/src/views/pages/login/Login.vue b/src/views/pages/login/Login.vue new file mode 100644 index 0000000..3d5f37e --- /dev/null +++ b/src/views/pages/login/Login.vue @@ -0,0 +1,471 @@ + + + + + \ No newline at end of file diff --git a/src/views/pages/util/Loading.vue b/src/views/pages/util/Loading.vue new file mode 100644 index 0000000..59905f5 --- /dev/null +++ b/src/views/pages/util/Loading.vue @@ -0,0 +1,28 @@ + + + + + + + + \ No newline at end of file diff --git a/src/views/pages/util/limit.vue b/src/views/pages/util/limit.vue new file mode 100644 index 0000000..23293d0 --- /dev/null +++ b/src/views/pages/util/limit.vue @@ -0,0 +1,65 @@ + + + + \ No newline at end of file diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..5c45e1d --- /dev/null +++ b/vite.config.js @@ -0,0 +1,16 @@ +import { fileURLToPath, URL } from 'node:url' + +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [ + vue(), + ], + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)) + } + } +})