commit d0c3fd162a33016ebdbffe4456bfe79869eb0c44 Author: 24kycj <1637269896@qq.com> Date: Fri May 22 19:56:22 2026 +0800 初始化 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..86193be --- /dev/null +++ b/.gitignore @@ -0,0 +1,22 @@ +# 本地文档与设计稿(不入库) +docs/ + +# Cursor / IDE +.cursor/ + +# 系统 +.DS_Store +Thumbs.db +desktop.ini + +# 编辑器 +.idea/ +.vscode/ +*.swp +*.suo + +# 日志与环境 +*.log +.env +.env.* +!.env.example diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..55b90c0 --- /dev/null +++ b/app/.gitignore @@ -0,0 +1,8 @@ +node_modules/ +dist/ +out/ +release/ +*.log +.env +.env.* +!.env.example diff --git a/app/.nvmrc b/app/.nvmrc new file mode 100644 index 0000000..99cdd80 --- /dev/null +++ b/app/.nvmrc @@ -0,0 +1 @@ +16.15.0 diff --git a/app/electron.vite.config.ts b/app/electron.vite.config.ts new file mode 100644 index 0000000..d761a31 --- /dev/null +++ b/app/electron.vite.config.ts @@ -0,0 +1,24 @@ +import { resolve } from 'path' +import { defineConfig, externalizeDepsPlugin } from 'electron-vite' +import vue from '@vitejs/plugin-vue' + +const sharedAlias = { '@shared': resolve('src/shared') } + +export default defineConfig({ + main: { + resolve: { alias: sharedAlias }, + plugins: [externalizeDepsPlugin()] + }, + preload: { + plugins: [externalizeDepsPlugin()] + }, + renderer: { + resolve: { + alias: { + '@': resolve('src/renderer/src'), + ...sharedAlias + } + }, + plugins: [vue()] + } +}) diff --git a/app/package-lock.json b/app/package-lock.json new file mode 100644 index 0000000..b07dcf5 --- /dev/null +++ b/app/package-lock.json @@ -0,0 +1,10441 @@ +{ + "name": "cardsoon-machine", + "version": "0.0.1", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "cardsoon-machine", + "version": "0.0.1", + "dependencies": { + "@fortawesome/fontawesome-free": "^6.4.0", + "electron-log": "^5.1.2", + "electron-store": "^8.1.0", + "element-plus": "^2.4.4", + "koffi": "^2.9.0", + "pinia": "^2.1.7", + "vue": "^3.4.21", + "vue-router": "^4.3.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.6.2", + "electron": "20.3.12", + "electron-builder": "^24.13.3", + "electron-vite": "^1.0.29", + "sass": "^1.69.5", + "typescript": "^5.3.3", + "vite": "^4.5.2", + "vue-tsc": "^1.8.27" + }, + "engines": { + "node": "16.15.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.3", + "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.29.3.tgz", + "integrity": "sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmmirror.com/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.3", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.3.tgz", + "integrity": "sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA==", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-4.2.0.tgz", + "integrity": "sha512-kzyuwOAQnXJNLS9PSyrk0CWk35nWJW/zl/6KvnTBMFK65gm7U1/Z5BqjxeapjZCIhQcM/DsrEmcbRwDyXyXK4A==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "resolved": "https://registry.npmmirror.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz", + "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", + "dev": true, + "dependencies": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@develar/schema-utils/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@develar/schema-utils/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, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/@develar/schema-utils/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 + }, + "node_modules/@electron/asar": { + "version": "3.4.1", + "resolved": "https://registry.npmmirror.com/@electron/asar/-/asar-3.4.1.tgz", + "integrity": "sha512-i4/rNPRS84t0vSRa2HorerGRXWyF4vThfHesw0dmcWHp+cspK743UanA0suA5Q5y8kzY2y6YKrvbIUn69BCAiA==", + "dev": true, + "dependencies": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "bin": { + "asar": "bin/asar.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/@electron/asar/node_modules/brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@electron/asar/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/get": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@electron/get/-/get-1.14.1.tgz", + "integrity": "sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^9.6.0", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=8.6" + }, + "optionalDependencies": { + "global-agent": "^3.0.0", + "global-tunnel-ng": "^2.7.1" + } + }, + "node_modules/@electron/notarize": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/@electron/notarize/-/notarize-2.2.1.tgz", + "integrity": "sha512-aL+bFMIkpR0cmmj5Zgy0LMKEpgy43/hw5zadEArgmAMWWlKc5buwFvFT9G/o/YJkvXAJm5q3iuTuLaiaXW39sg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/notarize/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/notarize/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/osx-sign": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/@electron/osx-sign/-/osx-sign-1.0.5.tgz", + "integrity": "sha512-k9ZzUQtamSoweGQDV2jILiRIHUu7lYlJ3c6IEmjv1hC17rclE+eb9U+f6UFlOOETo0JzY1HNlXy4YOlCvl+Lww==", + "dev": true, + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@electron/osx-sign/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/@electron/osx-sign/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/osx-sign/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/universal": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/@electron/universal/-/universal-1.5.1.tgz", + "integrity": "sha512-kbgXxyEauPJiQQUNG2VgUeyfQNFk6hBF11ISN2PNI6agUgPl55pv4eQmaqHzTAzchBvqZ2tQuRVaPStGf0mxGw==", + "dev": true, + "dependencies": { + "@electron/asar": "^3.2.1", + "@malept/cross-spawn-promise": "^1.1.0", + "debug": "^4.3.1", + "dir-compare": "^3.0.0", + "fs-extra": "^9.0.1", + "minimatch": "^3.0.4", + "plist": "^3.0.4" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@electron/universal/node_modules/brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@electron/universal/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/universal/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/universal/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/universal/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@element-plus/icons-vue": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.2.tgz", + "integrity": "sha512-OzIuTaIfC8QXEPmJvB4Y4kw34rSXdCJzxcD1kFStBvr8bK6X1zQAYDo0CNMjojnfTqRQCJ0I7prlErcoRiET2A==", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.5", + "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.7.5.tgz", + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "dependencies": { + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "dependencies": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.11", + "resolved": "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.11.tgz", + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==" + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.4.0", + "resolved": "https://registry.npmmirror.com/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.0.tgz", + "integrity": "sha512-0NyytTlPJwB/BF5LtRV8rrABDbe3TdTXqNB3PdZ+UUUZAEIrdOJdmABqKjt4AXwIoJNaRVVZEXxpNrqvE1GAYQ==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.2.2" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "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, + "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, + "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, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" + }, + "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, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@malept/cross-spawn-promise": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz", + "integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" + } + ], + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", + "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@malept/flatpak-bundler/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@malept/flatpak-bundler/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher/-/watcher-2.5.6.tgz", + "integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.6", + "@parcel/watcher-darwin-arm64": "2.5.6", + "@parcel/watcher-darwin-x64": "2.5.6", + "@parcel/watcher-freebsd-x64": "2.5.6", + "@parcel/watcher-linux-arm-glibc": "2.5.6", + "@parcel/watcher-linux-arm-musl": "2.5.6", + "@parcel/watcher-linux-arm64-glibc": "2.5.6", + "@parcel/watcher-linux-arm64-musl": "2.5.6", + "@parcel/watcher-linux-x64-glibc": "2.5.6", + "@parcel/watcher-linux-x64-musl": "2.5.6", + "@parcel/watcher-win32-arm64": "2.5.6", + "@parcel/watcher-win32-ia32": "2.5.6", + "@parcel/watcher-win32-x64": "2.5.6" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", + "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.6.tgz", + "integrity": "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", + "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", + "cpu": [ + "x64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", + "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", + "cpu": [ + "x64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", + "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", + "cpu": [ + "arm" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", + "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", + "cpu": [ + "arm" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", + "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", + "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", + "cpu": [ + "arm64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.6.tgz", + "integrity": "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==", + "cpu": [ + "x64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", + "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", + "cpu": [ + "x64" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", + "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", + "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", + "cpu": [ + "ia32" + ], + "dev": true, + "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.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", + "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "name": "@sxzz/popperjs-es", + "version": "2.11.8", + "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.8.tgz", + "integrity": "sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-2.0.1.tgz", + "integrity": "sha512-HqmEUIGRJ5fSXchkVgR5F7qn48bDBzv0kWj/Kfu5e6uci4UlEeng4331LnBkWffb++Ei3FOVLxo8JJWMFBDMeQ==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/debug": { + "version": "4.1.13", + "resolved": "https://registry.npmmirror.com/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", + "dev": true, + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmmirror.com/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/lodash": { + "version": "4.17.24", + "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.24.tgz", + "integrity": "sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==" + }, + "node_modules/@types/lodash-es": { + "version": "4.17.12", + "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz", + "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "16.18.126", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-16.18.126.tgz", + "integrity": "sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw==", + "dev": true + }, + "node_modules/@types/plist": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/@types/plist/-/plist-3.0.5.tgz", + "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "node_modules/@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmmirror.com/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "optional": true + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.21", + "resolved": "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz", + "integrity": "sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==" + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmmirror.com/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "4.6.2", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz", + "integrity": "sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.34.tgz", + "integrity": "sha512-s9cLyK5mLcvZ4Agva5QgRsQyLKvts9WbU9DB6NqiZkkGEdwmcEiylj5Jbwkp680drF/NNCV8OlAJSe+yMLxaJw==", + "dependencies": { + "@babel/parser": "^7.29.3", + "@vue/shared": "3.5.34", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.34.tgz", + "integrity": "sha512-EbF/T++k0e2MMZlJsBhzK8Sgwt0HcIPOhzn1CTB/lv6sQcyk+OWf8YeiLxZp3ro7MbbLcAfAJ6sEvjFWuNgUCw==", + "dependencies": { + "@vue/compiler-core": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.34.tgz", + "integrity": "sha512-D/ihr6uZeIt6r+pVZf46RWT1fAsLFMbUP7k8G1VkiiWexriED9GrX3echHd4Abbt17zjlfiFJ8z7a3BxZOPNjg==", + "dependencies": { + "@babel/parser": "^7.29.3", + "@vue/compiler-core": "3.5.34", + "@vue/compiler-dom": "3.5.34", + "@vue/compiler-ssr": "3.5.34", + "@vue/shared": "3.5.34", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.14", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.34.tgz", + "integrity": "sha512-cDtTHKibkThKGHH1SP+WdccquNRYQDFH6rRjQCqT9G2ltFAfoR5pUftpab/z+aM5mW9HLLVQW7hfKKQe/1GBeQ==", + "dependencies": { + "@vue/compiler-dom": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "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==" + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.34.tgz", + "integrity": "sha512-y9XDjCEuBp+98k+UL5dbYkh57AHU4o6cxZedOPXw3bmrZZYLQsVHguGurq7hVrPCSrQtrnz1f9dssyFr+dMXfQ==", + "dependencies": { + "@vue/shared": "3.5.34" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.34.tgz", + "integrity": "sha512-mKeBYvu8tcMSLhypAHBmriUFfWXKTCF/23Z4jiCoYK3UtWepkliViNLuR90V9XOyD62mUxs9p1jsrpK3CCGIzw==", + "dependencies": { + "@vue/reactivity": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.34.tgz", + "integrity": "sha512-e8kZzERmCwUnBRVsgSQlAfrfU2rGoy0FFKPBXSlfEjc/O3KfA7QP0t1/2ZylrbchjmIKB4dPTd07A6WPr0eOrg==", + "dependencies": { + "@vue/reactivity": "3.5.34", + "@vue/runtime-core": "3.5.34", + "@vue/shared": "3.5.34", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.34.tgz", + "integrity": "sha512-nHxmJoTrKsmrkbILRhkC9gY1G3moZbJTqCzDd7DOOzG5KH9oeJ0Unqrff5f9v0pW//jES05ZkJcNtfE8JjOIew==", + "dependencies": { + "@vue/compiler-ssr": "3.5.34", + "@vue/shared": "3.5.34" + }, + "peerDependencies": { + "vue": "3.5.34" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.34.tgz", + "integrity": "sha512-24uqU4OIiX29ryC3MeWid/Xf2fa2EFRUVLb77nRhk+UrTVrh/XiGtFAFmJBAtBRbjwNdsPRP+jj/OL27Eg1NDA==" + }, + "node_modules/@vueuse/core": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-14.3.0.tgz", + "integrity": "sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==", + "dependencies": { + "@types/web-bluetooth": "^0.0.21", + "@vueuse/metadata": "14.3.0", + "@vueuse/shared": "14.3.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/@vueuse/metadata": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-14.3.0.tgz", + "integrity": "sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-14.3.0.tgz", + "integrity": "sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.9.10", + "resolved": "https://registry.npmmirror.com/@xmldom/xmldom/-/xmldom-0.9.10.tgz", + "integrity": "sha512-A9gOqLdi6cV4ibazAjcQufGj0B1y/vDqYrcuP6d/6x8P27gRS8643Dj9o1dEKtB6O7fwxb2FgBmJS2mX7gpvdw==", + "dev": true, + "engines": { + "node": ">=14.6" + } + }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "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==", + "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": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/app-builder-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz", + "integrity": "sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==", + "dev": true + }, + "node_modules/app-builder-lib": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/app-builder-lib/-/app-builder-lib-24.13.3.tgz", + "integrity": "sha512-FAzX6IBit2POXYGnTCT8YHFO/lr5AapAII6zzhQO3Rw4cEDOgK+t1xhLc5tNcKlicTHlo9zxIwnYCX9X2DLkig==", + "dev": true, + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/notarize": "2.2.1", + "@electron/osx-sign": "1.0.5", + "@electron/universal": "1.5.1", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "bluebird-lst": "^1.0.9", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chromium-pickle-js": "^0.2.0", + "debug": "^4.3.4", + "ejs": "^3.1.8", + "electron-publish": "24.13.1", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "is-ci": "^3.0.0", + "isbinaryfile": "^5.0.0", + "js-yaml": "^4.1.0", + "lazy-val": "^1.0.5", + "minimatch": "^5.1.1", + "read-config-file": "6.3.2", + "sanitize-filename": "^1.6.3", + "semver": "^7.3.8", + "tar": "^6.1.12", + "temp-file": "^3.4.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "24.13.3", + "electron-builder-squirrel-windows": "24.13.3" + } + }, + "node_modules/app-builder-lib/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/app-builder-lib/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/app-builder-lib/node_modules/minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/app-builder-lib/node_modules/semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/app-builder-lib/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", + "dev": true, + "peer": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/archiver-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/archiver-utils/-/archiver-utils-2.1.0.tgz", + "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", + "dev": true, + "peer": true, + "dependencies": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/archiver-utils/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "peer": true + }, + "node_modules/archiver-utils/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "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 + }, + "node_modules/async-exit-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz", + "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/atomically": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/atomically/-/atomically-1.7.0.tgz", + "integrity": "sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==", + "engines": { + "node": ">=10.12.0" + } + }, + "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 + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.31", + "resolved": "https://registry.npmmirror.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.31.tgz", + "integrity": "sha512-MujYO3eP72uvmSE0i4wltsodRfIpZATP3jvzRNRGGxgzId7aVocVJJV3nf01qnzzKFGxQVC9bpWxl5cjxTr/7Q==", + "dev": true, + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "peer": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "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 + }, + "node_modules/bluebird-lst": { + "version": "1.0.9", + "resolved": "https://registry.npmmirror.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz", + "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.5" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dev": true, + "optional": true + }, + "node_modules/brace-expansion": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/browserslist": { + "version": "4.28.2", + "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", + "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" + } + ], + "dependencies": { + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-1.0.1.tgz", + "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==", + "dev": true, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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 + }, + "node_modules/builder-util": { + "version": "24.13.1", + "resolved": "https://registry.npmmirror.com/builder-util/-/builder-util-24.13.1.tgz", + "integrity": "sha512-NhbCSIntruNDTOVI9fdXz0dihaqX2YuE1D6zZMrwiErzH4ELZHE6mdiB40wEgZNprDia+FghRFgKoAqMZRRjSA==", + "dev": true, + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "4.0.0", + "bluebird-lst": "^1.0.9", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-ci": "^3.0.0", + "js-yaml": "^4.1.0", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.2.4", + "resolved": "https://registry.npmmirror.com/builder-util-runtime/-/builder-util-runtime-9.2.4.tgz", + "integrity": "sha512-upp+biKpN/XZMLim7aguUyW8s0FUpDvOtK6sbanMFDAMBzpHDqdhgVYm6zc9HJ6nWo7u2Lxk60i2M6Jd3aiNrA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/builder-util/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/builder-util/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "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, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001793", + "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz", + "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==", + "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" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-pickle-js": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", + "dev": true + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "optional": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-version": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/compare-version/-/compare-version-0.1.2.tgz", + "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", + "dev": true, + "peer": true, + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/conf": { + "version": "10.2.0", + "resolved": "https://registry.npmmirror.com/conf/-/conf-10.2.0.tgz", + "integrity": "sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==", + "dependencies": { + "ajv": "^8.6.3", + "ajv-formats": "^2.1.1", + "atomically": "^1.7.0", + "debounce-fn": "^4.0.0", + "dot-prop": "^6.0.1", + "env-paths": "^2.2.1", + "json-schema-typed": "^7.0.3", + "onetime": "^5.1.2", + "pkg-up": "^3.1.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conf/node_modules/semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmmirror.com/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "optional": true, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/config-file-ts": { + "version": "0.2.6", + "resolved": "https://registry.npmmirror.com/config-file-ts/-/config-file-ts-0.2.6.tgz", + "integrity": "sha512-6boGVaglwblBgJqGyxm4+xCmEGcWgnWHSWHY5jad58awQhB6gftq0G8HbzU39YqCIYHMLAiL1yjwiZ36m/CL8w==", + "dev": true, + "dependencies": { + "glob": "^10.3.10", + "typescript": "^5.3.3" + } + }, + "node_modules/config-file-ts/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/config-file-ts/node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "node_modules/crc": { + "version": "3.8.0", + "resolved": "https://registry.npmmirror.com/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "optional": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "dev": true, + "peer": true, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", + "dev": true, + "peer": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "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==" + }, + "node_modules/dayjs": { + "version": "1.11.20", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.20.tgz", + "integrity": "sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ==" + }, + "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 + }, + "node_modules/debounce-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/debounce-fn/-/debounce-fn-4.0.0.tgz", + "integrity": "sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==", + "dependencies": { + "mimic-fn": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "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, + "optional": true, + "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, + "optional": true, + "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/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "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==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "optional": true + }, + "node_modules/dir-compare": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/dir-compare/-/dir-compare-3.3.0.tgz", + "integrity": "sha512-J7/et3WlGUCxjdnD3HAAzQ6nsnc0WL6DD7WcwJb7c39iH1+AWfg+9OqzJNaI6PkBwBvm1mhZNL9iY/nRiZXlPg==", + "dev": true, + "dependencies": { + "buffer-equal": "^1.0.0", + "minimatch": "^3.0.4" + } + }, + "node_modules/dir-compare/node_modules/brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/dir-compare/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/dmg-builder": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/dmg-builder/-/dmg-builder-24.13.3.tgz", + "integrity": "sha512-rcJUkMfnJpfCboZoOOPf4L29TRtEieHNOeAbYPWPxlaBw/Z1RKrRA86dOI9rwaI4tQSc/RD82zTNHprfUHXsoQ==", + "dev": true, + "dependencies": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-builder/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/dmg-builder/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dmg-license/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "optional": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/dmg-license/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, + "optional": true + }, + "node_modules/dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotenv": { + "version": "9.0.2", + "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-9.0.2.tgz", + "integrity": "sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "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, + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmmirror.com/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", + "dev": true + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "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, + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron": { + "version": "20.3.12", + "resolved": "https://registry.npmmirror.com/electron/-/electron-20.3.12.tgz", + "integrity": "sha512-CuCZKhwdSXaUNIoEuPVZ25YH18zmox3wEM8Acwcy9tlpD8Jiuq3ji3RZ98eVWJalrpqbdE9LtTD/sLC86GIkLg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@electron/get": "^1.14.1", + "@types/node": "^16.11.26", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + } + }, + "node_modules/electron-builder": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/electron-builder/-/electron-builder-24.13.3.tgz", + "integrity": "sha512-yZSgVHft5dNVlo31qmJAe4BVKQfFdwpRw7sFp1iQglDRCDD6r22zfRJuZlhtB5gp9FHUxCMEoWGq10SkCnMAIg==", + "dev": true, + "dependencies": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "dmg-builder": "24.13.3", + "fs-extra": "^10.1.0", + "is-ci": "^3.0.0", + "lazy-val": "^1.0.5", + "read-config-file": "6.3.2", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "bin": { + "electron-builder": "cli.js", + "install-app-deps": "install-app-deps.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/electron-builder-squirrel-windows": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-24.13.3.tgz", + "integrity": "sha512-oHkV0iogWfyK+ah9ZIvMDpei1m9ZRpdXcvde1wTpra2U8AFDNNpqJdnin5z+PM1GbQ5BoaKCWas2HSjtR0HwMg==", + "dev": true, + "peer": true, + "dependencies": { + "app-builder-lib": "24.13.3", + "archiver": "^5.3.1", + "builder-util": "24.13.1", + "fs-extra": "^10.1.0" + } + }, + "node_modules/electron-builder-squirrel-windows/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, + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-builder-squirrel-windows/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, + "peer": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-builder-squirrel-windows/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, + "peer": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-builder/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-builder/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-builder/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-log": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/electron-log/-/electron-log-5.1.2.tgz", + "integrity": "sha512-Cpg4hAZ27yM9wzE77c4TvgzxzavZ+dVltCczParXN+Vb3jocojCSAuSMCVOI9fhFuuOR+iuu3tZLX1cu0y0kgQ==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/electron-publish": { + "version": "24.13.1", + "resolved": "https://registry.npmmirror.com/electron-publish/-/electron-publish-24.13.1.tgz", + "integrity": "sha512-2ZgdEqJ8e9D17Hwp5LEq5mLQPjqU3lv/IALvgp+4W8VeNhryfGhYEQC/PgDPMrnWUp+l60Ou5SJLsu+k4mhQ8A==", + "dev": true, + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-publish/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-store": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/electron-store/-/electron-store-8.1.0.tgz", + "integrity": "sha512-2clHg/juMjOH0GT9cQ6qtmIvK183B39ZXR0bUoPwKwYHJsEF3quqyDzMFUAu+0OP8ijmN2CbPRAelhNbWUbzwA==", + "dependencies": { + "conf": "^10.2.0", + "type-fest": "^2.17.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/electron-store/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.359", + "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.359.tgz", + "integrity": "sha512-8lPELWuYZIWk7NDvCNthtmMw/7Q5Wu25NpM4djFMHBmk8DubPAtL4YTOp7ou0e7HyJtwkVlWv8XMLURnrtgJQw==", + "dev": true + }, + "node_modules/electron-vite": { + "version": "1.0.29", + "resolved": "https://registry.npmmirror.com/electron-vite/-/electron-vite-1.0.29.tgz", + "integrity": "sha512-BDTmVTLIri8W4Lz1tn5RAV1slSTinBBb6G77+qKcjkF0vEwdiUp2ntSU6FDqwP9pmy1t96U1CZqIYIStF8H6Jw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.22.8", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "cac": "^6.7.14", + "esbuild": "^0.18.11", + "magic-string": "^0.30.1", + "picocolors": "^1.0.0" + }, + "bin": { + "electron-vite": "bin/electron-vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "@swc/core": "^1.0.0", + "vite": "^3.0.0 || ^4.0.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + } + } + }, + "node_modules/element-plus": { + "version": "2.14.0", + "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.14.0.tgz", + "integrity": "sha512-POgH+TtoreaEKWqYYAVQyE6i8rQMEFqAEublyF29dBA5yASWPLKY6EzfeqBTr2Uv26mPss4vSrMrNPyaK7LX5w==", + "dependencies": { + "@ctrl/tinycolor": "^4.2.0", + "@element-plus/icons-vue": "^2.3.2", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.8", + "@types/lodash": "^4.17.24", + "@types/lodash-es": "^4.17.12", + "@vueuse/core": "14.3.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.20", + "lodash": "^4.18.1", + "lodash-es": "^4.18.1", + "lodash-unified": "^1.0.3", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0", + "vue-component-type-helpers": "^3.2.8" + }, + "peerDependencies": { + "vue": "^3.3.7" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "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, + "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, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "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, + "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/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true, + "optional": true + }, + "node_modules/esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" + } + }, + "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, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "optional": true + }, + "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==" + }, + "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 + }, + "node_modules/fast-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/fast-uri/-/fast-uri-3.1.2.tgz", + "integrity": "sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ] + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "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, + "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, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true, + "peer": true + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "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, + "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, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "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, + "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, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/global-tunnel-ng": { + "version": "2.7.1", + "resolved": "https://registry.npmmirror.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", + "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", + "dev": true, + "optional": true, + "dependencies": { + "encodeurl": "^1.0.2", + "lodash": "^4.17.10", + "npm-conf": "^1.1.3", + "tunnel": "^0.0.6" + }, + "engines": { + "node": ">=0.10" + } + }, + "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, + "optional": true, + "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, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmmirror.com/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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 + }, + "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, + "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, + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "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, + "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, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", + "dev": true, + "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, + "bin": { + "he": "bin/he" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmmirror.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "node_modules/iconv-corefoundation/node_modules/node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", + "dev": true, + "optional": true + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/immutable": { + "version": "5.1.5", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-5.1.5.tgz", + "integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "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 + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "optional": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "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, + "peer": true + }, + "node_modules/isbinaryfile": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-5.0.0.tgz", + "integrity": "sha512-UDdnyGvMajJUWCkib7Cei/dvyJrrvo4FIrsvSFWdPpXSUorzXrDJ0S+X5Q4ZlasfPjca4yqCNNsjbCeiy8FFeg==", + "dev": true, + "engines": { + "node": ">= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.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, + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "dev": true + }, + "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==" + }, + "node_modules/json-schema-typed": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz", + "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true, + "optional": true + }, + "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, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/koffi": { + "version": "2.9.0", + "resolved": "https://registry.npmmirror.com/koffi/-/koffi-2.9.0.tgz", + "integrity": "sha512-KCsuJ2gM58n6bNdR2Z7gqsh/3TchxxQFbVgax2/UvAjRTgwNSYAJDx9E3jrkBP4jEDHWRCfE47Y2OG+/fiSvEw==", + "hasInstallScript": true + }, + "node_modules/lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "dev": true + }, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dev": true, + "peer": true, + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "peer": true + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==" + }, + "node_modules/lodash-es": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.18.1.tgz", + "integrity": "sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==" + }, + "node_modules/lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "peerDependencies": { + "@types/lodash-es": "*", + "lodash": "*", + "lodash-es": "*" + } + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true, + "peer": true + }, + "node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "dev": true, + "peer": true + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "dev": true, + "peer": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmmirror.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true, + "peer": true + }, + "node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "dev": true, + "peer": true + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "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==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "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, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "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, + "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, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "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 + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/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==", + "dev": true, + "optional": true + }, + "node_modules/node-releases": { + "version": "2.0.44", + "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.44.tgz", + "integrity": "sha512-5WUyunoPMsvvEhS8AxHtRzP+oA8UCkJ7YRxatWKjngndhDGLiqEVAQKWjFAiAiuL8zMRGzGSJxFnLetoa43qGQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "node_modules/npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dev": true, + "optional": true, + "dependencies": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "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, + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/onetime/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "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 + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "optional": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.4.4", + "vue": "^2.7.0 || ^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/plist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/plist/-/plist-3.1.1.tgz", + "integrity": "sha512-ZIfcLJC+7E7FBFnDxm9MPmt7D+DidyQ26lewieO75AdhA2ayMtsJSES0iWzqJQbcVRSrTufQoy0DR94xHue0oA==", + "dev": true, + "dependencies": { + "@xmldom/xmldom": "^0.9.10", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true, + "peer": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true, + "optional": true + }, + "node_modules/pump": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "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, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-config-file": { + "version": "6.3.2", + "resolved": "https://registry.npmmirror.com/read-config-file/-/read-config-file-6.3.2.tgz", + "integrity": "sha512-M80lpCjnE6Wt6zb98DoW8WHR09nzMSpu8XHtPkiTHrJ5Az9CybfeQhTJ8D7saeBHpGhLPIVyA8lcL6ZmdKwY6Q==", + "dev": true, + "dependencies": { + "config-file-ts": "^0.2.4", + "dotenv": "^9.0.2", + "dotenv-expand": "^5.1.0", + "js-yaml": "^4.1.0", + "json5": "^2.2.0", + "lazy-val": "^1.0.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "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, + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dev": true, + "peer": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmmirror.com/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/rollup": { + "version": "3.30.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.30.0.tgz", + "integrity": "sha512-kQvGasUgN+AlWGliFn2POSajRQEsULVYFGTvOZmK06d7vCD+YhZztt70kGk3qaeAXeWYL5eO7zx+rAubBc55eA==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "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" + } + ], + "peer": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sanitize-filename": { + "version": "1.6.4", + "resolved": "https://registry.npmmirror.com/sanitize-filename/-/sanitize-filename-1.6.4.tgz", + "integrity": "sha512-9ZyI08PsvdQl2r/bBIGubpVdR3RR9sY6RDiWFPreA21C/EFlQhmgo20UZlNjZMMZNubusLhAQozkA0Od5J21Eg==", + "dev": true, + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sass": { + "version": "1.99.0", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.99.0.tgz", + "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", + "dev": true, + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.1.5", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/sax": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.6.0.tgz", + "integrity": "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==", + "dev": true, + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true, + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "optional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.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, + "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==", + "engines": { + "node": ">=0.10.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, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true, + "optional": true + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "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, + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dev": true, + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "peer": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/temp-file": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/temp-file/-/temp-file-3.4.0.tgz", + "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", + "dev": true, + "dependencies": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + } + }, + "node_modules/temp-file/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, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp-file/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, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/temp-file/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, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/tmp": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/tmp-promise/-/tmp-promise-3.0.3.tgz", + "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", + "dev": true, + "dependencies": { + "tmp": "^0.2.0" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dev": true, + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmmirror.com/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "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" + } + ], + "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, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "dev": true + }, + "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, + "peer": true + }, + "node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "optional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/vite": { + "version": "4.5.14", + "resolved": "https://registry.npmmirror.com/vite/-/vite-4.5.14.tgz", + "integrity": "sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.34.tgz", + "integrity": "sha512-WdLBG9gm02OgJIG9axd5Hpx0TFLdzVgfG2evFFu8Rur5O/IoGc5cMjnjh3tPL6GnRGsYvUhBSKVPYVcxRKpMCA==", + "dependencies": { + "@vue/compiler-dom": "3.5.34", + "@vue/compiler-sfc": "3.5.34", + "@vue/runtime-dom": "3.5.34", + "@vue/server-renderer": "3.5.34", + "@vue/shared": "3.5.34" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-component-type-helpers": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/vue-component-type-helpers/-/vue-component-type-helpers-3.3.1.tgz", + "integrity": "sha512-pu58kqxmVyEH6VfNYW1UyEfR3XAnJ27ZXT3yzXxxpjLxVzAbyC35Zk/nm/RMs7ijWnJNSd9fWkeex2OhUsx3MA==" + }, + "node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/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==", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-tsc/node_modules/semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmmirror.com/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "dev": true, + "peer": true, + "dependencies": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", + "dev": true, + "peer": true, + "dependencies": { + "glob": "^7.2.3", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + } + }, + "@babel/compat-data": { + "version": "7.29.3", + "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.29.3.tgz", + "integrity": "sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg==", + "dev": true + }, + "@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "requires": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmmirror.com/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true + }, + "@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "requires": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==" + }, + "@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==" + }, + "@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true + }, + "@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "dev": true, + "requires": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" + } + }, + "@babel/parser": { + "version": "7.29.3", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.3.tgz", + "integrity": "sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA==", + "requires": { + "@babel/types": "^7.29.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmmirror.com/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + } + }, + "@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + } + }, + "@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "requires": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + } + }, + "@ctrl/tinycolor": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-4.2.0.tgz", + "integrity": "sha512-kzyuwOAQnXJNLS9PSyrk0CWk35nWJW/zl/6KvnTBMFK65gm7U1/Z5BqjxeapjZCIhQcM/DsrEmcbRwDyXyXK4A==" + }, + "@develar/schema-utils": { + "version": "2.6.5", + "resolved": "https://registry.npmmirror.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz", + "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", + "dev": true, + "requires": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "dependencies": { + "ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "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, + "requires": {} + }, + "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 + } + } + }, + "@electron/asar": { + "version": "3.4.1", + "resolved": "https://registry.npmmirror.com/@electron/asar/-/asar-3.4.1.tgz", + "integrity": "sha512-i4/rNPRS84t0vSRa2HorerGRXWyF4vThfHesw0dmcWHp+cspK743UanA0suA5Q5y8kzY2y6YKrvbIUn69BCAiA==", + "dev": true, + "requires": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "@electron/get": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@electron/get/-/get-1.14.1.tgz", + "integrity": "sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "global-agent": "^3.0.0", + "global-tunnel-ng": "^2.7.1", + "got": "^9.6.0", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + } + }, + "@electron/notarize": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/@electron/notarize/-/notarize-2.2.1.tgz", + "integrity": "sha512-aL+bFMIkpR0cmmj5Zgy0LMKEpgy43/hw5zadEArgmAMWWlKc5buwFvFT9G/o/YJkvXAJm5q3iuTuLaiaXW39sg==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "dependencies": { + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "@electron/osx-sign": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/@electron/osx-sign/-/osx-sign-1.0.5.tgz", + "integrity": "sha512-k9ZzUQtamSoweGQDV2jILiRIHUu7lYlJ3c6IEmjv1hC17rclE+eb9U+f6UFlOOETo0JzY1HNlXy4YOlCvl+Lww==", + "dev": true, + "requires": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "@electron/universal": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/@electron/universal/-/universal-1.5.1.tgz", + "integrity": "sha512-kbgXxyEauPJiQQUNG2VgUeyfQNFk6hBF11ISN2PNI6agUgPl55pv4eQmaqHzTAzchBvqZ2tQuRVaPStGf0mxGw==", + "dev": true, + "requires": { + "@electron/asar": "^3.2.1", + "@malept/cross-spawn-promise": "^1.1.0", + "debug": "^4.3.1", + "dir-compare": "^3.0.0", + "fs-extra": "^9.0.1", + "minimatch": "^3.0.4", + "plist": "^3.0.4" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "@element-plus/icons-vue": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.2.tgz", + "integrity": "sha512-OzIuTaIfC8QXEPmJvB4Y4kw34rSXdCJzxcD1kFStBvr8bK6X1zQAYDo0CNMjojnfTqRQCJ0I7prlErcoRiET2A==", + "requires": {} + }, + "@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "dev": true, + "optional": true + }, + "@floating-ui/core": { + "version": "1.7.5", + "resolved": "https://registry.npmmirror.com/@floating-ui/core/-/core-1.7.5.tgz", + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "requires": { + "@floating-ui/utils": "^0.2.11" + } + }, + "@floating-ui/dom": { + "version": "1.7.6", + "resolved": "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.7.6.tgz", + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "requires": { + "@floating-ui/core": "^1.7.5", + "@floating-ui/utils": "^0.2.11" + } + }, + "@floating-ui/utils": { + "version": "0.2.11", + "resolved": "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.11.tgz", + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==" + }, + "@fortawesome/fontawesome-free": { + "version": "6.4.0", + "resolved": "https://registry.npmmirror.com/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.0.tgz", + "integrity": "sha512-0NyytTlPJwB/BF5LtRV8rrABDbe3TdTXqNB3PdZ+UUUZAEIrdOJdmABqKjt4AXwIoJNaRVVZEXxpNrqvE1GAYQ==" + }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true + }, + "ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", + "dev": true, + "requires": { + "ansi-regex": "^6.2.2" + } + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + } + } + } + }, + "@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, + "requires": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@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, + "requires": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@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 + }, + "@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" + }, + "@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, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "@malept/cross-spawn-promise": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz", + "integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.1" + } + }, + "@malept/flatpak-bundler": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", + "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "dependencies": { + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "@parcel/watcher": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher/-/watcher-2.5.6.tgz", + "integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==", + "dev": true, + "optional": true, + "requires": { + "@parcel/watcher-android-arm64": "2.5.6", + "@parcel/watcher-darwin-arm64": "2.5.6", + "@parcel/watcher-darwin-x64": "2.5.6", + "@parcel/watcher-freebsd-x64": "2.5.6", + "@parcel/watcher-linux-arm-glibc": "2.5.6", + "@parcel/watcher-linux-arm-musl": "2.5.6", + "@parcel/watcher-linux-arm64-glibc": "2.5.6", + "@parcel/watcher-linux-arm64-musl": "2.5.6", + "@parcel/watcher-linux-x64-glibc": "2.5.6", + "@parcel/watcher-linux-x64-musl": "2.5.6", + "@parcel/watcher-win32-arm64": "2.5.6", + "@parcel/watcher-win32-ia32": "2.5.6", + "@parcel/watcher-win32-x64": "2.5.6", + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.3" + } + }, + "@parcel/watcher-android-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", + "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.6.tgz", + "integrity": "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", + "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-freebsd-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", + "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", + "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", + "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", + "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", + "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.6.tgz", + "integrity": "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", + "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", + "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-ia32": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", + "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", + "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", + "dev": true, + "optional": true + }, + "@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true + }, + "@popperjs/core": { + "version": "npm:@sxzz/popperjs-es@2.11.8", + "resolved": "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.8.tgz", + "integrity": "sha512-wOwESXvvED3S8xBmcPWHs2dUuzrE4XiZeFu7e1hROIJkm02a49N120pmOXxY33sBb6hArItm5W5tcg1cBtV+HQ==" + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@tootallnate/once": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-2.0.1.tgz", + "integrity": "sha512-HqmEUIGRJ5fSXchkVgR5F7qn48bDBzv0kWj/Kfu5e6uci4UlEeng4331LnBkWffb++Ei3FOVLxo8JJWMFBDMeQ==", + "dev": true + }, + "@types/debug": { + "version": "4.1.13", + "resolved": "https://registry.npmmirror.com/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", + "dev": true, + "requires": { + "@types/ms": "*" + } + }, + "@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmmirror.com/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/lodash": { + "version": "4.17.24", + "resolved": "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.24.tgz", + "integrity": "sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==" + }, + "@types/lodash-es": { + "version": "4.17.12", + "resolved": "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz", + "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==", + "requires": { + "@types/lodash": "*" + } + }, + "@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true + }, + "@types/node": { + "version": "16.18.126", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-16.18.126.tgz", + "integrity": "sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw==", + "dev": true + }, + "@types/plist": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/@types/plist/-/plist-3.0.5.tgz", + "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", + "dev": true, + "optional": true, + "requires": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmmirror.com/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "optional": true + }, + "@types/web-bluetooth": { + "version": "0.0.21", + "resolved": "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.21.tgz", + "integrity": "sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==" + }, + "@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmmirror.com/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "dev": true, + "optional": true, + "requires": { + "@types/node": "*" + } + }, + "@vitejs/plugin-vue": { + "version": "4.6.2", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz", + "integrity": "sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==", + "dev": true, + "requires": {} + }, + "@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "requires": { + "@volar/source-map": "1.11.1" + } + }, + "@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "requires": { + "muggle-string": "^0.3.1" + } + }, + "@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "requires": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "@vue/compiler-core": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.34.tgz", + "integrity": "sha512-s9cLyK5mLcvZ4Agva5QgRsQyLKvts9WbU9DB6NqiZkkGEdwmcEiylj5Jbwkp680drF/NNCV8OlAJSe+yMLxaJw==", + "requires": { + "@babel/parser": "^7.29.3", + "@vue/shared": "3.5.34", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "@vue/compiler-dom": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.34.tgz", + "integrity": "sha512-EbF/T++k0e2MMZlJsBhzK8Sgwt0HcIPOhzn1CTB/lv6sQcyk+OWf8YeiLxZp3ro7MbbLcAfAJ6sEvjFWuNgUCw==", + "requires": { + "@vue/compiler-core": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "@vue/compiler-sfc": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.34.tgz", + "integrity": "sha512-D/ihr6uZeIt6r+pVZf46RWT1fAsLFMbUP7k8G1VkiiWexriED9GrX3echHd4Abbt17zjlfiFJ8z7a3BxZOPNjg==", + "requires": { + "@babel/parser": "^7.29.3", + "@vue/compiler-core": "3.5.34", + "@vue/compiler-dom": "3.5.34", + "@vue/compiler-ssr": "3.5.34", + "@vue/shared": "3.5.34", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.14", + "source-map-js": "^1.2.1" + } + }, + "@vue/compiler-ssr": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.34.tgz", + "integrity": "sha512-cDtTHKibkThKGHH1SP+WdccquNRYQDFH6rRjQCqT9G2ltFAfoR5pUftpab/z+aM5mW9HLLVQW7hfKKQe/1GBeQ==", + "requires": { + "@vue/compiler-dom": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "@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==" + }, + "@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "requires": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + } + }, + "@vue/reactivity": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.34.tgz", + "integrity": "sha512-y9XDjCEuBp+98k+UL5dbYkh57AHU4o6cxZedOPXw3bmrZZYLQsVHguGurq7hVrPCSrQtrnz1f9dssyFr+dMXfQ==", + "requires": { + "@vue/shared": "3.5.34" + } + }, + "@vue/runtime-core": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.34.tgz", + "integrity": "sha512-mKeBYvu8tcMSLhypAHBmriUFfWXKTCF/23Z4jiCoYK3UtWepkliViNLuR90V9XOyD62mUxs9p1jsrpK3CCGIzw==", + "requires": { + "@vue/reactivity": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "@vue/runtime-dom": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.34.tgz", + "integrity": "sha512-e8kZzERmCwUnBRVsgSQlAfrfU2rGoy0FFKPBXSlfEjc/O3KfA7QP0t1/2ZylrbchjmIKB4dPTd07A6WPr0eOrg==", + "requires": { + "@vue/reactivity": "3.5.34", + "@vue/runtime-core": "3.5.34", + "@vue/shared": "3.5.34", + "csstype": "^3.2.3" + } + }, + "@vue/server-renderer": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.34.tgz", + "integrity": "sha512-nHxmJoTrKsmrkbILRhkC9gY1G3moZbJTqCzDd7DOOzG5KH9oeJ0Unqrff5f9v0pW//jES05ZkJcNtfE8JjOIew==", + "requires": { + "@vue/compiler-ssr": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "@vue/shared": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.34.tgz", + "integrity": "sha512-24uqU4OIiX29ryC3MeWid/Xf2fa2EFRUVLb77nRhk+UrTVrh/XiGtFAFmJBAtBRbjwNdsPRP+jj/OL27Eg1NDA==" + }, + "@vueuse/core": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/core/-/core-14.3.0.tgz", + "integrity": "sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==", + "requires": { + "@types/web-bluetooth": "^0.0.21", + "@vueuse/metadata": "14.3.0", + "@vueuse/shared": "14.3.0" + } + }, + "@vueuse/metadata": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-14.3.0.tgz", + "integrity": "sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==" + }, + "@vueuse/shared": { + "version": "14.3.0", + "resolved": "https://registry.npmmirror.com/@vueuse/shared/-/shared-14.3.0.tgz", + "integrity": "sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==", + "requires": {} + }, + "@xmldom/xmldom": { + "version": "0.9.10", + "resolved": "https://registry.npmmirror.com/@xmldom/xmldom/-/xmldom-0.9.10.tgz", + "integrity": "sha512-A9gOqLdi6cV4ibazAjcQufGj0B1y/vDqYrcuP6d/6x8P27gRS8643Dj9o1dEKtB6O7fwxb2FgBmJS2mX7gpvdw==", + "dev": true + }, + "7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" + } + }, + "ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "requires": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + } + }, + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "requires": { + "ajv": "^8.0.0" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "app-builder-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz", + "integrity": "sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==", + "dev": true + }, + "app-builder-lib": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/app-builder-lib/-/app-builder-lib-24.13.3.tgz", + "integrity": "sha512-FAzX6IBit2POXYGnTCT8YHFO/lr5AapAII6zzhQO3Rw4cEDOgK+t1xhLc5tNcKlicTHlo9zxIwnYCX9X2DLkig==", + "dev": true, + "requires": { + "@develar/schema-utils": "~2.6.5", + "@electron/notarize": "2.2.1", + "@electron/osx-sign": "1.0.5", + "@electron/universal": "1.5.1", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "bluebird-lst": "^1.0.9", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chromium-pickle-js": "^0.2.0", + "debug": "^4.3.4", + "ejs": "^3.1.8", + "electron-publish": "24.13.1", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "is-ci": "^3.0.0", + "isbinaryfile": "^5.0.0", + "js-yaml": "^4.1.0", + "lazy-val": "^1.0.5", + "minimatch": "^5.1.1", + "read-config-file": "6.3.2", + "sanitize-filename": "^1.6.3", + "semver": "^7.3.8", + "tar": "^6.1.12", + "temp-file": "^3.4.0" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", + "dev": true, + "peer": true, + "requires": { + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + } + }, + "archiver-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/archiver-utils/-/archiver-utils-2.1.0.tgz", + "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", + "dev": true, + "peer": true, + "requires": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "peer": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "peer": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "peer": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "optional": true + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "optional": true + }, + "async": { + "version": "3.2.6", + "resolved": "https://registry.npmmirror.com/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true + }, + "async-exit-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz", + "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", + "dev": true + }, + "async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, + "atomically": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/atomically/-/atomically-1.7.0.tgz", + "integrity": "sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==" + }, + "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 + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true + }, + "baseline-browser-mapping": { + "version": "2.10.31", + "resolved": "https://registry.npmmirror.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.31.tgz", + "integrity": "sha512-MujYO3eP72uvmSE0i4wltsodRfIpZATP3jvzRNRGGxgzId7aVocVJJV3nf01qnzzKFGxQVC9bpWxl5cjxTr/7Q==", + "dev": true + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "peer": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "bluebird-lst": { + "version": "1.0.9", + "resolved": "https://registry.npmmirror.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz", + "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==", + "dev": true, + "requires": { + "bluebird": "^3.5.5" + } + }, + "boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "browserslist": { + "version": "4.28.2", + "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", + "dev": true, + "requires": { + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true + }, + "buffer-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-1.0.1.tgz", + "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==", + "dev": true + }, + "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 + }, + "builder-util": { + "version": "24.13.1", + "resolved": "https://registry.npmmirror.com/builder-util/-/builder-util-24.13.1.tgz", + "integrity": "sha512-NhbCSIntruNDTOVI9fdXz0dihaqX2YuE1D6zZMrwiErzH4ELZHE6mdiB40wEgZNprDia+FghRFgKoAqMZRRjSA==", + "dev": true, + "requires": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "4.0.0", + "bluebird-lst": "^1.0.9", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-ci": "^3.0.0", + "js-yaml": "^4.1.0", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "builder-util-runtime": { + "version": "9.2.4", + "resolved": "https://registry.npmmirror.com/builder-util-runtime/-/builder-util-runtime-9.2.4.tgz", + "integrity": "sha512-upp+biKpN/XZMLim7aguUyW8s0FUpDvOtK6sbanMFDAMBzpHDqdhgVYm6zc9HJ6nWo7u2Lxk60i2M6Jd3aiNrA==", + "dev": true, + "requires": { + "debug": "^4.3.4", + "sax": "^1.2.4" + } + }, + "cac": { + "version": "6.7.14", + "resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + } + } + }, + "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, + "requires": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + } + }, + "caniuse-lite": { + "version": "1.0.30001793", + "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz", + "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "requires": { + "readdirp": "^4.0.1" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "chromium-pickle-js": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", + "dev": true + }, + "ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "optional": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true + }, + "compare-version": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/compare-version/-/compare-version-0.1.2.tgz", + "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", + "dev": true + }, + "compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", + "dev": true, + "peer": true, + "requires": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + } + }, + "computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "conf": { + "version": "10.2.0", + "resolved": "https://registry.npmmirror.com/conf/-/conf-10.2.0.tgz", + "integrity": "sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==", + "requires": { + "ajv": "^8.6.3", + "ajv-formats": "^2.1.1", + "atomically": "^1.7.0", + "debounce-fn": "^4.0.0", + "dot-prop": "^6.0.1", + "env-paths": "^2.2.1", + "json-schema-typed": "^7.0.3", + "onetime": "^5.1.2", + "pkg-up": "^3.1.0", + "semver": "^7.3.5" + }, + "dependencies": { + "semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==" + } + } + }, + "config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmmirror.com/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "optional": true, + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "config-file-ts": { + "version": "0.2.6", + "resolved": "https://registry.npmmirror.com/config-file-ts/-/config-file-ts-0.2.6.tgz", + "integrity": "sha512-6boGVaglwblBgJqGyxm4+xCmEGcWgnWHSWHY5jad58awQhB6gftq0G8HbzU39YqCIYHMLAiL1yjwiZ36m/CL8w==", + "dev": true, + "requires": { + "glob": "^10.3.10", + "typescript": "^5.3.3" + }, + "dependencies": { + "glob": { + "version": "10.4.5", + "resolved": "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + } + }, + "minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "dev": true + } + } + }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "crc": { + "version": "3.8.0", + "resolved": "https://registry.npmmirror.com/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "optional": true, + "requires": { + "buffer": "^5.1.0" + } + }, + "crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "dev": true, + "peer": true + }, + "crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", + "dev": true, + "peer": true, + "requires": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + } + }, + "cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==" + }, + "dayjs": { + "version": "1.11.20", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.20.tgz", + "integrity": "sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ==" + }, + "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 + }, + "debounce-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/debounce-fn/-/debounce-fn-4.0.0.tgz", + "integrity": "sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==", + "requires": { + "mimic-fn": "^3.0.0" + } + }, + "debug": { + "version": "4.4.3", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "requires": { + "ms": "^2.1.3" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "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, + "optional": true, + "requires": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + } + }, + "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, + "optional": true, + "requires": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true + }, + "detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "optional": true + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "optional": true + }, + "dir-compare": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/dir-compare/-/dir-compare-3.3.0.tgz", + "integrity": "sha512-J7/et3WlGUCxjdnD3HAAzQ6nsnc0WL6DD7WcwJb7c39iH1+AWfg+9OqzJNaI6PkBwBvm1mhZNL9iY/nRiZXlPg==", + "dev": true, + "requires": { + "buffer-equal": "^1.0.0", + "minimatch": "^3.0.4" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "dmg-builder": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/dmg-builder/-/dmg-builder-24.13.3.tgz", + "integrity": "sha512-rcJUkMfnJpfCboZoOOPf4L29TRtEieHNOeAbYPWPxlaBw/Z1RKrRA86dOI9rwaI4tQSc/RD82zTNHprfUHXsoQ==", + "dev": true, + "requires": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "dmg-license": "^1.0.11", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "optional": true, + "requires": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "dependencies": { + "ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "optional": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "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, + "optional": true + } + } + }, + "dot-prop": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/dot-prop/-/dot-prop-6.0.1.tgz", + "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==", + "requires": { + "is-obj": "^2.0.0" + } + }, + "dotenv": { + "version": "9.0.2", + "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-9.0.2.tgz", + "integrity": "sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==", + "dev": true + }, + "dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "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, + "requires": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + } + }, + "duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmmirror.com/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", + "dev": true + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmmirror.com/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "requires": { + "jake": "^10.8.5" + } + }, + "electron": { + "version": "20.3.12", + "resolved": "https://registry.npmmirror.com/electron/-/electron-20.3.12.tgz", + "integrity": "sha512-CuCZKhwdSXaUNIoEuPVZ25YH18zmox3wEM8Acwcy9tlpD8Jiuq3ji3RZ98eVWJalrpqbdE9LtTD/sLC86GIkLg==", + "dev": true, + "requires": { + "@electron/get": "^1.14.1", + "@types/node": "^16.11.26", + "extract-zip": "^2.0.1" + } + }, + "electron-builder": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/electron-builder/-/electron-builder-24.13.3.tgz", + "integrity": "sha512-yZSgVHft5dNVlo31qmJAe4BVKQfFdwpRw7sFp1iQglDRCDD6r22zfRJuZlhtB5gp9FHUxCMEoWGq10SkCnMAIg==", + "dev": true, + "requires": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "dmg-builder": "24.13.3", + "fs-extra": "^10.1.0", + "is-ci": "^3.0.0", + "lazy-val": "^1.0.5", + "read-config-file": "6.3.2", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "electron-builder-squirrel-windows": { + "version": "24.13.3", + "resolved": "https://registry.npmmirror.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-24.13.3.tgz", + "integrity": "sha512-oHkV0iogWfyK+ah9ZIvMDpei1m9ZRpdXcvde1wTpra2U8AFDNNpqJdnin5z+PM1GbQ5BoaKCWas2HSjtR0HwMg==", + "dev": true, + "peer": true, + "requires": { + "app-builder-lib": "24.13.3", + "archiver": "^5.3.1", + "builder-util": "24.13.1", + "fs-extra": "^10.1.0" + }, + "dependencies": { + "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, + "peer": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "peer": true + } + } + }, + "electron-log": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/electron-log/-/electron-log-5.1.2.tgz", + "integrity": "sha512-Cpg4hAZ27yM9wzE77c4TvgzxzavZ+dVltCczParXN+Vb3jocojCSAuSMCVOI9fhFuuOR+iuu3tZLX1cu0y0kgQ==" + }, + "electron-publish": { + "version": "24.13.1", + "resolved": "https://registry.npmmirror.com/electron-publish/-/electron-publish-24.13.1.tgz", + "integrity": "sha512-2ZgdEqJ8e9D17Hwp5LEq5mLQPjqU3lv/IALvgp+4W8VeNhryfGhYEQC/PgDPMrnWUp+l60Ou5SJLsu+k4mhQ8A==", + "dev": true, + "requires": { + "@types/fs-extra": "^9.0.11", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "electron-store": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/electron-store/-/electron-store-8.1.0.tgz", + "integrity": "sha512-2clHg/juMjOH0GT9cQ6qtmIvK183B39ZXR0bUoPwKwYHJsEF3quqyDzMFUAu+0OP8ijmN2CbPRAelhNbWUbzwA==", + "requires": { + "conf": "^10.2.0", + "type-fest": "^2.17.0" + }, + "dependencies": { + "type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + } + } + }, + "electron-to-chromium": { + "version": "1.5.359", + "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.359.tgz", + "integrity": "sha512-8lPELWuYZIWk7NDvCNthtmMw/7Q5Wu25NpM4djFMHBmk8DubPAtL4YTOp7ou0e7HyJtwkVlWv8XMLURnrtgJQw==", + "dev": true + }, + "electron-vite": { + "version": "1.0.29", + "resolved": "https://registry.npmmirror.com/electron-vite/-/electron-vite-1.0.29.tgz", + "integrity": "sha512-BDTmVTLIri8W4Lz1tn5RAV1slSTinBBb6G77+qKcjkF0vEwdiUp2ntSU6FDqwP9pmy1t96U1CZqIYIStF8H6Jw==", + "dev": true, + "requires": { + "@babel/core": "^7.22.8", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "cac": "^6.7.14", + "esbuild": "^0.18.11", + "magic-string": "^0.30.1", + "picocolors": "^1.0.0" + } + }, + "element-plus": { + "version": "2.14.0", + "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.14.0.tgz", + "integrity": "sha512-POgH+TtoreaEKWqYYAVQyE6i8rQMEFqAEublyF29dBA5yASWPLKY6EzfeqBTr2Uv26mPss4vSrMrNPyaK7LX5w==", + "requires": { + "@ctrl/tinycolor": "^4.2.0", + "@element-plus/icons-vue": "^2.3.2", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.8", + "@types/lodash": "^4.17.24", + "@types/lodash-es": "^4.17.12", + "@vueuse/core": "14.3.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.20", + "lodash": "^4.18.1", + "lodash-es": "^4.18.1", + "lodash-unified": "^1.0.3", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0", + "vue-component-type-helpers": "^3.2.8" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "optional": true + }, + "end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==" + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "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 + }, + "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 + }, + "es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "requires": { + "es-errors": "^1.3.0" + } + }, + "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, + "requires": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + } + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true, + "optional": true + }, + "esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "dev": true, + "requires": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" + } + }, + "escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "optional": true + }, + "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==" + }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "optional": true + }, + "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==" + }, + "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 + }, + "fast-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/fast-uri/-/fast-uri-3.1.2.tgz", + "integrity": "sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==" + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "filelist": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/filelist/-/filelist-1.0.6.tgz", + "integrity": "sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==", + "dev": true, + "requires": { + "minimatch": "^5.0.1" + }, + "dependencies": { + "minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + } + }, + "form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + } + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true, + "peer": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, + "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 + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "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, + "requires": { + "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" + } + }, + "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, + "requires": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.14", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "dev": true, + "optional": true, + "requires": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "dependencies": { + "semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true, + "optional": true + } + } + }, + "global-tunnel-ng": { + "version": "2.7.1", + "resolved": "https://registry.npmmirror.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", + "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", + "dev": true, + "optional": true, + "requires": { + "encodeurl": "^1.0.2", + "lodash": "^4.17.10", + "npm-conf": "^1.1.3", + "tunnel": "^0.0.6" + } + }, + "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, + "optional": true, + "requires": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + } + }, + "gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmmirror.com/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + } + } + }, + "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 + }, + "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 + }, + "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, + "optional": true, + "requires": { + "es-define-property": "^1.0.0" + } + }, + "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 + }, + "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, + "requires": { + "has-symbols": "^1.0.3" + } + }, + "hasown": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", + "dev": true, + "requires": { + "function-bind": "^1.1.2" + } + }, + "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 + }, + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "dev": true + }, + "http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "requires": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmmirror.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "optional": true, + "requires": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "dependencies": { + "node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", + "dev": true, + "optional": true + } + } + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true + }, + "immutable": { + "version": "5.1.5", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-5.1.5.tgz", + "integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dev": true, + "requires": { + "ci-info": "^3.2.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "optional": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "peer": true + }, + "isbinaryfile": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-5.0.0.tgz", + "integrity": "sha512-UDdnyGvMajJUWCkib7Cei/dvyJrrvo4FIrsvSFWdPpXSUorzXrDJ0S+X5Q4ZlasfPjca4yqCNNsjbCeiy8FFeg==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "requires": { + "@isaacs/cliui": "^8.0.2", + "@pkgjs/parseargs": "^0.11.0" + } + }, + "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, + "requires": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", + "dev": true + }, + "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==" + }, + "json-schema-typed": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz", + "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==" + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true, + "optional": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, + "koffi": { + "version": "2.9.0", + "resolved": "https://registry.npmmirror.com/koffi/-/koffi-2.9.0.tgz", + "integrity": "sha512-KCsuJ2gM58n6bNdR2Z7gqsh/3TchxxQFbVgax2/UvAjRTgwNSYAJDx9E3jrkBP4jEDHWRCfE47Y2OG+/fiSvEw==" + }, + "lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "dev": true + }, + "lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dev": true, + "peer": true, + "requires": { + "readable-stream": "^2.0.5" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "peer": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "peer": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "peer": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==" + }, + "lodash-es": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.18.1.tgz", + "integrity": "sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==" + }, + "lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "requires": {} + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true, + "peer": true + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "dev": true, + "peer": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "dev": true, + "peer": true + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmmirror.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true, + "peer": true + }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "dev": true, + "peer": true + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "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==", + "requires": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "optional": true, + "requires": { + "escape-string-regexp": "^4.0.0" + } + }, + "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 + }, + "memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==" + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + }, + "minimatch": { + "version": "9.0.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.2" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "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 + }, + "muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true + }, + "nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==" + }, + "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==", + "dev": true, + "optional": true + }, + "node-releases": { + "version": "2.0.44", + "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.44.tgz", + "integrity": "sha512-5WUyunoPMsvvEhS8AxHtRzP+oA8UCkJ7YRxatWKjngndhDGLiqEVAQKWjFAiAiuL8zMRGzGSJxFnLetoa43qGQ==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "peer": true + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true + }, + "normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dev": true, + "optional": true, + "requires": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + } + }, + "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, + "optional": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "^2.1.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + } + } + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, + "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 + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "requires": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + } + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "dev": true + }, + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "optional": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "optional": true + }, + "pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "requires": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + } + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "requires": { + "find-up": "^3.0.0" + } + }, + "plist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/plist/-/plist-3.1.1.tgz", + "integrity": "sha512-ZIfcLJC+7E7FBFnDxm9MPmt7D+DidyQ26lewieO75AdhA2ayMtsJSES0iWzqJQbcVRSrTufQoy0DR94xHue0oA==", + "dev": true, + "requires": { + "@xmldom/xmldom": "^0.9.10", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + } + }, + "postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "requires": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + } + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true, + "peer": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true, + "optional": true + }, + "pump": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true + }, + "read-config-file": { + "version": "6.3.2", + "resolved": "https://registry.npmmirror.com/read-config-file/-/read-config-file-6.3.2.tgz", + "integrity": "sha512-M80lpCjnE6Wt6zb98DoW8WHR09nzMSpu8XHtPkiTHrJ5Az9CybfeQhTJ8D7saeBHpGhLPIVyA8lcL6ZmdKwY6Q==", + "dev": true, + "requires": { + "config-file-ts": "^0.2.4", + "dotenv": "^9.0.2", + "dotenv-expand": "^5.1.0", + "js-yaml": "^4.1.0", + "json5": "^2.2.0", + "lazy-val": "^1.0.4" + } + }, + "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, + "peer": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dev": true, + "peer": true, + "requires": { + "minimatch": "^5.1.0" + }, + "dependencies": { + "minimatch": { + "version": "5.1.9", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "dev": true, + "peer": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "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==" + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true + }, + "roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmmirror.com/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dev": true, + "optional": true, + "requires": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + } + }, + "rollup": { + "version": "3.30.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.30.0.tgz", + "integrity": "sha512-kQvGasUgN+AlWGliFn2POSajRQEsULVYFGTvOZmK06d7vCD+YhZztt70kGk3qaeAXeWYL5eO7zx+rAubBc55eA==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "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, + "peer": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sanitize-filename": { + "version": "1.6.4", + "resolved": "https://registry.npmmirror.com/sanitize-filename/-/sanitize-filename-1.6.4.tgz", + "integrity": "sha512-9ZyI08PsvdQl2r/bBIGubpVdR3RR9sY6RDiWFPreA21C/EFlQhmgo20UZlNjZMMZNubusLhAQozkA0Od5J21Eg==", + "dev": true, + "requires": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "sass": { + "version": "1.99.0", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.99.0.tgz", + "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", + "dev": true, + "requires": { + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", + "immutable": "^5.1.5", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "sax": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.6.0.tgz", + "integrity": "sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==", + "dev": true + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true, + "optional": true + }, + "serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "optional": true, + "requires": { + "type-fest": "^0.13.1" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true + }, + "simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "requires": { + "semver": "^7.5.3" + }, + "dependencies": { + "semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true + } + } + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "optional": true + }, + "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 + }, + "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==" + }, + "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, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true, + "optional": true + }, + "stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true + }, + "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, + "peer": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dev": true, + "requires": { + "debug": "^4.1.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "tar": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "peer": true, + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } + }, + "temp-file": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/temp-file/-/temp-file-3.4.0.tgz", + "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", + "dev": true, + "requires": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + }, + "dependencies": { + "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, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + } + } + }, + "tmp": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true + }, + "tmp-promise": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/tmp-promise/-/tmp-promise-3.0.3.tgz", + "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", + "dev": true, + "requires": { + "tmp": "^0.2.0" + } + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, + "truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dev": true, + "requires": { + "utf8-byte-length": "^1.0.1" + } + }, + "tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmmirror.com/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, + "optional": true + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "optional": true + }, + "typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "devOptional": true + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "requires": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dev": true, + "requires": { + "prepend-http": "^2.0.0" + } + }, + "utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "dev": true + }, + "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, + "peer": true + }, + "verror": { + "version": "1.10.1", + "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "optional": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vite": { + "version": "4.5.14", + "resolved": "https://registry.npmmirror.com/vite/-/vite-4.5.14.tgz", + "integrity": "sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g==", + "dev": true, + "requires": { + "esbuild": "^0.18.10", + "fsevents": "~2.3.2", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + } + }, + "vue": { + "version": "3.5.34", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.34.tgz", + "integrity": "sha512-WdLBG9gm02OgJIG9axd5Hpx0TFLdzVgfG2evFFu8Rur5O/IoGc5cMjnjh3tPL6GnRGsYvUhBSKVPYVcxRKpMCA==", + "requires": { + "@vue/compiler-dom": "3.5.34", + "@vue/compiler-sfc": "3.5.34", + "@vue/runtime-dom": "3.5.34", + "@vue/server-renderer": "3.5.34", + "@vue/shared": "3.5.34" + } + }, + "vue-component-type-helpers": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/vue-component-type-helpers/-/vue-component-type-helpers-3.3.1.tgz", + "integrity": "sha512-pu58kqxmVyEH6VfNYW1UyEfR3XAnJ27ZXT3yzXxxpjLxVzAbyC35Zk/nm/RMs7ijWnJNSd9fWkeex2OhUsx3MA==" + }, + "vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "requires": {} + }, + "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==", + "requires": { + "@vue/devtools-api": "^6.6.4" + } + }, + "vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "requires": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "requires": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "dependencies": { + "semver": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", + "dev": true + } + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmmirror.com/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "dev": true, + "peer": true, + "requires": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" + }, + "dependencies": { + "archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", + "dev": true, + "peer": true, + "requires": { + "glob": "^7.2.3", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + } + } + } + } + } +} diff --git a/app/package.json b/app/package.json new file mode 100644 index 0000000..fe06f73 --- /dev/null +++ b/app/package.json @@ -0,0 +1,61 @@ +{ + "name": "cardsoon-machine", + "version": "0.0.1", + "private": true, + "description": "卡树数据卡打印系统 Electron 客户端", + "main": "./out/main/index.js", + "engines": { + "node": "16.15.0" + }, + "scripts": { + "dev": "electron-vite dev", + "build": "electron-vite build", + "preview": "electron-vite preview", + "typecheck": "vue-tsc --noEmit -p tsconfig.web.json", + "dist": "electron-vite build && electron-builder" + }, + "dependencies": { + "@fortawesome/fontawesome-free": "^6.4.0", + "electron-log": "^5.1.2", + "electron-store": "^8.1.0", + "element-plus": "^2.4.4", + "koffi": "^2.9.0", + "pinia": "^2.1.7", + "vue": "^3.4.21", + "vue-router": "^4.3.0" + }, + "build": { + "appId": "com.cardsoon.machine", + "productName": "卡树数据卡打印系统", + "directories": { + "output": "release" + }, + "extraResources": [ + { + "from": "resources/native", + "to": "native" + } + ], + "extraFiles": [ + { + "from": "resources/native/CapSettings.json", + "to": "CapSettings.json" + } + ], + "win": { + "target": [ + "nsis" + ] + } + }, + "devDependencies": { + "@vitejs/plugin-vue": "^4.6.2", + "electron": "20.3.12", + "electron-builder": "^24.13.3", + "electron-vite": "^1.0.29", + "sass": "^1.69.5", + "typescript": "^5.3.3", + "vite": "^4.5.2", + "vue-tsc": "^1.8.27" + } +} diff --git a/app/resources/native/CapSettings.json b/app/resources/native/CapSettings.json new file mode 100644 index 0000000..dd5b94d --- /dev/null +++ b/app/resources/native/CapSettings.json @@ -0,0 +1,5 @@ +{ + "printerList": [], + "Img": [], + "Text": [] +} diff --git a/app/resources/native/Entry.dll b/app/resources/native/Entry.dll new file mode 100644 index 0000000..65d9c9c Binary files /dev/null and b/app/resources/native/Entry.dll differ diff --git a/app/resources/native/FCSDK.dll b/app/resources/native/FCSDK.dll new file mode 100644 index 0000000..302f4e4 Binary files /dev/null and b/app/resources/native/FCSDK.dll differ diff --git a/app/resources/native/SeaorySDK.dll b/app/resources/native/SeaorySDK.dll new file mode 100644 index 0000000..f3ba5ea Binary files /dev/null and b/app/resources/native/SeaorySDK.dll differ diff --git a/app/resources/native/dcrf32.dll b/app/resources/native/dcrf32.dll new file mode 100644 index 0000000..839f24c Binary files /dev/null and b/app/resources/native/dcrf32.dll differ diff --git a/app/resources/native/libpng16.dll b/app/resources/native/libpng16.dll new file mode 100644 index 0000000..ca43ea8 Binary files /dev/null and b/app/resources/native/libpng16.dll differ diff --git a/app/resources/native/workDll.dll b/app/resources/native/workDll.dll new file mode 100644 index 0000000..14224cc Binary files /dev/null and b/app/resources/native/workDll.dll differ diff --git a/app/resources/native/zint.dll b/app/resources/native/zint.dll new file mode 100644 index 0000000..014ba4d Binary files /dev/null and b/app/resources/native/zint.dll differ diff --git a/app/src/main/constants.ts b/app/src/main/constants.ts new file mode 100644 index 0000000..6319f82 --- /dev/null +++ b/app/src/main/constants.ts @@ -0,0 +1,15 @@ +export const CS_OK = 0 +export const CS_FAIL = -1 + +export const JOB_STATUS_FINISHED = 100 +export const JOB_STATUS_FAILED = 4 +export const JOB_STATUS_CANCELLED = 6 +export const JOB_STATUS_WAITCARD = 7 +export const JOB_STATUS_PRINTING = 2 +export const JOB_STATUS_COPYING = 3 + +export const POLL_INTERVAL_MS = 1000 +export const JOB_ID_BUF_SIZE = 64 + +/** workDll 日志级别:仅致命,屏蔽无打印机时的 E/W 刷屏 */ +export const LOG_FATAL_FLAG = 3 diff --git a/app/src/main/index.ts b/app/src/main/index.ts new file mode 100644 index 0000000..8a87551 --- /dev/null +++ b/app/src/main/index.ts @@ -0,0 +1,121 @@ +import { app, BrowserWindow, globalShortcut, screen } from 'electron' +import { join } from 'path' + +app.commandLine.appendSwitch('disable-gpu-shader-disk-cache') + +import log from 'electron-log' +import { suppressKnownDllStderr } from './utils/suppress-dll-stderr' +import { setupNativeWorkingDir } from './services/native-path' + +suppressKnownDllStderr() +import { registerIpcHandlers, handleBeforeQuit } from './ipc/register-handlers' +import { setPollMainWindow } from './services/poll-manager' +import { + DESIGN_WIDTH, + contentHeightForWidth, + CONTENT_VIEWPORT_HEIGHT +} from '@shared/viewport' + +let mainWindow: BrowserWindow | null = null + +const MIN_CONTENT_WIDTH = 960 + +/** 默认内容区:约 85% 工作区宽,高按 720:390 */ +function getDefaultWindowSize(): { width: number; height: number } { + const { width: sw, height: sh } = screen.getPrimaryDisplay().workAreaSize + let w = Math.max(1280, Math.min(Math.floor(sw * 0.85), 1600)) + let h = contentHeightForWidth(w) + const maxH = Math.floor(sh * 0.85) + if (h > maxH) { + h = Math.max(contentHeightForWidth(MIN_CONTENT_WIDTH), maxH) + w = Math.round((h * DESIGN_WIDTH) / CONTENT_VIEWPORT_HEIGHT) + } + return { width: w, height: h } +} + +function createWindow(): void { + const { width, height } = getDefaultWindowSize() + mainWindow = new BrowserWindow({ + useContentSize: true, + width, + height, + minWidth: MIN_CONTENT_WIDTH, + minHeight: contentHeightForWidth(MIN_CONTENT_WIDTH), + show: false, + autoHideMenuBar: true, + webPreferences: { + preload: join(__dirname, '../preload/index.js'), + contextIsolation: true, + nodeIntegration: false, + sandbox: false + } + }) + + setPollMainWindow(mainWindow) + + mainWindow.on('ready-to-show', () => { + mainWindow?.center() + mainWindow?.show() + if (!app.isPackaged) { + mainWindow?.webContents.openDevTools({ mode: 'detach' }) + } + }) + + mainWindow.webContents.on('before-input-event', (_event, input) => { + if (input.type === 'keyDown' && input.key === 'F12') { + mainWindow?.webContents.toggleDevTools() + } + }) + + // 内容区 720:390,画布仍 360 高,按宽缩放后底部可完整显示 + mainWindow.on('resize', () => { + if (!mainWindow) return + const [cw, ch] = mainWindow.getContentSize() + const wantH = contentHeightForWidth(cw) + if (Math.abs(ch - wantH) > 2) { + mainWindow.setContentSize(cw, wantH) + } + }) + + mainWindow.on('closed', () => { + mainWindow = null + }) + + if (process.env.ELECTRON_RENDERER_URL) { + mainWindow.loadURL(process.env.ELECTRON_RENDERER_URL) + } else { + mainWindow.loadFile(join(__dirname, '../renderer/index.html')) + } +} + +app.whenReady().then(() => { + try { + setupNativeWorkingDir() + registerIpcHandlers() + createWindow() + if (!app.isPackaged) { + globalShortcut.register('CommandOrControl+Shift+I', () => { + const win = BrowserWindow.getFocusedWindow() + win?.webContents.toggleDevTools() + }) + } + } catch (e) { + log.error('startup failed', e) + app.quit() + } + + app.on('activate', () => { + if (BrowserWindow.getAllWindows().length === 0) createWindow() + }) +}) + +app.on('before-quit', () => { + if (!app.isPackaged) { + globalShortcut.unregisterAll() + } + handleBeforeQuit() +}) + +app.on('window-all-closed', () => { + if (process.platform !== 'darwin') app.quit() +}) diff --git a/app/src/main/ipc/register-handlers.ts b/app/src/main/ipc/register-handlers.ts new file mode 100644 index 0000000..d8854b4 --- /dev/null +++ b/app/src/main/ipc/register-handlers.ts @@ -0,0 +1,244 @@ +import { app, dialog, ipcMain, shell } from 'electron' +import fs from 'fs' +import path from 'path' +import log from 'electron-log' +import { CS_FAIL, CS_OK } from '../constants' +import { assertNotBusy, assertReady, mainAppState } from '../services/app-state' +import { configStore } from '../services/config-store' +import { + getActiveJobId, + startJobPoll, + startUsbPoll, + stopAllPolls, + stopJobPoll, + stopUsbPoll +} from '../services/poll-manager' +import { + dllAdminJobCancel, + dllCopyFromUsb, + dllGetPrinterErrorStr, + dllGetPrinterInfo, + dllInit, + dllPrinterReject, + dllPrinterReset, + dllRestJobEx, + isCancelApiAvailable, + isRejectApiAvailable +} from '../services/work-dll.service' + +function ok(data?: T) { + return { ok: true as const, code: CS_OK, data } +} + +function fail(code: number, message: string) { + return { ok: false as const, code, message } +} + +export function registerIpcHandlers(): void { + ipcMain.handle('dll:init', (_e, params) => { + stopAllPolls() + try { + const sharedDir = params?.sharedDir || (configStore.get('sharedDir') as string) + fs.mkdirSync(sharedDir, { recursive: true }) + const code = dllInit({ + sharedDir, + keepCombinedImage: params?.keepCombinedImage, + stopOnFailure: params?.stopOnFailure, + cleanTaskFile: params?.cleanTaskFile, + autoRetryTimes: params?.autoRetryTimes, + rejectConfig: params?.rejectConfig, + logLevel: params?.logLevel, + outBack: params?.outBack + }) + if (code === CS_OK) { + mainAppState.initialized = true + configStore.set('sharedDir', sharedDir) + return ok({ printerDetected: true }) + } + mainAppState.initialized = true + configStore.set('sharedDir', sharedDir) + log.warn(`SAPI_Init returned ${code}; UI ready, printer ops may fail until device connected`) + return ok({ + printerDetected: false, + warning: '打印机未连接或驱动未就绪,界面可浏览,业务操作需接真机后重试 Init' + }) + } catch (err) { + mainAppState.initialized = false + log.error('dll:init', err) + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:printer-info', () => { + try { + assertReady() + const r = dllGetPrinterInfo() + if (!r.json) return fail(0, '未连接打印机') + return ok(r.json) + } catch (err) { + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:printer-reset', () => { + try { + assertReady() + const code = dllPrinterReset() + return code === CS_OK ? ok() : fail(code, '重置失败') + } catch (err) { + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:printer-reject', () => { + try { + assertReady() + if (!isRejectApiAvailable()) return fail(CS_FAIL, 'REJECT_API_UNAVAILABLE') + const code = dllPrinterReject() + return code === CS_OK ? ok() : fail(code, '废卡失败') + } catch (err) { + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:printer-error-str', (_e, errorNo?: number) => { + try { + assertReady() + return ok({ text: dllGetPrinterErrorStr(errorNo ?? -1) }) + } catch (err) { + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:job-create', (_e, json: string) => { + try { + assertReady() + assertNotBusy() + const r = dllRestJobEx(json) + if (r.code !== CS_OK) return fail(r.code, 'RestJobEx 失败') + mainAppState.mode = 'distributing' + mainAppState.activeJobId = r.jobId + return ok({ jobId: r.jobId }) + } catch (err) { + if (String(err).includes('BUSY')) return fail(CS_FAIL, '已有任务在执行') + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:job-cancel', (_e, jobId: string) => { + try { + assertReady() + const id = jobId || mainAppState.activeJobId + stopJobPoll() + let code = CS_OK + if (isCancelApiAvailable()) { + code = dllAdminJobCancel(id) + } else { + log.info('dll:job-cancel: SAPI_AdminJobCancel not in DLL, poll stopped only') + } + mainAppState.mode = 'ready' + mainAppState.activeJobId = '' + return code === CS_OK ? ok() : fail(code, '取消失败') + } catch (err) { + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('dll:usb-copy', (_e, req: { destFolder: string; cardOutput: number }) => { + try { + assertReady() + assertNotBusy() + const code = dllCopyFromUsb(req.destFolder, req.cardOutput) + if (code !== CS_OK) { + return fail(code, '可能已有任务在执行') + } + mainAppState.mode = 'usbCopying' + return ok() + } catch (err) { + if (String(err).includes('BUSY')) return fail(CS_FAIL, '已有任务在执行') + return fail(CS_FAIL, String(err)) + } + }) + + ipcMain.handle('poll:job-start', (_e, jobId: string) => { + startJobPoll(jobId) + return ok() + }) + + ipcMain.handle('poll:job-stop', () => { + stopJobPoll() + return ok() + }) + + ipcMain.handle('poll:usb-start', () => { + startUsbPoll() + return ok() + }) + + ipcMain.handle('poll:usb-stop', () => { + stopUsbPoll() + mainAppState.mode = 'ready' + return ok() + }) + + ipcMain.handle('dialog:open-directory', async () => { + const r = await dialog.showOpenDialog({ properties: ['openDirectory', 'multiSelections'] }) + if (r.canceled || !r.filePaths.length) return ok({ paths: [] as string[] }) + return ok({ paths: r.filePaths }) + }) + + ipcMain.handle('dialog:open-file', async (_e, filters?: { name: string; extensions: string[] }[]) => { + const r = await dialog.showOpenDialog({ + properties: ['openFile'], + filters: filters ?? [{ name: 'Soon', extensions: ['soon'] }] + }) + if (r.canceled || !r.filePaths[0]) return ok({ path: '' }) + return ok({ path: r.filePaths[0] }) + }) + + ipcMain.handle('fs:path-exists', (_e, paths: string[]) => { + const missing = paths.filter((p) => { + const clean = p.replace(/\\\*\\.\\*$/i, '').replace(/\/\*\.\*$/i, '') + return !fs.existsSync(clean) + }) + return ok({ missing }) + }) + + ipcMain.handle('config:get', () => + ok({ + sharedDir: configStore.get('sharedDir'), + templateDir: configStore.get('templateDir'), + skipDllInit: configStore.get('skipDllInit', !app.isPackaged) + }) + ) + + ipcMain.handle('config:set', (_e, patch: Record) => { + Object.entries(patch).forEach(([k, v]) => configStore.set(k, v)) + return ok(configStore.store) + }) + + ipcMain.handle('shell:open-path', (_e, target: string) => { + const dir = target || (configStore.get('templateDir') as string) + fs.mkdirSync(dir, { recursive: true }) + shell.openPath(dir) + return ok() + }) + + ipcMain.handle('dll:reject-available', () => ok({ available: isRejectApiAvailable() })) +} + +export async function handleBeforeQuit(): Promise { + stopAllPolls() + if ( + mainAppState.mode === 'distributing' && + mainAppState.activeJobId && + isCancelApiAvailable() + ) { + try { + dllAdminJobCancel(mainAppState.activeJobId) + } catch (e) { + log.warn('before-quit cancel', e) + } + } + mainAppState.mode = 'ready' +} diff --git a/app/src/main/services/app-state.ts b/app/src/main/services/app-state.ts new file mode 100644 index 0000000..fb893b1 --- /dev/null +++ b/app/src/main/services/app-state.ts @@ -0,0 +1,17 @@ +export type MainWorkflowMode = 'ready' | 'distributing' | 'usbCopying' + +export const mainAppState = { + initialized: false, + mode: 'ready' as MainWorkflowMode, + activeJobId: '' +} + +export function assertReady(): void { + if (!mainAppState.initialized) throw new Error('NOT_INITIALIZED') +} + +export function assertNotBusy(): void { + if (mainAppState.mode === 'distributing' || mainAppState.mode === 'usbCopying') { + throw new Error('BUSY') + } +} diff --git a/app/src/main/services/config-store.ts b/app/src/main/services/config-store.ts new file mode 100644 index 0000000..4c86a78 --- /dev/null +++ b/app/src/main/services/config-store.ts @@ -0,0 +1,21 @@ +import Store from 'electron-store' +import { app } from 'electron' +import path from 'path' + +interface AppConfig { + sharedDir: string + templateDir: string + /** 开发默认 true:不调用 SAPI_Init,避免无打印机时 DLL 刷错 */ + skipDllInit: boolean +} + +const defaultShared = path.join(app.getPath('userData'), 'Cardsoon', 'tasks') + +export const configStore = new Store({ + name: 'cardsoon-config', + defaults: { + sharedDir: defaultShared, + templateDir: path.join(app.getPath('userData'), 'Cardsoon', 'templates'), + skipDllInit: !app.isPackaged + } +}) diff --git a/app/src/main/services/native-path.ts b/app/src/main/services/native-path.ts new file mode 100644 index 0000000..be9d03a --- /dev/null +++ b/app/src/main/services/native-path.ts @@ -0,0 +1,88 @@ +import { app } from 'electron' +import path from 'path' +import fs from 'fs' +import log from 'electron-log' + +const RUNTIME_CONFIG_FILES = ['CapSettings.json'] as const +const DEFAULT_PRINT_TASKS = path.join('C:', 'PrintTasks') + +const DEFAULT_CAP_SETTINGS = `{ + "printerList": [], + "Img": [], + "Text": [] +} +` + +export function getNativeDir(): string { + if (app.isPackaged) { + return path.join(process.resourcesPath, 'native') + } + return path.join(app.getAppPath(), 'resources', 'native') +} + +export function getProcessExecDir(): string { + return path.dirname(process.execPath) +} + +function ensureBundledConfig(nativeDir: string): void { + fs.mkdirSync(nativeDir, { recursive: true }) + for (const name of RUNTIME_CONFIG_FILES) { + const filePath = path.join(nativeDir, name) + if (!fs.existsSync(filePath)) { + fs.writeFileSync(filePath, DEFAULT_CAP_SETTINGS, 'utf8') + log.info(`Created default native config: ${filePath}`) + } + } +} + +function deployConfigFile(src: string, destDir: string): void { + const dest = path.join(destDir, path.basename(src)) + try { + fs.mkdirSync(destDir, { recursive: true }) + if (!fs.existsSync(dest)) { + fs.copyFileSync(src, dest) + log.debug(`Deployed ${path.basename(src)} -> ${dest}`) + return + } + const srcStat = fs.statSync(src) + const destStat = fs.statSync(dest) + if (srcStat.mtimeMs > destStat.mtimeMs) { + fs.copyFileSync(src, dest) + log.debug(`Updated ${path.basename(src)} -> ${dest}`) + } + } catch (e) { + log.warn(`Deploy ${path.basename(src)} to ${destDir} failed`, e) + } +} + +function deployRuntimeConfigs(nativeDir: string): void { + const deployDirs = new Set([ + nativeDir, + getProcessExecDir(), + DEFAULT_PRINT_TASKS, + path.join(app.getPath('userData'), 'Cardsoon', 'runtime') + ]) + + for (const name of RUNTIME_CONFIG_FILES) { + const src = path.join(nativeDir, name) + if (!fs.existsSync(src)) continue + deployDirs.forEach((dir) => deployConfigFile(src, dir)) + } + + try { + fs.mkdirSync(DEFAULT_PRINT_TASKS, { recursive: true }) + } catch (e) { + log.warn(`Cannot create ${DEFAULT_PRINT_TASKS}`, e) + } +} + +export function setupNativeWorkingDir(): void { + const nativeDir = getNativeDir() + if (!fs.existsSync(path.join(nativeDir, 'workDll.dll'))) { + throw new Error(`Native DLL directory not found or incomplete: ${nativeDir}`) + } + ensureBundledConfig(nativeDir) + deployRuntimeConfigs(nativeDir) + process.chdir(nativeDir) + log.debug(`Native working directory: ${nativeDir}`) +} diff --git a/app/src/main/services/poll-manager.ts b/app/src/main/services/poll-manager.ts new file mode 100644 index 0000000..538d4e7 --- /dev/null +++ b/app/src/main/services/poll-manager.ts @@ -0,0 +1,106 @@ +import { BrowserWindow } from 'electron' +import log from 'electron-log' +import { POLL_INTERVAL_MS } from '../constants' +import { mainAppState } from './app-state' +import { dllGetJobStateById, dllGetUsbCopyState } from './work-dll.service' + +let jobTimer: ReturnType | null = null +let usbTimer: ReturnType | null = null +let jobId = '' +let mainWindow: BrowserWindow | null = null + +export function setPollMainWindow(win: BrowserWindow): void { + mainWindow = win +} + +function send(channel: string, payload: unknown): void { + if (mainWindow && !mainWindow.isDestroyed()) { + mainWindow.webContents.send(channel, payload) + } +} + +export function stopJobPoll(): void { + if (jobTimer) { + clearInterval(jobTimer) + jobTimer = null + } +} + +export function stopUsbPoll(): void { + if (usbTimer) { + clearInterval(usbTimer) + usbTimer = null + } +} + +export function stopAllPolls(): void { + stopJobPoll() + stopUsbPoll() +} + +export function startJobPoll(id: string): void { + stopJobPoll() + jobId = id + jobTimer = setInterval(() => { + try { + const r = dllGetJobStateById(jobId) + const failed = r.jobState === 4 + const cancelled = r.jobState === 6 + const finished = r.jobState === 100 + const terminal = failed || cancelled + send('job:poll-tick', { + jobId, + queryErrorCode: r.queryErrorCode, + jobState: r.jobState, + progress: r.progress, + terminal, + failed, + cancelled, + finished + }) + if (r.queryErrorCode !== 0) { + log.warn('GetJobStateById query failed', r.queryErrorCode) + stopJobPoll() + return + } + if (failed || cancelled) { + stopJobPoll() + if (cancelled) mainAppState.mode = 'ready' + } + } catch (e) { + log.error('job poll error', e) + stopJobPoll() + } + }, POLL_INTERVAL_MS) +} + +export function startUsbPoll(): void { + stopUsbPoll() + usbTimer = setInterval(() => { + try { + const r = dllGetUsbCopyState() + const failed = r.taskStatus === 3 + const success = r.taskStatus === 2 + const terminal = failed || success + send('usb:poll-tick', { + taskStatus: r.taskStatus, + progress: r.progress, + terminal, + failed, + success + }) + if (terminal) { + stopUsbPoll() + mainAppState.mode = 'ready' + } + } catch (e) { + log.error('usb poll error', e) + stopUsbPoll() + mainAppState.mode = 'ready' + } + }, POLL_INTERVAL_MS) +} + +export function getActiveJobId(): string { + return jobId +} diff --git a/app/src/main/services/work-dll.service.ts b/app/src/main/services/work-dll.service.ts new file mode 100644 index 0000000..cc3ac16 --- /dev/null +++ b/app/src/main/services/work-dll.service.ts @@ -0,0 +1,182 @@ +import path from 'path' +import koffi from 'koffi' +import log from 'electron-log' +import { CS_OK, JOB_ID_BUF_SIZE, LOG_FATAL_FLAG } from '../constants' +import { getNativeDir } from './native-path' + +export interface InitParams { + sharedDir: string + keepCombinedImage?: boolean + stopOnFailure?: boolean + cleanTaskFile?: boolean + autoRetryTimes?: number + rejectConfig?: boolean + logLevel?: number + outBack?: boolean +} + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let lib: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_Init: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_GetPrinterInfo: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_GetPrinterErrorStr: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_RestJobEx: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_GetJobStateById: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_AdminJobCancel: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_CopyFromUsb: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_GetUsbCopyState: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_PrinterResetprinter: any = null +// eslint-disable-next-line @typescript-eslint/no-explicit-any +let SAPI_PrinterMovetoreject: any = null +let hasRejectApi = false +let hasCancelApi = false +let loggedCancelMissing = false +let loggedRejectMissing = false + +function loadLibrary(): void { + if (lib) return + const dllPath = path.join(getNativeDir(), 'workDll.dll') + lib = koffi.load(dllPath) + + SAPI_Init = lib.func('int __stdcall SAPI_Init(str, bool, bool, bool, int, bool, int, bool)') + SAPI_GetPrinterInfo = lib.func('int __stdcall SAPI_GetPrinterInfo(_Out_ void **)') + SAPI_GetPrinterErrorStr = lib.func('str __stdcall SAPI_GetPrinterErrorStr(int)') + SAPI_RestJobEx = lib.func('int __stdcall SAPI_RestJobEx(str, _Out_ char *, int)') + SAPI_GetJobStateById = lib.func( + 'int __stdcall SAPI_GetJobStateById(str, _Out_ int *, _Out_ int *)' + ) + SAPI_CopyFromUsb = lib.func('int __stdcall SAPI_CopyFromUsb(str, int)') + SAPI_GetUsbCopyState = lib.func('int __stdcall SAPI_GetUsbCopyState(_Out_ int *, _Out_ int *)') + SAPI_PrinterResetprinter = lib.func('int __stdcall SAPI_PrinterResetprinter()') + + try { + SAPI_AdminJobCancel = lib.func('int __stdcall SAPI_AdminJobCancel(str)') + hasCancelApi = true + } catch { + SAPI_AdminJobCancel = null + hasCancelApi = false + if (!loggedCancelMissing) { + loggedCancelMissing = true + log.info('SAPI_AdminJobCancel not in workDll (optional); stop uses poll-stop only') + } + } + + try { + SAPI_PrinterMovetoreject = lib.func('int __stdcall SAPI_PrinterMovetoreject()') + hasRejectApi = true + } catch { + hasRejectApi = false + if (!loggedRejectMissing) { + loggedRejectMissing = true + log.info('SAPI_PrinterMovetoreject not in workDll (optional); reject card disabled') + } + } +} + +export function isRejectApiAvailable(): boolean { + loadLibrary() + return hasRejectApi +} + +export function isCancelApiAvailable(): boolean { + loadLibrary() + return hasCancelApi +} + +export function dllInit(params: InitParams): number { + loadLibrary() + return SAPI_Init!( + params.sharedDir, + params.keepCombinedImage ?? true, + params.stopOnFailure ?? false, + params.cleanTaskFile ?? true, + params.autoRetryTimes ?? 0, + params.rejectConfig ?? true, + params.logLevel ?? LOG_FATAL_FLAG, + params.outBack ?? false + ) as number +} + +export function dllGetPrinterInfo(): { code: number; json?: Record } { + loadLibrary() + const outPtr = koffi.alloc('void *', 8) + try { + const len = SAPI_GetPrinterInfo!(outPtr) as number + if (len <= 0) return { code: len } + const ptr = koffi.decode(outPtr, 0, 'void *') as number + const jsonStr = koffi.decode(ptr, 'char', len) as string + koffi.free(ptr) + return { code: len, json: JSON.parse(jsonStr) as Record } + } finally { + koffi.free(outPtr) + } +} + +export function dllGetPrinterErrorStr(errorNo = -1): string { + loadLibrary() + const s = SAPI_GetPrinterErrorStr!(errorNo) as string + return s || '' +} + +export function dllRestJobEx(json: string): { code: number; jobId: string } { + loadLibrary() + const buf = Buffer.alloc(JOB_ID_BUF_SIZE) + const code = SAPI_RestJobEx!(json, buf, JOB_ID_BUF_SIZE) as number + const jobId = buf.toString('utf8').replace(/\0.*$/, '').trim() + return { code, jobId } +} + +export function dllGetJobStateById(jobId: string): { + queryErrorCode: number + jobState: number + progress: number +} { + loadLibrary() + const jobState = [0] + const copyScheduler = [0] + const queryErrorCode = SAPI_GetJobStateById!(jobId, jobState, copyScheduler) as number + return { + queryErrorCode, + jobState: jobState[0], + progress: copyScheduler[0] + } +} + +export function dllAdminJobCancel(jobId: string): number { + loadLibrary() + if (!SAPI_AdminJobCancel) throw new Error('CANCEL_API_UNAVAILABLE') + return SAPI_AdminJobCancel(jobId) as number +} + +export function dllCopyFromUsb(destFolder: string, cardOutput: number): number { + loadLibrary() + return SAPI_CopyFromUsb!(destFolder, cardOutput) as number +} + +export function dllGetUsbCopyState(): { taskStatus: number; progress: number } { + loadLibrary() + const taskStatus = [0] + const progress = [0] + SAPI_GetUsbCopyState!(taskStatus, progress) + return { taskStatus: taskStatus[0], progress: progress[0] } +} + +export function dllPrinterReset(): number { + loadLibrary() + return SAPI_PrinterResetprinter!() as number +} + +export function dllPrinterReject(): number { + loadLibrary() + if (!SAPI_PrinterMovetoreject) throw new Error('REJECT_API_UNAVAILABLE') + return SAPI_PrinterMovetoreject() as number +} diff --git a/app/src/main/utils/suppress-dll-stderr.ts b/app/src/main/utils/suppress-dll-stderr.ts new file mode 100644 index 0000000..56f6e98 --- /dev/null +++ b/app/src/main/utils/suppress-dll-stderr.ts @@ -0,0 +1,28 @@ +import { app } from 'electron' + +const SUPPRESS_PATTERNS = [ + 'Card Printer not detected', + 'PrinterAdaptor.cpp', + 'ServerAPI.cpp:654', + 'using time over', + 'Fail to read template file' +] + +function shouldSuppress(chunk: string | Uint8Array): boolean { + const text = typeof chunk === 'string' ? chunk : Buffer.from(chunk).toString('utf8') + return SUPPRESS_PATTERNS.some((p) => text.includes(p)) +} + +export function suppressKnownDllStderr(): void { + if (app.isPackaged) return + + const stderr = process.stderr + const original = stderr.write.bind(stderr) + + stderr.write = ((chunk: string | Uint8Array, ...args: unknown[]) => { + if (shouldSuppress(chunk)) { + return true + } + return (original as (...a: unknown[]) => boolean)(chunk, ...args) + }) as typeof stderr.write +} diff --git a/app/src/preload/index.ts b/app/src/preload/index.ts new file mode 100644 index 0000000..84725a4 --- /dev/null +++ b/app/src/preload/index.ts @@ -0,0 +1,45 @@ +import { contextBridge, ipcRenderer } from 'electron' + +const channels = { + invoke: [ + 'dll:init', + 'dll:printer-info', + 'dll:printer-reset', + 'dll:printer-reject', + 'dll:printer-error-str', + 'dll:job-create', + 'dll:job-cancel', + 'dll:usb-copy', + 'poll:job-start', + 'poll:job-stop', + 'poll:usb-start', + 'poll:usb-stop', + 'dialog:open-directory', + 'dialog:open-file', + 'fs:path-exists', + 'config:get', + 'config:set', + 'shell:open-path', + 'dll:reject-available' + ] as const, + on: ['job:poll-tick', 'usb:poll-tick'] as const +} + +const cardsoonApi = { + invoke(channel: (typeof channels.invoke)[number], ...args: unknown[]) { + if (!(channels.invoke as readonly string[]).includes(channel)) { + throw new Error(`IPC channel not allowed: ${channel}`) + } + return ipcRenderer.invoke(channel, ...args) + }, + on(channel: (typeof channels.on)[number], listener: (...args: unknown[]) => void) { + if (!(channels.on as readonly string[]).includes(channel)) { + throw new Error(`IPC event not allowed: ${channel}`) + } + const subscription = (_event: unknown, payload: unknown) => listener(payload) + ipcRenderer.on(channel, subscription) + return () => ipcRenderer.removeListener(channel, subscription) + } +} + +contextBridge.exposeInMainWorld('cardsoonApi', cardsoonApi) diff --git a/app/src/renderer/index.html b/app/src/renderer/index.html new file mode 100644 index 0000000..5397b51 --- /dev/null +++ b/app/src/renderer/index.html @@ -0,0 +1,16 @@ + + + + + + + 卡树数据卡打印系统 + + +
+ + + diff --git a/app/src/renderer/src/App.vue b/app/src/renderer/src/App.vue new file mode 100644 index 0000000..32e9f7a --- /dev/null +++ b/app/src/renderer/src/App.vue @@ -0,0 +1,9 @@ + + + diff --git a/app/src/renderer/src/api/cardsoon.ts b/app/src/renderer/src/api/cardsoon.ts new file mode 100644 index 0000000..94521b1 --- /dev/null +++ b/app/src/renderer/src/api/cardsoon.ts @@ -0,0 +1,107 @@ +import type { InitParamsDTO, IpcResult, JobPollPayload, UsbPollPayload } from '@/types/ipc' +import type { PrinterStatusDisplay } from '@/types/printer' + +function api() { + return window.cardsoonApi +} + +export async function dllInit(params: InitParamsDTO): Promise { + return api().invoke('dll:init', params) as Promise +} + +export async function dllPrinterInfo(): Promise>> { + return api().invoke('dll:printer-info') as Promise>> +} + +export function parsePrinterInfo(json: Record): PrinterStatusDisplay { + const list = (json.printerList as Record[]) || [] + const p = list[0] || {} + return { + ribbonType: String(p.RibbonType ?? '—'), + statusText: String(p.PrinterType ?? '—'), + serialNo: String(p.PrinterName ?? '—'), + printedCount: Number(p.PrintedCount ?? 0) + } +} + +export async function dllPrinterReset(): Promise { + return api().invoke('dll:printer-reset') as Promise +} + +export async function dllPrinterReject(): Promise { + return api().invoke('dll:printer-reject') as Promise +} + +export async function dllRejectAvailable(): Promise> { + return api().invoke('dll:reject-available') as Promise> +} + +export async function dllPrinterErrorStr(errorNo = -1): Promise> { + return api().invoke('dll:printer-error-str', errorNo) as Promise> +} + +export async function dllJobCreate(json: string): Promise> { + return api().invoke('dll:job-create', json) as Promise> +} + +export async function dllJobCancel(jobId: string): Promise { + return api().invoke('dll:job-cancel', jobId) as Promise +} + +export async function dllUsbCopy(destFolder: string, cardOutput: number): Promise { + return api().invoke('dll:usb-copy', { destFolder, cardOutput }) as Promise +} + +export async function pollJobStart(jobId: string): Promise { + return api().invoke('poll:job-start', jobId) as Promise +} + +export async function pollJobStop(): Promise { + return api().invoke('poll:job-stop') as Promise +} + +export async function pollUsbStart(): Promise { + return api().invoke('poll:usb-start') as Promise +} + +export async function pollUsbStop(): Promise { + return api().invoke('poll:usb-stop') as Promise +} + +export function onJobPollTick(cb: (p: JobPollPayload) => void): () => void { + return api().on('job:poll-tick', cb as (...args: unknown[]) => void) +} + +export function onUsbPollTick(cb: (p: UsbPollPayload) => void): () => void { + return api().on('usb:poll-tick', cb as (...args: unknown[]) => void) +} + +export async function dialogOpenDirectory(): Promise> { + return api().invoke('dialog:open-directory') as Promise> +} + +export async function dialogOpenSoon(): Promise> { + return api().invoke('dialog:open-file', [{ name: 'Soon', extensions: ['soon'] }]) as Promise< + IpcResult<{ path: string }> + > +} + +export async function fsPathExists(paths: string[]): Promise> { + return api().invoke('fs:path-exists', paths) as Promise> +} + +export async function configGet(): Promise< + IpcResult<{ sharedDir: string; templateDir: string; skipDllInit?: boolean }> +> { + return api().invoke('config:get') as Promise< + IpcResult<{ sharedDir: string; templateDir: string; skipDllInit?: boolean }> + > +} + +export async function configSet(patch: Record): Promise { + return api().invoke('config:set', patch) as Promise +} + +export async function shellOpenTemplateDir(): Promise { + return api().invoke('shell:open-path', '') as Promise +} diff --git a/app/src/renderer/src/assets/fonts/fa-solid-900.woff2 b/app/src/renderer/src/assets/fonts/fa-solid-900.woff2 new file mode 100644 index 0000000..5c16cd3 Binary files /dev/null and b/app/src/renderer/src/assets/fonts/fa-solid-900.woff2 differ diff --git a/app/src/renderer/src/assets/icons/index.ts b/app/src/renderer/src/assets/icons/index.ts new file mode 100644 index 0000000..7a56a8c --- /dev/null +++ b/app/src/renderer/src/assets/icons/index.ts @@ -0,0 +1,38 @@ +export const ICON_NAMES = [ + 'redo', + 'trash', + 'paint-brush', + 'share', + 'download', + 'arrow-left', + 'check-circle', + 'info-circle', + 'times', + 'home', + 'folder-open', + 'plus', + 'exchange', + 'stop', + 'warning' +] as const + +export type IconName = (typeof ICON_NAMES)[number] + +/** 与 docs/design/index.html 中 Font Awesome 类名一致 */ +export const ICON_FA_CLASS: Record = { + redo: 'fas fa-redo', + trash: 'fas fa-trash-alt', + 'paint-brush': 'fas fa-paint-brush', + share: 'fas fa-share-alt', + download: 'fas fa-download', + 'arrow-left': 'fas fa-arrow-left', + 'check-circle': 'fas fa-check-circle', + 'info-circle': 'fas fa-info-circle', + times: 'fas fa-times', + home: 'fas fa-home', + 'folder-open': 'fas fa-folder-open', + plus: 'fas fa-plus', + exchange: 'fas fa-exchange-alt', + stop: 'fas fa-stop', + warning: 'fas fa-exclamation-triangle' +} diff --git a/app/src/renderer/src/components/AppFooter.vue b/app/src/renderer/src/components/AppFooter.vue new file mode 100644 index 0000000..a80e0ed --- /dev/null +++ b/app/src/renderer/src/components/AppFooter.vue @@ -0,0 +1,7 @@ + diff --git a/app/src/renderer/src/components/AppHeader.vue b/app/src/renderer/src/components/AppHeader.vue new file mode 100644 index 0000000..3587b48 --- /dev/null +++ b/app/src/renderer/src/components/AppHeader.vue @@ -0,0 +1,29 @@ + + + diff --git a/app/src/renderer/src/components/AppIcon.vue b/app/src/renderer/src/components/AppIcon.vue new file mode 100644 index 0000000..256dfef --- /dev/null +++ b/app/src/renderer/src/components/AppIcon.vue @@ -0,0 +1,18 @@ + + + diff --git a/app/src/renderer/src/components/DistributeSettingsModal.vue b/app/src/renderer/src/components/DistributeSettingsModal.vue new file mode 100644 index 0000000..b76c3d2 --- /dev/null +++ b/app/src/renderer/src/components/DistributeSettingsModal.vue @@ -0,0 +1,115 @@ + + + + + diff --git a/app/src/renderer/src/components/NavButton.vue b/app/src/renderer/src/components/NavButton.vue new file mode 100644 index 0000000..e9f60f6 --- /dev/null +++ b/app/src/renderer/src/components/NavButton.vue @@ -0,0 +1,35 @@ + + + diff --git a/app/src/renderer/src/components/WorkflowSteps.vue b/app/src/renderer/src/components/WorkflowSteps.vue new file mode 100644 index 0000000..9fdcdbe --- /dev/null +++ b/app/src/renderer/src/components/WorkflowSteps.vue @@ -0,0 +1,53 @@ + + + diff --git a/app/src/renderer/src/composables/useAppBootstrap.ts b/app/src/renderer/src/composables/useAppBootstrap.ts new file mode 100644 index 0000000..39375a1 --- /dev/null +++ b/app/src/renderer/src/composables/useAppBootstrap.ts @@ -0,0 +1,65 @@ +import { onMounted } from 'vue' +import { ElMessage } from 'element-plus' +import { + configGet, + dllInit, + dllPrinterInfo, + dllRejectAvailable, + parsePrinterInfo +} from '@/api/cardsoon' +import { useAppStore } from '@/stores/app' +import { useConfigStore } from '@/stores/config' + +let bootstrapped = false + +export function useAppBootstrap(): { + retryInit: () => Promise + refreshHeader: () => Promise +} { + const appStore = useAppStore() + const configStore = useConfigStore() + + async function refreshHeader(): Promise { + const info = await dllPrinterInfo() + if (info.ok && info.data) { + configStore.setPrinter(parsePrinterInfo(info.data)) + } + } + + async function doInit(): Promise { + const cfg = await configGet() + const sharedDir = cfg.data?.sharedDir || '' + configStore.setSharedDir(sharedDir) + + const skipDll = cfg.data?.skipDllInit ?? import.meta.env.DEV + if (skipDll) { + appStore.setInitialized(true) + return + } + + const init = await dllInit({ sharedDir, logLevel: 3 }) + if (!init.ok) { + appStore.setInitialized(false, init.message || 'Init 失败') + ElMessage.error(init.message || '初始化失败,请检查任务目录权限') + return + } + appStore.setInitialized(true) + const warn = (init.data as { warning?: string } | undefined)?.warning + if (warn) ElMessage.warning(warn) + try { + await refreshHeader() + } catch { + /* 无打印机时 GetPrinterInfo 可能失败,保留 Mock 展示 */ + } + const rej = await dllRejectAvailable() + if (rej.ok && rej.data) configStore.rejectApiAvailable = rej.data.available + } + + onMounted(async () => { + if (bootstrapped) return + bootstrapped = true + await doInit() + }) + + return { retryInit: doInit, refreshHeader } +} diff --git a/app/src/renderer/src/composables/useScale.ts b/app/src/renderer/src/composables/useScale.ts new file mode 100644 index 0000000..3266b90 --- /dev/null +++ b/app/src/renderer/src/composables/useScale.ts @@ -0,0 +1,27 @@ +import { onMounted, onUnmounted, type Ref } from 'vue' +import { DESIGN_WIDTH, DESIGN_HEIGHT } from '@shared/viewport' + +export { DESIGN_WIDTH, DESIGN_HEIGHT } + +/** 按内容区宽度铺满画布,垂直居中;内容区高按 720:390 预留时底部完整可见 */ +export function useScale(shellRef: Ref): void { + function updateScale(): void { + const shell = shellRef.value + if (!shell) return + + const scale = window.innerWidth / DESIGN_WIDTH + const offsetY = Math.max(0, (window.innerHeight - DESIGN_HEIGHT * scale) / 2) + + shell.style.transformOrigin = '0 0' + shell.style.transform = `translate(0px, ${offsetY}px) scale(${scale})` + } + + onMounted(() => { + updateScale() + window.addEventListener('resize', updateScale) + }) + + onUnmounted(() => { + window.removeEventListener('resize', updateScale) + }) +} diff --git a/app/src/renderer/src/env.d.ts b/app/src/renderer/src/env.d.ts new file mode 100644 index 0000000..11a88c1 --- /dev/null +++ b/app/src/renderer/src/env.d.ts @@ -0,0 +1,22 @@ +/// + +declare module '*.vue' { + import type { DefineComponent } from 'vue' + const component: DefineComponent + export default component +} + +import type { IpcResult } from '@/types/ipc' + +interface CardsoonApi { + invoke(channel: string, ...args: unknown[]): Promise + on(channel: string, listener: (...args: unknown[]) => void): () => void +} + +declare global { + interface Window { + cardsoonApi: CardsoonApi + } +} + +export {} diff --git a/app/src/renderer/src/layouts/AppShell.vue b/app/src/renderer/src/layouts/AppShell.vue new file mode 100644 index 0000000..d36bbf4 --- /dev/null +++ b/app/src/renderer/src/layouts/AppShell.vue @@ -0,0 +1,13 @@ + + + diff --git a/app/src/renderer/src/main.ts b/app/src/renderer/src/main.ts new file mode 100644 index 0000000..8b1d9fb --- /dev/null +++ b/app/src/renderer/src/main.ts @@ -0,0 +1,15 @@ +import { createApp } from 'vue' +import { ElMessage } from 'element-plus' +import 'element-plus/theme-chalk/el-message.css' +import { createPinia } from 'pinia' +import App from './App.vue' +import router from './router' +import './styles/design-base.css' +import './styles/icons-font.css' +import './styles/shell.css' + +const app = createApp(App) +app.use(createPinia()) +app.use(router) +app.config.globalProperties.$message = ElMessage +app.mount('#app') diff --git a/app/src/renderer/src/mocks/job-poll.ts b/app/src/renderer/src/mocks/job-poll.ts new file mode 100644 index 0000000..ad3ebfc --- /dev/null +++ b/app/src/renderer/src/mocks/job-poll.ts @@ -0,0 +1,32 @@ +import { onMounted, onUnmounted, ref } from 'vue' +import { useJobStore } from '@/stores/job' + +const CIRCLE_LEN = 283 + +export function useMockJobPoll() { + const progress = ref(0) + const jobStore = useJobStore() + let timer: ReturnType | null = null + + const strokeOffset = ref(CIRCLE_LEN) + + function tick() { + progress.value = Math.min(100, progress.value + 8) + strokeOffset.value = CIRCLE_LEN - (CIRCLE_LEN * progress.value) / 100 + if (progress.value >= 100) { + jobStore.successCount += 1 + progress.value = 0 + strokeOffset.value = CIRCLE_LEN + } + } + + onMounted(() => { + timer = setInterval(tick, 1000) + }) + + onUnmounted(() => { + if (timer) clearInterval(timer) + }) + + return { progress, strokeOffset } +} diff --git a/app/src/renderer/src/mocks/printer.ts b/app/src/renderer/src/mocks/printer.ts new file mode 100644 index 0000000..1334a50 --- /dev/null +++ b/app/src/renderer/src/mocks/printer.ts @@ -0,0 +1,9 @@ +import type { PrinterStatusDisplay } from '@/types/printer' + +/** 阶段一 Header 展示;阶段二由 GetPrinterInfo 替换 */ +export const mockPrinterStatus: PrinterStatusDisplay = { + ribbonType: 'YMCKO', + statusText: '50/300', + serialNo: 'S103B29035', + printedCount: 190 +} diff --git a/app/src/renderer/src/router/guards.ts b/app/src/renderer/src/router/guards.ts new file mode 100644 index 0000000..2f57484 --- /dev/null +++ b/app/src/renderer/src/router/guards.ts @@ -0,0 +1,34 @@ +import type { Router } from 'vue-router' +import { useJobStore } from '@/stores/job' +import { useAppStore } from '@/stores/app' + +/** + * 无 jobId 访问 running → 重定向 config + * distributing 时访问 collect → 重定向 home + * 离开 running(非 failed)→ 清 distributing,回 config + */ +export function setupRouterGuards(router: Router): void { + router.beforeEach((to, from) => { + const job = useJobStore() + const app = useAppStore() + + if (to.path === '/distribute/running') { + if (!job.jobId && !job.mockJobStarted) { + return { path: '/distribute/config' } + } + } + + if (to.path === '/collect' && app.mode === 'distributing') { + return { path: '/home' } + } + + if (from.path === '/distribute/running' && to.path !== '/distribute/failed') { + if (to.path !== '/distribute/config') { + app.setMode('ready') + return { path: '/distribute/config' } + } + } + + return true + }) +} diff --git a/app/src/renderer/src/router/index.ts b/app/src/renderer/src/router/index.ts new file mode 100644 index 0000000..7737f90 --- /dev/null +++ b/app/src/renderer/src/router/index.ts @@ -0,0 +1,30 @@ +import { createRouter, createWebHashHistory } from 'vue-router' +import { setupRouterGuards } from './guards' + +const router = createRouter({ + history: createWebHashHistory(), + routes: [ + { path: '/', redirect: '/home' }, + { path: '/home', name: 'home', component: () => import('@/views/HomeView.vue') }, + { + path: '/distribute/config', + name: 'distribute-config', + component: () => import('@/views/DistributeConfigView.vue') + }, + { + path: '/distribute/running', + name: 'distribute-running', + component: () => import('@/views/DistributeRunningView.vue') + }, + { + path: '/distribute/failed', + name: 'distribute-failed', + component: () => import('@/views/DistributeFailedView.vue') + }, + { path: '/collect', name: 'collect', component: () => import('@/views/DataCollectView.vue') } + ] +}) + +setupRouterGuards(router) + +export default router diff --git a/app/src/renderer/src/stores/app.ts b/app/src/renderer/src/stores/app.ts new file mode 100644 index 0000000..5f0bb62 --- /dev/null +++ b/app/src/renderer/src/stores/app.ts @@ -0,0 +1,23 @@ +import { defineStore } from 'pinia' + +export type AppWorkflowMode = 'ready' | 'distributing' | 'usbCopying' + +export const useAppStore = defineStore('app', { + state: () => ({ + initialized: false, + initError: '', + mode: 'ready' as AppWorkflowMode + }), + getters: { + isBusy: (state) => state.mode !== 'ready' + }, + actions: { + setMode(mode: AppWorkflowMode) { + this.mode = mode + }, + setInitialized(ok: boolean, err = '') { + this.initialized = ok + this.initError = err + } + } +}) diff --git a/app/src/renderer/src/stores/collect.ts b/app/src/renderer/src/stores/collect.ts new file mode 100644 index 0000000..8e44d56 --- /dev/null +++ b/app/src/renderer/src/stores/collect.ts @@ -0,0 +1,14 @@ +import { defineStore } from 'pinia' + +export const useCollectStore = defineStore('collect', { + state: () => ({ + destPath: 'C:/Users/jerry', + cardOutput: 1 as 1 | 2 + }), + actions: { + reset() { + this.destPath = 'C:/Users/jerry' + this.cardOutput = 1 + } + } +}) diff --git a/app/src/renderer/src/stores/config.ts b/app/src/renderer/src/stores/config.ts new file mode 100644 index 0000000..7301720 --- /dev/null +++ b/app/src/renderer/src/stores/config.ts @@ -0,0 +1,20 @@ +import { defineStore } from 'pinia' +import type { PrinterStatusDisplay } from '@/types/printer' +import { mockPrinterStatus } from '@/mocks/printer' + +export const useConfigStore = defineStore('config', { + state: () => ({ + sharedDir: '', + templateDir: '', + printer: { ...mockPrinterStatus } as PrinterStatusDisplay, + rejectApiAvailable: false + }), + actions: { + setPrinter(p: PrinterStatusDisplay) { + this.printer = p + }, + setSharedDir(dir: string) { + this.sharedDir = dir + } + } +}) diff --git a/app/src/renderer/src/stores/distributeForm.ts b/app/src/renderer/src/stores/distributeForm.ts new file mode 100644 index 0000000..0d54d07 --- /dev/null +++ b/app/src/renderer/src/stores/distributeForm.ts @@ -0,0 +1,58 @@ +import { defineStore } from 'pinia' + +export interface PathListItem { + path: string + meta: string +} + +export interface DistributeFormState { + pathList: PathListItem[] + volumeLabel: string + templateFile: string + copyType: 0 | 1 + formatType: 'none' | 'fat' | 'ntfs' + dongleEnabled: boolean + dongleMode: -1 | 0 | 255 + priority: 'low' | 'mid' | 'high' + ribbonType: 'any' | 'YMCKO' | 'YMCK' + generateIso: boolean + generateZip: boolean + printCmdToHasi: boolean + presetCopy: boolean + generateHasi: boolean + dongleCountCheck: boolean + failPrintLabel: boolean +} + +function createDefaultForm(): DistributeFormState { + return { + pathList: [ + { path: 'D:\\数据备份\\2026-04-20\\*.*', meta: '128 文件 | 3.8 GB' }, + { path: 'C:\\Users\\Public\\Documents\\*.*', meta: '45 文件 | 520 MB' } + ], + volumeLabel: 'DATA_CARD', + templateFile: 'D:\\images\\template.jpg', + copyType: 0, + formatType: 'none', + dongleEnabled: true, + dongleMode: -1, + priority: 'low', + ribbonType: 'any', + generateIso: false, + generateZip: false, + printCmdToHasi: false, + presetCopy: false, + generateHasi: false, + dongleCountCheck: false, + failPrintLabel: false + } +} + +export const useDistributeFormStore = defineStore('distributeForm', { + state: (): DistributeFormState => createDefaultForm(), + actions: { + reset() { + Object.assign(this, createDefaultForm()) + } + } +}) diff --git a/app/src/renderer/src/stores/job.ts b/app/src/renderer/src/stores/job.ts new file mode 100644 index 0000000..5c19ca1 --- /dev/null +++ b/app/src/renderer/src/stores/job.ts @@ -0,0 +1,27 @@ +import { defineStore } from 'pinia' + +export const useJobStore = defineStore('job', { + state: () => ({ + jobId: '', + mockJobStarted: false, + submitting: false, + successCount: 0, + failCount: 0 + }), + actions: { + setActiveJob(jobId: string) { + this.jobId = jobId + this.mockJobStarted = true + }, + markMockStarted() { + this.mockJobStarted = true + }, + reset() { + this.jobId = '' + this.mockJobStarted = false + this.submitting = false + this.successCount = 0 + this.failCount = 0 + } + } +}) diff --git a/app/src/renderer/src/styles/base.scss b/app/src/renderer/src/styles/base.scss new file mode 100644 index 0000000..95b215b --- /dev/null +++ b/app/src/renderer/src/styles/base.scss @@ -0,0 +1,407 @@ +@use './tokens.scss'; + +* { + box-sizing: border-box; + margin: 0; + padding: 0; + font-family: 'Microsoft YaHei', 'Inter', -apple-system, sans-serif; +} + +html, +body, +#app { + width: 100vw; + height: 100vh; + margin: 0; + padding: 0; + overflow: hidden; + background: #1a1a1a; + display: flex; + align-items: center; + justify-content: center; +} + +.app-shell { + width: 720px; + height: 360px; + background: var(--cs-bg); + display: flex; + flex-direction: column; + transform-origin: center; + flex-shrink: 0; + box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5); +} + +.l-main-grid { + flex: 1; + display: grid; + grid-template-columns: 140px 1fr 140px; + padding: 10px; + gap: 10px; + overflow: hidden; +} + +.l-main-full { + flex: 1; + display: flex; + flex-direction: column; + padding: 10px; + overflow: hidden; +} + +.l-main-flex { + flex: 1; + display: flex; + padding: 8px; + gap: 8px; + overflow: hidden; +} + +.c-header { + height: var(--h-header); + background: #fff; + display: flex; + align-items: center; + padding: 0 10px; + border-bottom: 1px solid var(--cs-border); + gap: 10px; +} + +.c-header__brand { + font-size: 16px; + font-weight: 800; + letter-spacing: 1px; + color: #444; + flex: 0 0 auto; + min-width: 90px; +} + +.c-header__center { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + min-width: 0; + overflow: hidden; +} + +.c-header__actions-slot { + flex: 0 0 auto; + min-width: 100px; + display: flex; + align-items: center; + justify-content: flex-end; +} + +.c-header-actions { + display: flex; + align-items: center; + gap: 8px; +} + +.c-mode-badge { + background: #e9ecef; + padding: 1px 12px; + border-radius: 4px; + font-size: 11px; + font-weight: 800; + color: #495057; + border: 1px solid var(--cs-border); + margin-bottom: 2px; +} + +.c-status-capsule { + display: flex; + gap: 16px; + font-size: 10px; + color: #888; + white-space: nowrap; +} + +.c-status-capsule span { + display: flex; + align-items: center; + gap: 4px; +} + +.c-status-capsule b { + color: var(--cs-primary); + font-weight: 700; +} + +.c-nav-group { + display: flex; + align-items: center; + gap: 4px; +} + +.c-nav-group .c-nav-btn--primary { + margin-left: 8px; +} + +.c-nav-btn { + width: 36px; + height: 44px; + background: var(--cs-bg-soft); + border: none; + border-radius: var(--radius-sm); + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + cursor: pointer; + transition: 0.2s; +} + +.c-nav-btn i { + font-size: 16px; + color: #555; +} + +.c-nav-btn span { + font-size: 9px; + margin-top: 2px; + font-weight: 600; + color: #555; +} + +.c-nav-btn:hover { + background: #e2e8f0; +} + +.c-nav-btn.is-active { + background: #dbe2ef; +} + +.c-nav-btn--primary { + width: 48px !important; + height: 48px !important; + background: linear-gradient(135deg, var(--cs-primary) 0%, #2d8a2d 100%) !important; + box-shadow: 0 3px 10px rgba(0, 128, 0, 0.35) !important; +} + +.c-nav-btn--primary i, +.c-nav-btn--primary span { + color: #fff !important; +} + +.c-nav-btn--primary i { + font-size: 18px !important; +} + +.c-nav-btn--primary span { + font-weight: 700 !important; +} + +.c-nav-btn--stop { + background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important; + box-shadow: 0 3px 10px rgba(220, 53, 69, 0.35) !important; + width: 48px !important; + height: 48px !important; +} + +.c-nav-btn--stop i, +.c-nav-btn--stop span { + color: #fff !important; +} + +.c-nav-btn--stop i { + font-size: 18px !important; +} + +.c-nav-btn--stop span { + font-weight: 700 !important; +} + +.c-footer { + height: var(--h-footer); + padding: 0 15px; + background: #fff; + border-top: 1px solid var(--cs-border); + display: flex; + justify-content: space-between; + align-items: center; + color: #999; + font-size: 9px; +} + +.app-shell__main { + flex: 1; + min-height: 0; + overflow: hidden; +} + +.c-panel { + background: #fff; + border: 1px solid var(--cs-border); + border-radius: var(--radius-md); + display: flex; + flex-direction: column; + overflow: hidden; +} + +.c-panel__header { + height: 32px; + padding: 0 10px; + border-bottom: 1px solid #f0f0f0; + display: flex; + justify-content: space-between; + align-items: center; +} + +.c-panel__title { + font-size: 12px; + font-weight: 700; +} + +.c-panel__body { + flex: 1; + overflow-y: auto; +} + +.c-panel__footer { + padding: 4px 10px; + border-top: 1px solid #f0f0f0; +} + +.c-select, +.c-input { + padding: 0 4px; + border: 1px solid #ddd; + border-radius: 2px; + font-size: 10px; + background: #fff; + outline: none; + height: 18px; + line-height: 16px; +} + +.c-button-cs { + background: var(--cs-primary) !important; + color: #fff !important; + border: none !important; + border-radius: 4px; + padding: 1px 8px; + font-weight: 800; + font-size: 10px; + white-space: nowrap; + cursor: pointer; +} + +.c-progress { + height: 12px; + background: #bdc3c7; + border-radius: 6px; + position: relative; + overflow: hidden; + margin: 2px 10px; +} + +.c-progress-fill { + height: 100%; + background: var(--cs-dark-grey); + border-radius: 6px; +} + +.c-progress-text { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + font-size: 8.5px; + font-weight: 800; + color: #fff; + z-index: 2; +} + +.c-data-table-mini { + width: 100%; + border-collapse: separate; + border-spacing: 0 2px; + font-size: 10px !important; +} + +.c-data-table-mini td { + padding: 0; + border: none; + vertical-align: middle; +} + +.c-data-table-mini td:first-child { + color: #666; + width: 35%; + font-weight: 700; + padding-right: 8px; +} + +.c-data-table-mini td:last-child { + color: #333; + font-weight: 800; + text-align: left; + background: #f9fafb; + border: 1px solid #dcdfe6; + border-radius: 3px; + padding: 1px 8px; + height: 20px; +} + +.c-preview-area { + background: #2d3436; + margin: 8px; + height: 105px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 15px; +} + +.c-card-small { + width: 135px; + height: 88px; + background: #fff; + border-radius: 4px; + padding: 6px; + display: flex; + flex-direction: column; +} + +.c-card-small__row { + font-size: 8px; + color: #333; + margin-bottom: 2px; +} + +.c-card-small__label { + font-weight: 800; +} + +.c-status-panel { + text-align: center; + margin-bottom: 6px; +} + +.c-status-title { + font-size: 20px; + font-weight: 900; + margin-bottom: 1px; +} + +.c-status-title.is-error { + color: #e63946; +} + +.c-status-title.is-working { + color: #2ecc71; +} + +.c-status-sub { + font-size: 9px; + color: #7f8c8d; + font-weight: 700; +} diff --git a/app/src/renderer/src/styles/design-base.css b/app/src/renderer/src/styles/design-base.css new file mode 100644 index 0000000..17c0aee --- /dev/null +++ b/app/src/renderer/src/styles/design-base.css @@ -0,0 +1,604 @@ +/* + Cardsoon System UI (CSUI) - 核心组件库 V1.0 + 采用 BEM 命名规范:c-[组件名], l-[布局名], is-[状态] +*/ + +:root { + /* --- 调色盘 (Theme Palette - Derived from case.png) --- */ + --cs-primary: #4b7e4a; + --cs-primary-hover: #3d673c; + --cs-dark-grey: #5a6268; + --cs-bg: #f5f7fa; + --cs-white: #ffffff; + --cs-text-main: #333333; + --cs-text-muted: #666666; + --cs-border: #e0e4e8; + --cs-bg-soft: #f0f2f5; + + /* --- 尺寸规范 (Metrics) --- */ + --h-header: 54px; + --h-footer: 24px; + --radius-sm: 4px; + --radius-md: 8px; + + /* --- 阴影 (Shadows) --- */ + --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.1); + --shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.1); +} + +/* 1. 基础重置 (Base Reset) */ +* { + box-sizing: border-box; + margin: 0; + padding: 0; + font-family: + 'Inter', + -apple-system, + sans-serif; +} +body { + width: 100vw; + height: 100vh; + margin: 0; + padding: 0; + overflow: hidden; /* 防止缩放出现滚动条 */ + background: #1a1a1a; /* 深色背景,突出缩放容器 */ + display: flex; + align-items: center; + justify-content: center; +} + +/* 2. 系统壳层 (App Shell) */ +.app-shell { + width: 720px; + height: 360px; + background: var(--cs-bg); + display: flex; + flex-direction: column; + transform-origin: center; /* 从中心缩放 */ + flex-shrink: 0; /* 禁止压缩 */ + box-shadow: 0 20px 50px rgba(0,0,0,0.5); +} + +/* 3. 布局模式 (Layout Modes) */ +/* 模式 A:三栏网格布局 (Page 1, 2) */ +.l-main-grid { + flex: 1; + display: grid; + grid-template-columns: 140px 1fr 140px; + padding: 10px; + gap: 10px; + overflow: hidden; +} + +/* 模式 B:全宽布局 (Page 5) */ +.l-main-full { + flex: 1; + display: flex; + flex-direction: column; + padding: 10px; + overflow: hidden; +} + +/* 模式 C:分栏弹性布局 (Page 7) */ +.l-main-flex { + flex: 1; + display: flex; + padding: 8px; + gap: 8px; + overflow: hidden; +} + +/* 4. 核心组件 (Components) */ + +/* [组件] Header */ +.c-header { + height: var(--h-header); + background: #fff; + display: flex; + align-items: center; + padding: 0 10px; + border-bottom: 1px solid var(--cs-border); + gap: 10px; +} +.c-header__brand { + font-size: 16px; + font-weight: 800; + letter-spacing: 1px; + color: #444; + flex: 0 0 auto; + min-width: 90px; /* 保证 Page 3 的基础对称性 */ +} +.c-header__center { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + min-width: 0; /* 防止内容溢出遮挡 */ + overflow: hidden; +} +.c-header__title { + font-size: 14px; + font-weight: 800; + color: #000; + line-height: 1.2; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + width: 100%; + text-align: center; +} + +/* 动作插槽容器 */ +.c-header__actions-slot { + flex: 0 0 auto; + min-width: 100px; + display: flex; + align-items: center; + justify-content: flex-end; +} +.c-header-actions { + display: flex; + align-items: center; + gap: 8px; +} +.action-divider { + width: 1px; + height: 16px; + background: #ddd; + margin: 0 4px; +} + +/* [组件] 状态信息栏 */ +.c-status-capsule { + display: flex; + gap: 16px; + font-size: 10px; + color: #888; + white-space: nowrap; +} +.c-status-capsule span { + display: flex; + align-items: center; + gap: 4px; +} +.c-status-capsule b { + color: var(--cs-primary); + font-weight: 700; +} + +/* [组件] 步骤进度条 Steps */ +.c-steps { + display: flex; + background: #f0f2f5; + height: 28px; + border-bottom: 1px solid var(--cs-border); +} +.c-step { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + font-size: 10px; + color: #999; + position: relative; + font-weight: 600; +} +.c-step:not(:last-child)::after { + content: ''; + position: absolute; + right: -10px; + border-top: 14px solid transparent; + border-bottom: 14px solid transparent; + border-left: 10px solid #f0f2f5; + z-index: 2; +} +.c-step.is-active { + background: var(--cs-primary); + color: white; +} +.c-step.is-active::after { + border-left-color: var(--cs-primary) !important; +} +.c-step.is-completed { + color: var(--cs-primary); + background: #eef9ed; +} + +/* [组件] 导航按钮组 */ +.c-nav-group { + display: flex; + align-items: center; + gap: 4px; +} + +/* 主按钮前增加视觉分隔,突出主按钮 */ +.c-nav-group .c-nav-btn--primary { + margin-left: 8px; +} +.c-nav-btn { + width: 36px; /* 极限宽度,确保 7 个按钮全显 */ + height: 44px; + background: var(--cs-bg-soft); + border: none; + border-radius: var(--radius-sm); + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + cursor: pointer; + transition: 0.2s; +} +.c-nav-btn i { + font-size: 16px; + color: #555; +} +.c-nav-btn span { + font-size: 9px; + margin-top: 2px; + font-weight: 600; + color: #555; +} +.c-nav-btn:hover { + background: #e2e8f0; +} +.c-nav-btn.is-active { + background: #dbe2ef; +} + +/* 主按钮强化样式 - 与普通按钮明显区分 */ +.c-nav-btn--primary { + width: 48px !important; + height: 48px !important; + background: linear-gradient(135deg, var(--cs-primary) 0%, #2d8a2d 100%) !important; + box-shadow: 0 3px 10px rgba(0, 128, 0, 0.35) !important; +} + +.c-nav-btn--primary i { + color: #fff !important; + font-size: 18px !important; +} + +.c-nav-btn--primary span { + color: #fff !important; + font-weight: 700 !important; +} + +.c-nav-btn--primary:hover { + background: linear-gradient(135deg, #2d8a2d 0%, #1f6b1f 100%) !important; + box-shadow: 0 4px 14px rgba(0, 128, 0, 0.45) !important; + transform: translateY(-1px) !important; +} + +/* [组件] 面板 Panel */ +.c-panel { + background: #fff; + border: 1px solid var(--cs-border); + border-radius: var(--radius-md); + display: flex; + flex-direction: column; + overflow: hidden; +} +.c-panel__header { + height: 32px; + padding: 0 10px; + border-bottom: 1px solid #f0f0f0; + display: flex; + justify-content: space-between; + align-items: center; +} +.c-panel__title { + font-size: 12px; + font-weight: 700; +} +.c-panel__body { + flex: 1; + overflow-y: auto; +} +.c-panel__footer { + padding: 4px 10px; + border-top: 1px solid #f0f0f0; +} + +/* [组件] 通用按钮 Button */ +.c-button { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 6px; + height: 36px; + padding: 0 16px; + border-radius: var(--radius-sm); + font-size: 12px; + font-weight: 700; + cursor: pointer; + transition: 0.2s; + border: 1px solid var(--cs-border); + background: linear-gradient(to bottom, #ffffff, #f8f9fa); + color: #444; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} +.c-button--primary { + background: linear-gradient(to bottom, #3a7a32, #2d5a27); + color: #fff; + border-color: #24491f; + box-shadow: 0 2px 4px rgba(45, 90, 39, 0.2); +} +.c-button--mini { + height: 18px; /* 强行锁定高度 */ + padding: 0 4px; + font-size: 10px; + gap: 3px; +} +.c-button:hover { + transform: translateY(-1px); + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + filter: brightness(1.05); +} + +/* [组件] 表单控件 Form */ +.c-select, +.c-input { + padding: 0 4px; + border: 1px solid #ddd; + border-radius: 2px; + font-size: 10px; + background: #fff; + outline: none; + height: 18px; + line-height: 16px; + display: inline-flex; + align-items: center; +} + +/* ========================================================================== + 业务通用模块 (Business Common Modules) + ========================================================================== */ + +/* 1. 模式说明模块 (Mode Info) - 压缩高度 */ +.c-mode-panel { + display: flex; + flex-direction: column; + align-items: center; + gap: 2px; + margin-bottom: 6px; + text-align: center; +} +.c-mode-badge { + background: #e9ecef; + padding: 1px 12px; + border-radius: 4px; + font-size: 11px; + font-weight: 800; + color: #495057; + border: 1px solid var(--cs-border); +} +.c-mode-desc { + font-size: 9px; + color: #868e96; + font-weight: 700; + margin: 0; +} + +/* 2. 状态消息模块 (Status Group) - 压缩高度 */ +.c-status-panel { + text-align: center; + margin-bottom: 6px; +} +.c-status-title { + font-size: 20px; + font-weight: 900; + margin-bottom: 1px; +} +.c-status-title.is-error { + color: #e63946; +} +.c-status-title.is-working { + color: #2ecc71; +} +.c-status-sub { + font-size: 9px; + color: #7f8c8d; + font-weight: 700; +} + +/* 3. 工作流进度条模块 (Workflow System) - 整体缩小并支持叠层 */ +.c-workflow { + display: flex; + align-items: flex-start; + gap: 6px; + margin-top: 6px; +} +.c-workflow__step { + display: flex; + flex-direction: column; + align-items: center; + gap: 3px; + width: 62px; + transition: 0.3s; +} + +/* 图标容器:支持单图标和叠层图标 (Page 3 样式) */ +.c-workflow__icon-wrap { + font-size: 20px; + height: 20px; + line-height: 20px; + display: flex; + align-items: center; + justify-content: center; + position: relative; +} + +/* 叠层图标逻辑 (复刻 Page 3) */ +.c-workflow__icon-stack { + position: relative; + display: flex; + align-items: center; + justify-content: center; +} +.c-workflow__badge { + position: absolute; + bottom: -3px; + right: -4px; + font-size: 10px !important; + color: #e67e22 !important; + background: #fff; + border-radius: 50%; + padding: 1px; +} + +.c-workflow__text { + font-size: 8px; + color: #7f8c8d; + font-weight: 800; + white-space: nowrap; +} + +/* 工业风箭头同步缩小 */ +.c-workflow__arrow { + width: 35px; + height: 8px; + background: #bdc3c7; + position: relative; + margin-top: 6px; /* (20px icon - 8px arrow) / 2 */ +} +.c-workflow__arrow::after { + content: ''; + position: absolute; + right: -7px; + top: -4px; + border-left: 8px solid #bdc3c7; + border-top: 8px solid transparent; + border-bottom: 8px solid transparent; +} + +/* 状态色与动画 */ +.c-workflow__step.is-completed .c-workflow__icon { + color: #00b894; +} +.c-workflow__step.is-active .c-workflow__icon { + color: #00b894; +} +.c-workflow__step.is-error .c-workflow__icon { + color: #d63031; +} +.c-workflow__step.is-pending .c-workflow__icon { + color: #fdcb6e; + opacity: 0.4; +} + +.c-workflow__arrow.is-active, +.c-workflow__arrow.is-active::after { + background-color: #00b894; + border-left-color: #00b894; +} + +/* 特殊图标叠加 (如待处理标记) */ +.c-workflow__badge { + position: absolute; + bottom: -2px; + right: -4px; + font-size: 10px !important; + background: #fff; + border-radius: 50%; +} + +/* 4. 居中内容承载器 */ +.l-hero-container { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 10px 0; +} + +/* [组件] Footer */ +.c-footer { + height: var(--h-footer); + padding: 0 15px; + background: #fff; + border-top: 1px solid var(--cs-border); + display: flex; + justify-content: space-between; + align-items: center; + color: #999; + font-size: 9px; +} + +/* + ========================================================================== + CSUI (Cardsoon UI) 业务模组 - 基于 Page 7 完美版 + ========================================================================== +*/ + +/* 1. 窄版进度条 (Progress Bar) */ +.c-progress { + height: 12px; background: #bdc3c7; border-radius: 6px; + position: relative; overflow: hidden; margin: 2px 10px; + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2); +} +.c-progress-fill { + height: 100%; background: var(--cs-dark-grey); border-radius: 6px; +} +.c-progress-text { + position: absolute; top: 0; left: 0; width: 100%; height: 100%; + display: flex; align-items: center; justify-content: center; + font-size: 8.5px; font-weight: 800; color: #fff; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8); z-index: 2; line-height: 12px; +} + +/* 2. 紧凑型数据表格 (Data Table) */ +.c-data-table-mini { width: 100%; border-collapse: separate; border-spacing: 0 2px; font-size: 10px !important; } +.c-data-table-mini td { padding: 0; border: none; vertical-align: middle; } +.c-data-table-mini td:first-child { color: #666; width: 35%; font-weight: 700; padding-right: 8px; } +.c-data-table-mini td:last-child { + color: #333; font-weight: 800; text-align: left; + background: #f9fafb; border: 1px solid #dcdfe6; border-radius: 3px; + padding: 1px 8px; height: 20px; +} + +/* 3. 模组化按钮规范 */ +.c-button-cs { + background: var(--cs-primary) !important; color: #fff !important; + border: none !important; border-radius: 4px; padding: 1px 8px; + font-weight: 800; font-size: 10px; white-space: nowrap; letter-spacing: -0.2px; + cursor: pointer; display: inline-flex; align-items: center; justify-content: center; +} +.c-button-cs:hover { background: var(--cs-primary-hover) !important; } + +/* 4. 文件列表项规范 (File Item) */ +.c-file-item { display: flex; align-items: center; padding: 6px 10px; border-bottom: 1px solid #f8f8f8; } +.c-file-item__icon { width: 32px; font-size: 22px; color: var(--cs-dark-grey); margin-right: 12px; text-align: center; } +.c-file-item__info { flex: 1; min-width: 0; } +.c-file-item__name { font-size: 11px; font-weight: 700; color: #333; } +.c-file-item__meta { font-size: 9px; color: #999; } +.c-file-item__delete { border: none; background: none; color: #e74c3c; font-size: 14px; cursor: pointer; transition: 0.2s; } +.c-file-item__delete:hover { color: #ff0000; transform: scale(1.1); } + +/* 5. 模组化动态行 */ +.c-dynamic-row { display: flex; align-items: center; gap: 6px; min-height: 20px; margin-top: 2px; } +.c-dynamic-row > span { width: 35%; font-size: 10px; color: #666; font-weight: 700; } +.c-dynamic-row .c-select, .c-dynamic-row .c-input { + height: 20px; font-size: 10px; border: 1px solid #dcdfe6; border-radius: 3px; padding: 0 8px; +} + +/* 6. 拟物化预览模组 (Preview Module - Sync from Page 7) */ +.c-preview-area { + background: #2d3436; margin: 8px; height: 105px; border-radius: 4px; + display: flex; align-items: center; justify-content: center; gap: 15px; + box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5); +} +.c-card-small { + width: 135px; height: 88px; background: #fff; border-radius: 4px; padding: 6px; + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); display: flex; flex-direction: column; +} +.c-card-small__row { + font-size: 8px; color: #333; margin-bottom: 2px; line-height: 1.2; +} +.c-card-small__label { + font-weight: 800; +} + + diff --git a/app/src/renderer/src/styles/icons-font.css b/app/src/renderer/src/styles/icons-font.css new file mode 100644 index 0000000..5c7b165 --- /dev/null +++ b/app/src/renderer/src/styles/icons-font.css @@ -0,0 +1,67 @@ +/* Font Awesome 6.4 本地字体(打包进 assets,离线可用) */ +@font-face { + font-family: 'Font Awesome 6 Free'; + font-style: normal; + font-weight: 900; + font-display: block; + src: url('../assets/fonts/fa-solid-900.woff2') format('woff2'); +} + +.fas, +.fa-solid { + font-family: 'Font Awesome 6 Free'; + font-weight: 900; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + line-height: 1; + text-rendering: auto; +} + +.fa-redo::before { + content: '\f01e'; +} +.fa-trash-alt::before { + content: '\f2ed'; +} +.fa-paint-brush::before { + content: '\f1fc'; +} +.fa-share-alt::before { + content: '\f1e0'; +} +.fa-download::before { + content: '\f019'; +} +.fa-arrow-left::before { + content: '\f060'; +} +.fa-check-circle::before { + content: '\f058'; +} +.fa-info-circle::before { + content: '\f05a'; +} +.fa-times::before { + content: '\f00d'; +} +.fa-home::before { + content: '\f015'; +} +.fa-folder-open::before { + content: '\f07c'; +} +.fa-plus::before { + content: '\f067'; +} +.fa-exchange-alt::before { + content: '\f362'; +} +.fa-stop::before { + content: '\f04d'; +} +.fa-exclamation-triangle::before { + content: '\f071'; +} diff --git a/app/src/renderer/src/styles/pages/page1.css b/app/src/renderer/src/styles/pages/page1.css new file mode 100644 index 0000000..d5e7066 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page1.css @@ -0,0 +1,128 @@ +/* + Page 4 - 数据导入模式 + 手机横屏优化:左右分栏,大触摸区域,紧凑布局 +*/ + +/* ========== 手机横屏核心布局 ========== */ +.l-mobile-landscape { + display: flex; + align-items: center; + justify-content: center; + gap: 0; + padding: 0 60px; + height: 100%; + flex: 1; +} + +/* 配置面板 */ +.m-config-panel { + flex: 1; + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 12px; + padding: 20px 30px; + min-width: 220px; +} + +/* 面板标题 */ +.m-panel-title { + font-size: 14px; + font-weight: 700; + color: #495057; + margin: 0; + display: flex; + align-items: center; + gap: 8px; +} + +.m-panel-title i { + color: var(--cs-primary); + font-size: 16px; +} + +/* 垂直分隔线 */ +.m-divider-v { + width: 1px; + height: 100px; + background: #e9ecef; +} + +/* ========== 路径选择 - 大按钮设计 ========== */ +.m-path-box { + width: 100%; + padding: 12px 16px; + background: #f8f9fa; + border: 1px solid #dee2e6; + border-radius: 6px; + font-size: 13px; + font-weight: 600; + color: #495057; + font-family: monospace; +} + +.m-path-btn { + width: 100%; + height: 44px; + background: #fff; + border: 1px solid #ced4da; + border-radius: 6px; + font-size: 13px; + font-weight: 600; + color: #495057; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + gap: 6px; + transition: all 0.2s ease; +} + +.m-path-btn:hover { + border-color: var(--cs-primary); + color: var(--cs-primary); +} + +.m-path-btn i { + color: var(--cs-primary); +} + +/* ========== 单选按钮 - 大触摸区域 ========== */ +.m-radio-group { + display: flex; + flex-direction: column; + gap: 10px; + width: 100%; +} + +.m-radio-item { + display: flex; + align-items: center; + gap: 10px; + padding: 12px 16px; + background: #fff; + border: 1px solid #dee2e6; + border-radius: 6px; + cursor: pointer; + font-size: 14px; + font-weight: 600; + color: #495057; + transition: all 0.2s ease; +} + +.m-radio-item input { + width: 18px; + height: 18px; + margin: 0; + cursor: pointer; + accent-color: var(--cs-primary); +} + +.m-radio-item:hover { + border-color: var(--cs-primary); +} + +.m-radio-item:has(input:checked) { + border-color: var(--cs-primary); + background: rgba(0, 128, 0, 0.05); +} diff --git a/app/src/renderer/src/styles/pages/page1.scss b/app/src/renderer/src/styles/pages/page1.scss new file mode 100644 index 0000000..d5e7066 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page1.scss @@ -0,0 +1,128 @@ +/* + Page 4 - 数据导入模式 + 手机横屏优化:左右分栏,大触摸区域,紧凑布局 +*/ + +/* ========== 手机横屏核心布局 ========== */ +.l-mobile-landscape { + display: flex; + align-items: center; + justify-content: center; + gap: 0; + padding: 0 60px; + height: 100%; + flex: 1; +} + +/* 配置面板 */ +.m-config-panel { + flex: 1; + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 12px; + padding: 20px 30px; + min-width: 220px; +} + +/* 面板标题 */ +.m-panel-title { + font-size: 14px; + font-weight: 700; + color: #495057; + margin: 0; + display: flex; + align-items: center; + gap: 8px; +} + +.m-panel-title i { + color: var(--cs-primary); + font-size: 16px; +} + +/* 垂直分隔线 */ +.m-divider-v { + width: 1px; + height: 100px; + background: #e9ecef; +} + +/* ========== 路径选择 - 大按钮设计 ========== */ +.m-path-box { + width: 100%; + padding: 12px 16px; + background: #f8f9fa; + border: 1px solid #dee2e6; + border-radius: 6px; + font-size: 13px; + font-weight: 600; + color: #495057; + font-family: monospace; +} + +.m-path-btn { + width: 100%; + height: 44px; + background: #fff; + border: 1px solid #ced4da; + border-radius: 6px; + font-size: 13px; + font-weight: 600; + color: #495057; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + gap: 6px; + transition: all 0.2s ease; +} + +.m-path-btn:hover { + border-color: var(--cs-primary); + color: var(--cs-primary); +} + +.m-path-btn i { + color: var(--cs-primary); +} + +/* ========== 单选按钮 - 大触摸区域 ========== */ +.m-radio-group { + display: flex; + flex-direction: column; + gap: 10px; + width: 100%; +} + +.m-radio-item { + display: flex; + align-items: center; + gap: 10px; + padding: 12px 16px; + background: #fff; + border: 1px solid #dee2e6; + border-radius: 6px; + cursor: pointer; + font-size: 14px; + font-weight: 600; + color: #495057; + transition: all 0.2s ease; +} + +.m-radio-item input { + width: 18px; + height: 18px; + margin: 0; + cursor: pointer; + accent-color: var(--cs-primary); +} + +.m-radio-item:hover { + border-color: var(--cs-primary); +} + +.m-radio-item:has(input:checked) { + border-color: var(--cs-primary); + background: rgba(0, 128, 0, 0.05); +} diff --git a/app/src/renderer/src/styles/pages/page2.css b/app/src/renderer/src/styles/pages/page2.css new file mode 100644 index 0000000..760ade6 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page2.css @@ -0,0 +1,360 @@ +/* + Page 8 - 循环任务执行中样式 + 左右分布布局:左 = 状态+工作流,右 = 大圆环 + Index 首页也复用此样式 +*/ + +/* ========== Index 首页仪表板样式 ========== */ +.l-dashboard { + display: flex; + align-items: center; + justify-content: center; + gap: 60px; + padding: 20px 80px; + height: 100%; + flex: 1; +} + +/* 区域标题 */ +.m-section-title { + font-size: 11px; + font-weight: 700; + color: #adb5bd; + margin-bottom: 12px; + text-transform: uppercase; + letter-spacing: 1px; + padding-left: 4px; +} + +/* ========== 工具区域(左) ========== */ +.m-tool-section { + width: 180px; + flex-shrink: 0; +} + +.m-tool-grid { + display: flex; + flex-direction: column; + gap: 8px; +} + +.m-tool-btn { + width: 100%; + height: 48px; + background: #fff; + border: 1px solid #dee2e6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: flex-start; + padding: 0 16px; + gap: 10px; + font-size: 13px; + font-weight: 600; + color: #495057; + cursor: pointer; + transition: all 0.2s ease; +} + +.m-tool-btn i { + font-size: 16px; + color: #6c757d; + width: 20px; + text-align: center; + transition: color 0.2s ease; +} + +.m-tool-btn:hover { + border-color: var(--cs-primary); + box-shadow: 0 4px 12px rgba(0, 128, 0, 0.1); +} + +.m-tool-btn:hover i { + color: var(--cs-primary); +} + +/* ========== 垂直分隔线 ========== */ +.m-divider { + width: 1px; + height: 140px; + background: linear-gradient(to bottom, transparent, #dee2e6, transparent); +} + +/* ========== 任务区域(右) ========== */ +.m-task-section { + flex: 1; + max-width: 400px; +} + +.m-task-grid { + display: flex; + gap: 12px; +} + +.m-task-card { + flex: 1; + min-height: 100px; + background: #fff; + border: 1px solid #e9ecef; + border-radius: 8px; + padding: 20px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 10px; + cursor: pointer; + transition: all 0.25s ease; +} + +.m-task-icon { + width: 42px; + height: 42px; + border-radius: 8px; + background: #f8f9fa; + display: flex; + align-items: center; + justify-content: center; + transition: all 0.25s ease; +} + +.m-task-icon i { + font-size: 18px; + color: #6c757d; + transition: color 0.25s ease; +} + +.m-task-info { + text-align: center; +} + +.m-task-info h4 { + font-size: 14px; + font-weight: 800; + color: #495057; + margin: 0 0 4px 0; + transition: color 0.25s ease; +} + +.m-task-info p { + font-size: 11px; + color: #adb5bd; + margin: 0; + font-weight: 500; +} + +/* 悬停效果 - 绿色主题 */ +.m-task-card:hover { + border-color: var(--cs-primary); + box-shadow: 0 6px 16px rgba(0, 128, 0, 0.12); + transform: translateY(-2px); +} + +.m-task-card:hover .m-task-icon { + background: var(--cs-primary); +} + +.m-task-card:hover .m-task-icon i { + color: #fff; +} + +.m-task-card:hover h4 { + color: var(--cs-primary); +} + +/* 停止按钮样式 - 醒目红色 */ +.c-nav-btn--stop { + background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important; + box-shadow: 0 3px 10px rgba(220, 53, 69, 0.35) !important; + width: 48px !important; + height: 48px !important; +} + +.c-nav-btn--stop i { + color: #fff !important; + font-size: 18px !important; +} + +.c-nav-btn--stop span { + color: #fff !important; + font-weight: 700 !important; +} + +.c-nav-btn--stop:hover { + background: linear-gradient(135deg, #c82333 0%, #a71d2a 100%) !important; + box-shadow: 0 4px 14px rgba(220, 53, 69, 0.45) !important; +} + +/* ========== 核心布局:左右分布 ========== */ +.l-hero-container { + display: flex !important; + flex-direction: row !important; + align-items: center !important; + justify-content: center !important; + gap: 80px !important; + padding: 0 120px !important; +} + +/* 左侧面板:状态 + 工作流 */ +.m-left-panel { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 30px; + flex: 1; + max-width: 380px; +} + +/* 右侧面板:圆环进度 */ +.m-right-panel { + flex: 0 0 auto; + display: flex; + align-items: center; + justify-content: center; +} + +/* ========== 状态消息 - 左对齐 ========== */ +.c-status-panel { + text-align: left !important; + width: 100% !important; +} + +.c-status-title.is-looping { + color: var(--cs-primary); + font-size: 24px; + font-weight: 800; + display: flex; + align-items: center; + gap: 12px; + margin-bottom: 6px; + justify-content: flex-start; +} + +.c-status-title.is-looping::before { + content: ''; + width: 12px; + height: 12px; + background: var(--cs-primary); + border-radius: 50%; + animation: blink 1.5s infinite; +} + +@keyframes blink { + 0%, 100% { opacity: 1; } + 50% { opacity: 0.3; } +} + +.c-status-sub { + text-align: left !important; + font-size: 13px !important; +} + +/* 统计计数文字 */ +.c-status-counter { + font-size: 12px; + color: #6c757d; + font-weight: 600; + margin: 8px 0 0 0; +} + +.c-status-counter .ok { + color: var(--cs-primary); + font-weight: 800; +} + +.c-status-counter .err { + color: #dc3545; + font-weight: 800; +} + +/* ========== 4步工作流 - 直接渲染 ========== */ +.m-steps-flow { + display: flex; + align-items: center; + justify-content: flex-start; + gap: 0; + width: 100%; + padding-top: 10px; +} + +.m-steps-flow .step-item { + display: flex; + flex-direction: column; + align-items: center; + gap: 6px; + min-width: 70px; +} + +.m-steps-flow .step-dot { + width: 14px; + height: 14px; + border-radius: 50%; + background: #dee2e6; +} + +.m-steps-flow .step-item.is-active .step-dot { + background: var(--cs-primary); + box-shadow: 0 0 0 4px rgba(0, 128, 0, 0.15); +} + +.m-steps-flow .step-label { + font-size: 11px; + font-weight: 600; + color: #adb5bd; + white-space: nowrap; +} + +.m-steps-flow .step-item.is-active .step-label { + color: var(--cs-primary); + font-weight: 700; +} + +.m-steps-flow .step-line { + width: 50px; + height: 3px; + background: #dee2e6; + margin-bottom: 18px; +} + +.m-steps-flow .step-line.is-active { + background: var(--cs-primary); +} + +/* ========== 圆形进度条 ========== */ +.m-progress-circle { + position: relative; + width: 160px; + height: 160px; +} + +.m-progress-circle svg { + transform: rotate(-90deg); + width: 100%; + height: 100%; +} + +.m-progress-circle circle { + fill: none; + stroke-width: 10; + stroke-linecap: round; +} + +.m-progress-circle .bg { + stroke: #ecf0f1; +} + +.m-progress-circle .fill { + stroke: var(--cs-primary); + stroke-dasharray: 283; + transition: stroke-dashoffset 0.5s ease; +} + +.m-progress-value { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + font-size: 34px; + font-weight: 900; + color: var(--cs-primary); +} diff --git a/app/src/renderer/src/styles/pages/page2.scss b/app/src/renderer/src/styles/pages/page2.scss new file mode 100644 index 0000000..760ade6 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page2.scss @@ -0,0 +1,360 @@ +/* + Page 8 - 循环任务执行中样式 + 左右分布布局:左 = 状态+工作流,右 = 大圆环 + Index 首页也复用此样式 +*/ + +/* ========== Index 首页仪表板样式 ========== */ +.l-dashboard { + display: flex; + align-items: center; + justify-content: center; + gap: 60px; + padding: 20px 80px; + height: 100%; + flex: 1; +} + +/* 区域标题 */ +.m-section-title { + font-size: 11px; + font-weight: 700; + color: #adb5bd; + margin-bottom: 12px; + text-transform: uppercase; + letter-spacing: 1px; + padding-left: 4px; +} + +/* ========== 工具区域(左) ========== */ +.m-tool-section { + width: 180px; + flex-shrink: 0; +} + +.m-tool-grid { + display: flex; + flex-direction: column; + gap: 8px; +} + +.m-tool-btn { + width: 100%; + height: 48px; + background: #fff; + border: 1px solid #dee2e6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: flex-start; + padding: 0 16px; + gap: 10px; + font-size: 13px; + font-weight: 600; + color: #495057; + cursor: pointer; + transition: all 0.2s ease; +} + +.m-tool-btn i { + font-size: 16px; + color: #6c757d; + width: 20px; + text-align: center; + transition: color 0.2s ease; +} + +.m-tool-btn:hover { + border-color: var(--cs-primary); + box-shadow: 0 4px 12px rgba(0, 128, 0, 0.1); +} + +.m-tool-btn:hover i { + color: var(--cs-primary); +} + +/* ========== 垂直分隔线 ========== */ +.m-divider { + width: 1px; + height: 140px; + background: linear-gradient(to bottom, transparent, #dee2e6, transparent); +} + +/* ========== 任务区域(右) ========== */ +.m-task-section { + flex: 1; + max-width: 400px; +} + +.m-task-grid { + display: flex; + gap: 12px; +} + +.m-task-card { + flex: 1; + min-height: 100px; + background: #fff; + border: 1px solid #e9ecef; + border-radius: 8px; + padding: 20px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 10px; + cursor: pointer; + transition: all 0.25s ease; +} + +.m-task-icon { + width: 42px; + height: 42px; + border-radius: 8px; + background: #f8f9fa; + display: flex; + align-items: center; + justify-content: center; + transition: all 0.25s ease; +} + +.m-task-icon i { + font-size: 18px; + color: #6c757d; + transition: color 0.25s ease; +} + +.m-task-info { + text-align: center; +} + +.m-task-info h4 { + font-size: 14px; + font-weight: 800; + color: #495057; + margin: 0 0 4px 0; + transition: color 0.25s ease; +} + +.m-task-info p { + font-size: 11px; + color: #adb5bd; + margin: 0; + font-weight: 500; +} + +/* 悬停效果 - 绿色主题 */ +.m-task-card:hover { + border-color: var(--cs-primary); + box-shadow: 0 6px 16px rgba(0, 128, 0, 0.12); + transform: translateY(-2px); +} + +.m-task-card:hover .m-task-icon { + background: var(--cs-primary); +} + +.m-task-card:hover .m-task-icon i { + color: #fff; +} + +.m-task-card:hover h4 { + color: var(--cs-primary); +} + +/* 停止按钮样式 - 醒目红色 */ +.c-nav-btn--stop { + background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important; + box-shadow: 0 3px 10px rgba(220, 53, 69, 0.35) !important; + width: 48px !important; + height: 48px !important; +} + +.c-nav-btn--stop i { + color: #fff !important; + font-size: 18px !important; +} + +.c-nav-btn--stop span { + color: #fff !important; + font-weight: 700 !important; +} + +.c-nav-btn--stop:hover { + background: linear-gradient(135deg, #c82333 0%, #a71d2a 100%) !important; + box-shadow: 0 4px 14px rgba(220, 53, 69, 0.45) !important; +} + +/* ========== 核心布局:左右分布 ========== */ +.l-hero-container { + display: flex !important; + flex-direction: row !important; + align-items: center !important; + justify-content: center !important; + gap: 80px !important; + padding: 0 120px !important; +} + +/* 左侧面板:状态 + 工作流 */ +.m-left-panel { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 30px; + flex: 1; + max-width: 380px; +} + +/* 右侧面板:圆环进度 */ +.m-right-panel { + flex: 0 0 auto; + display: flex; + align-items: center; + justify-content: center; +} + +/* ========== 状态消息 - 左对齐 ========== */ +.c-status-panel { + text-align: left !important; + width: 100% !important; +} + +.c-status-title.is-looping { + color: var(--cs-primary); + font-size: 24px; + font-weight: 800; + display: flex; + align-items: center; + gap: 12px; + margin-bottom: 6px; + justify-content: flex-start; +} + +.c-status-title.is-looping::before { + content: ''; + width: 12px; + height: 12px; + background: var(--cs-primary); + border-radius: 50%; + animation: blink 1.5s infinite; +} + +@keyframes blink { + 0%, 100% { opacity: 1; } + 50% { opacity: 0.3; } +} + +.c-status-sub { + text-align: left !important; + font-size: 13px !important; +} + +/* 统计计数文字 */ +.c-status-counter { + font-size: 12px; + color: #6c757d; + font-weight: 600; + margin: 8px 0 0 0; +} + +.c-status-counter .ok { + color: var(--cs-primary); + font-weight: 800; +} + +.c-status-counter .err { + color: #dc3545; + font-weight: 800; +} + +/* ========== 4步工作流 - 直接渲染 ========== */ +.m-steps-flow { + display: flex; + align-items: center; + justify-content: flex-start; + gap: 0; + width: 100%; + padding-top: 10px; +} + +.m-steps-flow .step-item { + display: flex; + flex-direction: column; + align-items: center; + gap: 6px; + min-width: 70px; +} + +.m-steps-flow .step-dot { + width: 14px; + height: 14px; + border-radius: 50%; + background: #dee2e6; +} + +.m-steps-flow .step-item.is-active .step-dot { + background: var(--cs-primary); + box-shadow: 0 0 0 4px rgba(0, 128, 0, 0.15); +} + +.m-steps-flow .step-label { + font-size: 11px; + font-weight: 600; + color: #adb5bd; + white-space: nowrap; +} + +.m-steps-flow .step-item.is-active .step-label { + color: var(--cs-primary); + font-weight: 700; +} + +.m-steps-flow .step-line { + width: 50px; + height: 3px; + background: #dee2e6; + margin-bottom: 18px; +} + +.m-steps-flow .step-line.is-active { + background: var(--cs-primary); +} + +/* ========== 圆形进度条 ========== */ +.m-progress-circle { + position: relative; + width: 160px; + height: 160px; +} + +.m-progress-circle svg { + transform: rotate(-90deg); + width: 100%; + height: 100%; +} + +.m-progress-circle circle { + fill: none; + stroke-width: 10; + stroke-linecap: round; +} + +.m-progress-circle .bg { + stroke: #ecf0f1; +} + +.m-progress-circle .fill { + stroke: var(--cs-primary); + stroke-dasharray: 283; + transition: stroke-dashoffset 0.5s ease; +} + +.m-progress-value { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + font-size: 34px; + font-weight: 900; + color: var(--cs-primary); +} diff --git a/app/src/renderer/src/styles/pages/page3.css b/app/src/renderer/src/styles/pages/page3.css new file mode 100644 index 0000000..7ccb91a --- /dev/null +++ b/app/src/renderer/src/styles/pages/page3.css @@ -0,0 +1,172 @@ +/* + Page 3 - 任务失败界面 + 风格与 page8 统一:左右分布,红色错误主题 +*/ + +/* ========== 核心布局:左右分布 ========== */ +.l-hero-container { + display: flex !important; + flex-direction: row !important; + align-items: center !important; + justify-content: center !important; + gap: 80px !important; + padding: 0 120px !important; +} + +/* 左侧面板:状态 + 工作流 */ +.m-left-panel { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 30px; + flex: 1; + max-width: 380px; +} + +/* 右侧面板:错误图标 */ +.m-right-panel { + flex: 0 0 auto; + display: flex; + align-items: center; + justify-content: center; +} + +/* ========== 状态消息 - 红色错误主题 ========== */ +.c-status-panel { + text-align: left !important; + width: 100% !important; +} + +.c-status-title.is-error { + color: #dc3545; + font-size: 24px; + font-weight: 800; + display: flex; + align-items: center; + gap: 12px; + margin-bottom: 6px; + justify-content: flex-start; +} + +.c-status-title.is-error::before { + content: ''; + width: 12px; + height: 12px; + background: #dc3545; + border-radius: 50%; + animation: blink-red 1.5s infinite; +} + +@keyframes blink-red { + 0%, 100% { opacity: 1; } + 50% { opacity: 0.3; } +} + +.c-status-sub { + text-align: left !important; + font-size: 13px !important; + color: #6c757d; +} + +/* 统计计数文字 */ +.c-status-counter { + font-size: 12px; + color: #6c757d; + font-weight: 600; + margin: 8px 0 0 0; +} + +.c-status-counter .ok { + color: #28a745; + font-weight: 800; +} + +.c-status-counter .err { + color: #dc3545; + font-weight: 800; +} + +/* ========== 4步工作流 - 红色错误主题 ========== */ +.m-steps-flow { + display: flex; + align-items: center; + justify-content: flex-start; + gap: 0; + width: 100%; + padding-top: 10px; +} + +.m-steps-flow .step-item { + display: flex; + flex-direction: column; + align-items: center; + gap: 6px; + min-width: 70px; +} + +.m-steps-flow .step-dot { + width: 14px; + height: 14px; + border-radius: 50%; + background: #dee2e6; +} + +/* 完成状态 - 绿色 */ +.m-steps-flow .step-item.is-completed .step-dot { + background: #28a745; +} + +.m-steps-flow .step-item.is-completed .step-label { + color: #28a745; + font-weight: 700; +} + +/* 错误状态 - 红色 */ +.m-steps-flow .step-item.is-error .step-dot { + background: #dc3545; + box-shadow: 0 0 0 4px rgba(220, 53, 69, 0.15); +} + +.m-steps-flow .step-item.is-error .step-label { + color: #dc3545; + font-weight: 700; +} + +.m-steps-flow .step-label { + font-size: 11px; + font-weight: 600; + color: #adb5bd; + white-space: nowrap; +} + +.m-steps-flow .step-line { + width: 50px; + height: 3px; + background: #dee2e6; + margin-bottom: 18px; +} + +.m-steps-flow .step-line.is-completed { + background: #28a745; +} + +.m-steps-flow .step-line.is-error { + background: linear-gradient(to right, #28a745 50%, #dc3545 50%); +} + +/* ========== 错误图标 - 红色大三角 ========== */ +.m-error-icon { + width: 160px; + height: 160px; + border-radius: 50%; + background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 8px 24px rgba(220, 53, 69, 0.3); +} + +.m-error-icon i { + font-size: 70px; + color: #fff; +} diff --git a/app/src/renderer/src/styles/pages/page3.scss b/app/src/renderer/src/styles/pages/page3.scss new file mode 100644 index 0000000..7ccb91a --- /dev/null +++ b/app/src/renderer/src/styles/pages/page3.scss @@ -0,0 +1,172 @@ +/* + Page 3 - 任务失败界面 + 风格与 page8 统一:左右分布,红色错误主题 +*/ + +/* ========== 核心布局:左右分布 ========== */ +.l-hero-container { + display: flex !important; + flex-direction: row !important; + align-items: center !important; + justify-content: center !important; + gap: 80px !important; + padding: 0 120px !important; +} + +/* 左侧面板:状态 + 工作流 */ +.m-left-panel { + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 30px; + flex: 1; + max-width: 380px; +} + +/* 右侧面板:错误图标 */ +.m-right-panel { + flex: 0 0 auto; + display: flex; + align-items: center; + justify-content: center; +} + +/* ========== 状态消息 - 红色错误主题 ========== */ +.c-status-panel { + text-align: left !important; + width: 100% !important; +} + +.c-status-title.is-error { + color: #dc3545; + font-size: 24px; + font-weight: 800; + display: flex; + align-items: center; + gap: 12px; + margin-bottom: 6px; + justify-content: flex-start; +} + +.c-status-title.is-error::before { + content: ''; + width: 12px; + height: 12px; + background: #dc3545; + border-radius: 50%; + animation: blink-red 1.5s infinite; +} + +@keyframes blink-red { + 0%, 100% { opacity: 1; } + 50% { opacity: 0.3; } +} + +.c-status-sub { + text-align: left !important; + font-size: 13px !important; + color: #6c757d; +} + +/* 统计计数文字 */ +.c-status-counter { + font-size: 12px; + color: #6c757d; + font-weight: 600; + margin: 8px 0 0 0; +} + +.c-status-counter .ok { + color: #28a745; + font-weight: 800; +} + +.c-status-counter .err { + color: #dc3545; + font-weight: 800; +} + +/* ========== 4步工作流 - 红色错误主题 ========== */ +.m-steps-flow { + display: flex; + align-items: center; + justify-content: flex-start; + gap: 0; + width: 100%; + padding-top: 10px; +} + +.m-steps-flow .step-item { + display: flex; + flex-direction: column; + align-items: center; + gap: 6px; + min-width: 70px; +} + +.m-steps-flow .step-dot { + width: 14px; + height: 14px; + border-radius: 50%; + background: #dee2e6; +} + +/* 完成状态 - 绿色 */ +.m-steps-flow .step-item.is-completed .step-dot { + background: #28a745; +} + +.m-steps-flow .step-item.is-completed .step-label { + color: #28a745; + font-weight: 700; +} + +/* 错误状态 - 红色 */ +.m-steps-flow .step-item.is-error .step-dot { + background: #dc3545; + box-shadow: 0 0 0 4px rgba(220, 53, 69, 0.15); +} + +.m-steps-flow .step-item.is-error .step-label { + color: #dc3545; + font-weight: 700; +} + +.m-steps-flow .step-label { + font-size: 11px; + font-weight: 600; + color: #adb5bd; + white-space: nowrap; +} + +.m-steps-flow .step-line { + width: 50px; + height: 3px; + background: #dee2e6; + margin-bottom: 18px; +} + +.m-steps-flow .step-line.is-completed { + background: #28a745; +} + +.m-steps-flow .step-line.is-error { + background: linear-gradient(to right, #28a745 50%, #dc3545 50%); +} + +/* ========== 错误图标 - 红色大三角 ========== */ +.m-error-icon { + width: 160px; + height: 160px; + border-radius: 50%; + background: linear-gradient(135deg, #dc3545 0%, #c82333 100%); + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 8px 24px rgba(220, 53, 69, 0.3); +} + +.m-error-icon i { + font-size: 70px; + color: #fff; +} diff --git a/app/src/renderer/src/styles/pages/page4.css b/app/src/renderer/src/styles/pages/page4.css new file mode 100644 index 0000000..6995b31 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page4.css @@ -0,0 +1,660 @@ +/* + Page 7 业务样式 - 打印系统核心界面 + 基于 base.css 构建 +*/ + +/* 布局微调:增加左侧面板宽度给新控件 */ +.m-panel--left { + flex: 5; +} +.m-panel--right { + flex: 5; +} + +/* ========== 工具栏 - 紧凑两行布局 ========== */ +.m-panel-toolbar { + padding: 10px 14px; + background: #f8f9fa; + border-bottom: 1px solid #e9ecef; + display: flex; + flex-direction: column; + gap: 8px; +} + +.toolbar-row { + display: flex; + align-items: center; + gap: 16px; +} + +.toolbar-item { + display: flex; + align-items: center; + gap: 6px; + font-size: 10px; + font-weight: 600; + color: #6c757d; + white-space: nowrap; +} + +.toolbar-item .c-input { + width: 90px; + height: 24px; + padding: 0 6px; + font-size: 9px; + border-radius: 3px; + border: 1px solid #ced4da; +} + +.toolbar-item .c-select { + width: 90px; + height: 24px; + padding: 0 6px; + font-size: 9px; + border-radius: 3px; + border: 1px solid #ced4da; +} + +/* 复选框样式 */ +.m-panel-toolbar .c-checkbox-item { + display: flex; + align-items: center; + gap: 5px; + font-size: 10px; + font-weight: 600; + color: #6c757d; + white-space: nowrap; + cursor: pointer; + padding: 2px 0; +} + +.m-panel-toolbar .c-checkbox-item input[type="checkbox"] { + width: 14px; + height: 14px; + margin: 0; + cursor: pointer; +} + +/* 加密狗数量输入框 */ +.m-panel-toolbar .c-checkbox-item .c-input.dog-count { + width: 40px; + height: 20px; + padding: 0 4px; + font-size: 9px; + text-align: center; + border-radius: 3px; + border: 1px solid #ced4da; + margin-left: 3px; +} + +/* 提示文字 */ +.m-panel-toolbar .c-checkbox-item .dog-hint { + font-size: 8px; + color: #adb5bd; + font-weight: 500; + margin-left: 2px; +} + +/* 列表业务项 (File Items) */ +.m-file-item { + display: flex; + align-items: center; + padding: 6px 10px; + border-bottom: 1px solid #f8f8f8; +} + +.m-file-item__icon { + width: 32px; + font-size: 22px; /* 图标大幅放大,对齐 case.png */ + color: var(--cs-dark-blue); + margin-right: 12px; + text-align: center; +} +.m-file-item__info { + flex: 1; +} +.m-file-item__name { + font-size: 11px; + font-weight: 600; +} +.m-file-item__meta { + font-size: 9px; + color: #999; +} +.m-file-item__delete { + border: none; + background: none; + color: var(--cs-primary); + font-size: 14px; + cursor: pointer; +} + +/* 卡片预览区 (Preview Area) */ +.m-preview-area { + background: #333; + margin: 8px; + height: 100px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 10px; +} +.m-card-small { + width: 130px; + height: 84px; + background: white; + border-radius: 3px; + padding: 5px; + font-size: 7px; +} +.m-card-small__row { + margin-bottom: 2px; +} +/* 面板头部专用布局 */ +.c-panel__header .c-nav-group { + gap: 4px; + align-items: center; +} + +/* 优化按钮文字展示,确保不换行 */ +.c-button--mini, +.c-button--primary { + background: var(--cs-primary) !important; + color: #fff !important; + border: none !important; + border-radius: 4px; + padding: 1px 8px; /* 进一步收紧边距 */ + font-weight: 800; + font-size: 10px; + white-space: nowrap; + letter-spacing: -0.2px; /* 微调字间距 */ +} +.c-button--mini:hover { + background: var(--cs-primary-hover) !important; +} + +/* 数据详情表格 (Data Table) */ +.m-data-section { + flex: 1; + padding: 0 10px; + overflow-y: auto; +} +.m-data-table { + width: 100%; + border-collapse: collapse; + font-size: 10px; +} +.m-data-table td { + padding: 3px 0; + border-bottom: 1px solid #f5f5f5; +} +.m-data-table td:first-child { + color: #888; + width: 40%; +} + +/* 动态表单字段 (Dynamic Fields) */ +.m-dynamic-fields { + padding: 0 10px 8px; + display: flex; + flex-direction: column; + gap: 6px; +} + +.m-dynamic-row { + display: flex; + align-items: center; /* 垂直居中 */ + gap: 8px; + min-height: 24px; /* 增加最小高度确保对齐空间 */ +} + +.m-dynamic-row select, +.m-dynamic-row input[type='text'] { + border: 1px solid var(--cs-border); + border-radius: 3px; + font-size: 10px; +} + +.m-dynamic-row select { + flex: 1.2; + background: #f9f9f9; +} +.m-dynamic-row input[type='text'] { + flex: 1.8; +} + +/* 单选框组对齐优化 */ +.m-dynamic-row .radio-group { + display: flex; + align-items: center; + gap: 10px; + flex: 1.8; /* 与输入框占据同样的宽度比例,保持视觉对称 */ +} + +.m-dynamic-row label { + display: flex; + align-items: center; /* 关键:Label 内部 Flex 居中 */ + gap: 4px; + font-size: 10px; + color: #444; + cursor: pointer; + line-height: 1; /* 防止行高干扰 */ +} + +.m-dynamic-row input[type='radio'] { + margin: 0; + cursor: pointer; + width: 12px; + height: 12px; + position: relative; + top: 1px; /* 视觉补偿:单选框通常在浏览器中偏上 1px */ +} +.c-list-item { + padding: 6px 12px; + border-bottom: 1px solid #f5f6f7; +} +.c-list-item__icon { + color: #3498db; + font-size: 14px; + width: 20px; +} +.c-list-item__name { + font-size: 11px; + font-weight: 800; + color: #333; +} +.c-list-item__meta { + font-size: 9px; + color: #999; +} +.c-list-item__action { + color: #e74c3c; + font-size: 14px; +} + +/* 4. 预览区:高保真拟物化 */ +.m-preview-area { + background: #2d3436; + margin: 8px; + height: 105px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 15px; + box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5); +} +.m-card-small { + width: 135px; + height: 88px; + background: #fff; + border-radius: 4px; + padding: 6px; + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); + display: flex; + flex-direction: column; +} +.m-card-small__row { + font-size: 8px; + color: #333; + margin-bottom: 2px; + line-height: 1.2; +} +.m-card-small__label { + font-weight: 800; +} +/* 5. 业务数据表格:极致紧凑化 (2px 间距) */ +.m-data-section { padding: 2px 10px; } +.m-data-table { width: 100%; border-collapse: separate; border-spacing: 0 2px; font-size: 10px !important; } +.m-data-table td { padding: 0; border: none; vertical-align: middle; } +.m-data-table td:first-child { + color: #666; width: 35%; font-weight: 700; padding-right: 8px; +} +.m-data-table td:last-child { + color: #333; font-weight: 800; text-align: left; + background: #f9fafb; border: 1px solid #dcdfe6; border-radius: 3px; + padding: 1px 8px; height: 20px; /* 进一步压低高度 */ +} + +/* 6. 动态表单项:极致压缩 (解决挤压问题) */ +.m-dynamic-fields { padding: 0 10px 6px; display: flex; flex-direction: column; gap: 2px; } +.m-dynamic-row { display: flex; align-items: center; gap: 6px; min-height: 20px; } +.m-dynamic-row .c-select { + width: 35%; /* 强制与上方 Label 宽度一致,实现对齐 */ + height: 20px; font-size: 10px; border: 1px solid #dcdfe6; border-radius: 3px; +} +.m-dynamic-row .c-input { + flex: 1; height: 20px; font-size: 10px; border: 1px solid #dcdfe6; border-radius: 3px; padding: 0 8px; +} +.m-dynamic-row .m-file-item__delete { + font-size: 12px; color: #999; padding: 0 4px; +} +.m-dynamic-row label { display: flex; align-items: center; gap: 4px; cursor: pointer; color: #444; font-size: 10px; } + +/* 7. 主色调回归:Page 3 式工业绿 */ +.c-button--primary { + background: var(--cs-primary) !important; + border-color: #3b633a !important; +} + +/* 8. 进度条深度美化 (极致窄版 - 12px 极简设计) */ +.c-progress { + height: 12px; /* 极致窄版,节省空间 */ + background: #dee2e6; + border-radius: 6px; + position: relative; + overflow: hidden; + margin: 2px 10px; /* 减小外边距 */ + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15); + border: 1px solid #adb5bd; +} +.c-progress-fill { + height: 100%; + background: linear-gradient(to bottom, #40c057, #2f9e44); + border-radius: 5px; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3); +} +.c-progress-text { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + font-size: 8.5px; /* 极致字号 */ + font-weight: 800; + color: #fff; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.4); + z-index: 2; + line-height: 12px; +} + +/* 9. Footer 区域收缩 */ +.c-panel__footer { + padding: 4px 0 !important; /* 彻底压缩 Footer 高度 */ + min-height: auto !important; + border-top: 1px solid #f0f0f0; +} + +/* 10. 设置弹窗 (Page 8) */ +.m-settings-modal { + position: absolute; + inset: 0; + display: none; + align-items: center; + justify-content: center; + z-index: 50; +} + +.m-settings-modal.is-open { + display: flex; +} + +.m-settings-modal__backdrop { + position: absolute; + inset: 0; + background: rgba(0, 0, 0, 0.24); +} + +.m-settings-modal__dialog { + position: relative; + width: 560px; + min-height: 265px; + background: #f3f3f3; + border: 1px solid #cfcfcf; + border-radius: 6px; + box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28); + display: flex; + flex-direction: column; +} + +.m-settings-modal__header { + height: 28px; + display: flex; + align-items: center; + padding: 0 12px; + border-bottom: 1px solid #dddddd; + background: linear-gradient(to bottom, #fbfbfb, #efefef); +} + +.m-settings-modal__header h2 { + font-size: 11px; + color: #5a5a5a; + font-weight: 700; +} + +.m-settings-modal__body { + flex: 1; + padding: 8px 12px 6px; + display: flex; + flex-direction: column; + gap: 8px; +} + +.m-settings-group { + border: 1px solid #d8d8d8; + background: #f5f5f5; + padding: 8px; +} + +.m-settings-group--advanced { + min-height: 132px; +} + +.m-settings-group__title { + font-size: 11px; + color: #444; + margin-bottom: 7px; + font-weight: 700; +} + +.m-settings-group__panel { + background: #efefef; + border: 1px solid #d9d9d9; + padding: 8px; +} + +.m-settings-row { + display: grid; + grid-template-columns: 58px 155px 58px 1fr; + align-items: center; + column-gap: 8px; + margin-bottom: 6px; +} + +.m-settings-row:last-child { + margin-bottom: 0; + grid-template-columns: 86px 155px 1fr; +} + +.m-settings-row label { + font-size: 10px; + color: #333; + white-space: nowrap; +} + +.m-settings-row .c-select { + height: 20px; + font-size: 10px; + border-radius: 2px; + border-color: #c9c9c9; + background: #fff; +} + +.m-settings-options { + display: grid; + grid-template-columns: 1fr 1fr; + row-gap: 12px; + column-gap: 22px; + align-content: start; + min-height: 92px; +} + +.m-settings-check { + display: flex; + align-items: center; + gap: 6px; + font-size: 10px; + color: #333; + white-space: nowrap; +} + +.m-settings-check input[type='checkbox'] { + width: 12px; + height: 12px; + margin: 0; +} + +.m-settings-modal__footer { + display: flex; + justify-content: flex-end; + padding: 0 12px 10px; +} + +.m-settings-modal__confirm { + min-width: 68px; + height: 22px; + font-size: 10px; + border-radius: 3px; + padding: 0 12px; +} + +/* 路径提示 */ +.m-path-hint { + display: flex; + align-items: center; + gap: 6px; + padding: 8px 12px; + background: #f8f9fa; + border-bottom: 1px solid #e9ecef; + font-size: 10px; + color: #6c757d; +} + +.m-path-hint i { + color: var(--cs-dark-grey); + font-size: 12px; +} + +/* 路径列表项 */ +.c-path-item { + display: flex; + align-items: center; + padding: 6px 12px; + border-bottom: 1px solid #f5f6f7; +} + +.c-path-item__info { + flex: 1; +} + +.c-path-item__name { + font-size: 11px; + font-weight: 700; + color: #333; +} + +.c-path-item__meta { + font-size: 9px; + color: #999; + margin-top: 2px; +} + +.c-path-item__delete { + border: none; + background: none; + color: #e74c3c; + font-size: 16px; + cursor: pointer; + padding: 2px 6px; + font-weight: 800; +} + +/* 标签预览区 */ +.c-preview-area { + background: #2d3436; + margin: 8px; + height: 105px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 15px; + box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5); +} + +.c-card-small { + width: 135px; + height: 88px; + background: #fff; + border-radius: 4px; + padding: 6px; + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); + display: flex; + flex-direction: column; +} + +.c-card-small__row { + font-size: 8px; + color: #333; + margin-bottom: 2px; + line-height: 1.2; +} + +.c-card-small__label { + font-weight: 800; +} + +/* 紧凑数据表格 */ +.c-data-table-mini { + width: 100%; + border-collapse: separate; + border-spacing: 0 2px; + font-size: 9px; +} + +.c-data-table-mini td { + padding: 0; + border: none; + vertical-align: middle; +} + +.c-data-table-mini td:first-child { + color: #666; + width: 35%; + font-weight: 700; + padding-right: 8px; + font-size: 8px; +} + +.c-data-table-mini td:last-child { + color: #333; + font-weight: 800; + text-align: left; + background: #f9fafb; + border: 1px solid #dcdfe6; + border-radius: 3px; + padding: 1px 6px; + height: 18px; + font-size: 8px; +} + +.c-data-table-mini td:last-child.c-path-cell { + background: transparent; + border: none; + padding: 0; + display: flex; + align-items: center; + justify-content: space-between; +} + +.c-path-update { + color: var(--cs-primary); + font-weight: 800; + cursor: pointer; + padding: 0 4px; + font-size: 10px; +} diff --git a/app/src/renderer/src/styles/pages/page4.scss b/app/src/renderer/src/styles/pages/page4.scss new file mode 100644 index 0000000..6995b31 --- /dev/null +++ b/app/src/renderer/src/styles/pages/page4.scss @@ -0,0 +1,660 @@ +/* + Page 7 业务样式 - 打印系统核心界面 + 基于 base.css 构建 +*/ + +/* 布局微调:增加左侧面板宽度给新控件 */ +.m-panel--left { + flex: 5; +} +.m-panel--right { + flex: 5; +} + +/* ========== 工具栏 - 紧凑两行布局 ========== */ +.m-panel-toolbar { + padding: 10px 14px; + background: #f8f9fa; + border-bottom: 1px solid #e9ecef; + display: flex; + flex-direction: column; + gap: 8px; +} + +.toolbar-row { + display: flex; + align-items: center; + gap: 16px; +} + +.toolbar-item { + display: flex; + align-items: center; + gap: 6px; + font-size: 10px; + font-weight: 600; + color: #6c757d; + white-space: nowrap; +} + +.toolbar-item .c-input { + width: 90px; + height: 24px; + padding: 0 6px; + font-size: 9px; + border-radius: 3px; + border: 1px solid #ced4da; +} + +.toolbar-item .c-select { + width: 90px; + height: 24px; + padding: 0 6px; + font-size: 9px; + border-radius: 3px; + border: 1px solid #ced4da; +} + +/* 复选框样式 */ +.m-panel-toolbar .c-checkbox-item { + display: flex; + align-items: center; + gap: 5px; + font-size: 10px; + font-weight: 600; + color: #6c757d; + white-space: nowrap; + cursor: pointer; + padding: 2px 0; +} + +.m-panel-toolbar .c-checkbox-item input[type="checkbox"] { + width: 14px; + height: 14px; + margin: 0; + cursor: pointer; +} + +/* 加密狗数量输入框 */ +.m-panel-toolbar .c-checkbox-item .c-input.dog-count { + width: 40px; + height: 20px; + padding: 0 4px; + font-size: 9px; + text-align: center; + border-radius: 3px; + border: 1px solid #ced4da; + margin-left: 3px; +} + +/* 提示文字 */ +.m-panel-toolbar .c-checkbox-item .dog-hint { + font-size: 8px; + color: #adb5bd; + font-weight: 500; + margin-left: 2px; +} + +/* 列表业务项 (File Items) */ +.m-file-item { + display: flex; + align-items: center; + padding: 6px 10px; + border-bottom: 1px solid #f8f8f8; +} + +.m-file-item__icon { + width: 32px; + font-size: 22px; /* 图标大幅放大,对齐 case.png */ + color: var(--cs-dark-blue); + margin-right: 12px; + text-align: center; +} +.m-file-item__info { + flex: 1; +} +.m-file-item__name { + font-size: 11px; + font-weight: 600; +} +.m-file-item__meta { + font-size: 9px; + color: #999; +} +.m-file-item__delete { + border: none; + background: none; + color: var(--cs-primary); + font-size: 14px; + cursor: pointer; +} + +/* 卡片预览区 (Preview Area) */ +.m-preview-area { + background: #333; + margin: 8px; + height: 100px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 10px; +} +.m-card-small { + width: 130px; + height: 84px; + background: white; + border-radius: 3px; + padding: 5px; + font-size: 7px; +} +.m-card-small__row { + margin-bottom: 2px; +} +/* 面板头部专用布局 */ +.c-panel__header .c-nav-group { + gap: 4px; + align-items: center; +} + +/* 优化按钮文字展示,确保不换行 */ +.c-button--mini, +.c-button--primary { + background: var(--cs-primary) !important; + color: #fff !important; + border: none !important; + border-radius: 4px; + padding: 1px 8px; /* 进一步收紧边距 */ + font-weight: 800; + font-size: 10px; + white-space: nowrap; + letter-spacing: -0.2px; /* 微调字间距 */ +} +.c-button--mini:hover { + background: var(--cs-primary-hover) !important; +} + +/* 数据详情表格 (Data Table) */ +.m-data-section { + flex: 1; + padding: 0 10px; + overflow-y: auto; +} +.m-data-table { + width: 100%; + border-collapse: collapse; + font-size: 10px; +} +.m-data-table td { + padding: 3px 0; + border-bottom: 1px solid #f5f5f5; +} +.m-data-table td:first-child { + color: #888; + width: 40%; +} + +/* 动态表单字段 (Dynamic Fields) */ +.m-dynamic-fields { + padding: 0 10px 8px; + display: flex; + flex-direction: column; + gap: 6px; +} + +.m-dynamic-row { + display: flex; + align-items: center; /* 垂直居中 */ + gap: 8px; + min-height: 24px; /* 增加最小高度确保对齐空间 */ +} + +.m-dynamic-row select, +.m-dynamic-row input[type='text'] { + border: 1px solid var(--cs-border); + border-radius: 3px; + font-size: 10px; +} + +.m-dynamic-row select { + flex: 1.2; + background: #f9f9f9; +} +.m-dynamic-row input[type='text'] { + flex: 1.8; +} + +/* 单选框组对齐优化 */ +.m-dynamic-row .radio-group { + display: flex; + align-items: center; + gap: 10px; + flex: 1.8; /* 与输入框占据同样的宽度比例,保持视觉对称 */ +} + +.m-dynamic-row label { + display: flex; + align-items: center; /* 关键:Label 内部 Flex 居中 */ + gap: 4px; + font-size: 10px; + color: #444; + cursor: pointer; + line-height: 1; /* 防止行高干扰 */ +} + +.m-dynamic-row input[type='radio'] { + margin: 0; + cursor: pointer; + width: 12px; + height: 12px; + position: relative; + top: 1px; /* 视觉补偿:单选框通常在浏览器中偏上 1px */ +} +.c-list-item { + padding: 6px 12px; + border-bottom: 1px solid #f5f6f7; +} +.c-list-item__icon { + color: #3498db; + font-size: 14px; + width: 20px; +} +.c-list-item__name { + font-size: 11px; + font-weight: 800; + color: #333; +} +.c-list-item__meta { + font-size: 9px; + color: #999; +} +.c-list-item__action { + color: #e74c3c; + font-size: 14px; +} + +/* 4. 预览区:高保真拟物化 */ +.m-preview-area { + background: #2d3436; + margin: 8px; + height: 105px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 15px; + box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5); +} +.m-card-small { + width: 135px; + height: 88px; + background: #fff; + border-radius: 4px; + padding: 6px; + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); + display: flex; + flex-direction: column; +} +.m-card-small__row { + font-size: 8px; + color: #333; + margin-bottom: 2px; + line-height: 1.2; +} +.m-card-small__label { + font-weight: 800; +} +/* 5. 业务数据表格:极致紧凑化 (2px 间距) */ +.m-data-section { padding: 2px 10px; } +.m-data-table { width: 100%; border-collapse: separate; border-spacing: 0 2px; font-size: 10px !important; } +.m-data-table td { padding: 0; border: none; vertical-align: middle; } +.m-data-table td:first-child { + color: #666; width: 35%; font-weight: 700; padding-right: 8px; +} +.m-data-table td:last-child { + color: #333; font-weight: 800; text-align: left; + background: #f9fafb; border: 1px solid #dcdfe6; border-radius: 3px; + padding: 1px 8px; height: 20px; /* 进一步压低高度 */ +} + +/* 6. 动态表单项:极致压缩 (解决挤压问题) */ +.m-dynamic-fields { padding: 0 10px 6px; display: flex; flex-direction: column; gap: 2px; } +.m-dynamic-row { display: flex; align-items: center; gap: 6px; min-height: 20px; } +.m-dynamic-row .c-select { + width: 35%; /* 强制与上方 Label 宽度一致,实现对齐 */ + height: 20px; font-size: 10px; border: 1px solid #dcdfe6; border-radius: 3px; +} +.m-dynamic-row .c-input { + flex: 1; height: 20px; font-size: 10px; border: 1px solid #dcdfe6; border-radius: 3px; padding: 0 8px; +} +.m-dynamic-row .m-file-item__delete { + font-size: 12px; color: #999; padding: 0 4px; +} +.m-dynamic-row label { display: flex; align-items: center; gap: 4px; cursor: pointer; color: #444; font-size: 10px; } + +/* 7. 主色调回归:Page 3 式工业绿 */ +.c-button--primary { + background: var(--cs-primary) !important; + border-color: #3b633a !important; +} + +/* 8. 进度条深度美化 (极致窄版 - 12px 极简设计) */ +.c-progress { + height: 12px; /* 极致窄版,节省空间 */ + background: #dee2e6; + border-radius: 6px; + position: relative; + overflow: hidden; + margin: 2px 10px; /* 减小外边距 */ + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15); + border: 1px solid #adb5bd; +} +.c-progress-fill { + height: 100%; + background: linear-gradient(to bottom, #40c057, #2f9e44); + border-radius: 5px; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3); +} +.c-progress-text { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + font-size: 8.5px; /* 极致字号 */ + font-weight: 800; + color: #fff; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.4); + z-index: 2; + line-height: 12px; +} + +/* 9. Footer 区域收缩 */ +.c-panel__footer { + padding: 4px 0 !important; /* 彻底压缩 Footer 高度 */ + min-height: auto !important; + border-top: 1px solid #f0f0f0; +} + +/* 10. 设置弹窗 (Page 8) */ +.m-settings-modal { + position: absolute; + inset: 0; + display: none; + align-items: center; + justify-content: center; + z-index: 50; +} + +.m-settings-modal.is-open { + display: flex; +} + +.m-settings-modal__backdrop { + position: absolute; + inset: 0; + background: rgba(0, 0, 0, 0.24); +} + +.m-settings-modal__dialog { + position: relative; + width: 560px; + min-height: 265px; + background: #f3f3f3; + border: 1px solid #cfcfcf; + border-radius: 6px; + box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28); + display: flex; + flex-direction: column; +} + +.m-settings-modal__header { + height: 28px; + display: flex; + align-items: center; + padding: 0 12px; + border-bottom: 1px solid #dddddd; + background: linear-gradient(to bottom, #fbfbfb, #efefef); +} + +.m-settings-modal__header h2 { + font-size: 11px; + color: #5a5a5a; + font-weight: 700; +} + +.m-settings-modal__body { + flex: 1; + padding: 8px 12px 6px; + display: flex; + flex-direction: column; + gap: 8px; +} + +.m-settings-group { + border: 1px solid #d8d8d8; + background: #f5f5f5; + padding: 8px; +} + +.m-settings-group--advanced { + min-height: 132px; +} + +.m-settings-group__title { + font-size: 11px; + color: #444; + margin-bottom: 7px; + font-weight: 700; +} + +.m-settings-group__panel { + background: #efefef; + border: 1px solid #d9d9d9; + padding: 8px; +} + +.m-settings-row { + display: grid; + grid-template-columns: 58px 155px 58px 1fr; + align-items: center; + column-gap: 8px; + margin-bottom: 6px; +} + +.m-settings-row:last-child { + margin-bottom: 0; + grid-template-columns: 86px 155px 1fr; +} + +.m-settings-row label { + font-size: 10px; + color: #333; + white-space: nowrap; +} + +.m-settings-row .c-select { + height: 20px; + font-size: 10px; + border-radius: 2px; + border-color: #c9c9c9; + background: #fff; +} + +.m-settings-options { + display: grid; + grid-template-columns: 1fr 1fr; + row-gap: 12px; + column-gap: 22px; + align-content: start; + min-height: 92px; +} + +.m-settings-check { + display: flex; + align-items: center; + gap: 6px; + font-size: 10px; + color: #333; + white-space: nowrap; +} + +.m-settings-check input[type='checkbox'] { + width: 12px; + height: 12px; + margin: 0; +} + +.m-settings-modal__footer { + display: flex; + justify-content: flex-end; + padding: 0 12px 10px; +} + +.m-settings-modal__confirm { + min-width: 68px; + height: 22px; + font-size: 10px; + border-radius: 3px; + padding: 0 12px; +} + +/* 路径提示 */ +.m-path-hint { + display: flex; + align-items: center; + gap: 6px; + padding: 8px 12px; + background: #f8f9fa; + border-bottom: 1px solid #e9ecef; + font-size: 10px; + color: #6c757d; +} + +.m-path-hint i { + color: var(--cs-dark-grey); + font-size: 12px; +} + +/* 路径列表项 */ +.c-path-item { + display: flex; + align-items: center; + padding: 6px 12px; + border-bottom: 1px solid #f5f6f7; +} + +.c-path-item__info { + flex: 1; +} + +.c-path-item__name { + font-size: 11px; + font-weight: 700; + color: #333; +} + +.c-path-item__meta { + font-size: 9px; + color: #999; + margin-top: 2px; +} + +.c-path-item__delete { + border: none; + background: none; + color: #e74c3c; + font-size: 16px; + cursor: pointer; + padding: 2px 6px; + font-weight: 800; +} + +/* 标签预览区 */ +.c-preview-area { + background: #2d3436; + margin: 8px; + height: 105px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + gap: 15px; + box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5); +} + +.c-card-small { + width: 135px; + height: 88px; + background: #fff; + border-radius: 4px; + padding: 6px; + box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); + display: flex; + flex-direction: column; +} + +.c-card-small__row { + font-size: 8px; + color: #333; + margin-bottom: 2px; + line-height: 1.2; +} + +.c-card-small__label { + font-weight: 800; +} + +/* 紧凑数据表格 */ +.c-data-table-mini { + width: 100%; + border-collapse: separate; + border-spacing: 0 2px; + font-size: 9px; +} + +.c-data-table-mini td { + padding: 0; + border: none; + vertical-align: middle; +} + +.c-data-table-mini td:first-child { + color: #666; + width: 35%; + font-weight: 700; + padding-right: 8px; + font-size: 8px; +} + +.c-data-table-mini td:last-child { + color: #333; + font-weight: 800; + text-align: left; + background: #f9fafb; + border: 1px solid #dcdfe6; + border-radius: 3px; + padding: 1px 6px; + height: 18px; + font-size: 8px; +} + +.c-data-table-mini td:last-child.c-path-cell { + background: transparent; + border: none; + padding: 0; + display: flex; + align-items: center; + justify-content: space-between; +} + +.c-path-update { + color: var(--cs-primary); + font-weight: 800; + cursor: pointer; + padding: 0 4px; + font-size: 10px; +} diff --git a/app/src/renderer/src/styles/shell.css b/app/src/renderer/src/styles/shell.css new file mode 100644 index 0000000..64029c3 --- /dev/null +++ b/app/src/renderer/src/styles/shell.css @@ -0,0 +1,117 @@ +/* Electron 壳层:覆盖 design 原型用的深色信箱背景 */ +html, +body, +#app { + background: var(--cs-bg) !important; +} + +#app { + width: 100vw; + height: 100vh; + display: block; + overflow: hidden; + position: relative; +} + +/* 720×360 逻辑画布;窗口内容区高 720:390;useScale 按宽 scale */ +.app-shell { + position: absolute; + left: 0; + top: 0; + width: 720px; + height: 360px; + box-shadow: none; + transform-origin: 0 0; +} + +/* + * 首页两侧「空白」主要来自 page2.css 的 .l-dashboard: + * padding 左右 + justify-content:center + 左栏固定 180px / 右栏 max-width:400px + * 在 DevTools 里选中 main.app-shell__main.l-dashboard 可看到盒模型 + */ +.app-shell__main.l-dashboard { + padding: 20px 40px; + gap: 48px; + justify-content: space-between; +} + +.app-shell__main.l-dashboard .m-task-section { + max-width: none; +} + +.app-shell__main { + flex: 1; + min-height: 0; + overflow: hidden; +} + +.app-shell__main.l-dashboard, +.app-shell__main.l-main-flex, +.app-shell__main.l-main-full, +.app-shell__main.l-mobile-landscape { + flex: 1; + min-height: 0; +} + +.c-button-cs:disabled { + opacity: 0.55; + cursor: not-allowed; +} + +.m-tool-btn, +.m-task-card { + font-family: inherit; + appearance: none; +} + +.c-mode-badge--home { + margin-bottom: 2px; +} + +/* 与 page2.css 中 .m-tool-btn i / .m-task-icon i 对齐 */ +.m-tool-btn .fas { + font-size: 16px; + color: #6c757d; + width: 20px; + text-align: center; + transition: color 0.2s ease; +} + +.m-tool-btn:hover .fas { + color: var(--cs-primary); +} + +.m-task-icon .fas { + font-size: 18px; + color: #6c757d; + transition: color 0.25s ease; +} + +.m-task-card:hover .m-task-icon .fas { + color: #fff; +} + +.app-icon--sm { + font-size: 14px; +} + +.app-icon--md { + font-size: 16px; +} + +.app-icon--lg { + font-size: 18px; +} + +.app-icon--xl { + font-size: 70px; +} + +.c-nav-btn--stop .app-icon--sm, +.c-nav-btn--stop .app-icon--md { + color: #fff; +} + +.m-error-icon .app-icon--xl { + color: #fff; +} diff --git a/app/src/renderer/src/styles/tokens.scss b/app/src/renderer/src/styles/tokens.scss new file mode 100644 index 0000000..3136d2d --- /dev/null +++ b/app/src/renderer/src/styles/tokens.scss @@ -0,0 +1,19 @@ +:root { + --cs-primary: #4b7e4a; + --cs-primary-hover: #3d673c; + --cs-dark-grey: #5a6268; + --cs-bg: #f5f7fa; + --cs-white: #ffffff; + --cs-text-main: #333333; + --cs-text-muted: #666666; + --cs-border: #e0e4e8; + --cs-bg-soft: #f0f2f5; + + --h-header: 54px; + --h-footer: 24px; + --radius-sm: 4px; + --radius-md: 8px; + + --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.1); + --shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.1); +} diff --git a/app/src/renderer/src/types/ipc.ts b/app/src/renderer/src/types/ipc.ts new file mode 100644 index 0000000..672ba87 --- /dev/null +++ b/app/src/renderer/src/types/ipc.ts @@ -0,0 +1,36 @@ +export interface IpcResult { + ok: boolean + code: number + data?: T + message?: string +} + +export interface InitParamsDTO { + sharedDir: string + keepCombinedImage?: boolean + stopOnFailure?: boolean + cleanTaskFile?: boolean + autoRetryTimes?: number + rejectConfig?: boolean + logLevel?: number + outBack?: boolean +} + +export interface JobPollPayload { + jobId: string + queryErrorCode: number + jobState: number + progress: number + terminal: boolean + failed: boolean + cancelled: boolean + finished: boolean +} + +export interface UsbPollPayload { + taskStatus: number + progress: number + terminal: boolean + failed: boolean + success: boolean +} diff --git a/app/src/renderer/src/types/printer.ts b/app/src/renderer/src/types/printer.ts new file mode 100644 index 0000000..897f995 --- /dev/null +++ b/app/src/renderer/src/types/printer.ts @@ -0,0 +1,6 @@ +export interface PrinterStatusDisplay { + ribbonType: string + statusText: string + serialNo: string + printedCount: number +} diff --git a/app/src/renderer/src/utils/buildJobConfig.ts b/app/src/renderer/src/utils/buildJobConfig.ts new file mode 100644 index 0000000..ef1984b --- /dev/null +++ b/app/src/renderer/src/utils/buildJobConfig.ts @@ -0,0 +1,34 @@ +import type { DistributeFormState } from '@/stores/distributeForm' + +function cleanPath(p: string): string { + return p.replace(/\\\*\\.\\*$/i, '').replace(/\/\*\.\*$/i, '').trim() +} + +export function buildJobConfig(form: DistributeFormState): Record { + const taskId = `T${Date.now()}` + const hasCopy = form.pathList.length > 0 + const hasPrint = !!form.templateFile.trim() + const body: Record = { + task_id: taskId, + print_copys: 1, + has_print_task: hasPrint, + has_copy_task: hasCopy, + label: form.volumeLabel || 'DATA_CARD', + file_type: String(form.copyType), + zone_type: form.copyType === 1 ? '1' : '0', + need_format: form.formatType !== 'none', + format_file: form.formatType === 'ntfs' ? 'NTFS' : 'FAT', + disk_size: '4GB', + dongle_install_count: form.dongleEnabled ? form.dongleMode : -1 + } + if (hasCopy) { + body.path_file = form.pathList.map((x) => cleanPath(x.path)) + } + if (hasPrint) { + body.json_file = form.templateFile.trim() + body.print_flag = 1 + } + if (form.generateIso) body.is_generate_iso = true + if (form.generateZip) body.is_generate_zip = true + return body +} diff --git a/app/src/renderer/src/utils/job-state.ts b/app/src/renderer/src/utils/job-state.ts new file mode 100644 index 0000000..7831972 --- /dev/null +++ b/app/src/renderer/src/utils/job-state.ts @@ -0,0 +1,64 @@ +export function mapJobStateToUi(jobState: number) { + switch (jobState) { + case 100: + return { + workflowStep: 4 as const, + workflowStatus: 'completed' as const, + terminal: true, + failed: false, + hint: '' + } + case 4: + return { + workflowStep: 3 as const, + workflowStatus: 'error' as const, + terminal: true, + failed: true, + hint: '' + } + case 6: + return { + workflowStep: 1 as const, + workflowStatus: 'working' as const, + terminal: true, + failed: false, + hint: 'cancelled' + } + case 7: + return { + workflowStep: 1 as const, + workflowStatus: 'working' as const, + terminal: false, + failed: false, + hint: 'waitCard' + } + case 2: + return { + workflowStep: 3 as const, + workflowStatus: 'working' as const, + terminal: false, + failed: false, + hint: '' + } + case 3: + return { + workflowStep: 2 as const, + workflowStatus: 'working' as const, + terminal: false, + failed: false, + hint: '' + } + default: + return { + workflowStep: 1 as const, + workflowStatus: 'working' as const, + terminal: false, + failed: false, + hint: '' + } + } +} + +export function shouldUseProgress(jobState: number): boolean { + return jobState === 2 || jobState === 3 +} diff --git a/app/src/renderer/src/utils/validateJobConfig.ts b/app/src/renderer/src/utils/validateJobConfig.ts new file mode 100644 index 0000000..879169c --- /dev/null +++ b/app/src/renderer/src/utils/validateJobConfig.ts @@ -0,0 +1,10 @@ +import type { DistributeFormState } from '@/stores/distributeForm' + +export function validateJobConfig(f: DistributeFormState): string | null { + const hasCopy = f.pathList.length > 0 + const hasPrint = !!f.templateFile.trim() + if (!hasCopy && !hasPrint) return '请配置拷贝路径或打印模板' + if (hasPrint && !f.templateFile.trim()) return '请选择 .soon 模板' + if (hasCopy && f.pathList.some((p) => !p.path.trim())) return '路径不能为空' + return null +} diff --git a/app/src/renderer/src/views/DataCollectView.vue b/app/src/renderer/src/views/DataCollectView.vue new file mode 100644 index 0000000..e26474a --- /dev/null +++ b/app/src/renderer/src/views/DataCollectView.vue @@ -0,0 +1,140 @@ + + + + + + + diff --git a/app/src/renderer/src/views/DistributeConfigView.vue b/app/src/renderer/src/views/DistributeConfigView.vue new file mode 100644 index 0000000..ec26468 --- /dev/null +++ b/app/src/renderer/src/views/DistributeConfigView.vue @@ -0,0 +1,280 @@ + + + + + + + diff --git a/app/src/renderer/src/views/DistributeFailedView.vue b/app/src/renderer/src/views/DistributeFailedView.vue new file mode 100644 index 0000000..ee2fc37 --- /dev/null +++ b/app/src/renderer/src/views/DistributeFailedView.vue @@ -0,0 +1,84 @@ + + + + + + + diff --git a/app/src/renderer/src/views/DistributeRunningView.vue b/app/src/renderer/src/views/DistributeRunningView.vue new file mode 100644 index 0000000..1c33ccf --- /dev/null +++ b/app/src/renderer/src/views/DistributeRunningView.vue @@ -0,0 +1,135 @@ + + + + + + + diff --git a/app/src/renderer/src/views/HomeView.vue b/app/src/renderer/src/views/HomeView.vue new file mode 100644 index 0000000..42ca598 --- /dev/null +++ b/app/src/renderer/src/views/HomeView.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/app/src/shared/viewport.ts b/app/src/shared/viewport.ts new file mode 100644 index 0000000..efc796d --- /dev/null +++ b/app/src/shared/viewport.ts @@ -0,0 +1,10 @@ +/** 设计稿逻辑画布 720×360 */ +export const DESIGN_WIDTH = 720 +export const DESIGN_HEIGHT = 360 + +/** 内容区高度(720 宽时 390):比画布多约 30px,避免按宽缩放后底部被裁 */ +export const CONTENT_VIEWPORT_HEIGHT = 390 + +export function contentHeightForWidth(contentWidth: number): number { + return Math.round((contentWidth * CONTENT_VIEWPORT_HEIGHT) / DESIGN_WIDTH) +} diff --git a/app/tsconfig.json b/app/tsconfig.json new file mode 100644 index 0000000..31bac6e --- /dev/null +++ b/app/tsconfig.json @@ -0,0 +1,4 @@ +{ + "files": [], + "references": [{ "path": "./tsconfig.node.json" }, { "path": "./tsconfig.web.json" }] +} diff --git a/app/tsconfig.node.json b/app/tsconfig.node.json new file mode 100644 index 0000000..e4123fa --- /dev/null +++ b/app/tsconfig.node.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "composite": true, + "baseUrl": ".", + "paths": { + "@shared/*": ["src/shared/*"] + }, + "module": "ESNext", + "moduleResolution": "Node", + "resolveJsonModule": true, + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "types": ["node"] + }, + "include": [ + "electron.vite.config.ts", + "src/main/**/*", + "src/preload/**/*", + "src/shared/**/*" + ] +} diff --git a/app/tsconfig.web.json b/app/tsconfig.web.json new file mode 100644 index 0000000..aa4ff57 --- /dev/null +++ b/app/tsconfig.web.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "composite": true, + "baseUrl": ".", + "paths": { + "@/*": ["src/renderer/src/*"], + "@shared/*": ["src/shared/*"] + }, + "module": "ESNext", + "moduleResolution": "Bundler", + "jsx": "preserve", + "strict": true, + "resolveJsonModule": true, + "isolatedModules": true, + "esModuleInterop": true, + "lib": ["ESNext", "DOM"], + "skipLibCheck": true, + "noEmit": true + }, + "include": [ + "src/renderer/src/**/*.ts", + "src/renderer/src/**/*.vue", + "src/shared/**/*.ts" + ] +} diff --git a/app/tsconfig.web.tsbuildinfo b/app/tsconfig.web.tsbuildinfo new file mode 100644 index 0000000..a6e2f76 --- /dev/null +++ b/app/tsconfig.web.tsbuildinfo @@ -0,0 +1 @@ +{"program":{"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.es2021.d.ts","./node_modules/typescript/lib/lib.es2022.d.ts","./node_modules/typescript/lib/lib.es2023.d.ts","./node_modules/typescript/lib/lib.esnext.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.es2021.promise.d.ts","./node_modules/typescript/lib/lib.es2021.string.d.ts","./node_modules/typescript/lib/lib.es2021.weakref.d.ts","./node_modules/typescript/lib/lib.es2021.intl.d.ts","./node_modules/typescript/lib/lib.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.es2022.regexp.d.ts","./node_modules/typescript/lib/lib.es2023.array.d.ts","./node_modules/typescript/lib/lib.es2023.collection.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/@vue/shared/dist/shared.d.ts","./node_modules/@babel/types/lib/index.d.ts","./node_modules/@babel/parser/typings/babel-parser.d.ts","./node_modules/@vue/compiler-core/dist/compiler-core.d.ts","./node_modules/@vue/compiler-dom/dist/compiler-dom.d.ts","./node_modules/@vue/reactivity/dist/reactivity.d.ts","./node_modules/@vue/runtime-core/dist/runtime-core.d.ts","./node_modules/csstype/index.d.ts","./node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts","./node_modules/vue/dist/vue.d.mts","./node_modules/element-plus/es/constants/aria.d.ts","./node_modules/element-plus/es/constants/date.d.ts","./node_modules/element-plus/es/constants/event.d.ts","./node_modules/element-plus/es/constants/key.d.ts","./node_modules/element-plus/es/constants/size.d.ts","./node_modules/element-plus/es/constants/column-alignment.d.ts","./node_modules/element-plus/es/constants/form.d.ts","./node_modules/element-plus/es/utils/typescript.d.ts","./node_modules/element-plus/es/utils/vue/props/util.d.ts","./node_modules/element-plus/es/utils/vue/props/runtime.d.ts","./node_modules/element-plus/es/utils/vue/props/types.d.ts","./node_modules/element-plus/es/components/affix/src/affix.vue.d.ts","./node_modules/element-plus/es/components/affix/src/affix.d.ts","./node_modules/vue-component-type-helpers/index.d.ts","./node_modules/element-plus/es/utils/vue/typescript.d.ts","./node_modules/element-plus/es/components/affix/index.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/add-location.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/aim.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/alarm-clock.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/apple.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-down-bold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-down.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-left-bold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-right-bold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-up-bold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/arrow-up.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/avatar.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/back.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/baseball.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/basketball.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bell-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bell.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bicycle.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bottom-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bottom-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bottom.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/bowl.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/box.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/briefcase.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/brush-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/brush.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/burger.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/calendar.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/camera-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/camera.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/caret-bottom.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/caret-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/caret-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/caret-top.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/cellphone.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-dot-round.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-dot-square.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-line-round.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-line-square.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-round.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chat-square.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/check.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/checked.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/cherry.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chicken.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/chrome-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-check-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-check.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-close-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-close.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-plus-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/circle-plus.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/clock.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/close-bold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/close.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/cloudy.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/coffee-cup.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/coffee.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/coin.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/cold-drink.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/collection-tag.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/collection.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/comment.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/compass.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/connection.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/coordinate.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/copy-document.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/cpu.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/credit-card.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/crop.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/d-arrow-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/d-arrow-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/d-caret.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/data-analysis.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/data-board.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/data-line.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/delete-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/delete-location.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/delete.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/dessert.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/discount.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/dish-dot.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/dish.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document-add.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document-checked.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document-copy.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document-delete.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document-remove.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/document.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/download.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/drizzling.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/edit-pen.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/edit.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/eleme-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/eleme.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/element-plus.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/expand.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/failed.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/female.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/files.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/film.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/filter.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/finished.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/first-aid-kit.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/flag.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/fold.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder-add.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder-checked.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder-delete.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder-opened.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder-remove.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/folder.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/food.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/football.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/fork-spoon.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/fries.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/full-screen.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goblet-full.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goblet-square-full.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goblet-square.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goblet.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/gold-medal.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goods-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/goods.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/grape.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/grid.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/guide.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/handbag.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/headset.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/help-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/help.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/hide.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/histogram.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/home-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/hot-water.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/house.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ice-cream-round.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ice-cream-square.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ice-cream.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ice-drink.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ice-tea.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/info-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/iphone.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/key.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/knife-fork.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/lightning.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/link.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/list.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/loading.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/location-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/location-information.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/location.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/lock.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/lollipop.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/magic-stick.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/magnet.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/male.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/management.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/map-location.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/medal.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/memo.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/menu.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/message-box.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/message.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mic.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/microphone.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/milk-tea.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/minus.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/money.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/monitor.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/moon-night.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/moon.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/more-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/more.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mostly-cloudy.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mouse.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mug.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mute-notification.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/mute.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/no-smoking.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/notebook.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/notification.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/odometer.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/office-building.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/open.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/operation.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/opportunity.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/orange.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/paperclip.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/partly-cloudy.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/pear.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/phone-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/phone.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/picture-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/picture-rounded.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/picture.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/pie-chart.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/place.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/platform.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/plus.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/pointer.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/position.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/postcard.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/pouring.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/present.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/price-tag.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/printer.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/promotion.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/quartz-watch.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/question-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/rank.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/reading-lamp.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/reading.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/refresh-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/refresh-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/refresh.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/refrigerator.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/remove-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/remove.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/scale-to-original.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/school.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/scissor.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/search.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/select.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sell.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/semi-select.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/service.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/set-up.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/setting.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/share.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ship.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/shop.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/shopping-bag.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/shopping-cart-full.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/shopping-cart.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/shopping-trolley.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/smoking.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/soccer.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sold-out.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sort-down.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sort-up.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sort.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/stamp.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/star-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/star.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/stopwatch.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/success-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sugar.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/suitcase-line.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/suitcase.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sunny.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sunrise.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/sunset.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/switch-button.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/switch-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/switch.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/takeaway-box.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/ticket.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/tickets.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/timer.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/toilet-paper.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/tools.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/top-left.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/top-right.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/top.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/trend-charts.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/trophy-base.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/trophy.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/turn-off.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/umbrella.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/unlock.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/upload-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/upload.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/user-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/user.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/van.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/video-camera-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/video-camera.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/video-pause.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/video-play.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/view.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/wallet-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/wallet.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/warn-triangle-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/warning-filled.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/warning.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/watch.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/watermelon.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/wind-power.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/zoom-in.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/zoom-out.vue.d.ts","./node_modules/@element-plus/icons-vue/dist/types/components/index.d.ts","./node_modules/@element-plus/icons-vue/dist/types/index.d.ts","./node_modules/element-plus/es/utils/vue/icon.d.ts","./node_modules/element-plus/es/components/alert/src/alert.d.ts","./node_modules/element-plus/es/components/alert/src/alert.vue.d.ts","./node_modules/element-plus/es/components/alert/src/instance.d.ts","./node_modules/element-plus/es/components/alert/index.d.ts","./node_modules/element-plus/es/components/anchor/src/anchor.vue.d.ts","./node_modules/element-plus/es/components/anchor/src/anchor.d.ts","./node_modules/element-plus/es/components/anchor/src/anchor-link.d.ts","./node_modules/element-plus/es/components/anchor/src/anchor-link.vue.d.ts","./node_modules/element-plus/es/components/anchor/index.d.ts","./node_modules/element-plus/es/hooks/use-attrs/index.d.ts","./node_modules/element-plus/es/hooks/use-calc-input-width/index.d.ts","./node_modules/element-plus/es/hooks/use-deprecated/index.d.ts","./node_modules/element-plus/es/hooks/use-draggable/index.d.ts","./node_modules/element-plus/es/hooks/use-focus/index.d.ts","./node_modules/element-plus/es/locale/lang/en.d.ts","./node_modules/element-plus/es/locale/lang/af.d.ts","./node_modules/element-plus/es/locale/lang/ar-eg.d.ts","./node_modules/element-plus/es/locale/lang/ar.d.ts","./node_modules/element-plus/es/locale/lang/az.d.ts","./node_modules/element-plus/es/locale/lang/bg.d.ts","./node_modules/element-plus/es/locale/lang/bn.d.ts","./node_modules/element-plus/es/locale/lang/ca.d.ts","./node_modules/element-plus/es/locale/lang/ckb.d.ts","./node_modules/element-plus/es/locale/lang/cs.d.ts","./node_modules/element-plus/es/locale/lang/da.d.ts","./node_modules/element-plus/es/locale/lang/de.d.ts","./node_modules/element-plus/es/locale/lang/el.d.ts","./node_modules/element-plus/es/locale/lang/eo.d.ts","./node_modules/element-plus/es/locale/lang/es.d.ts","./node_modules/element-plus/es/locale/lang/et.d.ts","./node_modules/element-plus/es/locale/lang/eu.d.ts","./node_modules/element-plus/es/locale/lang/fa.d.ts","./node_modules/element-plus/es/locale/lang/fi.d.ts","./node_modules/element-plus/es/locale/lang/fr.d.ts","./node_modules/element-plus/es/locale/lang/he.d.ts","./node_modules/element-plus/es/locale/lang/hi.d.ts","./node_modules/element-plus/es/locale/lang/hr.d.ts","./node_modules/element-plus/es/locale/lang/hu.d.ts","./node_modules/element-plus/es/locale/lang/hy-am.d.ts","./node_modules/element-plus/es/locale/lang/id.d.ts","./node_modules/element-plus/es/locale/lang/it.d.ts","./node_modules/element-plus/es/locale/lang/ja.d.ts","./node_modules/element-plus/es/locale/lang/kk.d.ts","./node_modules/element-plus/es/locale/lang/km.d.ts","./node_modules/element-plus/es/locale/lang/ko.d.ts","./node_modules/element-plus/es/locale/lang/ku.d.ts","./node_modules/element-plus/es/locale/lang/ky.d.ts","./node_modules/element-plus/es/locale/lang/lo.d.ts","./node_modules/element-plus/es/locale/lang/lt.d.ts","./node_modules/element-plus/es/locale/lang/lv.d.ts","./node_modules/element-plus/es/locale/lang/mg.d.ts","./node_modules/element-plus/es/locale/lang/mn.d.ts","./node_modules/element-plus/es/locale/lang/ms.d.ts","./node_modules/element-plus/es/locale/lang/my.d.ts","./node_modules/element-plus/es/locale/lang/nb-no.d.ts","./node_modules/element-plus/es/locale/lang/nl.d.ts","./node_modules/element-plus/es/locale/lang/no.d.ts","./node_modules/element-plus/es/locale/lang/pa.d.ts","./node_modules/element-plus/es/locale/lang/pl.d.ts","./node_modules/element-plus/es/locale/lang/pt-br.d.ts","./node_modules/element-plus/es/locale/lang/pt.d.ts","./node_modules/element-plus/es/locale/lang/ro.d.ts","./node_modules/element-plus/es/locale/lang/ru.d.ts","./node_modules/element-plus/es/locale/lang/sk.d.ts","./node_modules/element-plus/es/locale/lang/sl.d.ts","./node_modules/element-plus/es/locale/lang/sr.d.ts","./node_modules/element-plus/es/locale/lang/sv.d.ts","./node_modules/element-plus/es/locale/lang/sw.d.ts","./node_modules/element-plus/es/locale/lang/ta.d.ts","./node_modules/element-plus/es/locale/lang/te.d.ts","./node_modules/element-plus/es/locale/lang/th.d.ts","./node_modules/element-plus/es/locale/lang/tk.d.ts","./node_modules/element-plus/es/locale/lang/tr.d.ts","./node_modules/element-plus/es/locale/lang/ug-cn.d.ts","./node_modules/element-plus/es/locale/lang/uk.d.ts","./node_modules/element-plus/es/locale/lang/uz-uz.d.ts","./node_modules/element-plus/es/locale/lang/vi.d.ts","./node_modules/element-plus/es/locale/lang/zh-cn.d.ts","./node_modules/element-plus/es/locale/lang/zh-tw.d.ts","./node_modules/element-plus/es/locale/lang/zh-hk.d.ts","./node_modules/element-plus/es/locale/lang/zh-mo.d.ts","./node_modules/element-plus/es/locale/index.d.ts","./node_modules/element-plus/es/hooks/use-locale/index.d.ts","./node_modules/element-plus/es/hooks/use-namespace/index.d.ts","./node_modules/element-plus/es/hooks/use-lockscreen/index.d.ts","./node_modules/element-plus/es/hooks/use-modal/index.d.ts","./node_modules/element-plus/es/hooks/use-model-toggle/index.d.ts","./node_modules/element-plus/es/hooks/use-prevent-global/index.d.ts","./node_modules/element-plus/es/hooks/use-prop/index.d.ts","./node_modules/@popperjs/core/lib/enums.d.ts","./node_modules/@popperjs/core/lib/modifiers/popperoffsets.d.ts","./node_modules/@popperjs/core/lib/modifiers/flip.d.ts","./node_modules/@popperjs/core/lib/modifiers/hide.d.ts","./node_modules/@popperjs/core/lib/modifiers/offset.d.ts","./node_modules/@popperjs/core/lib/modifiers/eventlisteners.d.ts","./node_modules/@popperjs/core/lib/modifiers/computestyles.d.ts","./node_modules/@popperjs/core/lib/modifiers/arrow.d.ts","./node_modules/@popperjs/core/lib/modifiers/preventoverflow.d.ts","./node_modules/@popperjs/core/lib/modifiers/applystyles.d.ts","./node_modules/@popperjs/core/lib/types.d.ts","./node_modules/@popperjs/core/lib/modifiers/index.d.ts","./node_modules/@popperjs/core/lib/utils/detectoverflow.d.ts","./node_modules/@popperjs/core/lib/createpopper.d.ts","./node_modules/@popperjs/core/lib/popper-lite.d.ts","./node_modules/@popperjs/core/lib/popper.d.ts","./node_modules/@popperjs/core/lib/index.d.ts","./node_modules/@popperjs/core/index.d.ts","./node_modules/element-plus/es/components/popper/src/constants.d.ts","./node_modules/element-plus/es/components/popper/src/popper.vue.d.ts","./node_modules/element-plus/es/components/popper/src/popper.d.ts","./node_modules/element-plus/es/components/popper/src/arrow.vue.d.ts","./node_modules/element-plus/es/components/popper/src/trigger.vue.d.ts","./node_modules/element-plus/es/components/popper/src/trigger.d.ts","./node_modules/element-plus/es/components/popper/src/arrow.d.ts","./node_modules/element-plus/es/components/popper/index.d.ts","./node_modules/element-plus/es/components/popper/src/content.vue.d.ts","./node_modules/element-plus/es/components/popper/src/content.d.ts","./node_modules/element-plus/es/components/input/src/input.d.ts","./node_modules/element-plus/es/components/input/src/input.vue.d.ts","./node_modules/element-plus/es/components/input/src/instance.d.ts","./node_modules/element-plus/es/components/input/index.d.ts","./node_modules/element-plus/es/components/tooltip/src/content.vue.d.ts","./node_modules/element-plus/es/hooks/use-delayed-toggle/index.d.ts","./node_modules/element-plus/es/hooks/use-aria/index.d.ts","./node_modules/element-plus/es/components/tooltip/src/content.d.ts","./node_modules/element-plus/es/components/tooltip/src/trigger.d.ts","./node_modules/element-plus/es/components/tooltip/src/tooltip.vue.d.ts","./node_modules/element-plus/es/components/tooltip/src/tooltip.d.ts","./node_modules/element-plus/es/components/tooltip/src/constants.d.ts","./node_modules/element-plus/es/components/tooltip/index.d.ts","./node_modules/element-plus/es/components/autocomplete/src/autocomplete.vue.d.ts","./node_modules/element-plus/es/components/autocomplete/src/autocomplete.d.ts","./node_modules/element-plus/es/components/autocomplete/index.d.ts","./node_modules/element-plus/es/components/avatar/src/avatar.d.ts","./node_modules/element-plus/es/components/avatar/src/constants.d.ts","./node_modules/element-plus/es/components/avatar/src/avatar-group-props.d.ts","./node_modules/element-plus/es/components/avatar/src/avatar.vue.d.ts","./node_modules/vue/jsx-runtime/index.d.ts","./node_modules/element-plus/es/components/avatar/src/avatar-group.d.ts","./node_modules/element-plus/es/components/avatar/src/instance.d.ts","./node_modules/element-plus/es/components/avatar/index.d.ts","./node_modules/element-plus/es/components/backtop/src/backtop.d.ts","./node_modules/element-plus/es/components/backtop/src/backtop.vue.d.ts","./node_modules/element-plus/es/components/backtop/src/instance.d.ts","./node_modules/element-plus/es/components/backtop/index.d.ts","./node_modules/element-plus/es/components/badge/src/badge.d.ts","./node_modules/element-plus/es/components/badge/src/badge.vue.d.ts","./node_modules/element-plus/es/components/badge/src/instance.d.ts","./node_modules/element-plus/es/components/badge/index.d.ts","./node_modules/element-plus/es/components/breadcrumb/src/breadcrumb.d.ts","./node_modules/vue-router/dist/router-cwonjprp.d.mts","./node_modules/vue-router/dist/vue-router.d.mts","./node_modules/element-plus/es/components/breadcrumb/src/breadcrumb-item.d.ts","./node_modules/element-plus/es/components/breadcrumb/src/constants.d.ts","./node_modules/element-plus/es/components/breadcrumb/src/breadcrumb.vue.d.ts","./node_modules/element-plus/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts","./node_modules/element-plus/es/components/breadcrumb/src/instances.d.ts","./node_modules/element-plus/es/components/breadcrumb/index.d.ts","./node_modules/element-plus/es/components/button/src/button.d.ts","./node_modules/element-plus/es/components/button/src/constants.d.ts","./node_modules/element-plus/es/components/button/src/button.vue.d.ts","./node_modules/element-plus/es/components/button/src/button-group.d.ts","./node_modules/element-plus/es/components/button/src/button-group.vue.d.ts","./node_modules/element-plus/es/components/button/src/instance.d.ts","./node_modules/element-plus/es/components/button/index.d.ts","./node_modules/element-plus/es/components/calendar/src/calendar.d.ts","./node_modules/dayjs/locale/types.d.ts","./node_modules/dayjs/locale/index.d.ts","./node_modules/dayjs/index.d.ts","./node_modules/element-plus/es/components/calendar/src/calendar.vue.d.ts","./node_modules/element-plus/es/components/calendar/src/date-table.d.ts","./node_modules/element-plus/es/components/calendar/src/date-table.vue.d.ts","./node_modules/element-plus/es/components/calendar/src/instance.d.ts","./node_modules/element-plus/es/components/calendar/index.d.ts","./node_modules/element-plus/es/components/card/src/card.d.ts","./node_modules/element-plus/es/components/card/src/card.vue.d.ts","./node_modules/element-plus/es/components/card/src/instance.d.ts","./node_modules/element-plus/es/components/card/index.d.ts","./node_modules/element-plus/es/components/carousel/src/carousel.d.ts","./node_modules/element-plus/es/components/carousel/src/carousel-item.d.ts","./node_modules/element-plus/es/components/carousel/src/constants.d.ts","./node_modules/element-plus/es/components/carousel/src/carousel.vue.d.ts","./node_modules/element-plus/es/components/carousel/src/carousel-item.vue.d.ts","./node_modules/element-plus/es/components/carousel/src/instance.d.ts","./node_modules/element-plus/es/components/carousel/index.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/node.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/types.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/config.d.ts","./node_modules/element-plus/es/components/virtual-list/src/defaults.d.ts","./node_modules/element-plus/es/components/virtual-list/src/types.d.ts","./node_modules/element-plus/es/components/virtual-list/src/components/fixed-size-list.d.ts","./node_modules/element-plus/es/components/virtual-list/src/components/dynamic-size-list.d.ts","./node_modules/element-plus/es/components/virtual-list/src/components/fixed-size-grid.d.ts","./node_modules/element-plus/es/components/virtual-list/src/props.d.ts","./node_modules/element-plus/es/components/virtual-list/src/hooks/use-cache.d.ts","./node_modules/element-plus/es/components/virtual-list/src/builders/build-grid.d.ts","./node_modules/element-plus/es/components/virtual-list/src/components/dynamic-size-grid.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/menu.vue.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/index.vue.d.ts","./node_modules/element-plus/es/components/cascader-panel/src/instance.d.ts","./node_modules/element-plus/es/components/cascader-panel/index.d.ts","./node_modules/element-plus/es/components/tag/src/tag.vue.d.ts","./node_modules/element-plus/es/components/tag/src/tag.d.ts","./node_modules/element-plus/es/components/tag/index.d.ts","./node_modules/element-plus/es/hooks/use-empty-values/index.d.ts","./node_modules/element-plus/es/components/cascader/src/cascader.d.ts","./node_modules/element-plus/es/components/cascader/src/cascader.vue.d.ts","./node_modules/element-plus/es/components/cascader/src/instances.d.ts","./node_modules/element-plus/es/components/cascader/index.d.ts","./node_modules/element-plus/es/components/check-tag/src/check-tag.vue.d.ts","./node_modules/element-plus/es/components/check-tag/src/check-tag.d.ts","./node_modules/element-plus/es/components/check-tag/index.d.ts","./node_modules/element-plus/es/components/checkbox/src/checkbox.vue.d.ts","./node_modules/element-plus/es/components/checkbox/src/checkbox.d.ts","./node_modules/element-plus/es/components/checkbox/src/checkbox-group.vue.d.ts","./node_modules/element-plus/es/components/checkbox/src/checkbox-group.d.ts","./node_modules/element-plus/es/components/checkbox/src/constants.d.ts","./node_modules/element-plus/es/components/checkbox/src/checkbox-button.vue.d.ts","./node_modules/element-plus/es/components/checkbox/index.d.ts","./node_modules/element-plus/es/components/col/src/col.vue.d.ts","./node_modules/element-plus/es/components/col/src/col.d.ts","./node_modules/element-plus/es/components/col/index.d.ts","./node_modules/element-plus/es/components/collapse/src/collapse.d.ts","./node_modules/element-plus/es/components/collapse/src/collapse-item.d.ts","./node_modules/element-plus/es/components/collapse/src/constants.d.ts","./node_modules/element-plus/es/components/collapse/src/collapse.vue.d.ts","./node_modules/element-plus/es/components/collapse/src/collapse-item.vue.d.ts","./node_modules/element-plus/es/components/collapse/src/instance.d.ts","./node_modules/element-plus/es/components/collapse/index.d.ts","./node_modules/element-plus/es/components/collapse-transition/src/collapse-transition.vue.d.ts","./node_modules/element-plus/es/components/collapse-transition/index.d.ts","./node_modules/@ctrl/tinycolor/dist/interfaces.d.ts","./node_modules/@ctrl/tinycolor/dist/index.d.ts","./node_modules/@ctrl/tinycolor/dist/css-color-names.d.ts","./node_modules/@ctrl/tinycolor/dist/readability.d.ts","./node_modules/@ctrl/tinycolor/dist/to-ms-filter.d.ts","./node_modules/@ctrl/tinycolor/dist/from-ratio.d.ts","./node_modules/@ctrl/tinycolor/dist/format-input.d.ts","./node_modules/@ctrl/tinycolor/dist/random.d.ts","./node_modules/@ctrl/tinycolor/dist/conversion.d.ts","./node_modules/@ctrl/tinycolor/dist/public_api.d.ts","./node_modules/element-plus/es/components/color-picker-panel/src/utils/color.d.ts","./node_modules/element-plus/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts","./node_modules/element-plus/es/components/color-picker-panel/src/color-picker-panel.d.ts","./node_modules/element-plus/es/components/color-picker-panel/index.d.ts","./node_modules/element-plus/es/components/color-picker/src/color-picker.vue.d.ts","./node_modules/element-plus/es/components/color-picker/src/color-picker.d.ts","./node_modules/element-plus/es/components/color-picker/index.d.ts","./node_modules/element-plus/es/components/message/src/message.vue.d.ts","./node_modules/element-plus/es/components/message/src/message.d.ts","./node_modules/element-plus/es/components/message/index.d.ts","./node_modules/element-plus/es/components/dialog/src/dialog-content.d.ts","./node_modules/element-plus/es/components/dialog/src/dialog.vue.d.ts","./node_modules/element-plus/es/components/dialog/src/dialog.d.ts","./node_modules/element-plus/es/components/link/src/link.vue.d.ts","./node_modules/element-plus/es/components/link/src/link.d.ts","./node_modules/element-plus/es/components/table/src/store/tree.d.ts","./node_modules/element-plus/es/components/table/src/store/index.d.ts","./node_modules/element-plus/es/components/table/src/table-column/defaults.d.ts","./node_modules/element-plus/es/components/table/src/util.d.ts","./node_modules/element-plus/es/components/table/src/table-header/index.d.ts","./node_modules/element-plus/es/components/table/src/table-layout.d.ts","./node_modules/element-plus/es/components/table/src/table/defaults.d.ts","./node_modules/element-plus/es/components/config-provider/src/config-provider-props.d.ts","./node_modules/element-plus/es/components/config-provider/src/config-provider.d.ts","./node_modules/element-plus/es/components/dialog/src/use-dialog.d.ts","./node_modules/element-plus/es/components/dialog/src/constants.d.ts","./node_modules/element-plus/es/components/dialog/index.d.ts","./node_modules/element-plus/es/components/link/index.d.ts","./node_modules/normalize-wheel-es/index.d.ts","./node_modules/element-plus/es/directives/mousewheel/index.d.ts","./node_modules/element-plus/es/components/table/src/table-body/defaults.d.ts","./node_modules/element-plus/es/components/table/src/table-footer/index.d.ts","./node_modules/element-plus/es/components/table/src/h-helper.d.ts","./node_modules/element-plus/es/components/scrollbar/src/scrollbar.vue.d.ts","./node_modules/element-plus/es/components/scrollbar/src/scrollbar.d.ts","./node_modules/@types/lodash/common/common.d.ts","./node_modules/@types/lodash/common/array.d.ts","./node_modules/@types/lodash/common/collection.d.ts","./node_modules/@types/lodash/common/date.d.ts","./node_modules/@types/lodash/common/function.d.ts","./node_modules/@types/lodash/common/lang.d.ts","./node_modules/@types/lodash/common/math.d.ts","./node_modules/@types/lodash/common/number.d.ts","./node_modules/@types/lodash/common/object.d.ts","./node_modules/@types/lodash/common/seq.d.ts","./node_modules/@types/lodash/common/string.d.ts","./node_modules/@types/lodash/common/util.d.ts","./node_modules/@types/lodash/index.d.ts","./node_modules/@types/lodash-es/add.d.ts","./node_modules/@types/lodash-es/after.d.ts","./node_modules/@types/lodash-es/ary.d.ts","./node_modules/@types/lodash-es/assign.d.ts","./node_modules/@types/lodash-es/assignin.d.ts","./node_modules/@types/lodash-es/assigninwith.d.ts","./node_modules/@types/lodash-es/assignwith.d.ts","./node_modules/@types/lodash-es/at.d.ts","./node_modules/@types/lodash-es/attempt.d.ts","./node_modules/@types/lodash-es/before.d.ts","./node_modules/@types/lodash-es/bind.d.ts","./node_modules/@types/lodash-es/bindall.d.ts","./node_modules/@types/lodash-es/bindkey.d.ts","./node_modules/@types/lodash-es/camelcase.d.ts","./node_modules/@types/lodash-es/capitalize.d.ts","./node_modules/@types/lodash-es/castarray.d.ts","./node_modules/@types/lodash-es/ceil.d.ts","./node_modules/@types/lodash-es/chain.d.ts","./node_modules/@types/lodash-es/chunk.d.ts","./node_modules/@types/lodash-es/clamp.d.ts","./node_modules/@types/lodash-es/clone.d.ts","./node_modules/@types/lodash-es/clonedeep.d.ts","./node_modules/@types/lodash-es/clonedeepwith.d.ts","./node_modules/@types/lodash-es/clonewith.d.ts","./node_modules/@types/lodash-es/compact.d.ts","./node_modules/@types/lodash-es/concat.d.ts","./node_modules/@types/lodash-es/cond.d.ts","./node_modules/@types/lodash-es/conforms.d.ts","./node_modules/@types/lodash-es/conformsto.d.ts","./node_modules/@types/lodash-es/constant.d.ts","./node_modules/@types/lodash-es/countby.d.ts","./node_modules/@types/lodash-es/create.d.ts","./node_modules/@types/lodash-es/curry.d.ts","./node_modules/@types/lodash-es/curryright.d.ts","./node_modules/@types/lodash-es/debounce.d.ts","./node_modules/@types/lodash-es/deburr.d.ts","./node_modules/@types/lodash-es/defaults.d.ts","./node_modules/@types/lodash-es/defaultsdeep.d.ts","./node_modules/@types/lodash-es/defaultto.d.ts","./node_modules/@types/lodash-es/defer.d.ts","./node_modules/@types/lodash-es/delay.d.ts","./node_modules/@types/lodash-es/difference.d.ts","./node_modules/@types/lodash-es/differenceby.d.ts","./node_modules/@types/lodash-es/differencewith.d.ts","./node_modules/@types/lodash-es/divide.d.ts","./node_modules/@types/lodash-es/drop.d.ts","./node_modules/@types/lodash-es/dropright.d.ts","./node_modules/@types/lodash-es/droprightwhile.d.ts","./node_modules/@types/lodash-es/dropwhile.d.ts","./node_modules/@types/lodash-es/each.d.ts","./node_modules/@types/lodash-es/eachright.d.ts","./node_modules/@types/lodash-es/endswith.d.ts","./node_modules/@types/lodash-es/entries.d.ts","./node_modules/@types/lodash-es/entriesin.d.ts","./node_modules/@types/lodash-es/eq.d.ts","./node_modules/@types/lodash-es/escape.d.ts","./node_modules/@types/lodash-es/escaperegexp.d.ts","./node_modules/@types/lodash-es/every.d.ts","./node_modules/@types/lodash-es/extend.d.ts","./node_modules/@types/lodash-es/extendwith.d.ts","./node_modules/@types/lodash-es/fill.d.ts","./node_modules/@types/lodash-es/filter.d.ts","./node_modules/@types/lodash-es/find.d.ts","./node_modules/@types/lodash-es/findindex.d.ts","./node_modules/@types/lodash-es/findkey.d.ts","./node_modules/@types/lodash-es/findlast.d.ts","./node_modules/@types/lodash-es/findlastindex.d.ts","./node_modules/@types/lodash-es/findlastkey.d.ts","./node_modules/@types/lodash-es/first.d.ts","./node_modules/@types/lodash-es/flatmap.d.ts","./node_modules/@types/lodash-es/flatmapdeep.d.ts","./node_modules/@types/lodash-es/flatmapdepth.d.ts","./node_modules/@types/lodash-es/flatten.d.ts","./node_modules/@types/lodash-es/flattendeep.d.ts","./node_modules/@types/lodash-es/flattendepth.d.ts","./node_modules/@types/lodash-es/flip.d.ts","./node_modules/@types/lodash-es/floor.d.ts","./node_modules/@types/lodash-es/flow.d.ts","./node_modules/@types/lodash-es/flowright.d.ts","./node_modules/@types/lodash-es/foreach.d.ts","./node_modules/@types/lodash-es/foreachright.d.ts","./node_modules/@types/lodash-es/forin.d.ts","./node_modules/@types/lodash-es/forinright.d.ts","./node_modules/@types/lodash-es/forown.d.ts","./node_modules/@types/lodash-es/forownright.d.ts","./node_modules/@types/lodash-es/frompairs.d.ts","./node_modules/@types/lodash-es/functions.d.ts","./node_modules/@types/lodash-es/functionsin.d.ts","./node_modules/@types/lodash-es/get.d.ts","./node_modules/@types/lodash-es/groupby.d.ts","./node_modules/@types/lodash-es/gt.d.ts","./node_modules/@types/lodash-es/gte.d.ts","./node_modules/@types/lodash-es/has.d.ts","./node_modules/@types/lodash-es/hasin.d.ts","./node_modules/@types/lodash-es/head.d.ts","./node_modules/@types/lodash-es/identity.d.ts","./node_modules/@types/lodash-es/includes.d.ts","./node_modules/@types/lodash-es/indexof.d.ts","./node_modules/@types/lodash-es/initial.d.ts","./node_modules/@types/lodash-es/inrange.d.ts","./node_modules/@types/lodash-es/intersection.d.ts","./node_modules/@types/lodash-es/intersectionby.d.ts","./node_modules/@types/lodash-es/intersectionwith.d.ts","./node_modules/@types/lodash-es/invert.d.ts","./node_modules/@types/lodash-es/invertby.d.ts","./node_modules/@types/lodash-es/invoke.d.ts","./node_modules/@types/lodash-es/invokemap.d.ts","./node_modules/@types/lodash-es/isarguments.d.ts","./node_modules/@types/lodash-es/isarray.d.ts","./node_modules/@types/lodash-es/isarraybuffer.d.ts","./node_modules/@types/lodash-es/isarraylike.d.ts","./node_modules/@types/lodash-es/isarraylikeobject.d.ts","./node_modules/@types/lodash-es/isboolean.d.ts","./node_modules/@types/lodash-es/isbuffer.d.ts","./node_modules/@types/lodash-es/isdate.d.ts","./node_modules/@types/lodash-es/iselement.d.ts","./node_modules/@types/lodash-es/isempty.d.ts","./node_modules/@types/lodash-es/isequal.d.ts","./node_modules/@types/lodash-es/isequalwith.d.ts","./node_modules/@types/lodash-es/iserror.d.ts","./node_modules/@types/lodash-es/isfinite.d.ts","./node_modules/@types/lodash-es/isfunction.d.ts","./node_modules/@types/lodash-es/isinteger.d.ts","./node_modules/@types/lodash-es/islength.d.ts","./node_modules/@types/lodash-es/ismap.d.ts","./node_modules/@types/lodash-es/ismatch.d.ts","./node_modules/@types/lodash-es/ismatchwith.d.ts","./node_modules/@types/lodash-es/isnan.d.ts","./node_modules/@types/lodash-es/isnative.d.ts","./node_modules/@types/lodash-es/isnil.d.ts","./node_modules/@types/lodash-es/isnull.d.ts","./node_modules/@types/lodash-es/isnumber.d.ts","./node_modules/@types/lodash-es/isobject.d.ts","./node_modules/@types/lodash-es/isobjectlike.d.ts","./node_modules/@types/lodash-es/isplainobject.d.ts","./node_modules/@types/lodash-es/isregexp.d.ts","./node_modules/@types/lodash-es/issafeinteger.d.ts","./node_modules/@types/lodash-es/isset.d.ts","./node_modules/@types/lodash-es/isstring.d.ts","./node_modules/@types/lodash-es/issymbol.d.ts","./node_modules/@types/lodash-es/istypedarray.d.ts","./node_modules/@types/lodash-es/isundefined.d.ts","./node_modules/@types/lodash-es/isweakmap.d.ts","./node_modules/@types/lodash-es/isweakset.d.ts","./node_modules/@types/lodash-es/iteratee.d.ts","./node_modules/@types/lodash-es/join.d.ts","./node_modules/@types/lodash-es/kebabcase.d.ts","./node_modules/@types/lodash-es/keyby.d.ts","./node_modules/@types/lodash-es/keys.d.ts","./node_modules/@types/lodash-es/keysin.d.ts","./node_modules/@types/lodash-es/last.d.ts","./node_modules/@types/lodash-es/lastindexof.d.ts","./node_modules/@types/lodash-es/lowercase.d.ts","./node_modules/@types/lodash-es/lowerfirst.d.ts","./node_modules/@types/lodash-es/lt.d.ts","./node_modules/@types/lodash-es/lte.d.ts","./node_modules/@types/lodash-es/map.d.ts","./node_modules/@types/lodash-es/mapkeys.d.ts","./node_modules/@types/lodash-es/mapvalues.d.ts","./node_modules/@types/lodash-es/matches.d.ts","./node_modules/@types/lodash-es/matchesproperty.d.ts","./node_modules/@types/lodash-es/max.d.ts","./node_modules/@types/lodash-es/maxby.d.ts","./node_modules/@types/lodash-es/mean.d.ts","./node_modules/@types/lodash-es/meanby.d.ts","./node_modules/@types/lodash-es/memoize.d.ts","./node_modules/@types/lodash-es/merge.d.ts","./node_modules/@types/lodash-es/mergewith.d.ts","./node_modules/@types/lodash-es/method.d.ts","./node_modules/@types/lodash-es/methodof.d.ts","./node_modules/@types/lodash-es/min.d.ts","./node_modules/@types/lodash-es/minby.d.ts","./node_modules/@types/lodash-es/mixin.d.ts","./node_modules/@types/lodash-es/multiply.d.ts","./node_modules/@types/lodash-es/negate.d.ts","./node_modules/@types/lodash-es/noop.d.ts","./node_modules/@types/lodash-es/now.d.ts","./node_modules/@types/lodash-es/nth.d.ts","./node_modules/@types/lodash-es/ntharg.d.ts","./node_modules/@types/lodash-es/omit.d.ts","./node_modules/@types/lodash-es/omitby.d.ts","./node_modules/@types/lodash-es/once.d.ts","./node_modules/@types/lodash-es/orderby.d.ts","./node_modules/@types/lodash-es/over.d.ts","./node_modules/@types/lodash-es/overargs.d.ts","./node_modules/@types/lodash-es/overevery.d.ts","./node_modules/@types/lodash-es/oversome.d.ts","./node_modules/@types/lodash-es/pad.d.ts","./node_modules/@types/lodash-es/padend.d.ts","./node_modules/@types/lodash-es/padstart.d.ts","./node_modules/@types/lodash-es/parseint.d.ts","./node_modules/@types/lodash-es/partial.d.ts","./node_modules/@types/lodash-es/partialright.d.ts","./node_modules/@types/lodash-es/partition.d.ts","./node_modules/@types/lodash-es/pick.d.ts","./node_modules/@types/lodash-es/pickby.d.ts","./node_modules/@types/lodash-es/property.d.ts","./node_modules/@types/lodash-es/propertyof.d.ts","./node_modules/@types/lodash-es/pull.d.ts","./node_modules/@types/lodash-es/pullall.d.ts","./node_modules/@types/lodash-es/pullallby.d.ts","./node_modules/@types/lodash-es/pullallwith.d.ts","./node_modules/@types/lodash-es/pullat.d.ts","./node_modules/@types/lodash-es/random.d.ts","./node_modules/@types/lodash-es/range.d.ts","./node_modules/@types/lodash-es/rangeright.d.ts","./node_modules/@types/lodash-es/rearg.d.ts","./node_modules/@types/lodash-es/reduce.d.ts","./node_modules/@types/lodash-es/reduceright.d.ts","./node_modules/@types/lodash-es/reject.d.ts","./node_modules/@types/lodash-es/remove.d.ts","./node_modules/@types/lodash-es/repeat.d.ts","./node_modules/@types/lodash-es/replace.d.ts","./node_modules/@types/lodash-es/rest.d.ts","./node_modules/@types/lodash-es/result.d.ts","./node_modules/@types/lodash-es/reverse.d.ts","./node_modules/@types/lodash-es/round.d.ts","./node_modules/@types/lodash-es/sample.d.ts","./node_modules/@types/lodash-es/samplesize.d.ts","./node_modules/@types/lodash-es/set.d.ts","./node_modules/@types/lodash-es/setwith.d.ts","./node_modules/@types/lodash-es/shuffle.d.ts","./node_modules/@types/lodash-es/size.d.ts","./node_modules/@types/lodash-es/slice.d.ts","./node_modules/@types/lodash-es/snakecase.d.ts","./node_modules/@types/lodash-es/some.d.ts","./node_modules/@types/lodash-es/sortby.d.ts","./node_modules/@types/lodash-es/sortedindex.d.ts","./node_modules/@types/lodash-es/sortedindexby.d.ts","./node_modules/@types/lodash-es/sortedindexof.d.ts","./node_modules/@types/lodash-es/sortedlastindex.d.ts","./node_modules/@types/lodash-es/sortedlastindexby.d.ts","./node_modules/@types/lodash-es/sortedlastindexof.d.ts","./node_modules/@types/lodash-es/sorteduniq.d.ts","./node_modules/@types/lodash-es/sorteduniqby.d.ts","./node_modules/@types/lodash-es/split.d.ts","./node_modules/@types/lodash-es/spread.d.ts","./node_modules/@types/lodash-es/startcase.d.ts","./node_modules/@types/lodash-es/startswith.d.ts","./node_modules/@types/lodash-es/stubarray.d.ts","./node_modules/@types/lodash-es/stubfalse.d.ts","./node_modules/@types/lodash-es/stubobject.d.ts","./node_modules/@types/lodash-es/stubstring.d.ts","./node_modules/@types/lodash-es/stubtrue.d.ts","./node_modules/@types/lodash-es/subtract.d.ts","./node_modules/@types/lodash-es/sum.d.ts","./node_modules/@types/lodash-es/sumby.d.ts","./node_modules/@types/lodash-es/tail.d.ts","./node_modules/@types/lodash-es/take.d.ts","./node_modules/@types/lodash-es/takeright.d.ts","./node_modules/@types/lodash-es/takerightwhile.d.ts","./node_modules/@types/lodash-es/takewhile.d.ts","./node_modules/@types/lodash-es/tap.d.ts","./node_modules/@types/lodash-es/template.d.ts","./node_modules/@types/lodash-es/templatesettings.d.ts","./node_modules/@types/lodash-es/throttle.d.ts","./node_modules/@types/lodash-es/thru.d.ts","./node_modules/@types/lodash-es/times.d.ts","./node_modules/@types/lodash-es/toarray.d.ts","./node_modules/@types/lodash-es/tofinite.d.ts","./node_modules/@types/lodash-es/tointeger.d.ts","./node_modules/@types/lodash-es/tolength.d.ts","./node_modules/@types/lodash-es/tolower.d.ts","./node_modules/@types/lodash-es/tonumber.d.ts","./node_modules/@types/lodash-es/topairs.d.ts","./node_modules/@types/lodash-es/topairsin.d.ts","./node_modules/@types/lodash-es/topath.d.ts","./node_modules/@types/lodash-es/toplainobject.d.ts","./node_modules/@types/lodash-es/tosafeinteger.d.ts","./node_modules/@types/lodash-es/tostring.d.ts","./node_modules/@types/lodash-es/toupper.d.ts","./node_modules/@types/lodash-es/transform.d.ts","./node_modules/@types/lodash-es/trim.d.ts","./node_modules/@types/lodash-es/trimend.d.ts","./node_modules/@types/lodash-es/trimstart.d.ts","./node_modules/@types/lodash-es/truncate.d.ts","./node_modules/@types/lodash-es/unary.d.ts","./node_modules/@types/lodash-es/unescape.d.ts","./node_modules/@types/lodash-es/union.d.ts","./node_modules/@types/lodash-es/unionby.d.ts","./node_modules/@types/lodash-es/unionwith.d.ts","./node_modules/@types/lodash-es/uniq.d.ts","./node_modules/@types/lodash-es/uniqby.d.ts","./node_modules/@types/lodash-es/uniqueid.d.ts","./node_modules/@types/lodash-es/uniqwith.d.ts","./node_modules/@types/lodash-es/unset.d.ts","./node_modules/@types/lodash-es/unzip.d.ts","./node_modules/@types/lodash-es/unzipwith.d.ts","./node_modules/@types/lodash-es/update.d.ts","./node_modules/@types/lodash-es/updatewith.d.ts","./node_modules/@types/lodash-es/uppercase.d.ts","./node_modules/@types/lodash-es/upperfirst.d.ts","./node_modules/@types/lodash-es/values.d.ts","./node_modules/@types/lodash-es/valuesin.d.ts","./node_modules/@types/lodash-es/without.d.ts","./node_modules/@types/lodash-es/words.d.ts","./node_modules/@types/lodash-es/wrap.d.ts","./node_modules/@types/lodash-es/xor.d.ts","./node_modules/@types/lodash-es/xorby.d.ts","./node_modules/@types/lodash-es/xorwith.d.ts","./node_modules/@types/lodash-es/zip.d.ts","./node_modules/@types/lodash-es/zipobject.d.ts","./node_modules/@types/lodash-es/zipobjectdeep.d.ts","./node_modules/@types/lodash-es/zipwith.d.ts","./node_modules/@types/lodash-es/index.d.ts","./node_modules/lodash-unified/type.d.ts","./node_modules/element-plus/es/components/table/src/table.vue.d.ts","./node_modules/element-plus/es/components/table/src/table-column/index.d.ts","./node_modules/element-plus/es/components/table/index.d.ts","./node_modules/element-plus/es/components/config-provider/src/constants.d.ts","./node_modules/element-plus/es/components/config-provider/src/hooks/use-global-config.d.ts","./node_modules/element-plus/es/components/config-provider/index.d.ts","./node_modules/element-plus/es/components/container/src/container.vue.d.ts","./node_modules/element-plus/es/components/container/src/aside.vue.d.ts","./node_modules/element-plus/es/components/container/src/footer.vue.d.ts","./node_modules/element-plus/es/components/container/src/header.vue.d.ts","./node_modules/element-plus/es/components/container/src/main.vue.d.ts","./node_modules/element-plus/es/components/container/index.d.ts","./node_modules/element-plus/es/components/countdown/src/countdown.vue.d.ts","./node_modules/element-plus/es/components/countdown/src/countdown.d.ts","./node_modules/element-plus/es/components/countdown/index.d.ts","./node_modules/element-plus/es/components/time-picker/src/common/props.d.ts","./node_modules/element-plus/es/components/time-picker/src/common/picker.vue.d.ts","./node_modules/element-plus/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts","./node_modules/element-plus/es/components/time-picker/src/utils.d.ts","./node_modules/element-plus/es/components/time-picker/src/composables/use-common-picker.d.ts","./node_modules/element-plus/es/components/time-picker/src/constants.d.ts","./node_modules/element-plus/es/components/time-picker/src/time-picker.d.ts","./node_modules/element-plus/es/components/time-picker/index.d.ts","./node_modules/element-plus/es/components/date-picker-panel/src/types.d.ts","./node_modules/element-plus/es/components/date-picker/src/props.d.ts","./node_modules/element-plus/es/components/date-picker/src/date-picker.d.ts","./node_modules/element-plus/es/components/date-picker/src/instance.d.ts","./node_modules/element-plus/es/components/date-picker/index.d.ts","./node_modules/element-plus/es/components/date-picker-panel/src/constants.d.ts","./node_modules/element-plus/es/components/date-picker-panel/src/props/date-picker-panel.d.ts","./node_modules/element-plus/es/components/date-picker-panel/src/date-picker-panel.d.ts","./node_modules/element-plus/es/components/date-picker-panel/src/instance.d.ts","./node_modules/element-plus/es/components/date-picker-panel/index.d.ts","./node_modules/element-plus/es/components/descriptions/src/description.vue.d.ts","./node_modules/element-plus/es/components/descriptions/src/description.d.ts","./node_modules/element-plus/es/components/descriptions/src/description-item.d.ts","./node_modules/element-plus/es/components/descriptions/index.d.ts","./node_modules/element-plus/es/components/divider/src/divider.vue.d.ts","./node_modules/element-plus/es/components/divider/src/divider.d.ts","./node_modules/element-plus/es/components/divider/index.d.ts","./node_modules/element-plus/es/components/drawer/src/drawer.vue.d.ts","./node_modules/element-plus/es/components/drawer/src/drawer.d.ts","./node_modules/element-plus/es/components/drawer/index.d.ts","./node_modules/element-plus/es/components/dropdown/src/dropdown.d.ts","./node_modules/element-plus/es/components/icon/src/icon.vue.d.ts","./node_modules/element-plus/es/components/icon/src/icon.d.ts","./node_modules/element-plus/es/components/dropdown/src/dropdown.vue.d.ts","./node_modules/element-plus/es/components/dropdown/src/instance.d.ts","./node_modules/element-plus/es/components/dropdown/src/tokens.d.ts","./node_modules/element-plus/es/components/dropdown/src/dropdown-item.vue.d.ts","./node_modules/element-plus/es/components/dropdown/src/dropdown-menu.vue.d.ts","./node_modules/element-plus/es/components/dropdown/index.d.ts","./node_modules/element-plus/es/components/empty/src/empty.d.ts","./node_modules/element-plus/es/components/empty/src/empty.vue.d.ts","./node_modules/element-plus/es/components/empty/src/instance.d.ts","./node_modules/element-plus/es/components/empty/index.d.ts","./node_modules/element-plus/es/components/form/src/form-item.d.ts","./node_modules/element-plus/es/components/form/src/utils.d.ts","./node_modules/element-plus/es/components/form/src/form.d.ts","./node_modules/async-validator/dist-types/interface.d.ts","./node_modules/async-validator/dist-types/index.d.ts","./node_modules/element-plus/es/components/form/src/types.d.ts","./node_modules/element-plus/es/components/form/src/constants.d.ts","./node_modules/element-plus/es/components/form/src/hooks/use-form-common-props.d.ts","./node_modules/element-plus/es/components/form/src/hooks/use-form-item.d.ts","./node_modules/element-plus/es/components/form/src/form.vue.d.ts","./node_modules/element-plus/es/components/form/src/form-item.vue.d.ts","./node_modules/element-plus/es/components/form/index.d.ts","./node_modules/element-plus/es/components/icon/index.d.ts","./node_modules/element-plus/es/components/image-viewer/src/image-viewer.vue.d.ts","./node_modules/element-plus/es/components/image-viewer/src/image-viewer.d.ts","./node_modules/element-plus/es/components/image/src/image.vue.d.ts","./node_modules/element-plus/es/components/image/src/image.d.ts","./node_modules/element-plus/es/components/image/index.d.ts","./node_modules/element-plus/es/components/image-viewer/index.d.ts","./node_modules/element-plus/es/components/input-number/src/input-number.vue.d.ts","./node_modules/element-plus/es/components/input-number/src/input-number.d.ts","./node_modules/element-plus/es/components/input-number/index.d.ts","./node_modules/element-plus/es/components/input-tag/src/input-tag.d.ts","./node_modules/element-plus/es/components/input-tag/src/input-tag.vue.d.ts","./node_modules/element-plus/es/components/input-tag/src/instance.d.ts","./node_modules/element-plus/es/components/input-tag/index.d.ts","./node_modules/element-plus/es/components/input-otp/src/input-otp.d.ts","./node_modules/element-plus/es/components/input-otp/src/input-otp.vue.d.ts","./node_modules/element-plus/es/components/input-otp/src/instance.d.ts","./node_modules/element-plus/es/components/input-otp/index.d.ts","./node_modules/element-plus/es/components/menu/src/menu.d.ts","./node_modules/element-plus/es/components/menu/src/types.d.ts","./node_modules/element-plus/es/components/menu/src/menu-item.d.ts","./node_modules/element-plus/es/components/menu/src/menu-item-group.d.ts","./node_modules/element-plus/es/components/menu/src/sub-menu.d.ts","./node_modules/element-plus/es/components/menu/src/menu-item.vue.d.ts","./node_modules/element-plus/es/components/menu/src/menu-item-group.vue.d.ts","./node_modules/element-plus/es/components/menu/src/instance.d.ts","./node_modules/element-plus/es/components/menu/src/tokens.d.ts","./node_modules/element-plus/es/components/menu/index.d.ts","./node_modules/element-plus/es/components/overlay/src/overlay.d.ts","./node_modules/element-plus/es/components/overlay/index.d.ts","./node_modules/element-plus/es/components/page-header/src/page-header.vue.d.ts","./node_modules/element-plus/es/components/page-header/src/page-header.d.ts","./node_modules/element-plus/es/components/page-header/index.d.ts","./node_modules/element-plus/es/components/pagination/src/pagination.d.ts","./node_modules/element-plus/es/components/pagination/src/constants.d.ts","./node_modules/element-plus/es/components/pagination/index.d.ts","./node_modules/element-plus/es/components/popconfirm/src/popconfirm.vue.d.ts","./node_modules/element-plus/es/components/popconfirm/src/popconfirm.d.ts","./node_modules/element-plus/es/components/popconfirm/index.d.ts","./node_modules/element-plus/es/components/progress/src/progress.vue.d.ts","./node_modules/element-plus/es/components/progress/src/progress.d.ts","./node_modules/element-plus/es/components/progress/index.d.ts","./node_modules/element-plus/es/components/radio/src/radio.vue.d.ts","./node_modules/element-plus/es/components/radio/src/radio.d.ts","./node_modules/element-plus/es/components/radio/src/radio-button.vue.d.ts","./node_modules/element-plus/es/components/radio/src/radio-button.d.ts","./node_modules/element-plus/es/components/radio/src/radio-group.vue.d.ts","./node_modules/element-plus/es/components/radio/src/radio-group.d.ts","./node_modules/element-plus/es/components/radio/src/constants.d.ts","./node_modules/element-plus/es/components/radio/index.d.ts","./node_modules/element-plus/es/components/rate/src/rate.vue.d.ts","./node_modules/element-plus/es/components/rate/src/rate.d.ts","./node_modules/element-plus/es/components/rate/index.d.ts","./node_modules/element-plus/es/components/result/src/result.vue.d.ts","./node_modules/element-plus/es/components/result/src/result.d.ts","./node_modules/element-plus/es/components/result/index.d.ts","./node_modules/element-plus/es/components/row/src/row.vue.d.ts","./node_modules/element-plus/es/components/row/src/row.d.ts","./node_modules/element-plus/es/components/row/src/constants.d.ts","./node_modules/element-plus/es/components/row/index.d.ts","./node_modules/element-plus/es/components/scrollbar/src/thumb.vue.d.ts","./node_modules/element-plus/es/components/scrollbar/src/thumb.d.ts","./node_modules/element-plus/es/components/scrollbar/src/util.d.ts","./node_modules/element-plus/es/components/scrollbar/src/constants.d.ts","./node_modules/element-plus/es/components/scrollbar/index.d.ts","./node_modules/element-plus/es/components/select-v2/src/select.types.d.ts","./node_modules/element-plus/es/components/select-v2/src/select-dropdown.d.ts","./node_modules/element-plus/es/components/select-v2/src/useprops.d.ts","./node_modules/@vueuse/shared/dist/index.d.ts","./node_modules/@vueuse/core/dist/index.d.ts","./node_modules/element-plus/es/components/select-v2/src/select.vue.d.ts","./node_modules/element-plus/es/components/select-v2/src/defaults.d.ts","./node_modules/element-plus/es/components/select-v2/src/token.d.ts","./node_modules/element-plus/es/components/select/src/option.d.ts","./node_modules/element-plus/es/components/select/src/type.d.ts","./node_modules/element-plus/es/components/select/src/select.vue.d.ts","./node_modules/element-plus/es/components/select/src/select.d.ts","./node_modules/element-plus/es/components/select/src/token.d.ts","./node_modules/element-plus/es/components/select/src/option.vue.d.ts","./node_modules/element-plus/es/components/select/src/option-group.vue.d.ts","./node_modules/element-plus/es/components/select/index.d.ts","./node_modules/element-plus/es/components/select-v2/index.d.ts","./node_modules/element-plus/es/components/skeleton/src/skeleton.vue.d.ts","./node_modules/element-plus/es/hooks/use-throttle-render/index.d.ts","./node_modules/element-plus/es/components/skeleton/src/skeleton.d.ts","./node_modules/element-plus/es/components/skeleton/src/skeleton-item.vue.d.ts","./node_modules/element-plus/es/components/skeleton/src/skeleton-item.d.ts","./node_modules/element-plus/es/components/skeleton/index.d.ts","./node_modules/element-plus/es/components/slider/src/slider.vue.d.ts","./node_modules/element-plus/es/components/slider/src/marker.d.ts","./node_modules/element-plus/es/components/slider/src/slider.d.ts","./node_modules/element-plus/es/components/slider/src/composables/use-marks.d.ts","./node_modules/element-plus/es/components/slider/src/constants.d.ts","./node_modules/element-plus/es/components/slider/index.d.ts","./node_modules/element-plus/es/components/space/src/space.d.ts","./node_modules/element-plus/es/components/space/src/item.d.ts","./node_modules/element-plus/es/components/space/src/use-space.d.ts","./node_modules/element-plus/es/components/space/index.d.ts","./node_modules/element-plus/es/components/statistic/src/statistic.vue.d.ts","./node_modules/element-plus/es/components/statistic/src/statistic.d.ts","./node_modules/element-plus/es/components/statistic/index.d.ts","./node_modules/element-plus/es/components/steps/src/steps.vue.d.ts","./node_modules/element-plus/es/components/steps/src/steps.d.ts","./node_modules/element-plus/es/components/steps/src/item.vue.d.ts","./node_modules/element-plus/es/components/steps/src/item.d.ts","./node_modules/element-plus/es/components/steps/src/tokens.d.ts","./node_modules/element-plus/es/components/steps/index.d.ts","./node_modules/element-plus/es/components/switch/src/switch.vue.d.ts","./node_modules/element-plus/es/components/switch/src/switch.d.ts","./node_modules/element-plus/es/components/switch/index.d.ts","./node_modules/element-plus/es/components/table-v2/src/constants.d.ts","./node_modules/element-plus/es/components/table-v2/src/types.d.ts","./node_modules/element-plus/es/components/table-v2/src/common.d.ts","./node_modules/element-plus/es/components/table-v2/src/grid.d.ts","./node_modules/element-plus/es/components/table-v2/src/row.d.ts","./node_modules/element-plus/es/components/table-v2/src/table.d.ts","./node_modules/element-plus/es/components/table-v2/src/header-row.d.ts","./node_modules/element-plus/es/components/table-v2/src/components/header-row.d.ts","./node_modules/element-plus/es/components/table-v2/src/components/row.d.ts","./node_modules/element-plus/es/components/table-v2/src/table-v2.d.ts","./node_modules/element-plus/es/components/table-v2/src/auto-resizer.d.ts","./node_modules/element-plus/es/components/table-v2/src/private.d.ts","./node_modules/element-plus/es/components/table-v2/src/table-grid.d.ts","./node_modules/element-plus/es/components/table-v2/src/composables/use-scrollbar.d.ts","./node_modules/element-plus/es/components/table-v2/src/use-table.d.ts","./node_modules/element-plus/es/components/table-v2/src/renderers/header-cell.d.ts","./node_modules/element-plus/es/components/table-v2/src/components/auto-resizer.d.ts","./node_modules/element-plus/es/components/table-v2/index.d.ts","./node_modules/element-plus/es/components/tabs/src/tab-pane.vue.d.ts","./node_modules/element-plus/es/components/tabs/src/tab-pane.d.ts","./node_modules/element-plus/es/components/tabs/src/tab-bar.vue.d.ts","./node_modules/element-plus/es/components/tabs/src/tab-bar.d.ts","./node_modules/element-plus/es/components/tabs/src/tab-nav.d.ts","./node_modules/element-plus/es/components/tabs/src/tabs.d.ts","./node_modules/element-plus/es/components/tabs/src/constants.d.ts","./node_modules/element-plus/es/components/tabs/index.d.ts","./node_modules/element-plus/es/components/text/src/text.d.ts","./node_modules/element-plus/es/components/text/src/text.vue.d.ts","./node_modules/element-plus/es/components/text/index.d.ts","./node_modules/element-plus/es/components/time-select/src/time-select.vue.d.ts","./node_modules/element-plus/es/components/time-select/src/time-select.d.ts","./node_modules/element-plus/es/components/time-select/index.d.ts","./node_modules/element-plus/es/components/timeline/src/timeline.d.ts","./node_modules/element-plus/es/components/timeline/src/timeline-item.vue.d.ts","./node_modules/element-plus/es/components/timeline/src/timeline-item.d.ts","./node_modules/element-plus/es/components/timeline/src/tokens.d.ts","./node_modules/element-plus/es/components/timeline/index.d.ts","./node_modules/element-plus/es/components/transfer/src/transfer-panel.vue.d.ts","./node_modules/element-plus/es/components/transfer/src/transfer-panel.d.ts","./node_modules/element-plus/es/components/transfer/src/transfer.vue.d.ts","./node_modules/element-plus/es/components/transfer/src/transfer.d.ts","./node_modules/element-plus/es/components/transfer/index.d.ts","./node_modules/element-plus/es/components/tree/src/model/usedragnode.d.ts","./node_modules/element-plus/es/components/tree/src/tree.type.d.ts","./node_modules/element-plus/es/components/tree/src/model/tree-store.d.ts","./node_modules/element-plus/es/components/tree/src/model/node.d.ts","./node_modules/element-plus/es/components/tree/src/tree.d.ts","./node_modules/element-plus/es/components/tree/src/tree.vue.d.ts","./node_modules/element-plus/es/components/tree/src/instance.d.ts","./node_modules/element-plus/es/components/tree/src/tokens.d.ts","./node_modules/element-plus/es/components/tree/index.d.ts","./node_modules/element-plus/es/components/tree-select/src/instance.d.ts","./node_modules/element-plus/es/components/tree-select/src/tree-select.vue.d.ts","./node_modules/element-plus/es/components/tree-select/index.d.ts","./node_modules/element-plus/es/components/tree-v2/src/virtual-tree.d.ts","./node_modules/element-plus/es/components/tree-v2/src/types.d.ts","./node_modules/element-plus/es/components/tree-v2/src/tree.vue.d.ts","./node_modules/element-plus/es/components/tree-v2/src/instance.d.ts","./node_modules/element-plus/es/components/tree-v2/index.d.ts","./node_modules/element-plus/es/components/upload/src/ajax.d.ts","./node_modules/element-plus/es/components/upload/src/upload.vue.d.ts","./node_modules/element-plus/es/components/upload/src/upload.d.ts","./node_modules/element-plus/es/components/upload/src/upload-content.vue.d.ts","./node_modules/element-plus/es/components/upload/src/upload-content.d.ts","./node_modules/element-plus/es/components/upload/src/upload-list.vue.d.ts","./node_modules/element-plus/es/components/upload/src/upload-list.d.ts","./node_modules/element-plus/es/components/upload/src/upload-dragger.vue.d.ts","./node_modules/element-plus/es/components/upload/src/upload-dragger.d.ts","./node_modules/element-plus/es/components/upload/src/constants.d.ts","./node_modules/element-plus/es/components/upload/index.d.ts","./node_modules/element-plus/es/components/watermark/src/watermark.vue.d.ts","./node_modules/element-plus/es/components/watermark/src/watermark.d.ts","./node_modules/element-plus/es/components/watermark/index.d.ts","./node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts","./node_modules/@floating-ui/core/dist/floating-ui.core.d.mts","./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts","./node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts","./node_modules/element-plus/es/components/tour/src/content.d.ts","./node_modules/element-plus/es/components/tour/src/types.d.ts","./node_modules/element-plus/es/components/tour/src/tour.vue.d.ts","./node_modules/element-plus/es/components/tour/src/tour.d.ts","./node_modules/element-plus/es/components/tour/src/step.d.ts","./node_modules/element-plus/es/components/tour/src/step.vue.d.ts","./node_modules/element-plus/es/components/tour/index.d.ts","./node_modules/element-plus/es/components/segmented/src/types.d.ts","./node_modules/element-plus/es/components/segmented/src/segmented.vue.d.ts","./node_modules/element-plus/es/components/segmented/src/segmented.d.ts","./node_modules/element-plus/es/components/segmented/index.d.ts","./node_modules/element-plus/es/components/mention/src/types.d.ts","./node_modules/element-plus/es/components/mention/src/helper.d.ts","./node_modules/element-plus/es/components/mention/src/mention.vue.d.ts","./node_modules/element-plus/es/components/mention/src/mention.d.ts","./node_modules/element-plus/es/components/mention/index.d.ts","./node_modules/element-plus/es/components/splitter/src/type.d.ts","./node_modules/element-plus/es/components/splitter/src/splitter.vue.d.ts","./node_modules/element-plus/es/components/splitter/src/splitter.d.ts","./node_modules/element-plus/es/components/splitter/src/split-panel.vue.d.ts","./node_modules/element-plus/es/components/splitter/src/split-panel.d.ts","./node_modules/element-plus/es/components/splitter/index.d.ts","./node_modules/element-plus/es/components/infinite-scroll/src/index.d.ts","./node_modules/element-plus/es/components/infinite-scroll/index.d.ts","./node_modules/element-plus/es/components/loading/src/types.d.ts","./node_modules/element-plus/es/components/loading/src/loading.d.ts","./node_modules/element-plus/es/components/loading/src/service.d.ts","./node_modules/element-plus/es/components/loading/src/directive.d.ts","./node_modules/element-plus/es/components/loading/index.d.ts","./node_modules/element-plus/es/components/message-box/src/message-box.type.d.ts","./node_modules/element-plus/es/components/message-box/src/messagebox.d.ts","./node_modules/element-plus/es/components/message-box/index.d.ts","./node_modules/element-plus/es/components/notification/src/notification.vue.d.ts","./node_modules/element-plus/es/components/notification/src/notification.d.ts","./node_modules/element-plus/es/components/notification/index.d.ts","./node_modules/element-plus/es/components/popover/src/popover.vue.d.ts","./node_modules/element-plus/es/components/popover/src/popover.d.ts","./node_modules/element-plus/es/components/popover/src/directive.d.ts","./node_modules/element-plus/es/components/popover/index.d.ts","./node_modules/element-plus/es/defaults.d.ts","./node_modules/element-plus/es/directives/click-outside/index.d.ts","./node_modules/element-plus/es/directives/repeat-click/index.d.ts","./node_modules/element-plus/es/directives/trap-focus/index.d.ts","./node_modules/element-plus/es/make-installer.d.ts","./node_modules/element-plus/es/hooks/use-popper/index.d.ts","./node_modules/element-plus/es/hooks/use-same-target/index.d.ts","./node_modules/element-plus/es/hooks/use-teleport/index.d.ts","./node_modules/element-plus/es/hooks/use-timeout/index.d.ts","./node_modules/element-plus/es/hooks/use-transition-fallthrough/index.d.ts","./node_modules/element-plus/es/hooks/use-id/index.d.ts","./node_modules/element-plus/es/hooks/use-escape-keydown/index.d.ts","./node_modules/element-plus/es/hooks/use-popper-container/index.d.ts","./node_modules/element-plus/es/hooks/use-intermediate-render/index.d.ts","./node_modules/element-plus/es/hooks/use-forward-ref/index.d.ts","./node_modules/element-plus/es/hooks/use-z-index/index.d.ts","./node_modules/element-plus/es/hooks/use-floating/index.d.ts","./node_modules/element-plus/es/hooks/use-cursor/index.d.ts","./node_modules/element-plus/es/hooks/use-ordered-children/index.d.ts","./node_modules/element-plus/es/hooks/use-size/index.d.ts","./node_modules/element-plus/es/hooks/use-focus-controller/index.d.ts","./node_modules/element-plus/es/hooks/use-composition/index.d.ts","./node_modules/element-plus/es/index.d.ts","./src/renderer/src/types/ipc.ts","./src/renderer/src/types/printer.ts","./src/renderer/src/api/cardsoon.ts","./node_modules/vue-demi/lib/index.d.ts","./node_modules/pinia/dist/pinia.d.ts","./src/renderer/src/stores/app.ts","./src/renderer/src/mocks/printer.ts","./src/renderer/src/stores/config.ts","./src/renderer/src/composables/useappbootstrap.ts","./src/renderer/src/app.vue.ts","./src/renderer/src/components/appfooter.vue.ts","./src/renderer/src/components/appheader.vue.ts","./src/renderer/src/assets/icons/index.ts","./src/renderer/src/components/appicon.vue.ts","./src/renderer/src/stores/distributeform.ts","./src/renderer/src/components/distributesettingsmodal.vue.ts","./src/renderer/src/components/navbutton.vue.ts","./src/renderer/src/components/workflowsteps.vue.ts","./src/shared/viewport.ts","./src/renderer/src/composables/usescale.ts","./src/renderer/src/layouts/appshell.vue.ts","./src/renderer/src/stores/collect.ts","./src/renderer/src/views/datacollectview.vue.ts","./src/renderer/src/stores/job.ts","./src/renderer/src/utils/validatejobconfig.ts","./src/renderer/src/utils/buildjobconfig.ts","./src/renderer/src/views/distributeconfigview.vue.ts","./src/renderer/src/views/distributefailedview.vue.ts","./src/renderer/src/utils/job-state.ts","./src/renderer/src/views/distributerunningview.vue.ts","./src/renderer/src/views/homeview.vue.ts","./__vls_types.d.ts","./node_modules/vite/types/hmrpayload.d.ts","./node_modules/vite/types/customevent.d.ts","./node_modules/vite/types/hot.d.ts","./node_modules/vite/types/importglob.d.ts","./node_modules/vite/types/importmeta.d.ts","./node_modules/vite/client.d.ts","./src/renderer/src/env.d.ts","./src/renderer/src/router/guards.ts","./src/renderer/src/router/index.ts","./src/renderer/src/main.ts","./src/renderer/src/mocks/job-poll.ts","./node_modules/@types/ms/index.d.ts","./node_modules/@types/debug/index.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/ts5.6/globals.typedarray.d.ts","./node_modules/@types/node/ts5.6/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/dom-events.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/ts5.6/index.d.ts","./node_modules/@types/fs-extra/index.d.ts","./node_modules/@types/web-bluetooth/index.d.ts","./node_modules/@types/yauzl/index.d.ts"],"fileInfos":[{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0",{"version":"0","affectsGlobalScope":true},"0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0",{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0","0","0","0",{"version":"0","affectsGlobalScope":true},{"version":"0","affectsGlobalScope":true},"0","0","0","0","0","0","0",{"version":"0","affectsGlobalScope":true},"0"],"root":[[1299,1301],[1304,1330],[1337,1341]],"options":{"composite":true,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":true},"fileIdsList":[[71,73,74,524,538,1303,1348,1353],[66,1348,1353],[1348,1353],[618,1348,1353],[619,1348,1353],[618,619,620,621,622,623,624,625,626,1348,1353],[74,538,1303,1348,1353],[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,1348,1353],[384,1348,1353],[1233,1348,1353],[1234,1235,1348,1353],[492,1348,1353],[486,488,1348,1353],[476,486,487,489,490,491,1348,1353],[486,1348,1353],[476,486,1348,1353],[477,478,479,480,481,482,483,484,485,1348,1353],[477,481,482,485,486,489,1348,1353],[477,478,479,480,481,482,483,484,485,486,487,489,490,1348,1353],[476,477,478,479,480,481,482,483,484,485,1348,1353],[1342,1348,1353],[1348,1353,1366,1400],[675,1348,1353],[676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,1348,1353],[663,665,666,667,668,669,670,671,672,673,674,675,1348,1353],[663,664,666,667,668,669,670,671,672,673,674,675,1348,1353],[664,665,666,667,668,669,670,671,672,673,674,675,1348,1353],[663,664,665,667,668,669,670,671,672,673,674,675,1348,1353],[663,664,665,666,668,669,670,671,672,673,674,675,1348,1353],[663,664,665,666,667,669,670,671,672,673,674,675,1348,1353],[663,664,665,666,667,668,670,671,672,673,674,675,1348,1353],[663,664,665,666,667,668,669,671,672,673,674,675,1348,1353],[663,664,665,666,667,668,669,670,672,673,674,675,1348,1353],[663,664,665,666,667,668,669,670,671,673,674,675,1348,1353],[663,664,665,666,667,668,669,670,671,672,674,675,1348,1353],[663,664,665,666,667,668,669,670,671,672,673,675,1348,1353],[663,664,665,666,667,668,669,670,671,672,673,674,1348,1353],[1348,1350,1353],[1348,1352,1353],[1348,1353,1358,1385],[1348,1353,1354,1365,1366,1373,1382,1393],[1348,1353,1354,1355,1365,1373],[1344,1345,1348,1353],[1348,1353,1356,1394],[1348,1353,1357,1358,1366,1374],[1348,1353,1358,1382,1390],[1348,1353,1359,1361,1365,1373],[1348,1353,1360],[1348,1353,1361,1362],[1348,1353,1365],[1348,1353,1364,1365],[1348,1352,1353,1365],[1348,1353,1365,1366,1367,1382,1393],[1348,1353,1365,1366,1367,1382],[1348,1353,1365,1368,1373,1382,1393],[1348,1353,1365,1366,1368,1369,1373,1382,1390,1393],[1348,1353,1368,1370,1382,1390,1393],[1348,1353,1365,1371],[1348,1353,1372,1393,1398],[1348,1353,1361,1365,1373,1382],[1348,1353,1374],[1348,1353,1375],[1348,1352,1353,1376],[1348,1353,1377,1392,1398],[1348,1353,1378],[1348,1353,1379],[1348,1353,1365,1380],[1348,1353,1380,1381,1394,1396],[1348,1353,1365,1382,1383,1384],[1348,1353,1382,1384],[1348,1353,1382,1383],[1348,1353,1385],[1348,1353,1386],[1348,1353,1365,1388,1389],[1348,1353,1388,1389],[1348,1353,1358,1373,1382,1390],[1348,1353,1391],[1353],[1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399],[1348,1353,1373,1392],[1348,1353,1368,1379,1393],[1348,1353,1358,1394],[1348,1353,1382,1395],[1348,1353,1396],[1348,1353,1397],[1348,1353,1358,1365,1367,1376,1382,1393,1396,1398],[1348,1353,1382,1399],[1348,1353,1365,1382,1400],[65,66,67,1348,1353],[68,1348,1353],[65,1348,1353],[65,70,71,73,1348,1353],[70,71,72,73,1348,1353],[74,538,1118,1303,1348,1353],[1041,1348,1353],[554,1348,1353],[553,1348,1353],[86,87,89,1348,1353],[72,74,82,85,86,538,1303,1348,1353],[72,74,87,538,1303,1348,1353],[89,387,388,389,1348,1353],[74,85,386,538,1303,1348,1353],[74,386,387,538,1303,1348,1353],[388,1348,1353],[89,391,392,394,1348,1353],[74,393,538,1303,1348,1353],[74,85,391,538,1303,1348,1353],[74,392,538,1303,1348,1353],[89,517,518,1348,1353],[74,82,85,88,501,504,511,517,538,1303,1348,1353],[74,506,514,518,538,1303,1348,1353],[89,520,521,522,523,525,526,1348,1353],[74,85,496,501,538,1303,1348,1353],[74,85,496,501,524,538,1303,1348,1353],[72,74,79,82,85,386,538,1303,1348,1353],[72,74,520,538,1303,1348,1353],[74,520,538,1303,1348,1353],[523,525,1348,1353],[89,528,529,530,1348,1353],[74,528,538,1303,1348,1353],[529,1348,1353],[89,532,533,534,1348,1353],[74,85,538,1303,1348,1353],[74,532,538,1303,1348,1353],[533,1348,1353],[89,536,539,540,541,542,543,1348,1353],[74,538,539,1303,1348,1353],[74,536,538,1303,1348,1353],[541,542,1348,1353],[89,545,546,547,549,550,1348,1353],[74,85,538,545,1303,1348,1353],[74,538,548,1303,1348,1353],[74,79,85,386,538,1303,1348,1353],[74,386,538,545,1303,1348,1353],[74,538,545,1303,1348,1353],[547,549,1348,1353],[89,552,556,559,1348,1353],[74,538,552,555,1303,1348,1353],[74,85,538,555,1303,1348,1353],[74,538,555,557,1303,1348,1353],[556,558,1348,1353],[89,561,562,563,1348,1353],[74,538,561,1303,1348,1353],[562,1348,1353],[89,565,566,567,568,569,570,1348,1353],[74,538,566,1303,1348,1353],[74,538,565,1303,1348,1353],[568,569,1348,1353],[82,89,572,573,574,585,586,1348,1353],[74,85,538,573,1303,1348,1353],[74,538,572,573,574,586,1303,1348,1353],[584,585,1348,1353],[74,538,572,574,577,1303,1348,1353],[573,1348,1353],[74,82,538,572,1303,1348,1353],[89,592,593,594,1348,1353],[74,79,85,386,496,501,538,572,573,574,589,591,1303,1348,1353],[74,386,496,501,538,572,573,586,592,1303,1348,1353],[593,1348,1353],[89,596,597,1348,1353],[74,85,538,596,1303,1348,1353],[74,538,597,1303,1348,1353],[89,599,600,601,602,603,604,1348,1353],[74,538,600,1303,1348,1353],[74,79,85,510,538,600,601,1303,1348,1353],[74,538,600,602,1303,1348,1353],[74,79,85,510,538,599,1303,1348,1353],[74,538,602,1303,1348,1353],[89,606,607,1348,1353],[74,82,85,538,606,1303,1348,1353],[74,538,607,1303,1348,1353],[89,616,1348,1353],[89,609,610,611,612,613,614,1348,1353],[74,85,386,538,609,1303,1348,1353],[74,386,538,610,1303,1348,1353],[74,82,85,538,1303,1348,1353],[74,538,609,1303,1348,1353],[612,613,1348,1353],[89,629,630,1348,1353],[74,85,538,627,628,629,1303,1348,1353],[74,506,538,628,630,1303,1348,1353],[627,1348,1353],[89,632,633,1348,1353],[74,79,85,510,511,538,591,627,632,1303,1348,1353],[74,538,628,633,1303,1348,1353],[89,650,651,985,986,1348,1353],[74,85,468,538,545,561,636,640,642,649,1303,1348,1353],[74,85,468,538,545,561,636,640,642,649,650,1303,1348,1353],[74,538,650,1303,1348,1353],[74,469,538,650,985,1303,1348,1353],[89,988,989,990,991,992,1348,1353],[89,994,995,1348,1353],[74,85,538,555,994,1303,1348,1353],[74,538,555,995,1303,1348,1353],[89,1005,1010,1011,1012,1013,1348,1353],[74,470,538,1303,1348,1353],[74,85,524,538,997,1005,1303,1348,1353],[1012,1348,1353],[74,85,538,997,1005,1303,1348,1353],[555,1348,1353],[89,1006,1007,1008,1348,1353],[74,85,501,524,538,997,1005,1303,1348,1353],[1007,1348,1353],[74,85,501,538,997,1005,1303,1348,1353],[89,1015,1016,1017,1348,1353],[74,79,85,538,1015,1303,1348,1353],[74,538,1016,1303,1348,1353],[89,639,640,652,653,1348,1353],[74,85,538,638,639,1303,1348,1353],[74,538,640,1303,1348,1353],[89,1019,1020,1348,1353],[74,85,538,1019,1303,1348,1353],[74,538,1020,1303,1348,1353],[89,1022,1023,1348,1353],[74,85,538,640,1022,1303,1348,1353],[74,538,640,1023,1303,1348,1353],[89,1025,1028,1029,1030,1031,1032,1348,1353],[74,85,89,538,1027,1303,1348,1353],[74,82,85,493,494,496,501,538,545,1303,1348,1353],[74,82,85,89,386,469,494,496,501,511,512,514,538,545,548,549,662,1027,1303,1348,1353],[1028,1348,1353],[74,496,538,1303,1348,1353],[89,1034,1035,1036,1348,1353],[74,538,1034,1303,1348,1353],[1035,1348,1353],[89,1038,1040,1043,1044,1045,1046,1047,1048,1348,1353],[74,538,1043,1303,1348,1353],[74,79,82,85,538,1043,1303,1348,1353],[74,538,1038,1043,1303,1348,1353],[74,79,82,85,538,1038,1043,1303,1348,1353],[74,82,538,1038,1040,1043,1303,1348,1353],[74,79,538,1303,1348,1353],[74,79,82,538,1038,1039,1040,1042,1303,1348,1353],[74,82,538,1038,1043,1303,1348,1353],[89,1026,1027,1348,1353],[74,85,538,1026,1303,1348,1353],[74,538,1027,1303,1348,1353],[89,1051,1052,1348,1353],[74,85,538,1051,1303,1348,1353],[74,538,1052,1303,1348,1353],[89,1053,1054,1348,1353],[74,85,538,1053,1303,1348,1353],[74,538,1052,1054,1303,1348,1353],[74,89,538,1259,1303,1348,1353],[89,1057,1058,1348,1353],[74,79,85,538,1057,1303,1348,1353],[74,538,1058,1303,1348,1353],[89,1064,1065,1066,1348,1353],[74,79,510,538,1303,1348,1353],[74,79,538,1064,1303,1348,1353],[1065,1348,1353],[89,1060,1061,1062,1348,1353],[74,79,85,386,496,538,589,1303,1348,1353],[74,386,496,538,1060,1303,1348,1353],[1061,1348,1353],[89,504,505,506,1348,1353],[74,79,82,85,386,538,1303,1348,1353],[74,386,504,538,1303,1348,1353],[505,1348,1353],[89,641,642,1348,1353],[74,85,386,538,641,1303,1348,1353],[74,538,642,1303,1348,1353],[74,538,1261,1262,1263,1264,1303,1348,1353],[74,538,1261,1262,1303,1348,1353],[74,538,1261,1303,1348,1353],[89,1248,1250,1251,1348,1353],[1248,1348,1353],[74,82,85,88,501,504,511,538,1248,1249,1250,1303,1348,1353],[74,506,514,538,1248,1251,1303,1348,1353],[89,1068,1069,1070,1071,1072,1073,1074,1075,1076,1348,1353],[1068,1072,1073,1074,1348,1353],[74,538,1071,1303,1348,1353],[74,85,538,1069,1303,1348,1353],[74,538,1069,1070,1303,1348,1353],[74,85,496,538,1069,1303,1348,1353],[74,538,1068,1303,1348,1353],[89,1266,1267,1348,1353],[74,79,82,504,538,545,1303,1348,1353],[1266,1348,1353],[89,636,1348,1353],[74,82,85,386,538,635,1303,1348,1353],[74,386,538,636,1303,1348,1353],[89,1270,1348,1353],[74,85,386,538,1269,1303,1348,1353],[74,386,538,1270,1303,1348,1353],[72,74,85,538,1078,1303,1348,1353],[72,74,85,538,1303,1348,1353],[89,1080,1081,1348,1353],[74,85,386,538,1080,1303,1348,1353],[74,386,538,1081,1303,1348,1353],[89,1083,1084,1348,1353],[89,1086,1087,1348,1353],[74,85,386,494,496,511,512,538,545,1086,1303,1348,1353],[74,386,496,538,545,1087,1303,1348,1353],[89,1272,1273,1274,1348,1353],[74,82,85,493,496,501,511,512,538,1272,1303,1348,1353],[74,82,496,501,512,538,1273,1303,1348,1353],[89,493,494,495,496,497,498,499,500,502,503,1348,1353],[74,85,497,538,1303,1348,1353],[74,493,538,1303,1348,1353],[74,85,493,494,496,500,502,538,1303,1348,1353],[74,493,496,501,503,538,1303,1348,1353],[74,85,495,538,1303,1348,1353],[74,494,496,538,1303,1348,1353],[74,494,498,538,1303,1348,1353],[74,494,499,538,1303,1348,1353],[89,1089,1090,1348,1353],[74,85,538,1089,1303,1348,1353],[74,538,1090,1303,1348,1353],[89,1092,1093,1094,1095,1096,1097,1098,1348,1353],[74,538,1097,1303,1348,1353],[74,85,538,1093,1094,1303,1348,1353],[74,538,1095,1303,1348,1353],[74,79,85,538,1096,1303,1348,1353],[74,79,85,538,1092,1303,1348,1353],[74,538,1093,1303,1348,1353],[89,1100,1101,1348,1353],[74,79,85,386,538,1100,1303,1348,1353],[74,386,538,1101,1303,1348,1353],[89,1103,1104,1348,1353],[74,85,538,1103,1303,1348,1353],[74,538,1104,1303,1348,1353],[89,1106,1107,1108,1348,1353],[74,85,538,1106,1303,1348,1353],[74,538,1107,1303,1348,1353],[89,661,662,1111,1112,1113,1348,1353],[74,85,538,661,1303,1348,1353],[74,538,662,1303,1348,1353],[74,538,1110,1303,1348,1353],[74,538,1111,1303,1348,1353],[74,79,538,1244,1246,1303,1348,1353],[74,79,85,88,538,1244,1245,1303,1348,1353],[74,538,1244,1246,1303,1348,1353],[89,1120,1121,1122,1348,1353],[74,85,89,496,501,538,662,1115,1117,1120,1303,1348,1353],[74,524,538,577,578,662,1115,1303,1348,1353],[74,82,85,89,496,501,511,512,514,524,538,589,662,1027,1115,1116,1117,1119,1121,1303,1348,1353],[74,514,538,1115,1121,1303,1348,1353],[74,538,1115,1121,1303,1348,1353],[89,1124,1125,1126,1127,1128,1129,1348,1353],[74,85,538,1124,1303,1348,1353],[74,85,89,496,501,538,662,1117,1125,1303,1348,1353],[74,82,85,89,496,501,511,512,514,538,589,662,1027,1115,1117,1119,1124,1126,1303,1348,1353],[74,538,1124,1303,1348,1353],[74,538,1123,1126,1303,1348,1353],[89,1132,1134,1135,1136,1348,1353],[74,85,538,1135,1303,1348,1353],[74,538,1136,1303,1348,1353],[74,85,538,1132,1133,1303,1348,1353],[74,538,1134,1303,1348,1353],[89,1138,1140,1142,1348,1353],[74,538,1139,1140,1303,1348,1353],[74,538,1140,1141,1303,1348,1353],[74,82,85,501,538,1138,1139,1303,1348,1353],[74,82,85,501,538,1303,1348,1353],[89,1144,1145,1146,1348,1353],[72,74,82,85,538,1303,1348,1353],[74,82,85,538,1144,1303,1348,1353],[89,1254,1255,1256,1257,1348,1353],[74,85,538,1256,1303,1348,1353],[74,538,1257,1303,1348,1353],[74,85,538,1253,1254,1303,1348,1353],[74,538,1253,1255,1303,1348,1353],[89,1148,1149,1348,1353],[74,85,538,555,1148,1303,1348,1353],[74,538,555,1149,1303,1348,1353],[89,1151,1152,1153,1154,1155,1348,1353],[74,85,386,538,1153,1303,1348,1353],[74,386,538,1152,1154,1303,1348,1353],[74,85,538,1151,1303,1348,1353],[74,538,1152,1303,1348,1353],[89,1157,1158,1348,1353],[74,79,85,386,538,1157,1303,1348,1353],[74,538,1158,1303,1348,1353],[89,1160,1161,1164,1165,1169,1170,1171,1175,1176,1348,1353],[74,538,1161,1303,1348,1353],[74,524,538,1303,1348,1353],[74,524,538,1161,1162,1166,1303,1348,1353],[74,85,524,538,1161,1162,1164,1303,1348,1353],[74,538,576,1165,1172,1303,1348,1353],[74,85,538,576,1161,1162,1303,1348,1353],[74,538,1161,1162,1303,1348,1353],[74,469,470,538,1165,1167,1174,1303,1348,1353],[74,85,538,1161,1162,1303,1348,1353],[74,85,524,538,576,583,1161,1162,1163,1303,1348,1353],[74,85,524,538,576,1160,1161,1162,1163,1164,1165,1167,1168,1303,1348,1353],[74,85,538,1160,1161,1162,1163,1164,1303,1348,1353],[74,80,538,1160,1303,1348,1353],[74,538,576,1161,1163,1164,1165,1172,1173,1303,1348,1353],[89,645,649,982,983,1348,1353],[74,538,645,649,1303,1348,1353],[74,469,538,643,645,649,1303,1348,1353],[74,538,644,649,1303,1348,1353],[74,538,644,646,649,1303,1348,1353],[74,514,538,600,601,604,645,649,1303,1348,1353],[74,538,644,645,648,649,1303,1348,1353],[74,469,538,600,601,604,644,645,648,649,1303,1348,1353],[74,538,644,645,647,649,1303,1348,1353],[74,85,89,469,514,538,600,601,604,643,644,645,647,648,649,657,658,659,660,662,981,1303,1348,1353],[74,79,82,85,538,644,645,646,648,1303,1348,1353],[74,514,538,645,649,1303,1348,1353],[89,1178,1179,1181,1182,1183,1184,1348,1353],[74,538,1179,1182,1183,1303,1348,1353],[74,82,85,538,1180,1184,1303,1348,1353],[74,538,1181,1184,1303,1348,1353],[74,85,524,538,1181,1184,1303,1348,1353],[74,85,538,1178,1303,1348,1353],[74,538,1179,1303,1348,1353],[74,82,85,524,538,1182,1184,1303,1348,1353],[89,588,589,1348,1353],[74,79,85,538,588,1303,1348,1353],[74,538,589,1303,1348,1353],[89,1186,1187,1348,1353],[74,79,85,538,1303,1348,1353],[74,79,538,1186,1303,1348,1353],[89,997,998,999,1000,1002,1003,1348,1353],[74,85,493,501,538,555,997,1303,1348,1353],[74,85,493,501,538,555,1303,1348,1353],[74,538,555,997,1303,1348,1353],[74,538,1001,1303,1348,1353],[74,85,501,524,538,997,1303,1348,1353],[555,997,1348,1353],[89,1189,1190,1348,1353],[74,79,85,386,496,538,591,1189,1303,1348,1353],[74,386,496,538,1190,1303,1348,1353],[89,1192,1193,1194,1195,1348,1353],[74,85,386,538,1193,1303,1348,1353],[74,538,1194,1303,1348,1353],[74,538,1192,1303,1348,1353],[89,511,512,513,514,515,1348,1353],[74,82,512,538,1303,1348,1353],[74,85,496,501,503,508,509,510,538,1303,1348,1353],[74,496,501,503,511,538,1303,1348,1353],[74,82,85,473,494,496,500,501,511,512,513,538,1303,1348,1353],[74,82,496,501,511,512,514,538,1303,1348,1353],[74,82,85,494,499,538,1303,1348,1353],[89,1237,1238,1239,1240,1241,1242,1348,1353],[74,85,538,1236,1303,1348,1353],[74,85,386,538,1236,1237,1238,1303,1348,1353],[74,538,1236,1238,1241,1303,1348,1353],[74,85,386,538,1236,1237,1238,1239,1303,1348,1353],[74,538,1236,1238,1240,1303,1348,1353],[89,1199,1200,1348,1353],[74,82,85,88,538,1197,1200,1303,1348,1353],[74,538,1198,1200,1303,1348,1353],[74,82,85,88,538,1199,1303,1348,1353],[89,1211,1212,1348,1353],[1126,1208,1348,1353],[74,85,496,501,538,1126,1203,1303,1348,1353],[89,1216,1217,1348,1353],[1216,1348,1353],[74,538,576,600,1203,1215,1303,1348,1353],[74,386,538,1214,1303,1348,1353],[74,82,85,538,600,1203,1215,1303,1348,1353],[89,1202,1203,1206,1207,1208,1209,1348,1353],[1207,1348,1353],[82,1203,1204,1348,1353],[1203,1205,1348,1353],[74,538,1203,1204,1205,1206,1303,1348,1353],[74,85,89,538,1203,1205,1303,1348,1353],[74,538,1202,1204,1205,1206,1303,1348,1353],[74,82,85,89,469,538,600,601,604,1027,1202,1203,1204,1205,1303,1348,1353],[89,1220,1221,1223,1225,1227,1228,1348,1353],[1221,1348,1353],[74,82,85,538,1219,1221,1222,1303,1348,1353],[74,82,538,1219,1221,1223,1303,1348,1353],[74,85,538,1226,1303,1348,1353],[74,538,1227,1303,1348,1353],[74,85,538,1221,1224,1303,1348,1353],[74,538,1221,1225,1303,1348,1353],[74,82,85,538,1219,1220,1303,1348,1353],[74,82,538,1221,1303,1348,1353],[74,85,538,576,580,581,1303,1348,1353],[74,85,538,576,582,1303,1348,1353],[74,85,538,576,1303,1348,1353],[74,538,575,1303,1348,1353],[89,1230,1231,1348,1353],[74,85,538,1230,1303,1348,1353],[74,538,1231,1303,1348,1353],[74,538,985,1303,1348,1353],[74,538,656,1303,1348,1353],[74,538,1236,1303,1348,1353],[74,82,401,468,538,1303,1348,1353],[74,493,501,538,1303,1348,1353],[74,75,76,77,78,79,80,81,82,87,90,387,389,390,392,395,396,397,398,399,400,469,470,471,472,473,474,475,494,496,497,498,499,500,501,502,503,504,506,507,509,510,511,512,514,515,516,518,519,520,521,522,526,527,528,530,531,532,534,535,536,538,539,540,543,544,545,546,550,551,552,555,559,560,561,563,564,565,566,567,570,571,572,573,574,576,577,578,579,580,582,583,586,587,589,590,591,592,594,595,597,598,600,602,603,605,607,608,609,610,611,614,615,617,630,631,633,634,636,637,640,642,645,649,650,651,652,653,654,655,657,662,984,985,986,987,993,995,996,997,998,999,1000,1002,1004,1005,1006,1008,1009,1010,1011,1013,1014,1016,1017,1018,1020,1021,1023,1024,1025,1027,1029,1030,1033,1034,1036,1037,1038,1040,1043,1044,1045,1046,1049,1050,1052,1054,1055,1056,1058,1059,1060,1062,1063,1064,1066,1067,1068,1069,1070,1071,1072,1075,1076,1077,1078,1079,1081,1082,1083,1084,1085,1087,1088,1090,1091,1093,1095,1097,1098,1099,1101,1102,1104,1105,1107,1108,1109,1111,1112,1113,1114,1121,1122,1124,1126,1127,1130,1131,1133,1134,1136,1137,1140,1142,1143,1144,1145,1146,1147,1149,1150,1152,1154,1155,1156,1158,1159,1160,1161,1164,1165,1169,1170,1171,1175,1177,1179,1181,1182,1183,1184,1185,1186,1188,1190,1191,1192,1194,1195,1196,1200,1201,1202,1203,1206,1208,1209,1210,1211,1213,1217,1218,1221,1223,1225,1227,1228,1229,1231,1232,1237,1238,1240,1241,1243,1246,1247,1248,1251,1252,1255,1257,1258,1260,1261,1262,1263,1264,1265,1266,1268,1270,1271,1273,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1303,1348,1353],[401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,1348,1353],[72,1348,1353],[74,385,538,1303,1348,1353],[74,83,84,538,1303,1348,1353],[74,88,538,1303,1348,1353],[980,1348,1353],[74,538,1302,1348,1353],[1335,1348,1353],[1331,1348,1353],[1332,1348,1353],[1333,1334,1348,1353],[74,537,538,1303,1348,1353],[69,73,1348,1353],[73,1348,1353],[1299,1300,1348,1353],[74,538,1303,1307,1348,1353],[74,538,1303,1306,1348,1353],[74,538,1303,1311,1348,1353],[74,538,1303,1313,1348,1353],[74,538,1303,1311,1312,1348,1353],[74,538,1298,1301,1303,1304,1306,1348,1353],[74,538,1303,1317,1348,1353],[1299,1336,1348,1353],[74,538,1303,1318,1348,1353],[74,538,1298,1303,1308,1336,1339,1348,1353],[74,538,1303,1322,1348,1353],[1300,1348,1353],[538,1304,1322,1348,1353],[538,1321,1325,1326,1328,1329,1338,1348,1353],[1303,1348,1353],[1300,1303,1305,1348,1353],[1313,1348,1353],[74,538,1298,1299,1301,1303,1304,1309,1310,1312,1315,1319,1320,1348,1353],[74,538,1298,1301,1303,1304,1309,1310,1312,1313,1314,1315,1319,1322,1323,1324,1348,1353],[74,538,1301,1303,1304,1309,1310,1312,1313,1315,1316,1319,1322,1348,1353],[74,538,1298,1299,1301,1303,1304,1309,1310,1315,1316,1319,1322,1327,1348,1353],[74,538,1298,1301,1303,1304,1306,1309,1310,1312,1319,1348,1353],[66,1359,1364],[1359,1364],[618,1359,1364],[619,1359,1364],[618,619,620,621,622,623,624,625,626,1359,1364],[74,538,1303,1359,1364],[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,1359,1364],[384,1359,1364],[1233,1359,1364],[1234,1235,1359,1364],[492,1359,1364],[486,488,1359,1364],[476,486,487,489,490,491,1359,1364],[486,1359,1364],[476,486,1359,1364],[477,478,479,480,481,482,483,484,485,1359,1364],[477,481,482,485,486,489,1359,1364],[477,478,479,480,481,482,483,484,485,486,487,489,490,1359,1364],[476,477,478,479,480,481,482,483,484,485,1359,1364],[1342,1359,1364],[1359,1364,1369,1384,1393,1401],[675,1359,1364],[676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,1359,1364],[663,665,666,667,668,669,670,671,672,673,674,675,1359,1364],[663,664,666,667,668,669,670,671,672,673,674,675,1359,1364],[664,665,666,667,668,669,670,671,672,673,674,675,1359,1364],[663,664,665,667,668,669,670,671,672,673,674,675,1359,1364],[663,664,665,666,668,669,670,671,672,673,674,675,1359,1364],[663,664,665,666,667,669,670,671,672,673,674,675,1359,1364],[663,664,665,666,667,668,670,671,672,673,674,675,1359,1364],[663,664,665,666,667,668,669,671,672,673,674,675,1359,1364],[663,664,665,666,667,668,669,670,672,673,674,675,1359,1364],[663,664,665,666,667,668,669,670,671,673,674,675,1359,1364],[663,664,665,666,667,668,669,670,671,672,674,675,1359,1364],[663,664,665,666,667,668,669,670,671,672,673,675,1359,1364],[663,664,665,666,667,668,669,670,671,672,673,674,1359,1364],[74,538,1303,1322,1358,1363],[1357,1362],[1351,1357,1362],[538,1349,1359,1364],[74,538,1298,1303,1347,1353,1359,1364],[1344,1345,1359,1364],[1343,1359,1364],[1355,1356,1359,1364],[1364],[1359,1361,1364],[1359,1363,1364],[1359,1364,1369,1396],[1359,1364,1365,1376,1377,1384,1393],[1359,1364,1365,1366,1376,1384],[1359,1364,1367],[538,1322,1359,1364],[1359,1364,1368,1369,1377,1385],[1359,1364,1369,1393,1401],[1359,1364,1370,1372,1376,1384],[1359,1364,1371],[1359,1364,1372,1373],[1359,1364,1376],[1359,1364,1375,1376],[1359,1363,1364,1376],[1359,1364,1376,1377,1378,1393],[1359,1364,1376,1379,1384,1393],[1359,1364,1376,1377,1379,1380,1384,1393,1401],[1359,1364,1379,1381,1393,1401],[1359,1364,1376,1382],[1359,1364,1372,1376,1384,1393],[1359,1364,1383],[1359,1364,1385],[1359,1364,1386],[1359,1363,1364,1387],[1359,1364,1388,1403],[1359,1364,1389],[1359,1364,1390],[1359,1364,1376,1391],[1347,1359,1364],[1346,1359,1364],[1359,1364,1399,1400],[1359,1364,1391,1392],[1359,1364,1376,1393,1394,1395],[1359,1364,1393,1394],[1359,1364,1393,1395],[1359,1364,1396],[1359,1364,1397],[1359,1364,1376,1399,1400],[1359,1364,1402],[1359,1364,1384,1403],[65,66,67,1359,1364],[68,1359,1364],[65,1359,1364],[65,70,71,73,1359,1364],[70,71,72,73,1359,1364],[74,538,1118,1303,1359,1364],[1041,1359,1364],[554,1359,1364],[553,1359,1364],[86,87,89,1359,1364],[72,74,82,85,86,538,1303,1359,1364],[72,74,87,538,1303,1359,1364],[89,387,388,389,1359,1364],[74,85,386,538,1303,1359,1364],[74,386,387,538,1303,1359,1364],[388,1359,1364],[89,391,392,394,1359,1364],[74,393,538,1303,1359,1364],[74,85,391,538,1303,1359,1364],[74,392,538,1303,1359,1364],[89,517,518,1359,1364],[74,82,85,88,501,504,511,517,538,1303,1359,1364],[74,506,514,518,538,1303,1359,1364],[89,520,521,522,523,525,526,1359,1364],[74,85,496,501,538,1303,1359,1364],[74,85,496,501,524,538,1303,1359,1364],[72,74,79,82,85,386,538,1303,1359,1364],[72,74,520,538,1303,1359,1364],[74,520,538,1303,1359,1364],[523,525,1359,1364],[89,528,529,530,1359,1364],[74,528,538,1303,1359,1364],[529,1359,1364],[89,532,533,534,1359,1364],[74,85,538,1303,1359,1364],[74,532,538,1303,1359,1364],[533,1359,1364],[89,536,539,540,541,542,543,1359,1364],[74,538,539,1303,1359,1364],[74,536,538,1303,1359,1364],[541,542,1359,1364],[89,545,546,547,549,550,1359,1364],[74,85,538,545,1303,1359,1364],[74,538,548,1303,1359,1364],[74,79,85,386,538,1303,1359,1364],[74,386,538,545,1303,1359,1364],[74,538,545,1303,1359,1364],[547,549,1359,1364],[89,552,556,559,1359,1364],[74,538,552,555,1303,1359,1364],[74,85,538,555,1303,1359,1364],[74,538,555,557,1303,1359,1364],[556,558,1359,1364],[89,561,562,563,1359,1364],[74,538,561,1303,1359,1364],[562,1359,1364],[89,565,566,567,568,569,570,1359,1364],[74,538,566,1303,1359,1364],[74,538,565,1303,1359,1364],[568,569,1359,1364],[82,89,572,573,574,585,586,1359,1364],[74,85,538,573,1303,1359,1364],[74,538,572,573,574,586,1303,1359,1364],[584,585,1359,1364],[74,538,572,574,577,1303,1359,1364],[573,1359,1364],[74,82,538,572,1303,1359,1364],[89,592,593,594,1359,1364],[74,79,85,386,496,501,538,572,573,574,589,591,1303,1359,1364],[74,386,496,501,538,572,573,586,592,1303,1359,1364],[593,1359,1364],[89,596,597,1359,1364],[74,85,538,596,1303,1359,1364],[74,538,597,1303,1359,1364],[89,599,600,601,602,603,604,1359,1364],[74,538,600,1303,1359,1364],[74,79,85,510,538,600,601,1303,1359,1364],[74,538,600,602,1303,1359,1364],[74,79,85,510,538,599,1303,1359,1364],[74,538,602,1303,1359,1364],[89,606,607,1359,1364],[74,82,85,538,606,1303,1359,1364],[74,538,607,1303,1359,1364],[89,616,1359,1364],[89,609,610,611,612,613,614,1359,1364],[74,85,386,538,609,1303,1359,1364],[74,386,538,610,1303,1359,1364],[74,82,85,538,1303,1359,1364],[74,538,609,1303,1359,1364],[612,613,1359,1364],[89,629,630,1359,1364],[74,85,538,627,628,629,1303,1359,1364],[74,506,538,628,630,1303,1359,1364],[627,1359,1364],[89,632,633,1359,1364],[74,79,85,510,511,538,591,627,632,1303,1359,1364],[74,538,628,633,1303,1359,1364],[89,650,651,985,986,1359,1364],[74,85,468,538,545,561,636,640,642,649,1303,1359,1364],[74,85,468,538,545,561,636,640,642,649,650,1303,1359,1364],[74,538,650,1303,1359,1364],[74,469,538,650,985,1303,1359,1364],[89,988,989,990,991,992,1359,1364],[89,994,995,1359,1364],[74,85,538,555,994,1303,1359,1364],[74,538,555,995,1303,1359,1364],[89,1005,1010,1011,1012,1013,1359,1364],[74,470,538,1303,1359,1364],[74,85,524,538,997,1005,1303,1359,1364],[1012,1359,1364],[74,85,538,997,1005,1303,1359,1364],[555,1359,1364],[89,1006,1007,1008,1359,1364],[74,85,501,524,538,997,1005,1303,1359,1364],[1007,1359,1364],[74,85,501,538,997,1005,1303,1359,1364],[89,1015,1016,1017,1359,1364],[74,79,85,538,1015,1303,1359,1364],[74,538,1016,1303,1359,1364],[89,639,640,652,653,1359,1364],[74,85,538,638,639,1303,1359,1364],[74,538,640,1303,1359,1364],[89,1019,1020,1359,1364],[74,85,538,1019,1303,1359,1364],[74,538,1020,1303,1359,1364],[89,1022,1023,1359,1364],[74,85,538,640,1022,1303,1359,1364],[74,538,640,1023,1303,1359,1364],[89,1025,1028,1029,1030,1031,1032,1359,1364],[74,85,89,538,1027,1303,1359,1364],[74,82,85,493,494,496,501,538,545,1303,1359,1364],[74,82,85,89,386,469,494,496,501,511,512,514,538,545,548,549,662,1027,1303,1359,1364],[1028,1359,1364],[74,496,538,1303,1359,1364],[89,1034,1035,1036,1359,1364],[74,538,1034,1303,1359,1364],[1035,1359,1364],[89,1038,1040,1043,1044,1045,1046,1047,1048,1359,1364],[74,538,1043,1303,1359,1364],[74,79,82,85,538,1043,1303,1359,1364],[74,538,1038,1043,1303,1359,1364],[74,79,82,85,538,1038,1043,1303,1359,1364],[74,82,538,1038,1040,1043,1303,1359,1364],[74,79,538,1303,1359,1364],[74,79,82,538,1038,1039,1040,1042,1303,1359,1364],[74,82,538,1038,1043,1303,1359,1364],[89,1026,1027,1359,1364],[74,85,538,1026,1303,1359,1364],[74,538,1027,1303,1359,1364],[89,1051,1052,1359,1364],[74,85,538,1051,1303,1359,1364],[74,538,1052,1303,1359,1364],[89,1053,1054,1359,1364],[74,85,538,1053,1303,1359,1364],[74,538,1052,1054,1303,1359,1364],[74,89,538,1259,1303,1359,1364],[89,1057,1058,1359,1364],[74,79,85,538,1057,1303,1359,1364],[74,538,1058,1303,1359,1364],[89,1064,1065,1066,1359,1364],[74,79,510,538,1303,1359,1364],[74,79,538,1064,1303,1359,1364],[1065,1359,1364],[89,1060,1061,1062,1359,1364],[74,79,85,386,496,538,589,1303,1359,1364],[74,386,496,538,1060,1303,1359,1364],[1061,1359,1364],[89,504,505,506,1359,1364],[74,79,82,85,386,538,1303,1359,1364],[74,386,504,538,1303,1359,1364],[505,1359,1364],[89,641,642,1359,1364],[74,85,386,538,641,1303,1359,1364],[74,538,642,1303,1359,1364],[74,538,1261,1262,1263,1264,1303,1359,1364],[74,538,1261,1262,1303,1359,1364],[74,538,1261,1303,1359,1364],[89,1248,1250,1251,1359,1364],[1248,1359,1364],[74,82,85,88,501,504,511,538,1248,1249,1250,1303,1359,1364],[74,506,514,538,1248,1251,1303,1359,1364],[89,1068,1069,1070,1071,1072,1073,1074,1075,1076,1359,1364],[1068,1072,1073,1074,1359,1364],[74,538,1071,1303,1359,1364],[74,85,538,1069,1303,1359,1364],[74,538,1069,1070,1303,1359,1364],[74,85,496,538,1069,1303,1359,1364],[74,538,1068,1303,1359,1364],[89,1266,1267,1359,1364],[74,79,82,504,538,545,1303,1359,1364],[1266,1359,1364],[89,636,1359,1364],[74,82,85,386,538,635,1303,1359,1364],[74,386,538,636,1303,1359,1364],[89,1270,1359,1364],[74,85,386,538,1269,1303,1359,1364],[74,386,538,1270,1303,1359,1364],[72,74,85,538,1078,1303,1359,1364],[72,74,85,538,1303,1359,1364],[89,1080,1081,1359,1364],[74,85,386,538,1080,1303,1359,1364],[74,386,538,1081,1303,1359,1364],[89,1083,1084,1359,1364],[89,1086,1087,1359,1364],[74,85,386,494,496,511,512,538,545,1086,1303,1359,1364],[74,386,496,538,545,1087,1303,1359,1364],[89,1272,1273,1274,1359,1364],[74,82,85,493,496,501,511,512,538,1272,1303,1359,1364],[74,82,496,501,512,538,1273,1303,1359,1364],[89,493,494,495,496,497,498,499,500,502,503,1359,1364],[74,85,497,538,1303,1359,1364],[74,493,538,1303,1359,1364],[74,85,493,494,496,500,502,538,1303,1359,1364],[74,493,496,501,503,538,1303,1359,1364],[74,85,495,538,1303,1359,1364],[74,494,496,538,1303,1359,1364],[74,494,498,538,1303,1359,1364],[74,494,499,538,1303,1359,1364],[89,1089,1090,1359,1364],[74,85,538,1089,1303,1359,1364],[74,538,1090,1303,1359,1364],[89,1092,1093,1094,1095,1096,1097,1098,1359,1364],[74,538,1097,1303,1359,1364],[74,85,538,1093,1094,1303,1359,1364],[74,538,1095,1303,1359,1364],[74,79,85,538,1096,1303,1359,1364],[74,79,85,538,1092,1303,1359,1364],[74,538,1093,1303,1359,1364],[89,1100,1101,1359,1364],[74,79,85,386,538,1100,1303,1359,1364],[74,386,538,1101,1303,1359,1364],[89,1103,1104,1359,1364],[74,85,538,1103,1303,1359,1364],[74,538,1104,1303,1359,1364],[89,1106,1107,1108,1359,1364],[74,85,538,1106,1303,1359,1364],[74,538,1107,1303,1359,1364],[89,661,662,1111,1112,1113,1359,1364],[74,85,538,661,1303,1359,1364],[74,538,662,1303,1359,1364],[74,538,1110,1303,1359,1364],[74,538,1111,1303,1359,1364],[74,79,538,1244,1246,1303,1359,1364],[74,79,85,88,538,1244,1245,1303,1359,1364],[74,538,1244,1246,1303,1359,1364],[89,1120,1121,1122,1359,1364],[74,85,89,496,501,538,662,1115,1117,1120,1303,1359,1364],[74,524,538,577,578,662,1115,1303,1359,1364],[74,82,85,89,496,501,511,512,514,524,538,589,662,1027,1115,1116,1117,1119,1121,1303,1359,1364],[74,514,538,1115,1121,1303,1359,1364],[74,538,1115,1121,1303,1359,1364],[89,1124,1125,1126,1127,1128,1129,1359,1364],[74,85,538,1124,1303,1359,1364],[74,85,89,496,501,538,662,1117,1125,1303,1359,1364],[74,82,85,89,496,501,511,512,514,538,589,662,1027,1115,1117,1119,1124,1126,1303,1359,1364],[74,538,1124,1303,1359,1364],[74,538,1123,1126,1303,1359,1364],[89,1132,1134,1135,1136,1359,1364],[74,85,538,1135,1303,1359,1364],[74,538,1136,1303,1359,1364],[74,85,538,1132,1133,1303,1359,1364],[74,538,1134,1303,1359,1364],[89,1138,1140,1142,1359,1364],[74,538,1139,1140,1303,1359,1364],[74,538,1140,1141,1303,1359,1364],[74,82,85,501,538,1138,1139,1303,1359,1364],[74,82,85,501,538,1303,1359,1364],[89,1144,1145,1146,1359,1364],[72,74,82,85,538,1303,1359,1364],[74,82,85,538,1144,1303,1359,1364],[89,1254,1255,1256,1257,1359,1364],[74,85,538,1256,1303,1359,1364],[74,538,1257,1303,1359,1364],[74,85,538,1253,1254,1303,1359,1364],[74,538,1253,1255,1303,1359,1364],[89,1148,1149,1359,1364],[74,85,538,555,1148,1303,1359,1364],[74,538,555,1149,1303,1359,1364],[89,1151,1152,1153,1154,1155,1359,1364],[74,85,386,538,1153,1303,1359,1364],[74,386,538,1152,1154,1303,1359,1364],[74,85,538,1151,1303,1359,1364],[74,538,1152,1303,1359,1364],[89,1157,1158,1359,1364],[74,79,85,386,538,1157,1303,1359,1364],[74,538,1158,1303,1359,1364],[89,1160,1161,1164,1165,1169,1170,1171,1175,1176,1359,1364],[74,538,1161,1303,1359,1364],[74,524,538,1303,1359,1364],[74,524,538,1161,1162,1166,1303,1359,1364],[74,85,524,538,1161,1162,1164,1303,1359,1364],[74,538,576,1165,1172,1303,1359,1364],[74,85,538,576,1161,1162,1303,1359,1364],[74,538,1161,1162,1303,1359,1364],[74,469,470,538,1165,1167,1174,1303,1359,1364],[74,85,538,1161,1162,1303,1359,1364],[74,85,524,538,576,583,1161,1162,1163,1303,1359,1364],[74,85,524,538,576,1160,1161,1162,1163,1164,1165,1167,1168,1303,1359,1364],[74,85,538,1160,1161,1162,1163,1164,1303,1359,1364],[74,80,538,1160,1303,1359,1364],[74,538,576,1161,1163,1164,1165,1172,1173,1303,1359,1364],[89,645,649,982,983,1359,1364],[74,538,645,649,1303,1359,1364],[74,469,538,643,645,649,1303,1359,1364],[74,538,644,649,1303,1359,1364],[74,538,644,646,649,1303,1359,1364],[74,514,538,600,601,604,645,649,1303,1359,1364],[74,538,644,645,648,649,1303,1359,1364],[74,469,538,600,601,604,644,645,648,649,1303,1359,1364],[74,538,644,645,647,649,1303,1359,1364],[74,85,89,469,514,538,600,601,604,643,644,645,647,648,649,657,658,659,660,662,981,1303,1359,1364],[74,79,82,85,538,644,645,646,648,1303,1359,1364],[74,514,538,645,649,1303,1359,1364],[89,1178,1179,1181,1182,1183,1184,1359,1364],[74,538,1179,1182,1183,1303,1359,1364],[74,82,85,538,1180,1184,1303,1359,1364],[74,538,1181,1184,1303,1359,1364],[74,85,524,538,1181,1184,1303,1359,1364],[74,85,538,1178,1303,1359,1364],[74,538,1179,1303,1359,1364],[74,82,85,524,538,1182,1184,1303,1359,1364],[89,588,589,1359,1364],[74,79,85,538,588,1303,1359,1364],[74,538,589,1303,1359,1364],[89,1186,1187,1359,1364],[74,79,85,538,1303,1359,1364],[74,79,538,1186,1303,1359,1364],[89,997,998,999,1000,1002,1003,1359,1364],[74,85,493,501,538,555,997,1303,1359,1364],[74,85,493,501,538,555,1303,1359,1364],[74,538,555,997,1303,1359,1364],[74,538,1001,1303,1359,1364],[74,85,501,524,538,997,1303,1359,1364],[555,997,1359,1364],[89,1189,1190,1359,1364],[74,79,85,386,496,538,591,1189,1303,1359,1364],[74,386,496,538,1190,1303,1359,1364],[89,1192,1193,1194,1195,1359,1364],[74,85,386,538,1193,1303,1359,1364],[74,538,1194,1303,1359,1364],[74,538,1192,1303,1359,1364],[89,511,512,513,514,515,1359,1364],[74,82,512,538,1303,1359,1364],[74,85,496,501,503,508,509,510,538,1303,1359,1364],[74,496,501,503,511,538,1303,1359,1364],[74,82,85,473,494,496,500,501,511,512,513,538,1303,1359,1364],[74,82,496,501,511,512,514,538,1303,1359,1364],[74,82,85,494,499,538,1303,1359,1364],[89,1237,1238,1239,1240,1241,1242,1359,1364],[74,85,538,1236,1303,1359,1364],[74,85,386,538,1236,1237,1238,1303,1359,1364],[74,538,1236,1238,1241,1303,1359,1364],[74,85,386,538,1236,1237,1238,1239,1303,1359,1364],[74,538,1236,1238,1240,1303,1359,1364],[89,1199,1200,1359,1364],[74,82,85,88,538,1197,1200,1303,1359,1364],[74,538,1198,1200,1303,1359,1364],[74,82,85,88,538,1199,1303,1359,1364],[89,1211,1212,1359,1364],[1126,1208,1359,1364],[74,85,496,501,538,1126,1203,1303,1359,1364],[89,1216,1217,1359,1364],[1216,1359,1364],[74,538,576,600,1203,1215,1303,1359,1364],[74,386,538,1214,1303,1359,1364],[74,82,85,538,600,1203,1215,1303,1359,1364],[89,1202,1203,1206,1207,1208,1209,1359,1364],[1207,1359,1364],[82,1203,1204,1359,1364],[1203,1205,1359,1364],[74,538,1203,1204,1205,1206,1303,1359,1364],[74,85,89,538,1203,1205,1303,1359,1364],[74,538,1202,1204,1205,1206,1303,1359,1364],[74,82,85,89,469,538,600,601,604,1027,1202,1203,1204,1205,1303,1359,1364],[89,1220,1221,1223,1225,1227,1228,1359,1364],[1221,1359,1364],[74,82,85,538,1219,1221,1222,1303,1359,1364],[74,82,538,1219,1221,1223,1303,1359,1364],[74,85,538,1226,1303,1359,1364],[74,538,1227,1303,1359,1364],[74,85,538,1221,1224,1303,1359,1364],[74,538,1221,1225,1303,1359,1364],[74,82,85,538,1219,1220,1303,1359,1364],[74,82,538,1221,1303,1359,1364],[74,85,538,576,580,581,1303,1359,1364],[74,85,538,576,582,1303,1359,1364],[74,85,538,576,1303,1359,1364],[74,538,575,1303,1359,1364],[89,1230,1231,1359,1364],[74,85,538,1230,1303,1359,1364],[74,538,1231,1303,1359,1364],[74,538,985,1303,1359,1364],[74,538,656,1303,1359,1364],[74,538,1236,1303,1359,1364],[74,82,401,468,538,1303,1359,1364],[74,493,501,538,1303,1359,1364],[74,75,76,77,78,79,80,81,82,87,90,387,389,390,392,395,396,397,398,399,400,469,470,471,472,473,474,475,494,496,497,498,499,500,501,502,503,504,506,507,509,510,511,512,514,515,516,518,519,520,521,522,526,527,528,530,531,532,534,535,536,538,539,540,543,544,545,546,550,551,552,555,559,560,561,563,564,565,566,567,570,571,572,573,574,576,577,578,579,580,582,583,586,587,589,590,591,592,594,595,597,598,600,602,603,605,607,608,609,610,611,614,615,617,630,631,633,634,636,637,640,642,645,649,650,651,652,653,654,655,657,662,984,985,986,987,993,995,996,997,998,999,1000,1002,1004,1005,1006,1008,1009,1010,1011,1013,1014,1016,1017,1018,1020,1021,1023,1024,1025,1027,1029,1030,1033,1034,1036,1037,1038,1040,1043,1044,1045,1046,1049,1050,1052,1054,1055,1056,1058,1059,1060,1062,1063,1064,1066,1067,1068,1069,1070,1071,1072,1075,1076,1077,1078,1079,1081,1082,1083,1084,1085,1087,1088,1090,1091,1093,1095,1097,1098,1099,1101,1102,1104,1105,1107,1108,1109,1111,1112,1113,1114,1121,1122,1124,1126,1127,1130,1131,1133,1134,1136,1137,1140,1142,1143,1144,1145,1146,1147,1149,1150,1152,1154,1155,1156,1158,1159,1160,1161,1164,1165,1169,1170,1171,1175,1177,1179,1181,1182,1183,1184,1185,1186,1188,1190,1191,1192,1194,1195,1196,1200,1201,1202,1203,1206,1208,1209,1210,1211,1213,1217,1218,1221,1223,1225,1227,1228,1229,1231,1232,1237,1238,1240,1241,1243,1246,1247,1248,1251,1252,1255,1257,1258,1260,1261,1262,1263,1264,1265,1266,1268,1270,1271,1273,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1303,1359,1364],[401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,1359,1364],[72,1359,1364],[74,385,538,1303,1359,1364],[74,83,84,538,1303,1359,1364],[74,88,538,1303,1359,1364],[980,1359,1364],[74,538,1302,1359,1364],[71,73,74,524,538,1303,1354,1359],[71,73,74,524,538,1303,1350,1355],[71,73,74,524,538,1303,1349,1354],[71,73,74,524,538,1303,1351,1356],[71,73,74,524,538,1303,1352,1357],[71,73,74,524,538,1303,1353,1358],[74,537,538,1303,1359,1364],[69,73,1359,1364],[73,1359,1364],[1299,1300,1357,1362],[1353,1358],[74,538,1298,1301,1303,1304,1306,1357,1362],[71,73,74,524,538,1303,1355,1360],[71,73,74,524,538,1303,1358,1363],[71,73,74,524,538,1303,1359,1364],[1300,1359,1364],[71,73,74,524,538,1303,1356,1361],[71,73,74,524,538,1303,1357,1362],[1303,1359,1364],[1303,1358,1363],[1300,1303,1305,1357,1362],[1313,1357,1362],[1313,1358,1363]],"referencedMap":[[1330,1],[67,2],[66,3],[626,4],[620,3],[624,4],[623,5],[619,4],[618,3],[627,6],[625,5],[621,5],[622,5],[91,7],[92,7],[93,7],[94,7],[95,7],[96,7],[97,7],[98,7],[99,7],[100,7],[101,7],[102,7],[103,7],[104,7],[105,7],[106,7],[107,7],[108,7],[109,7],[110,7],[111,7],[112,7],[113,7],[114,7],[115,7],[116,7],[117,7],[118,7],[119,7],[120,7],[121,7],[122,7],[123,7],[124,7],[125,7],[126,7],[127,7],[128,7],[129,7],[130,7],[131,7],[132,7],[133,7],[134,7],[135,7],[136,7],[137,7],[138,7],[139,7],[140,7],[141,7],[142,7],[143,7],[144,7],[145,7],[146,7],[147,7],[148,7],[149,7],[150,7],[151,7],[152,7],[153,7],[154,7],[155,7],[156,7],[157,7],[158,7],[159,7],[160,7],[161,7],[162,7],[163,7],[164,7],[165,7],[166,7],[167,7],[168,7],[169,7],[170,7],[171,7],[172,7],[173,7],[174,7],[175,7],[176,7],[177,7],[178,7],[179,7],[180,7],[181,7],[182,7],[183,7],[184,7],[185,7],[186,7],[187,7],[188,7],[189,7],[190,7],[191,7],[192,7],[193,7],[194,7],[195,7],[196,7],[197,7],[198,7],[199,7],[200,7],[201,7],[202,7],[203,7],[204,7],[205,7],[206,7],[207,7],[208,7],[209,7],[210,7],[211,7],[212,7],[213,7],[214,7],[215,7],[216,7],[217,7],[218,7],[219,7],[220,7],[221,7],[222,7],[223,7],[224,7],[225,7],[226,7],[227,7],[228,7],[229,7],[230,7],[231,7],[232,7],[384,8],[233,7],[234,7],[235,7],[236,7],[237,7],[238,7],[239,7],[240,7],[241,7],[242,7],[243,7],[244,7],[245,7],[246,7],[247,7],[248,7],[249,7],[250,7],[251,7],[252,7],[253,7],[254,7],[255,7],[256,7],[257,7],[258,7],[259,7],[260,7],[261,7],[262,7],[263,7],[264,7],[265,7],[266,7],[267,7],[268,7],[269,7],[270,7],[271,7],[272,7],[273,7],[274,7],[275,7],[276,7],[277,7],[278,7],[279,7],[280,7],[281,7],[282,7],[283,7],[284,7],[285,7],[286,7],[287,7],[288,7],[289,7],[290,7],[291,7],[292,7],[293,7],[294,7],[295,7],[296,7],[297,7],[298,7],[299,7],[300,7],[301,7],[302,7],[303,7],[304,7],[305,7],[306,7],[307,7],[308,7],[309,7],[310,7],[311,7],[312,7],[313,7],[314,7],[315,7],[316,7],[317,7],[318,7],[319,7],[320,7],[321,7],[322,7],[323,7],[324,7],[325,7],[326,7],[327,7],[328,7],[329,7],[330,7],[331,7],[332,7],[333,7],[334,7],[335,7],[336,7],[337,7],[338,7],[339,7],[340,7],[341,7],[342,7],[343,7],[344,7],[345,7],[346,7],[347,7],[348,7],[349,7],[350,7],[351,7],[352,7],[353,7],[354,7],[355,7],[356,7],[357,7],[358,7],[359,7],[360,7],[361,7],[362,7],[363,7],[364,7],[365,7],[366,7],[367,7],[368,7],[369,7],[370,7],[371,7],[372,7],[373,7],[374,7],[375,7],[376,7],[377,7],[378,7],[379,7],[380,7],[381,7],[382,7],[383,7],[385,9],[1234,10],[1236,11],[1233,3],[1235,3],[493,12],[489,13],[476,3],[492,14],[485,15],[483,16],[482,16],[481,15],[478,16],[479,15],[487,17],[480,16],[477,15],[484,16],[490,18],[491,19],[486,20],[488,16],[1343,21],[1401,22],[676,23],[677,23],[678,23],[679,23],[680,23],[681,23],[682,23],[683,23],[684,23],[685,23],[686,23],[687,23],[688,23],[689,23],[690,23],[691,23],[692,23],[693,23],[694,23],[695,23],[696,23],[697,23],[698,23],[699,23],[700,23],[701,23],[702,23],[703,23],[704,23],[705,23],[706,23],[707,23],[708,23],[709,23],[710,23],[711,23],[712,23],[713,23],[714,23],[715,23],[716,23],[717,23],[718,23],[719,23],[720,23],[721,23],[722,23],[723,23],[724,23],[725,23],[726,23],[727,23],[728,23],[729,23],[730,23],[731,23],[732,23],[733,23],[734,23],[735,23],[736,23],[737,23],[738,23],[739,23],[740,23],[741,23],[742,23],[743,23],[744,23],[745,23],[746,23],[747,23],[748,23],[749,23],[750,23],[751,23],[752,23],[753,23],[754,23],[755,23],[756,23],[757,23],[758,23],[759,23],[760,23],[761,23],[762,23],[763,23],[764,23],[765,23],[766,23],[767,23],[768,23],[769,23],[770,23],[771,23],[772,23],[980,24],[773,23],[774,23],[775,23],[776,23],[777,23],[778,23],[779,23],[780,23],[781,23],[782,23],[783,23],[784,23],[785,23],[786,23],[787,23],[788,23],[789,23],[790,23],[791,23],[792,23],[793,23],[794,23],[795,23],[796,23],[797,23],[798,23],[799,23],[800,23],[801,23],[802,23],[803,23],[804,23],[805,23],[806,23],[807,23],[808,23],[809,23],[810,23],[811,23],[812,23],[813,23],[814,23],[815,23],[816,23],[817,23],[818,23],[819,23],[820,23],[821,23],[822,23],[823,23],[824,23],[825,23],[826,23],[827,23],[828,23],[829,23],[830,23],[831,23],[832,23],[833,23],[834,23],[835,23],[836,23],[837,23],[838,23],[839,23],[840,23],[841,23],[842,23],[843,23],[844,23],[845,23],[846,23],[847,23],[848,23],[849,23],[850,23],[851,23],[852,23],[853,23],[854,23],[855,23],[856,23],[857,23],[858,23],[859,23],[860,23],[861,23],[862,23],[863,23],[864,23],[865,23],[866,23],[867,23],[868,23],[869,23],[870,23],[871,23],[872,23],[873,23],[874,23],[875,23],[876,23],[877,23],[878,23],[879,23],[880,23],[881,23],[882,23],[883,23],[884,23],[885,23],[886,23],[887,23],[888,23],[889,23],[890,23],[891,23],[892,23],[893,23],[894,23],[895,23],[896,23],[897,23],[898,23],[899,23],[900,23],[901,23],[902,23],[903,23],[904,23],[905,23],[906,23],[907,23],[908,23],[909,23],[910,23],[911,23],[912,23],[913,23],[914,23],[915,23],[916,23],[917,23],[918,23],[919,23],[920,23],[921,23],[922,23],[923,23],[924,23],[925,23],[926,23],[927,23],[928,23],[929,23],[930,23],[931,23],[932,23],[933,23],[934,23],[935,23],[936,23],[937,23],[938,23],[939,23],[940,23],[941,23],[942,23],[943,23],[944,23],[945,23],[946,23],[947,23],[948,23],[949,23],[950,23],[951,23],[952,23],[953,23],[954,23],[955,23],[956,23],[957,23],[958,23],[959,23],[960,23],[961,23],[962,23],[963,23],[964,23],[965,23],[966,23],[967,23],[968,23],[969,23],[970,23],[971,23],[972,23],[973,23],[974,23],[975,23],[976,23],[977,23],[978,23],[979,23],[664,25],[665,26],[663,27],[666,28],[667,29],[668,30],[669,31],[670,32],[671,33],[672,34],[673,35],[674,36],[675,37],[1342,3],[1350,38],[1351,38],[1352,39],[1353,40],[1354,41],[1355,42],[1346,43],[1344,3],[1345,3],[1356,44],[1357,45],[1358,46],[1359,47],[1360,48],[1361,49],[1362,49],[1363,50],[1364,51],[1365,52],[1366,53],[1367,54],[1349,3],[1368,55],[1369,56],[1370,57],[1371,58],[1372,59],[1373,60],[1374,61],[1375,62],[1376,63],[1377,64],[1378,65],[1379,66],[1380,67],[1381,68],[1382,69],[1384,70],[1383,71],[1385,72],[1386,73],[1387,3],[1388,74],[1389,75],[1390,76],[1391,77],[1348,78],[1347,3],[1400,79],[1392,80],[1393,81],[1394,82],[1395,83],[1396,84],[1397,85],[1398,86],[1399,87],[1402,3],[1403,88],[68,89],[69,90],[70,91],[71,92],[73,93],[65,3],[1119,94],[1118,7],[1042,95],[1041,3],[72,3],[555,96],[554,97],[553,3],[90,98],[87,99],[86,100],[390,101],[387,102],[388,103],[389,104],[395,105],[393,7],[394,106],[392,107],[391,108],[519,109],[518,110],[517,111],[527,112],[522,113],[525,114],[520,115],[523,116],[521,117],[526,118],[531,119],[528,7],[529,120],[530,121],[535,122],[532,123],[533,124],[534,125],[544,126],[539,123],[542,127],[536,102],[541,128],[540,128],[543,129],[551,130],[548,131],[549,132],[545,133],[547,134],[546,135],[550,136],[560,137],[552,123],[556,138],[557,139],[558,140],[559,141],[564,142],[561,123],[562,143],[563,144],[571,145],[566,123],[569,146],[565,123],[568,147],[567,146],[570,148],[587,149],[574,150],[585,151],[586,152],[584,153],[572,154],[573,155],[595,156],[592,157],[593,158],[594,159],[598,160],[597,161],[596,162],[605,163],[604,164],[602,165],[601,166],[600,167],[599,164],[603,168],[608,169],[607,170],[606,171],[617,172],[616,7],[615,173],[610,174],[613,175],[609,176],[612,177],[611,177],[614,178],[631,179],[630,180],[629,181],[628,182],[634,183],[633,184],[632,185],[987,186],[650,187],[651,188],[985,189],[986,190],[993,191],[989,7],[988,7],[990,7],[991,7],[992,7],[996,192],[995,193],[994,194],[1014,195],[1010,196],[1012,197],[1013,198],[1011,199],[1005,200],[1009,201],[1007,202],[1008,203],[1006,204],[1018,205],[1017,123],[1016,206],[1015,207],[654,208],[653,196],[638,102],[640,209],[639,210],[652,210],[1021,211],[1020,212],[1019,213],[1024,214],[1023,215],[1022,216],[1033,217],[1031,218],[1032,7],[1025,219],[1028,220],[1029,221],[1030,222],[1037,223],[1034,123],[1035,224],[1036,225],[1049,226],[1044,227],[1038,228],[1048,229],[1040,230],[1047,231],[1045,232],[1046,227],[1043,233],[1039,234],[1050,235],[1027,236],[1026,237],[1056,238],[1052,239],[1051,240],[1055,241],[1054,242],[1053,243],[1260,244],[1259,7],[1059,245],[1058,246],[1057,247],[1067,248],[1064,249],[1065,250],[1066,251],[1063,252],[1060,253],[1061,254],[1062,255],[507,256],[504,257],[505,258],[506,259],[655,260],[642,261],[641,262],[1265,263],[1264,264],[1262,265],[1263,264],[1261,7],[1252,266],[1249,267],[1251,268],[1250,269],[1248,3],[1077,270],[1075,271],[1071,7],[1074,272],[1070,273],[1073,274],[1068,275],[1072,123],[1076,3],[1069,276],[1268,277],[1266,278],[1267,279],[637,280],[636,281],[635,282],[1271,283],[1270,284],[1269,285],[1079,286],[1078,287],[1082,288],[1081,289],[1080,290],[1085,291],[1084,7],[1083,123],[1088,292],[1087,293],[1086,294],[1275,295],[1274,7],[1273,296],[1272,297],[501,298],[500,299],[497,7],[494,300],[503,301],[502,302],[496,303],[495,304],[499,305],[498,306],[1091,307],[1090,308],[1089,309],[1099,310],[1098,311],[1095,312],[1094,313],[1097,314],[1096,311],[1093,315],[1092,316],[1102,317],[1101,318],[1100,319],[1105,320],[1104,321],[1103,322],[1109,323],[1108,7],[1107,324],[1106,325],[1114,326],[1113,7],[662,327],[661,328],[1111,329],[1110,330],[1112,330],[1247,331],[1246,332],[1245,333],[1244,3],[1131,334],[1121,335],[1116,336],[1115,3],[1120,337],[1122,338],[1117,339],[1130,340],[1129,7],[1123,123],[1128,341],[1126,342],[1125,343],[1127,344],[1124,345],[1137,346],[1136,347],[1135,348],[1134,349],[1132,350],[1143,351],[1141,352],[1142,353],[1139,123],[1140,354],[1138,355],[1147,356],[1145,7],[1144,357],[1146,358],[1258,359],[1257,360],[1256,361],[1255,362],[1254,363],[1253,7],[1150,364],[1149,365],[1148,366],[1156,367],[1154,368],[1153,369],[1152,370],[1151,371],[1155,3],[1159,372],[1158,373],[1157,374],[1177,375],[1170,7],[1162,376],[1176,377],[1167,378],[1168,379],[1173,380],[1160,3],[1163,381],[1166,382],[1171,3],[1175,383],[1164,384],[1172,385],[1169,386],[1165,387],[1161,388],[1174,389],[984,390],[660,391],[644,392],[643,393],[658,394],[645,394],[983,395],[659,396],[647,397],[648,398],[982,399],[649,400],[646,401],[1185,402],[1184,403],[1181,404],[1180,405],[1182,406],[1179,407],[1178,408],[1183,409],[590,410],[589,411],[588,412],[1188,413],[1186,414],[1187,415],[1004,416],[998,417],[997,418],[1001,419],[1002,420],[999,139],[1003,421],[1000,422],[1191,423],[1190,424],[1189,425],[1196,426],[1194,427],[1193,428],[1192,123],[1195,429],[516,430],[515,431],[511,432],[508,433],[514,434],[513,435],[512,436],[1243,437],[1237,438],[1241,439],[1242,440],[1240,441],[1239,442],[1238,135],[1201,443],[1198,444],[1197,445],[1200,446],[1199,445],[1213,447],[1211,448],[1212,449],[1218,450],[1217,451],[1216,452],[1215,453],[1214,454],[1210,455],[1208,456],[1205,457],[1204,458],[1202,459],[1209,3],[1206,460],[1203,461],[1207,462],[1229,463],[1219,464],[1228,7],[1223,465],[1222,466],[1227,467],[1226,468],[1225,469],[1224,470],[1221,471],[1220,472],[582,473],[583,474],[578,475],[579,475],[577,475],[575,3],[581,7],[580,475],[576,476],[1232,477],[1231,478],[1230,479],[75,3],[80,3],[76,3],[77,3],[81,3],[78,3],[79,3],[1276,480],[1277,7],[657,481],[1278,7],[1279,7],[510,7],[396,7],[397,7],[1297,7],[1293,7],[509,123],[398,7],[399,7],[591,123],[1287,3],[1292,482],[1296,7],[400,7],[1290,7],[1286,7],[1289,7],[469,483],[471,196],[472,7],[473,123],[470,7],[1294,7],[1288,7],[1281,484],[474,7],[475,7],[1282,3],[1295,414],[1283,7],[1133,7],[1284,3],[1285,3],[1291,7],[1298,485],[468,486],[402,3],[403,3],[404,3],[405,3],[406,3],[407,3],[408,3],[409,3],[410,3],[411,3],[412,3],[413,3],[401,3],[414,3],[415,3],[416,3],[417,3],[418,3],[419,3],[420,3],[421,3],[422,3],[423,3],[424,3],[425,3],[426,3],[427,3],[428,3],[429,3],[430,3],[431,3],[432,3],[433,3],[434,3],[435,3],[436,3],[437,3],[438,3],[439,3],[440,3],[441,3],[442,3],[443,3],[444,3],[445,3],[446,3],[447,3],[448,3],[449,3],[450,3],[451,3],[452,3],[453,3],[454,3],[455,3],[456,3],[457,3],[458,3],[459,3],[460,3],[461,3],[462,3],[463,3],[464,3],[466,3],[467,3],[465,3],[1280,480],[82,487],[386,488],[84,123],[85,489],[83,3],[89,490],[981,491],[656,3],[1303,492],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[1336,493],[1332,494],[1331,3],[1333,495],[1334,3],[1335,496],[88,3],[1302,7],[537,7],[538,497],[74,498],[524,499],[1301,500],[1308,501],[1311,3],[1309,7],[1310,502],[1312,503],[1314,504],[1315,505],[1316,7],[1307,506],[1318,507],[1337,508],[1319,509],[1340,510],[1341,511],[1305,512],[1338,513],[1339,514],[1304,515],[1320,515],[1306,516],[1313,515],[1322,515],[1299,3],[1300,3],[1324,517],[1327,3],[1323,517],[1321,518],[1325,519],[1326,520],[1328,521],[1329,522],[1317,3]],"exportedModulesMap":[[1330,1],[67,523],[66,524],[626,525],[620,524],[624,525],[623,526],[619,525],[618,524],[627,527],[625,526],[621,526],[622,526],[91,528],[92,528],[93,528],[94,528],[95,528],[96,528],[97,528],[98,528],[99,528],[100,528],[101,528],[102,528],[103,528],[104,528],[105,528],[106,528],[107,528],[108,528],[109,528],[110,528],[111,528],[112,528],[113,528],[114,528],[115,528],[116,528],[117,528],[118,528],[119,528],[120,528],[121,528],[122,528],[123,528],[124,528],[125,528],[126,528],[127,528],[128,528],[129,528],[130,528],[131,528],[132,528],[133,528],[134,528],[135,528],[136,528],[137,528],[138,528],[139,528],[140,528],[141,528],[142,528],[143,528],[144,528],[145,528],[146,528],[147,528],[148,528],[149,528],[150,528],[151,528],[152,528],[153,528],[154,528],[155,528],[156,528],[157,528],[158,528],[159,528],[160,528],[161,528],[162,528],[163,528],[164,528],[165,528],[166,528],[167,528],[168,528],[169,528],[170,528],[171,528],[172,528],[173,528],[174,528],[175,528],[176,528],[177,528],[178,528],[179,528],[180,528],[181,528],[182,528],[183,528],[184,528],[185,528],[186,528],[187,528],[188,528],[189,528],[190,528],[191,528],[192,528],[193,528],[194,528],[195,528],[196,528],[197,528],[198,528],[199,528],[200,528],[201,528],[202,528],[203,528],[204,528],[205,528],[206,528],[207,528],[208,528],[209,528],[210,528],[211,528],[212,528],[213,528],[214,528],[215,528],[216,528],[217,528],[218,528],[219,528],[220,528],[221,528],[222,528],[223,528],[224,528],[225,528],[226,528],[227,528],[228,528],[229,528],[230,528],[231,528],[232,528],[384,529],[233,528],[234,528],[235,528],[236,528],[237,528],[238,528],[239,528],[240,528],[241,528],[242,528],[243,528],[244,528],[245,528],[246,528],[247,528],[248,528],[249,528],[250,528],[251,528],[252,528],[253,528],[254,528],[255,528],[256,528],[257,528],[258,528],[259,528],[260,528],[261,528],[262,528],[263,528],[264,528],[265,528],[266,528],[267,528],[268,528],[269,528],[270,528],[271,528],[272,528],[273,528],[274,528],[275,528],[276,528],[277,528],[278,528],[279,528],[280,528],[281,528],[282,528],[283,528],[284,528],[285,528],[286,528],[287,528],[288,528],[289,528],[290,528],[291,528],[292,528],[293,528],[294,528],[295,528],[296,528],[297,528],[298,528],[299,528],[300,528],[301,528],[302,528],[303,528],[304,528],[305,528],[306,528],[307,528],[308,528],[309,528],[310,528],[311,528],[312,528],[313,528],[314,528],[315,528],[316,528],[317,528],[318,528],[319,528],[320,528],[321,528],[322,528],[323,528],[324,528],[325,528],[326,528],[327,528],[328,528],[329,528],[330,528],[331,528],[332,528],[333,528],[334,528],[335,528],[336,528],[337,528],[338,528],[339,528],[340,528],[341,528],[342,528],[343,528],[344,528],[345,528],[346,528],[347,528],[348,528],[349,528],[350,528],[351,528],[352,528],[353,528],[354,528],[355,528],[356,528],[357,528],[358,528],[359,528],[360,528],[361,528],[362,528],[363,528],[364,528],[365,528],[366,528],[367,528],[368,528],[369,528],[370,528],[371,528],[372,528],[373,528],[374,528],[375,528],[376,528],[377,528],[378,528],[379,528],[380,528],[381,528],[382,528],[383,528],[385,530],[1234,531],[1236,532],[1233,524],[1235,524],[493,533],[489,534],[476,524],[492,535],[485,536],[483,537],[482,537],[481,536],[478,537],[479,536],[487,538],[480,537],[477,536],[484,537],[490,539],[491,540],[486,541],[488,537],[1343,542],[1401,543],[676,544],[677,544],[678,544],[679,544],[680,544],[681,544],[682,544],[683,544],[684,544],[685,544],[686,544],[687,544],[688,544],[689,544],[690,544],[691,544],[692,544],[693,544],[694,544],[695,544],[696,544],[697,544],[698,544],[699,544],[700,544],[701,544],[702,544],[703,544],[704,544],[705,544],[706,544],[707,544],[708,544],[709,544],[710,544],[711,544],[712,544],[713,544],[714,544],[715,544],[716,544],[717,544],[718,544],[719,544],[720,544],[721,544],[722,544],[723,544],[724,544],[725,544],[726,544],[727,544],[728,544],[729,544],[730,544],[731,544],[732,544],[733,544],[734,544],[735,544],[736,544],[737,544],[738,544],[739,544],[740,544],[741,544],[742,544],[743,544],[744,544],[745,544],[746,544],[747,544],[748,544],[749,544],[750,544],[751,544],[752,544],[753,544],[754,544],[755,544],[756,544],[757,544],[758,544],[759,544],[760,544],[761,544],[762,544],[763,544],[764,544],[765,544],[766,544],[767,544],[768,544],[769,544],[770,544],[771,544],[772,544],[980,545],[773,544],[774,544],[775,544],[776,544],[777,544],[778,544],[779,544],[780,544],[781,544],[782,544],[783,544],[784,544],[785,544],[786,544],[787,544],[788,544],[789,544],[790,544],[791,544],[792,544],[793,544],[794,544],[795,544],[796,544],[797,544],[798,544],[799,544],[800,544],[801,544],[802,544],[803,544],[804,544],[805,544],[806,544],[807,544],[808,544],[809,544],[810,544],[811,544],[812,544],[813,544],[814,544],[815,544],[816,544],[817,544],[818,544],[819,544],[820,544],[821,544],[822,544],[823,544],[824,544],[825,544],[826,544],[827,544],[828,544],[829,544],[830,544],[831,544],[832,544],[833,544],[834,544],[835,544],[836,544],[837,544],[838,544],[839,544],[840,544],[841,544],[842,544],[843,544],[844,544],[845,544],[846,544],[847,544],[848,544],[849,544],[850,544],[851,544],[852,544],[853,544],[854,544],[855,544],[856,544],[857,544],[858,544],[859,544],[860,544],[861,544],[862,544],[863,544],[864,544],[865,544],[866,544],[867,544],[868,544],[869,544],[870,544],[871,544],[872,544],[873,544],[874,544],[875,544],[876,544],[877,544],[878,544],[879,544],[880,544],[881,544],[882,544],[883,544],[884,544],[885,544],[886,544],[887,544],[888,544],[889,544],[890,544],[891,544],[892,544],[893,544],[894,544],[895,544],[896,544],[897,544],[898,544],[899,544],[900,544],[901,544],[902,544],[903,544],[904,544],[905,544],[906,544],[907,544],[908,544],[909,544],[910,544],[911,544],[912,544],[913,544],[914,544],[915,544],[916,544],[917,544],[918,544],[919,544],[920,544],[921,544],[922,544],[923,544],[924,544],[925,544],[926,544],[927,544],[928,544],[929,544],[930,544],[931,544],[932,544],[933,544],[934,544],[935,544],[936,544],[937,544],[938,544],[939,544],[940,544],[941,544],[942,544],[943,544],[944,544],[945,544],[946,544],[947,544],[948,544],[949,544],[950,544],[951,544],[952,544],[953,544],[954,544],[955,544],[956,544],[957,544],[958,544],[959,544],[960,544],[961,544],[962,544],[963,544],[964,544],[965,544],[966,544],[967,544],[968,544],[969,544],[970,544],[971,544],[972,544],[973,544],[974,544],[975,544],[976,544],[977,544],[978,544],[979,544],[664,546],[665,547],[663,548],[666,549],[667,550],[668,551],[669,552],[670,553],[671,554],[672,555],[673,556],[674,557],[675,558],[1342,524],[1350,559],[1351,560],[1352,561],[1353,562],[1354,563],[1355,524],[1346,564],[1344,565],[1345,524],[1356,524],[1357,566],[1358,524],[1359,567],[1360,524],[1361,568],[1362,568],[1363,569],[1364,570],[1365,571],[1366,572],[1367,573],[1349,574],[1368,575],[1369,576],[1370,577],[1371,578],[1372,579],[1373,579],[1374,580],[1375,581],[1376,582],[1377,583],[1378,583],[1379,584],[1380,585],[1381,586],[1382,587],[1384,588],[1383,589],[1385,590],[1386,591],[1387,592],[1388,593],[1389,594],[1390,595],[1391,596],[1348,597],[1347,598],[1400,599],[1392,600],[1393,601],[1394,602],[1395,603],[1396,604],[1397,605],[1398,524],[1399,606],[1402,607],[1403,608],[68,609],[69,610],[70,611],[71,612],[73,613],[65,524],[1119,614],[1118,528],[1042,615],[1041,524],[72,524],[555,616],[554,617],[553,524],[90,618],[87,619],[86,620],[390,621],[387,622],[388,623],[389,624],[395,625],[393,528],[394,626],[392,627],[391,628],[519,629],[518,630],[517,631],[527,632],[522,633],[525,634],[520,635],[523,636],[521,637],[526,638],[531,639],[528,528],[529,640],[530,641],[535,642],[532,643],[533,644],[534,645],[544,646],[539,643],[542,647],[536,622],[541,648],[540,648],[543,649],[551,650],[548,651],[549,652],[545,653],[547,654],[546,655],[550,656],[560,657],[552,643],[556,658],[557,659],[558,660],[559,661],[564,662],[561,643],[562,663],[563,664],[571,665],[566,643],[569,666],[565,643],[568,667],[567,666],[570,668],[587,669],[574,670],[585,671],[586,672],[584,673],[572,674],[573,675],[595,676],[592,677],[593,678],[594,679],[598,680],[597,681],[596,682],[605,683],[604,684],[602,685],[601,686],[600,687],[599,684],[603,688],[608,689],[607,690],[606,691],[617,692],[616,528],[615,693],[610,694],[613,695],[609,696],[612,697],[611,697],[614,698],[631,699],[630,700],[629,701],[628,702],[634,703],[633,704],[632,705],[987,706],[650,707],[651,708],[985,709],[986,710],[993,711],[989,528],[988,528],[990,528],[991,528],[992,528],[996,712],[995,713],[994,714],[1014,715],[1010,716],[1012,717],[1013,718],[1011,719],[1005,720],[1009,721],[1007,722],[1008,723],[1006,724],[1018,725],[1017,643],[1016,726],[1015,727],[654,728],[653,716],[638,622],[640,729],[639,730],[652,730],[1021,731],[1020,732],[1019,733],[1024,734],[1023,735],[1022,736],[1033,737],[1031,738],[1032,528],[1025,739],[1028,740],[1029,741],[1030,742],[1037,743],[1034,643],[1035,744],[1036,745],[1049,746],[1044,747],[1038,748],[1048,749],[1040,750],[1047,751],[1045,752],[1046,747],[1043,753],[1039,754],[1050,755],[1027,756],[1026,757],[1056,758],[1052,759],[1051,760],[1055,761],[1054,762],[1053,763],[1260,764],[1259,528],[1059,765],[1058,766],[1057,767],[1067,768],[1064,769],[1065,770],[1066,771],[1063,772],[1060,773],[1061,774],[1062,775],[507,776],[504,777],[505,778],[506,779],[655,780],[642,781],[641,782],[1265,783],[1264,784],[1262,785],[1263,784],[1261,528],[1252,786],[1249,787],[1251,788],[1250,789],[1248,524],[1077,790],[1075,791],[1071,528],[1074,792],[1070,793],[1073,794],[1068,795],[1072,643],[1076,524],[1069,796],[1268,797],[1266,798],[1267,799],[637,800],[636,801],[635,802],[1271,803],[1270,804],[1269,805],[1079,806],[1078,807],[1082,808],[1081,809],[1080,810],[1085,811],[1084,528],[1083,643],[1088,812],[1087,813],[1086,814],[1275,815],[1274,528],[1273,816],[1272,817],[501,818],[500,819],[497,528],[494,820],[503,821],[502,822],[496,823],[495,824],[499,825],[498,826],[1091,827],[1090,828],[1089,829],[1099,830],[1098,831],[1095,832],[1094,833],[1097,834],[1096,831],[1093,835],[1092,836],[1102,837],[1101,838],[1100,839],[1105,840],[1104,841],[1103,842],[1109,843],[1108,528],[1107,844],[1106,845],[1114,846],[1113,528],[662,847],[661,848],[1111,849],[1110,850],[1112,850],[1247,851],[1246,852],[1245,853],[1244,524],[1131,854],[1121,855],[1116,856],[1115,524],[1120,857],[1122,858],[1117,859],[1130,860],[1129,528],[1123,643],[1128,861],[1126,862],[1125,863],[1127,864],[1124,865],[1137,866],[1136,867],[1135,868],[1134,869],[1132,870],[1143,871],[1141,872],[1142,873],[1139,643],[1140,874],[1138,875],[1147,876],[1145,528],[1144,877],[1146,878],[1258,879],[1257,880],[1256,881],[1255,882],[1254,883],[1253,528],[1150,884],[1149,885],[1148,886],[1156,887],[1154,888],[1153,889],[1152,890],[1151,891],[1155,524],[1159,892],[1158,893],[1157,894],[1177,895],[1170,528],[1162,896],[1176,897],[1167,898],[1168,899],[1173,900],[1160,524],[1163,901],[1166,902],[1171,524],[1175,903],[1164,904],[1172,905],[1169,906],[1165,907],[1161,908],[1174,909],[984,910],[660,911],[644,912],[643,913],[658,914],[645,914],[983,915],[659,916],[647,917],[648,918],[982,919],[649,920],[646,921],[1185,922],[1184,923],[1181,924],[1180,925],[1182,926],[1179,927],[1178,928],[1183,929],[590,930],[589,931],[588,932],[1188,933],[1186,934],[1187,935],[1004,936],[998,937],[997,938],[1001,939],[1002,940],[999,659],[1003,941],[1000,942],[1191,943],[1190,944],[1189,945],[1196,946],[1194,947],[1193,948],[1192,643],[1195,949],[516,950],[515,951],[511,952],[508,953],[514,954],[513,955],[512,956],[1243,957],[1237,958],[1241,959],[1242,960],[1240,961],[1239,962],[1238,655],[1201,963],[1198,964],[1197,965],[1200,966],[1199,965],[1213,967],[1211,968],[1212,969],[1218,970],[1217,971],[1216,972],[1215,973],[1214,974],[1210,975],[1208,976],[1205,977],[1204,978],[1202,979],[1209,524],[1206,980],[1203,981],[1207,982],[1229,983],[1219,984],[1228,528],[1223,985],[1222,986],[1227,987],[1226,988],[1225,989],[1224,990],[1221,991],[1220,992],[582,993],[583,994],[578,995],[579,995],[577,995],[575,524],[581,528],[580,995],[576,996],[1232,997],[1231,998],[1230,999],[75,524],[80,524],[76,524],[77,524],[81,524],[78,524],[79,524],[1276,1000],[1277,528],[657,1001],[1278,528],[1279,528],[510,528],[396,528],[397,528],[1297,528],[1293,528],[509,643],[398,528],[399,528],[591,643],[1287,524],[1292,1002],[1296,528],[400,528],[1290,528],[1286,528],[1289,528],[469,1003],[471,716],[472,528],[473,643],[470,528],[1294,528],[1288,528],[1281,1004],[474,528],[475,528],[1282,524],[1295,934],[1283,528],[1133,528],[1284,524],[1285,524],[1291,528],[1298,1005],[468,1006],[402,524],[403,524],[404,524],[405,524],[406,524],[407,524],[408,524],[409,524],[410,524],[411,524],[412,524],[413,524],[401,524],[414,524],[415,524],[416,524],[417,524],[418,524],[419,524],[420,524],[421,524],[422,524],[423,524],[424,524],[425,524],[426,524],[427,524],[428,524],[429,524],[430,524],[431,524],[432,524],[433,524],[434,524],[435,524],[436,524],[437,524],[438,524],[439,524],[440,524],[441,524],[442,524],[443,524],[444,524],[445,524],[446,524],[447,524],[448,524],[449,524],[450,524],[451,524],[452,524],[453,524],[454,524],[455,524],[456,524],[457,524],[458,524],[459,524],[460,524],[461,524],[462,524],[463,524],[464,524],[466,524],[467,524],[465,524],[1280,1000],[82,1007],[386,1008],[84,643],[85,1009],[83,524],[89,1010],[981,1011],[656,524],[1303,1012],[63,524],[64,524],[12,524],[14,524],[13,524],[2,524],[15,524],[16,524],[17,524],[18,524],[19,524],[20,524],[21,524],[22,524],[3,524],[4,524],[23,524],[27,524],[24,524],[25,524],[26,524],[28,524],[29,524],[30,524],[5,524],[31,524],[32,524],[33,524],[34,524],[6,524],[38,524],[35,524],[36,524],[37,524],[39,524],[7,524],[40,524],[45,524],[46,524],[41,524],[42,524],[43,524],[44,524],[8,524],[50,524],[47,524],[48,524],[49,524],[51,524],[9,524],[52,524],[53,524],[54,524],[57,524],[55,524],[56,524],[58,524],[59,524],[10,524],[1,524],[11,524],[62,524],[61,524],[60,524],[1336,1013],[1332,1014],[1331,1015],[1333,1016],[1334,1017],[1335,1018],[88,524],[1302,528],[537,528],[538,1019],[74,1020],[524,1021],[1301,1022],[1308,501],[1311,1023],[1309,7],[1310,502],[1312,503],[1314,504],[1315,505],[1316,7],[1307,1024],[1318,528],[1337,1025],[1319,509],[1340,1026],[1341,1027],[1305,1028],[1338,1029],[1339,1030],[1304,1031],[1320,1032],[1306,1033],[1313,1031],[1322,1031],[1299,560],[1300,524],[1324,1034],[1327,560],[1323,1035],[1321,518],[1325,519],[1326,520],[1328,521],[1329,522],[1317,3]],"semanticDiagnosticsPerFile":[1330,67,66,626,620,624,623,619,618,627,625,621,622,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,384,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,385,1234,1236,1233,1235,493,489,476,492,485,483,482,481,478,479,487,480,477,484,490,491,486,488,1343,1401,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,980,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,664,665,663,666,667,668,669,670,671,672,673,674,675,1342,1350,1351,1352,1353,1354,1355,1346,1344,1345,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1349,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1384,1383,1385,1386,1387,1388,1389,1390,1391,1348,1347,1400,1392,1393,1394,1395,1396,1397,1398,1399,1402,1403,68,69,70,71,73,65,1119,1118,1042,1041,72,555,554,553,90,87,86,390,387,388,389,395,393,394,392,391,519,518,517,527,522,525,520,523,521,526,531,528,529,530,535,532,533,534,544,539,542,536,541,540,543,551,548,549,545,547,546,550,560,552,556,557,558,559,564,561,562,563,571,566,569,565,568,567,570,587,574,585,586,584,572,573,595,592,593,594,598,597,596,605,604,602,601,600,599,603,608,607,606,617,616,615,610,613,609,612,611,614,631,630,629,628,634,633,632,987,650,651,985,986,993,989,988,990,991,992,996,995,994,1014,1010,1012,1013,1011,1005,1009,1007,1008,1006,1018,1017,1016,1015,654,653,638,640,639,652,1021,1020,1019,1024,1023,1022,1033,1031,1032,1025,1028,1029,1030,1037,1034,1035,1036,1049,1044,1038,1048,1040,1047,1045,1046,1043,1039,1050,1027,1026,1056,1052,1051,1055,1054,1053,1260,1259,1059,1058,1057,1067,1064,1065,1066,1063,1060,1061,1062,507,504,505,506,655,642,641,1265,1264,1262,1263,1261,1252,1249,1251,1250,1248,1077,1075,1071,1074,1070,1073,1068,1072,1076,1069,1268,1266,1267,637,636,635,1271,1270,1269,1079,1078,1082,1081,1080,1085,1084,1083,1088,1087,1086,1275,1274,1273,1272,501,500,497,494,503,502,496,495,499,498,1091,1090,1089,1099,1098,1095,1094,1097,1096,1093,1092,1102,1101,1100,1105,1104,1103,1109,1108,1107,1106,1114,1113,662,661,1111,1110,1112,1247,1246,1245,1244,1131,1121,1116,1115,1120,1122,1117,1130,1129,1123,1128,1126,1125,1127,1124,1137,1136,1135,1134,1132,1143,1141,1142,1139,1140,1138,1147,1145,1144,1146,1258,1257,1256,1255,1254,1253,1150,1149,1148,1156,1154,1153,1152,1151,1155,1159,1158,1157,1177,1170,1162,1176,1167,1168,1173,1160,1163,1166,1171,1175,1164,1172,1169,1165,1161,1174,984,660,644,643,658,645,983,659,647,648,982,649,646,1185,1184,1181,1180,1182,1179,1178,1183,590,589,588,1188,1186,1187,1004,998,997,1001,1002,999,1003,1000,1191,1190,1189,1196,1194,1193,1192,1195,516,515,511,508,514,513,512,1243,1237,1241,1242,1240,1239,1238,1201,1198,1197,1200,1199,1213,1211,1212,1218,1217,1216,1215,1214,1210,1208,1205,1204,1202,1209,1206,1203,1207,1229,1219,1228,1223,1222,1227,1226,1225,1224,1221,1220,582,583,578,579,577,575,581,580,576,1232,1231,1230,75,80,76,77,81,78,79,1276,1277,657,1278,1279,510,396,397,1297,1293,509,398,399,591,1287,1292,1296,400,1290,1286,1289,469,471,472,473,470,1294,1288,1281,474,475,1282,1295,1283,1133,1284,1285,1291,1298,468,402,403,404,405,406,407,408,409,410,411,412,413,401,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,466,467,465,1280,82,386,84,85,83,89,981,656,1303,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,1336,1332,1331,1333,1334,1335,88,1302,537,538,74,524,1301,1308,1311,1309,1310,1312,1314,1315,1316,1307,1318,1337,1319,1340,1341,1305,1338,1339,1304,1320,1306,1313,1322,1299,1300,1324,1327,1323,1321,1325,1326,1328,1329,1317],"affectedFilesPendingEmit":[1301,1308,1311,1309,1310,1312,1314,1315,1316,1307,1318,1319,1340,1341,1305,1338,1339,1304,1320,1306,1313,1322,1299,1300,1324,1327,1323,1321,1325,1326,1328,1329,1317],"emitSignatures":[1299,1300,1301,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329]},"version":"5.3.3"} \ No newline at end of file