From bed87ced52b335908eac9f5c2a4e71e7839b6f56 Mon Sep 17 00:00:00 2001 From: chenxing Date: Wed, 23 Sep 2026 14:28:10 +0800 Subject: [PATCH] =?UTF-8?q?feat(front):=20=E7=BD=91=E5=85=B3=E5=8F=B0?= =?UTF-8?q?=E8=B4=A6=E5=89=8D=E7=AB=AF=E2=80=94=E2=80=94=E5=8F=B0=E8=B4=A6?= =?UTF-8?q?/=E8=B7=AF=E7=94=B1/=E7=9B=AE=E6=A0=87=E4=B8=89=E9=A1=B5+?= =?UTF-8?q?=E9=87=8D=E8=BD=BD=E6=B3=A8=E5=86=8C=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 与 notice 同形态:hash 路由 + TablePageAlovaNew 分页 + alova 信封分支 - API 层手写(文档端点仅容器网内可达,api:gen 无通路),键名对齐后端 operationId - 审计修复:outDir 回 dist 根(CI zip 根须含 html)、main.ts 显式引入 @/api 挂载全局 Apis、 保存失败重拉回滚、路由页补只读 timeout/bodyLimit 列、详情弹窗 backendCode 恒空说明 --- .dockerignore | 11 + .env.dev | 7 + .gitignore | 5 + .npmrc | 3 + .prettierrc.cjs | 15 + index.html | 16 + package-lock.json | 9135 +++++++++++++++++ package.json | 34 + src/App.vue | 74 + src/api/apiDefinitions.ts | 17 + src/api/createApis.ts | 87 + src/api/globals.d.ts | 37 + src/api/index.ts | 11 + src/assets/config/host.config.ts | 81 + src/assets/icons/logout.svg | 1 + src/assets/icons/menu/icon-1.svg | 4 + src/assets/icons/menu/icon-2.svg | 13 + src/assets/icons/menu/icon-3.svg | 13 + src/assets/icons/menu/icon-4.svg | 13 + src/assets/icons/menu/icon-5.svg | 13 + src/assets/icons/menu/icon-6.svg | 13 + src/assets/icons/menu/icon-tree-1.svg | 13 + src/assets/icons/menu/icon-tree-2.svg | 13 + src/assets/icons/menu/icon-tree-3.svg | 13 + src/assets/icons/menu/icon-tree-4.svg | 13 + src/assets/icons/menu/icon-tree-5.svg | 13 + src/assets/icons/menudefalut.svg | 16 + src/assets/icons/module-item.svg | 4 + src/assets/icons/operation-btn-add.svg | 13 + src/assets/icons/operation-btn-del.svg | 15 + src/assets/icons/shouye.svg | 1 + src/assets/icons/tree-line.svg | 4 + src/assets/icons/tree/icon-1.svg | 13 + src/assets/icons/tree/icon-2.svg | 5 + src/assets/icons/tree/icon-3.svg | 14 + src/assets/icons/tree/icon-4.svg | 1 + src/assets/icons/tree/icon-5.svg | 14 + src/assets/icons/tree/icon-6.svg | 1 + src/assets/icons/upload-add.svg | 8 + src/assets/icons/widget-close.svg | 8 + src/assets/image/default-bg1.png | Bin 0 -> 13463 bytes src/assets/image/loading.gif | Bin 0 -> 190738 bytes src/assets/image/menu-bg.png | Bin 0 -> 67242 bytes src/assets/image/stats-icon-bg.svg | 11 + src/assets/image/tree-icon-group.png | Bin 0 -> 254 bytes src/assets/image/tree-icon-item.png | Bin 0 -> 524 bytes src/assets/styles/base/_base.scss | 17 + src/assets/styles/base/_reset.scss | 2 + src/assets/styles/base/bscroll.css | 84 + src/assets/styles/componets/_my_table.scss | 35 + src/assets/styles/componets/_rule_tree.scss | 59 + src/assets/styles/componets/_small_table.scss | 26 + src/assets/styles/componets/_status.scss | 8 + src/assets/styles/layout.css | 33 + src/assets/styles/main.scss | 117 + src/assets/styles/utils/_mixins.scss | 13 + src/assets/styles/utils/_utils.scss | 170 + src/assets/styles/utils/_varible.scss | 22 + src/auto-imports.d.ts | 94 + src/components/MyConfirm/Confirm.vue | 76 + src/components/MyConfirm/index.ts | 42 + src/components/SvgIcon.vue | 43 + src/components/TablePageAlovaNew.vue | 105 + src/components/layout.vue | 75 + src/main.ts | 34 + src/router/index.ts | 9 + src/router/routes.ts | 29 + src/style.css | 79 + src/types/Basics.d.ts | 138 + src/types/index.ts | 140 + src/types/router-meta.d.ts | 13 + src/types/shims-tsx.d.ts | 13 + src/types/shims-vue.d.ts | 5 + src/utils/alova/alova-core.ts | 145 + src/utils/alova/alova-iview.ts | 36 + src/utils/hook/useCompRef.ts | 4 + src/utils/hook/useCurrentInstance.ts | 7 + src/utils/hook/useImg.ts | 5 + src/utils/hook/useSessionStorage.ts | 37 + src/utils/index.ts | 363 + src/views/ledger/LedgerDetailModal.vue | 110 + src/views/ledger/LedgerList.vue | 159 + src/views/route/RouteList.vue | 122 + src/views/target/TargetList.vue | 88 + src/vite-env.d.ts | 17 + tsconfig.json | 31 + tsconfig.node.json | 11 + vite.config.ts | 130 + 88 files changed, 12542 insertions(+) create mode 100644 .dockerignore create mode 100644 .env.dev create mode 100644 .gitignore create mode 100644 .npmrc create mode 100644 .prettierrc.cjs create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/App.vue create mode 100644 src/api/apiDefinitions.ts create mode 100644 src/api/createApis.ts create mode 100644 src/api/globals.d.ts create mode 100644 src/api/index.ts create mode 100644 src/assets/config/host.config.ts create mode 100644 src/assets/icons/logout.svg create mode 100644 src/assets/icons/menu/icon-1.svg create mode 100644 src/assets/icons/menu/icon-2.svg create mode 100644 src/assets/icons/menu/icon-3.svg create mode 100644 src/assets/icons/menu/icon-4.svg create mode 100644 src/assets/icons/menu/icon-5.svg create mode 100644 src/assets/icons/menu/icon-6.svg create mode 100644 src/assets/icons/menu/icon-tree-1.svg create mode 100644 src/assets/icons/menu/icon-tree-2.svg create mode 100644 src/assets/icons/menu/icon-tree-3.svg create mode 100644 src/assets/icons/menu/icon-tree-4.svg create mode 100644 src/assets/icons/menu/icon-tree-5.svg create mode 100644 src/assets/icons/menudefalut.svg create mode 100644 src/assets/icons/module-item.svg create mode 100644 src/assets/icons/operation-btn-add.svg create mode 100644 src/assets/icons/operation-btn-del.svg create mode 100644 src/assets/icons/shouye.svg create mode 100644 src/assets/icons/tree-line.svg create mode 100644 src/assets/icons/tree/icon-1.svg create mode 100644 src/assets/icons/tree/icon-2.svg create mode 100644 src/assets/icons/tree/icon-3.svg create mode 100644 src/assets/icons/tree/icon-4.svg create mode 100644 src/assets/icons/tree/icon-5.svg create mode 100644 src/assets/icons/tree/icon-6.svg create mode 100644 src/assets/icons/upload-add.svg create mode 100644 src/assets/icons/widget-close.svg create mode 100644 src/assets/image/default-bg1.png create mode 100644 src/assets/image/loading.gif create mode 100644 src/assets/image/menu-bg.png create mode 100644 src/assets/image/stats-icon-bg.svg create mode 100644 src/assets/image/tree-icon-group.png create mode 100644 src/assets/image/tree-icon-item.png create mode 100644 src/assets/styles/base/_base.scss create mode 100644 src/assets/styles/base/_reset.scss create mode 100644 src/assets/styles/base/bscroll.css create mode 100644 src/assets/styles/componets/_my_table.scss create mode 100644 src/assets/styles/componets/_rule_tree.scss create mode 100644 src/assets/styles/componets/_small_table.scss create mode 100644 src/assets/styles/componets/_status.scss create mode 100644 src/assets/styles/layout.css create mode 100644 src/assets/styles/main.scss create mode 100644 src/assets/styles/utils/_mixins.scss create mode 100644 src/assets/styles/utils/_utils.scss create mode 100644 src/assets/styles/utils/_varible.scss create mode 100644 src/auto-imports.d.ts create mode 100644 src/components/MyConfirm/Confirm.vue create mode 100644 src/components/MyConfirm/index.ts create mode 100644 src/components/SvgIcon.vue create mode 100644 src/components/TablePageAlovaNew.vue create mode 100644 src/components/layout.vue create mode 100644 src/main.ts create mode 100644 src/router/index.ts create mode 100644 src/router/routes.ts create mode 100644 src/style.css create mode 100644 src/types/Basics.d.ts create mode 100644 src/types/index.ts create mode 100644 src/types/router-meta.d.ts create mode 100644 src/types/shims-tsx.d.ts create mode 100644 src/types/shims-vue.d.ts create mode 100644 src/utils/alova/alova-core.ts create mode 100644 src/utils/alova/alova-iview.ts create mode 100644 src/utils/hook/useCompRef.ts create mode 100644 src/utils/hook/useCurrentInstance.ts create mode 100644 src/utils/hook/useImg.ts create mode 100644 src/utils/hook/useSessionStorage.ts create mode 100644 src/utils/index.ts create mode 100644 src/views/ledger/LedgerDetailModal.vue create mode 100644 src/views/ledger/LedgerList.vue create mode 100644 src/views/route/RouteList.vue create mode 100644 src/views/target/TargetList.vue create mode 100644 src/vite-env.d.ts create mode 100644 tsconfig.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..210127a --- /dev/null +++ b/.dockerignore @@ -0,0 +1,11 @@ +node_modules +src +public +config +dist/base +dist/ld +dist/_verify +.git +.workbuddy +*.log +vite.config.ts.timestamp-* diff --git a/.env.dev b/.env.dev new file mode 100644 index 0000000..63da704 --- /dev/null +++ b/.env.dev @@ -0,0 +1,7 @@ +# 开发环境 (dev):仅 vite dev 加载(--mode dev)。 +# serviceHost 用同源前缀 /open-gateway,由 vite.config.ts 的 server.proxy 转发到 base 域, +# 避免跨源:网关无 CORS,且 10013 仅绑容器网内 127.0.0.1。 +# 线上产物不读本文件(build 为 production mode),serviceHost 由 host.config.ts 同域推导 +# (/open-gateway/front/ → 首段 open-gateway → ${origin}/open-gateway)。 +VITE_SERVICE_HOST=/open-gateway +VITE_IS_MOCK=false diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fbde150 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +node_modules/ +dist/ +.workbuddy/ +*.log +.idea/ diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..925630c --- /dev/null +++ b/.npmrc @@ -0,0 +1,3 @@ +SASS_BINARY_PATH =d:\发布区\win32-x64-115_binding.node +registry =https://registry.npmmirror.com +node_version = 20.19.4 \ No newline at end of file diff --git a/.prettierrc.cjs b/.prettierrc.cjs new file mode 100644 index 0000000..db34969 --- /dev/null +++ b/.prettierrc.cjs @@ -0,0 +1,15 @@ +module.exports = { + extends: ["airbnb", "prettier", "prettier/react"], + singleQuote: false, // 是否强制使用单引号 + printWidth: 120, // 超过最大值换行 + tabWidth: 4, + htmlWhitespaceSensitivity: "ignore", + semi: true, // 结尾是否使用分号 + //disableLanguages: ["vue"], // 不格式化vue文件,vue文件的格式化单独设置 + endOfLine: "auto", + arrowParens: "avoid", // 箭头函数参数括号 默认avoid 可选 avoid| always +}; +//如需显示webpack目录,运行以下命令 +// npm run eject +//如需配合使eslint生效,运行以下命令 +//npm install --save-dev eslint-plugin-prettier diff --git a/index.html b/index.html new file mode 100644 index 0000000..6e8be96 --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + <%- title %> + <%- injectScript %> + + + +
+ + + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..a0d5f5c --- /dev/null +++ b/package-lock.json @@ -0,0 +1,9135 @@ +{ + "name": "open-gateway-front", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "open-gateway-front", + "version": "0.0.0", + "dependencies": { + "alova": "^3.4.0", + "sass": "^1.64.1", + "view-ui-plus": "^1.3.16", + "vue": "^3.4.19", + "vue-router": "4" + }, + "devDependencies": { + "@types/node": "^20.4.4", + "@unocss/preset-rem-to-px": "^66.6.0", + "@unocss/preset-uno": "^66.6.0", + "@vitejs/plugin-vue": "^5.0.4", + "sass-loader": "^10.0.1", + "typescript": "^5.2.2", + "unocss": "^66.6.0", + "unplugin-auto-import": "0.18.3", + "vite": "^5.1.4", + "vite-plugin-html": "^3.2.2", + "vite-plugin-svg-icons": "^2.0.1", + "vue-tsc": "^2.2.12" + } + }, + "node_modules/@alova/shared": { + "version": "1.3.4", + "resolved": "https://registry.npmmirror.com/@alova/shared/-/shared-1.3.4.tgz", + "integrity": "sha512-kdYHUqO35AEdnQHnzevyf+VhhfD0jc+EBbZv/aYkA4rwjVjf+vB6D/ZkTwiYFH1yQjwiGwF1ZbJv5a7rKGyNiw==", + "license": "MIT" + }, + "node_modules/@antfu/install-pkg": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/@antfu/install-pkg/-/install-pkg-2.1.0.tgz", + "integrity": "sha512-sdg9NxU3zR4Mnawfbc/x6GB5Wf17WYud5qOuEuxXjaKpYpMkISSJEjItGebXJ2bQ4DIcly4NYH23mtkGJjvKUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "package-manager-detector": "^1.8.0", + "tinyexec": "^1.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/utils": { + "version": "0.7.10", + "resolved": "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.10.tgz", + "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@iconify/utils": { + "version": "3.1.7", + "resolved": "https://registry.npmmirror.com/@iconify/utils/-/utils-3.1.7.tgz", + "integrity": "sha512-JZHlwdID+dy+lTgbYC8NEC4zeugqeYsc6jewvzb4c58kHauJn+X7rNwQjxz5p2qSjqaEeQoLkCIQ9v/H4PK0/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@antfu/install-pkg": "^2.0.1", + "@iconify/types": "^2.0.0", + "import-meta-resolve": "^4.2.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmmirror.com/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.11", + "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", + "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@napi-rs/lzma-linux-x64-gnu": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", + "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^22.20 || ^24.12 || >=25" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@oxc-parser/binding-android-arm-eabi": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.150.0.tgz", + "integrity": "sha512-oQef2Zu4Prz1KLKznz3HqZzU9uVoA5PMoDZuuLmqms7hKmKSAPzlaMnLllJq3t+rgKmfJJ2siPrpZfFrW06btw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-android-arm64": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.150.0.tgz", + "integrity": "sha512-B6ofpoFiAUwIZ0MJ2IgHPvZK8FAtL4qzSZRwOkAKIfxEobE1mQC8nDdiFZj7pUaJiVUVCsfkMsBJKedzO8rZvA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-arm64": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.150.0.tgz", + "integrity": "sha512-J+9IHKzx/bSz1JetOfD4zKXSK9sOm4/a7+0qomJODcTL6JsRXGeV/ZdkAPSIDydfFmWzYCraMlQEosSZEyBYkQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-x64": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.150.0.tgz", + "integrity": "sha512-v6IPfcAcSYrBWXV5Tce1DmxDMXLhEYpIIWiRFPJopgCVscZdLaV4MRQOUxvL3usQlw+yrwYOjBFB9IwBx+jUiQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-freebsd-x64": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.150.0.tgz", + "integrity": "sha512-AoR/4jD02HET0KO0yNT4nbTE+XJUxiO9jB1X/ycEjUE3WrIJ3IjV/Vf+gskhWLcqqeXfvNnkDtBR7epllAm88A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-gnueabihf": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.150.0.tgz", + "integrity": "sha512-A/hycCFjLUrCmLoL5O/vBp40ohlaXO1Ta3v5hqYZxicYFs129wZmgZJggcW4mYGYbZebQLhup+N8JjeQl8qwyw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-musleabihf": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.150.0.tgz", + "integrity": "sha512-pbqahg1Pkz7J4RKmXm30s/iQu99hv64ayXCu8P4p75HcEH5azOdR4eGqiB6lFGkFR3mMpzaYsSKLkS8oJbjmeQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-gnu": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.150.0.tgz", + "integrity": "sha512-HV11aRbBQGwqv8bEo+K/6qr88uB4fEe1mhXncMhlVCrj+WpBSraxrUzHaPVmeQRU6x6x8v/3DuCbbo93rpp+fw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-musl": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.150.0.tgz", + "integrity": "sha512-k6pVkJqALwtEuP4zukVhGRhdIy4+ofChUIUUsAHHyqDZlNsknmel3JjbggrJiWGaes6h/dIcWmEXsKW4SmK9oQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-ppc64-gnu": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.150.0.tgz", + "integrity": "sha512-tEFg39mw/rHO5n8GK2DR4ZMFfsPQZtnQIPbsIpjoQRomJc/2tRfsCSmCT6gNit+NZGoeJG5aH9ATDH5bf0WnoQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-gnu": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.150.0.tgz", + "integrity": "sha512-0JO7IFkoek6HqV589Menx3hJySNXi6quRhO4tq2P7kpEHKEXoDATnoPVUpn5B7gDH2KLkdo751N0uIrGJFCTCw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-musl": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.150.0.tgz", + "integrity": "sha512-7XPzREnyAS5wHU9aB+49Uaqgoo1gVCklHc3DRlc3fJy2tXD/eAJFN1QFz/crj+Ulup5P1+axNREF+/RGaB/IRA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-s390x-gnu": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.150.0.tgz", + "integrity": "sha512-7n7ZxcbRWDFaTdyj8M8p0O9OfzoMKm8O6syBAIgcSutbOALq0Bb9G52Me+XH0anMLZV+NgXc726gqgG2q39vcQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-gnu": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.150.0.tgz", + "integrity": "sha512-Vx0GSA9ZCRTUiczoEQnIIyXkMvtEY8uc6IiwLQtMe5ci2sXPqjrry0Ek5fsPP1k2kCzkML3ow9UOOEgnEDi7Bw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-musl": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.150.0.tgz", + "integrity": "sha512-ii4/9m3viDLssMnfXU7/Pni/3nYplApuGayceX4qsVGaqqQJCx3tHIH9M/HWIeSty5i8LjS21zPYT6lVIkwLxw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-openharmony-arm64": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.150.0.tgz", + "integrity": "sha512-ZtoxX5rez36ZWkwtiEhjkCPnlTPoQ2I7lIL0IYZ1yjxMYohbvoOjBmUIZzrf9W/HouONq0omIfTeCWEY+R380w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-arm64-msvc": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.150.0.tgz", + "integrity": "sha512-VqeRb5JX/bKYBrff7TUDvJyKY0914UzuCkuXIGxJS4FUmvMNfqkCbc7Sq90iMz9DlmAtlggwaBYQ9eg3h3ltiw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-ia32-msvc": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.150.0.tgz", + "integrity": "sha512-EPqJfeZ4Pgg2BJSsCV8GozxV0FDltRzpVtGVa1r2noJu1iu+opOw3gtBWXwIo9odCT/MdFfyHxdy0/CRqs3OqA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-x64-msvc": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.150.0.tgz", + "integrity": "sha512-n5YMzbqwPQqozbkrexi0lNZrUz5cnPHalYpFWe6Dau7AmKIWNo+y24IwzDuZEQtEdUHuKhXmMMih/MPjOI+CMw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/@oxc-project/types/-/types-0.150.0.tgz", + "integrity": "sha512-rDS5/31E9HfPl/CIzGrn0DOlvBbXFseQ5URJ9sYMfstbKLD/c6Gm9vmRzRGDdAXyOIL4zmO37lc9RIwYqVruZw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/oxc-project" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher/-/watcher-2.6.0.tgz", + "integrity": "sha512-7FNeNl8NCE7aINx7WXiKQrPYZWC/hvrTsmk6zmxbI7LTXE7hVek/n8AfVgpe2y82zl3w0HvCHN0bVKMBoJcC0w==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.6.0", + "@parcel/watcher-darwin-arm64": "2.6.0", + "@parcel/watcher-darwin-x64": "2.6.0", + "@parcel/watcher-freebsd-x64": "2.6.0", + "@parcel/watcher-linux-arm-glibc": "2.6.0", + "@parcel/watcher-linux-arm-musl": "2.6.0", + "@parcel/watcher-linux-arm64-glibc": "2.6.0", + "@parcel/watcher-linux-arm64-musl": "2.6.0", + "@parcel/watcher-linux-x64-glibc": "2.6.0", + "@parcel/watcher-linux-x64-musl": "2.6.0", + "@parcel/watcher-win32-arm64": "2.6.0", + "@parcel/watcher-win32-x64": "2.6.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.6.0.tgz", + "integrity": "sha512-trgpLSCKRC/huFjXX/Smh+0sWe4+YtKfktIToiMl59ghz7z+qkH6kMvNnUbLyRs9N11t8l4svSCs1+5B3rOAhA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.6.0.tgz", + "integrity": "sha512-Y3QV0gl7Q1zbfueunkWIERICbEojQFCgpyG7YqOGNFLsckXyI1xu9mAIUpKY9QBYzBtSkN8dBPwd3yiAO9ovMw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.6.0.tgz", + "integrity": "sha512-Ohv6OpzhUfKYD7Beb8kDvG0jbIxORCYY1JRdZnaBtnjjkJxgD7ZVL0nw2sCYd0yTMKTvz3nnTnOF3cDifK+kvw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.6.0.tgz", + "integrity": "sha512-5HmXvDgs8VK+74jF9y9/2FE3/OnlcKmc56tjmSrEuZjpSZOGL+fvAu+HKJBdPs9uwoP2hE6TlSUpXZ/C5jUFmQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.6.0.tgz", + "integrity": "sha512-Ps/hui3A+vMbjdqlqAowK2ZL8+BO8dBjxeWXj6npTBs3jx4wWmbPpaLuqwrQrSqIVMCnpWo238bJ1U37GhQOYg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.6.0.tgz", + "integrity": "sha512-9c6AUHgHoG+IY88MRIHupztQiQnrbqHYQjkM2btA+Bf/wQnQMuiD0Wfk1EVv3TlNT3x41uU71rn6E4xh/+zvkw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.6.0.tgz", + "integrity": "sha512-yHRqS2owEXe6Hic9z6Mh1ECsCd+ODVOGvZDyciqRd21+v+o+DnXMOrw50DSpIG2sb8GPEaPPmfeCAWKPJdq46g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.6.0.tgz", + "integrity": "sha512-WhB2e/V7rqdHHWZusBSPuy5Ei8S6lSz6FE5TKKQz5h3a0O+C+mhY7vxU9b/stqvMb8beLnPY82ZrFTLKs+SrKA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.6.0.tgz", + "integrity": "sha512-ulGE6x6Oz6iAwg75T8YQSoguBWasniIbX+QWpaYPcCnDOpdWX3k+4xbEYPZVLxOuoJI+svJJPD3sEj8G7lrQ3A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.6.0.tgz", + "integrity": "sha512-tkBYKt7YQrjIJWYDnto2YgO8MRkjlMTSNoRHzsXinBqbLdeOM3L32wPZJvIZxqaLMfSlS/4sUjH/6STVP/XDLw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.6.0.tgz", + "integrity": "sha512-gIZAP23jaHjGWasY/TY6yL7NHFClf0Ga7FN+iINvk+KN94rhm94lYZhFsbYFNcA04/onvGD9kKmiJLJB2HbNwQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.6.0.tgz", + "integrity": "sha512-cA+/pXV2YkfxlIcXOQ5fSWqAzzPyD78/x5qbK/I0vUkrlYHA8TIz+MXjAbGouguKVSI4bOmkTSJ1/poVSsgt+A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@quansync/fs": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@quansync/fs/-/fs-1.1.0.tgz", + "integrity": "sha512-qAPG/t3HqML1TlN7sY/pTbEjzFVAKsMjNNMGheyDosro+kT4iw2KCUoHcVdmliwWjorm4elZbgNQyU2eD97eDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "quansync": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.4.0", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.4.0.tgz", + "integrity": "sha512-MfPp06CjRLfXQ3wY0R8vJDYBy/MvVcc9OulEfR0B8Iv9ko+GCNaRZ+EpJYFl27LhKsZK0o420sYCRHCjfCgeUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.63.4.tgz", + "integrity": "sha512-I+BSHzTAhKN2n7ZwGZsegGcZjDpLqFOMAtJz/u6uFGe0pUFbq56dEHjqJV/ZUdRJtNXNxA+hREUatZBvMR3Oiw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.63.4.tgz", + "integrity": "sha512-pu3BdjS2LtEzRu2elmGzS3fIeWSZy4BMDIaLNwjorO76+k2d0LMluijhsDx3KQyQBQ/lLUZCQA9/s6csvUfuhw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.63.4.tgz", + "integrity": "sha512-xfSrj9MHnWK9GaSqT9U0ImHtH/N8WZlHLx4cZHiuLcqs640hvZ3hLPd5UR2AZS57FaE8HrRUSpltbZdWRxHiDA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.63.4.tgz", + "integrity": "sha512-bqU99PLJb/dqb3S0GIMdeuyAEETSUgZBoqXYd3Sd+WCsV+MmPhnN6JrotWyir31+QgH7EvvE5/mwGJlEoci8Fw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.63.4.tgz", + "integrity": "sha512-JinsFZ5G40oXQb+sUuiA5x689vhr6dDYK0H0NL+rwKdL6CqnmYN8PE4ZwfRSoIjrCxqTQG/SLfTtSvHeGxoVlw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.63.4.tgz", + "integrity": "sha512-GAdA4UxpiNm27cLHr2GqXBpAD0x9FqwYBY7/YSP0Ss0/PNi4k8gbviqpIpYbVSRBaS2ZcegXEzgTQMbRNCwxCw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.63.4.tgz", + "integrity": "sha512-qDd6NoA1znaLjp4jR5U/KWCdLAKDJNB8W9ChbbDaKbo0xA+Atln5HK6LFCZ4oJQpemtRZA288DCirFRjrspptw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.63.4.tgz", + "integrity": "sha512-WtB5Tz5KTNINb8ZA+8sQ7bmjuS1JrRT7YverYIhUGdWWDlpzVWmIwuZE+jidkEXUn1l0zrEkaIMa8dHF3NGcsA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.63.4.tgz", + "integrity": "sha512-VcQ3L1tjnkKzWjryAVaFhHEWcqOfICX9uxVVoDzm2t0DpgKRHd2zOpVrJc0xsWeBZcBFyYROCIBdyR/fS174pg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.63.4.tgz", + "integrity": "sha512-6+ZQX6P5s0cMDN2Ypb8Lbm2+/sZYmZjdaYny992ujUU9UKi/4CWoJWsl1pNvjWJHNHGK51m+jKGLlh1ylb2ifQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.63.4.tgz", + "integrity": "sha512-D72ZnvkFkBXOfzMMQLcwfPLyGkKb7HZ9/mf97B7v6/P5Lbv4oFOtSY/uHbS8lH6uKUOxoKiuokdb50XZSzzbJw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.63.4.tgz", + "integrity": "sha512-piU6BxeqA3O9KSu3kRCIQQtNqFFaTu21SEV4FwaRZowpnj3bLaWPZHw+xFqCs0XlJ+aOH3PTRWGoglH+mKA/OA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.63.4.tgz", + "integrity": "sha512-/5PGpHwqt2EEEOUs1XwzubE/ucr0dWDQ+to3zqi4Ds7EWpwtQ79wXc4JBoxqj/OwpawTsKWzJxHfSuBOq3DrWA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.63.4.tgz", + "integrity": "sha512-cX3beZDLWt7G2oJF+nhChiT+qtaihs+S2xi7ziGmVB+2pwPng6D0Ed0HmElQOgv2UsUmSJJLGwpBao/3TDx3VA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.63.4.tgz", + "integrity": "sha512-1uz2mGWHyptR7DgHHrlbdRAjXK7v7elGZ9lMja910/RP+ZYbX6xAmCiU9UZSX4hqmgtHMv6lr5l3kq1HIOpcag==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.63.4.tgz", + "integrity": "sha512-nLS8topojxyz7SRpKR2IODRpQ0XPZ+xaOXvT3+hqK/Uy8Lo5HFgkkIBiIrCu5tL5YqzTvgovGw55PwpahTAGig==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.63.4.tgz", + "integrity": "sha512-gs7DRKotr3l3q+jGPQBjH0ng1FjlEDm5ueQrkw5JtQvtLyEIcLASqAEaor56BhkKRzk+IcQzrcanBdb/bBQn8g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.63.4.tgz", + "integrity": "sha512-791ET7W17NnScOZM7h4dX5hYspxE28htPFsb1awY/NRR8+PRNkS53e475rDdxXXDrP+kwnCcNWg9CX5ztn/Aqw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.63.4.tgz", + "integrity": "sha512-iwZQRcmj7g88g3tzefIrQY7qvmuA/cfYwhrDtTBhsmukO4U2huVO5W+86XacUMRvdSFVAc6kZUZy21JaRwiB9w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.63.4.tgz", + "integrity": "sha512-dVHFp9gRWrdTpnqQuGfCwd7hOQDatK1VCP2iWhLY/cGrOQs/ucFzJ6A5SRqbXX12ZDI8EUuejSM5kwg+ja7Png==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.63.4.tgz", + "integrity": "sha512-t3NlauOW6gxZVVFcBEnO62Cb4wbyDFL416gTg1uFI/2tgqYQlf69FbSE115Ajre9I+c26Lk4mcmdFUsS/DGifQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.63.4.tgz", + "integrity": "sha512-xWuIaSye5FWZF8+UYtVEcHtRJDN5kN9Kfgxx3Kq8XIov9KSKbc1fiqQCm90SKrgQbUXZelbnUhnlUJmfSE7P9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.63.4.tgz", + "integrity": "sha512-9ALJJUOg/ZflMJepVo2PlgsGxSaxN7SQ4Z8GoZfVlarWr6r3rkHUNsd/zAio7p4YMtChSMXPionxej4Hkf6CXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.63.4.tgz", + "integrity": "sha512-blj9z5qx/Pv4WU0W1NMFDB97e0JH5ed+aZGywW8WCvp/NhWX/4PFAq5uu6Q0AebNn+Vo6KzUYDT++JzTT5ojlQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.63.4.tgz", + "integrity": "sha512-Erx822VRBwLa124shbj+wNXe//BOgMEctDV0m1aqTQdNO1S69DgNUCFKC1RCeZfixs1J31l6igk1ziyXErbigQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.43", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.19.43.tgz", + "integrity": "sha512-6oYBAi5ikg4Pl+kGsoYtawUMBT2zZMCvPNF7pVLnHZfd1zf38DRiWn/gT01RYCdUqkv7Fhr+C9ot4/tb+2sVvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/svgo": { + "version": "2.6.4", + "resolved": "https://registry.npmmirror.com/@types/svgo/-/svgo-2.6.4.tgz", + "integrity": "sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@unocss/cli": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/cli/-/cli-66.10.5.tgz", + "integrity": "sha512-NjHkCNRsgnrU7m/hI1y2ryv8RMku+uejx9ChCnKcdKVKuBpgKFdhjmSjaTJQjpAHORyv5hLdT/7TkLbJzqk4tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.5", + "@unocss/core": "66.10.5", + "@unocss/preset-wind3": "66.10.5", + "@unocss/preset-wind4": "66.10.5", + "@unocss/transformer-directives": "66.10.5", + "cac": "^7.0.0", + "chokidar": "^5.0.0", + "colorette": "^2.0.20", + "consola": "^3.4.2", + "magic-string": "^1.4.1", + "pathe": "^2.0.3", + "perfect-debounce": "^2.1.0", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "bin": { + "unocss": "bin/unocss.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/config": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/config/-/config-66.10.5.tgz", + "integrity": "sha512-ddmmmsJ+Vjg9oS4c5ElP8vR1oftID9dqG0yASDWLsLNY4uKo295EuCQXIBVbkyRnBZcdjpnOUfo71iwElaCeyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "colorette": "^2.0.20", + "consola": "^3.4.2", + "unconfig": "^7.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/core": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.5.tgz", + "integrity": "sha512-fukv4bL32z/kWIiKgDy5ih452Jzf7S76p8RnP4N+3utqMFeqWayEApiqRidGv5b6NwPguTsKXaLsy+mbK9aMfA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/extractor-arbitrary-variants": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-66.10.5.tgz", + "integrity": "sha512-8qCJjByALdNiGQB1xHWK3tAl3n+hacBLlklqHhgNj0qWYtr3Hp+pfyA2nuyzJcPXkolqtGn1APJ1TNPbL5w+qg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/inspector/-/inspector-66.10.5.tgz", + "integrity": "sha512-YTYkwzBrEnfleoIv9Q7PQDlbC7st/hUKI8V7veWwkqpzcAxGcLfbLn50jGgnbvAZrxtGgvF021uW6aor9FyX6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/config": "66.10.5", + "@unocss/core": "66.10.5", + "@unocss/rule-utils": "66.10.5", + "devframe": "^1.0.0", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-attributify": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-attributify/-/preset-attributify-66.10.5.tgz", + "integrity": "sha512-2wgfTLGe7ryG9FwAMhNNpfzuL7jbBRWP4VgeGLnKusGIPrzmJ+bF3/+EZTgVZwAi+5jhj6wofcEJLvmHRUOYMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-icons": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-icons/-/preset-icons-66.10.5.tgz", + "integrity": "sha512-YZuDehWpwpvLzkMPxO329fhd66GKpblhbUHrL/5uVMAXJpxK7ZVSQECgpIbU8sXlc4/gvTOjkIFD0fZ1MRPK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@iconify/utils": "^3.1.7", + "@unocss/core": "66.10.5", + "ofetch": "^1.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-mini/-/preset-mini-66.10.5.tgz", + "integrity": "sha512-oFKjmK32jyKp8rMI8Zu5+1AaFOvbwlQ7wztNGjtiAhhglKREZoncThLBE6Yd3B2+p/xf8YXfSOr5TFzhzXnDIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/extractor-arbitrary-variants": "66.10.5", + "@unocss/rule-utils": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-rem-to-px": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-rem-to-px/-/preset-rem-to-px-66.10.5.tgz", + "integrity": "sha512-uUP+O7pSc3m/K/3ugv2dV9DKCimzSC0BWVv3tGVMAzCXEU+ljNOqb3Eu8I+CYqHX9//rSAbcaOpF3sFs7eaVDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-tagify": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-tagify/-/preset-tagify-66.10.5.tgz", + "integrity": "sha512-8lefFZt4H4N+hu48vp+aqqQcTG2P28ox4tTRXgpTrhk4toYFrY2YreMqa3BFvOmZsBRunr/pdd7ZwDi5vt5nmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-typography/-/preset-typography-66.10.5.tgz", + "integrity": "sha512-b7hP1v4LyopVRrzJiI+ymnJEZMoLW1DdBo0SFWyPnFZXJv7umtDFlZ9plb+8AJvviyRgZ3qI03adRLXA4QCt2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/rule-utils": "66.10.5" + } + }, + "node_modules/@unocss/preset-uno": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-uno/-/preset-uno-66.10.5.tgz", + "integrity": "sha512-Okd40CCXMWzv4fJQplNWCiARdPnAo5ghALvo2YQrYGaqwL4qwDurw4KK1R62PmvDCKXPPQY9duzcje/uOkvmeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/preset-wind3": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-web-fonts": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-web-fonts/-/preset-web-fonts-66.10.5.tgz", + "integrity": "sha512-7yz51nOMorsHqKVpWLjp9aHX2bW6fgRkKPY/mZnpw/1S8rpYNOeZPv4w6ogaSIyCvQppDnxPnwp2hQwwnNKi2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "ofetch": "^1.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind/-/preset-wind-66.10.5.tgz", + "integrity": "sha512-K2vnt3ri39kbToG5x4j56kB9pTLLsJuPZfQbWcEAnwOq8ojW5g80dCxetW3Rqukou/u2NnAJmAKm93aG0RZFIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/preset-wind3": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind3": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind3/-/preset-wind3-66.10.5.tgz", + "integrity": "sha512-1zjLAJ4JCVREQlRaLiajP5T/BQUQzc2ilpScD1kvgTkJLV8en+ae1G/ctjZwAThmosD0oicuuMT9ODjt2NfGOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/preset-mini": "66.10.5", + "@unocss/rule-utils": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind4": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind4/-/preset-wind4-66.10.5.tgz", + "integrity": "sha512-rYLe20SyOEf5V9SsHkHVhdmFGE4qZJL0/yheZGAUXXv/kN0yR+qlMPB4Q6UR4JiDxrR5R+8U7BIa/juOks7EvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/extractor-arbitrary-variants": "66.10.5", + "@unocss/rule-utils": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/rollup": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/rollup/-/rollup-66.10.5.tgz", + "integrity": "sha512-Ii1srTmJ1kF3yHdt1vdIiYID4cAeaxooSQJ1LIWLxy0Xr2/QVXKlcxp9KdXti8nfrmPcx3oWYDa92sEHVxIpgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.5", + "@unocss/core": "66.10.5", + "chokidar": "^5.0.0", + "magic-string": "^1.4.1", + "pathe": "^2.0.3", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "rolldown": "^1.0.0", + "rollup": "^4.0.0" + }, + "peerDependenciesMeta": { + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, + "node_modules/@unocss/rule-utils": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.5.tgz", + "integrity": "sha512-ePcz9fJfEVN4VXJgx2bPdGSZ/ujdyUhiJOnMTwIWRxlUdZ2Wgc5aT6zTb9W9AjOB0eWxO2Iyb0HGhA9GGuIY8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "magic-string": "^1.4.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-attributify-jsx": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-66.10.5.tgz", + "integrity": "sha512-G3QPttsY2ZLgLPTliNwQTPrESNXTr0B9NiTy/qHcRcUBfjunB4Et2wcBG4JAiaZCdLikYCuR+g9O+GveCbboAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "oxc-parser": "^0.150.0", + "oxc-walker": "^0.7.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-compile-class": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-compile-class/-/transformer-compile-class-66.10.5.tgz", + "integrity": "sha512-JHTSocPg3boTxkFvCVvVwoGlgyyoJ9YhZBy+c2hxW44mCIOGFimsRvslRg7RscYRR2ts8cdQhC3Oi4Wce+BHQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-directives/-/transformer-directives-66.10.5.tgz", + "integrity": "sha512-X7WkyesHojKlDBPzgytRzqgftI7lRqpSbSdz7kx+d09D/Xf/1V7i0IOc+mBxeFngvqh2ueuLElwZbaT3CuKHkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5", + "@unocss/rule-utils": "66.10.5", + "css-tree": "^3.2.1" + } + }, + "node_modules/@unocss/transformer-variant-group": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-variant-group/-/transformer-variant-group-66.10.5.tgz", + "integrity": "sha512-e1l3bCxl4qMizPJPe6E6tfS2swdL9r/ohiKxSxku6+/kyKYnAxRcpVPK6IbmkurQfo73cjSJUV+zXmqdxbdWNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/vite": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/vite/-/vite-66.10.5.tgz", + "integrity": "sha512-aFJ+lTcqIbtqxsKD1OI1gtvfEieJPVa9KOZr1Wj/ChrSCStcS7QP/DTbYvM6hC+qa07W6hEbSEgYqOUtCvFKVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.5", + "@unocss/core": "66.10.5", + "@unocss/inspector": "66.10.5", + "chokidar": "^5.0.0", + "magic-string": "^1.4.1", + "pathe": "^2.0.3", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0 || ^8.0.0-0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.15", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-2.4.15.tgz", + "integrity": "sha512-3VHw+QZU0ZG9IuQmzT68IyN4hZNd9GchGPhbD9+pa8CVv7rnoOZwo7T8weIbrRmihqy3ATpdfXFnqRrfPVK6CA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.15" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.15", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-2.4.15.tgz", + "integrity": "sha512-CPbMWlUN6hVZJYGcU/GSoHu4EnCHiLaXI9n8c9la6RaI9W5JHX+NqG+GSQcB0JdC2FIBLdZJwGsfKyBB71VlTg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.15", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-2.4.15.tgz", + "integrity": "sha512-2aZ8i0cqPGjXb4BhkMsPYDkkuc2ZQ6yOpqwAuNwUoncELqoy5fRgOQtLR9gB0g902iS0NAkvpIzs27geVyVdPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.15", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.43.tgz", + "integrity": "sha512-zdiLhnbe1QQqgDT8xZMpNmyqZ3qlI+/Q/FHQco57Kwl/b05HhCzN6eVGN9QU9rbga4CrS0H5SYY8VGHZCt/1Hg==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/shared": "3.5.43", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-core/node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/@vue/compiler-core/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.43.tgz", + "integrity": "sha512-PEZoAk3NQmsn/ejMzSOCyTYqwGqczrWm70PuhBKjjv1+TCoQAaO/zOqNwjV+honlNstT5ILxtc+8r8UUfj+iEQ==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.43.tgz", + "integrity": "sha512-FCbrG3XNCRl+js3huuKx4IVHBLTvMkJhVepjbxSPu1gn4yWLaYtGNQdjJGZaMytXB6qb76qQDDmDSLy/vkmleQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/compiler-core": "3.5.43", + "@vue/compiler-dom": "3.5.43", + "@vue/compiler-ssr": "3.5.43", + "@vue/shared": "3.5.43", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.28", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-sfc/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/@vue/compiler-sfc/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.43.tgz", + "integrity": "sha512-GF62orf7KiJX9RqrHNGrYBudsQGD0OhJ5nDs90O8UiDuS40+YMYomiXu6w6EuvtXuRDc3MSNis3EaaSKAVSWpg==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/compiler-vue2": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", + "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/@vue/language-core": { + "version": "2.2.12", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.2.12.tgz", + "integrity": "sha512-IsGljWbKGU1MZpBPN+BvPAdr55YPkj2nB/TBNGNC32Vy2qLG25DYu/NBN2vNtZqdRbTRjaoYrahLrToim2NanA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.15", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^1.0.3", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.43.tgz", + "integrity": "sha512-G/c9GyOZNI2jVaaS6OX1EF1SSFSv7H0ERqNTl4+DTFMlZmB5eVAB53aLQNam/7NL2NPtaDD7RdVrzf8uJzMuOA==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.43.tgz", + "integrity": "sha512-hU6U6VnVhBGQDpvlnnDlIB8ZGJBiOcgk2lh/0InltHiz3D8oSkluvuvY+do1G2H3+udeKFsmaBlgVYP7gXQzEw==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.43.tgz", + "integrity": "sha512-Bb2Jc0YjjJdMt1SJmb9b2L/IWd3I8lIT9x9eS/xvvP9CiVgna0ffua74xKRmt4/uSJ+0r4iN8ex1jrqkhQGWQw==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.43", + "@vue/runtime-core": "3.5.43", + "@vue/shared": "3.5.43", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.43.tgz", + "integrity": "sha512-l2Ygjv9NehV94PSBxNWsAHC0j/eIIKbn92mBuWXAPGLnn6HfJ6MH5ubsd+Nk0YoZ5FRuxWI1P2VSoh+dbPQhCQ==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.43", + "@vue/runtime-dom": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.43.tgz", + "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==", + "license": "MIT" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true + }, + "node_modules/acorn": { + "version": "8.18.0", + "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/alien-signals": { + "version": "1.0.13", + "resolved": "https://registry.npmmirror.com/alien-signals/-/alien-signals-1.0.13.tgz", + "integrity": "sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/alova": { + "version": "3.5.5", + "resolved": "https://registry.npmmirror.com/alova/-/alova-3.5.5.tgz", + "integrity": "sha512-V/w9xLNBpmBxx7Zeb+OAJapt9yD1L/hBoqi86xlRtug94F2xUkA1GFsJMeDeV/oL/iQCvW8fQyplGOiLXDkACg==", + "license": "MIT", + "dependencies": { + "@alova/shared": "1.3.4", + "rate-limiter-flexible": "^5.0.3" + }, + "engines": { + "node": ">= 18.0.0" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmmirror.com/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/async-validator": { + "version": "3.5.2", + "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-3.5.2.tgz", + "integrity": "sha512-8eLCg00W9pIRZSB781UUX/H6Oskmm8xloZfr09lz5bikRpBVDlJ3hRVuxxP1SxcwsEYfJ4IU8Q19Y8/893r3rQ==", + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true, + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmmirror.com/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.25", + "resolved": "https://registry.npmmirror.com/baseline-browser-mapping/-/baseline-browser-mapping-2.11.25.tgz", + "integrity": "sha512-gMmEShwwq7FJqMwvfRwvCl00v4kN+KOfJqXn+f4nrufak5gNHJOksd/60Dvjuz7sI8Y5WiSFBa8FEYr+zoyqCw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/batch-processor": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/batch-processor/-/batch-processor-1.0.0.tgz", + "integrity": "sha512-xoLQD8gmmR32MeuBHgH0Tzd5PuSZx71ZsbhVxOCRbgktZEPe4SQy7s9Z50uPp0F/f7iw2XmkHN2xkgbMfckMDA==", + "license": "MIT" + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true, + "license": "ISC" + }, + "node_modules/brace-expansion": { + "version": "2.1.7", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.1.7.tgz", + "integrity": "sha512-uZbew1NqdmPDTMJ8ah1y+b+9QEJrfkXFk3RcTQw3X0jW/xRUvFKsg1CfQdSYGdTbXZWExtU3J3ccxtnfw1Fi0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.29.0", + "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.29.0.tgz", + "integrity": "sha512-3GSvyjvDI4Dur1Meg2BekJquu5uF+9R9a1+5M1Mde192eZoXbeXjzgOsgqPS2V8D5wrrip0gR5Hf/GhWQ9ZzaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "baseline-browser-mapping": "^2.11.23", + "caniuse-lite": "^1.0.30001810", + "electron-to-chromium": "^1.5.427", + "node-releases": "^2.0.55", + "update-browserslist-db": "^1.3.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cac": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/cac/-/cac-7.0.0.tgz", + "integrity": "sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.19.0" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cache-base/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.9", + "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001810", + "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001810.tgz", + "integrity": "sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0", + "peer": true + }, + "node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chalk/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "license": "MIT", + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmmirror.com/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.8.tgz", + "integrity": "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/class-utils/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-css": { + "version": "5.3.3", + "resolved": "https://registry.npmmirror.com/clean-css/-/clean-css-5.3.3.tgz", + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "3.4.2", + "resolved": "https://registry.npmmirror.com/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cors": { + "version": "2.8.6", + "resolved": "https://registry.npmmirror.com/cors/-/cors-2.8.6.tgz", + "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/countup.js": { + "version": "1.9.3", + "resolved": "https://registry.npmmirror.com/countup.js/-/countup.js-1.9.3.tgz", + "integrity": "sha512-UHf2P/mFKaESqdPq+UdBJm/1y8lYdlcDd0nTZHNC8cxWoJwZr1Eldm1PpWui446vDl5Pd8PtRYkr3q6K4+Qa5A==", + "license": "MIT" + }, + "node_modules/crossws": { + "version": "0.4.12", + "resolved": "https://registry.npmmirror.com/crossws/-/crossws-0.4.12.tgz", + "integrity": "sha512-aypfsr6t0uNvkqaZc6zvBfXzC6pLI0/sIulpkV6RwCVtZqG5ebBzv4weImKK0VNCj91Wl9F5j7p5WU4MNrybng==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "srvx": ">=0.11.5" + }, + "peerDependenciesMeta": { + "srvx": { + "optional": true + } + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-3.2.1.tgz", + "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "2.27.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmmirror.com/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "license": "MIT", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dayjs": { + "version": "1.11.23", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.23.tgz", + "integrity": "sha512-QDTCU0M0MxR3hQfnlDJfwekQiaanm1ubOD231u73WBckQ/fsamwRLiE2GBz6D3a/xF1NgfiDLJjXBa1hYOYTtQ==", + "license": "MIT" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defu": { + "version": "6.1.7", + "resolved": "https://registry.npmmirror.com/defu/-/defu-6.1.7.tgz", + "integrity": "sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/destr": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/destr/-/destr-2.0.5.tgz", + "integrity": "sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==", + "dev": true, + "license": "MIT" + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/devframe": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/devframe/-/devframe-1.0.0.tgz", + "integrity": "sha512-u4eeDBJ8Cxd3n19o/cT6SQcoEgASzL9dL51IkYpIDriTNDmR7WBv+o+dufQmabir10KcozoRZqgwvDi/riASAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "crossws": "^0.4.12", + "h3": "^2.0.1-rc.31", + "nostics": "^1.2.0", + "pathe": "^2.0.3" + }, + "bin": { + "devframe": "bin/devframe.mjs" + }, + "peerDependencies": { + "@devframes/agentic": "1.0.0", + "cac": "^7.0.0" + }, + "peerDependenciesMeta": { + "@devframes/agentic": { + "optional": true + }, + "cac": { + "optional": true + } + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmmirror.com/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.436", + "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.436.tgz", + "integrity": "sha512-iG79/xCF3iThADicbgbES2+liFYmTvelo7jWcEfg6lQ+Adrh7zShrXSg2ZdEDLbKjJ298kGAKMnnzVWobp0L+g==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/element-resize-detector": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/element-resize-detector/-/element-resize-detector-1.2.4.tgz", + "integrity": "sha512-Fl5Ftk6WwXE0wqCgNoseKWndjzZlDCwuPTcoVZfCP9R3EHQF8qUtr3YUPNETegRBOKqQKPW3n4kiIWngGi8tKg==", + "license": "MIT", + "dependencies": { + "batch-processor": "1.0.0" + } + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.25.1", + "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.25.1.tgz", + "integrity": "sha512-nGXts5znJzmWPu+mIE9izCOzdg63oJca2mDzGWWTth7sr4aCToKcoyFVBQwN75Ij5Pf6p510EwkTqViTRzDV+w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-abstract": { + "version": "1.24.2", + "resolved": "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.24.2.tgz", + "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-abstract-get": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/es-abstract-get/-/es-abstract-get-1.0.0.tgz", + "integrity": "sha512-6PMWXpdhshVvFp+FoWYs1EvG1Nj0tvk0dZM+XcK0xMEM1czRVcP6ohqPWHy6qPagSpC8j4+p89WXlT+xXJs/fg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.2", + "is-callable": "^1.2.7", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-2.3.2.tgz", + "integrity": "sha512-poHGpORABojJJucnV9KbOavETW8lBVnphkW77ER5/BQ5Fz7oXSoCNek7IH3vR5nRjdsEz926ibFYX8KtLQmdyw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/es-object-atoms": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.4", + "resolved": "https://registry.npmmirror.com/es-to-primitive/-/es-to-primitive-1.3.4.tgz", + "integrity": "sha512-yPDz7wqpg1/mmHLmS3tcfTfbw5f1eryXvyghYBffGdERwe+mV7ZcWzTR8LR17Kvqt3qfPurjlonmnq3MKXIOXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-abstract-get": "^1.0.0", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "is-callable": "^1.2.7", + "is-date-object": "^1.1.0", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmmirror.com/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.8.tgz", + "integrity": "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/exsolve": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/exsolve/-/exsolve-1.1.1.tgz", + "integrity": "sha512-9U/jZUgjnSGyntRr6y5Muu1MJcwFl6kPu7k8qLF0IMNfLqvw0NZ4nnVDq0RVoZ0RvCyumib4Ez3KYrVfilrw+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.1.8", + "resolved": "https://registry.npmmirror.com/fast-uri/-/fast-uri-3.1.8.tgz", + "integrity": "sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/fastq": { + "version": "1.20.3", + "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.20.3.tgz", + "integrity": "sha512-XKv5nnLs6nLF71NgiKJLIZFLkPyIEuOselLG7ujZnGrRfQK8HpvY+WqKhAJUAdLomwVHErVS4LfxFlPq0/FTAw==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmmirror.com/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/filelist": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/filelist/-/filelist-1.0.6.tgz", + "integrity": "sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmmirror.com/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "dev": true, + "license": "MIT", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/function.prototype.name/-/function.prototype.name-1.2.0.tgz", + "integrity": "sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2", + "hasown": "^2.0.4", + "is-callable": "^1.2.7", + "is-document.all": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generator-function": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/h3": { + "version": "2.0.1-rc.32", + "resolved": "https://registry.npmmirror.com/h3/-/h3-2.0.1-rc.32.tgz", + "integrity": "sha512-Epg1E85L8yIKd9UeAQAVdm6QVrnHbppMsQ641EjpNi4c0IlAg+PJlwp4Xw03Z1loRXPQaH9k64gJT5qDELqm+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "rou3": "^0.9.2", + "srvx": "^1.0.5" + }, + "bin": { + "h3": "bin/h3.mjs" + }, + "engines": { + "node": ">=20.11.1" + }, + "peerDependencies": { + "crossws": "^0.4.12", + "ocache": ">=0.3.0" + }, + "peerDependenciesMeta": { + "crossws": { + "optional": true + }, + "ocache": { + "optional": true + } + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-value/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hasown": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmmirror.com/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/htmlparser2/node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/htmlparser2/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/htmlparser2/node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/htmlparser2/node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/htmlparser2/node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "license": "MIT", + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-5.1.9.tgz", + "integrity": "sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==", + "license": "MIT" + }, + "node_modules/import-meta-resolve": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz", + "integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.2.tgz", + "integrity": "sha512-AIbwAcazqP3R65dGvqk1V+a+vE5Fg1yu/ZKMOiBWSUIXXiwQkYmXQcVa2O0nh0tSDKDFKxG2mY7dB1Sr4hEP1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", + "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-1.0.4.tgz", + "integrity": "sha512-bv5z95W0dDtLfKwDfkTNxaRxmISBD3eQBKJeVxv2AQ7MjuUnDNG7cIQqvFtMOUYhsILWHhMayWdoGqNqYYYjww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.2", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-document.all": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/is-document.all/-/is-document.all-1.0.0.tgz", + "integrity": "sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmmirror.com/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmmirror.com/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/js-calendar": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/js-calendar/-/js-calendar-1.2.3.tgz", + "integrity": "sha512-dAA1/Zbp4+c5E+ARCVTIuKepXsNLzSYfzvOimiYD4S5eeP9QuplSHLcdhfqFSwyM1o1u6ku6RRRCyaZ0YAjiBw==", + "license": "ISC" + }, + "node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/local-pkg": { + "version": "0.5.1", + "resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.5.1.tgz", + "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mlly": "^1.7.3", + "pkg-types": "^1.2.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/lodash.chunk": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/lodash.chunk/-/lodash.chunk-4.2.0.tgz", + "integrity": "sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w==", + "license": "MIT" + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", + "license": "MIT" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/magic-regexp": { + "version": "0.10.0", + "resolved": "https://registry.npmmirror.com/magic-regexp/-/magic-regexp-0.10.0.tgz", + "integrity": "sha512-Uly1Bu4lO1hwHUW0CQeSWuRtzCMNO00CmXtS8N6fyvB3B979GOEEeAkiTUDsmbYLAbvpUS/Kt5c4ibosAzVyVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12", + "mlly": "^1.7.2", + "regexp-tree": "^0.1.27", + "type-level-regexp": "~0.1.17", + "ufo": "^1.5.4", + "unplugin": "^2.0.0" + } + }, + "node_modules/magic-regexp/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/magic-string": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.1.tgz", + "integrity": "sha512-8lyCu36ErXR0J9uaGKlKQoiLZKmtI63YGLE8G2o9jyRPdr4X47LusSOwgOJOzcVtp81fTAAjxR7BwKz682Jhow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mdn-data": { + "version": "2.27.1", + "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.27.1.tgz", + "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/merge-options": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/merge-options/-/merge-options-1.0.1.tgz", + "integrity": "sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-obj": "^1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "9.0.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.2" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimizer-webpack-plugin": { + "version": "5.11.0", + "resolved": "https://registry.npmmirror.com/minimizer-webpack-plugin/-/minimizer-webpack-plugin-5.11.0.tgz", + "integrity": "sha512-2JVy2DY+iBtfRyrQB5cRM7lfurnJIi6jFTgLip/7FxDu0WxswrIRzr4fBySQ0X7HqM7BcwE28zm+HfQ5V6y4Cg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.31", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.3", + "terser": "^5.51.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@minify-html/node": { + "optional": true + }, + "@napi-rs/image": { + "optional": true + }, + "@swc/core": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "@swc/html": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "cssnano": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "html-minifier-terser": { + "optional": true + }, + "imagemin": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "postcss": { + "optional": true + }, + "sharp": { + "optional": true + }, + "svgo": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/minimizer-webpack-plugin/node_modules/schema-utils": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.5.0.tgz", + "integrity": "sha512-zJlMCZ0cAR5p/Y4oVpRoqioDMJcGxaXRrQ/4rP4WyR84vc5z/DolXdbvXeDpTwbtocDFr2rhPqHPErDCUtz2kA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.15", + "ajv": "^8.20.0", + "ajv-formats": "^3.0.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmmirror.com/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mlly": { + "version": "1.8.2", + "resolved": "https://registry.npmmirror.com/mlly/-/mlly-1.8.2.tgz", + "integrity": "sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.16.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "ufo": "^1.6.3" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.19", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.19.tgz", + "integrity": "sha512-Y2tUNy4ouw6tq5oDSKeQYGOyhkUBhNOcGV/02KC+6kd9eDGqdZd++mjMiIDilrBYvjEnCYvVtsuHCuP+okSfug==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmmirror.com/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "license": "MIT" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "license": "MIT", + "optional": true + }, + "node_modules/node-fetch-native": { + "version": "1.6.7", + "resolved": "https://registry.npmmirror.com/node-fetch-native/-/node-fetch-native-1.6.7.tgz", + "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-html-parser": { + "version": "5.4.2", + "resolved": "https://registry.npmmirror.com/node-html-parser/-/node-html-parser-5.4.2.tgz", + "integrity": "sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "css-select": "^4.2.1", + "he": "1.2.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.56", + "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.56.tgz", + "integrity": "sha512-x0InOIyzgdk+eyaWaRJFH5snEtiImgBgblZ2CyPrLmqqcuMQkEvcDPHbzqbD8eDsSeJbVOjn+crzyzHaM4D+/A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/nostics": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/nostics/-/nostics-1.3.0.tgz", + "integrity": "sha512-wzRsrJwNlFbqIRQt8aCeL2WE8USip/uuvGSOZV1D02CxX8ABTMbw8IywKjH7yWHETMXbWJI4OBpihg9rmz2Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/numeral": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/numeral/-/numeral-2.0.6.tgz", + "integrity": "sha512-qaKRmtYPZ5qdw4jWJD6bxEf1FJEqllJrwxCLIm0sQU/A7v2/czigzOb+C2uSiFsa9lBUzeH7M1oK+Q+OLxL3kA==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.8.tgz", + "integrity": "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-visit/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ofetch": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/ofetch/-/ofetch-1.5.1.tgz", + "integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "destr": "^2.0.5", + "node-fetch-native": "^1.6.7", + "ufo": "^1.6.1" + } + }, + "node_modules/own-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/own-keys/-/own-keys-1.0.2.tgz", + "integrity": "sha512-19YVAg7T+WTrxggPukVq7DjTv6+PJ867TmhCvBsYwmbFCsZd344rq2Ld1p0wo8f8Qrrhgp82c6FJRqdXWtSEhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/oxc-parser": { + "version": "0.150.0", + "resolved": "https://registry.npmmirror.com/oxc-parser/-/oxc-parser-0.150.0.tgz", + "integrity": "sha512-zwajKw1GUa57IOdafIS7/yOObGF2NihwIfZfs5yJTRprMSkiwhWOc/k+n8bwnUPbHr2/XsjfBO8KyTPaW3VpWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "^0.150.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/oxc-project" + }, + "optionalDependencies": { + "@oxc-parser/binding-android-arm-eabi": "0.150.0", + "@oxc-parser/binding-android-arm64": "0.150.0", + "@oxc-parser/binding-darwin-arm64": "0.150.0", + "@oxc-parser/binding-darwin-x64": "0.150.0", + "@oxc-parser/binding-freebsd-x64": "0.150.0", + "@oxc-parser/binding-linux-arm-gnueabihf": "0.150.0", + "@oxc-parser/binding-linux-arm-musleabihf": "0.150.0", + "@oxc-parser/binding-linux-arm64-gnu": "0.150.0", + "@oxc-parser/binding-linux-arm64-musl": "0.150.0", + "@oxc-parser/binding-linux-ppc64-gnu": "0.150.0", + "@oxc-parser/binding-linux-riscv64-gnu": "0.150.0", + "@oxc-parser/binding-linux-riscv64-musl": "0.150.0", + "@oxc-parser/binding-linux-s390x-gnu": "0.150.0", + "@oxc-parser/binding-linux-x64-gnu": "0.150.0", + "@oxc-parser/binding-linux-x64-musl": "0.150.0", + "@oxc-parser/binding-openharmony-arm64": "0.150.0", + "@oxc-parser/binding-win32-arm64-msvc": "0.150.0", + "@oxc-parser/binding-win32-ia32-msvc": "0.150.0", + "@oxc-parser/binding-win32-x64-msvc": "0.150.0" + } + }, + "node_modules/oxc-walker": { + "version": "0.7.0", + "resolved": "https://registry.npmmirror.com/oxc-walker/-/oxc-walker-0.7.0.tgz", + "integrity": "sha512-54B4KUhrzbzc4sKvKwVYm7E2PgeROpGba0/2nlNZMqfDyca+yOor5IMb4WLGBatGDT0nkzYdYuzylg7n3YfB7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "magic-regexp": "^0.10.0" + }, + "peerDependencies": { + "oxc-parser": ">=0.98.0" + } + }, + "node_modules/package-manager-detector": { + "version": "1.8.0", + "resolved": "https://registry.npmmirror.com/package-manager-detector/-/package-manager-detector-1.8.0.tgz", + "integrity": "sha512-yQA4H19AmPEoMUeavPMDIe1higySl/gH/yaQrkT/s07Qp+7pp2hYz30N3z2l5BkjVkF9Ow6o0wjJamm2y7Sn0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true, + "license": "MIT" + }, + "node_modules/perfect-debounce": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/perfect-debounce/-/perfect-debounce-2.1.0.tgz", + "integrity": "sha512-LjgdTytVFXeUgtHZr9WYViYSM/g8MkcTPYDlPa3cDqMirHjKiSZPYd6DoL7pK8AJQr+uWkQvCjHNdiMqsrJs+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.28", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.28.tgz", + "integrity": "sha512-RRuzqDtt5Y9h3quz5hWhK+TPnsmVs6WwSU6LkJMeY4HstUEDuYTG8UJSdawMRzmzAtV+KEoG8N3Qg2qLy5vM/A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.18", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-prefix-selector": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/postcss-prefix-selector/-/postcss-prefix-selector-1.16.1.tgz", + "integrity": "sha512-Umxu+FvKMwlY6TyDzGFoSUnzW+NOfMBLyC1tAkIjgX+Z/qGspJeRjVC903D7mx7TuBpJlwti2ibXtWuA7fKMeQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "postcss": ">4 <9" + } + }, + "node_modules/posthtml": { + "version": "0.9.2", + "resolved": "https://registry.npmmirror.com/posthtml/-/posthtml-0.9.2.tgz", + "integrity": "sha512-spBB5sgC4cv2YcW03f/IAUN1pgDJWNWD8FzkyY4mArLUMJW+KlQhlmUdKAHQuPfb00Jl5xIfImeOsf6YL8QK7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "posthtml-parser": "^0.2.0", + "posthtml-render": "^1.0.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/posthtml-parser": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/posthtml-parser/-/posthtml-parser-0.2.1.tgz", + "integrity": "sha512-nPC53YMqJnc/+1x4fRYFfm81KV2V+G9NZY+hTohpYg64Ay7NemWWcV4UWuy/SgMupqQ3kJ88M/iRfZmSnxT+pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "htmlparser2": "^3.8.3", + "isobject": "^2.1.0" + } + }, + "node_modules/posthtml-rename-id": { + "version": "1.0.12", + "resolved": "https://registry.npmmirror.com/posthtml-rename-id/-/posthtml-rename-id-1.0.12.tgz", + "integrity": "sha512-UKXf9OF/no8WZo9edRzvuMenb6AD5hDLzIepJW+a4oJT+T/Lx7vfMYWT4aWlGNQh0WMhnUx1ipN9OkZ9q+ddEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "1.0.5" + } + }, + "node_modules/posthtml-rename-id/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/posthtml-render": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/posthtml-render/-/posthtml-render-1.4.0.tgz", + "integrity": "sha512-W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/posthtml-svg-mode": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/posthtml-svg-mode/-/posthtml-svg-mode-1.0.3.tgz", + "integrity": "sha512-hEqw9NHZ9YgJ2/0G7CECOeuLQKZi8HjWLkBaSVtOWjygQ9ZD8P7tqeowYs7WrFdKsWEKG7o+IlsPY8jrr0CJpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "merge-options": "1.0.1", + "posthtml": "^0.9.2", + "posthtml-parser": "^0.2.1", + "posthtml-render": "^1.0.6" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/quansync": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-1.0.0.tgz", + "integrity": "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, + "node_modules/query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmmirror.com/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/rate-limiter-flexible": { + "version": "5.0.5", + "resolved": "https://registry.npmmirror.com/rate-limiter-flexible/-/rate-limiter-flexible-5.0.5.tgz", + "integrity": "sha512-+/dSQfo+3FYwYygUs/V2BBdwGa9nFtakDwKt4l0bnvNB53TNT++QSFewwHX9qXrZJuMe9j+TUaU21lm5ARgqdQ==", + "license": "ISC" + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", + "license": "MIT", + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp-tree": { + "version": "0.1.27", + "resolved": "https://registry.npmmirror.com/regexp-tree/-/regexp-tree-0.1.27.tgz", + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "dev": true, + "license": "MIT", + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmmirror.com/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmmirror.com/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", + "dev": true, + "license": "MIT" + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmmirror.com/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.63.4", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.63.4.tgz", + "integrity": "sha512-4U0liVayNIoLp3GFl1FcI8561WepLnZ1rqfraGh7S9B3Ur5F9S283y8Futii7RUU2C/97tOBmBy7nYvhoiOpbQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@napi-rs/lzma-linux-x64-gnu": "1.5.1", + "@rollup/rollup-android-arm-eabi": "4.63.4", + "@rollup/rollup-android-arm64": "4.63.4", + "@rollup/rollup-darwin-arm64": "4.63.4", + "@rollup/rollup-darwin-x64": "4.63.4", + "@rollup/rollup-freebsd-arm64": "4.63.4", + "@rollup/rollup-freebsd-x64": "4.63.4", + "@rollup/rollup-linux-arm-gnueabihf": "4.63.4", + "@rollup/rollup-linux-arm-musleabihf": "4.63.4", + "@rollup/rollup-linux-arm64-gnu": "4.63.4", + "@rollup/rollup-linux-arm64-musl": "4.63.4", + "@rollup/rollup-linux-loong64-gnu": "4.63.4", + "@rollup/rollup-linux-loong64-musl": "4.63.4", + "@rollup/rollup-linux-ppc64-gnu": "4.63.4", + "@rollup/rollup-linux-ppc64-musl": "4.63.4", + "@rollup/rollup-linux-riscv64-gnu": "4.63.4", + "@rollup/rollup-linux-riscv64-musl": "4.63.4", + "@rollup/rollup-linux-s390x-gnu": "4.63.4", + "@rollup/rollup-linux-x64-gnu": "4.63.4", + "@rollup/rollup-linux-x64-musl": "4.63.4", + "@rollup/rollup-openbsd-x64": "4.63.4", + "@rollup/rollup-openharmony-arm64": "4.63.4", + "@rollup/rollup-win32-arm64-msvc": "4.63.4", + "@rollup/rollup-win32-ia32-msvc": "4.63.4", + "@rollup/rollup-win32-x64-gnu": "4.63.4", + "@rollup/rollup-win32-x64-msvc": "4.63.4", + "fsevents": "~2.3.2" + } + }, + "node_modules/rou3": { + "version": "0.9.2", + "resolved": "https://registry.npmmirror.com/rou3/-/rou3-0.9.2.tgz", + "integrity": "sha512-3SOzvaAg8rkHrXtRjpCvCvbyO5to9oOO27Z/XqHEYXfMRVSw/qMIVdmaOk9W2lcRLtR6dlqTjo9hDeJk70QBYQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/safe-array-concat/-/safe-array-concat-1.1.4.tgz", + "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sass": { + "version": "1.105.0", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.105.0.tgz", + "integrity": "sha512-4EjSuRTyG8M4yRXXY1PT9OUV5zz23xBxJkbIAprohKHqf6HOU4MCpE3U3vAC+iO1gxobBjESNbcj8rYAQZWnyA==", + "license": "MIT", + "dependencies": { + "chokidar": "^5.0.0", + "immutable": "^5.1.5", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=20.19.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/sass-loader": { + "version": "10.5.2", + "resolved": "https://registry.npmmirror.com/sass-loader/-/sass-loader-10.5.2.tgz", + "integrity": "sha512-vMUoSNOUKJILHpcNCCyD23X34gve1TS7Rjd9uXHeKqhvBG39x6XbswFDtpbTElj6XdMFezoWhkh5vtKudf2cgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "webpack": "^4.36.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.6.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.6.1.tgz", + "integrity": "sha512-42tBVwLWnaQvW5zc4HbZrTuWccECCZfBi92FDuwtqxasH+JbPB3/FOKb1m222K42R4WxuxzzMsTswfzgtSu64Q==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", + "dev": true, + "license": "MIT" + }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/side-channel": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmmirror.com/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "license": "MIT", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.8.tgz", + "integrity": "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dev": true, + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated", + "dev": true, + "license": "MIT" + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/srvx": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/srvx/-/srvx-1.0.5.tgz", + "integrity": "sha512-KvSKRpgPG/oaq3cyT614OQ2bAa7DynuGamivCZeoZzIUULOdbQz6wUtnnVuC4+DCx2Zglzo8v5gBYmWIWYhDxA==", + "dev": true, + "license": "MIT", + "bin": { + "srvx": "bin/srvx.mjs" + }, + "engines": { + "node": ">=20.16.0" + } + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", + "dev": true, + "license": "MIT" + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.8.tgz", + "integrity": "sha512-SceYGWXvdqlWa/OnQ5FQuV+NxvNmMRhMw/w9AHkH71hTzveND4BTYgvp16g+oITK47qbOl/3D0bl0iygehWAWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.11", + "resolved": "https://registry.npmmirror.com/string.prototype.trim/-/string.prototype.trim-1.2.11.tgz", + "integrity": "sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.2", + "es-object-atoms": "^1.1.2", + "has-property-descriptors": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/string.prototype.trimend/-/string.prototype.trimend-1.0.10.tgz", + "integrity": "sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-literal": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/strip-literal/-/strip-literal-2.1.1.tgz", + "integrity": "sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/svg-baker": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/svg-baker/-/svg-baker-1.7.0.tgz", + "integrity": "sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bluebird": "^3.5.0", + "clone": "^2.1.1", + "he": "^1.1.1", + "image-size": "^0.5.1", + "loader-utils": "^1.1.0", + "merge-options": "1.0.1", + "micromatch": "3.1.0", + "postcss": "^5.2.17", + "postcss-prefix-selector": "^1.6.0", + "posthtml-rename-id": "^1.0", + "posthtml-svg-mode": "^1.0.3", + "query-string": "^4.3.2", + "traverse": "^0.6.6" + } + }, + "node_modules/svg-baker/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/svg-baker/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/svg-baker/node_modules/micromatch": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-3.1.0.tgz", + "integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.2.2", + "define-property": "^1.0.0", + "extend-shallow": "^2.0.1", + "extglob": "^2.0.2", + "fragment-cache": "^0.2.1", + "kind-of": "^5.0.2", + "nanomatch": "^1.2.1", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/svg-baker/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svg-baker/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svgo": { + "version": "2.8.4", + "resolved": "https://registry.npmmirror.com/svgo/-/svgo-2.8.4.tgz", + "integrity": "sha512-2GJ4h3rl13qYTdwllaK6QlL8tG+UrM8626V2Ylcd/yBUv2Y/EwLsYisVV6UDCRmlk+C74G8nMpxJCk0RWPdDCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "sax": "^1.5.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/svgo/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/svgo/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/tapable": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser": { + "version": "5.51.2", + "resolved": "https://registry.npmmirror.com/terser/-/terser-5.51.2.tgz", + "integrity": "sha512-bWnjSNscmuI+GJze6ZupnHP8G/cTcsJF+bXCeQknk2SHQsgbNJnLrqiH9jZ2W4STPVXH2mDKKRX3iwPhc9Cn/Q==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.15.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", + "license": "MIT" + }, + "node_modules/tinyexec": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/tinyexec/-/tinyexec-1.3.1.tgz", + "integrity": "sha512-GCvB3aoys96IuDFBMcTB46JOR6mdMtAToqwiW8JlWhsoh1mhHi/xn9ss/Dg7N555GiJyEt2qzoG/NHCwM6h1EA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmmirror.com/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmmirror.com/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-regex/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/traverse": { + "version": "0.6.11", + "resolved": "https://registry.npmmirror.com/traverse/-/traverse-0.6.11.tgz", + "integrity": "sha512-vxXDZg8/+p3gblxB6BhhG5yWVn1kGRlaL8O78UDXc3wRnPizB5g83dcvWV1jpDMIPnjZjOFuxlMmE82XJ4407w==", + "dev": true, + "license": "MIT", + "dependencies": { + "gopd": "^1.2.0", + "typedarray.prototype.slice": "^1.0.5", + "which-typed-array": "^1.1.18" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD" + }, + "node_modules/type-level-regexp": { + "version": "0.1.17", + "resolved": "https://registry.npmmirror.com/type-level-regexp/-/type-level-regexp-0.1.17.tgz", + "integrity": "sha512-wTk4DH3cxwk196uGLK/E9pE45aLfeKJacKmcEgEOA/q5dnPGNxXt0cfYdFxb57L+sEpf1oJH4Dnx/pnRcku9jg==", + "dev": true, + "license": "MIT" + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.5.tgz", + "integrity": "sha512-0FHJvLPqZ7KJzp17O13jfsAjsqazgrxBu2zEK95PmUz8lv2+GjRuxUInCr2Rk9Dms3ihN21zJ929ZO43yJ95QQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.9", + "for-each": "^0.3.5", + "gopd": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.8.tgz", + "integrity": "sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.9", + "for-each": "^0.3.5", + "gopd": "^1.2.0", + "is-typed-array": "^1.1.15", + "possible-typed-array-names": "^1.1.0", + "reflect.getprototypeof": "^1.0.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray.prototype.slice": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/typedarray.prototype.slice/-/typedarray.prototype.slice-1.0.5.tgz", + "integrity": "sha512-q7QNVDGTdl702bVFiI5eY4l/HkgCM6at9KhcFbgUAzezHFbOVy4+0O/lCjsABEQwbZPravVfBIiBVGo89yzHFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "math-intrinsics": "^1.1.0", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-offset": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ufo": { + "version": "1.6.4", + "resolved": "https://registry.npmmirror.com/ufo/-/ufo-1.6.4.tgz", + "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==", + "dev": true, + "license": "MIT" + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unconfig": { + "version": "7.5.0", + "resolved": "https://registry.npmmirror.com/unconfig/-/unconfig-7.5.0.tgz", + "integrity": "sha512-oi8Qy2JV4D3UQ0PsopR28CzdQ3S/5A1zwsUwp/rosSbfhJ5z7b90bIyTwi/F7hCLD4SGcZVjDzd4XoUQcEanvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@quansync/fs": "^1.0.0", + "defu": "^6.1.4", + "jiti": "^2.6.1", + "quansync": "^1.0.0", + "unconfig-core": "7.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unconfig-core": { + "version": "7.5.0", + "resolved": "https://registry.npmmirror.com/unconfig-core/-/unconfig-core-7.5.0.tgz", + "integrity": "sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@quansync/fs": "^1.0.0", + "quansync": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/unimport": { + "version": "3.14.6", + "resolved": "https://registry.npmmirror.com/unimport/-/unimport-3.14.6.tgz", + "integrity": "sha512-CYvbDaTT04Rh8bmD8jz3WPmHYZRG/NnvYVzwD6V1YAlvvKROlAeNDUBhkBGzNav2RKaeuXvlWYaa1V4Lfi/O0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.1.4", + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.1", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.0", + "scule": "^1.3.0", + "strip-literal": "^2.1.1", + "unplugin": "^1.16.1" + } + }, + "node_modules/unimport/node_modules/confbox": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.3.1.tgz", + "integrity": "sha512-cKUSoKa8YxFZZSmraVi7onONx3amu77ngK3kGpsYHDH7drPwCRkQE1RYMPlLRrMtnciRj274XNRxcHxnKmDSnA==", + "dev": true, + "license": "MIT" + }, + "node_modules/unimport/node_modules/local-pkg": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-1.2.1.tgz", + "integrity": "sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.3.0", + "quansync": "^0.2.11" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unimport/node_modules/local-pkg/node_modules/pkg-types": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-2.3.3.tgz", + "integrity": "sha512-j/lCFdcppV0JxWpCEITdbDltBxPP6cHT+yNJ6Go2OgoSA9518X847X9z0p6LtA4Nc16+eQzCZjRrWanTGvHJ5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "confbox": "^0.3.1", + "exsolve": "^1.1.1", + "pathe": "^2.0.3" + } + }, + "node_modules/unimport/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/unimport/node_modules/quansync": { + "version": "0.2.11", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.11.tgz", + "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, + "node_modules/unimport/node_modules/unplugin": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-1.16.1.tgz", + "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unocss": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/unocss/-/unocss-66.10.5.tgz", + "integrity": "sha512-hts6uxRjtEdOLmdmo0Mbh5k3jrHsjsQlU3rFJdtob+wu57iM5b+d70fnxqMWe7yF/OBeiZKW6H+ti0qHNJBKPw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@unocss/cli": "66.10.5", + "@unocss/core": "66.10.5", + "@unocss/preset-attributify": "66.10.5", + "@unocss/preset-icons": "66.10.5", + "@unocss/preset-mini": "66.10.5", + "@unocss/preset-tagify": "66.10.5", + "@unocss/preset-typography": "66.10.5", + "@unocss/preset-uno": "66.10.5", + "@unocss/preset-web-fonts": "66.10.5", + "@unocss/preset-wind": "66.10.5", + "@unocss/preset-wind3": "66.10.5", + "@unocss/preset-wind4": "66.10.5", + "@unocss/rollup": "66.10.5", + "@unocss/transformer-attributify-jsx": "66.10.5", + "@unocss/transformer-compile-class": "66.10.5", + "@unocss/transformer-directives": "66.10.5", + "@unocss/transformer-variant-group": "66.10.5", + "@unocss/vite": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@unocss/astro": "66.10.5", + "@unocss/postcss": "66.10.5", + "@unocss/webpack": "66.10.5" + }, + "peerDependenciesMeta": { + "@unocss/astro": { + "optional": true + }, + "@unocss/postcss": { + "optional": true + }, + "@unocss/webpack": { + "optional": true + } + } + }, + "node_modules/unplugin": { + "version": "2.3.11", + "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-2.3.11.tgz", + "integrity": "sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "acorn": "^8.15.0", + "picomatch": "^4.0.3", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unplugin-auto-import": { + "version": "0.18.3", + "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.18.3.tgz", + "integrity": "sha512-q3FUtGQjYA2e+kb1WumyiQMjHM27MrTQ05QfVwtLRVhyYe+KF6TblBYaEX9L6Z0EibsqaXAiW+RFfkcQpfaXzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@antfu/utils": "^0.7.10", + "@rollup/pluginutils": "^5.1.0", + "fast-glob": "^3.3.2", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.11", + "minimatch": "^9.0.5", + "unimport": "^3.12.0", + "unplugin": "^1.14.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/unplugin-auto-import/node_modules/unplugin": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-1.16.1.tgz", + "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.14.0", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/unplugin-utils": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.3.2.tgz", + "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.3.3", + "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.3.3.tgz", + "integrity": "sha512-pJ2sYawQS0R/WI928Gj5GlPhTGzbMelq0+4INtSYNDV9ErKJcX6xjGWkoG/VnB3dpUm00zALaqkrUD77pO5TDQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", + "dev": true, + "license": "MIT" + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/v-click-outside-x": { + "version": "3.7.1", + "resolved": "https://registry.npmmirror.com/v-click-outside-x/-/v-click-outside-x-3.7.1.tgz", + "integrity": "sha512-WmUgmcIXr9clVpm1AYS/FgHtcDicfnfoxgQCNg4O6vfk9GVnxA0vSqO321ogUo0b7czYTidj7fQENvWFMWOkUg==", + "license": "MIT", + "engines": { + "node": ">=8.11.4", + "npm": "6.4.1" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/view-ui-plus": { + "version": "1.3.24", + "resolved": "https://registry.npmmirror.com/view-ui-plus/-/view-ui-plus-1.3.24.tgz", + "integrity": "sha512-umhDHnCPGIHCQYYyZDw3AfGSQqlUThR4/eEZjtzCFrrjLzXpE6I8eIggzZQGKHK3zKzRTopDYJsyeFb+K9MLuQ==", + "license": "MIT", + "dependencies": { + "async-validator": "^3.3.0", + "countup.js": "^1.9.3", + "dayjs": "^1.11.0", + "deepmerge": "^2.2.1", + "element-resize-detector": "^1.2.0", + "js-calendar": "^1.2.3", + "lodash.chunk": "^4.2.0", + "lodash.throttle": "^4.1.1", + "numeral": "^2.0.6", + "popper.js": "^1.14.6", + "select": "^1.1.2", + "tinycolor2": "^1.4.1", + "v-click-outside-x": "^3.7.1" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmmirror.com/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-html": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/vite-plugin-html/-/vite-plugin-html-3.2.2.tgz", + "integrity": "sha512-vb9C9kcdzcIo/Oc3CLZVS03dL5pDlOFuhGlZYDCJ840BhWl/0nGeZWf3Qy7NlOayscY4Cm/QRgULCQkEZige5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^4.2.0", + "colorette": "^2.0.16", + "connect-history-api-fallback": "^1.6.0", + "consola": "^2.15.3", + "dotenv": "^16.0.0", + "dotenv-expand": "^8.0.2", + "ejs": "^3.1.6", + "fast-glob": "^3.2.11", + "fs-extra": "^10.0.1", + "html-minifier-terser": "^6.1.0", + "node-html-parser": "^5.3.3", + "pathe": "^0.2.0" + }, + "peerDependencies": { + "vite": ">=2.0.0" + } + }, + "node_modules/vite-plugin-html/node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/vite-plugin-html/node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmmirror.com/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite-plugin-html/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite-plugin-html/node_modules/pathe": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/pathe/-/pathe-0.2.0.tgz", + "integrity": "sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite-plugin-html/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/vite-plugin-svg-icons": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/vite-plugin-svg-icons/-/vite-plugin-svg-icons-2.0.1.tgz", + "integrity": "sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/svgo": "^2.6.1", + "cors": "^2.8.5", + "debug": "^4.3.3", + "etag": "^1.8.1", + "fs-extra": "^10.0.0", + "pathe": "^0.2.0", + "svg-baker": "1.7.0", + "svgo": "^2.8.0" + }, + "peerDependencies": { + "vite": ">=2.0.0" + } + }, + "node_modules/vite-plugin-svg-icons/node_modules/pathe": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/pathe/-/pathe-0.2.0.tgz", + "integrity": "sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vscode-uri": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.2.0.tgz", + "integrity": "sha512-m2gXo3bn0G1kT9InzMf07fTbqMbGtyckj3bH5ktLO+1Ssv+yiATZ4dhwaQv9UZWxJh6E9IFGnQyjgWVDWVBDrg==", + "dev": true, + "license": "MIT" + }, + "node_modules/vue": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.43.tgz", + "integrity": "sha512-o5qZoksdnjIKvW1srZ3ab7pcDNYAerBjRe54D0LBLfRdCYFrSgBHVXokMas35czQc0//lmx4/tuY4ZNQ+Rf2Ng==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.43", + "@vue/compiler-sfc": "3.5.43", + "@vue/runtime-dom": "3.5.43", + "@vue/server-renderer": "3.5.43", + "@vue/shared": "3.5.43" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-router": { + "version": "4.6.4", + "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.6.4.tgz", + "integrity": "sha512-Hz9q5sa33Yhduglwz6g9skT8OBPii+4bFn88w6J+J4MfEo4KRRpmiNG/hHHkdbRFlLBOqxN8y8gf2Fb0MTUgVg==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/vue-tsc": { + "version": "2.2.12", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.2.12.tgz", + "integrity": "sha512-P7OP77b2h/Pmk+lZdJ0YWs+5tJ6J2+uOQPo7tlBnY44QqQSPYvS0qVT4wqDJgwrZaLe47etJLLQRFia71GYITw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "2.4.15", + "@vue/language-core": "2.2.12" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + }, + "node_modules/watchpack": { + "version": "2.5.2", + "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.5.2.tgz", + "integrity": "sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.111.1", + "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.111.1.tgz", + "integrity": "sha512-cNypaz0RP+S4cvQVi1M/3bRUkvNP0xZpL0TjFx+c6jg64VbxD+2weWDgY9UnjRI6dhZgtaj8DU76GGFcJ79xPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/estree": "^1.0.8", + "@types/json-schema": "^7.0.15", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "browserslist": "^4.28.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.25.0", + "es-module-lexer": "^2.1.0", + "events": "^3.2.0", + "graceful-fs": "^4.2.11", + "mime-db": "^1.54.0", + "minimizer-webpack-plugin": "^5.7.0", + "schema-utils": "^4.5.0", + "tapable": "^2.3.0", + "watchpack": "^2.5.2", + "webpack-sources": "^3.5.1" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.5.1", + "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.5.1.tgz", + "integrity": "sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/webpack/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.5.0.tgz", + "integrity": "sha512-zJlMCZ0cAR5p/Y4oVpRoqioDMJcGxaXRrQ/4rP4WyR84vc5z/DolXdbvXeDpTwbtocDFr2rhPqHPErDCUtz2kA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.15", + "ajv": "^8.20.0", + "ajv-formats": "^3.0.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.24", + "resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.24.tgz", + "integrity": "sha512-wk4Mf4pR5mRP7eYuuTBCIQ9d0ud2Fv2jRLQpfgnRjbOxAFHmjKFValgTpitVKzJJS8ajnYQV2Du1SZ8j6b/EUQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..00a17b1 --- /dev/null +++ b/package.json @@ -0,0 +1,34 @@ +{ + "name": "open-gateway-front", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --mode dev", + "typecheck": "vue-tsc --noEmit", + "build": "vite build --mode base", + "build:base": "vite build --mode base", + "preview": "vite preview" + }, + "dependencies": { + "alova": "^3.4.0", + "sass": "^1.64.1", + "view-ui-plus": "^1.3.16", + "vue": "^3.4.19", + "vue-router": "4" + }, + "devDependencies": { + "@types/node": "^20.4.4", + "@unocss/preset-rem-to-px": "^66.6.0", + "@unocss/preset-uno": "^66.6.0", + "@vitejs/plugin-vue": "^5.0.4", + "sass-loader": "^10.0.1", + "typescript": "^5.2.2", + "unocss": "^66.6.0", + "unplugin-auto-import": "0.18.3", + "vite": "^5.1.4", + "vite-plugin-html": "^3.2.2", + "vite-plugin-svg-icons": "^2.0.1", + "vue-tsc": "^2.2.12" + } +} diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..867568a --- /dev/null +++ b/src/App.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/src/api/apiDefinitions.ts b/src/api/apiDefinitions.ts new file mode 100644 index 0000000..9786b55 --- /dev/null +++ b/src/api/apiDefinitions.ts @@ -0,0 +1,17 @@ +/** + * 网关治理管理面接口定义(手写)。 + *

+ * 说明:open-gateway 文档端点 {@code /v3/api-docs} 属网关自身路径(RoutingFilter 已白名单旁路), + * 但出口仅容器网内可达,本地/CI 无法执行 alova wormhole 的 api:gen,故本文件手写。 + * 键名 = 后端 {@code @Operation(operationId=...)}(见 InternalAdminController / RouteRefreshController), + * 保持与 UserBase/Notice 生成物同形:{@code [method, path]}。 + */ +export default { + 'GatewayAdmin.page': ['GET', '/api/internal/admin/page'], + 'GatewayAdmin.routes': ['GET', '/api/internal/admin/routes'], + 'GatewayAdmin.updateRoute': ['PUT', '/api/internal/admin/routes/{id}'], + 'GatewayAdmin.targets': ['GET', '/api/internal/admin/targets'], + 'GatewayAdmin.updateTarget': ['PUT', '/api/internal/admin/targets/{id}'], + 'GatewayAdmin.logs': ['GET', '/api/internal/admin/logs'], + 'GatewayAdmin.refresh': ['POST', '/api/internal/routes/refresh'], +}; diff --git a/src/api/createApis.ts b/src/api/createApis.ts new file mode 100644 index 0000000..d23d239 --- /dev/null +++ b/src/api/createApis.ts @@ -0,0 +1,87 @@ +/// +/* tslint:disable */ +/* eslint-disable */ +/** + * 接口调用代理工厂(与 UserBase/Notice 同形,来源为 alova 生成器的运行时部分)。 + * 依据 apiDefinitions 的 [method, url] 构造 alova Method;{path} 占位由 pathParams 替换。 + */ +import { Method } from 'alova'; +import apiDefinitions from './apiDefinitions'; + +const cache = Object.create(null); +const createFunctionalProxy = ( + array: (string | symbol)[], + alovaInstance: Alova, + configMap: any +) => { + const apiPathKey = array.join('.') as keyof typeof apiDefinitions; + if (cache[apiPathKey]) { + return cache[apiPathKey]; + } + // create a new proxy instance + const proxy = new Proxy(function () {}, { + get(_, property) { + // record the target property, so that it can get the completed accessing paths + const newArray = [...array, property]; + // always return a new proxy to continue recording accessing paths. + return createFunctionalProxy(newArray, alovaInstance, configMap); + }, + apply(_, __, [config]) { + const apiItem = apiDefinitions[apiPathKey]; + if (!apiItem) { + throw new Error(`the api path of \`${apiPathKey}\` is not found`); + } + const mergedConfig = { + ...configMap[apiPathKey], + ...config + }; + const [method, url] = apiItem; + const pathParams = mergedConfig.pathParams; + const urlReplaced = url!.replace(/\{([^}]+)\}/g, (_, key) => { + const pathParam = pathParams[key]; + return pathParam; + }); + delete mergedConfig.pathParams; + let data = mergedConfig.data; + if (Object.prototype.toString.call(data) === '[object Object]' && typeof FormData !== 'undefined') { + let hasBlobData = false; + const formData = new FormData(); + for (const key in data) { + if (Array.isArray(data[key])) { + for (const ele of data[key]) { + formData.append(key, ele); + if (ele instanceof Blob) { + hasBlobData = true; + } + } + } else { + formData.append(key, data[key]); + if (data[key] instanceof Blob) { + hasBlobData = true; + } + } + } + data = hasBlobData ? formData : data; + } + return new Method(method!.toUpperCase() as MethodType, alovaInstance, urlReplaced, mergedConfig, data); + } + }); + cache[apiPathKey] = proxy; + return proxy; +}; + +export const createApis = (alovaInstance: Alova, configMap: any) => { + const Apis = new Proxy({} as Apis, { + get(_, property) { + return createFunctionalProxy([property], alovaInstance, configMap); + } + }); + return Apis; +}; + +export const mountApis = (Apis: Apis) => { + // define global variable `Apis` + (globalThis as any).Apis = Apis; +}; + +export const withConfigType = (config: Config) => config; diff --git a/src/api/globals.d.ts b/src/api/globals.d.ts new file mode 100644 index 0000000..8d6252d --- /dev/null +++ b/src/api/globals.d.ts @@ -0,0 +1,37 @@ +/* 手写精简版(替代 alova wormhole 生成物):只声明本工程 Apis 代理机制所需的最小类型。 + 网关无 api:gen 通路(文档端点仅容器网内可达),故不生成全量接口类型。 + 所有类型必须挂在 declare global 下——createApis.ts 是裸引用(不 import)。 */ +declare global { + type MethodType = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD' | 'OPTIONS'; + + /** 调用配置(params/pathParams/data/cacheFor 等,宽松即可) */ + interface Alova2MethodConfig { + params?: Record; + pathParams?: Record; + data?: any; + headers?: Record; + cacheFor?: any; + [key: string]: any; + } + + /** alova 实例占位(仅作为 createApis 形参,不参与类型推导) */ + type Alova = any; + + /** Api 方法返回形态(实际为 alova Method 实例) */ + type ApiMethod = any; + + /** 按命名空间分组的接口代理(如 Apis.GatewayAdmin.logs(...)) */ + interface Apis { + [namespace: string]: { + [method: string]: (config?: Alova2MethodConfig) => ApiMethod; + }; + } + + interface MethodsConfigMap { + [key: string]: Alova2MethodConfig; + } + + const Apis: Apis; +} + +export {}; diff --git a/src/api/index.ts b/src/api/index.ts new file mode 100644 index 0000000..dc983dd --- /dev/null +++ b/src/api/index.ts @@ -0,0 +1,11 @@ +import { createApis, withConfigType, mountApis } from "./createApis"; + +import { alovaInstance } from "@/utils/alova/alova-iview"; + +export const $$userConfigMap = withConfigType({}); + +const Apis = createApis(alovaInstance, $$userConfigMap); + +mountApis(Apis); + +export default Apis; diff --git a/src/assets/config/host.config.ts b/src/assets/config/host.config.ts new file mode 100644 index 0000000..cf620db --- /dev/null +++ b/src/assets/config/host.config.ts @@ -0,0 +1,81 @@ +import { BaseConf } from "@/types/Basics"; + +/** + * 配置优先级(高 → 低): + * ① window.__APP_CONFIG__:线上运行时配置,index.html 引导脚本在应用模块加载前同步拉取 + * /<应用>/<前端目标>/api/env-config?target=xxx(projman 配置管理在线维护、双写 Nacos)写入 + * ② import.meta.env.VITE_*:仅本地开发(vite dev --mode dev 读 .env.dev)——值可自由指本地 + * 或线上地址,供联调切换;build(production mode)时 .env/.env.production 均不存在, + * VITE_* 恒为 undefined,本层自动跳过,产物不含任何环境值 + * ③ 同域推导兜底:env-config 拉取失败(线上后端/Nacos 不可用)时框架至少能渲染; + * ssoHost/relayConf 为空 → 登录与跨域中转不可用——与后端不可用状态一致,可接受。 + */ +const env = import.meta.env; + +// ③ 同域推导兜底:context 段取当前路径首段(/userbase/front/ → userbase),与服务端 context-path 对齐 +const ctxSeg = (window.location.pathname.split("/").filter(Boolean)[0] || "") as string; +const origin = window.location.origin; + +let conf: BaseConf = { + baseHost: origin, + ssoHost: "", + serviceHost: ctxSeg ? `${origin}/${ctxSeg}` : origin, + relayConf: { + ziyuankuHost: "", + zhuanxiangHost: "", + }, + isMock: false, + isDebug: env.DEV, +}; + +// 逐键覆盖:只覆盖来源里实际出现且非空的键(含 relayConf 二级逐键合并),未出现的键沿用底层值 +const applyConf = (target: any, source: any) => { + if (!source || typeof source !== "object") return; + const { relayConf, ...flat } = source; + Object.keys(flat).forEach(key => { + if (flat[key] !== undefined && flat[key] !== null && flat[key] !== "") { + (target as any)[key] = flat[key]; + } + }); + if (relayConf && typeof relayConf === "object") { + if (!target.relayConf || typeof target.relayConf !== "object") target.relayConf = {}; + Object.keys(relayConf).forEach(key => { + if (relayConf[key]) target.relayConf[key] = relayConf[key]; + }); + } +}; + +// ② 本地开发(.env.dev;构建产物中恒 undefined → 自动跳过) +applyConf(conf, { + baseHost: env.VITE_BASE_HOST, + ssoHost: env.VITE_SSO_HOST, + serviceHost: env.VITE_SERVICE_HOST, + relayConf: { + ziyuankuHost: env.VITE_ZIYUANKU_HOST, + zhuanxiangHost: env.VITE_ZHUANXIANG_HOST, + }, + isMock: env.VITE_IS_MOCK === "true", +}); + +// ① 线上运行时配置(最高优先,覆盖前面所有) +applyConf(conf, (window as any).__APP_CONFIG__); + +// HTTPS 自动升级:当前页面是 https 时,将所有 http:// 配置项升级为 https:// +if ("https:" === document.location.protocol) { + Object.keys(conf).forEach(element => { + if (typeof conf[element] === "string" && conf[element].indexOf("http://") > -1) { + conf[element] = conf[element].replace("http://", "https://"); + } + }); + // relayConf 内部也需要处理 + if (conf.relayConf) { + Object.keys(conf.relayConf).forEach(key => { + const val = (conf.relayConf as any)[key]; + if (typeof val === "string" && val.indexOf("http://") > -1) { + (conf.relayConf as any)[key] = val.replace("http://", "https://"); + } + }); + } +} + +export default conf; diff --git a/src/assets/icons/logout.svg b/src/assets/icons/logout.svg new file mode 100644 index 0000000..2e3a808 --- /dev/null +++ b/src/assets/icons/logout.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/menu/icon-1.svg b/src/assets/icons/menu/icon-1.svg new file mode 100644 index 0000000..412a3ff --- /dev/null +++ b/src/assets/icons/menu/icon-1.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/icons/menu/icon-2.svg b/src/assets/icons/menu/icon-2.svg new file mode 100644 index 0000000..03b9a82 --- /dev/null +++ b/src/assets/icons/menu/icon-2.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-3.svg b/src/assets/icons/menu/icon-3.svg new file mode 100644 index 0000000..03b9a82 --- /dev/null +++ b/src/assets/icons/menu/icon-3.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-4.svg b/src/assets/icons/menu/icon-4.svg new file mode 100644 index 0000000..03b9a82 --- /dev/null +++ b/src/assets/icons/menu/icon-4.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-5.svg b/src/assets/icons/menu/icon-5.svg new file mode 100644 index 0000000..03b9a82 --- /dev/null +++ b/src/assets/icons/menu/icon-5.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-6.svg b/src/assets/icons/menu/icon-6.svg new file mode 100644 index 0000000..03b9a82 --- /dev/null +++ b/src/assets/icons/menu/icon-6.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-tree-1.svg b/src/assets/icons/menu/icon-tree-1.svg new file mode 100644 index 0000000..eb5198d --- /dev/null +++ b/src/assets/icons/menu/icon-tree-1.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-tree-2.svg b/src/assets/icons/menu/icon-tree-2.svg new file mode 100644 index 0000000..36a3f67 --- /dev/null +++ b/src/assets/icons/menu/icon-tree-2.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-tree-3.svg b/src/assets/icons/menu/icon-tree-3.svg new file mode 100644 index 0000000..2783ef2 --- /dev/null +++ b/src/assets/icons/menu/icon-tree-3.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-tree-4.svg b/src/assets/icons/menu/icon-tree-4.svg new file mode 100644 index 0000000..4c5e26a --- /dev/null +++ b/src/assets/icons/menu/icon-tree-4.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menu/icon-tree-5.svg b/src/assets/icons/menu/icon-tree-5.svg new file mode 100644 index 0000000..960aad9 --- /dev/null +++ b/src/assets/icons/menu/icon-tree-5.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/menudefalut.svg b/src/assets/icons/menudefalut.svg new file mode 100644 index 0000000..3cfbfd7 --- /dev/null +++ b/src/assets/icons/menudefalut.svg @@ -0,0 +1,16 @@ + + + \ No newline at end of file diff --git a/src/assets/icons/module-item.svg b/src/assets/icons/module-item.svg new file mode 100644 index 0000000..8a9a5e3 --- /dev/null +++ b/src/assets/icons/module-item.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/icons/operation-btn-add.svg b/src/assets/icons/operation-btn-add.svg new file mode 100644 index 0000000..5c02284 --- /dev/null +++ b/src/assets/icons/operation-btn-add.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/operation-btn-del.svg b/src/assets/icons/operation-btn-del.svg new file mode 100644 index 0000000..430b16f --- /dev/null +++ b/src/assets/icons/operation-btn-del.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/assets/icons/shouye.svg b/src/assets/icons/shouye.svg new file mode 100644 index 0000000..f685b5d --- /dev/null +++ b/src/assets/icons/shouye.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/tree-line.svg b/src/assets/icons/tree-line.svg new file mode 100644 index 0000000..f3580e8 --- /dev/null +++ b/src/assets/icons/tree-line.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/icons/tree/icon-1.svg b/src/assets/icons/tree/icon-1.svg new file mode 100644 index 0000000..b21b8bd --- /dev/null +++ b/src/assets/icons/tree/icon-1.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/icons/tree/icon-2.svg b/src/assets/icons/tree/icon-2.svg new file mode 100644 index 0000000..7ebe648 --- /dev/null +++ b/src/assets/icons/tree/icon-2.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/icons/tree/icon-3.svg b/src/assets/icons/tree/icon-3.svg new file mode 100644 index 0000000..1e0acda --- /dev/null +++ b/src/assets/icons/tree/icon-3.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/assets/icons/tree/icon-4.svg b/src/assets/icons/tree/icon-4.svg new file mode 100644 index 0000000..fccc402 --- /dev/null +++ b/src/assets/icons/tree/icon-4.svg @@ -0,0 +1 @@ + diff --git a/src/assets/icons/tree/icon-5.svg b/src/assets/icons/tree/icon-5.svg new file mode 100644 index 0000000..292a397 --- /dev/null +++ b/src/assets/icons/tree/icon-5.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/assets/icons/tree/icon-6.svg b/src/assets/icons/tree/icon-6.svg new file mode 100644 index 0000000..f53953b --- /dev/null +++ b/src/assets/icons/tree/icon-6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/upload-add.svg b/src/assets/icons/upload-add.svg new file mode 100644 index 0000000..11b21db --- /dev/null +++ b/src/assets/icons/upload-add.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/icons/widget-close.svg b/src/assets/icons/widget-close.svg new file mode 100644 index 0000000..730f8a3 --- /dev/null +++ b/src/assets/icons/widget-close.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/image/default-bg1.png b/src/assets/image/default-bg1.png new file mode 100644 index 0000000000000000000000000000000000000000..2fc0e64c8efd9a14c7e5e6123d2f2e9c7fd8e638 GIT binary patch literal 13463 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 B_n`m) literal 0 HcmV?d00001 diff --git a/src/assets/image/loading.gif b/src/assets/image/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..37eea7b1630a53f88120cdec03aab7d8e5d3896c GIT binary patch literal 190738 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%0DcNTA8JmZIOnf&7309B}- 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 + + + + + + + + + + diff --git a/src/assets/image/tree-icon-group.png b/src/assets/image/tree-icon-group.png new file mode 100644 index 0000000000000000000000000000000000000000..ddcdcf09911557efc8fa94f6ddc3b3ba2a8b0a48 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+1|-AI^@Rf|&H|6fVg?3oVGw3ym^DWND9BhG zP7XP>KmB2-j wT>lCC&Mdayc6fb{wp)^*uZmEc@|pQeIm|M%njO8j0-eX;>FVdQ&MBb@08gS?Q~&?~ literal 0 HcmV?d00001 diff --git a/src/assets/image/tree-icon-item.png b/src/assets/image/tree-icon-item.png new file mode 100644 index 0000000000000000000000000000000000000000..6df8ed2c0e794754b6c1c6b234800fda3bb4a7e1 GIT binary patch literal 524 zcmV+n0`vWeP)t)cen_z(uyB&*ecadIyZ77{7?*N2!E(n!8+1Z!nzMugBM1TUOwWZX%Km^e!a7$ASqe*6{Q-(a|Z*Y3rm z@-wT@v@if+;RD66@h<4}fdg7+CjfnUR^h6Q zCaJU*87u&UHjMo|>I5uSZwRDN17ztPKv|v>0XUpdp!+vbaoQ+5t>2&onht@|)KOZO z2*6Tt*r^0eefm$=q&Ch(ZEYULN(N}t`h_eEfPvH)_~I1oNfp_P2Ho-m3EGv02kmEM z@&iq^8M=CN3HJH|wD+b5Y_-AX7&uFUT{ghZpMmD5%jRUdE=}+5+KDLnp18n57Ff-A zF*k$95J2DvF&y@6zn`5(wHZE;r4!zMKR{2jBf!o#)fX_dB+&m4$D.ivu-tabs-bar .ivu-tabs-tab{border-radius:0;background:#fff;margin-right:-1px;border-color:#EBEEF5 !important;height:39px;line-height:28px}.base-wrap-main .tabs-panel.ivu-tabs.ivu-tabs-card>.ivu-tabs-bar .ivu-tabs-tab.ivu-tabs-tab-active{color:#5979EA !important;height:40px}.base-wrap-main .tabs-panel.ivu-tabs.ivu-tabs-card .ivu-tabs-bar{border-color:#EBEEF5 !important;margin-bottom:0}.base-wrap-main .tabs-panel.ivu-tabs.ivu-tabs-card>.ivu-tabs-bar.ivu-tabs-tab-active{border-top:1px solid #EBEEF5}.base-wrap-main .tabs-panel.ivu-tabs.ivu-tabs-card>.ivu-tabs-bar .ivu-tabs-nav-container{height:40px}.base-wrap-main .btn-panel{margin-left:28px}.base-wrap-main.alone-page{padding-left:0}.search-wrap{background:#f7f7f7;padding:10px 16px;height:52px}.search-wrap_date .ivu-date-picker{width:150px}.search-wrap_sel{width:150px;float:left}.search-wrap_input{width:200px;float:left}.public-custom-switch .ivu-radio-wrapper-checked{background:#6b8cf4 !important;border-color:#6b8cf4 !important}.public-custom-switch .ivu-radio-group-item{width:90px;text-align:center}.public-upload-img li{width:100px;height:100px;border:1px solid #eee;border-radius:2px;padding:4px;position:relative;float:left;margin:0 10px 10px 0}.public-upload-img li img{width:100%;height:100%;object-fit:contain}.public-upload-img li:hover .upload-list-cover{display:block}.public-upload-img li .upload-list-cover{position:absolute;top:4px;bottom:4px;left:4px;right:4px;background:rgba(0,0,0,0.6);text-align:center;display:none;transition:all .3s}.public-upload-img li .upload-list-cover i{color:#fff;position:relative;top:50%;cursor:pointer;transform:translateY(-50%)}.public-upload-img li.add-li{border:none;padding:0;width:100px;height:100px}.public-upload-img li .add-box i{line-height:100px}.ivu-btn{font-size:14px;line-height:20px}.ivu-btn span{margin:0 3px}.ivu-btn-large{height:36px}a.ivu-btn-large{line-height:36px}.ivu-btn-primary{border-color:#5979EA;background:#5979EA}.ivu-btn-primary:hover{background:#708bed;border-color:#708bed}.ivu-btn-primary:active{background:#2c54e4;border-color:#2c54e4}.ivu-btn-primary.ivu-btn-ghost{background-color:#fff;color:#5979EA;border-color:#5979EA}.ivu-btn-success{border-color:#45B972;background:#45B972}.ivu-btn-success:hover{background:#57c080;border-color:#57c080}.ivu-btn-success:active{background:#37945b;border-color:#37945b}.ivu-btn-success.ivu-btn-ghost{background-color:#fff;color:#45B972;border-color:#45B972}.ivu-btn-error{border-color:#ed4d4d;background:#ed4d4d}.ivu-btn-error:hover{background:#ef6464;border-color:#ef6464}.ivu-btn-error:active{background:#e81f1f;border-color:#e81f1f}.ivu-btn-error.ivu-btn-ghost{background-color:#fff;color:#ed4d4d;border-color:#ed4d4d}.ivu-input-search{border-color:#5979EA !important;background:#5979EA !important}.ivu-input-search:hover{background:#708bed !important;border-color:#708bed !important}.ivu-input-search:active{background:#2c54e4 !important;border-color:#2c54e4 !important}.ivu-input-search.ivu-btn-ghost{background-color:#fff !important;color:#5979EA !important;border-color:#5979EA !important}.ivu-table-wrapper{border:none}.ivu-table::after{background:none}.ivu-table::before{background:none}.ivu-table-header th,.ivu-table-fixed-header th{height:48px !important;color:#595959;font-size:14px;background:#fff;border:none}.ivu-table td{height:48px;border:none;border-top:1px solid #ecedf3}.ivu-table td span{font-size:14px;font-family:"Microsoft YaHei","微软雅黑" !important}.ivu-table td .ivu-icon{font-family:'Ionicons' !important}.ivu-tabs-bar{margin-bottom:10px;border-bottom:1px solid #EBEEF5}.ivu-tabs-bar .ivu-tabs-ink-bar{background:#5979EA}.ivu-tabs-bar .ivu-tabs-tab-active,.ivu-tabs-bar .ivu-tabs-tab:hover,.ivu-tabs-bar .ivu-tabs-tab:active,.ivu-tabs-bar .ivu-tabs-tab-focused{color:#5979EA}.ivu-form-item{margin-bottom:20px}.ivu-form-item-error-tip{font-size:13px;padding-top:4px}.ivu-alert{margin-bottom:12px !important}.ivu-modal-wrap{display:flex;align-items:center;transform:translateY(0%)}.ivu-modal-wrap .ivu-form-item:last-child{margin-bottom:0px}.ivu-modal{top:0 !important}.ivu-modal-body{max-height:550px;overflow:auto}.ivu-table-cell .operating-btn{width:32px;height:32px;position:relative;display:block;border-radius:50%;color:gray;font-size:18px;margin-top:2px;line-height:32px;cursor:pointer}.ivu-table-cell .operating-btn:hover{background:#9e89cf;color:#fff}.ivu-table-cell .operating-btn.disabled{color:#c5c8ce;opacity:.3;cursor:not-allowed}.ivu-table-cell .operating-btn.disabled:hover{background:#fff}.ivu-table-cell .operating-link{display:inline-block;color:#2d8cf0;cursor:pointer;padding-right:10px}.ivu-table-cell .operating-link.disabled{color:#aaa;cursor:default}.status-shenhe span::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin:auto 10px auto 0px;background-color:#e8a54c}.status-tongguo span::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin:auto 10px auto 0px;background-color:#45B972}.status-chexiao span::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin:auto 10px auto 0px;background-color:#bfbfbf}.status-jujue span::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin:auto 10px auto 0px;background-color:#ed4d4d}.header-container{background:#577afb}.header-container .school-bg{display:none}.left-menu{background:#F6F8F9}.left-menu li:hover{background:#EFF4FF}.left-menu li.active{background:#EFF4FF;border-left:none ;border-right:4px solid #577afb} +/* ============================================================ + 菜单高亮闪烁修复(本地化后追加,优先级最高) + 问题:原 .left-menu li 设了 transition:border 200ms, + 切换 A→B 时 active 的 border-left(border-right) 在 + transparent/none 与 4px #577afb 之间做 200ms 动画, + 导致离开的项左侧出现一闪而逝的淡蓝边框。 + 修复:仅过渡 background-color,边框变化即时生效; + 明确 active 仅保留右侧 4px 蓝边、无左侧边框。 + ============================================================ */ +.left-menu li { + border-left: 0 solid transparent; + border-right: 0 solid transparent; + transition: background-color 200ms; +} +.left-menu li a { + border-right: 1px solid #EBEEF4; + transition: none; +} +.left-menu li.active { + background: #EFF4FF; + border-left: 0; + border-right: 4px solid #577afb; +} +.left-menu li.active a { + border-right: none; +} +.left-menu li:hover { + background: #EFF4FF; +} +.left-menu li:hover a { + border-right: none; +} diff --git a/src/assets/styles/main.scss b/src/assets/styles/main.scss new file mode 100644 index 0000000..bc3eb21 --- /dev/null +++ b/src/assets/styles/main.scss @@ -0,0 +1,117 @@ +@import "base/base"; +@import "base/bscroll.css"; +@import "base/reset"; + +@import "utils/mixins"; +@import "utils/utils"; + +@import "componets/status"; +@import "componets/small_table"; +@import "componets/my_table"; + +.icon { + width: 1em; + height: 1em; + vertical-align: -0.15em; + fill: currentColor; + overflow: hidden; +} + +.base-subtitle { + position: relative; + padding-left: 12px; + line-height: 24px; + font-size: 15px; + font-weight: 400; + &::before { + content: ""; + display: block; + width: 3px; + background: #5979ea; + height: 15px; + border-radius: 4px; + position: absolute; + top: 5px; + left: 0; + } +} + +h4.second-title { + @extend .base-subtitle; + &::before { + background: #5979ea; + } +} + +h4.subtitle { + @extend .second-title; + &::before { + background: #bda366; + } +} + +.details-wrap { + display: flex; + padding-top: 10px; + .left-box { + width: 200px; + height: 100%; + + .user-list-ul { + height: calc(100% - 50px); + overflow-y: auto; + li { + height: 42px; + border: 1px solid #ebeef5; + border-top: none; + position: relative; + cursor: pointer; + transition: border 200ms; + img { + object-fit: cover; + width: 30px; + height: 30px; + border-radius: 3px; + } + + span.stu-name { + height: 20px; + line-height: 20px; + display: inline-block; + width: 60px; + } + span.stu-card { + width: 50px; + text-align: right; + } + } + li.active { + // background: #f3f3f3; + color: #7892ed; + border-right: 3px solid #5979ea; + } + } + } + .right-box { + width: 100%; + padding: 0 15px; + } +} + +.table-spin-load { + width: 60px; + height: 90px; + padding-top: 60px; + background-image: url(../image/loading.gif); + background-size: 60px 60px; + background-position: top center; + background-repeat: no-repeat; + border: none; + color: #577afb; + margin: 0 auto; +} + +.ivu-table-cell-tree { + margin-right: 4px; + margin-bottom: 2px; +} diff --git a/src/assets/styles/utils/_mixins.scss b/src/assets/styles/utils/_mixins.scss new file mode 100644 index 0000000..ac60fe4 --- /dev/null +++ b/src/assets/styles/utils/_mixins.scss @@ -0,0 +1,13 @@ +@mixin tag_mixin($bgColor,$textColor) { + width:64px; + height:20px ; + padding: 0 5px; + background: $bgColor; + color: $textColor; + font-size: 12px; + border-radius: 2px 2px 2px 2px; + text-align: center; + line-height: 20px; +} + + diff --git a/src/assets/styles/utils/_utils.scss b/src/assets/styles/utils/_utils.scss new file mode 100644 index 0000000..b364dc3 --- /dev/null +++ b/src/assets/styles/utils/_utils.scss @@ -0,0 +1,170 @@ +// utils 工具// 颜色 + +@import "./varible"; +.bg-error { + background-color: $color-error !important; +} +.text-error { + color: $color-error !important; +} +.text-success { + color: $color-success !important; +} +.text-warning { + color: $color-warning !important; +} +.text-primary { + color: $color-primary !important; +} +.text-normal { + color: #404042 !important; +} +.text-black { + color: #000; +} +.text-dark { + color: #333; +} +.text-deep { + color: #555; +} +.text-weak { + color: #b3b3b3; +} +.text-white { + color: #fff; +} + +.text-error.disabled { + color: #aaa !important; +} + +// 文字对齐 +.tl { + text-align: left; +} +.tc { + text-align: center; +} +.tr { + text-align: right; +} +// 浮动与清除浮动 +.fl { + float: left; +} +.fr { + float: right; +} +.fix { + *zoom: 1; +} +.fix:after { + display: table; + content: ""; + clear: both; +} +// 显示 +.dn { + display: none; +} +.di { + display: inline; +} +.db { + display: block; +} +.dib { + display: inline-block; +} +.dt { + display: table; +} +div.dib { + *display: inline; + *zoom: 1; +} +.vm { + vertical-align: middle; +} +.vib { + display: inline-block; + vertical-align: middle; +} +.ovh { + overflow: hidden; +} +// 定位 +.pr { + position: relative; +} +.pa { + position: absolute; +} +.pf { + position: fixed; +} + +.align-middle { + position: relative; + top: 50%; + transform: translateY(-50%); +} +.align-middle-wrap { + display: flex; + align-items: center; +} + +.text-ellipsis { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +@for $i from 1 through 100 { + .width-#{$i} { + width: $i * 1%; + } + .height-#{$i} { + height: $i * 1px; + } + // @if $i<50 and $i%2==0 { + // @if $i<50 { + .ml-#{$i} { + margin-left: $i * 1px !important; + } + .mr-#{$i} { + margin-right: $i * 1px !important; + } + .mt-#{$i} { + margin-top: $i * 1px !important; + } + .mb-#{$i} { + margin-bottom: $i * 1px !important; + } + // } +} + +// 字体 +@for $i from 10 through 28 { + .f#{$i} { + font-size: $i * 1px; + } +} + +// .chart-box { +// height: 50px; +// width: 100%; +// border-bottom: 50px solid; +// border-image: linear-gradient(90deg, #f55c65 0%, #fcced0 48%, #d4dffc 52%, #7194f5 100%) 50 50 50 50; +// } +// @for $i from 0 through 50 { +// .blue-#{$i} { +// background-color: rgba(#7194f5, 0.1 * $i * 0.2); +// } +// } +// @for $i from 0 through 50 { +// .red-#{$i} { +// background-color: rgba(#f55c65, 0.1 * $i * 0.2); +// } +// } diff --git a/src/assets/styles/utils/_varible.scss b/src/assets/styles/utils/_varible.scss new file mode 100644 index 0000000..7232648 --- /dev/null +++ b/src/assets/styles/utils/_varible.scss @@ -0,0 +1,22 @@ +/*scss变量*/ + +// 主题色 +$color-error: #e8684a; +$color-success: #45b972; +$color-warning: #e9b954; +$color-primary: #5979ea; + +// 文字色 +$color-black: #404042; +$color-dark: #333; +$color-deep: #555; +$color-pl: #999999; +$color-weak: #b3b3b3; +$color-white: #fff; + +// 背景色 +$bg-bar: #f9f9f9; +$bg-page: #f3f3f3; +$bg-page-light: #f9f9f9; + +$border-color: #e9e9e9; diff --git a/src/auto-imports.d.ts b/src/auto-imports.d.ts new file mode 100644 index 0000000..0f0d893 --- /dev/null +++ b/src/auto-imports.d.ts @@ -0,0 +1,94 @@ +/* eslint-disable */ +/* prettier-ignore */ +// @ts-nocheck +// noinspection JSUnusedGlobalSymbols +// Generated by unplugin-auto-import +// biome-ignore lint: disable +export {} +declare global { + const $$userConfigMap: typeof import('./api/index')['$$userConfigMap'] + const Button: typeof import('view-ui-plus')['Button'] + const EffectScope: typeof import('vue')['EffectScope'] + const Form: typeof import('view-ui-plus')['Form'] + const FormItem: typeof import('view-ui-plus')['FormItem'] + const Input: typeof import('view-ui-plus')['Input'] + const Message: typeof import('view-ui-plus')['Message'] + const Modal: typeof import('view-ui-plus')['Modal'] + const Select: typeof import('view-ui-plus')['Select'] + const Table: typeof import('view-ui-plus')['Table'] + const api: typeof import('./api/index')['default'] + const apiDefinitions: typeof import('./api/apiDefinitions')['default'] + const computed: typeof import('vue')['computed'] + const createApis: typeof import('./api/createApis')['createApis'] + const createApp: typeof import('vue')['createApp'] + const customRef: typeof import('vue')['customRef'] + const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] + const defineComponent: typeof import('vue')['defineComponent'] + const effectScope: typeof import('vue')['effectScope'] + const getCurrentInstance: typeof import('vue')['getCurrentInstance'] + const getCurrentScope: typeof import('vue')['getCurrentScope'] + const h: typeof import('vue')['h'] + const inject: typeof import('vue')['inject'] + const isProxy: typeof import('vue')['isProxy'] + const isReactive: typeof import('vue')['isReactive'] + const isReadonly: typeof import('vue')['isReadonly'] + const isRef: typeof import('vue')['isRef'] + const markRaw: typeof import('vue')['markRaw'] + const mountApis: typeof import('./api/createApis')['mountApis'] + const nextTick: typeof import('vue')['nextTick'] + const onActivated: typeof import('vue')['onActivated'] + const onBeforeMount: typeof import('vue')['onBeforeMount'] + const onBeforeRouteLeave: typeof import('vue-router')['onBeforeRouteLeave'] + const onBeforeRouteUpdate: typeof import('vue-router')['onBeforeRouteUpdate'] + const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] + const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] + const onDeactivated: typeof import('vue')['onDeactivated'] + const onErrorCaptured: typeof import('vue')['onErrorCaptured'] + const onMounted: typeof import('vue')['onMounted'] + const onRenderTracked: typeof import('vue')['onRenderTracked'] + const onRenderTriggered: typeof import('vue')['onRenderTriggered'] + const onScopeDispose: typeof import('vue')['onScopeDispose'] + const onServerPrefetch: typeof import('vue')['onServerPrefetch'] + const onUnmounted: typeof import('vue')['onUnmounted'] + const onUpdated: typeof import('vue')['onUpdated'] + const onWatcherCleanup: typeof import('vue')['onWatcherCleanup'] + const provide: typeof import('vue')['provide'] + const reactive: typeof import('vue')['reactive'] + const readonly: typeof import('vue')['readonly'] + const ref: typeof import('vue')['ref'] + const resolveComponent: typeof import('vue')['resolveComponent'] + const shallowReactive: typeof import('vue')['shallowReactive'] + const shallowReadonly: typeof import('vue')['shallowReadonly'] + const shallowRef: typeof import('vue')['shallowRef'] + const toRaw: typeof import('vue')['toRaw'] + const toRef: typeof import('vue')['toRef'] + const toRefs: typeof import('vue')['toRefs'] + const toValue: typeof import('vue')['toValue'] + const triggerRef: typeof import('vue')['triggerRef'] + const unref: typeof import('vue')['unref'] + const useAttrs: typeof import('vue')['useAttrs'] + const useCssModule: typeof import('vue')['useCssModule'] + const useCssVars: typeof import('vue')['useCssVars'] + const useForm: typeof import('alova/client')['useForm'] + const useId: typeof import('vue')['useId'] + const useLink: typeof import('vue-router')['useLink'] + const useModel: typeof import('vue')['useModel'] + const usePagination: typeof import('alova/client')['usePagination'] + const useRequest: typeof import('alova/client')['useRequest'] + const useRoute: typeof import('vue-router')['useRoute'] + const useRouter: typeof import('vue-router')['useRouter'] + const useSlots: typeof import('vue')['useSlots'] + const useTemplateRef: typeof import('vue')['useTemplateRef'] + const useWatcher: typeof import('alova/client')['useWatcher'] + const watch: typeof import('vue')['watch'] + const watchEffect: typeof import('vue')['watchEffect'] + const watchPostEffect: typeof import('vue')['watchPostEffect'] + const watchSyncEffect: typeof import('vue')['watchSyncEffect'] + const withConfigType: typeof import('./api/createApis')['withConfigType'] +} +// for type re-export +declare global { + // @ts-ignore + export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' + import('vue') +} diff --git a/src/components/MyConfirm/Confirm.vue b/src/components/MyConfirm/Confirm.vue new file mode 100644 index 0000000..cb336d7 --- /dev/null +++ b/src/components/MyConfirm/Confirm.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/src/components/MyConfirm/index.ts b/src/components/MyConfirm/index.ts new file mode 100644 index 0000000..6d9d8a7 --- /dev/null +++ b/src/components/MyConfirm/index.ts @@ -0,0 +1,42 @@ +import { MyConfirm } from "@/types/Basics"; +import confirm from "./Confirm.vue"; + +import { createApp } from "vue"; +export default ({ title, msg, info, confirmText, closeText, isLoading, onOk, onCancel }: MyConfirm) => { + return new Promise((reslove) => { + const instance = createApp(confirm, { + title, + msg, + info, + confirmText, + closeText, + isLoading, + confirmFn: { + onOk, + reslove, + }, + closeFn: { + onCancel, + reslove, + }, + destroy: () => { + closeUnmount(); + }, + }); + + // 创建一个节点 + const vnode = document.createElement("div"); + // 添加到body元素上 + document.body.appendChild(vnode); + // 实例挂载到节点上 + instance.mount(vnode); + // 关闭状态 + // 注册实例并移除节点 + function closeUnmount() { + setTimeout(() => { + instance.unmount(); + document.body.removeChild(vnode); + }, 100); + } + }); +}; diff --git a/src/components/SvgIcon.vue b/src/components/SvgIcon.vue new file mode 100644 index 0000000..2f211a6 --- /dev/null +++ b/src/components/SvgIcon.vue @@ -0,0 +1,43 @@ + + + diff --git a/src/components/TablePageAlovaNew.vue b/src/components/TablePageAlovaNew.vue new file mode 100644 index 0000000..8e1ede6 --- /dev/null +++ b/src/components/TablePageAlovaNew.vue @@ -0,0 +1,105 @@ + + + + + diff --git a/src/components/layout.vue b/src/components/layout.vue new file mode 100644 index 0000000..c98af43 --- /dev/null +++ b/src/components/layout.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..739285f --- /dev/null +++ b/src/main.ts @@ -0,0 +1,34 @@ +import { createApp } from "vue"; + +import App from "./App.vue"; +import router from "@/router"; + +import utils from "@/utils"; + +// 接口层副作用:执行 mountApis 把 Apis 挂到 globalThis(页面以全局 Apis.GatewayAdmin.* 调用)。 +// auto-import 只登记 default 名 api,页面引用的是 Apis,不会注入 import——必须在此显式引入。 +import "@/api"; + +// @ts-ignore +import ViewUIPlus from "view-ui-plus"; + +import "view-ui-plus/dist/styles/viewuiplus.css"; + +import "@/assets/styles/main.scss"; +// 本地化的布局/主题样式(原远程 base.layout.beta / _iview_override / default-theme 合并) +import "@/assets/styles/layout.css"; + +import "virtual:uno.css"; +import "virtual:svg-icons-register"; + +import config from "@/assets/config/host.config"; + +const app = createApp(App); + +app.use(router); +app.use(ViewUIPlus); + +app.config.globalProperties.$conf = config; +app.config.globalProperties.$utils = utils; + +app.mount("#app"); diff --git a/src/router/index.ts b/src/router/index.ts new file mode 100644 index 0000000..20217c3 --- /dev/null +++ b/src/router/index.ts @@ -0,0 +1,9 @@ +import { createRouter, createWebHashHistory } from "vue-router"; +import routes from "./routes"; + +const router = createRouter({ + history: createWebHashHistory(), + routes, +}); + +export default router; diff --git a/src/router/routes.ts b/src/router/routes.ts new file mode 100644 index 0000000..bc46187 --- /dev/null +++ b/src/router/routes.ts @@ -0,0 +1,29 @@ +import type { RouteRecordRaw } from "vue-router"; + +/** + * 网关治理前端路由(三项,无权限矩阵——网关无菜单/角色接口)。 + * 与 UserBase 一致用 hash 模式:静态托管下刷新不依赖服务端 rewrite。 + */ +const routes: RouteRecordRaw[] = [ + { path: "/", redirect: "/ledger" }, + { + path: "/ledger", + name: "LedgerList", + component: () => import("@/views/ledger/LedgerList.vue"), + meta: { title: "访问台账" }, + }, + { + path: "/routes", + name: "RouteList", + component: () => import("@/views/route/RouteList.vue"), + meta: { title: "路由注册表" }, + }, + { + path: "/targets", + name: "TargetList", + component: () => import("@/views/target/TargetList.vue"), + meta: { title: "目标地址" }, + }, +]; + +export default routes; diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..bb131d6 --- /dev/null +++ b/src/style.css @@ -0,0 +1,79 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +.card { + padding: 2em; +} + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/src/types/Basics.d.ts b/src/types/Basics.d.ts new file mode 100644 index 0000000..b1d3417 --- /dev/null +++ b/src/types/Basics.d.ts @@ -0,0 +1,138 @@ +/** + * 公共类型 + */ + +export declare interface IObj { + [key: string]: any; +} + +export declare interface PageParams { + page: !number; + count: !number; + [keys: string]: any; //任意属性 +} + +export declare interface PageData { + list: T; + total: number; + [keys: string]: any; //任意属性 +} +interface RelayConf { + ziyuankuHost: string; //资源库 + zhuanxiangHost: string; //专项 + +} + +/* 系统配置 */ +export interface BaseConf { + baseHost: string; + ssoHost: string; + serviceHost: string; + relayConf: RelayConf; + isMock: Boolean; + isDebug?: Boolean; + [keys: string]: any; //任意属性 +} + +/* PC端角色 */ +export interface PcDebugUser { + DebugUser: string; + AppType: string; + // yschapirequest: number; +} + +/* webapp端角色 */ +export declare interface WappDebugUser { + ticket: string; + schoolId: Number; + userId: Number; + roleId: Number; +} + +export declare interface CurrentRole { + childId: number | null; + roleId: number; + schId: number; + userId: number; +} + +export interface layoutData { + appName: String; + appList: string[]; + modList: Array; + userInfo: Object; + ssoHost: String; + baseHost: String; + isAlone: Boolean; //是否只有一个选项卡 +} + +export interface BaseDict { + k: any; + v: string | null; + [keys: string]: any; //任意属性 +} + +/* 计算表格高度的参数类型 */ +export interface UseTableSetting { + /** 是否有查询面板 */ + isSearch: boolean = true; + /** 是否有分页 */ + isPage: boolean = true; + /** 是否是tabs布局 */ + isTabs: boolean = false; + /** 是否有按钮操作 */ + isOperat: boolean = true; + /** 额外的高度 */ + otherH: number = 0; +} + +/* 布局组件类型 */ +export interface LayoutData { + appName: string | null; + appList: Array; + modList: Array; + userInfo: any; + ssoHost: string | null; + baseHost: string | null; + isAlone: boolean; +} + +/* 自定义弹出对话框 */ +export interface MyConfirm { + title?: string; + msg: string; + info?: string; + isLoading?: boolean; + confirmText?: string; + closeText?: string; + onOk?: Function; + onCancel?: Function; +} + +export declare enum NODE_ENV { + /** + *开发环境 + */ + development = "development", + /** + *生产环境 + */ + production = "production", +} + +export const _: any; +export const $: any; + +declare global { + const $: any; + const _: any; +} + +import Utils from "@/utils/index"; +import MyConfirm from "@/components/MyConfirm"; + +export interface VueGlobal { + $conf: BaseConf; + $utils: typeof Utils; + [key:string]:any; +} diff --git a/src/types/index.ts b/src/types/index.ts new file mode 100644 index 0000000..493644b --- /dev/null +++ b/src/types/index.ts @@ -0,0 +1,140 @@ +import { BaseDict } from "./Basics"; + +export enum OperatorEnum { + add, + del, + edit, + sel, +} + +/** + * 管理端访问级别(与后端 AccessLevelEnum / GetUserScope.level 对齐,后端单点判定)。 + * 注意:School 由旧值 2 改为 3(原枚举值无消费方依赖具体数值,安全重排)。 + */ +export enum UserRoleEnum { + SuperAdmin = 1, + Bureau, + School, + None, +} + +//学段 +export enum SchoolStage { + PRIMARY = 2, + MIDDLE, + HIGH, +} + +export const SchoolStageDict: BaseDict[] = [ + { + k: SchoolStage.PRIMARY, + v: "小学", + }, + { + k: SchoolStage.MIDDLE, + v: "初中", + }, + { + k: SchoolStage.HIGH, + v: "高中", + }, +]; + +export enum RootNode { + /** 资源 */ + ZIYUANKU = 1, + /** 辅导 */ + TUTORING = 2, + /** 题库 */ + QUESTION = 3, + /** 试卷 */ + SHIJUAN = 4, + /** 专项 */ + ZHUANXIANG = 5, +} + +export const RootNodeDict: BaseDict[] = [ + { + k: RootNode.ZIYUANKU, + v: "资源", + path: "ziyuan", + }, + { + k: RootNode.TUTORING, + v: "辅导", + path: "fudao", + }, + { + k: RootNode.QUESTION, + v: "题库", + path: "tiku", + }, + { + k: RootNode.SHIJUAN, + v: "试卷", + path: "shijuan", + }, + { + k: RootNode.ZHUANXIANG, + v: "专项", + path: "zhuanxiang", + }, +]; + +export enum BooxType { + /** 教材 */ + TextBook = 1, + /** 教辅 */ + TeachingTutoring, +} + +export const BooxTypeDict: BaseDict[] = [ + { + k: BooxType.TextBook, + v: "教材", + }, + { + k: BooxType.TeachingTutoring, + v: "教辅", + }, +]; + +//学校学段学制 +export interface SchLenLevel { + stage: SchoolStage; + name: string; + grades: LenGrade[]; +} + +export interface LenGrade { + gradeId: number; + gradeName: string; + stage: number; +} + +export interface AcademicYear { + year: number; + semester: number | null; + name: string; +} + +export interface Subject { + id: number; + tenantId: number; + baseId: null; + creatorId: number; + createDate: string; + name: string; + code: string; + orderNum: number; + alias: string; + stage: number; + enable: boolean; + disabled: boolean; +} + +/** + * 1 积分详情 + * 2 分数详情 + */ +export type ScoreModalType = 1 | 2; diff --git a/src/types/router-meta.d.ts b/src/types/router-meta.d.ts new file mode 100644 index 0000000..1056c90 --- /dev/null +++ b/src/types/router-meta.d.ts @@ -0,0 +1,13 @@ +/** + * @description 扩展ruoter-meta的类型 此处必须要export {} 不然找不到类型 + */ +declare module "vue-router" { + interface RouteMeta { + title?: string; + icon?: string; + modId?: number; + parentId?: number; + } +} + +export {}; diff --git a/src/types/shims-tsx.d.ts b/src/types/shims-tsx.d.ts new file mode 100644 index 0000000..67a8308 --- /dev/null +++ b/src/types/shims-tsx.d.ts @@ -0,0 +1,13 @@ +import Vue, { VNode } from "vue"; + +declare global { + namespace JSX { + // tslint:disable no-empty-interface + interface Element extends VNode {} + // tslint:disable no-empty-interface + interface ElementClass extends Vue {} + interface IntrinsicElements { + [elem: string]: any; + } + } +} diff --git a/src/types/shims-vue.d.ts b/src/types/shims-vue.d.ts new file mode 100644 index 0000000..ce50871 --- /dev/null +++ b/src/types/shims-vue.d.ts @@ -0,0 +1,5 @@ +declare module "*.vue" { + import { DefineComponent } from "vue"; + const component: DefineComponent<{}, {}, any>; + export default component; +} diff --git a/src/utils/alova/alova-core.ts b/src/utils/alova/alova-core.ts new file mode 100644 index 0000000..1e712d5 --- /dev/null +++ b/src/utils/alova/alova-core.ts @@ -0,0 +1,145 @@ +import { createAlova, Method, StatesHook } from "alova"; +import fetchAdapter from "alova/fetch"; +import VueHook from "alova/vue"; +/* ============= 类型定义 ============= */ +export interface RequestHooks { + /** 前置票据/通用头注入 */ + injectHeaders?: (method: Method) => void; + /** 加载开始 */ + onLoadingStart?: () => void; + /** 加载结束 */ + onLoadingEnd?: () => void; + /** 业务错误提示(code !== 0)*/ + onBizError?: (msg: string) => void; + /** http 错误提示(status !== 200)*/ + onHttpError?: (msg: string) => void; +} + +/** 平台统一响应信封(yh-api-std 的 ApiResponse 形态) */ +export interface BschResponse { + code: number; + msg?: string; + data: T; + urlToRedirectTo?: string; +} + +/* ============= 默认空实现 ============= */ +const defHooks: Required = { + injectHeaders: () => {}, + onLoadingStart: () => {}, + onLoadingEnd: () => {}, + onBizError: () => {}, + onHttpError: () => {}, +}; + +/* ============= 错误处理(与 UserBase 同形,适配平台信封) ============= */ +function errorHandle(res: BschResponse, status: number): T { + // http 层错误 + if (status !== 200) { + let msg = "网络错误"; + switch (status) { + case 401: + case 403: + break; + case 404: + msg = "请求的资源不存在!"; + break; + default: + msg = res?.msg || "内部服务错误!"; + } + throw new Error(msg); + } + + // 业务层错误 + switch (res.code) { + case 0: + return res.data ?? (null as T); + case 302: + console.log(res); + window.location.href = res.urlToRedirectTo!; + throw new Error("redirect"); + case 4: + throw new Error(res.msg || "参数错误!"); + default: + throw new Error(res.msg || "业务错误"); + } +} + +/* ============= 工厂函数 ============= */ +export function createBschAlova(baseURL: string, hooks: RequestHooks = {}, statesHook: StatesHook = VueHook) { + const { injectHeaders, onLoadingStart, onLoadingEnd, onBizError, onHttpError } = { + ...defHooks, + ...hooks, + }; + + let reqCount = 0; + let timer: ReturnType; + + /* ---- 请求拦截 ---- */ + function beforeRequest(method: Method) { + reqCount++; + if (reqCount === 1) timer = setTimeout(() => onLoadingStart(), 800); + + Promise.resolve().then(() => { + if (reqCount === 0) { + clearTimeout(timer); + onLoadingEnd(); + } + }); + // 用户注入票据/角色等头 + injectHeaders(method); + + method.config.credentials = "include"; + // 通用头(网关管理面不识别 yschapirequest/yschreferer/currentRole,故不注入) + method.config.headers = Object.assign(method.config.headers || {}, { + timeout: 20000, + }); + } + + /* ---- 响应拦截 ---- */ + async function onSuccess(response: Response) { + reqCount--; + if (reqCount === 0) { + clearTimeout(timer); + onLoadingEnd(); + } + const res: BschResponse = await response.json(); + try { + return errorHandle(res, response.status); + } catch (e: any) { + console.log(e); + + onBizError(e.message); + return Promise.reject(e); + } + } + + async function onError(err: any) { + reqCount = 0; + clearTimeout(timer); + onLoadingEnd(); + + const msg = err?.message || "网络请求出错"; + onHttpError(msg); + return Promise.reject(err); + } + + async function onComplete(method: Method) { + if (method.fromCache) { + reqCount--; + if (reqCount === 0) { + clearTimeout(timer); + onLoadingEnd(); + } + } + } + + return createAlova({ + statesHook, + requestAdapter: fetchAdapter(), + baseURL, + cacheFor: null, + beforeRequest, + responded: { onSuccess, onError, onComplete }, + }); +} diff --git a/src/utils/alova/alova-iview.ts b/src/utils/alova/alova-iview.ts new file mode 100644 index 0000000..96007f2 --- /dev/null +++ b/src/utils/alova/alova-iview.ts @@ -0,0 +1,36 @@ +// @/utils/alova/alova-iview.ts +import { createBschAlova } from "./alova-core"; +import { Message } from "view-ui-plus"; +import conf from "@/assets/config/host.config"; + +/* 全局 loading 遮罩实例 */ +let spinInstance: any = null; + +/* 主动关闭 loading */ +function closeLoading() { + if (spinInstance) { + Message.destroy(); + spinInstance = null; + } +} + +const baseUrl = conf.serviceHost; + +/* 创建带 View Design UI 的 Alova 实例 */ +export const alovaInstance = createBschAlova(baseUrl, { + /* 无登录态/角色头:网关管理面对外域已关闭,对内由 Caddy 白名单与后续网关侧鉴权负责 */ + injectHeaders() {}, + + /* 2. 加载动画 – View Design Spin */ + onLoadingStart() { + spinInstance = Message.loading("加载中..."); + }, + onLoadingEnd: closeLoading, + onBizError(msg: string) { + if (!!msg) Message.error(msg); + }, + + onHttpError(msg: string) { + Message.error({ title: "网络错误", content: msg }); + }, +}); diff --git a/src/utils/hook/useCompRef.ts b/src/utils/hook/useCompRef.ts new file mode 100644 index 0000000..955613a --- /dev/null +++ b/src/utils/hook/useCompRef.ts @@ -0,0 +1,4 @@ +import { ref } from "vue"; +export function useCompRef any>(_comp: T) { + return ref>(); +} diff --git a/src/utils/hook/useCurrentInstance.ts b/src/utils/hook/useCurrentInstance.ts new file mode 100644 index 0000000..baa34d9 --- /dev/null +++ b/src/utils/hook/useCurrentInstance.ts @@ -0,0 +1,7 @@ +import { VueGlobal } from "@/types/Basics"; +import { ComponentInternalInstance, getCurrentInstance } from "vue"; +export default function useCurrentInstance(): VueGlobal { + const { appContext } = getCurrentInstance() as ComponentInternalInstance; + const proxy = appContext.config.globalProperties; + return proxy as unknown as VueGlobal; +} diff --git a/src/utils/hook/useImg.ts b/src/utils/hook/useImg.ts new file mode 100644 index 0000000..d97f3d6 --- /dev/null +++ b/src/utils/hook/useImg.ts @@ -0,0 +1,5 @@ +type PathType = "image" | "icons"; +export const requireImg = (imgPath: string, basePath?: PathType) => { + basePath = basePath || "image"; + return new URL(`../../assets/${basePath}/${imgPath}`, import.meta.url).href; +}; diff --git a/src/utils/hook/useSessionStorage.ts b/src/utils/hook/useSessionStorage.ts new file mode 100644 index 0000000..cca38c2 --- /dev/null +++ b/src/utils/hook/useSessionStorage.ts @@ -0,0 +1,37 @@ +import { ref, watch, type Ref } from "vue"; + +/** + * 将任意响应式数据与 sessionStorage 双向绑定 + * @param key sessionStorage 的 key + * @param def 默认值(当 sessionStorage 没有时) + * @param reviver 可选:解析时用 JSON.parse 的第二个参数 + * @returns Ref + */ +export function useSessionStorage( + key: string, + def: T, + reviver?: (this: any, key: string, value: any) => any, +): Ref { + /* ---------- 初始化 ---------- */ + const raw = sessionStorage.getItem(key); + let init: T = def; + if (raw) { + try { + init = JSON.parse(raw, reviver); + } catch { + /* 解析失败回退默认值 */ + } + } + const state = ref(init) as Ref; + + /* ---------- 变化时落盘 ---------- */ + watch( + state, + newVal => { + sessionStorage.setItem(key, JSON.stringify(newVal)); + }, + { deep: true, flush: "post" }, + ); + + return state; +} diff --git a/src/utils/index.ts b/src/utils/index.ts new file mode 100644 index 0000000..350e021 --- /dev/null +++ b/src/utils/index.ts @@ -0,0 +1,363 @@ +import { IObj } from "@/types/Basics"; +import { resolveComponent } from "vue"; +export default class Utils { + /** + * 格式化日期 + * + * @param {(Date | string)} 日期 + * @param {string} fmt 格式化字符串 + * @returns {string} 日期字符串 + * @memberof Utils + */ + public static dateFormat(date: Date | string, fmt: string): string { + if (typeof date === "string") date = date.replace(/\-/g, "/"); + let dt = new Date(date); + let o: IObj = { + "M+": dt.getMonth() + 1, //月份 + "d+": dt.getDate(), //日 + "H+": dt.getHours(), //小时 + "m+": dt.getMinutes(), //分 + "s+": dt.getSeconds(), //秒 + "q+": Math.floor((dt.getMonth() + 3) / 3), //季度 + S: dt.getMilliseconds(), //毫秒 + }; + if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (dt.getFullYear() + "").substr(4 - RegExp.$1.length)); + + for (let k in o) + if (new RegExp("(" + k + ")").test(fmt)) + fmt = fmt.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); + return fmt; + } + + /** + * 获取地址栏指定参数 + */ + public static getUrlParam(name: string): string | null { + let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); + let r = window.location.search.substr(1).match(reg); + if (r != null) return unescape(r[2]); + else return null; + } + + /** + * 生成uuid + */ + public static uuid(): string { + return "xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, function (c) { + let r = (Math.random() * 16) | 0, + v = c == "x" ? r : (r & 0x3) | 0x8; + return v.toString(16); + }); + } + + /** + * 返回文件大小 + */ + public static getFileSize(size: number): string { + if (!size) return ""; + if (size / 1024 < 1024) { + size = Math.ceil(size / 1024); + return size + "KB"; + } else if (size / (1024 * 1024) < 1024) { + size = Math.ceil((size / (1024 * 1024)) * 100) / 100; + return size + "MB"; + } else if (size / (1024 * 1024 * 1024) < 1024) { + size = Math.ceil((size / (1024 * 1024 * 1024)) * 100) / 100; + return size + "GB"; + } else return ""; + } + + /** + * 在线预览大小上限(字节):日志大字段(请求体/响应)超过此值时隐藏"在线预览"、只保留"下载"。 + * 浏览器 JSON 美化 +

 渲染在数百 KB 起会卡顿,50KB 为体验无损的保守阈值。
+     */
+    public static readonly PREVIEW_MAX_BYTES = 50 * 1024;
+
+    /**
+     * 是否允许在线预览:有内容(size > 0)且字节数不超过阈值。
+     * size 为 null/undefined/0(未记录请求体、saveResponse=false、响应为空)→ 不可预览,仅下载。
+     */
+    public static canPreview(size?: number | null): boolean {
+        return size != null && size > 0 && size <= Utils.PREVIEW_MAX_BYTES;
+    }
+
+    /**
+     * 删除指定键
+     */
+    public static delKey(obj: IObj, ...args: string[]) {
+        args.forEach(v => delete obj[v]);
+        return obj;
+    }
+
+    /**
+     * iview Tooltip封装
+     */
+    public static operatingHandle(
+        h: any,
+        info: string,
+        iconClass: string,
+        callback: Function,
+        disabled: boolean = false,
+    ) {
+        if (disabled) iconClass += " disabled";
+
+        return h(
+            resolveComponent("Tooltip"),
+            {
+                content: info,
+                placement: "bottom",
+                transfer: true,
+            },
+            {
+                default: () => [
+                    h(
+                        "div",
+                        {
+                            class: `operating-btn iconfont ${iconClass}`,
+                            onClick: callback,
+                        },
+                        null,
+                    ),
+                ],
+            },
+        );
+    }
+
+    public static operatingTextHandle(
+        h: any,
+        info: string,
+        className: string,
+        callback: Function,
+        disabled: boolean = false,
+    ) {
+        if (disabled) className += " disabled";
+        return h(
+            "div",
+            {
+                class: `operating-link ${className}`,
+                onClick: disabled ? null : callback,
+            },
+            info,
+        );
+    }
+
+    /**
+     * 计算表格高度
+     */
+    public static useTableHeight({
+        isSearch = false,
+        isPage = false,
+        isTabs = false,
+        isOperat = false,
+        otherH = 0,
+    } = {}) {
+        let bodyH = document.body.clientHeight,
+            headerH = 56,
+            searchH = 52,
+            operatH = 48,
+            tabsH = 56,
+            pageH = 72,
+            paddingH = 8;
+
+        let tableH = bodyH - headerH - paddingH;
+        isOperat && (tableH -= operatH);
+        isTabs && (tableH -= tabsH);
+        isSearch && (tableH -= searchH);
+        isPage && (tableH -= pageH);
+        otherH > 0 && (tableH -= otherH);
+        return tableH;
+    }
+    /**
+     * 数字转大写汉字
+     * @param num
+     * @returns
+     */
+    public static convertToChinaNum(num: number) {
+        var arr1 = new Array("零", "一", "二", "三", "四", "五", "六", "七", "八", "九");
+        var arr2 = new Array(
+            "",
+            "十",
+            "百",
+            "千",
+            "万",
+            "十",
+            "百",
+            "千",
+            "亿",
+            "十",
+            "百",
+            "千",
+            "万",
+            "十",
+            "百",
+            "千",
+            "亿",
+        ); //可继续追加更高位转换值
+        if (!num || isNaN(num)) {
+            return "零";
+        }
+        var english = num.toString().split("");
+        var result = "";
+        for (var i = 0; i < english.length; i++) {
+            var des_i = english.length - 1 - i; //倒序排列设值
+            result = arr2[i] + result;
+            var arr1_index: any = english[des_i];
+            result = arr1[arr1_index] + result;
+        }
+        //将【零千、零百】换成【零】 【十零】换成【十】
+        result = result.replace(/零(千|百|十)/g, "零").replace(/十零/g, "十");
+        //合并中间多个零为一个零
+        result = result.replace(/零+/g, "零");
+        //将【零亿】换成【亿】【零万】换成【万】
+        result = result.replace(/零亿/g, "亿").replace(/零万/g, "万");
+        //将【亿万】换成【亿】
+        result = result.replace(/亿万/g, "亿");
+        //移除末尾的零
+        result = result.replace(/零+$/, "");
+        //将【零一十】换成【零十】
+        //result = result.replace(/零一十/g, '零十');//貌似正规读法是零一十
+        //将【一十】换成【十】
+        result = result.replace(/^一十/g, "十");
+        return result;
+    }
+
+    /**
+     * 对象转url参数
+     * @param num
+     * @returns
+     */
+    public static createUrl(url: string, query: any) {
+        var temp: any[] = [];
+        for (var k in query) {
+            if (query[k] != null) temp.push(k + "=" + query[k]);
+        }
+        return url + "?" + temp.join("&");
+    }
+    /**
+     * 获取当前角色信息
+     * @returns
+     */
+    public static getCurrentRoleInfo() {
+        let currentRole = localStorage.getItem("currentRole");
+        if (!currentRole) return null;
+        let { schId, roleId, childId, userId } = JSON.parse(decodeURI(currentRole ?? ""));
+        return { schId, roleId, childId, userId } as T;
+    }
+
+    /**
+     * tree对象转化为数组
+     * @param tree
+     * @returns
+     */
+    public static treeToArray(tree: any[]): any[] {
+        return tree.reduce((res, item) => {
+            const { children, ...i } = item;
+            return res.concat(i, children && children.length ? this.treeToArray(children) : []);
+        }, []);
+    }
+
+    /**
+     * 数组转化为tree对象
+     * @param tree
+     * @returns
+     */
+    public static arrayToTree(arr: any[], pid: number): any[] {
+        return arr
+            .filter(item => item.pid === pid)
+            .map(item => ({ ...item, children: this.arrayToTree(arr, item.id) }));
+    }
+
+    //字符串的16进制表达
+    public static strToHexCharCode(_str: string) {
+        if (_str === "") return "";
+        var hexCharCode: string[] = [];
+        for (var i = 0; i < _str.length; i++) {
+            var str = _str.charCodeAt(i).toString(16);
+            if (_str.length == 1) str += "0" + _str;
+            hexCharCode.push(str);
+        }
+        return hexCharCode.join("");
+    }
+
+    public static hexToString(hex: string) {
+        if (hex === "") return "";
+        // 处理奇数长度,补前导零
+        if (hex.length % 2 !== 0) {
+            hex = "0" + hex;
+            [[3]];
+        }
+        let str = "";
+        for (let i = 0; i < hex.length; i += 2) {
+            // 每两位解析为一个字符的Unicode值
+            const hexPair = hex.substr(i, 2);
+            const charCode = parseInt(hexPair, 16);
+            str += String.fromCharCode(charCode);
+            [[14, 16]];
+        }
+        return str;
+    }
+
+    /**
+     * 将颜色值HEX格式转换为rgb的格式
+     * @param {hex} hex 需要转换的rgb字符串
+     * @param {number} opacity 透明度
+     * @return {string}  ;
+     */
+    public static hexToRgb(hex: string, opacity: number = 1) {
+        let str = hex.replace("#", "");
+        if (str.length % 3) {
+            return "hex格式不正确!";
+        }
+        //获取截取的字符长度
+        let count = str.length / 3;
+        //根据字符串的长度判断是否需要 进行幂次方
+        let power = 6 / str.length;
+        let r = parseInt("0x" + str.substring(0 * count, 1 * count)) ** power;
+        let g = parseInt("0x" + str.substring(1 * count, 2 * count)) ** power;
+        let b = parseInt("0x" + str.substring(2 * count)) ** power;
+        return `rgb(${r}, ${g}, ${b},${opacity})`;
+    }
+
+    public static removeHtmlTag(str: string) {
+        str = str.replace(/<\/?[^>]*>/g, ""); //去除HTML tag
+        str = str.replace(/[ | ]*\n/g, "\n"); //去除行尾空白
+        str = str.replace(/\n[\s| | ]*\r/g, "\n"); //去除多余空行
+        str = str.replace(/ /gi, ""); //去掉
+        return str;
+    }
+
+    public static unpackPerms = (bits: number) => [
+        !!(bits & 1), // create
+        !!(bits & 2), // update
+        !!(bits & 4), // move
+        !!(bits & 8), // delete
+    ];
+
+    public static copyToClipboard(text: string) {
+        const input = document.createElement("input");
+        input.setAttribute("value", text);
+        document.body.appendChild(input);
+        input.select();
+        try {
+            const successful = document.execCommand("copy");
+            if (successful) {
+                return Promise.resolve();
+            } else {
+                return Promise.reject();
+            }
+        } catch (err) {
+            return Promise.reject(err);
+        } finally {
+            document.body.removeChild(input);
+        }
+    }
+
+    public static sleep(ms: number, callback?: () => void): Promise {
+        return new Promise(resolve => {
+            setTimeout(() => {
+                callback?.();
+                resolve();
+            }, ms);
+        });
+    }
+}
diff --git a/src/views/ledger/LedgerDetailModal.vue b/src/views/ledger/LedgerDetailModal.vue
new file mode 100644
index 0000000..8707371
--- /dev/null
+++ b/src/views/ledger/LedgerDetailModal.vue
@@ -0,0 +1,110 @@
+
+
+
+
+
diff --git a/src/views/ledger/LedgerList.vue b/src/views/ledger/LedgerList.vue
new file mode 100644
index 0000000..1310ebd
--- /dev/null
+++ b/src/views/ledger/LedgerList.vue
@@ -0,0 +1,159 @@
+
+
+
+
+
diff --git a/src/views/route/RouteList.vue b/src/views/route/RouteList.vue
new file mode 100644
index 0000000..63f3a46
--- /dev/null
+++ b/src/views/route/RouteList.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
diff --git a/src/views/target/TargetList.vue b/src/views/target/TargetList.vue
new file mode 100644
index 0000000..f9ccafd
--- /dev/null
+++ b/src/views/target/TargetList.vue
@@ -0,0 +1,88 @@
+
+
+
+
+
diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts
new file mode 100644
index 0000000..bebc7b2
--- /dev/null
+++ b/src/vite-env.d.ts
@@ -0,0 +1,17 @@
+/// 
+
+// import.meta.env 类型声明:VITE_* 仅供本地开发(.env.dev,vite dev --mode dev)读取;
+// build(production mode)无 .env/.env.production,VITE_* 恒为 undefined,不会进构建产物。
+// 线上环境差异由 env-config 运行时配置承担(见 host.config.ts)。
+interface ImportMetaEnv {
+    readonly VITE_BASE_HOST: string;
+    readonly VITE_SSO_HOST: string;
+    readonly VITE_SERVICE_HOST: string;
+    readonly VITE_ZIYUANKU_HOST: string;
+    readonly VITE_ZHUANXIANG_HOST: string;
+    readonly VITE_IS_MOCK: string;
+}
+
+interface ImportMeta {
+    readonly env: ImportMetaEnv;
+}
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 0000000..f9e85eb
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,31 @@
+{
+  "compilerOptions": {
+    "target": "ES2020",
+    "useDefineForClassFields": true,
+    "module": "ESNext",
+    "lib": ["ES2020", "DOM", "DOM.Iterable"],
+    "skipLibCheck": true,
+    "baseUrl": ".",
+    "paths": {
+        "@/*": ["src/*"]
+      },
+    /* Bundler mode */
+    "moduleResolution": "node",
+    "allowImportingTsExtensions": true,
+    "resolveJsonModule": true,
+    "isolatedModules": true,
+    "noEmit": true,
+    "jsx": "preserve",
+
+    /* Linting */
+    "strict": true,
+    "noUnusedLocals": true,
+    "noUnusedParameters": true,
+    "noFallthroughCasesInSwitch": true,
+    "allowSyntheticDefaultImports": true,
+    "types": ["vite/client"] 
+  },
+  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue","types"],
+  
+  "references": [{ "path": "./tsconfig.node.json" }]
+}
diff --git a/tsconfig.node.json b/tsconfig.node.json
new file mode 100644
index 0000000..14f2d04
--- /dev/null
+++ b/tsconfig.node.json
@@ -0,0 +1,11 @@
+{
+  "compilerOptions": {
+    "composite": true,
+    "skipLibCheck": true,
+    "module": "ESNext",
+    "moduleResolution": "node",
+    "allowSyntheticDefaultImports": true,
+    "strict": true
+  },
+  "include": ["vite.config.ts"]
+}
diff --git a/vite.config.ts b/vite.config.ts
new file mode 100644
index 0000000..bf14fdf
--- /dev/null
+++ b/vite.config.ts
@@ -0,0 +1,130 @@
+import { ConfigEnv, UserConfig, defineConfig } from "vite";
+import { createHtmlPlugin } from "vite-plugin-html";
+import vue from "@vitejs/plugin-vue";
+import path, { resolve } from "path";
+import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
+import ViteAutoImport from "unplugin-auto-import/vite";
+
+import UnoCSS from "@unocss/vite";
+import presetUno from "@unocss/preset-uno";
+import presetRemToPx from "@unocss/preset-rem-to-px";
+
+// 构建输出恒为 dist 根:CI 打包 zip 的根目录必须直接是 index.html(projman 前端发布校验 zip 根含 html)。
+// 不再有 dist/base 中间层——outDir=dist/base 时 zip 打 dist 整层,zip 根只有 base/,发布会校验失败。
+// dev(--mode dev)读 .env.dev,VITE_SERVICE_HOST 指向同源前缀 /open-gateway(经下方 proxy 打到 base 域)
+export default defineConfig(({ command, mode }: ConfigEnv): UserConfig => {
+    const outDir = "dist";
+
+    return {
+        plugins: [
+            vue(),
+            createSvgIconsPlugin({
+                iconDirs: [resolve(process.cwd(), "src/assets/icons")],
+                symbolId: "icon-[dir]-[name]",
+                inject: "body-last",
+                customDomId: "__svg__icons__dom__",
+            }),
+            ViteAutoImport({
+                imports: [
+                    "vue",
+                    "vue-router",
+                    {
+                        "view-ui-plus": ["Button", "Table", "Modal", "Message", "Form", "FormItem", "Input", "Select"],
+                    },
+                    {
+                        from: "alova/client",
+                        imports: ["usePagination", "useRequest", "useWatcher", "useForm"],
+                    },
+                ],
+                dts: "./src/auto-imports.d.ts",
+                dirs: ["src/api"],
+            }),
+            createHtmlPlugin({
+                minify: true,
+                pages: [
+                    {
+                        entry: "src/main.ts",
+                        template: "index.html",
+                        filename: "index.html",
+                        injectOptions: {
+                            data: {
+                                title: "开放网关",
+                                injectScript: ``,
+                            },
+                        },
+                    },
+                ],
+            }),
+            UnoCSS({
+                presets: [
+                    presetUno(),
+                    presetRemToPx({ baseFontSize: 4 }), // 1单位=1px(去rem化)
+                ],
+                shortcuts: {
+                    "flex-center": "flex items-center justify-center",
+                    btn: "px-16px py-8px rounded-4px cursor-pointer transition-all duration-200",
+                    "btn-primary": "bg-blue-600 text-white hover:bg-blue-700",
+                    card: "bg-white rounded-8px shadow-md p-16px",
+                    "text-ellipsis": "truncate",
+                    "text-multi-ellipsis": "line-clamp-2",
+                },
+                theme: {
+                    fontSize: {
+                        xs: "12px",
+                        sm: "14px",
+                        base: "16px",
+                        lg: "18px",
+                        xl: "20px",
+                        "2xl": "24px",
+                    },
+                },
+            }),
+        ],
+        resolve: {
+            alias: {
+                "@": path.resolve(__dirname, "./src"),
+            },
+        },
+        server: {
+            host: "localhost",
+            port: 8131,
+            // 本地联调:/open-gateway/api/* → base 域(Caddy 剥前缀后转发到网关容器网内 10013)
+            // 走代理而非跨源直连:网关无 CORS,且 10013 仅绑容器网内 127.0.0.1
+            proxy: {
+                "/open-gateway/api": {
+                    target: "http://base.yunhaixingtong.com",
+                    changeOrigin: true,
+                },
+            },
+        },
+        base: "./",
+        build: {
+            target: "modules",
+            outDir,
+            assetsDir: "assets",
+            sourcemap: false,
+            minify: "esbuild",
+            chunkSizeWarningLimit: 1000,
+            cssTarget: "chrome61",
+            rollupOptions: {
+                input: {
+                    main: resolve("index.html"),
+                },
+                output: {
+                    chunkFileNames: "static/js/[name]-[hash].js",
+                    entryFileNames: "static/js/[name]-[hash].js",
+                    assetFileNames: (assetInfo: any) => {
+                        if (assetInfo.type === "asset" && /\.(jpe?g|png|gif|svg)$/i.test(assetInfo.name)) {
+                            return "static/img/[name].[hash][ext]";
+                        }
+                        if (assetInfo.type === "asset" && /\.(ttf|woff|woff2|eot)$/i.test(assetInfo.name)) {
+                            return "static/fonts/[name].[hash][ext]";
+                        }
+                        return "static/[ext]/[name]-[hash].[ext]";
+                    },
+                },
+                manualEntrypoint: "index.html",
+            },
+        },
+    };
+});