From f7f621d9e3d974a5f9741ea0d0176871bb38a139 Mon Sep 17 00:00:00 2001 From: bin <1178635798@qq.com> Date: Wed, 5 Feb 2025 22:02:55 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=99=E5=B8=88=E7=AB=AF=E6=A1=86=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/aspects/LogOperateAspect.java | 4 +- TeacherHomeWork-vite/.env | 1 + TeacherHomeWork-vite/.gitignore | 24 + TeacherHomeWork-vite/.vscode/extensions.json | 3 + TeacherHomeWork-vite/README.md | 7 + TeacherHomeWork-vite/index.html | 13 + TeacherHomeWork-vite/modifyFile.js | 98 + TeacherHomeWork-vite/package-lock.json | 1688 +++++++++++++++++ TeacherHomeWork-vite/package.json | 25 + TeacherHomeWork-vite/src/App.vue | 86 + TeacherHomeWork-vite/src/assets/dog.jpg | Bin 0 -> 32151 bytes TeacherHomeWork-vite/src/base/constant.js | 136 ++ .../components/HelloWorld/index.module.scss | 3 + .../src/components/HelloWorld/index.vue | 59 + .../src/components/Sidebar.vue | 41 + TeacherHomeWork-vite/src/main.js | 27 + .../src/network/HttpClient.js | 21 + TeacherHomeWork-vite/src/router/index.js | 23 + TeacherHomeWork-vite/src/style.css | 79 + TeacherHomeWork-vite/src/type/index.js | 0 .../src/views/GradeManager/index.vue | 0 TeacherHomeWork-vite/src/views/Home/index.vue | 12 + .../src/views/HomeWorkManager/index.vue | 12 + .../src/views/LearningProgress/index.vue | 12 + .../src/views/TermAssignmentReport/index.vue | 12 + TeacherHomeWork-vite/text.js | 39 + TeacherHomeWork-vite/vite.config.js | 83 + TeacherHomeWork-vite/yarn.lock | 644 +++++++ 28 files changed, 3151 insertions(+), 1 deletion(-) create mode 100644 TeacherHomeWork-vite/.env create mode 100644 TeacherHomeWork-vite/.gitignore create mode 100644 TeacherHomeWork-vite/.vscode/extensions.json create mode 100644 TeacherHomeWork-vite/README.md create mode 100644 TeacherHomeWork-vite/index.html create mode 100644 TeacherHomeWork-vite/modifyFile.js create mode 100644 TeacherHomeWork-vite/package-lock.json create mode 100644 TeacherHomeWork-vite/package.json create mode 100644 TeacherHomeWork-vite/src/App.vue create mode 100644 TeacherHomeWork-vite/src/assets/dog.jpg create mode 100644 TeacherHomeWork-vite/src/base/constant.js create mode 100644 TeacherHomeWork-vite/src/components/HelloWorld/index.module.scss create mode 100644 TeacherHomeWork-vite/src/components/HelloWorld/index.vue create mode 100644 TeacherHomeWork-vite/src/components/Sidebar.vue create mode 100644 TeacherHomeWork-vite/src/main.js create mode 100644 TeacherHomeWork-vite/src/network/HttpClient.js create mode 100644 TeacherHomeWork-vite/src/router/index.js create mode 100644 TeacherHomeWork-vite/src/style.css create mode 100644 TeacherHomeWork-vite/src/type/index.js create mode 100644 TeacherHomeWork-vite/src/views/GradeManager/index.vue create mode 100644 TeacherHomeWork-vite/src/views/Home/index.vue create mode 100644 TeacherHomeWork-vite/src/views/HomeWorkManager/index.vue create mode 100644 TeacherHomeWork-vite/src/views/LearningProgress/index.vue create mode 100644 TeacherHomeWork-vite/src/views/TermAssignmentReport/index.vue create mode 100644 TeacherHomeWork-vite/text.js create mode 100644 TeacherHomeWork-vite/vite.config.js create mode 100644 TeacherHomeWork-vite/yarn.lock diff --git a/HomeWork-java/src/com/wetoband/template/aspects/LogOperateAspect.java b/HomeWork-java/src/com/wetoband/template/aspects/LogOperateAspect.java index 63be084..09cf44c 100644 --- a/HomeWork-java/src/com/wetoband/template/aspects/LogOperateAspect.java +++ b/HomeWork-java/src/com/wetoband/template/aspects/LogOperateAspect.java @@ -40,7 +40,9 @@ public class LogOperateAspect { @Pointcut("@annotation(com.wetoband.template.annotation.LogOperate)") // @Pointcut("execution (* com.blp.service..*.*(..))") public void logOperateAnnotation() {} - +public void logOperateAnnotation(){ + +} /** * 描述:环绕通知 * diff --git a/TeacherHomeWork-vite/.env b/TeacherHomeWork-vite/.env new file mode 100644 index 0000000..437e3b1 --- /dev/null +++ b/TeacherHomeWork-vite/.env @@ -0,0 +1 @@ +VITE_APP_TITLE=模板工具 \ No newline at end of file diff --git a/TeacherHomeWork-vite/.gitignore b/TeacherHomeWork-vite/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/TeacherHomeWork-vite/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/TeacherHomeWork-vite/.vscode/extensions.json b/TeacherHomeWork-vite/.vscode/extensions.json new file mode 100644 index 0000000..c0a6e5a --- /dev/null +++ b/TeacherHomeWork-vite/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] +} diff --git a/TeacherHomeWork-vite/README.md b/TeacherHomeWork-vite/README.md new file mode 100644 index 0000000..e62e093 --- /dev/null +++ b/TeacherHomeWork-vite/README.md @@ -0,0 +1,7 @@ +# Vue 3 + Vite + +This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 ` + + + diff --git a/TeacherHomeWork-vite/modifyFile.js b/TeacherHomeWork-vite/modifyFile.js new file mode 100644 index 0000000..4da0d83 --- /dev/null +++ b/TeacherHomeWork-vite/modifyFile.js @@ -0,0 +1,98 @@ +/* eslint-disable @typescript-eslint/no-unused-vars */ +import fs from 'fs'; + +// 修改app.js中的${resourceUrl} +const _assetsCSSPath = './dist/css/'; +const _assetsJSPath = './dist/js/'; +const _assetsIndexHtmlPath = './dist/index.html'; +const _assetsPagesFolder = './dist/pages'; +const _assetsMainJspPath = './dist/pages/main.jsp'; + +function modifyCss() { + if (!fs.existsSync(_assetsCSSPath)) { + modifyMainJSP(); + return; + } + const files = fs.readdirSync(_assetsCSSPath); + if (files.length === 0) { + modifyMainJSP(); + return; + } + let numFilesProcessed = 0; // 跟踪已处理的文件数量 + const cssVariables = {}; + files.forEach(function (appCssName) { + const cssName = _assetsCSSPath + appCssName; + fs.readFile(cssName, (err, data) => { + if (err) throw err; + let newContent = data.toString(); + // eslint-disable-next-line no-template-curly-in-string + const regex = /url\(\/\$%7BresourceUrl%7D(.*?)\)/g; + newContent = newContent.replace(regex, (match, url) => { + const cleanUrl = url.replace('/$%7BresourceUrl%7D', ''); + const variableName = `--var-image${Object.keys(cssVariables).length + 1}`; + cssVariables[variableName] = cleanUrl; + return `var(${variableName})`; + }); + fs.writeFile(cssName, newContent, () => { + console.log(`'修改 ${cssName} 完成'`); + numFilesProcessed++; // 增加已处理文件的数量 + if (numFilesProcessed === files.length) { + let jsCode = ''; + if (Object.keys(cssVariables).length > 0) { + jsCode = ''; + } + modifyMainJSP(jsCode); + } + }); + }); + }); +} +function modifyJs() { + const files = fs.readdirSync(_assetsJSPath); + files.forEach(function (appJsName) { + const jsName = _assetsJSPath + appJsName; + fs.readFile(jsName, (err, data) => { + if (err) throw err; + let newContent = data.toString(); + // eslint-disable-next-line no-template-curly-in-string + newContent = newContent.replace(/"\/\$%7BresourceUrl%7D\/"/g, ' g_resourceUrl'); + newContent = newContent.replace(/"\/\$%7BresourceUrl%7D\//g, ' g_resourceUrl+"'); + + fs.writeFile(jsName, newContent, () => { + console.log(`'修改 ${jsName} 完成'`); + }); + }); + }); +} +function modifyMainJSP(jsCode) { + fs.readFile(_assetsIndexHtmlPath, (err) => { + if (err) throw err; + // eslint-disable-next-line no-template-curly-in-string + // 创建pages文件夹 + fs.mkdirSync(_assetsPagesFolder, { recursive: true }); // 创建文件夹,recursive选项表示递归创建目录,如果目录已经存在则不报错 + console.log(`'创建 ${_assetsPagesFolder} 完成'`); + // 修改index.html文件名为main.jsp + fs.renameSync(_assetsIndexHtmlPath, _assetsMainJspPath); + console.log(`'修改 ${_assetsIndexHtmlPath} 为 ${_assetsMainJspPath} 完成'`); + // 修改main.jsp中${resourceUrl}转义的字符并去掉/ + fs.readFile(_assetsMainJspPath, (err, data) => { + if (err) throw err; + let newContent = data.toString(); + // eslint-disable-next-line no-template-curly-in-string + newContent = newContent.replace(/\/\$%7BresourceUrl%7D\//g, '${resourceUrl}'); + if (jsCode) { + newContent = newContent.replace('', jsCode + ''); + } + fs.writeFile(_assetsMainJspPath, newContent, () => { + console.log(`'修改 ${_assetsMainJspPath} 完成'`); + }); + }); + }); +} +modifyCss(); +modifyJs(); diff --git a/TeacherHomeWork-vite/package-lock.json b/TeacherHomeWork-vite/package-lock.json new file mode 100644 index 0000000..790f8b0 --- /dev/null +++ b/TeacherHomeWork-vite/package-lock.json @@ -0,0 +1,1688 @@ +{ + "name": "tool-template-vite", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "tool-template-vite", + "version": "0.0.0", + "dependencies": { + "@element-plus/icons-vue": "^2.3.1", + "axios": "^1.6.2", + "element-plus": "^2.8.8", + "lodash": "^4.17.21", + "qs": "^6.11.2", + "vue": "^3.3.11", + "vue-router": "^4.5.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.5.2", + "sass": "^1.69.5", + "vite": "^5.0.8" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.6", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "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.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz", + "integrity": "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==", + "license": "MIT", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.19.9.tgz", + "integrity": "sha512-jkYjjq7SdsWuNI6b5quymW0oC83NN5FdRPuCbs9HZ02mfVdAP8B8eeqLSYU3gb6OJEaY5CQabtTFbqBf26H3GA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.19.9.tgz", + "integrity": "sha512-q4cR+6ZD0938R19MyEW3jEsMzbb/1rulLXiNAJQADD/XYp7pT+rOS5JGxvpRW8dFDEfjW4wLgC/3FXIw4zYglQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.19.9.tgz", + "integrity": "sha512-KOqoPntWAH6ZxDwx1D6mRntIgZh9KodzgNOy5Ebt9ghzffOk9X2c1sPwtM9P+0eXbefnDhqYfkh5PLP5ULtWFA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.19.9.tgz", + "integrity": "sha512-KBJ9S0AFyLVx2E5D8W0vExqRW01WqRtczUZ8NRu+Pi+87opZn5tL4Y0xT0mA4FtHctd0ZgwNoN639fUUGlNIWw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.19.9.tgz", + "integrity": "sha512-vE0VotmNTQaTdX0Q9dOHmMTao6ObjyPm58CHZr1UK7qpNleQyxlFlNCaHsHx6Uqv86VgPmR4o2wdNq3dP1qyDQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.9.tgz", + "integrity": "sha512-uFQyd/o1IjiEk3rUHSwUKkqZwqdvuD8GevWF065eqgYfexcVkxh+IJgwTaGZVu59XczZGcN/YMh9uF1fWD8j1g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.19.9.tgz", + "integrity": "sha512-WMLgWAtkdTbTu1AWacY7uoj/YtHthgqrqhf1OaEWnZb7PQgpt8eaA/F3LkV0E6K/Lc0cUr/uaVP/49iE4M4asA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.19.9.tgz", + "integrity": "sha512-C/ChPohUYoyUaqn1h17m/6yt6OB14hbXvT8EgM1ZWaiiTYz7nWZR0SYmMnB5BzQA4GXl3BgBO1l8MYqL/He3qw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.19.9.tgz", + "integrity": "sha512-PiPblfe1BjK7WDAKR1Cr9O7VVPqVNpwFcPWgfn4xu0eMemzRp442hXyzF/fSwgrufI66FpHOEJk0yYdPInsmyQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.19.9.tgz", + "integrity": "sha512-f37i/0zE0MjDxijkPSQw1CO/7C27Eojqb+r3BbHVxMLkj8GCa78TrBZzvPyA/FNLUMzP3eyHCVkAopkKVja+6Q==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.19.9.tgz", + "integrity": "sha512-t6mN147pUIf3t6wUt3FeumoOTPfmv9Cc6DQlsVBpB7eCpLOqQDyWBP1ymXn1lDw4fNUSb/gBcKAmvTP49oIkaA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.19.9.tgz", + "integrity": "sha512-jg9fujJTNTQBuDXdmAg1eeJUL4Jds7BklOTkkH80ZgQIoCTdQrDaHYgbFZyeTq8zbY+axgptncko3v9p5hLZtw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.19.9.tgz", + "integrity": "sha512-tkV0xUX0pUUgY4ha7z5BbDS85uI7ABw3V1d0RNTii7E9lbmV8Z37Pup2tsLV46SQWzjOeyDi1Q7Wx2+QM8WaCQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.19.9.tgz", + "integrity": "sha512-DfLp8dj91cufgPZDXr9p3FoR++m3ZJ6uIXsXrIvJdOjXVREtXuQCjfMfvmc3LScAVmLjcfloyVtpn43D56JFHg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.19.9.tgz", + "integrity": "sha512-zHbglfEdC88KMgCWpOl/zc6dDYJvWGLiUtmPRsr1OgCViu3z5GncvNVdf+6/56O2Ca8jUU+t1BW261V6kp8qdw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.19.9.tgz", + "integrity": "sha512-JUjpystGFFmNrEHQnIVG8hKwvA2DN5o7RqiO1CVX8EN/F/gkCjkUMgVn6hzScpwnJtl2mPR6I9XV1oW8k9O+0A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.19.9.tgz", + "integrity": "sha512-GThgZPAwOBOsheA2RUlW5UeroRfESwMq/guy8uEe3wJlAOjpOXuSevLRd70NZ37ZrpO6RHGHgEHvPg1h3S1Jug==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.19.9.tgz", + "integrity": "sha512-Ki6PlzppaFVbLnD8PtlVQfsYw4S9n3eQl87cqgeIw+O3sRr9IghpfSKY62mggdt1yCSZ8QWvTZ9jo9fjDSg9uw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.19.9.tgz", + "integrity": "sha512-MLHj7k9hWh4y1ddkBpvRj2b9NCBhfgBt3VpWbHQnXRedVun/hC7sIyTGDGTfsGuXo4ebik2+3ShjcPbhtFwWDw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.19.9.tgz", + "integrity": "sha512-GQoa6OrQ8G08guMFgeXPH7yE/8Dt0IfOGWJSfSH4uafwdC7rWwrfE6P9N8AtPGIjUzdo2+7bN8Xo3qC578olhg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.19.9.tgz", + "integrity": "sha512-UOozV7Ntykvr5tSOlGCrqU3NBr3d8JqPes0QWN2WOXfvkWVGRajC+Ym0/Wj88fUgecUCLDdJPDF0Nna2UK3Qtg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.19.9.tgz", + "integrity": "sha512-oxoQgglOP7RH6iasDrhY+R/3cHrfwIDvRlT4CGChflq6twk8iENeVvMJjmvBb94Ik1Z+93iGO27err7w6l54GQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", + "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "dependencies": { + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.12.tgz", + "integrity": "sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "license": "MIT" + }, + "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.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.8.0.tgz", + "integrity": "sha512-zdTObFRoNENrdPpnTNnhOljYIcOX7aI7+7wyrSpPFFIOf/nRdedE6IYsjaBE7tjukphh1tMTojgJ7p3lKY8x6Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.8.0.tgz", + "integrity": "sha512-aiItwP48BiGpMFS9Znjo/xCNQVwTQVcRKkFKsO81m8exrGjHkCBDvm9PHay2kpa8RPnZzzKcD1iQ9KaLY4fPQQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.8.0.tgz", + "integrity": "sha512-zhNIS+L4ZYkYQUjIQUR6Zl0RXhbbA0huvNIWjmPc2SL0cB1h5Djkcy+RZ3/Bwszfb6vgwUvcVJYD6e6Zkpsi8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.8.0.tgz", + "integrity": "sha512-A/FAHFRNQYrELrb/JHncRWzTTXB2ticiRFztP4ggIUAfa9Up1qfW8aG2w/mN9jNiZ+HB0t0u0jpJgFXG6BfRTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.8.0.tgz", + "integrity": "sha512-JsidBnh3p2IJJA4/2xOF2puAYqbaczB3elZDT0qHxn362EIoIkq7hrR43Xa8RisgI6/WPfvb2umbGsuvf7E37A==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.8.0.tgz", + "integrity": "sha512-hBNCnqw3EVCkaPB0Oqd24bv8SklETptQWcJz06kb9OtiShn9jK1VuTgi7o4zPSt6rNGWQOTDEAccbk0OqJmS+g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.8.0.tgz", + "integrity": "sha512-Fw9ChYfJPdltvi9ALJ9wzdCdxGw4wtq4t1qY028b2O7GwB5qLNSGtqMsAel1lfWTZvf4b6/+4HKp0GlSYg0ahA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.8.0.tgz", + "integrity": "sha512-BH5xIh7tOzS9yBi8dFrCTG8Z6iNIGWGltd3IpTSKp6+pNWWO6qy8eKoRxOtwFbMrid5NZaidLYN6rHh9aB8bEw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.8.0.tgz", + "integrity": "sha512-PmvAj8k6EuWiyLbkNpd6BLv5XeYFpqWuRvRNRl80xVfpGXK/z6KYXmAgbI4ogz7uFiJxCnYcqyvZVD0dgFog7Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.8.0.tgz", + "integrity": "sha512-mdxnlW2QUzXwY+95TuxZ+CurrhgrPAMveDWI97EQlA9bfhR8tw3Pt7SUlc/eSlCNxlWktpmT//EAA8UfCHOyXg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.8.0.tgz", + "integrity": "sha512-ge7saUz38aesM4MA7Cad8CHo0Fyd1+qTaqoIo+Jtk+ipBi4ATSrHWov9/S4u5pbEQmLjgUjB7BJt+MiKG2kzmA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.8.0.tgz", + "integrity": "sha512-p9E3PZlzurhlsN5h9g7zIP1DnqKXJe8ZUkFwAazqSvHuWfihlIISPxG9hCHCoA+dOOspL/c7ty1eeEVFTE0UTw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.8.0.tgz", + "integrity": "sha512-kb4/auKXkYKqlUYTE8s40FcJIj5soOyRLHKd4ugR0dCq0G2EfcF54eYcfQiGkHzjidZ40daB4ulsFdtqNKZtBg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/lodash": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.13.tgz", + "integrity": "sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==" + }, + "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/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/@vitejs/plugin-vue": { + "version": "4.5.2", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.5.2.tgz", + "integrity": "sha512-UGR3DlzLi/SaVBPX0cnSyE37vqxU3O6chn8l0HJNzQzDia6/Au2A4xKv+iIJW8w2daf80G7TYHhi1pAUjdZ0bQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.3.11.tgz", + "integrity": "sha512-h97/TGWBilnLuRaj58sxNrsUU66fwdRKLOLQ9N/5iNDfp+DZhYH9Obhe0bXxhedl8fjAgpRANpiZfbgWyruQ0w==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.5", + "@vue/shared": "3.3.11", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.3.11.tgz", + "integrity": "sha512-zoAiUIqSKqAJ81WhfPXYmFGwDRuO+loqLxvXmfUdR5fOitPoUiIeFI9cTTyv9MU5O1+ZZglJVTusWzy+wfk5hw==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.3.11", + "@vue/shared": "3.3.11" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.3.11.tgz", + "integrity": "sha512-U4iqPlHO0KQeK1mrsxCN0vZzw43/lL8POxgpzcJweopmqtoYy9nljJzWDIQS3EfjiYhfdtdk9Gtgz7MRXnz3GA==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.5", + "@vue/compiler-core": "3.3.11", + "@vue/compiler-dom": "3.3.11", + "@vue/compiler-ssr": "3.3.11", + "@vue/reactivity-transform": "3.3.11", + "@vue/shared": "3.3.11", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.5", + "postcss": "^8.4.32", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.3.11.tgz", + "integrity": "sha512-Zd66ZwMvndxRTgVPdo+muV4Rv9n9DwQ4SSgWWKWkPFebHQfVYRrVjeygmmDmPewsHyznCNvJ2P2d6iOOhdv8Qg==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.3.11", + "@vue/shared": "3.3.11" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/@vue/reactivity": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.3.11.tgz", + "integrity": "sha512-D5tcw091f0nuu+hXq5XANofD0OXnBmaRqMYl5B3fCR+mX+cXJIGNw/VNawBqkjLNWETrFW0i+xH9NvDbTPVh7g==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.3.11" + } + }, + "node_modules/@vue/reactivity-transform": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.3.11.tgz", + "integrity": "sha512-fPGjH0wqJo68A0wQ1k158utDq/cRyZNlFoxGwNScE28aUFOKFEnCBsvyD8jHn+0kd0UKVpuGuaZEQ6r9FJRqCg==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.5", + "@vue/compiler-core": "3.3.11", + "@vue/shared": "3.3.11", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.5" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.3.11.tgz", + "integrity": "sha512-g9ztHGwEbS5RyWaOpXuyIVFTschclnwhqEbdy5AwGhYOgc7m/q3NFwr50MirZwTTzX55JY8pSkeib9BX04NIpw==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.3.11", + "@vue/shared": "3.3.11" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.3.11.tgz", + "integrity": "sha512-OlhtV1PVpbgk+I2zl+Y5rQtDNcCDs12rsRg71XwaA2/Rbllw6mBLMi57VOn8G0AjOJ4Mdb4k56V37+g8ukShpQ==", + "license": "MIT", + "dependencies": { + "@vue/runtime-core": "3.3.11", + "@vue/shared": "3.3.11", + "csstype": "^3.1.2" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.3.11.tgz", + "integrity": "sha512-AIWk0VwwxCAm4wqtJyxBylRTXSy1wCLOKbWxHaHiu14wjsNYtiRCSgVuqEPVuDpErOlRdNnuRgipQfXRLjLN5A==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.3.11", + "@vue/shared": "3.3.11" + }, + "peerDependencies": { + "vue": "3.3.11" + } + }, + "node_modules/@vue/shared": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.3.11.tgz", + "integrity": "sha512-u2G8ZQ9IhMWTMXaWqZycnK4UthG1fA238CD+DP4Dm4WJi5hdUKKLg0RMRaRpDPNMdkTwIDkp7WtD0Rd9BH9fLw==", + "license": "MIT" + }, + "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.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "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.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "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/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "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.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/axios": { + "version": "1.6.2", + "resolved": "https://registry.npmmirror.com/axios/-/axios-1.6.2.tgz", + "integrity": "sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "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" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/element-plus": { + "version": "2.8.8", + "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.8.8.tgz", + "integrity": "sha512-MLAH1x2PGTnOT7Iwqh9ASgfZhvgqQqrdbxuJH0w2fGjzE4ZjryyLQj24HXoQO7Zon66U3lrYxbdLI57M6OX0qw==", + "license": "MIT", + "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.13", + "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/esbuild": { + "version": "0.19.9", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.19.9.tgz", + "integrity": "sha512-U9CHtKSy+EpPsEBa+/A2gMs/h3ylBC0H0KSqIg7tpztHerLi6nrrcoUJAkNCEPumx8yJ+Byic4BVwHgRbN0TBg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.19.9", + "@esbuild/android-arm64": "0.19.9", + "@esbuild/android-x64": "0.19.9", + "@esbuild/darwin-arm64": "0.19.9", + "@esbuild/darwin-x64": "0.19.9", + "@esbuild/freebsd-arm64": "0.19.9", + "@esbuild/freebsd-x64": "0.19.9", + "@esbuild/linux-arm": "0.19.9", + "@esbuild/linux-arm64": "0.19.9", + "@esbuild/linux-ia32": "0.19.9", + "@esbuild/linux-loong64": "0.19.9", + "@esbuild/linux-mips64el": "0.19.9", + "@esbuild/linux-ppc64": "0.19.9", + "@esbuild/linux-riscv64": "0.19.9", + "@esbuild/linux-s390x": "0.19.9", + "@esbuild/linux-x64": "0.19.9", + "@esbuild/netbsd-x64": "0.19.9", + "@esbuild/openbsd-x64": "0.19.9", + "@esbuild/sunos-x64": "0.19.9", + "@esbuild/win32-arm64": "0.19.9", + "@esbuild/win32-ia32": "0.19.9", + "@esbuild/win32-x64": "0.19.9" + } + }, + "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/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.3", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.3.tgz", + "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/immutable": { + "version": "4.3.4", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.4.tgz", + "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "license": "MIT" + }, + "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/magic-string": { + "version": "0.30.5", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "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.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "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/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.4.32", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.32.tgz", + "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", + "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" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "license": "MIT" + }, + "node_modules/qs": { + "version": "6.11.2", + "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.2.tgz", + "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rollup": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.8.0.tgz", + "integrity": "sha512-NpsklK2fach5CdI+PScmlE5R4Ao/FSWtF7LkoIrHDxPACY/xshNasPsbpG0VVHxUTbf74tJbVT4PrP8JsJ6ZDA==", + "dev": true, + "license": "MIT", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.8.0", + "@rollup/rollup-android-arm64": "4.8.0", + "@rollup/rollup-darwin-arm64": "4.8.0", + "@rollup/rollup-darwin-x64": "4.8.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.8.0", + "@rollup/rollup-linux-arm64-gnu": "4.8.0", + "@rollup/rollup-linux-arm64-musl": "4.8.0", + "@rollup/rollup-linux-riscv64-gnu": "4.8.0", + "@rollup/rollup-linux-x64-gnu": "4.8.0", + "@rollup/rollup-linux-x64-musl": "4.8.0", + "@rollup/rollup-win32-arm64-msvc": "4.8.0", + "@rollup/rollup-win32-ia32-msvc": "4.8.0", + "@rollup/rollup-win32-x64-msvc": "4.8.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/sass": { + "version": "1.69.5", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.69.5.tgz", + "integrity": "sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ==", + "dev": true, + "license": "MIT", + "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/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/vite": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/vite/-/vite-5.0.8.tgz", + "integrity": "sha512-jYMALd8aeqR3yS9xlHd0OzQJndS9fH5ylVgWdB+pxTwxLKdO1pgC5Dlb398BUxpfaBxa4M9oT7j1g503Gaj5IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.19.3", + "postcss": "^8.4.32", + "rollup": "^4.2.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.3.11", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.3.11.tgz", + "integrity": "sha512-d4oBctG92CRO1cQfVBZp6WJAs0n8AK4Xf5fNjQCBeKCvMI1efGQ5E3Alt1slFJS9fZuPcFoiAiqFvQlv1X7t/w==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.3.11", + "@vue/compiler-sfc": "3.3.11", + "@vue/runtime-dom": "3.3.11", + "@vue/server-renderer": "3.3.11", + "@vue/shared": "3.3.11" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-router": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.5.0.tgz", + "integrity": "sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + } + } +} diff --git a/TeacherHomeWork-vite/package.json b/TeacherHomeWork-vite/package.json new file mode 100644 index 0000000..c488538 --- /dev/null +++ b/TeacherHomeWork-vite/package.json @@ -0,0 +1,25 @@ +{ + "name": "tool-template-vite", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build && node modifyFile.js", + "preview": "vite preview" + }, + "dependencies": { + "@element-plus/icons-vue": "^2.3.1", + "axios": "^1.6.2", + "element-plus": "^2.8.8", + "lodash": "^4.17.21", + "qs": "^6.11.2", + "vue": "^3.3.11", + "vue-router": "^4.5.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.5.2", + "sass": "^1.69.5", + "vite": "^5.0.8" + } +} diff --git a/TeacherHomeWork-vite/src/App.vue b/TeacherHomeWork-vite/src/App.vue new file mode 100644 index 0000000..ff0eddf --- /dev/null +++ b/TeacherHomeWork-vite/src/App.vue @@ -0,0 +1,86 @@ + + + diff --git a/TeacherHomeWork-vite/src/assets/dog.jpg b/TeacherHomeWork-vite/src/assets/dog.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bff3105f177a52fc5897eb2ba989ef67cd5e589d GIT binary patch literal 32151 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

QxegRj-ZNYwie!_gqbx`H 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 { + const actToolUrl = window.g_actToolUrl; + if (process.env.NODE_ENV === 'development') { + // 如果是在开发环境,由于actToolUrl是后端的IP和端口,需要替换为前端的IP和端口,这里只需要把这个url的http://localhost:8080/替换为空,前端会自动加上一个BASE_URL。 + const newUrl = actToolUrl.replace(/http(s)?:\/\/[^:]+:\d+/, ''); + return newUrl; + } else { + return actToolUrl; + } +}; +/** + * 是否是同一个部署 + */ +export const isSameDeploy = (gid1, gid2) => { + if (!gid1 || !gid2) { + return false; + } + return ( + Math.floor(parseInt(gid1) / Math.pow(10, 8)) === Math.floor(parseInt(gid2) / Math.pow(10, 8)) + ); +}; + +const getRunToolUrl = () => { + return window.g_runToolUrl; +}; + +const getForwardUrl = () => { + return window.g_forwardUrl; +}; + +const getRtParam = () => { + return window.g_rtParam; +}; + +const RESOURCE_URL = window.g_resourceUrl; + +const USER_ID = window.g_userId; + +const getAccessToken = () => { + return window.g_accessToken; +}; + +const getBandId = () => { + return window.g_bandId; +}; + +const PARAM = window.g_param; + +const CLIENTYPE = window.g_clientType; + +const TOOLID = window.g_toolId; + +const CORE_URL = window.g_coreUrl; + +/** + * 获取吾托帮门户地址 + */ +const GATEWAY_URL = () => { + const domainUrl = _.truncate(getRunToolUrl(), { + separator: 'tre', + omission: '' + }); + return domainUrl; +}; + +const TRE_URL = GATEWAY_URL + '/tre/'; + +const RUN_SYSTEMTOOL_URL = GATEWAY_URL + '/tre/runSystemTool?'; + +/** + * 判断当前设备类型 + */ +const isCurrentClient = (type) => { + const ua = navigator.userAgent; + const isWindowsPhone = /(?:Windows Phone)/.test(ua); + const isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone; + const isAndroid = /(?:Android)/.test(ua); + const isFireFox = /(?:Firefox)/.test(ua); + const isChrome = /(?:Chrome|CriOS)/.test(ua); + // 平板 + const isTablet = + /(?:iPad|PlayBook)/.test(ua) || + (isAndroid && !/(?:Mobile)/.test(ua)) || + (isFireFox && /(?:Tablet)/.test(ua)); + const isPhone = /(?:iPhone)/.test(ua) && !isTablet; + const isPc = !isPhone && !isAndroid && !isSymbian; + const isWx = /(MicroMessenger)/.test(ua); + const isHtml5Plus = /(Html5Plus)/.test(ua); + // 判断是否为微信浏览器 + if (isWx && type === 'wx') { + return true; + } + + if (isPhone && type === 'ios') { + return true; + } + + // 判断是否为安卓系统 + if (type === 'android' && isAndroid) { + return true; + } + + // 判断是否为APP客户端 + if (type === 'app' && (isAndroid || isPhone) && isHtml5Plus) { + return true; + } + + // 判断是否是移动端,移动端泛指APP客户端、移动端网页和微信浏览器 + if (type === 'mobile' && (isAndroid || isPhone || isTablet)) { + return true; + } + + if (type === 'desktop' && isPc) { + return true; + } + return false; +}; + +export { + AID, + CLIENTYPE, + CORE_URL, + GATEWAY_URL, + RUN_SYSTEMTOOL_URL, + TRE_URL, + getAccessToken, + getActToolUrl, + getBandId, + getForwardUrl, + getRtParam, + getRunToolUrl, + isCurrentClient +}; diff --git a/TeacherHomeWork-vite/src/components/HelloWorld/index.module.scss b/TeacherHomeWork-vite/src/components/HelloWorld/index.module.scss new file mode 100644 index 0000000..7b961e6 --- /dev/null +++ b/TeacherHomeWork-vite/src/components/HelloWorld/index.module.scss @@ -0,0 +1,3 @@ +.result { + color: red; +} diff --git a/TeacherHomeWork-vite/src/components/HelloWorld/index.vue b/TeacherHomeWork-vite/src/components/HelloWorld/index.vue new file mode 100644 index 0000000..35b82ca --- /dev/null +++ b/TeacherHomeWork-vite/src/components/HelloWorld/index.vue @@ -0,0 +1,59 @@ + diff --git a/TeacherHomeWork-vite/src/components/Sidebar.vue b/TeacherHomeWork-vite/src/components/Sidebar.vue new file mode 100644 index 0000000..71da709 --- /dev/null +++ b/TeacherHomeWork-vite/src/components/Sidebar.vue @@ -0,0 +1,41 @@ + + + + + \ No newline at end of file diff --git a/TeacherHomeWork-vite/src/main.js b/TeacherHomeWork-vite/src/main.js new file mode 100644 index 0000000..a016b49 --- /dev/null +++ b/TeacherHomeWork-vite/src/main.js @@ -0,0 +1,27 @@ +import { createApp } from 'vue'; +import App from './App.vue'; +import router from './router'; +import ElementPlus from 'element-plus' +import 'element-plus/dist/index.css' +import * as ElementPlusIconsVue from '@element-plus/icons-vue' + +const init = () => { + const app = createApp(App).use(router).use(ElementPlus); + // 全局注册所有 Element Plus 图标 + for (const [key, component] of Object.entries(ElementPlusIconsVue)) { + app.component(key, component); + } + app.mount('#app') +}; + + + +if (process.env.NODE_ENV === 'development') { + // 本地开发需要等待全局变量初始化 + setTimeout(() => { + init(); + }, 2000); +} else { + console.log('初始化app'); + init(); +} diff --git a/TeacherHomeWork-vite/src/network/HttpClient.js b/TeacherHomeWork-vite/src/network/HttpClient.js new file mode 100644 index 0000000..e77a01b --- /dev/null +++ b/TeacherHomeWork-vite/src/network/HttpClient.js @@ -0,0 +1,21 @@ +import axios from 'axios'; +import qs from 'qs'; +import { getActToolUrl } from '@/base/constant'; + +export class HttpClient { + // 熟悉请求后端之后,可按照自己的编码风格进行修改 + static get(action, params = {}) { + params.action = action; + return axios + .get(getActToolUrl(), { params }) + .then((res) => res.data) + .catch((err) => err.response); + } + static post(action, params = {}) { + params.action = action; + return axios + .post(getActToolUrl(), qs.stringify(params)) + .then((res) => res.data) + .catch((err) => err.response); + } +} diff --git a/TeacherHomeWork-vite/src/router/index.js b/TeacherHomeWork-vite/src/router/index.js new file mode 100644 index 0000000..c19aa22 --- /dev/null +++ b/TeacherHomeWork-vite/src/router/index.js @@ -0,0 +1,23 @@ +import { createRouter, createWebHashHistory } from 'vue-router'; +import Home from '@/views/Home/index.vue'; + +const routes = [ + { + path: '/', + name: 'Home', + component: Home, + }, + + // { + // path: '/:pathMatch(.*)*', + // name: 'NotFound', + // // component: () => import('@/views/NotFound.vue') + // } +]; + +const router = createRouter({ + history: createWebHashHistory(), // 最好使用WebHashHistory方式;如果使用WebHistory会非常麻烦,不建议使用这种方式 + routes +}); + +export default router; diff --git a/TeacherHomeWork-vite/src/style.css b/TeacherHomeWork-vite/src/style.css new file mode 100644 index 0000000..bb131d6 --- /dev/null +++ b/TeacherHomeWork-vite/src/style.css @@ -0,0 +1,79 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +.card { + padding: 2em; +} + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/TeacherHomeWork-vite/src/type/index.js b/TeacherHomeWork-vite/src/type/index.js new file mode 100644 index 0000000..e69de29 diff --git a/TeacherHomeWork-vite/src/views/GradeManager/index.vue b/TeacherHomeWork-vite/src/views/GradeManager/index.vue new file mode 100644 index 0000000..e69de29 diff --git a/TeacherHomeWork-vite/src/views/Home/index.vue b/TeacherHomeWork-vite/src/views/Home/index.vue new file mode 100644 index 0000000..3a757da --- /dev/null +++ b/TeacherHomeWork-vite/src/views/Home/index.vue @@ -0,0 +1,12 @@ + + + + + diff --git a/TeacherHomeWork-vite/src/views/HomeWorkManager/index.vue b/TeacherHomeWork-vite/src/views/HomeWorkManager/index.vue new file mode 100644 index 0000000..3a757da --- /dev/null +++ b/TeacherHomeWork-vite/src/views/HomeWorkManager/index.vue @@ -0,0 +1,12 @@ + + + + + diff --git a/TeacherHomeWork-vite/src/views/LearningProgress/index.vue b/TeacherHomeWork-vite/src/views/LearningProgress/index.vue new file mode 100644 index 0000000..d4e1e6b --- /dev/null +++ b/TeacherHomeWork-vite/src/views/LearningProgress/index.vue @@ -0,0 +1,12 @@ + + + + + \ No newline at end of file diff --git a/TeacherHomeWork-vite/src/views/TermAssignmentReport/index.vue b/TeacherHomeWork-vite/src/views/TermAssignmentReport/index.vue new file mode 100644 index 0000000..d4e1e6b --- /dev/null +++ b/TeacherHomeWork-vite/src/views/TermAssignmentReport/index.vue @@ -0,0 +1,12 @@ + + + + + \ No newline at end of file diff --git a/TeacherHomeWork-vite/text.js b/TeacherHomeWork-vite/text.js new file mode 100644 index 0000000..fb4ffd3 --- /dev/null +++ b/TeacherHomeWork-vite/text.js @@ -0,0 +1,39 @@ +export const DEV_SCRIPT = ``; + +export const PROD_SCRIPT = ``; + +export const PROD_MAIN_JSP_HEADER = + '<%@ page import="java.util.*" contentType="text/html; charset=utf-8" %>'; diff --git a/TeacherHomeWork-vite/vite.config.js b/TeacherHomeWork-vite/vite.config.js new file mode 100644 index 0000000..650c115 --- /dev/null +++ b/TeacherHomeWork-vite/vite.config.js @@ -0,0 +1,83 @@ +import vue from '@vitejs/plugin-vue'; +import { resolve } from 'path'; +import { defineConfig, mergeConfig } from 'vite'; +import { DEV_SCRIPT, PROD_MAIN_JSP_HEADER, PROD_SCRIPT } from './text'; + +// https://vitejs.dev/config/ +export default defineConfig(({ command }) => { + const common_config = { + plugins: [vue()], + resolve: { + alias: { + '@': resolve(__dirname, './src') + } + } + }; + // 开发环境的配置 + if (command === 'serve') { + // 配置修改HTML代码的插件 + const htmlPlugin = () => { + return { + name: 'html-transform', + transformIndexHtml(html) { + return html.replace(/