diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 05600fde..05ade611 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -3,3 +3,5 @@ # vben core onwer /packages/@core/ anncwb@126.com +/internal/ anncwb@126.com +/scripts/ anncwb@126.com diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9cf99d15..cebbc5c6 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -49,6 +49,14 @@ jobs: password: ${{ secrets.WEB_ANTD_FTP_PASSWORD }} local-dir: ./apps/web-antd/dist/ + - name: Sync Web Naive files + uses: SamKirkland/FTP-Deploy-Action@v4.3.5 + with: + server: ${{ secrets.PRO_FTP_HOST }} + username: ${{ secrets.WEB_NAIVE_FTP_ACCOUNT }} + password: ${{ secrets.WEB_NAIVE_FTP_PASSWORD }} + local-dir: ./apps/web-naive/dist/ + - name: Sync Website files uses: SamKirkland/FTP-Deploy-Action@v4.3.5 with: diff --git a/apps/web-antd/package.json b/apps/web-antd/package.json index 38a7cd8f..cacc517a 100644 --- a/apps/web-antd/package.json +++ b/apps/web-antd/package.json @@ -44,7 +44,7 @@ "ant-design-vue": "^4.2.3", "dayjs": "^1.11.12", "pinia": "2.1.7", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/apps/web-naive/index.html b/apps/web-naive/index.html index ca532699..7ea63841 100644 --- a/apps/web-naive/index.html +++ b/apps/web-naive/index.html @@ -21,7 +21,7 @@ (function () { var hm = document.createElement('script'); hm.src = - 'https://hm.baidu.com/hm.js?d20a01273820422b6aa2ee41b6c9414d'; + 'https://hm.baidu.com/hm.js?24bb3eb91dfe4ebfcbcee6952a107cb6'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(hm, s); })(); diff --git a/apps/web-naive/package.json b/apps/web-naive/package.json index 3360c0a8..f9499b1a 100644 --- a/apps/web-naive/package.json +++ b/apps/web-naive/package.json @@ -43,7 +43,7 @@ "@vueuse/core": "^10.11.0", "naive-ui": "^2.39.0", "pinia": "2.1.7", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/cspell.json b/cspell.json index 0a638775..c731399a 100644 --- a/cspell.json +++ b/cspell.json @@ -14,6 +14,7 @@ "lucide", "brotli", "defu", + "execa", "iconify", "intlify", "mkdist", diff --git a/internal/lint-configs/eslint-config/package.json b/internal/lint-configs/eslint-config/package.json index 42db6311..c9d2b2c1 100644 --- a/internal/lint-configs/eslint-config/package.json +++ b/internal/lint-configs/eslint-config/package.json @@ -27,7 +27,7 @@ } }, "dependencies": { - "eslint-config-turbo": "^2.0.9", + "eslint-config-turbo": "^2.0.10", "eslint-plugin-command": "^0.2.3", "eslint-plugin-import-x": "^3.1.0" }, @@ -39,7 +39,7 @@ "eslint": "^9.8.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-jsdoc": "^48.10.1", + "eslint-plugin-jsdoc": "^48.10.2", "eslint-plugin-jsonc": "^2.16.0", "eslint-plugin-n": "^17.10.1", "eslint-plugin-no-only-tests": "^3.1.0", diff --git a/internal/node-utils/package.json b/internal/node-utils/package.json index 090b07e0..d88fb281 100644 --- a/internal/node-utils/package.json +++ b/internal/node-utils/package.json @@ -30,13 +30,20 @@ "dependencies": { "@changesets/git": "^3.0.0", "@manypkg/get-packages": "^2.2.2", + "chalk": "^5.3.0", "consola": "^3.2.3", "dayjs": "^1.11.12", + "execa": "^9.3.0", "find-up": "^7.0.0", + "fs-extra": "^11.2.0", "nanoid": "^5.0.7", + "ora": "^8.0.1", "pkg-types": "^1.1.3", "prettier": "^3.3.3", - "rimraf": "^6.0.1", - "zx": "^8.1.4" + "rimraf": "^6.0.1" + }, + "devDependencies": { + "@types/chalk": "^2.2.0", + "@types/fs-extra": "^11.0.4" } } diff --git a/internal/node-utils/src/git.ts b/internal/node-utils/src/git.ts index ee78a54d..88f159cc 100644 --- a/internal/node-utils/src/git.ts +++ b/internal/node-utils/src/git.ts @@ -1,24 +1,32 @@ import path from 'node:path'; -import { $ } from 'zx'; +import { execa } from 'execa'; export * from '@changesets/git'; /** * 获取暂存区文件 */ -async function getStagedFiles() { +async function getStagedFiles(): Promise { try { - $.verbose = false; - const { stdout: lines } = - await $`git -c submodule.recurse=false diff --staged --diff-filter=ACMR --name-only --ignore-submodules -z`; + const { stdout } = await execa('git', [ + '-c', + 'submodule.recurse=false', + 'diff', + '--staged', + '--diff-filter=ACMR', + '--name-only', + '--ignore-submodules', + '-z', + ]); - let changedList = lines ? lines.replace(/\0$/, '').split('\0') : []; + let changedList = stdout ? stdout.replace(/\0$/, '').split('\0') : []; changedList = changedList.map((item) => path.resolve(process.cwd(), item)); const changedSet = new Set(changedList); changedSet.delete(''); return [...changedSet]; - } catch { + } catch (error) { + console.error('Failed to get staged files:', error); return []; } } diff --git a/internal/node-utils/src/index.ts b/internal/node-utils/src/index.ts index 00c501b6..5191f10c 100644 --- a/internal/node-utils/src/index.ts +++ b/internal/node-utils/src/index.ts @@ -6,9 +6,12 @@ export { generatorContentHash } from './hash'; export * from './monorepo'; export { toPosixPath } from './path'; export { prettierFormat } from './prettier'; +export * from './spinner'; export type { Package } from '@manypkg/get-packages'; +export { default as colors } from 'chalk'; export { consola } from 'consola'; +export * from 'execa'; +export { default as fs } from 'fs-extra'; export { nanoid } from 'nanoid'; export { type PackageJson, readPackageJSON } from 'pkg-types'; export { rimraf } from 'rimraf'; -export { $, chalk as colors, fs, spinner } from 'zx'; diff --git a/internal/node-utils/src/prettier.ts b/internal/node-utils/src/prettier.ts index 2fea3940..58d60f90 100644 --- a/internal/node-utils/src/prettier.ts +++ b/internal/node-utils/src/prettier.ts @@ -1,5 +1,5 @@ +import fs from 'fs-extra'; import { format, getFileInfo, resolveConfig } from 'prettier'; -import { fs } from 'zx'; async function prettierFormat(filepath: string) { const prettierOptions = await resolveConfig(filepath, {}); diff --git a/internal/node-utils/src/spinner.ts b/internal/node-utils/src/spinner.ts new file mode 100644 index 00000000..9f05a515 --- /dev/null +++ b/internal/node-utils/src/spinner.ts @@ -0,0 +1,24 @@ +import ora, { Ora } from 'ora'; + +interface SpinnerOptions { + failedText?: string; + successText?: string; + title: string; +} +export async function spinner( + { failedText, successText, title }: SpinnerOptions, + callback: () => Promise, +): Promise { + const loading: Ora = ora(title).start(); + + try { + const result = await callback(); + loading.succeed(successText || 'Success!'); + return result; + } catch (error) { + loading.fail(failedText || 'Failed!'); + throw error; + } finally { + loading.stop(); + } +} diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index b4cf6e5f..6b01b3f4 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -32,7 +32,6 @@ "cheerio": "1.0.0-rc.12", "html-minifier-terser": "^7.2.0", "nitropack": "^2.9.7", - "portfinder": "^1.0.32", "resolve.exports": "^2.0.2", "vite-plugin-lib-inject-css": "^2.1.1", "vite-plugin-pwa": "^0.20.1", diff --git a/internal/vite-config/src/plugins/nitor-mock.ts b/internal/vite-config/src/plugins/nitor-mock.ts index 69c6454b..dece2c1e 100644 --- a/internal/vite-config/src/plugins/nitor-mock.ts +++ b/internal/vite-config/src/plugins/nitor-mock.ts @@ -5,7 +5,6 @@ import type { NitroMockPluginOptions } from '../typing'; import { colors, consola, getPackage } from '@vben/node-utils'; import { build, createDevServer, createNitro, prepare } from 'nitropack'; -import portfinder from 'portfinder'; const hmrKeyRe = /^runtimeConfig\.|routeRules\./; @@ -78,11 +77,6 @@ async function runNitroServer(rootDir: string, port: number, verbose: boolean) { nitro.hooks.hookOnce('restart', reload); const server = createDevServer(nitro); - // 端口已经存在 - const availablePort = await portfinder.getPortPromise({ port }); - if (availablePort !== port) { - return; - } await server.listen(port, { showURL: false }); await prepare(nitro); await build(nitro); @@ -92,5 +86,5 @@ async function runNitroServer(rootDir: string, port: number, verbose: boolean) { consola.success(colors.bold(colors.green('Nitro Mock Server started.'))); } }; - await reload(); + return await reload(); } diff --git a/package.json b/package.json index 5bee848f..6cc8fc53 100644 --- a/package.json +++ b/package.json @@ -6,12 +6,12 @@ "monorepo", "turbo", "vben", - "vue vben admin", - "vue vben admin pro", "vben admin", "vben pro", "vue", "vue admin", + "vue vben admin", + "vue vben admin pro", "vue3" ], "homepage": "https://github.com/vbenjs/vue-vben-admin", @@ -27,30 +27,30 @@ "scripts": { "bootstrap": "pnpm install", "build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 turbo build", - "preview": "turbo preview", "build:analyze": "turbo build:analyze", "build:docker": "./build-local-docker-image.sh", "changeset": "pnpm exec changeset", - "check": "pnpm run check:circular && pnpm run check:dep && pnpm run check:type", + "check": "pnpm run check:circular && pnpm run check:dep && pnpm run check:type && pnpm check:cspell", "check:circular": "vsh check-circular", + "check:cspell": "cspell lint **/*.ts **/README.md .changeset/*.md --no-progress", "check:dep": "vsh check-dep", "check:type": "turbo run typecheck", "clean": "vsh clean", "commit": "czg", "dev": "turbo-run dev", - "dev:antd": "pnpm -F @vben/web-antd", - "dev:ele": "pnpm -F @vben/web-ele", - "dev:naive": "pnpm -F @vben/web-naive", - "dev:docs": "pnpm -F @vben/website run docs:dev", + "dev:antd": "pnpm -F @vben/web-antd run dev", + "dev:docs": "pnpm -F @vben/website run dev", + "dev:ele": "pnpm -F @vben/web-ele run dev", + "dev:naive": "pnpm -F @vben/web-naive run dev", "format": "vsh lint --format", "lint": "vsh lint", "postinstall": "turbo run stub", "preinstall": "npx only-allow pnpm", "prepare": "is-ci || husky", + "preview": "turbo-run preview", "publint": "vsh publint", "reinstall": "pnpm clean --del-lock && pnpm bootstrap", "test:unit": "vitest", - "turbo-run": "turbo-run", "update:deps": " pnpm update --latest --recursive", "version": "pnpm exec changeset version && pnpm install --no-frozen-lockfile" }, @@ -78,11 +78,11 @@ "is-ci": "^3.0.1", "jsdom": "^24.1.1", "rimraf": "^6.0.1", - "turbo": "^2.0.9", + "turbo": "^2.0.10", "typescript": "^5.5.4", "unbuild": "^2.0.0", "vite": "^5.3.5", - "vitest": "^2.0.4", + "vitest": "^2.0.5", "vue-tsc": "^2.0.29" }, "engines": { @@ -91,10 +91,16 @@ }, "packageManager": "pnpm@9.6.0", "pnpm": { + "peerDependencyRules": { + "allowedVersions": { + "eslint": "*", + "@typescript-eslint/eslint-plugin": "*" + } + }, "overrides": { "@ctrl/tinycolor": "^4.1.0", "clsx": "^2.1.1", - "vue": "^3.4.34" + "vue": "^3.4.35" }, "neverBuiltDependencies": [ "canvas", diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index 036187d8..2de9149e 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -36,6 +36,6 @@ "dependencies": { "@iconify/vue": "^4.1.2", "lucide-vue-next": "^0.417.0", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json index eaa606e9..bdeedb39 100644 --- a/packages/@core/base/shared/package.json +++ b/packages/@core/base/shared/package.json @@ -56,7 +56,7 @@ }, "dependencies": { "@ctrl/tinycolor": "^4.1.0", - "@vue/shared": "^3.4.34", + "@vue/shared": "^3.4.35", "clsx": "^2.1.1", "defu": "^6.1.4", "lodash.clonedeep": "^4.5.0", diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index 103c22a1..e2f4cad8 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -38,7 +38,7 @@ } }, "dependencies": { - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index 7940ff3a..7aea48cd 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -39,7 +39,7 @@ "@vueuse/core": "^10.11.0", "radix-vue": "^1.9.2", "sortablejs": "^1.15.2", - "vue": "^3.4.34" + "vue": "^3.4.35" }, "devDependencies": { "@types/sortablejs": "^1.15.8" diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json index 681386f8..90979fbb 100644 --- a/packages/@core/preferences/package.json +++ b/packages/@core/preferences/package.json @@ -32,6 +32,6 @@ "@vben-core/shared": "workspace:*", "@vben-core/typings": "workspace:*", "@vueuse/core": "^10.11.0", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/@core/ui-kit/layout-ui/package.json b/packages/@core/ui-kit/layout-ui/package.json index 74dad7f3..ae718383 100644 --- a/packages/@core/ui-kit/layout-ui/package.json +++ b/packages/@core/ui-kit/layout-ui/package.json @@ -42,6 +42,6 @@ "@vben-core/shadcn-ui": "workspace:*", "@vben-core/typings": "workspace:*", "@vueuse/core": "^10.11.0", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/@core/ui-kit/menu-ui/package.json b/packages/@core/ui-kit/menu-ui/package.json index a428be7e..fe32be57 100644 --- a/packages/@core/ui-kit/menu-ui/package.json +++ b/packages/@core/ui-kit/menu-ui/package.json @@ -43,6 +43,6 @@ "@vben-core/shared": "workspace:*", "@vben-core/typings": "workspace:*", "@vueuse/core": "^10.11.0", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/@core/ui-kit/shadcn-ui/package.json b/packages/@core/ui-kit/shadcn-ui/package.json index 95326f01..1d7a7b9d 100644 --- a/packages/@core/ui-kit/shadcn-ui/package.json +++ b/packages/@core/ui-kit/shadcn-ui/package.json @@ -50,6 +50,6 @@ "class-variance-authority": "^0.7.0", "lucide-vue-next": "^0.417.0", "radix-vue": "^1.9.2", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/@core/ui-kit/tabs-ui/package.json b/packages/@core/ui-kit/tabs-ui/package.json index a16a4cea..d6414d24 100644 --- a/packages/@core/ui-kit/tabs-ui/package.json +++ b/packages/@core/ui-kit/tabs-ui/package.json @@ -41,6 +41,6 @@ "@vben-core/icons": "workspace:*", "@vben-core/shadcn-ui": "workspace:*", "@vben-core/typings": "workspace:*", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/effects/access/package.json b/packages/effects/access/package.json index bedf0967..2ff5b9ab 100644 --- a/packages/effects/access/package.json +++ b/packages/effects/access/package.json @@ -24,6 +24,6 @@ "@vben/stores": "workspace:*", "@vben/types": "workspace:*", "@vben/utils": "workspace:*", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/effects/chart-ui/package.json b/packages/effects/chart-ui/package.json index 23a625f2..3f3e1d58 100644 --- a/packages/effects/chart-ui/package.json +++ b/packages/effects/chart-ui/package.json @@ -23,6 +23,6 @@ "@vben/preferences": "workspace:*", "@vueuse/core": "^10.11.0", "echarts": "^5.5.1", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/packages/effects/common-ui/package.json b/packages/effects/common-ui/package.json index 24fb70f6..e90c3be2 100644 --- a/packages/effects/common-ui/package.json +++ b/packages/effects/common-ui/package.json @@ -28,7 +28,7 @@ "@vben/types": "workspace:*", "@vueuse/integrations": "^10.11.0", "qrcode": "^1.5.3", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" }, "devDependencies": { diff --git a/packages/effects/hooks/package.json b/packages/effects/hooks/package.json index e6832ecc..8de4d3de 100644 --- a/packages/effects/hooks/package.json +++ b/packages/effects/hooks/package.json @@ -24,7 +24,7 @@ "@vben/preferences": "workspace:*", "@vben/stores": "workspace:*", "@vben/types": "workspace:*", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0", "watermark-js-plus": "^1.5.2" } diff --git a/packages/effects/layouts/package.json b/packages/effects/layouts/package.json index 83c907b5..0e3341bd 100644 --- a/packages/effects/layouts/package.json +++ b/packages/effects/layouts/package.json @@ -33,7 +33,7 @@ "@vben/types": "workspace:*", "@vben/utils": "workspace:*", "@vueuse/core": "^10.11.0", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/packages/effects/request/package.json b/packages/effects/request/package.json index 970a3326..7f9fa456 100644 --- a/packages/effects/request/package.json +++ b/packages/effects/request/package.json @@ -22,8 +22,7 @@ "dependencies": { "@vben/locales": "workspace:*", "@vben/utils": "workspace:*", - "axios": "^1.7.2", - "vue-request": "^2.0.4" + "axios": "^1.7.2" }, "devDependencies": { "axios-mock-adapter": "^1.22.0" diff --git a/packages/effects/request/src/index.ts b/packages/effects/request/src/index.ts index 43096968..fae1b058 100644 --- a/packages/effects/request/src/index.ts +++ b/packages/effects/request/src/index.ts @@ -1,3 +1,2 @@ export * from './request-client'; -export * from './use-request'; export * from 'axios'; diff --git a/packages/effects/request/src/use-request.ts b/packages/effects/request/src/use-request.ts deleted file mode 100644 index 5b1c4a81..00000000 --- a/packages/effects/request/src/use-request.ts +++ /dev/null @@ -1,11 +0,0 @@ -// import { setGlobalOptions, } from 'vue-request'; - -// setGlobalOptions({ -// manual: true, -// // ... -// }); - -/** - * @see https://www.attojs.com/guide/documentation/globalOptions.html - */ -export * from 'vue-request'; diff --git a/packages/locales/package.json b/packages/locales/package.json index a574e3f8..734f1efa 100644 --- a/packages/locales/package.json +++ b/packages/locales/package.json @@ -21,7 +21,7 @@ }, "dependencies": { "@intlify/core-base": "^9.13.1", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-i18n": "^9.13.1" } } diff --git a/packages/stores/package.json b/packages/stores/package.json index 2a11d05f..7f6a4a56 100644 --- a/packages/stores/package.json +++ b/packages/stores/package.json @@ -24,7 +24,7 @@ "@vben-core/typings": "workspace:*", "pinia": "2.1.7", "pinia-plugin-persistedstate": "^3.2.1", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/packages/types/package.json b/packages/types/package.json index 9aa6db15..72b55d46 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -21,7 +21,7 @@ }, "dependencies": { "@vben-core/typings": "workspace:*", - "vue": "^3.4.34", + "vue": "^3.4.35", "vue-router": "^4.4.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b3321edb..4f473569 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,7 +7,7 @@ settings: overrides: '@ctrl/tinycolor': ^4.1.0 clsx: ^2.1.1 - vue: ^3.4.34 + vue: ^3.4.35 importers: @@ -83,7 +83,7 @@ importers: specifier: ^6.0.1 version: 6.0.1 turbo: - specifier: ^2.0.9 + specifier: ^2.0.10 version: 2.0.10 typescript: specifier: ^5.5.4 @@ -95,8 +95,8 @@ importers: specifier: ^5.3.5 version: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) vitest: - specifier: ^2.0.4 - version: 2.0.4(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3) + specifier: ^2.0.5 + version: 2.0.5(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3) vue-tsc: specifier: ^2.0.29 version: 2.0.29(typescript@5.5.4) @@ -153,22 +153,22 @@ importers: version: link:../../packages/utils '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) ant-design-vue: specifier: ^4.2.3 - version: 4.2.3(vue@3.4.34(typescript@5.5.4)) + version: 4.2.3(vue@3.4.35(typescript@5.5.4)) dayjs: specifier: ^1.11.12 version: 1.11.12 pinia: specifier: 2.1.7 - version: 2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)) + version: 2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) apps/web-ele: dependencies: @@ -216,22 +216,22 @@ importers: version: link:../../packages/utils '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) dayjs: specifier: ^1.11.12 version: 1.11.12 element-plus: specifier: ^2.7.6 - version: 2.7.8(vue@3.4.34(typescript@5.5.4)) + version: 2.7.8(vue@3.4.35(typescript@5.5.4)) pinia: specifier: 2.1.7 - version: 2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)) + version: 2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) devDependencies: unplugin-element-plus: specifier: ^0.8.0 @@ -283,19 +283,19 @@ importers: version: link:../../packages/utils '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) naive-ui: specifier: ^2.39.0 - version: 2.39.0(vue@3.4.34(typescript@5.5.4)) + version: 2.39.0(vue@3.4.35(typescript@5.5.4)) pinia: specifier: 2.1.7 - version: 2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)) + version: 2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) internal/lint-configs/commitlint-config: dependencies: @@ -321,7 +321,7 @@ importers: internal/lint-configs/eslint-config: dependencies: eslint-config-turbo: - specifier: ^2.0.9 + specifier: ^2.0.10 version: 2.0.10(eslint@9.8.0) eslint-plugin-command: specifier: ^0.2.3 @@ -352,7 +352,7 @@ importers: specifier: ^3.2.0 version: 3.2.0(eslint@9.8.0) eslint-plugin-jsdoc: - specifier: ^48.10.1 + specifier: ^48.10.2 version: 48.10.2(eslint@9.8.0) eslint-plugin-jsonc: specifier: ^2.16.0 @@ -380,7 +380,7 @@ importers: version: 4.0.1(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0) eslint-plugin-vitest: specifier: ^0.5.4 - version: 0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@2.0.4(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3)) + version: 0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3)) eslint-plugin-vue: specifier: ^9.27.0 version: 9.27.0(eslint@9.8.0) @@ -463,18 +463,30 @@ importers: '@manypkg/get-packages': specifier: ^2.2.2 version: 2.2.2 + chalk: + specifier: ^5.3.0 + version: 5.3.0 consola: specifier: ^3.2.3 version: 3.2.3 dayjs: specifier: ^1.11.12 version: 1.11.12 + execa: + specifier: ^9.3.0 + version: 9.3.0 find-up: specifier: ^7.0.0 version: 7.0.0 + fs-extra: + specifier: ^11.2.0 + version: 11.2.0 nanoid: specifier: ^5.0.7 version: 5.0.7 + ora: + specifier: ^8.0.1 + version: 8.0.1 pkg-types: specifier: ^1.1.3 version: 1.1.3 @@ -484,9 +496,13 @@ importers: rimraf: specifier: ^6.0.1 version: 6.0.1 - zx: - specifier: ^8.1.4 - version: 8.1.4 + devDependencies: + '@types/chalk': + specifier: ^2.2.0 + version: 2.2.0 + '@types/fs-extra': + specifier: ^11.0.4 + version: 11.0.4 internal/tailwind-config: dependencies: @@ -547,7 +563,7 @@ importers: dependencies: '@intlify/unplugin-vue-i18n': specifier: ^4.0.0 - version: 4.0.0(rollup@4.19.1)(vue-i18n@9.13.1(vue@3.4.34(typescript@5.5.4))) + version: 4.0.0(rollup@4.19.1)(vue-i18n@9.13.1(vue@3.4.35(typescript@5.5.4))) '@jspm/generator': specifier: ^2.1.2 version: 2.1.2 @@ -560,9 +576,6 @@ importers: nitropack: specifier: ^2.9.7 version: 2.9.7(encoding@0.1.13) - portfinder: - specifier: ^1.0.32 - version: 1.0.32 resolve.exports: specifier: ^2.0.2 version: 2.0.2 @@ -574,7 +587,7 @@ importers: version: 0.20.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(workbox-build@7.1.1)(workbox-window@7.1.0) vite-plugin-vue-devtools: specifier: ^7.3.7 - version: 7.3.7(rollup@4.19.1)(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)) + version: 7.3.7(rollup@4.19.1)(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)) devDependencies: '@types/html-minifier-terser': specifier: ^7.0.2 @@ -584,10 +597,10 @@ importers: version: link:../node-utils '@vitejs/plugin-vue': specifier: ^5.1.1 - version: 5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)) + version: 5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)) '@vitejs/plugin-vue-jsx': specifier: ^4.0.0 - version: 4.0.0(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)) + version: 4.0.0(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)) dayjs: specifier: ^1.11.12 version: 1.11.12 @@ -622,13 +635,13 @@ importers: dependencies: '@iconify/vue': specifier: ^4.1.2 - version: 4.1.2(vue@3.4.34(typescript@5.5.4)) + version: 4.1.2(vue@3.4.35(typescript@5.5.4)) lucide-vue-next: specifier: ^0.417.0 - version: 0.417.0(vue@3.4.34(typescript@5.5.4)) + version: 0.417.0(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/@core/base/shared: dependencies: @@ -636,8 +649,8 @@ importers: specifier: ^4.1.0 version: 4.1.0 '@vue/shared': - specifier: ^3.4.34 - version: 3.4.34 + specifier: ^3.4.35 + version: 3.4.35 clsx: specifier: ^2.1.1 version: 2.1.1 @@ -667,11 +680,11 @@ importers: packages/@core/base/typings: dependencies: vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) packages/@core/composables: dependencies: @@ -680,16 +693,16 @@ importers: version: link:../base/shared '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) radix-vue: specifier: ^1.9.2 - version: 1.9.2(vue@3.4.34(typescript@5.5.4)) + version: 1.9.2(vue@3.4.35(typescript@5.5.4)) sortablejs: specifier: ^1.15.2 version: 1.15.2 vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) devDependencies: '@types/sortablejs': specifier: ^1.15.8 @@ -705,10 +718,10 @@ importers: version: link:../base/typings '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/@core/ui-kit/layout-ui: dependencies: @@ -726,10 +739,10 @@ importers: version: link:../../base/typings '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/@core/ui-kit/menu-ui: dependencies: @@ -750,16 +763,16 @@ importers: version: link:../../base/typings '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/@core/ui-kit/shadcn-ui: dependencies: '@radix-icons/vue': specifier: ^1.0.0 - version: 1.0.0(vue@3.4.34(typescript@5.5.4)) + version: 1.0.0(vue@3.4.35(typescript@5.5.4)) '@vben-core/icons': specifier: workspace:* version: link:../../base/icons @@ -771,19 +784,19 @@ importers: version: link:../../base/typings '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) class-variance-authority: specifier: ^0.7.0 version: 0.7.0 lucide-vue-next: specifier: ^0.417.0 - version: 0.417.0(vue@3.4.34(typescript@5.5.4)) + version: 0.417.0(vue@3.4.35(typescript@5.5.4)) radix-vue: specifier: ^1.9.2 - version: 1.9.2(vue@3.4.34(typescript@5.5.4)) + version: 1.9.2(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/@core/ui-kit/tabs-ui: dependencies: @@ -800,8 +813,8 @@ importers: specifier: workspace:* version: link:../../base/typings vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/constants: dependencies: @@ -824,8 +837,8 @@ importers: specifier: workspace:* version: link:../../utils vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/effects/chart-ui: dependencies: @@ -834,13 +847,13 @@ importers: version: link:../../preferences '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) echarts: specifier: ^5.5.1 version: 5.5.1 vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages/effects/common-ui: dependencies: @@ -864,16 +877,16 @@ importers: version: link:../../types '@vueuse/integrations': specifier: ^10.11.0 - version: 10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.35(typescript@5.5.4)) qrcode: specifier: ^1.5.3 version: 1.5.3 vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) devDependencies: '@types/qrcode': specifier: ^1.5.5 @@ -894,11 +907,11 @@ importers: specifier: workspace:* version: link:../../types vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) watermark-js-plus: specifier: ^1.5.2 version: 1.5.2 @@ -943,13 +956,13 @@ importers: version: link:../../utils '@vueuse/core': specifier: ^10.11.0 - version: 10.11.0(vue@3.4.34(typescript@5.5.4)) + version: 10.11.0(vue@3.4.35(typescript@5.5.4)) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) packages/effects/request: dependencies: @@ -962,9 +975,6 @@ importers: axios: specifier: ^1.7.2 version: 1.7.2 - vue-request: - specifier: ^2.0.4 - version: 2.0.4(vue@3.4.34(typescript@5.5.4)) devDependencies: axios-mock-adapter: specifier: ^1.22.0 @@ -982,11 +992,11 @@ importers: specifier: ^9.13.1 version: 9.13.1 vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-i18n: specifier: ^9.13.1 - version: 9.13.1(vue@3.4.34(typescript@5.5.4)) + version: 9.13.1(vue@3.4.35(typescript@5.5.4)) packages/preferences: dependencies: @@ -1007,16 +1017,16 @@ importers: version: link:../@core/base/typings pinia: specifier: 2.1.7 - version: 2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)) + version: 2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)) pinia-plugin-persistedstate: specifier: ^3.2.1 - version: 3.2.1(pinia@2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4))) + version: 3.2.1(pinia@2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4))) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) packages/styles: dependencies: @@ -1030,11 +1040,11 @@ importers: specifier: workspace:* version: link:../@core/base/typings vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) packages/utils: dependencies: @@ -1046,7 +1056,7 @@ importers: version: link:../@core/base/typings vue-router: specifier: ^4.4.0 - version: 4.4.0(vue@3.4.34(typescript@5.5.4)) + version: 4.4.0(vue@3.4.35(typescript@5.5.4)) scripts/turbo-run: dependencies: @@ -1091,8 +1101,8 @@ importers: specifier: ^1.3.1 version: 1.3.1(@algolia/client-search@4.24.0)(@types/node@22.0.0)(async-validator@4.2.5)(axios@1.7.2)(nprogress@0.2.0)(postcss@8.4.40)(qrcode@1.5.3)(sass@1.77.8)(search-insights@2.15.0)(sortablejs@1.15.2)(terser@5.31.3)(typescript@5.5.4) vue: - specifier: ^3.4.34 - version: 3.4.34(typescript@5.5.4) + specifier: ^3.4.35 + version: 3.4.35(typescript@5.5.4) packages: @@ -1178,7 +1188,7 @@ packages: '@ant-design/icons-vue@7.0.1': resolution: {integrity: sha512-eCqY2unfZK6Fe02AwFlDHLfoyEFreP6rBwAZMIJ1LugmfMiVgwWDYlp1YsRugaPtICYOabV1iWxXdP12u9U43Q==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@antfu/utils@0.7.10': resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} @@ -2254,7 +2264,7 @@ packages: '@css-render/vue3-ssr@0.15.14': resolution: {integrity: sha512-//8027GSbxE9n3QlD73xFY6z4ZbHbvrOVB7AO6hsmrEzGbg+h2A09HboUyDgu+xsmj7JnvJD39Irt+2D0+iV8g==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@csstools/cascade-layer-name-parser@1.0.13': resolution: {integrity: sha512-MX0yLTwtZzr82sQ0zOjqimpZbzjMaK/h2pmlrLK7DCzlmiZLYFpoO94WmN1akRVo6ll/TdpHb53vihHLUMyvng==} @@ -2529,7 +2539,7 @@ packages: '@element-plus/icons-vue@2.3.1': resolution: {integrity: sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@emotion/hash@0.8.0': resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} @@ -3171,7 +3181,7 @@ packages: '@iconify/vue@4.1.2': resolution: {integrity: sha512-CQnYqLiQD5LOAaXhBrmj1mdL2/NCJvwcC4jtW2Z8ukhThiFkLDkutarTOV2trfc9EXqUqRs0KqXOL9pZ/IyysA==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@internationalized/date@3.5.5': resolution: {integrity: sha512-H+CfYvOZ0LTJeeLOqm19E3uj/4YjrmOFtBufDHPfvtI80hFAMqtrp7oCACpe4Cil5l8S0Qu/9dYfZc/5lY8WQQ==} @@ -3443,7 +3453,7 @@ packages: '@radix-icons/vue@1.0.0': resolution: {integrity: sha512-gKWWk9tTK/laDRRNe5KLLR8A0qUwx4q4+DN8Fq48hJ904u78R82ayAO3TrxbNLgyn2D0h6rRiGdLzQWj7rPcvA==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@rollup/plugin-alias@5.1.0': resolution: {integrity: sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==} @@ -3654,6 +3664,9 @@ packages: '@rushstack/ts-command-line@4.22.2': resolution: {integrity: sha512-xkvrGd6D9dPlI3I401Thc640WNsEPB1sGEmy12a2VJaPQPwhE6Ik0gEVPZJ/2G1w213eaCAdxUY1xpiTulsmpA==} + '@sec-ant/readable-stream@0.4.1': + resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} + '@shikijs/core@1.12.0': resolution: {integrity: sha512-mc1cLbm6UQ8RxLc0dZES7v5rkH+99LxQp/ZvTqV3NLyYsO/fD6JhEflP1H5b2SDq9gI0+0G36AVZWxvounfR9w==} @@ -3667,6 +3680,10 @@ packages: resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} engines: {node: '>=18'} + '@sindresorhus/merge-streams@4.0.0': + resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} + engines: {node: '>=18'} + '@stylistic/stylelint-plugin@3.0.0': resolution: {integrity: sha512-GymY+9CSqkPaZ1A3m3w/tvCdpP3qQcaL1FSaoVv9aKL3Tn6GVJWHc2VWVkbNEsYr4QImHjWnlmVZROwgUEjMmQ==} engines: {node: ^18.12 || >=20.9} @@ -3698,7 +3715,7 @@ packages: '@tanstack/vue-virtual@3.8.4': resolution: {integrity: sha512-4Pq8odunHQPsTg2iE2yzWdzYed/8LySy2knxqJYkaNOQRXbqJ7O/Owpoon8ZM9L+jLL1faM5TVHV0eJxm68q8A==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@tootallnate/once@1.1.2': resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} @@ -3714,6 +3731,10 @@ packages: '@types/bintrees@1.0.6': resolution: {integrity: sha512-pZWT4Bz+tWwxlDspSjdoIza4PE5lbGI4Xvs3FZV/2v5m5SDA8LwNpU8AXxlndmARO7OaQ1Vf3zFenOsNMzaRkQ==} + '@types/chalk@2.2.0': + resolution: {integrity: sha512-1zzPV9FDe1I/WHhRkf9SNgqtRJWZqrBWgu7JGveuHmmyR9CnAPCie2N/x+iHrgnpYBIcCJWHBoMRv2TRWktsvw==} + deprecated: This is a stub types definition for chalk (https://github.com/chalk/chalk). chalk provides its own type definitions, so you don't need @types/chalk installed! + '@types/conventional-commits-parser@5.0.0': resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==} @@ -3908,32 +3929,32 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: ^5.0.0 - vue: ^3.4.34 + vue: ^3.4.35 '@vitejs/plugin-vue@5.1.1': resolution: {integrity: sha512-sDckXxlHpMsjRQbAH9WanangrfrblsOd3pNifePs+FOHjJg1jfWq5L/P0PsBRndEt3nmdUnmvieP8ULDeX5AvA==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: ^5.0.0 - vue: ^3.4.34 + vue: ^3.4.35 - '@vitest/expect@2.0.4': - resolution: {integrity: sha512-39jr5EguIoanChvBqe34I8m1hJFI4+jxvdOpD7gslZrVQBKhh8H9eD7J/LJX4zakrw23W+dITQTDqdt43xVcJw==} + '@vitest/expect@2.0.5': + resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} - '@vitest/pretty-format@2.0.4': - resolution: {integrity: sha512-RYZl31STbNGqf4l2eQM1nvKPXE0NhC6Eq0suTTePc4mtMQ1Fn8qZmjV4emZdEdG2NOWGKSCrHZjmTqDCDoeFBw==} + '@vitest/pretty-format@2.0.5': + resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} - '@vitest/runner@2.0.4': - resolution: {integrity: sha512-Gk+9Su/2H2zNfNdeJR124gZckd5st4YoSuhF1Rebi37qTXKnqYyFCd9KP4vl2cQHbtuVKjfEKrNJxHHCW8thbQ==} + '@vitest/runner@2.0.5': + resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} - '@vitest/snapshot@2.0.4': - resolution: {integrity: sha512-or6Mzoz/pD7xTvuJMFYEtso1vJo1S5u6zBTinfl+7smGUhqybn6VjzCDMhmTyVOFWwkCMuNjmNNxnyXPgKDoPw==} + '@vitest/snapshot@2.0.5': + resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} - '@vitest/spy@2.0.4': - resolution: {integrity: sha512-uTXU56TNoYrTohb+6CseP8IqNwlNdtPwEO0AWl+5j7NelS6x0xZZtP0bDWaLvOfUbaYwhhWp1guzXUxkC7mW7Q==} + '@vitest/spy@2.0.5': + resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} - '@vitest/utils@2.0.4': - resolution: {integrity: sha512-Zc75QuuoJhOBnlo99ZVUkJIuq4Oj0zAkrQ2VzCqNCx6wAwViHEh5Fnp4fiJTE9rA+sAoXRf00Z9xGgfEzV6fzQ==} + '@vitest/utils@2.0.5': + resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} '@volar/language-core@2.2.5': resolution: {integrity: sha512-2htyAuxRrAgETmFeUhT4XLELk3LiEcqoW/B8YUXMF6BrGWLMwIR09MFaZYvrA2UhbdAeSyeQ726HaWSWkexUcQ==} @@ -3981,15 +4002,27 @@ packages: '@vue/compiler-core@3.4.34': resolution: {integrity: sha512-Z0izUf32+wAnQewjHu+pQf1yw00EGOmevl1kE+ljjjMe7oEfpQ+BI3/JNK7yMB4IrUsqLDmPecUrpj3mCP+yJQ==} + '@vue/compiler-core@3.4.35': + resolution: {integrity: sha512-gKp0zGoLnMYtw4uS/SJRRO7rsVggLjvot3mcctlMXunYNsX+aRJDqqw/lV5/gHK91nvaAAlWFgdVl020AW1Prg==} + '@vue/compiler-dom@3.4.34': resolution: {integrity: sha512-3PUOTS1h5cskdOJMExCu2TInXuM0j60DRPpSCJDqOCupCfUZCJoyQmKtRmA8EgDNZ5kcEE7vketamRZfrEuVDw==} + '@vue/compiler-dom@3.4.35': + resolution: {integrity: sha512-pWIZRL76/oE/VMhdv/ovZfmuooEni6JPG1BFe7oLk5DZRo/ImydXijoZl/4kh2406boRQ7lxTYzbZEEXEhj9NQ==} + '@vue/compiler-sfc@3.4.34': resolution: {integrity: sha512-x6lm0UrM03jjDXTPZgD9Ad8bIVD1ifWNit2EaWQIZB5CULr46+FbLQ5RpK7AXtDHGjx9rmvC7QRCTjsiGkAwRw==} + '@vue/compiler-sfc@3.4.35': + resolution: {integrity: sha512-xacnRS/h/FCsjsMfxBkzjoNxyxEyKyZfBch/P4vkLRvYJwe5ChXmZZrj8Dsed/752H2Q3JE8kYu9Uyha9J6PgA==} + '@vue/compiler-ssr@3.4.34': resolution: {integrity: sha512-8TDBcLaTrFm5rnF+Qm4BlliaopJgqJ28Nsrc80qazynm5aJO+Emu7y0RWw34L8dNnTRdcVBpWzJxhGYzsoVu4g==} + '@vue/compiler-ssr@3.4.35': + resolution: {integrity: sha512-7iynB+0KB1AAJKk/biENTV5cRGHRdbdaD7Mx3nWcm1W8bVD6QmnH3B4AHhQQ1qZHhqFwzEzMwiytXm3PX1e60A==} + '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -4002,7 +4035,7 @@ packages: '@vue/devtools-core@7.3.7': resolution: {integrity: sha512-IapWbHUqvO6n+p5JFTCE5JyNjpsZ5IS1GYIRX0P7/SqYPgFCOdH0dG+u8PbBHYdnp+VPxHLO+GGZ/WBZFCZnsA==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@vue/devtools-kit@7.3.7': resolution: {integrity: sha512-ktHhhjI4CoUrwdSUF5b/MFfjrtAtK8r4vhOkFyRN5Yp9kdXTwsRBYcwarHuP+wFPKf4/KM7DVBj2ELO8SBwdsw==} @@ -4026,23 +4059,26 @@ packages: typescript: optional: true - '@vue/reactivity@3.4.34': - resolution: {integrity: sha512-ua+Lo+wBRlBEX9TtgPOShE2JwIO7p6BTZ7t1KZVPoaBRfqbC7N3c8Mpzicx173fXxx5VXeU6ykiHo7WgLzJQDA==} + '@vue/reactivity@3.4.35': + resolution: {integrity: sha512-Ggtz7ZZHakriKioveJtPlStYardwQH6VCs9V13/4qjHSQb/teE30LVJNrbBVs4+aoYGtTQKJbTe4CWGxVZrvEw==} - '@vue/runtime-core@3.4.34': - resolution: {integrity: sha512-PXhkiRPwcPGJ1BnyBZFI96GfInCVskd0HPNIAZn7i3YOmLbtbTZpB7/kDTwC1W7IqdGPkTVC63IS7J2nZs4Ebg==} + '@vue/runtime-core@3.4.35': + resolution: {integrity: sha512-D+BAjFoWwT5wtITpSxwqfWZiBClhBbR+bm0VQlWYFOadUUXFo+5wbe9ErXhLvwguPiLZdEF13QAWi2vP3ZD5tA==} - '@vue/runtime-dom@3.4.34': - resolution: {integrity: sha512-dXqIe+RqFAK2Euak4UsvbIupalrhc67OuQKpD7HJ3W2fv8jlqvI7szfBCsAEcE8o/wyNpkloxB6J8viuF/E3gw==} + '@vue/runtime-dom@3.4.35': + resolution: {integrity: sha512-yGOlbos+MVhlS5NWBF2HDNgblG8e2MY3+GigHEyR/dREAluvI5tuUUgie3/9XeqhPE4LF0i2wjlduh5thnfOqw==} - '@vue/server-renderer@3.4.34': - resolution: {integrity: sha512-GeyEUfMVRZMD/mZcNONEqg7MiU10QQ1DB3O/Qr6+8uXpbwdlmVgQ5Qs1/ZUAFX1X2UUtqMoGrDRbxdWfOJFT7Q==} + '@vue/server-renderer@3.4.35': + resolution: {integrity: sha512-iZ0e/u9mRE4T8tNhlo0tbA+gzVkgv8r5BX6s1kRbOZqfpq14qoIvCZ5gIgraOmYkMYrSEZgkkojFPr+Nyq/Mnw==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 '@vue/shared@3.4.34': resolution: {integrity: sha512-x5LmiRLpRsd9KTjAB8MPKf0CDPMcuItjP0gbNqFCIgL1I8iYp4zglhj9w9FPCdIbHG2M91RVeIbArFfFTz9I3A==} + '@vue/shared@3.4.35': + resolution: {integrity: sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==} + '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} @@ -4217,7 +4253,7 @@ packages: resolution: {integrity: sha512-kqGyWvZtFlSInFP93Ow6wS8LzEsxxUgpI+ZY5jQQkuX8WAcqdwXCA7IcHMpECW6JB89DZMo2Bw85jUg2SjlgQA==} engines: {node: '>=12.22.0'} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} @@ -4302,9 +4338,6 @@ packages: async-validator@4.2.5: resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==} - async@2.6.4: - resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} - async@3.2.5: resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} @@ -4556,10 +4589,18 @@ packages: resolution: {integrity: sha512-RU4tOq6V6/HggQwAumv7c8O2tuvg0gElkQ5FEdWULl4itMhvgqy1kWXq5oy3FbKOF65Ml8J4lxWbHDZcKaWLQA==} engines: {node: '>=18.20'} + cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-cursor@5.0.0: resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} engines: {node: '>=18'} + cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + cli-truncate@4.0.0: resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} engines: {node: '>=18'} @@ -5209,7 +5250,7 @@ packages: element-plus@2.7.8: resolution: {integrity: sha512-h6dx2XihAbQaud0v+6O7Fy0b0G3YNplNVH7QnK3csTcvQd4y4raiyMRQpf9EKbRbTMdNrFsqAZrs9ok9DMcJHg==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 emoji-regex@10.3.0: resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} @@ -5573,6 +5614,10 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} + execa@9.3.0: + resolution: {integrity: sha512-l6JFbqnHEadBoVAVpN5dl2yCyfX28WoBAGaoQcNmLLSedOxTxcn2Qa83s8I/PA5i56vWru2OHOtrwF7Om2vqlg==} + engines: {node: ^18.19.0 || >=20.5.0} + expand-tilde@2.0.2: resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} engines: {node: '>=0.10.0'} @@ -5633,6 +5678,10 @@ packages: resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} engines: {node: ^12.20 || >= 14.13} + figures@6.1.0: + resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} + engines: {node: '>=18'} + file-entry-cache@8.0.0: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} @@ -5810,6 +5859,10 @@ packages: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} + get-stream@9.0.1: + resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} + engines: {node: '>=18'} + get-symbol-description@1.0.2: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} @@ -6043,6 +6096,10 @@ packages: resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} engines: {node: '>=16.17.0'} + human-signals@7.0.0: + resolution: {integrity: sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==} + engines: {node: '>=18.18.0'} + humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} @@ -6217,6 +6274,10 @@ packages: resolution: {integrity: sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==} engines: {node: '>=18'} + is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} @@ -6255,6 +6316,10 @@ packages: resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} engines: {node: '>=12'} + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + is-plain-object@3.0.1: resolution: {integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==} engines: {node: '>=0.10.0'} @@ -6289,6 +6354,10 @@ packages: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + is-stream@4.0.1: + resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} + engines: {node: '>=18'} + is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -6309,6 +6378,14 @@ packages: resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} engines: {node: '>= 0.4'} + is-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + + is-unicode-supported@2.0.0: + resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} + engines: {node: '>=18'} + is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} @@ -6602,6 +6679,10 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + log-symbols@6.0.0: + resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==} + engines: {node: '>=18'} + log-update@6.1.0: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} @@ -6636,7 +6717,7 @@ packages: lucide-vue-next@0.417.0: resolution: {integrity: sha512-uIoSKLovPHcv2QCLJLZMh7XrBvbPvOwWCyldvOKvAF/3Mbez0isAY/j1WlBnO2Nu2FUNQex6eHXbPtou55H23Q==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} @@ -6715,6 +6796,10 @@ packages: engines: {node: '>=16'} hasBin: true + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + mimic-fn@4.0.0: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} @@ -6798,10 +6883,6 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - mkdirp@1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} engines: {node: '>=10'} @@ -6855,7 +6936,7 @@ packages: naive-ui@2.39.0: resolution: {integrity: sha512-5oUJzRG+rtLSH8eRU+fJvVYiQids2BxF9jp+fwGoAqHOptEINrBlgBu9uy+95RHE5FLJ7Q/z41o+qkoGnUrKxQ==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} @@ -7021,6 +7102,10 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + onetime@6.0.0: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} @@ -7045,6 +7130,10 @@ packages: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} + ora@8.0.1: + resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==} + engines: {node: '>=18'} + os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -7118,6 +7207,10 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} + parse-ms@4.0.0: + resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} + engines: {node: '>=18'} + parse-passwd@1.0.0: resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} engines: {node: '>=0.10.0'} @@ -7227,7 +7320,7 @@ packages: peerDependencies: '@vue/composition-api': ^1.4.0 typescript: '>=4.4.4' - vue: ^3.4.34 + vue: ^3.4.35 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -7256,10 +7349,6 @@ packages: resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} engines: {node: '>=10.13.0'} - portfinder@1.0.32: - resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==} - engines: {node: '>= 0.12.0'} - possible-typed-array-names@1.0.0: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} @@ -7759,6 +7848,10 @@ packages: resolution: {integrity: sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==} engines: {node: ^14.13.1 || >=16.0.0} + pretty-ms@9.1.0: + resolution: {integrity: sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==} + engines: {node: '>=18'} + process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} @@ -7825,7 +7918,7 @@ packages: radix-vue@1.9.2: resolution: {integrity: sha512-XXwEMmXJmzcy9SebywbQdrZg8UE1jueqPMpxKK6NoquRC0CP4dvlBcuzp4lDWNSsqOgmkXa6CNbwEzdCX96umg==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} @@ -7985,6 +8078,10 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + restore-cursor@5.1.0: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} @@ -8328,6 +8425,10 @@ packages: std-env@3.7.0: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + stdin-discarder@0.2.2: + resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} + engines: {node: '>=18'} + stream-combiner@0.0.4: resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} @@ -8395,6 +8496,10 @@ packages: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} + strip-final-newline@4.0.0: + resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} + engines: {node: '>=18'} + strip-indent@3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -8959,15 +9064,15 @@ packages: vdirs@0.1.8: resolution: {integrity: sha512-H9V1zGRLQZg9b+GdMk8MXDN2Lva0zx72MPahDKc30v+DtwKjfyOSXWRIX4t2mhDubM1H09gPhWeth/BJWPHGUw==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 vite-hot-client@0.2.3: resolution: {integrity: sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==} peerDependencies: vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 - vite-node@2.0.4: - resolution: {integrity: sha512-ZpJVkxcakYtig5iakNeL7N3trufe3M6vGuzYAr4GsbCTwobDeyPJpE4cjDhhPluv8OvQCFzu2LWp6GkoKRITXA==} + vite-node@2.0.5: + resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -9069,15 +9174,15 @@ packages: postcss: optional: true - vitest@2.0.4: - resolution: {integrity: sha512-luNLDpfsnxw5QSW4bISPe6tkxVvv5wn2BBs/PuDRkhXZ319doZyLOBr1sjfB5yCEpTiU7xCAdViM8TNVGPwoog==} + vitest@2.0.5: + resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.0.4 - '@vitest/ui': 2.0.4 + '@vitest/browser': 2.0.5 + '@vitest/ui': 2.0.5 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -9097,7 +9202,7 @@ packages: vooks@0.2.12: resolution: {integrity: sha512-iox0I3RZzxtKlcgYaStQYKEzWWGAduMmq+jS7OrNdQo1FgGfPMubGL3uGHOU9n97NIvfFDBGnpSvkWyb/NSn/Q==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 vscode-languageserver-textdocument@1.0.11: resolution: {integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==} @@ -9114,7 +9219,7 @@ packages: hasBin: true peerDependencies: '@vue/composition-api': ^1.0.0-rc.1 - vue: ^3.4.34 + vue: ^3.4.35 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -9129,22 +9234,12 @@ packages: resolution: {integrity: sha512-mh0GIxx0wPtPlcB1q4k277y0iKgo25xmDPWioVVYanjPufDBpvu5ySTjP5wOrSvlYQ2m1xI+CFhGdauv/61uQg==} engines: {node: '>= 16'} peerDependencies: - vue: ^3.4.34 - - vue-request@2.0.4: - resolution: {integrity: sha512-+Tu5rDy6ItF9UdD21Mmbjiq5Pq6NZSN9juH72hNQTMn1whHh4KZPTKWVLK2YS4nzbuEnPs+82G91AA2Fgd93mg==} - engines: {node: '>=14'} - peerDependencies: - '@vue/composition-api': ^1.0.0-rc.1 - vue: ^3.4.34 - peerDependenciesMeta: - '@vue/composition-api': - optional: true + vue: ^3.4.35 vue-router@4.4.0: resolution: {integrity: sha512-HB+t2p611aIZraV2aPSRNXf0Z/oLZFrlygJm+sZbdJaW6lcFqEDQwnzUBXn+DApw+/QzDU/I9TeWx9izEjTmsA==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 vue-template-compiler@2.7.16: resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==} @@ -9165,10 +9260,10 @@ packages: resolution: {integrity: sha512-IwUC0Aq2zwaXqy74h4WCvFCUtoV0iSWr0snWnE9TnU18S66GAQyqQbRf2qfJtUuiFsBf6qp0MEwdonlwznlcrw==} engines: {node: '>=10.15.0'} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 - vue@3.4.34: - resolution: {integrity: sha512-VZze05HWlA3ItreQ/ka7Sx7PoD0/3St8FEiSlSTVgb6l4hL+RjtP2/8g5WQBzZgyf8WG2f+g1bXzC7zggLhAJA==} + vue@3.4.35: + resolution: {integrity: sha512-+fl/GLmI4GPileHftVlCdB7fUL4aziPcqTudpTGXCT8s+iZWuOCeNEB5haX6Uz2IpRrbEXOgIFbe+XciCuGbNQ==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -9178,7 +9273,7 @@ packages: vueuc@0.4.58: resolution: {integrity: sha512-Wnj/N8WbPRSxSt+9ji1jtDHPzda5h2OH/0sFBhvdxDRuyCZbjGg3/cKMaKqEoe+dErTexG2R+i6Q8S/Toq1MYg==} peerDependencies: - vue: ^3.4.34 + vue: ^3.4.35 w3c-xmlserializer@5.0.0: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} @@ -9446,6 +9541,10 @@ packages: resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} + yoctocolors@2.1.1: + resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} + engines: {node: '>=18'} + zip-stream@6.0.1: resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} engines: {node: '>= 14'} @@ -9458,11 +9557,6 @@ packages: engines: {node: '>= 16.0.0'} hasBin: true - zx@8.1.4: - resolution: {integrity: sha512-QFDYYpnzdpRiJ3dL2102Cw26FpXpWshW4QLTGxiYfIcwdAqg084jRCkK/kuP/NOSkxOjydRwNFG81qzA5r1a6w==} - engines: {node: '>= 12.17.0'} - hasBin: true - snapshots: '@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)(search-insights@2.15.0)': @@ -9582,11 +9676,11 @@ snapshots: '@ant-design/icons-svg@4.4.2': {} - '@ant-design/icons-vue@7.0.1(vue@3.4.34(typescript@5.5.4))': + '@ant-design/icons-vue@7.0.1(vue@3.4.35(typescript@5.5.4))': dependencies: '@ant-design/colors': 6.0.0 '@ant-design/icons-svg': 4.4.2 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@antfu/utils@0.7.10': {} @@ -10962,9 +11056,9 @@ snapshots: dependencies: css-render: 0.15.14 - '@css-render/vue3-ssr@0.15.14(vue@3.4.34(typescript@5.5.4))': + '@css-render/vue3-ssr@0.15.14(vue@3.4.35(typescript@5.5.4))': dependencies: - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@csstools/cascade-layer-name-parser@1.0.13(@csstools/css-parser-algorithms@2.7.1(@csstools/css-tokenizer@2.4.1))(@csstools/css-tokenizer@2.4.1)': dependencies: @@ -11232,9 +11326,9 @@ snapshots: '@dual-bundle/import-meta-resolve@4.1.0': {} - '@element-plus/icons-vue@2.3.1(vue@3.4.34(typescript@5.5.4))': + '@element-plus/icons-vue@2.3.1(vue@3.4.35(typescript@5.5.4))': dependencies: - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@emotion/hash@0.8.0': {} @@ -11582,11 +11676,11 @@ snapshots: '@floating-ui/utils@0.2.5': {} - '@floating-ui/vue@1.1.2(vue@3.4.34(typescript@5.5.4))': + '@floating-ui/vue@1.1.2(vue@3.4.35(typescript@5.5.4))': dependencies: '@floating-ui/dom': 1.6.8 '@floating-ui/utils': 0.2.5 - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -11608,10 +11702,10 @@ snapshots: '@iconify/types@2.0.0': {} - '@iconify/vue@4.1.2(vue@3.4.34(typescript@5.5.4))': + '@iconify/vue@4.1.2(vue@3.4.35(typescript@5.5.4))': dependencies: '@iconify/types': 2.0.0 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@internationalized/date@3.5.5': dependencies: @@ -11621,7 +11715,7 @@ snapshots: dependencies: '@swc/helpers': 0.5.12 - '@intlify/bundle-utils@8.0.0(vue-i18n@9.13.1(vue@3.4.34(typescript@5.5.4)))': + '@intlify/bundle-utils@8.0.0(vue-i18n@9.13.1(vue@3.4.35(typescript@5.5.4)))': dependencies: '@intlify/message-compiler': 9.13.1 '@intlify/shared': 9.13.1 @@ -11633,7 +11727,7 @@ snapshots: source-map-js: 1.2.0 yaml-eslint-parser: 1.2.3 optionalDependencies: - vue-i18n: 9.13.1(vue@3.4.34(typescript@5.5.4)) + vue-i18n: 9.13.1(vue@3.4.35(typescript@5.5.4)) '@intlify/core-base@9.13.1': dependencies: @@ -11647,9 +11741,9 @@ snapshots: '@intlify/shared@9.13.1': {} - '@intlify/unplugin-vue-i18n@4.0.0(rollup@4.19.1)(vue-i18n@9.13.1(vue@3.4.34(typescript@5.5.4)))': + '@intlify/unplugin-vue-i18n@4.0.0(rollup@4.19.1)(vue-i18n@9.13.1(vue@3.4.35(typescript@5.5.4)))': dependencies: - '@intlify/bundle-utils': 8.0.0(vue-i18n@9.13.1(vue@3.4.34(typescript@5.5.4))) + '@intlify/bundle-utils': 8.0.0(vue-i18n@9.13.1(vue@3.4.35(typescript@5.5.4))) '@intlify/shared': 9.13.1 '@rollup/pluginutils': 5.1.0(rollup@4.19.1) '@vue/compiler-sfc': 3.4.34 @@ -11662,7 +11756,7 @@ snapshots: source-map-js: 1.2.0 unplugin: 1.12.0 optionalDependencies: - vue-i18n: 9.13.1(vue@3.4.34(typescript@5.5.4)) + vue-i18n: 9.13.1(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - rollup - supports-color @@ -11918,9 +12012,9 @@ snapshots: '@polka/url@1.0.0-next.25': {} - '@radix-icons/vue@1.0.0(vue@3.4.34(typescript@5.5.4))': + '@radix-icons/vue@1.0.0(vue@3.4.35(typescript@5.5.4))': dependencies: - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@rollup/plugin-alias@5.1.0(rollup@3.29.4)': dependencies: @@ -12172,6 +12266,8 @@ snapshots: transitivePeerDependencies: - '@types/node' + '@sec-ant/readable-stream@0.4.1': {} + '@shikijs/core@1.12.0': dependencies: '@types/hast': 3.0.4 @@ -12187,6 +12283,8 @@ snapshots: '@sindresorhus/merge-streams@2.3.0': {} + '@sindresorhus/merge-streams@4.0.0': {} + '@stylistic/stylelint-plugin@3.0.0(stylelint@16.8.1(typescript@5.5.4))': dependencies: '@csstools/css-parser-algorithms': 2.7.1(@csstools/css-tokenizer@2.4.1) @@ -12226,10 +12324,10 @@ snapshots: '@tanstack/virtual-core@3.8.4': {} - '@tanstack/vue-virtual@3.8.4(vue@3.4.34(typescript@5.5.4))': + '@tanstack/vue-virtual@3.8.4(vue@3.4.35(typescript@5.5.4))': dependencies: '@tanstack/virtual-core': 3.8.4 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) '@tootallnate/once@1.1.2': {} @@ -12239,6 +12337,10 @@ snapshots: '@types/bintrees@1.0.6': {} + '@types/chalk@2.2.0': + dependencies: + chalk: 5.3.0 + '@types/conventional-commits-parser@5.0.0': dependencies: '@types/node': 22.0.0 @@ -12456,50 +12558,50 @@ snapshots: dependencies: vite-plugin-pwa: 0.20.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(workbox-build@7.1.1)(workbox-window@7.1.0) - '@vitejs/plugin-vue-jsx@4.0.0(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4))': + '@vitejs/plugin-vue-jsx@4.0.0(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4))': dependencies: '@babel/core': 7.25.2 '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.25.2) '@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.25.2) vite: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4))': + '@vitejs/plugin-vue@5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4))': dependencies: vite: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) - '@vitest/expect@2.0.4': + '@vitest/expect@2.0.5': dependencies: - '@vitest/spy': 2.0.4 - '@vitest/utils': 2.0.4 + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/pretty-format@2.0.4': + '@vitest/pretty-format@2.0.5': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.0.4': + '@vitest/runner@2.0.5': dependencies: - '@vitest/utils': 2.0.4 + '@vitest/utils': 2.0.5 pathe: 1.1.2 - '@vitest/snapshot@2.0.4': + '@vitest/snapshot@2.0.5': dependencies: - '@vitest/pretty-format': 2.0.4 + '@vitest/pretty-format': 2.0.5 magic-string: 0.30.11 pathe: 1.1.2 - '@vitest/spy@2.0.4': + '@vitest/spy@2.0.5': dependencies: tinyspy: 3.0.0 - '@vitest/utils@2.0.4': + '@vitest/utils@2.0.5': dependencies: - '@vitest/pretty-format': 2.0.4 + '@vitest/pretty-format': 2.0.5 estree-walker: 3.0.3 loupe: 3.1.1 tinyrainbow: 1.2.0 @@ -12578,11 +12680,24 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.0 + '@vue/compiler-core@3.4.35': + dependencies: + '@babel/parser': 7.25.0 + '@vue/shared': 3.4.35 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.0 + '@vue/compiler-dom@3.4.34': dependencies: '@vue/compiler-core': 3.4.34 '@vue/shared': 3.4.34 + '@vue/compiler-dom@3.4.35': + dependencies: + '@vue/compiler-core': 3.4.35 + '@vue/shared': 3.4.35 + '@vue/compiler-sfc@3.4.34': dependencies: '@babel/parser': 7.25.0 @@ -12595,11 +12710,28 @@ snapshots: postcss: 8.4.40 source-map-js: 1.2.0 + '@vue/compiler-sfc@3.4.35': + dependencies: + '@babel/parser': 7.25.0 + '@vue/compiler-core': 3.4.35 + '@vue/compiler-dom': 3.4.35 + '@vue/compiler-ssr': 3.4.35 + '@vue/shared': 3.4.35 + estree-walker: 2.0.2 + magic-string: 0.30.11 + postcss: 8.4.40 + source-map-js: 1.2.0 + '@vue/compiler-ssr@3.4.34': dependencies: '@vue/compiler-dom': 3.4.34 '@vue/shared': 3.4.34 + '@vue/compiler-ssr@3.4.35': + dependencies: + '@vue/compiler-dom': 3.4.35 + '@vue/shared': 3.4.35 + '@vue/compiler-vue2@2.7.16': dependencies: de-indent: 1.0.2 @@ -12611,7 +12743,7 @@ snapshots: dependencies: '@vue/devtools-kit': 7.3.7 - '@vue/devtools-core@7.3.7(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4))': + '@vue/devtools-core@7.3.7(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4))': dependencies: '@vue/devtools-kit': 7.3.7 '@vue/devtools-shared': 7.3.7 @@ -12619,7 +12751,7 @@ snapshots: nanoid: 3.3.7 pathe: 1.1.2 vite-hot-client: 0.2.3(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3)) - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) transitivePeerDependencies: - vite @@ -12641,7 +12773,7 @@ snapshots: dependencies: '@volar/language-core': 2.2.5 '@vue/compiler-dom': 3.4.34 - '@vue/shared': 3.4.34 + '@vue/shared': 3.4.35 computeds: 0.0.1 minimatch: 9.0.5 path-browserify: 1.0.1 @@ -12654,7 +12786,7 @@ snapshots: '@volar/language-core': 2.4.0-alpha.18 '@vue/compiler-dom': 3.4.34 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.4.34 + '@vue/shared': 3.4.35 computeds: 0.0.1 minimatch: 9.0.5 muggle-string: 0.4.1 @@ -12662,60 +12794,62 @@ snapshots: optionalDependencies: typescript: 5.5.4 - '@vue/reactivity@3.4.34': + '@vue/reactivity@3.4.35': dependencies: - '@vue/shared': 3.4.34 + '@vue/shared': 3.4.35 - '@vue/runtime-core@3.4.34': + '@vue/runtime-core@3.4.35': dependencies: - '@vue/reactivity': 3.4.34 - '@vue/shared': 3.4.34 + '@vue/reactivity': 3.4.35 + '@vue/shared': 3.4.35 - '@vue/runtime-dom@3.4.34': + '@vue/runtime-dom@3.4.35': dependencies: - '@vue/reactivity': 3.4.34 - '@vue/runtime-core': 3.4.34 - '@vue/shared': 3.4.34 + '@vue/reactivity': 3.4.35 + '@vue/runtime-core': 3.4.35 + '@vue/shared': 3.4.35 csstype: 3.1.3 - '@vue/server-renderer@3.4.34(vue@3.4.34(typescript@5.5.4))': + '@vue/server-renderer@3.4.35(vue@3.4.35(typescript@5.5.4))': dependencies: - '@vue/compiler-ssr': 3.4.34 - '@vue/shared': 3.4.34 - vue: 3.4.34(typescript@5.5.4) + '@vue/compiler-ssr': 3.4.35 + '@vue/shared': 3.4.35 + vue: 3.4.35(typescript@5.5.4) '@vue/shared@3.4.34': {} + '@vue/shared@3.4.35': {} + '@vue/test-utils@2.4.6': dependencies: js-beautify: 1.15.1 vue-component-type-helpers: 2.0.29 - '@vueuse/core@10.11.0(vue@3.4.34(typescript@5.5.4))': + '@vueuse/core@10.11.0(vue@3.4.35(typescript@5.5.4))': dependencies: '@types/web-bluetooth': 0.0.20 '@vueuse/metadata': 10.11.0 - '@vueuse/shared': 10.11.0(vue@3.4.34(typescript@5.5.4)) - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + '@vueuse/shared': 10.11.0(vue@3.4.35(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/core@9.13.0(vue@3.4.34(typescript@5.5.4))': + '@vueuse/core@9.13.0(vue@3.4.35(typescript@5.5.4))': dependencies: '@types/web-bluetooth': 0.0.16 '@vueuse/metadata': 9.13.0 - '@vueuse/shared': 9.13.0(vue@3.4.34(typescript@5.5.4)) - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + '@vueuse/shared': 9.13.0(vue@3.4.35(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/integrations@10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.34(typescript@5.5.4))': + '@vueuse/integrations@10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.35(typescript@5.5.4))': dependencies: - '@vueuse/core': 10.11.0(vue@3.4.34(typescript@5.5.4)) - '@vueuse/shared': 10.11.0(vue@3.4.34(typescript@5.5.4)) - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + '@vueuse/core': 10.11.0(vue@3.4.35(typescript@5.5.4)) + '@vueuse/shared': 10.11.0(vue@3.4.35(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) optionalDependencies: async-validator: 4.2.5 axios: 1.7.2 @@ -12731,16 +12865,16 @@ snapshots: '@vueuse/metadata@9.13.0': {} - '@vueuse/shared@10.11.0(vue@3.4.34(typescript@5.5.4))': + '@vueuse/shared@10.11.0(vue@3.4.35(typescript@5.5.4))': dependencies: - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' - vue - '@vueuse/shared@9.13.0(vue@3.4.34(typescript@5.5.4))': + '@vueuse/shared@9.13.0(vue@3.4.35(typescript@5.5.4))': dependencies: - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -12867,10 +13001,10 @@ snapshots: ansi-styles@6.2.1: {} - ant-design-vue@4.2.3(vue@3.4.34(typescript@5.5.4)): + ant-design-vue@4.2.3(vue@3.4.35(typescript@5.5.4)): dependencies: '@ant-design/colors': 6.0.0 - '@ant-design/icons-vue': 7.0.1(vue@3.4.34(typescript@5.5.4)) + '@ant-design/icons-vue': 7.0.1(vue@3.4.35(typescript@5.5.4)) '@babel/runtime': 7.25.0 '@ctrl/tinycolor': 4.1.0 '@emotion/hash': 0.9.2 @@ -12889,8 +13023,8 @@ snapshots: shallow-equal: 1.2.1 stylis: 4.3.2 throttle-debounce: 5.0.2 - vue: 3.4.34(typescript@5.5.4) - vue-types: 3.0.2(vue@3.4.34(typescript@5.5.4)) + vue: 3.4.35(typescript@5.5.4) + vue-types: 3.0.2(vue@3.4.35(typescript@5.5.4)) warning: 4.0.3 any-promise@1.3.0: {} @@ -12977,10 +13111,6 @@ snapshots: async-validator@4.2.5: {} - async@2.6.4: - dependencies: - lodash: 4.17.21 - async@3.2.5: {} asynckit@0.4.0: {} @@ -13296,10 +13426,16 @@ snapshots: cli-boxes@4.0.0: {} + cli-cursor@4.0.0: + dependencies: + restore-cursor: 4.0.0 + cli-cursor@5.0.0: dependencies: restore-cursor: 5.1.0 + cli-spinners@2.9.2: {} + cli-truncate@4.0.0: dependencies: slice-ansi: 5.0.0 @@ -13963,15 +14099,15 @@ snapshots: electron-to-chromium@1.5.4: {} - element-plus@2.7.8(vue@3.4.34(typescript@5.5.4)): + element-plus@2.7.8(vue@3.4.35(typescript@5.5.4)): dependencies: '@ctrl/tinycolor': 4.1.0 - '@element-plus/icons-vue': 2.3.1(vue@3.4.34(typescript@5.5.4)) + '@element-plus/icons-vue': 2.3.1(vue@3.4.35(typescript@5.5.4)) '@floating-ui/dom': 1.6.8 '@popperjs/core': '@sxzz/popperjs-es@2.11.7' '@types/lodash': 4.17.7 '@types/lodash-es': 4.17.12 - '@vueuse/core': 9.13.0(vue@3.4.34(typescript@5.5.4)) + '@vueuse/core': 9.13.0(vue@3.4.35(typescript@5.5.4)) async-validator: 4.2.5 dayjs: 1.11.12 escape-html: 1.0.3 @@ -13980,7 +14116,7 @@ snapshots: lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21) memoize-one: 6.0.0 normalize-wheel-es: 1.2.0 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) transitivePeerDependencies: - '@vue/composition-api' @@ -14390,13 +14526,13 @@ snapshots: optionalDependencies: '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4) - eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@2.0.4(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3)): + eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3)): dependencies: '@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.5.4) eslint: 9.8.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4) - vitest: 2.0.4(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3) + vitest: 2.0.5(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3) transitivePeerDependencies: - supports-color - typescript @@ -14536,6 +14672,21 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 + execa@9.3.0: + dependencies: + '@sindresorhus/merge-streams': 4.0.0 + cross-spawn: 7.0.3 + figures: 6.1.0 + get-stream: 9.0.1 + human-signals: 7.0.0 + is-plain-obj: 4.1.0 + is-stream: 4.0.1 + npm-run-path: 5.3.0 + pretty-ms: 9.1.0 + signal-exit: 4.1.0 + strip-final-newline: 4.0.0 + yoctocolors: 2.1.1 + expand-tilde@2.0.2: dependencies: homedir-polyfill: 1.0.3 @@ -14587,6 +14738,10 @@ snapshots: node-domexception: 1.0.0 web-streams-polyfill: 3.3.3 + figures@6.1.0: + dependencies: + is-unicode-supported: 2.0.0 + file-entry-cache@8.0.0: dependencies: flat-cache: 4.0.1 @@ -14769,6 +14924,11 @@ snapshots: get-stream@8.0.1: {} + get-stream@9.0.1: + dependencies: + '@sec-ant/readable-stream': 0.4.1 + is-stream: 4.0.1 + get-symbol-description@1.0.2: dependencies: call-bind: 1.0.7 @@ -15063,6 +15223,8 @@ snapshots: human-signals@5.0.0: {} + human-signals@7.0.0: {} + humanize-ms@1.2.1: dependencies: ms: 2.1.3 @@ -15215,6 +15377,8 @@ snapshots: global-directory: 4.0.1 is-path-inside: 4.0.0 + is-interactive@2.0.0: {} + is-lambda@1.0.1: {} is-module@1.0.0: {} @@ -15237,6 +15401,8 @@ snapshots: is-path-inside@4.0.0: {} + is-plain-obj@4.1.0: {} + is-plain-object@3.0.1: {} is-plain-object@5.0.0: {} @@ -15262,6 +15428,8 @@ snapshots: is-stream@3.0.0: {} + is-stream@4.0.1: {} + is-string@1.0.7: dependencies: has-tostringtag: 1.0.2 @@ -15282,6 +15450,10 @@ snapshots: dependencies: which-typed-array: 1.1.15 + is-unicode-supported@1.3.0: {} + + is-unicode-supported@2.0.0: {} + is-weakref@1.0.2: dependencies: call-bind: 1.0.7 @@ -15579,6 +15751,11 @@ snapshots: lodash@4.17.21: {} + log-symbols@6.0.0: + dependencies: + chalk: 5.3.0 + is-unicode-supported: 1.3.0 + log-update@6.1.0: dependencies: ansi-escapes: 7.0.0 @@ -15616,9 +15793,9 @@ snapshots: dependencies: yallist: 4.0.0 - lucide-vue-next@0.417.0(vue@3.4.34(typescript@5.5.4)): + lucide-vue-next@0.417.0(vue@3.4.35(typescript@5.5.4)): dependencies: - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) magic-string@0.25.9: dependencies: @@ -15692,6 +15869,8 @@ snapshots: mime@4.0.4: {} + mimic-fn@2.1.0: {} + mimic-fn@4.0.0: {} mimic-function@5.0.1: {} @@ -15769,10 +15948,6 @@ snapshots: mitt@3.0.1: {} - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 - mkdirp@1.0.4: {} mkdist@1.5.4(sass@1.77.8)(typescript@5.5.4)(vue-tsc@2.0.29(typescript@5.5.4)): @@ -15828,10 +16003,10 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - naive-ui@2.39.0(vue@3.4.34(typescript@5.5.4)): + naive-ui@2.39.0(vue@3.4.35(typescript@5.5.4)): dependencies: '@css-render/plugin-bem': 0.15.14(css-render@0.15.14) - '@css-render/vue3-ssr': 0.15.14(vue@3.4.34(typescript@5.5.4)) + '@css-render/vue3-ssr': 0.15.14(vue@3.4.35(typescript@5.5.4)) '@types/katex': 0.16.7 '@types/lodash': 4.17.7 '@types/lodash-es': 4.17.12 @@ -15846,10 +16021,10 @@ snapshots: lodash-es: 4.17.21 seemly: 0.3.8 treemate: 0.3.11 - vdirs: 0.1.8(vue@3.4.34(typescript@5.5.4)) - vooks: 0.2.12(vue@3.4.34(typescript@5.5.4)) - vue: 3.4.34(typescript@5.5.4) - vueuc: 0.4.58(vue@3.4.34(typescript@5.5.4)) + vdirs: 0.1.8(vue@3.4.35(typescript@5.5.4)) + vooks: 0.2.12(vue@3.4.35(typescript@5.5.4)) + vue: 3.4.35(typescript@5.5.4) + vueuc: 0.4.58(vue@3.4.35(typescript@5.5.4)) nanoid@3.3.7: {} @@ -16079,6 +16254,10 @@ snapshots: dependencies: wrappy: 1.0.2 + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + onetime@6.0.0: dependencies: mimic-fn: 4.0.0 @@ -16118,6 +16297,18 @@ snapshots: type-check: 0.4.0 word-wrap: 1.2.5 + ora@8.0.1: + dependencies: + chalk: 5.3.0 + cli-cursor: 4.0.0 + cli-spinners: 2.9.2 + is-interactive: 2.0.0 + is-unicode-supported: 2.0.0 + log-symbols: 6.0.0 + stdin-discarder: 0.2.2 + string-width: 7.2.0 + strip-ansi: 7.1.0 + os-tmpdir@1.0.2: {} outdent@0.5.0: {} @@ -16192,6 +16383,8 @@ snapshots: json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 + parse-ms@4.0.0: {} + parse-passwd@1.0.0: {} parse5-htmlparser2-tree-adapter@7.0.0: @@ -16262,15 +16455,15 @@ snapshots: pify@4.0.1: {} - pinia-plugin-persistedstate@3.2.1(pinia@2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4))): + pinia-plugin-persistedstate@3.2.1(pinia@2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4))): dependencies: - pinia: 2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)) + pinia: 2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)) - pinia@2.1.7(typescript@5.5.4)(vue@3.4.34(typescript@5.5.4)): + pinia@2.1.7(typescript@5.5.4)(vue@3.4.35(typescript@5.5.4)): dependencies: '@vue/devtools-api': 6.6.3 - vue: 3.4.34(typescript@5.5.4) - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) + vue: 3.4.35(typescript@5.5.4) + vue-demi: 0.14.10(vue@3.4.35(typescript@5.5.4)) optionalDependencies: typescript: 5.5.4 @@ -16294,14 +16487,6 @@ snapshots: pngjs@5.0.0: {} - portfinder@1.0.32: - dependencies: - async: 2.6.4 - debug: 3.2.7 - mkdirp: 0.5.6 - transitivePeerDependencies: - - supports-color - possible-typed-array-names@1.0.0: {} postcss-antd-fixes@0.2.0(postcss@8.4.40): @@ -16775,6 +16960,10 @@ snapshots: pretty-bytes@6.1.1: {} + pretty-ms@9.1.0: + dependencies: + parse-ms: 4.0.0 + process-nextick-args@2.0.1: {} process@0.11.10: {} @@ -16823,20 +17012,20 @@ snapshots: queue-tick@1.0.1: {} - radix-vue@1.9.2(vue@3.4.34(typescript@5.5.4)): + radix-vue@1.9.2(vue@3.4.35(typescript@5.5.4)): dependencies: '@floating-ui/dom': 1.6.8 - '@floating-ui/vue': 1.1.2(vue@3.4.34(typescript@5.5.4)) + '@floating-ui/vue': 1.1.2(vue@3.4.35(typescript@5.5.4)) '@internationalized/date': 3.5.5 '@internationalized/number': 3.5.3 - '@tanstack/vue-virtual': 3.8.4(vue@3.4.34(typescript@5.5.4)) - '@vueuse/core': 10.11.0(vue@3.4.34(typescript@5.5.4)) - '@vueuse/shared': 10.11.0(vue@3.4.34(typescript@5.5.4)) + '@tanstack/vue-virtual': 3.8.4(vue@3.4.35(typescript@5.5.4)) + '@vueuse/core': 10.11.0(vue@3.4.35(typescript@5.5.4)) + '@vueuse/shared': 10.11.0(vue@3.4.35(typescript@5.5.4)) aria-hidden: 1.2.4 defu: 6.1.4 fast-deep-equal: 3.1.3 nanoid: 5.0.7 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) transitivePeerDependencies: - '@vue/composition-api' @@ -17012,6 +17201,11 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + restore-cursor@4.0.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + restore-cursor@5.1.0: dependencies: onetime: 7.0.0 @@ -17366,6 +17560,8 @@ snapshots: std-env@3.7.0: {} + stdin-discarder@0.2.2: {} + stream-combiner@0.0.4: dependencies: duplexer: 0.1.2 @@ -17460,6 +17656,8 @@ snapshots: strip-final-newline@3.0.0: {} + strip-final-newline@4.0.0: {} + strip-indent@3.0.0: dependencies: min-indent: 1.0.1 @@ -18104,16 +18302,16 @@ snapshots: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 - vdirs@0.1.8(vue@3.4.34(typescript@5.5.4)): + vdirs@0.1.8(vue@3.4.35(typescript@5.5.4)): dependencies: evtd: 0.2.4 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) vite-hot-client@0.2.3(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3)): dependencies: vite: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) - vite-node@2.0.4(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3): + vite-node@2.0.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3): dependencies: cac: 6.7.14 debug: 4.3.6 @@ -18209,9 +18407,9 @@ snapshots: transitivePeerDependencies: - supports-color - vite-plugin-vue-devtools@7.3.7(rollup@4.19.1)(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)): + vite-plugin-vue-devtools@7.3.7(rollup@4.19.1)(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)): dependencies: - '@vue/devtools-core': 7.3.7(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)) + '@vue/devtools-core': 7.3.7(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)) '@vue/devtools-kit': 7.3.7 '@vue/devtools-shared': 7.3.7 execa: 8.0.1 @@ -18258,17 +18456,17 @@ snapshots: '@shikijs/core': 1.12.0 '@shikijs/transformers': 1.12.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.34(typescript@5.5.4)) + '@vitejs/plugin-vue': 5.1.1(vite@5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3))(vue@3.4.35(typescript@5.5.4)) '@vue/devtools-api': 7.3.7 - '@vue/shared': 3.4.34 - '@vueuse/core': 10.11.0(vue@3.4.34(typescript@5.5.4)) - '@vueuse/integrations': 10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.34(typescript@5.5.4)) + '@vue/shared': 3.4.35 + '@vueuse/core': 10.11.0(vue@3.4.35(typescript@5.5.4)) + '@vueuse/integrations': 10.11.0(async-validator@4.2.5)(axios@1.7.2)(focus-trap@7.5.4)(nprogress@0.2.0)(qrcode@1.5.3)(sortablejs@1.15.2)(vue@3.4.35(typescript@5.5.4)) focus-trap: 7.5.4 mark.js: 8.11.1 minisearch: 7.1.0 shiki: 1.12.0 vite: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) optionalDependencies: postcss: 8.4.40 transitivePeerDependencies: @@ -18298,15 +18496,15 @@ snapshots: - typescript - universal-cookie - vitest@2.0.4(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3): + vitest@2.0.5(@types/node@22.0.0)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3): dependencies: '@ampproject/remapping': 2.3.0 - '@vitest/expect': 2.0.4 - '@vitest/pretty-format': 2.0.4 - '@vitest/runner': 2.0.4 - '@vitest/snapshot': 2.0.4 - '@vitest/spy': 2.0.4 - '@vitest/utils': 2.0.4 + '@vitest/expect': 2.0.5 + '@vitest/pretty-format': 2.0.5 + '@vitest/runner': 2.0.5 + '@vitest/snapshot': 2.0.5 + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 chai: 5.1.1 debug: 4.3.6 execa: 8.0.1 @@ -18317,7 +18515,7 @@ snapshots: tinypool: 1.0.0 tinyrainbow: 1.2.0 vite: 5.3.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) - vite-node: 2.0.4(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) + vite-node: 2.0.5(@types/node@22.0.0)(sass@1.77.8)(terser@5.31.3) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.0.0 @@ -18331,10 +18529,10 @@ snapshots: - supports-color - terser - vooks@0.2.12(vue@3.4.34(typescript@5.5.4)): + vooks@0.2.12(vue@3.4.35(typescript@5.5.4)): dependencies: evtd: 0.2.4 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) vscode-languageserver-textdocument@1.0.11: {} @@ -18342,9 +18540,9 @@ snapshots: vue-component-type-helpers@2.0.29: {} - vue-demi@0.14.10(vue@3.4.34(typescript@5.5.4)): + vue-demi@0.14.10(vue@3.4.35(typescript@5.5.4)): dependencies: - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) vue-eslint-parser@9.4.3(eslint@9.8.0): dependencies: @@ -18359,22 +18557,17 @@ snapshots: transitivePeerDependencies: - supports-color - vue-i18n@9.13.1(vue@3.4.34(typescript@5.5.4)): + vue-i18n@9.13.1(vue@3.4.35(typescript@5.5.4)): dependencies: '@intlify/core-base': 9.13.1 '@intlify/shared': 9.13.1 '@vue/devtools-api': 6.6.3 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) - vue-request@2.0.4(vue@3.4.34(typescript@5.5.4)): - dependencies: - vue: 3.4.34(typescript@5.5.4) - vue-demi: 0.14.10(vue@3.4.34(typescript@5.5.4)) - - vue-router@4.4.0(vue@3.4.34(typescript@5.5.4)): + vue-router@4.4.0(vue@3.4.35(typescript@5.5.4)): dependencies: '@vue/devtools-api': 6.6.3 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) vue-template-compiler@2.7.16: dependencies: @@ -18395,31 +18588,31 @@ snapshots: semver: 7.6.3 typescript: 5.5.4 - vue-types@3.0.2(vue@3.4.34(typescript@5.5.4)): + vue-types@3.0.2(vue@3.4.35(typescript@5.5.4)): dependencies: is-plain-object: 3.0.1 - vue: 3.4.34(typescript@5.5.4) + vue: 3.4.35(typescript@5.5.4) - vue@3.4.34(typescript@5.5.4): + vue@3.4.35(typescript@5.5.4): dependencies: - '@vue/compiler-dom': 3.4.34 - '@vue/compiler-sfc': 3.4.34 - '@vue/runtime-dom': 3.4.34 - '@vue/server-renderer': 3.4.34(vue@3.4.34(typescript@5.5.4)) - '@vue/shared': 3.4.34 + '@vue/compiler-dom': 3.4.35 + '@vue/compiler-sfc': 3.4.35 + '@vue/runtime-dom': 3.4.35 + '@vue/server-renderer': 3.4.35(vue@3.4.35(typescript@5.5.4)) + '@vue/shared': 3.4.35 optionalDependencies: typescript: 5.5.4 - vueuc@0.4.58(vue@3.4.34(typescript@5.5.4)): + vueuc@0.4.58(vue@3.4.35(typescript@5.5.4)): dependencies: - '@css-render/vue3-ssr': 0.15.14(vue@3.4.34(typescript@5.5.4)) + '@css-render/vue3-ssr': 0.15.14(vue@3.4.35(typescript@5.5.4)) '@juggle/resize-observer': 3.4.0 css-render: 0.15.14 evtd: 0.2.4 seemly: 0.3.8 - vdirs: 0.1.8(vue@3.4.34(typescript@5.5.4)) - vooks: 0.2.12(vue@3.4.34(typescript@5.5.4)) - vue: 3.4.34(typescript@5.5.4) + vdirs: 0.1.8(vue@3.4.35(typescript@5.5.4)) + vooks: 0.2.12(vue@3.4.35(typescript@5.5.4)) + vue: 3.4.35(typescript@5.5.4) w3c-xmlserializer@5.0.0: dependencies: @@ -18742,6 +18935,8 @@ snapshots: yocto-queue@1.1.1: {} + yoctocolors@2.1.1: {} + zip-stream@6.0.1: dependencies: archiver-utils: 5.0.2 @@ -18769,8 +18964,3 @@ snapshots: webpod: 0.0.2 which: 3.0.1 yaml: 2.5.0 - - zx@8.1.4: - optionalDependencies: - '@types/fs-extra': 11.0.4 - '@types/node': 22.0.0 diff --git a/scripts/turbo-run/README.md b/scripts/turbo-run/README.md index 7cc8fbf5..65ffcf4f 100644 --- a/scripts/turbo-run/README.md +++ b/scripts/turbo-run/README.md @@ -1,3 +1,3 @@ -# @vben/vsh +# @vben/turbo-run -shell 脚本工具集合 +turbo-run is a command line tool that allows you to run multiple commands in parallel. diff --git a/scripts/turbo-run/src/run.ts b/scripts/turbo-run/src/run.ts index 178d62cf..9475cd07 100644 --- a/scripts/turbo-run/src/run.ts +++ b/scripts/turbo-run/src/run.ts @@ -1,10 +1,6 @@ -import type { Package } from '@vben/node-utils'; +import { execaCommand, getPackages } from '@vben/node-utils'; -import { join } from 'node:path'; - -import { $, fs, getPackages } from '@vben/node-utils'; - -import { cancel, isCancel, multiselect } from '@clack/prompts'; +import { cancel, isCancel, select } from '@clack/prompts'; interface RunOptions { command?: string; @@ -12,35 +8,45 @@ interface RunOptions { export async function run(options: RunOptions) { const { command } = options; + if (!command) { + console.error('Please enter the command to run'); + process.exit(1); + } const { packages } = await getPackages(); - const appPkgs = await findApps(process.cwd(), packages); + // const appPkgs = await findApps(process.cwd(), packages); + // const websitePkg = packages.find( + // (item) => item.packageJson.name === '@vben/website', + // ); - const selectApps = await multiselect({ - message: `Select the app you need to run [${command}]:`, - options: appPkgs.map((item) => ({ label: item, value: item })), - required: true, + // 只显示有对应命令的包 + const selectPkgs = packages.filter((pkg) => { + return (pkg?.packageJson as Record).scripts?.[command]; }); - if (isCancel(selectApps)) { + const selectPkg = await select({ + message: `Select the app you need to run [${command}]:`, + options: selectPkgs.map((item) => ({ + label: item?.packageJson.name, + value: item?.packageJson.name, + })), + }); + + if (isCancel(selectPkg) || !selectPkg) { cancel('👋 Has cancelled'); process.exit(0); } - if (selectApps.length === 1) { - $.verbose = true; - // 让控制台显示颜色 - process.env.FORCE_COLOR = '1'; - await $`pnpm --filter=${selectApps[0]} run ${command} `; - return; - } - const filters = []; - for (const app of selectApps) { - filters.push(`--filter=${app}`); - } - $.verbose = true; - // 让控制台显示颜色 - process.env.FORCE_COLOR = '1'; - await $`turbo run ${command} ${filters}`; + execaCommand(`pnpm --filter=${selectPkg} run ${command}`, { + stdio: 'inherit', + }); + // const filters = []; + // for (const app of selectApps) { + // filters.push(`--filter=${app}`); + // } + // $.verbose = true; + // execaCommand(`turbo run ${command} ${filters}`, { + // stdio: 'inherit', + // }); } /** @@ -48,16 +54,12 @@ export async function run(options: RunOptions) { * @param root * @param packages */ -async function findApps(root: string, packages: Package[]) { - // apps内的 - const appPackages = packages - .filter((pkg) => { - const viteConfigExists = fs.existsSync(join(pkg.dir, 'vite.config.mts')); - return pkg.dir.startsWith(join(root, 'apps')) && viteConfigExists; - }) - .map((pkg) => { - return pkg.packageJson.name; - }); +// async function findApps(root: string, packages: Package[]) { +// // apps内的 +// const appPackages = packages.filter((pkg) => { +// const viteConfigExists = fs.existsSync(join(pkg.dir, 'vite.config.mts')); +// return pkg.dir.startsWith(join(root, 'apps')) && viteConfigExists; +// }); - return appPackages; -} +// return appPackages; +// } diff --git a/scripts/vsh/src/clean/index.ts b/scripts/vsh/src/clean/index.ts index 63399c9a..eba5b9f2 100644 --- a/scripts/vsh/src/clean/index.ts +++ b/scripts/vsh/src/clean/index.ts @@ -2,13 +2,7 @@ import type { CAC } from 'cac'; import { join } from 'node:path'; -import { - colors, - consola, - getPackages, - rimraf, - spinner, -} from '@vben/node-utils'; +import { colors, getPackages, rimraf, spinner } from '@vben/node-utils'; const CLEAN_DIRS = ['dist', 'node_modules', '.turbo']; @@ -38,10 +32,15 @@ async function runClean({ const cleanDirsText = JSON.stringify(cleanDirs); - spinner(`${colors.dim(cleanDirsText)} cleaning in progress...`, async () => { - await clean({ delLock, dirs: cleanDirs, recursive }); - consola.success(colors.green(`clean up all \`${cleanDirsText}\` success.`)); - }); + spinner( + { + successText: colors.green(`clean up all \`${cleanDirsText}\` success.`), + title: `${colors.dim(cleanDirsText)} cleaning in progress...`, + }, + async () => { + await clean({ delLock, dirs: cleanDirs, recursive }); + }, + ); } async function clean({ delLock, dirs = [], recursive }: CleanCommandOptions) { diff --git a/scripts/vsh/src/lint/index.ts b/scripts/vsh/src/lint/index.ts index f79071d3..faa6d295 100644 --- a/scripts/vsh/src/lint/index.ts +++ b/scripts/vsh/src/lint/index.ts @@ -1,6 +1,6 @@ import type { CAC } from 'cac'; -import { $ } from '@vben/node-utils'; +import { execaCommand } from '@vben/node-utils'; interface LintCommandOptions { /** @@ -10,21 +10,31 @@ interface LintCommandOptions { } async function runLint({ format }: LintCommandOptions) { - process.env.FORCE_COLOR = '3'; + // process.env.FORCE_COLOR = '3'; if (format) { - await $`stylelint "**/*.{vue,css,less.scss}" --cache --fix`; - await $`eslint . --cache --fix`; - await $`prettier . --write --cache --log-level warn`; + await execaCommand(`stylelint "**/*.{vue,css,less.scss}" --cache --fix`, { + stdio: 'inherit', + }); + await execaCommand(`eslint . --cache --fix`, { + stdio: 'inherit', + }); + await execaCommand(`prettier . --write --cache --log-level warn`, { + stdio: 'inherit', + }); return; } - $.verbose = true; await Promise.all([ - $`cspell lint "**/*.ts" "**/README.md" ".changeset/*.md" --no-progress`, - $`eslint . --cache`, + execaCommand(`eslint . --cache`, { + stdio: 'inherit', + }), // $`ls-lint`, - $`prettier . --ignore-unknown --check --cache`, - $`stylelint "**/*.{vue,css,less.scss}" --cache`, + execaCommand(`prettier . --ignore-unknown --check --cache`, { + stdio: 'inherit', + }), + execaCommand(`stylelint "**/*.{vue,css,less.scss}" --cache`, { + stdio: 'inherit', + }), ]); } diff --git a/website/.vitepress/config.mts b/website/.vitepress/config.mts index 782ef5a4..c7b64a24 100644 --- a/website/.vitepress/config.mts +++ b/website/.vitepress/config.mts @@ -162,7 +162,15 @@ function nav(): DefaultTheme.NavItem[] { items: [ { link: 'https://www.vben.pro', - text: '完整版(Ant Design Vue)', + text: 'Ant Design Vue 版本(默认)', + }, + { + link: 'https://naive.vben.pro', + text: 'Naive 版本', + }, + { + link: 'https://ele.vben.pro', + text: 'Element Plus版本', }, ], }, @@ -184,6 +192,10 @@ function nav(): DefaultTheme.NavItem[] { link: 'https://github.com/vbenjs/vue-vben-admin/releases', text: '更新日志', }, + { + link: 'https://github.com/orgs/vbenjs/projects/5', + text: '路线图', + }, { link: 'https://github.com/vbenjs/vue-vben-admin/blob/main/.github/contributing.md', text: '贡献', @@ -220,11 +232,6 @@ function sidebarGuide(): DefaultTheme.SidebarItem[] { text: '为什么选择我们?', }, { link: 'introduction/quick-start', text: '快速开始' }, - { - link: 'https://github.com/vbenjs/vue-vben-admin/releases', - text: '更新日志', - }, - { link: 'https://github.com/orgs/vbenjs/projects/5', text: '路线图' }, ], }, { @@ -251,6 +258,7 @@ function sidebarGuide(): DefaultTheme.SidebarItem[] { { link: 'in-depth/features', text: '常用功能' }, { link: 'in-depth/check-updates', text: '检查更新' }, { link: 'in-depth/loading', text: '全局loading' }, + { link: 'in-depth/ui-framework', text: '组件库切换' }, ], }, { diff --git a/website/package.json b/website/package.json index 852c9860..e2293932 100644 --- a/website/package.json +++ b/website/package.json @@ -4,7 +4,7 @@ "private": true, "scripts": { "build": "vitepress build", - "docs:dev": "vitepress dev", + "dev": "vitepress dev", "docs:preview": "vitepress preview" }, "dependencies": { @@ -13,6 +13,6 @@ "devDependencies": { "@vite-pwa/vitepress": "^0.5.0", "vitepress": "^1.3.1", - "vue": "^3.4.34" + "vue": "^3.4.35" } } diff --git a/website/src/guide/essentials/development.md b/website/src/guide/essentials/development.md index 54d2b54f..c255aeb2 100644 --- a/website/src/guide/essentials/development.md +++ b/website/src/guide/essentials/development.md @@ -50,14 +50,18 @@ npm 脚本是项目常见的配置,用于执行一些常见的任务,比如 "bootstrap": "pnpm install", // 构建项目 "build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 turbo build", + // 构建项目并分析 + "build:analyze": "turbo build:analyze", // 构建docker镜像 "build:docker": "./build-local-docker-image.sh", // changeset 版本管理 "changeset": "pnpm exec changeset", // 检查项目各种问题 - "check": "pnpm run check:circular && pnpm run check:dep && pnpm run check:type",, + "check": "pnpm run check:circular && pnpm run check:dep && pnpm run check:type && pnpm check:cspell", // 检查循环引用 "check:circular": "vsh check-circular", + // 检查拼写 + "check:cspell": "cspell lint **/*.ts **/README.md .changeset/*.md --no-progress" // 检查依赖 "check:dep": "vsh check-dep", // 检查类型 @@ -67,9 +71,15 @@ npm 脚本是项目常见的配置,用于执行一些常见的任务,比如 // 提交代码 "commit": "czg", // 启动项目(默认会运行整个仓库所有包的dev脚本) - "dev": "cross-env TURBO_UI=1 turbo run dev", + "dev": "turbo-run dev", + // 启动web-antd应用 + "dev:antd": "pnpm -F @vben/web-antd run dev", // 启动文档 - "dev:docs": "pnpm -F @vben/website run docs:dev", + "dev:docs": "pnpm -F @vben/website run dev", + // 启动 element plus应用 + "dev:ele": "pnpm -F @vben/web-ele run dev", + // 启动web-naive应用 + "dev:naive": "pnpm -F @vben/web-naive run dev", // 格式化代码 "format": "vsh lint --format", // lint 代码 @@ -80,6 +90,8 @@ npm 脚本是项目常见的配置,用于执行一些常见的任务,比如 "preinstall": "npx only-allow pnpm", // husky的安装 "prepare": "is-ci || husky", + // 预览应用 + "preview": "turbo-run preview", // 包规范检查 "publint": "vsh publint", // 删除所有的node_modules、yarn.lock、package.lock.json,重新安装依赖 @@ -96,12 +108,33 @@ npm 脚本是项目常见的配置,用于执行一些常见的任务,比如 ## 本地运行项目 -如需本地运行文档,并进行调整,可以执行以下命令: +如需本地运行文档,并进行调整,可以执行以下命令,执行该命令,你可以选择需要的应用进行开发: ```bash pnpm dev ``` +如果你想直接运行某个应用,可以执行以下命令: + +运行 `web-antd` 应用: + +```bash +pnpm dev:antd + +``` + +运行 `web-naive` 应用: + +```bash +pnpm dev:naive +``` + +运行 `website` 应用: + +```bash +pnpm dev:docs +``` + ## DevTools 项目内置了 [Vue DevTools](https://github.com/vuejs/devtools-next) 插件,可以在开发过程中使用。默认关闭,可在`.env.development` 内开启,并重新运行项目即可: diff --git a/website/src/guide/in-depth/ui-framework.md b/website/src/guide/in-depth/ui-framework.md new file mode 100644 index 00000000..9d78eefd --- /dev/null +++ b/website/src/guide/in-depth/ui-framework.md @@ -0,0 +1,16 @@ +# 组件库切换 + +`Vue Admin` 支持你自由选择组件库,目前演示站点的默认组件库是 `Ant Design Vue`,与旧版本保持一致。同时框架还内置了 `Element Plus` 版本和 `Naive UI` 版本,你可以根据自己的喜好选择。 + +## 新增组件库应用 + +如果你想用其他别的组件库,你只需要按一下步骤进行操作: + +1. 在`apps`内创建一个新的文件夹,例如`apps/web-xxx`。 +2. 更改`apps/web-xxx/package.json`的`name`字段为`web-xxx`。 +3. 移除其他组件库依赖及代码,并用你的组件库进行替换相应逻辑,需要改动的地方不多。 +4. 调整`locales`内的语言文件。 +5. 调整 `app.vue` 内的组件。 +6. 自行适配组件库的主题,与 `Vben Admin` 契合。 +7. 调整 `.env` 内的应用名 +8. 在大仓根目录增加 `dev:xxx` 脚本