diff --git a/uniapp/youjiala/.gitignore b/uniapp/youjiala/.gitignore new file mode 100644 index 0000000..c3ce243 --- /dev/null +++ b/uniapp/youjiala/.gitignore @@ -0,0 +1,33 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +.DS_Store +dist +docs +*.local + +# Editor directories and files +.idea +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? +components.d.ts + +# uni-app / HBuilderX 本地缓存与构建产物 +unpackage/ +.hbuilderx/ + +# 本地 AI 助手资产(工具生成的脚本,不随项目分发) +.agents/ + +# 根目录临时截图等验证产物(src 下的静态资源不受影响) +/*.png diff --git a/uniapp/youjiala/.npmrc b/uniapp/youjiala/.npmrc new file mode 100644 index 0000000..d8b8386 --- /dev/null +++ b/uniapp/youjiala/.npmrc @@ -0,0 +1,3 @@ +strict-peer-dependencies=false +auto-install-peers=true +shamefully-hoist=true diff --git a/uniapp/youjiala/.vscode/extensions.json b/uniapp/youjiala/.vscode/extensions.json new file mode 100644 index 0000000..ae51296 --- /dev/null +++ b/uniapp/youjiala/.vscode/extensions.json @@ -0,0 +1,16 @@ +{ + "recommendations": [ + "vue.volar", + "mrmaoddxxaa.create-uniapp-view", + "uni-helper.uni-helper-vscode", + "uni-helper.uni-app-schemas-vscode", + "uni-helper.uni-highlight-vscode", + "uni-helper.uni-ui-snippets-vscode", + "uni-helper.uni-app-snippets-vscode", + "uni-helper.uni-cloud-snippets-vscode", + "yoavbls.pretty-ts-errors", + "johnsoncodehk.vscode-tsconfig-helper", + "dbaeumer.vscode-eslint", + "antfu.unocss" + ] +} diff --git a/uniapp/youjiala/.vscode/settings.json b/uniapp/youjiala/.vscode/settings.json new file mode 100644 index 0000000..d4bc414 --- /dev/null +++ b/uniapp/youjiala/.vscode/settings.json @@ -0,0 +1,37 @@ +{ + "files.associations": { + "pages.json": "jsonc", + "manifest.json": "jsonc" + }, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit", + "source.organizeImports": "never" + }, + "prettier.enable": false, + "editor.formatOnSave": false, + "eslint.validate": [ + "javascript", + "javascriptreact", + "typescript", + "typescriptreact", + "vue", + "nvue", + "uvue", + "html", + "markdown", + "json", + "jsonc", + "yaml", + "toml", + "xml", + "gql", + "graphql", + "astro", + "svelte", + "css", + "less", + "scss", + "pcss", + "postcss" + ] +} diff --git a/uniapp/youjiala/LICENSE b/uniapp/youjiala/LICENSE new file mode 100644 index 0000000..f0c9c01 --- /dev/null +++ b/uniapp/youjiala/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 前端梦工厂 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/uniapp/youjiala/README-pnpm.md b/uniapp/youjiala/README-pnpm.md new file mode 100644 index 0000000..224227a --- /dev/null +++ b/uniapp/youjiala/README-pnpm.md @@ -0,0 +1,50 @@ +# 使用 pnpm 管理依赖 + +本项目为 pnpm 依赖管理。 + +## 常用命令 + +- 安装依赖: + ```bash + pnpm install + ``` +- 启动开发: + + ```bash + # 运行h5 + pnpm dev:h5 + + # 运行微信小程序 + pnpm dev:mp-weixin + + # 运行安卓APP + pnpm dev:app-android + ``` + +- 构建生产包: + + ```bash + # 运行h5 + pnpm build:h5 + + # 运行微信小程序 + pnpm build:mp-weixin + + # 运行安卓APP + pnpm build:app-android + ``` + +- 添加依赖: + ```bash + pnpm add <包名> + ``` +- 删除依赖: + ```bash + pnpm remove <包名> + ``` + +## 说明 + +- 已自动生成 `pnpm-lock.yaml`,请勿手动修改。 +- 如遇 node_modules 兼容问题,可先删除 node_modules 和 pnpm-lock.yaml 后重新 `pnpm install`。 +- 推荐全员统一使用 pnpm,避免包管理混乱。 diff --git a/uniapp/youjiala/README.en.md b/uniapp/youjiala/README.en.md new file mode 100644 index 0000000..60f5845 --- /dev/null +++ b/uniapp/youjiala/README.en.md @@ -0,0 +1,275 @@ + +

+ English + 中文 +

+ +

+ logo +

+

uView Pro

+

uni-app Vue3 Multi-platform Rapid Development UI Framework

+ +
+ +[![star](https://gitee.com/anyup/uView-Pro/badge/star.svg?theme=gvp)](https://gitee.com/anyup/uView-Pro) +[![fork](https://gitee.com/anyup/uView-Pro/badge/fork.svg?theme=gvp)](https://gitee.com/anyup/uView-Pro) +[![stars](https://img.shields.io/github/stars/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro) +[![forks](https://img.shields.io/github/forks/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro) +[![issues](https://img.shields.io/github/issues/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro/issues) +[![npm version](https://img.shields.io/npm/v/uview-pro)](https://www.npmjs.com/package/uview-pro) +[![Website](https://img.shields.io/badge/uView%20Pro-docs-blue?style=flat-square)](https://uviewpro.cn) +[![node version](https://img.shields.io/badge/node-%3E%3D18-green)](https://nodejs.org/) +[![pnpm version](https://img.shields.io/badge/pnpm-%3E%3D7.30-green)](https://pnpm.io/) +[![license](https://img.shields.io/github/license/anyup/uView-Pro?style=flat-square)](https://en.wikipedia.org/wiki/MIT_License) + +
+ +## Description + +uView UI is an excellent UI framework in the [uni-app](https://uniapp.dcloud.io/) ecosystem, providing comprehensive components and handy tools for efficient development. + +uView Pro is a uni-app ecosystem framework that fully supports Vue3.0 and TypeScript. The baseline version of uView Pro is modified based on uView 1.8.8, completely reconstructed using TypeScript, and now fully supports uni-app Vue3.0. + +## [Official Documentation: https://uviewpro.cn](https://uviewpro.cn) + +## [Quick Start Template: https://starter.uviewpro.cn](https://starter.uviewpro.cn) + +## Features + +- Compatible with Android, iOS, WeChat Mini Programs, H5, QQ Mini Programs, Baidu Mini Programs, Alipay Mini Programs, and Toutiao Mini Programs +- 70+ selected components, rich in functionality, multi-end compatibility, quick integration, and ready to use out of the box +- Numerous handy JS tools for efficient development +- A variety of commonly used pages and layouts, allowing you to focus on logic and achieve more with less effort +- Detailed documentation and modern demo effects +- On-demand import, streamlined bundle size + +## HarmonyOS Preview + +The uView Pro HarmonyOS application has officially been launched in the Huawei App Market, providing you with a complete business scenario demonstration platform. It includes a component library, template samples, scenario cases, and supports one-click copying and downloading to help developers quickly get started and experience the practical value of the components! + +> System requirements: Only supported on HarmonyOS 5.0 and above devices + + + + + + + + +
HarmonyOS
(Scan with browse)
+ +## Mobile Preview + +You can scan the following QR codes with **WeChat** or **mobile browser** to view the best demo effect. + + + + + + + + + + + + + + +
WeChat Mini Program
(Scan with WeChat)
AliPay Mini Program
(Scan with AliPay)
H5
(Scan with browser)
Android
(Scan with browser)
+ +To run the sample project, please [download the source code](https://github.com/anyup/uview-pro) and execute the following commands in the project root directory: + +```bash +pnpm install +pnpm dev +``` + +For more running and building commands, please refer to the [pnpm Running Guide](README-pnpm.md) + +## Links + +- [Github](https://github.com/anyup/uview-pro) +- [Gitee](https://gitee.com/anyup/uview-pro) +- [Official Documentation](https://uviewpro.cn) +- [Changelog](https://github.com/anyup/uView-Pro/blob/master/src/uni_modules/uview-pro/changelog.md) + +## Communication & Feedback + +uView Pro WeChat Group: [Click to Join](https://uviewpro.cn/zh/resource/about.html) + +uView Pro QQ Group: [Click to Join](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=98nSVDldWEbDdq4lxiP4aL7uATfMSlI6&authKey=G2yQJ5MQiKzMldaxBsIfKt17NuJuUw8Fr6zdKLggc6NZXgw4BVbqkU2U3EE994yd&noverify=0&group_code=811732166) + + + + + + + + + + +
WeChat Group
QQ Group
+ +## About PR + +We are very happy to accept high-quality PRs from everyone. However, please note that uView Pro needs to be compatible with multiple platforms (Mini Programs, H5, iOS App, Android App), including nvue and vue pages. + +Therefore, before you fix bugs and submit PRs, please try your best to test compatibility on these platforms. It would be best to include test screenshots to facilitate review. Thank you very much! + +## Installation And Configuration + +uView Pro supports both `npm` and `uni_modules` installation methods, and the configuration is highly consistent. No matter which method you use, you can use easycom for automatic component import, greatly improving development efficiency. The following is a unified configuration guide: + +### 1. Install uView Pro + +- npm installation: + +```bash +npm install uview-pro +# or +yarn add uview-pro +# or +pnpm add uview-pro +``` + +- uni_modules installation: + +Download from HBuilderX plugin market or manually, and place uView Pro in the `uni_modules` directory. + +[Plugin Market: https://ext.dcloud.net.cn/plugin?id=24633](https://ext.dcloud.net.cn/plugin?id=24633) + +### 2. Import uView Pro main library + +Import and register uView Pro in `main.ts`: + +```js +// main.ts +import { createSSRApp } from 'vue'; +// npm method +import uViewPro from 'uview-pro'; +// uni_modules method +// import uViewPro from "@/uni_modules/uview-pro"; + +export function createApp() { + const app = createSSRApp(App); + app.use(uViewPro); + return { + app + }; +} +``` + +### 3. Import global styles + +Import theme styles in `uni.scss`: + +```scss +/* uni.scss */ +// npm method +@import 'uview-pro/theme.scss'; +// uni_modules method +// @import "@/uni_modules/uview-pro/theme.scss"; +``` + +Import base styles at the top of `App.vue`: + +```scss + +``` + +### 4. Configure easycom for automatic component import + +Configure easycom rules in `pages.json` for automatic component import: + +```json +// pages.json +{ + "easycom": { + "autoscan": true, + "custom": { + // npm method + "^u-(.*)": "uview-pro/components/u-$1/u-$1.vue" + // uni_modules method + // "^u-(.*)": "@/uni_modules/uview-pro/components/u-$1/u-$1.vue" + } + }, + "pages": [ + // ... + ] +} +``` + +**Tips** + +- 1. After modifying the `easycom` rules, you need to restart HX or recompile the project. +- 2. Please ensure there is only one easycom field in `pages.json`, otherwise please merge multiple rules yourself. +- 3. It must be placed inside `custom`, otherwise it will not take effect. + +### 5. Volar Type Support + +For global Volar type support in CLI projects, add the following to `tsconfig.json`: + +```json +{ + "compilerOptions": { + // npm method + "types": ["uview-pro/types"] + // uni_modules method + // "types": ["@/uni_modules/uview-pro/types"] + } +} +``` + +> HBuilderX projects do not support the types configuration in tsconfig.json. CLI projects are recommended to configure for the best TS experience. + +### 6. Component Usage + +After configuration, you can use uView Pro components directly in SFC without import or components registration: + +```vue + +``` + +See [Quick Start](https://uviewpro.cn/zh/components/quickstart.html) for more details. + +## Donate to uView Pro + +The documentation and framework source code of uView Pro are developed based on uView UI and are therefore open source and free. If you think uView Pro has helped your development work, you can donate to support uView Pro. There is no threshold for donation, even a cup of cola is appreciated (believe me, this is more meaningful than tipping a streamer). + + + + + + + + + + +
WeChat
Alipay
+ +## Contributors + + + Contributors + + +## License + +uView Pro follows the [MIT](https://en.wikipedia.org/wiki/MIT_License) open source license, which means you do not need to pay any fees or obtain authorization to use uView Pro in your products. + +## Acknowledgements + +Special thanks to the uView UI development team, all contributors to uView UI, and all contributors to uView Pro. + +- [Github](https://github.com/anyup/uview-pro) +- [Gitee](https://gitee.com/anyup/uview-pro) +- [uView UI 1.0](https://github.com/umicro/uView) +- [uView UI 2.0](https://github.com/umicro/uView2.0) diff --git a/uniapp/youjiala/README.md b/uniapp/youjiala/README.md new file mode 100644 index 0000000..b7c7454 --- /dev/null +++ b/uniapp/youjiala/README.md @@ -0,0 +1,272 @@ + +

+ English + 中文 +

+ +

+ logo +

+

uView Pro

+

uni-app Vue3 多平台快速开发的 UI 框架

+ +
+ +[![star](https://gitee.com/anyup/uView-Pro/badge/star.svg?theme=gvp)](https://gitee.com/anyup/uView-Pro) +[![fork](https://gitee.com/anyup/uView-Pro/badge/fork.svg?theme=gvp)](https://gitee.com/anyup/uView-Pro) +[![stars](https://img.shields.io/github/stars/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro) +[![forks](https://img.shields.io/github/forks/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro) +[![issues](https://img.shields.io/github/issues/anyup/uView-Pro?style=flat-square&logo=GitHub)](https://github.com/anyup/uView-Pro/issues) +[![npm version](https://img.shields.io/npm/v/uview-pro)](https://www.npmjs.com/package/uview-pro) +[![Website](https://img.shields.io/badge/uView%20Pro-docs-blue?style=flat-square)](https://uviewpro.cn) +[![node version](https://img.shields.io/badge/node-%3E%3D18-green)](https://nodejs.org/) +[![pnpm version](https://img.shields.io/badge/pnpm-%3E%3D7.30-green)](https://pnpm.io/) +[![license](https://img.shields.io/github/license/anyup/uView-Pro?style=flat-square)](https://en.wikipedia.org/wiki/MIT_License) + +
+ +## 说明 + +`uView UI`,是 [uni-app](https://uniapp.dcloud.io/) 生态优秀的 UI 框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水。 + +`uView Pro`,是全面支持 Vue3.0、TypeScript 的 uni-app 生态框架,uView Pro 的基线版本是基于 uView 1.8.8 修改,使用 TypeScript 完全重构,目前已全面支持 uni-app Vue3.0。 + +## [组件库文档:https://uviewpro.cn](https://uviewpro.cn) + +## [快速启动模板:https://starter.uviewpro.cn](https://starter.uviewpro.cn) + +## 特性 + +- 兼容安卓,iOS,微信小程序,H5,QQ 小程序,百度小程序,支付宝小程序,头条小程序 +- 70+精选组件,功能丰富,多端兼容,让您快速集成,开箱即用 +- 众多贴心的 JS 利器,让您飞镖在手,召之即来,百步穿杨 +- 众多的常用页面和布局,让您专注逻辑,事半功倍 +- 详尽的文档支持,现代化的演示效果 +- 按需引入,精简打包体积 + +## 鸿蒙预览 + +🎉🎉 uView Pro 鸿蒙端应用已正式上线华为鸿蒙应用市场,为您提供完整的业务场景演示平台,包含组件库、模板示例、场景案例等,支持一键复制下载,帮助开发者快速上手并体验组件的实际应用价值! + +> 系统要求:仅支持 HarmonyOS 5.0 及以上版本设备 + + + + + + + + +
鸿蒙应用
(浏览器扫码)
+ +## 手机预览 + +您可以通过**微信**或**手机浏览器**扫描以下二维码,查看最佳的演示效果。 + + + + + + + + + + + + + + +
微信小程序
(微信扫码)
支付宝小程序
(支付宝扫码)
H5
(浏览器扫码)
Android
(浏览器扫码)
+ +运行示例工程,请[下载源码](https://github.com/anyup/uview-pro)后,在项目根目录执行以下命令: + +```bash +pnpm install +pnpm dev +``` + +更多运行和构建命令参考:[pnpm 运行指南](README-pnpm.md) + +## 链接 + +- [Github](https://github.com/anyup/uview-pro) +- [Gitee](https://gitee.com/anyup/uview-pro) +- [官方文档](https://uviewpro.cn) +- [更新日志](https://github.com/anyup/uView-Pro/blob/master/src/uni_modules/uview-pro/changelog.md) + +## 交流反馈 + +`uView Pro` 微信交流群: [点击进入](https://uviewpro.cn/zh/resource/about.html) + +`uView Pro` QQ 交流群: [点击进入](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=98nSVDldWEbDdq4lxiP4aL7uATfMSlI6&authKey=G2yQJ5MQiKzMldaxBsIfKt17NuJuUw8Fr6zdKLggc6NZXgw4BVbqkU2U3EE994yd&noverify=0&group_code=811732166) + + + + + + + + + + +
微信群
QQ群
+ +## 关于 PR + +我们非常乐意接受各位的优质 PR,但在此之前我希望您了解 `uView Pro` 是一个需要兼容多个平台的(小程序、h5、iOS App、Android App)包括 nvue 页面、vue 页面。 + +所以希望在您修复 bug 并提交之前尽可能的去这些平台测试一下兼容性。最好能携带测试截图以方便审核。非常感谢! + +## 安装配置 + +`uView Pro` 支持 `npm` 和 `uni_modules` 两种主流安装方式,配置方式高度一致。无论采用哪种方式,均可通过 `easycom` 实现组件自动引入,极大提升开发效率。以下为统一的配置说明: + +### 1. 安装 uView Pro + +- npm 安装: + +```bash +npm install uview-pro +# 或 +yarn add uview-pro +# 或 +pnpm add uview-pro +``` + +- uni_modules 安装: + +通过 HBuilderX 插件市场或手动下载,将 uView Pro 放入 `uni_modules` 目录。 + +[插件市场:https://ext.dcloud.net.cn/plugin?id=24633](https://ext.dcloud.net.cn/plugin?id=24633) + +### 2. 引入 uView Pro 主库 + +在 `main.ts` 中引入并注册 uView Pro: + +```js +// npm 方式 +import uViewPro from 'uview-pro' +import { createSSRApp } from 'vue' +// uni_modules 方式 +// import uViewPro from "@/uni_modules/uview-pro"; + +export function createApp() { + const app = createSSRApp(App) + app.use(uViewPro) + return { + app + } +} +``` + +### 3. 引入全局样式 + +在 `uni.scss` 中引入主题样式: + +```scss +/* npm 方式 */ +@import 'uview-pro/theme.scss'; +/* uni_modules 方式 */ +/* @import "@/uni_modules/uview-pro/theme.scss"; */ +``` + +在 `App.vue` 首行引入基础样式: + +```scss + +``` + +### 4. 配置 easycom 自动引入组件 + +在 `pages.json` 中配置 `easycom` 规则,实现组件自动引入: + +```json +{ + "easycom": { + "autoscan": true, + "custom": { + // npm 方式 + "^u-(.*)": "uview-pro/components/u-$1/u-$1.vue" + // uni_modules 方式 + // "^u-(.*)": "@/uni_modules/uview-pro/components/u-$1/u-$1.vue" + } + }, + "pages": [] +} +``` + +**温馨提示** + +- 1.修改 `easycom` 规则后需重启 HX 或重新编译项目。 +- 2.请确保 `pages.json` 中只有一个 easycom 字段,否则请自行合并多个规则。 +- 3.一定要放在 `custom` 内,否则无效。 + +### 5. Volar 类型提示支持 + +如需在 `CLI` 项目中获得 `Volar` 的全局类型提示,请在 `tsconfig.json` 中添加: + +```json +{ + "compilerOptions": { + // npm 方式 + "types": ["uview-pro/types"] + // uni_modules 方式 + // "types": ["@/uni_modules/uview-pro/types"] + } +} +``` + +> HBuilderX 项目暂不支持 `tsconfig.json` 的 `types` 配置,`CLI` 项目推荐配置以获得最佳 `TS` 体验。 + +### 6. 组件使用 + +配置完成后,无需 `import` 和 `components` 注册,可直接在 `SFC` 中使用 `uView Pro` 组件: + +```vue + +``` + +请通过[快速上手](https://uviewpro.cn/zh/components/quickstart.html)了解更详细的内容 + +## 捐赠 uView Pro + +`uView Pro` 文档内容和框架源码基于 `uView UI` 二次开发,因此全部开源免费,如果您认为 `uView Pro` 帮到了您的开发工作,您可以捐赠 `uView Pro` 的研发工作,捐赠无门槛,哪怕是一杯可乐也好(相信这比打赏主播更有意义)。 + + + + + + + + + + +
微信
支付宝
+ +## 贡献者 + + + Contributors + + +## 版权信息 + +`uView Pro` 遵循[MIT](https://en.wikipedia.org/wiki/MIT_License)开源协议,意味着您无需支付任何费用,也无需授权,即可将 `uView Pro` 应用到您的产品中。 + +## 鸣谢 + +再次感谢 `uView UI` 开发团队,以及所有为 `uView UI` 的贡献者,以及所有为 `uView Pro` 的贡献者。 + +- [Github](https://github.com/anyup/uview-pro) +- [Gitee](https://gitee.com/anyup/uview-pro) +- [uView UI 1.0](https://github.com/umicro/uView) +- [uView UI 2.0](https://github.com/umicro/uView2.0) diff --git a/uniapp/youjiala/eslint.config.js b/uniapp/youjiala/eslint.config.js new file mode 100644 index 0000000..ab92524 --- /dev/null +++ b/uniapp/youjiala/eslint.config.js @@ -0,0 +1,10 @@ +import uniHelper from '@uni-helper/eslint-config' + +export default uniHelper({ + // match the project formatter (Prettier defaults) and CloudBuilder generated code: double quotes + semicolons + stylistic: { + indent: 2, + quotes: 'double', + semi: true, + }, +}) diff --git a/uniapp/youjiala/harmony-configs/build-profile.json5 b/uniapp/youjiala/harmony-configs/build-profile.json5 new file mode 100644 index 0000000..fdd507a --- /dev/null +++ b/uniapp/youjiala/harmony-configs/build-profile.json5 @@ -0,0 +1,82 @@ +{ + app: { + signingConfigs: [ + { + name: 'default', + type: 'HarmonyOS', + material: { + certpath: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro.cer', + keyAlias: 'uviewpro', + keyPassword: '', + profile: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro_prodRelease.p7b', + signAlg: 'SHA256withECDSA', + storeFile: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro.p12', + storePassword: '' + } + }, + { + name: 'release', + type: 'HarmonyOS', + material: { + storeFile: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro.p12', + storePassword: '', + keyAlias: 'uviewpro', + keyPassword: '', + signAlg: 'SHA256withECDSA', + profile: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro_prodRelease.p7b', + certpath: 'D:/workspace/anyup/uView-Pro-Starter/docs/uviewpro.cer' + } + } + ], + products: [ + { + name: 'default', + signingConfig: 'default', + targetSdkVersion: '6.0.0(20)', + compatibleSdkVersion: '5.0.0(12)', + compatibleSdkVersionStage: 'beta6', + runtimeOS: 'HarmonyOS', + buildOption: { + strictMode: { + caseSensitiveCheck: true, + useNormalizedOHMUrl: true + } + } + }, + { + name: 'release', + signingConfig: 'release', + targetSdkVersion: '6.0.0(20)', + compatibleSdkVersion: '5.0.0(12)', + compatibleSdkVersionStage: 'beta6', + runtimeOS: 'HarmonyOS', + buildOption: { + strictMode: { + caseSensitiveCheck: true, + useNormalizedOHMUrl: true + } + } + } + ], + buildModeSet: [ + { + name: 'debug' + }, + { + name: 'release' + } + ] + }, + modules: [ + { + name: 'entry', + srcPath: './entry', + targets: [ + { + name: 'default', + applyToProducts: ['default'] + } + ] + } + ] +} diff --git a/uniapp/youjiala/index.html b/uniapp/youjiala/index.html new file mode 100644 index 0000000..1186200 --- /dev/null +++ b/uniapp/youjiala/index.html @@ -0,0 +1,21 @@ + + + + + + + + + + + +
+ + + diff --git a/uniapp/youjiala/package-lock.json b/uniapp/youjiala/package-lock.json new file mode 100644 index 0000000..d5b7d85 --- /dev/null +++ b/uniapp/youjiala/package-lock.json @@ -0,0 +1,19980 @@ +{ + "name": "youjiala", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "youjiala", + "version": "1.0.0", + "dependencies": { + "@dcloudio/uni-app": "3.0.0-4080720251210001", + "@dcloudio/uni-app-harmony": "3.0.0-4080720251210001", + "@dcloudio/uni-app-plus": "3.0.0-4080720251210001", + "@dcloudio/uni-components": "3.0.0-4080720251210001", + "@dcloudio/uni-h5": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-jd": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-lark": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-qq": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080720251210001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080720251210001", + "crypto-js": "^4.1.1", + "dayjs": "^1.11.23", + "pinia": "2.2.4", + "pinia-plugin-persistedstate": "3.2.1", + "uview-pro": "^0.6.15", + "vue": "3.4.21", + "vue-router": "4.5.1", + "wxmp-rsa": "^2.1.0", + "z-paging": "^2.8.8" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080720251210001", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-stacktracey": "3.0.0-4080720251210001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080720251210001", + "@iconify-json/carbon": "^1.2.15", + "@mini-types/alipay": "^3.0.14", + "@types/crypto-js": "^4.2.2", + "@types/node": "^25.0.3", + "@uni-helper/eslint-config": "^0.6.1", + "@uni-helper/plugin-uni": "0.1.0", + "@uni-helper/uni-types": "^1.0.0-alpha.7", + "@uni-helper/unocss-preset-uni": "^0.2.11", + "@uni-helper/vite-plugin-uni-components": "^0.2.6", + "@vue/runtime-core": "3.4.21", + "@vue/tsconfig": "^0.8.1", + "eslint": "^9.39.2", + "miniprogram-api-typings": "^4.1.2", + "sass": "1.64.2", + "typescript": "^5.9.3", + "unocss": "^66.10.1", + "vite": "5.2.8", + "vue-tsc": "^3.2.1" + }, + "engines": { + "node": ">=18.0.0", + "pnpm": ">=10.0.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@antfu/eslint-config": { + "version": "6.7.3", + "resolved": "https://registry.npmmirror.com/@antfu/eslint-config/-/eslint-config-6.7.3.tgz", + "integrity": "sha512-0tYYzY59uLnxWgbP9xpuxpvodTcWDacj439kTAJZB3sn7O0BnPfVxTnRvleGYaKCEALBZkzdC/wCho9FD7ICLw==", + "dev": true, + "dependencies": { + "@antfu/install-pkg": "^1.1.0", + "@clack/prompts": "^0.11.0", + "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0", + "@eslint/markdown": "^7.5.1", + "@stylistic/eslint-plugin": "^5.6.1", + "@typescript-eslint/eslint-plugin": "^8.50.0", + "@typescript-eslint/parser": "^8.50.0", + "@vitest/eslint-plugin": "^1.5.4", + "ansis": "^4.2.0", + "cac": "^6.7.14", + "eslint-config-flat-gitignore": "^2.1.0", + "eslint-flat-config-utils": "^2.1.4", + "eslint-merge-processors": "^2.0.0", + "eslint-plugin-antfu": "^3.1.1", + "eslint-plugin-command": "^3.4.0", + "eslint-plugin-import-lite": "^0.4.0", + "eslint-plugin-jsdoc": "^61.5.0", + "eslint-plugin-jsonc": "^2.21.0", + "eslint-plugin-n": "^17.23.1", + "eslint-plugin-no-only-tests": "^3.3.0", + "eslint-plugin-perfectionist": "^4.15.1", + "eslint-plugin-pnpm": "^1.4.3", + "eslint-plugin-regexp": "^2.10.0", + "eslint-plugin-toml": "^0.12.0", + "eslint-plugin-unicorn": "^62.0.0", + "eslint-plugin-unused-imports": "^4.3.0", + "eslint-plugin-vue": "^10.6.2", + "eslint-plugin-yml": "^1.19.1", + "eslint-processor-vue-blocks": "^2.0.0", + "globals": "^16.5.0", + "jsonc-eslint-parser": "^2.4.2", + "local-pkg": "^1.1.2", + "parse-gitignore": "^2.0.0", + "toml-eslint-parser": "^0.10.1", + "vue-eslint-parser": "^10.2.0", + "yaml-eslint-parser": "^1.3.2" + }, + "bin": { + "eslint-config": "bin/index.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@eslint-react/eslint-plugin": "^2.0.1", + "@next/eslint-plugin-next": ">=15.0.0", + "@prettier/plugin-xml": "^3.4.1", + "@unocss/eslint-plugin": ">=0.50.0", + "astro-eslint-parser": "^1.0.2", + "eslint": "^9.10.0", + "eslint-plugin-astro": "^1.2.0", + "eslint-plugin-format": ">=0.1.0", + "eslint-plugin-jsx-a11y": ">=6.10.2", + "eslint-plugin-react-hooks": "^7.0.0", + "eslint-plugin-react-refresh": "^0.4.19", + "eslint-plugin-solid": "^0.14.3", + "eslint-plugin-svelte": ">=2.35.1", + "eslint-plugin-vuejs-accessibility": "^2.4.1", + "prettier-plugin-astro": "^0.14.0", + "prettier-plugin-slidev": "^1.0.5", + "svelte-eslint-parser": ">=0.37.0" + }, + "peerDependenciesMeta": { + "@eslint-react/eslint-plugin": { + "optional": true + }, + "@next/eslint-plugin-next": { + "optional": true + }, + "@prettier/plugin-xml": { + "optional": true + }, + "@unocss/eslint-plugin": { + "optional": true + }, + "astro-eslint-parser": { + "optional": true + }, + "eslint-plugin-astro": { + "optional": true + }, + "eslint-plugin-format": { + "optional": true + }, + "eslint-plugin-jsx-a11y": { + "optional": true + }, + "eslint-plugin-react-hooks": { + "optional": true + }, + "eslint-plugin-react-refresh": { + "optional": true + }, + "eslint-plugin-solid": { + "optional": true + }, + "eslint-plugin-svelte": { + "optional": true + }, + "eslint-plugin-vuejs-accessibility": { + "optional": true + }, + "prettier-plugin-astro": { + "optional": true + }, + "prettier-plugin-slidev": { + "optional": true + }, + "svelte-eslint-parser": { + "optional": true + } + } + }, + "node_modules/@antfu/eslint-config/node_modules/@vitest/eslint-plugin": { + "version": "1.6.27", + "resolved": "https://registry.npmmirror.com/@vitest/eslint-plugin/-/eslint-plugin-1.6.27.tgz", + "integrity": "sha512-X1RCAfwbatG4GFbJ/1PIHP9MSZMt0JJThqbYID+vS4L783k6QGlLPe421wQE8dHXuGCcenVLsydiM4qzsYWxhg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "^8.58.0", + "@typescript-eslint/utils": "^8.58.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "*", + "eslint": ">=8.57.0", + "typescript": ">=5.0.0", + "vitest": "*" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, + "node_modules/@antfu/eslint-config/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/@antfu/install-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@antfu/install-pkg/-/install-pkg-1.1.0.tgz", + "integrity": "sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==", + "dev": true, + "dependencies": { + "package-manager-detector": "^1.3.0", + "tinyexec": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "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.8", + "resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.29.8.tgz", + "integrity": "sha512-gZbepsdh3WDtgZKWL+vTPh71LSBrm/Y4/QDZBVCcYfmeTEEuoOYwlSy+G1StfJg+/Zy550u/3TATbm7qDbbMtg==", + "dependencies": { + "@babel/parser": "^7.29.8", + "@babel/types": "^7.29.8", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/generator/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.29.7.tgz", + "integrity": "sha512-IY3ZD9Tmooqr3TUhc3DUWxiuo8xx1DWLhd5M7hQ+ZWJamqM2BbalrBJb2MisSLoYorOj75U03qULCxQTY9r3hg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-member-expression-to-functions": "^7.29.7", + "@babel/helper-optimise-call-expression": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/traverse": "^7.29.7", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.29.10", + "resolved": "https://registry.npmmirror.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.29.10.tgz", + "integrity": "sha512-/YY9soQuWa8TURtHXHT+GbklpbAA+dZErxFGHIr6qgDg96xuGWrTAs1+MfjgVJPF0YLQsOVsOYs8lhgsPbOinQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "regexpu-core": "^6.5.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.8", + "resolved": "https://registry.npmmirror.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz", + "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "debug": "^4.4.3", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.11" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/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/@babel/helper-define-polyfill-provider/node_modules/resolve": { + "version": "1.22.13", + "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.13.tgz", + "integrity": "sha512-Dj/cW9zBV2aRj6XzCxuGIs3ESZKv02jixne3q6jFZYZ3/Tg09gHHviSMDL4kObh9pqSahdRHEnDoaP2gn8YLhA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "is-core-module": "^2.17.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.29.7.tgz", + "integrity": "sha512-j+7JYmk1JYDtACIGj0QJqqWZjoUpMoEikQGADMaHgCMCSDqd2+P32rfcibUNrGOMWrlzK1WJBdxrB3JJQZwWtg==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz", + "integrity": "sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong==", + "dev": true, + "dependencies": { + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.29.7.tgz", + "integrity": "sha512-16AMiW26DbXWBbr3B8wNozKM0ydMLB892vaOaJW/fPJdnT8vJk5sdkQcU/isqUxyCE0cEoa8wZOcbgDuC4b6Og==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-wrap-function": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-replace-supers/-/helper-replace-supers-7.29.7.tgz", + "integrity": "sha512-atfGXWSeCiF4DnKZIfmJfQRkSw9b9gNNXR1kqKjbhG4pGYCOnkp8OcTB8E3NXjBu8NpheSnOeNKz8KT7UNFTmQ==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.29.7", + "@babel/helper-optimise-call-expression": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/helper-wrap-function/-/helper-wrap-function-7.29.7.tgz", + "integrity": "sha512-iES0Skag9ERIF68aXadpO6dbXa03mNWK3sEqJaMnLNs/eC3l0lkImdfoy6Y09/SfkpawdAB4RjQ7PVA7TcVGdw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.10", + "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.29.10.tgz", + "integrity": "sha512-EMCx3AGZ3WfAl6ht7AyQoPm2Lh+BGYEMdc4Q6Hf7uSCDOZFuLq44qNwL+iaim8VlyYhRAo4X43+weadK8ZB4Yg==", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.25.9", + "resolved": "https://registry.npmmirror.com/@babel/highlight/-/highlight-7.25.9.tgz", + "integrity": "sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.6", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "dependencies": { + "@babel/types": "^7.25.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.29.7.tgz", + "integrity": "sha512-j8SrR0zLZrRsC09DlszEx8FpMiwukKffYXMK0d5LmOglO7vGG6sz/BR/20yHqWH+Lnn31JTt2PE3hIWNgM2J6w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.29.7.tgz", + "integrity": "sha512-r8j8escF+U2FUHo0KOhPUdMzUO+jp9fInva6+ACVAF3Y97Ev+5iNZwiqTghmzNeWwDkOPlYuTcfb1vDaoZKmAQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.29.7.tgz", + "integrity": "sha512-GE1TFSiuFeGsCxmYXZl8HwoPrVlwe4rHPFE8weieGKZqnDORK+Ar3vgWMgW+AOxQ6/2TgLSKx9p6W7O4rC6qgQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.7.tgz", + "integrity": "sha512-oBNVCvnO5tND+xSopWvV8WNGfpTfgP4Zr/YXXSj8zfmcPktp5Ku/aZlsIowgSD4fjmgHn6sGmB9APVsU5zOdhA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.29.7.tgz", + "integrity": "sha512-QQt9qKHZ2sg/kivaLr7lnQr8HVrQDdBNSfCsTjiDxRuX/K5ORyKq+Bu8Xr0cDE3Dfkv0cw28Ve0EKyKMvulkOw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/plugin-transform-optional-chaining": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.29.7.tgz", + "integrity": "sha512-pn6QacGLgvCcwc+syUhKE/qSjV2D1IHDB84RNxWYSt1mW3K/SCtjinZ2p0cETJxAWBjPy3K/1lHwG5BjjPxNlw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.29.7.tgz", + "integrity": "sha512-/An1OCBN93thpBAGyfsK2pcf0jvju1SAtKkL2Ny++B5Sy6sqgzXDQH1cZxWbF96Wuk+bn41MDA9bLd4VVAw6rw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz", + "integrity": "sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.29.7.tgz", + "integrity": "sha512-TSu8+mHCoEaaCDEZ0I3+6mvTBYR4PCxQwf2z9/r5Tbztv6NaLR3B9thGTTxX2WGuGHJqRiAbKPeGTJ5XWXVg6A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.29.7.tgz", + "integrity": "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.29.7.tgz", + "integrity": "sha512-N7zArUXWzAMzm+/N0uPBeVB3Fam5lMxtUwMmDK5f/IBBS7a7p1qeUoxd/6CckXoxUdgsntq1Dh8xNW06maZbDQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.7.tgz", + "integrity": "sha512-d98gXZkgswvkyohMBABkhm3GeXhYj8psWfwQ2C7gtfrKGTykQa/iOIi+JJhwMjPlZ6Vm2XN+DCf3Es1EoG4ZLA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.29.7.tgz", + "integrity": "sha512-pcUb2SS+RMo9TWVBwKGI5ShtoG7R+zBsFmCKDa6fe8c+hPr3XJlZgoE5j6i8W7gDjhyvy+85vmYexanvXh3d1w==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.29.7.tgz", + "integrity": "sha512-cUSmjh72N+rN4PrkFlN1dJwNCwjVp5d38/CQrEsFggkD10UiFlBFgdH3tv5dNsLuHY+3S8db2xCHjhZcv5WgvA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.29.7.tgz", + "integrity": "sha512-ONyr4+AZhKh8yKWInVxU9AXA9EbsyeLcL6V0dJy6M2/62vuvpGm29zzuymbTpdc451GEpDIdAyPLP3r+P61yKQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.29.7.tgz", + "integrity": "sha512-GtcpjFvanPfzNQi3eTitsCqtRRmmqzpy/A+yhTR1HaZo1Ly3EA8ZXxlPyHdR8/IuRMYc3E4wdGBewB2QKQjAaA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.29.7.tgz", + "integrity": "sha512-kibJgmEdX2iMwsHY2tSZNDgj8PwIlCQz7FK9KuGKO8zsuoUwSEhoNnNVp/emKWrbY4HeO6kkXfdMqRKKKXBm2A==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.29.7.tgz", + "integrity": "sha512-qV0OGGBVacduzQHE649JyCneOFI/maT+YKsO+K4Yi3xv2wTPNjM/W2o2gdzMwEAZz7fXNTHAe0NcSg30bIN69g==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.29.7.tgz", + "integrity": "sha512-RK7/IyU5phpuCdBAuig5VkzG/EnbDaui5SQGdU9BFrHdV+mV4cUjLMQ9lJDjLNtWHsqtiefpGZUXQP2BiTYMsA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/template": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.29.7.tgz", + "integrity": "sha512-iPX8aD6H9zV5s7ZsqTdNocPN/MGQ5sSMnElKrktxjJRMnB2jN/1p2+R7GkfD6CAYoVFqy5A4XnSIUeGgJzIWpg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.29.7.tgz", + "integrity": "sha512-3qc18hsD2RdZiyJNDNc7HQpv6xbncwh8FYtxNFFzclSyh/trPD9KkVR9BDECUjDLvb7yJVF15GfYUuC+LMkkiQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.29.7.tgz", + "integrity": "sha512-6IvRRriEMqnBwD6chtxdLpMYCHWEzN+oL5cyQtjykya19UgzbmKhxmhZgKC/LHxS2nYr9Q/qYPZ5Lr6jOL9+yQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-2wiIyo2BjtgU7HufSeDnL9L2O7zr8jmhFKuSr65VpRkUiRKRNpb0mdlk56+XPPKoIrfHqzbMuglDvZun0RISsA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.29.7.tgz", + "integrity": "sha512-giOlEm/EFjfjr+te9NsdjkUo2v4f8rS/SXPumRVHAtbNcyNlvtREkU1dZzaIDclNpnaVhlCqRdFKhJBjBikzLg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.29.7.tgz", + "integrity": "sha512-Rstj7coNz8sE+7Ju7ihpHLI564lsK5pUpNNlvptCIC/16E/S5hbl6n3kESPKdNRmqEWlpn5xpS5Q2dvXBsySLw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.29.7.tgz", + "integrity": "sha512-zFpMOTLZBdW5LfObqcSbL6kefg4R4eLdmvS0wbN9M6D5Mym/sKm9toOoWyVOa+xDjvCnuWcHls2YonXwHvH3CQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.29.7.tgz", + "integrity": "sha512-24B2nOy2TeJSMheqwPD4DDQOV/elLSIlKxjZt4i05H5AgdPdWR3n18HnNrcJ+j76WJd9gbwb9jPjNYUy6RautA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.29.7.tgz", + "integrity": "sha512-zeSIHh0+E1Um1WJRXCFlHQYu2ieJNdivLLjlBEp+dIBu3S51n+SZZmIXjxnItw6pz56Cn+KvK68BIBVsxq2JiQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.29.7.tgz", + "integrity": "sha512-otRWaHXE6fbAGkePvaj/kvs3HsqXfPhlnzwSOlnFgbqCPMd975dW+4wZ00WFBt+/YlBGcJwNrARQTOJOb4ZrIg==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.29.7.tgz", + "integrity": "sha512-RRnE2+eon1rJAq8MnoF1b5kTpY1vU88twHcvcKMrsqP/jxIRqDVs9iJB5fqPuqyeFAW0wJo4MlUIPpQCq/aRsg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.29.7.tgz", + "integrity": "sha512-DZ/oLP21ZuWx1vKqnoNv6/tvEK48AQOBRai40CX9dTjGluvT/YZCyY3rryDtyUqCEoyNroy5KKPwX2iQCiRvyw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.29.7.tgz", + "integrity": "sha512-A0H91hh6W8MFRkp5TqJmMr39jzGD1A1E1Ysiv2O06Sfbhkapm+XyIzxWCEh5kqwOZ1/8QZ0dY3SeQ7XBqfJd5Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.29.7.tgz", + "integrity": "sha512-hl1kwFZCCiDyfH25Xmco9jTrkPgnS9pmOzSG7W5I4SaGbLeqKv417hcU2RKmaxoPEgsoJh7ZPOrnPGq99bHoUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.29.7.tgz", + "integrity": "sha512-fxtQoH3m5ywUSIfaH0FGCzWu4McsYon5bD3K4XnskC7f+OyQMj7rsOMi4NvvmJ83WwBAg4UCe+ov4VZlqEvyew==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.29.7.tgz", + "integrity": "sha512-j0vCldybPC5b5dwCQOJ21uKtHzt7hxLygJTg9eF1ScfaikEDNfzn94XoW5Fi+seBR0nCyL23xaBFFkq7dTM8XQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.8.tgz", + "integrity": "sha512-6iSnEK0zlkLKU4heofK/AdmRD4e2SHVpJMtrwnTCzhnaM98ria4rTrOXBBi45BTTYnJtO8txnPsX4fChYXkmeA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.29.7.tgz", + "integrity": "sha512-B4UkaTK3QpgCwJnrxKfMPKdo92CN7OKXAlpAAnM3UPu0Q0lCCk57ylA9AJbRy2v8dDKOPAAWcoR6CMyeoHwRCA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-vuFoLwr4qnv2xbZ16SQd6uPcH5FNrLHhk/Jzo++0XJFcaDsr4gjJVg6j398oMHiC+83k/GiBzviwF5KBJkPUtQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.29.7.tgz", + "integrity": "sha512-fEo41GmsOUhOBlw8ioo6zvjX5Xc2Lqkzlyfqbpsk3eB6TReV18uhxZ0esfEokVbY2+PVJAQHNKxER6lGrzNd3A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.29.7.tgz", + "integrity": "sha512-idmp1dFaekP9GbcMvG24Kvw2BfhFZjHnNJCkV4WuIY4PskJzwI3f1N5OdgYke38T7rftO6ERulFRn2cFeZwRkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.29.7.tgz", + "integrity": "sha512-zR7fv/z14OjgHl4AgRtkDBvBMhIzCxqV/qN/2BCRC7LjFwvuzjYe7gDWxC4Wl/SNsLM6SE1IWvRPYMgSJaUvNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.29.7.tgz", + "integrity": "sha512-Ld98jn4c0smUywL57m7SgsHq3OpThOa6LqZJif3G6jYOovPleoFhVrBJ1WegRApSFB2wu4+RelAj9AC9G08Z4A==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7", + "@babel/plugin-transform-parameters": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.29.7.tgz", + "integrity": "sha512-Ea/diGcw0twB5IlZPO5sgET6fJsLJqPABqTuFWIR+iMPGPZJkATEIWx0wa+aEQ5UY1CBQyP/gkAiLEqn1vBiQA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.29.7.tgz", + "integrity": "sha512-sLsyndxK2VwX6yNUOakMb7Sh553ZTe/vVM1XJ+9Z5aW1ytsc8xOIwmyk05NNjN60vkc5/KqoTH6hB4V41LJhng==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.29.7.tgz", + "integrity": "sha512-6GM1dhvK3gNODkXcEcMCOLEDCLSoZ/sBbro2Ax8HURyasQ4NshagQixkRFdh5niI6E4gmA/jYI/4aT7rRos3ZQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.29.7.tgz", + "integrity": "sha512-ZDOBqV/qLYJI0YElr8DcENEyARsFQeESqWXH6gZlghYXuPPjvweuDhP4VyEi4BlUBlLRFZVjxoZDMjxhLW766g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.29.7.tgz", + "integrity": "sha512-/6Rz4DK1ETDEM/bWHsPHcaEe7ZaT1EqSXjtSP/L0DijOYuaUhiRiOKcwpZ8P7zR4xXEHc2ITdiCgBm9Tpyv9ug==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.29.7.tgz", + "integrity": "sha512-+BNo06dnrzdNNqCm1X6YUaVv0DKk8Q+JYcoZfOkLhYWNCXzlwTSRq8zGWayT1csjcpNXV9CQTBRRbmTLZac5cA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.29.7.tgz", + "integrity": "sha512-bOMRLQuI0A5ZqHq3OWJ89/rXpJ/NJrbVhXiP4zwPGMs6kpcVsuTUNjwoE30K0Qm3mf48a/TnRYYD6vPNqcg6jA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.8.tgz", + "integrity": "sha512-0UpIXPtdDtMXfnV2OJAVMLpj3H/92vmkA6lpSRakmycJvj3VUy6Xs1dM8tXRugupykr5WB+LpiVl0J8LMVg2mg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.29.7.tgz", + "integrity": "sha512-mB5Fs0VWrJ42ZCmc8114v60qetdaUVNkj9PmSZRmanCZM3S9hm0CFRLjRmYIsuXav14l2jvZ+4T8iiCGnhj3nQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.29.7.tgz", + "integrity": "sha512-5+YhdpVgmfSmwZyLMftfaiffLRMHjzIRHFHHLdibcSyJm2pasMrKHrO3Ptrt2DRshjvpgjEJJ1zVW14WPq/6QA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.29.7.tgz", + "integrity": "sha512-I+WYbGBAiCn7nA6xBrlgPH+MB7HWb4u8pv5S0Pv7OtwNvIFvCCb24YlttKEeUFVurfBCEaOTnuhlqsb7f0Z5Dg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.29.8.tgz", + "integrity": "sha512-4S9ksMGVWUshvgK0mKfvZky7leuG5/uoFVwMpAomJ8bMoDJiNHRVmc1EglwW/CmGVSqqWpEbXm9FmbRit22qoA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.29.7.tgz", + "integrity": "sha512-BCHzNYJGe9l7EpwwDBN/ztlL2NYFFq8hp9ddjtUEM9f2O7S7kKV/lL6Fwo7IF7NSkYhPK2vO+86nIGltA90MsA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.29.7.tgz", + "integrity": "sha512-NCSEJ4sLFU2gqAub45HYh4fus2yQ36rr6ei6vpU7NdoJqCpxvEG8E6eJpscGyXP3VHD2Ny+fSXr04k1hoUrFqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.29.7.tgz", + "integrity": "sha512-223mNGoTkBiTEWFoK+Q6Go3tueMRclO8vxxxxquNCYuNI4jWOofFKJRRDu6SDrB8Sgo1UEGW9T4GAQ8ZyRso1A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.29.9.tgz", + "integrity": "sha512-FFwIwzU+7SCOuxxV4YtJql6T9981ZVTm+FHO5GhVsRqCTdy0WwrEZh3l42ARpXruJUDGOptdduHW6Zr7pNPLNg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/plugin-syntax-typescript": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.29.7.tgz", + "integrity": "sha512-jCfXxSjf94lf4E0hKE0AByxF6F3/pVFqRdUUNkDJhsY0m1ZKjnN6ZYyMeHNpzflxb/0q5b7t3p+BE+SLF1WOtA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.29.7.tgz", + "integrity": "sha512-OgZ+zoAJgZLUCunsTRQ5LAjOywDv5zzZ2/hQ5aMw1pGXyY2rtE8/chXYUmu3AlVHKpm10KEdG9aMwbI/K76ZGw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.29.7.tgz", + "integrity": "sha512-7D/x/23/d/3VqZ0QA+LGbZMlGwZjztBygSWWWsfTPoQ1oQ6Q1P6Mr3d0kk42XabyUVw+fha3LqdRsFqeKqvCyA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.29.7.tgz", + "integrity": "sha512-BLOhLht9DOJwIxlmp91wHvkXv1lguuHS3/FwUO8HL1H0u8s4hR1gASVFyilu9iGtcTRYqjTZmlsFFeQletntEg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/preset-env/-/preset-env-7.29.7.tgz", + "integrity": "sha512-GYzX36n1nsciIb0uyH0GHwxwtNwPQIcpxSeiVLDtG/B7jB5xXgchnmL1f/jCX5o+pwnaDBtO60ONSJhEBJfxYA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.29.7", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.29.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.29.7", + "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": "^7.29.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.29.7", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.29.7", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.29.7", + "@babel/plugin-syntax-import-attributes": "^7.29.7", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.29.7", + "@babel/plugin-transform-async-generator-functions": "^7.29.7", + "@babel/plugin-transform-async-to-generator": "^7.29.7", + "@babel/plugin-transform-block-scoped-functions": "^7.29.7", + "@babel/plugin-transform-block-scoping": "^7.29.7", + "@babel/plugin-transform-class-properties": "^7.29.7", + "@babel/plugin-transform-class-static-block": "^7.29.7", + "@babel/plugin-transform-classes": "^7.29.7", + "@babel/plugin-transform-computed-properties": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7", + "@babel/plugin-transform-dotall-regex": "^7.29.7", + "@babel/plugin-transform-duplicate-keys": "^7.29.7", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.29.7", + "@babel/plugin-transform-dynamic-import": "^7.29.7", + "@babel/plugin-transform-explicit-resource-management": "^7.29.7", + "@babel/plugin-transform-exponentiation-operator": "^7.29.7", + "@babel/plugin-transform-export-namespace-from": "^7.29.7", + "@babel/plugin-transform-for-of": "^7.29.7", + "@babel/plugin-transform-function-name": "^7.29.7", + "@babel/plugin-transform-json-strings": "^7.29.7", + "@babel/plugin-transform-literals": "^7.29.7", + "@babel/plugin-transform-logical-assignment-operators": "^7.29.7", + "@babel/plugin-transform-member-expression-literals": "^7.29.7", + "@babel/plugin-transform-modules-amd": "^7.29.7", + "@babel/plugin-transform-modules-commonjs": "^7.29.7", + "@babel/plugin-transform-modules-systemjs": "^7.29.7", + "@babel/plugin-transform-modules-umd": "^7.29.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.7", + "@babel/plugin-transform-new-target": "^7.29.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.29.7", + "@babel/plugin-transform-numeric-separator": "^7.29.7", + "@babel/plugin-transform-object-rest-spread": "^7.29.7", + "@babel/plugin-transform-object-super": "^7.29.7", + "@babel/plugin-transform-optional-catch-binding": "^7.29.7", + "@babel/plugin-transform-optional-chaining": "^7.29.7", + "@babel/plugin-transform-parameters": "^7.29.7", + "@babel/plugin-transform-private-methods": "^7.29.7", + "@babel/plugin-transform-private-property-in-object": "^7.29.7", + "@babel/plugin-transform-property-literals": "^7.29.7", + "@babel/plugin-transform-regenerator": "^7.29.7", + "@babel/plugin-transform-regexp-modifiers": "^7.29.7", + "@babel/plugin-transform-reserved-words": "^7.29.7", + "@babel/plugin-transform-shorthand-properties": "^7.29.7", + "@babel/plugin-transform-spread": "^7.29.7", + "@babel/plugin-transform-sticky-regex": "^7.29.7", + "@babel/plugin-transform-template-literals": "^7.29.7", + "@babel/plugin-transform-typeof-symbol": "^7.29.7", + "@babel/plugin-transform-unicode-escapes": "^7.29.7", + "@babel/plugin-transform-unicode-property-regex": "^7.29.7", + "@babel/plugin-transform-unicode-regex": "^7.29.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.29.7", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.15", + "babel-plugin-polyfill-corejs3": "^0.14.0", + "babel-plugin-polyfill-regenerator": "^0.6.6", + "core-js-compat": "^3.48.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmmirror.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.10", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.29.10.tgz", + "integrity": "sha512-NpugTzbKgGrNe45Ui32cN8vCFFMxVtP/9rtfwv0nP5FRDAjvYBxJcLVpYA9mr1jxP6cnIT7x9LUzuDTbWYYNRA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/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/@babel/traverse": { + "version": "7.29.10", + "resolved": "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.29.10.tgz", + "integrity": "sha512-B3lYAs2nkKskbgQ1nfy8Ma9ao9Q1rntTAQHrzzyDuj+TSO+X3le6PfWwqDvodsb+OumE10eMFfuMCTQSQ5iuIQ==", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.8", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.9", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.8", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/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/@babel/types": { + "version": "7.25.6", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmmirror.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "peer": true + }, + "node_modules/@clack/core": { + "version": "0.5.0", + "resolved": "https://registry.npmmirror.com/@clack/core/-/core-0.5.0.tgz", + "integrity": "sha512-p3y0FIOwaYRUPRcMO7+dlmLh8PSRcrjuTndsiA0WAFbWES0mLZlrjVoBRZ9DzkPFJZG6KGkJmoEAY0ZcVWTkow==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "sisteransi": "^1.0.5" + } + }, + "node_modules/@clack/prompts": { + "version": "0.11.0", + "resolved": "https://registry.npmmirror.com/@clack/prompts/-/prompts-0.11.0.tgz", + "integrity": "sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==", + "dev": true, + "dependencies": { + "@clack/core": "0.5.0", + "picocolors": "^1.0.0", + "sisteransi": "^1.0.5" + } + }, + "node_modules/@dcloudio/types": { + "version": "3.4.19", + "resolved": "https://registry.npmmirror.com/@dcloudio/types/-/types-3.4.19.tgz", + "integrity": "sha512-1foayOFEAQ+jnQLt3ACsovCNjer3/fXn1I2VBpmDOzs2nk/n4UHwRLAxZV/RpxRqaGOPEvKrO/Pq+VI6sAmuRw==" + }, + "node_modules/@dcloudio/uni-app": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app/-/uni-app-3.0.0-4080720251210001.tgz", + "integrity": "sha512-NBsyams5RpnH2CDDnMtm9oPcx2yFcBW+8O9MBXptPUvj6HNo9VoM6f7qhAgaQbG1wri0UIvZKRjkhSIyOL7wgA==", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080720251210001", + "@dcloudio/uni-components": "3.0.0-4080720251210001", + "@dcloudio/uni-console": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-push": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-stat": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "@dcloudio/types": "3.4.19" + } + }, + "node_modules/@dcloudio/uni-app-harmony": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app-harmony/-/uni-app-harmony-3.0.0-4080720251210001.tgz", + "integrity": "sha512-tJjuOq/TJD4rdOE8vAtuIQbRlHeSnu0yt0pFjtRBi4ypZ1h15lxFB9cwFzgcpgI+06ZsK5SZb30IpmjUKr5NYA==", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080720251210001", + "@dcloudio/uni-app-vite": "3.0.0-4080720251210001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-plus": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app-plus/-/uni-app-plus-3.0.0-4080720251210001.tgz", + "integrity": "sha512-qxbcpXvoouCX4ueY/CTHyPf/23ZJxkwg3YBJLYkRutpa3NEn6gflUtm0y19doJDX7eOSA2Q1OexS+DMOp6QlpQ==", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080720251210001", + "@dcloudio/uni-app-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-app-vue": "3.0.0-4080720251210001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-uts": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app-uts/-/uni-app-uts-3.0.0-4080720251210001.tgz", + "integrity": "sha512-sOgLm3HRtZuVMSGbz+MT/D0vdz4Pp3+h9oJJTG+4U5u7JNR6rhaWlYhCIkDmBSFMWAiFvFsejkGRH8oc7NTRNQ==", + "dependencies": { + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-console": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@jridgewell/gen-mapping": "^0.3.3", + "@jridgewell/trace-mapping": "^0.3.19", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/consolidate": "1.0.0", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "es-module-lexer": "1.5.4", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "source-map-js": "1.2.1", + "unimport": "4.1.1" + } + }, + "node_modules/@dcloudio/uni-app-vite": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app-vite/-/uni-app-vite-3.0.0-4080720251210001.tgz", + "integrity": "sha512-ao4o71saOrW0ZrNuZ2V372p5iEqo77fcU22hQNOzgLE6AsrSPBfGGwB6zZdqIJa2s0Dn43U2Bc+DLkf2iQa3KQ==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-vue": "5.2.4", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "picocolors": "1.1.0" + } + }, + "node_modules/@dcloudio/uni-app-vue": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-app-vue/-/uni-app-vue-3.0.0-4080720251210001.tgz", + "integrity": "sha512-Kwq7lgGF/e7T//3t7vLTjqLHiyvcJE0LeJuwl5EpTSXDXoCAugcaBqY4qzDDHtGRcpRK96ARbHPSrL/YXeuDFA==" + }, + "node_modules/@dcloudio/uni-automator": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-automator/-/uni-automator-3.0.0-4080720251210001.tgz", + "integrity": "sha512-WF19tMp5kAso3Sv5tU0YxYI1lXSV28wUQAujXM/9g8DHheruQYMymk8MgKwQh5mjVKi0Ftvwbw5Qy5vS8G7WVg==", + "dev": true, + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "address": "^1.1.2", + "cross-env": "^7.0.3", + "debug": "4.3.7", + "default-gateway": "^6.0.3", + "fs-extra": "10.1.0", + "jsonc-parser": "3.3.1", + "licia": "1.41.1", + "merge": "2.1.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + }, + "peerDependencies": { + "jest": "27.0.4", + "jest-environment-node": "27.5.1" + } + }, + "node_modules/@dcloudio/uni-cli-shared": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-cli-shared/-/uni-cli-shared-3.0.0-4080720251210001.tgz", + "integrity": "sha512-VBbpXKcEk8zw20wRT06/5GFeO4Q5+r/kCn1paDwg4Yl0xoSD2zLHwPsOlyVUMNteIiQVRrRVxZeQ6FKXIzCzUw==", + "dependencies": { + "@ampproject/remapping": "^2.1.2", + "@babel/code-frame": "7.24.7", + "@babel/core": "7.25.2", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@intlify/core-base": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "adm-zip": "0.5.16", + "autoprefixer": "10.4.20", + "base64url": "^3.0.1", + "chokidar": "3.6.0", + "compare-versions": "^3.6.0", + "debug": "4.3.7", + "entities": "^4.5.0", + "es-module-lexer": "1.5.4", + "esbuild": "0.20.2", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "isbinaryfile": "5.0.2", + "jsonc-parser": "3.3.1", + "lines-and-columns": "^2.0.4", + "magic-string": "0.30.11", + "merge": "2.1.1", + "mime": "3.0.0", + "module-alias": "2.2.3", + "os-locale-s-fix": "^1.0.8-fix-1", + "picocolors": "1.1.0", + "postcss-import": "^14.0.2", + "postcss-load-config": "^3.1.1", + "postcss-modules": "^4.3.0", + "postcss-selector-parser": "6.1.2", + "resolve": "1.22.8", + "source-map-js": "1.2.1", + "tapable": "^2.2.0", + "unimport": "4.1.1", + "unplugin-auto-import": "19.1.0", + "xregexp": "3.1.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@dcloudio/uni-cloud": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-cloud/-/uni-cloud-3.0.0-4080720251210001.tgz", + "integrity": "sha512-d50N3P/qyWrEutxN5KCdAfoW2/TI+fbj/P5sDWavItxJ5eH2VDjIFsvt2zGdQVqOAROVrGZku8ZO40lL3wv2Kw==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21", + "fast-glob": "3.3.3" + } + }, + "node_modules/@dcloudio/uni-components": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-components/-/uni-components-3.0.0-4080720251210001.tgz", + "integrity": "sha512-QOi1Qphqmf0nlWZmOT/38gHllCFYW699UupsaPoabq9rLimRGZqNacjHaeUU75v7/1msimFZam/KYsz7vaS/MQ==", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080720251210001", + "@dcloudio/uni-h5": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001" + } + }, + "node_modules/@dcloudio/uni-console": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-console/-/uni-console-3.0.0-4080720251210001.tgz", + "integrity": "sha512-eLgdK6Tq242FSmpfKPAAExq7zJEw1jT8gOQ8w8M3Bv6m4VwV/6VXXuEqDaqM+oBXUUzCf0eWVci76hXx+SoQpg==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-h5": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-h5/-/uni-h5-3.0.0-4080720251210001.tgz", + "integrity": "sha512-ZAE6RhhmTOGK5fx/ygCf2+yqttE9Bj1U20fESbwzCrObyHrcHG7X7wllR+FKqy4cxVk+JIJcMSgftUpBgh346Q==", + "dependencies": { + "@dcloudio/uni-h5-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-h5-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "localstorage-polyfill": "^1.0.1", + "postcss-selector-parser": "6.1.2", + "safe-area-insets": "1.4.1", + "vue-router": "4.4.4", + "xmlhttprequest": "^1.8.0" + } + }, + "node_modules/@dcloudio/uni-h5-vite": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-h5-vite/-/uni-h5-vite-3.0.0-4080720251210001.tgz", + "integrity": "sha512-WNflMJKZ4hpxgcppVXbngeFja3sJLizUlF+LzLWvMUww9CpIsKCNVGZuPsL93y2Zal5k0OJ48x9GXF/o2zB3MA==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "mime": "3.0.0", + "module-alias": "2.2.3" + } + }, + "node_modules/@dcloudio/uni-h5-vue": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-h5-vue/-/uni-h5-vue-3.0.0-4080720251210001.tgz", + "integrity": "sha512-x6IOZ+QyXUbOacc8/3h4HhwX0r0ORz57pNd95y9hAk/gVotqIKhNKwlH4JfMWIl21V6M3bSRY33w+4n1t+vRFA==", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/server-renderer": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-h5/node_modules/vue-router": { + "version": "4.4.4", + "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.4.4.tgz", + "integrity": "sha512-3MlnDqwRwZwCQVbtVfpsU+nrNymNjnXSsQtXName5925NVC1+326VVfYH9vSrA0N13teGEo8z5x7gbRnGjCDiQ==", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@dcloudio/uni-i18n": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-i18n/-/uni-i18n-3.0.0-4080720251210001.tgz", + "integrity": "sha512-ko+JeTjrr48o3l0oNvFTWguTT8U6RICgtN1d0oz3H1z0WI8R7+r058dMF3K5cZzljYVIjZh/kMBgGeLhP6mbog==" + }, + "node_modules/@dcloudio/uni-mp-alipay": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-alipay/-/uni-mp-alipay-3.0.0-4080720251210001.tgz", + "integrity": "sha512-lii9Ww2lCoWek5N59hUoNDH6moXl7ku8Ugl0wnbJGJoytzhMhkEKycXDtwR5wPfuXsgBqCVX2tE12vx9LGzjGg==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-baidu": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-baidu/-/uni-mp-baidu-3.0.0-4080720251210001.tgz", + "integrity": "sha512-a6R4mM9yA70XMA0bkg9AXDrBcmj13nX8e44WscMALqfy/HgRCDibiBusJ7Alv5BRFhjxQlWDIw5HDlMcj0stkQ==", + "dependencies": { + "@dcloudio/uni-app": "3.0.0-4080720251210001", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-compiler": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-compiler/-/uni-mp-compiler-3.0.0-4080720251210001.tgz", + "integrity": "sha512-OK0IHjhH8N1b3EUtX9LSx8M1vNK1xhhpOVENQKfNvxPRAoYqS96Ha5LRL9G//mYyc+WLNBQTmojFcjLPJmnPxw==", + "dependencies": { + "@babel/generator": "7.25.6", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "2.0.2" + } + }, + "node_modules/@dcloudio/uni-mp-compiler/node_modules/@babel/generator": { + "version": "7.25.6", + "resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@dcloudio/uni-mp-compiler/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@dcloudio/uni-mp-harmony": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-harmony/-/uni-mp-harmony-3.0.0-4080720251210001.tgz", + "integrity": "sha512-4KIbSWNQYmJiEVeoo0mgxS6nqpcPcUEZH4dy6yi09CD5VoN1raRglHLGUU0du4DSH/9MfjTmcIIaru14po2v6Q==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-jd": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-jd/-/uni-mp-jd-3.0.0-4080720251210001.tgz", + "integrity": "sha512-gUPsQcAUgrnbnivp+43PBliojKyolTLDVnCvpMQAbOrA0IlrZSMbKhl2sGZTlqBPH0tNjYSLjKmQvw0Mi2sBqg==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-kuaishou": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-kuaishou/-/uni-mp-kuaishou-3.0.0-4080720251210001.tgz", + "integrity": "sha512-skgavnL/UwIX2ql9tJZ0nRnyOCupHzyZtJ3IMA9Ybk0tAqF9dmG0o8u9c5462ayfARnim97wkUeQ3sqfnqey3g==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-lark": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-lark/-/uni-mp-lark-3.0.0-4080720251210001.tgz", + "integrity": "sha512-fWapAz6zg7/v95zhAjhpFjgR1R3iMwU3SL8tNjDMr9vfPR2MQmiTktTc3q/AWUOn/EfjQAgNAPIJkMZphQ6avQ==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-qq": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-qq/-/uni-mp-qq-3.0.0-4080720251210001.tgz", + "integrity": "sha512-IzFdD3sW0laRvXlwb7Zb9qfB+ZUzbSwN0JIZDqg/MBEHaobZc70qN3jJSS9p/SOM5SoyMJZZr6nyhWA77P83aQ==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-mp-toutiao": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-toutiao/-/uni-mp-toutiao-3.0.0-4080720251210001.tgz", + "integrity": "sha512-KdjFx/R9CEKFKwyfC9VwIuXqDjiLn0wmuEN7FhwJwz+M/q8DpHH4LiqpfQECR29vqYEsuwiA6U0LCZScNC7Gwg==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-vite": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-vite/-/uni-mp-vite-3.0.0-4080720251210001.tgz", + "integrity": "sha512-PUjXx3a1KYeJc5N5vIjht73NkXDmpkqlpz6YawSuHjnP0in+d4+U83YcK70D2W6pKi0Sy++J8b4JcRIwdUSO7A==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-i18n": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/uni-mp-vue": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-vue/-/uni-mp-vue-3.0.0-4080720251210001.tgz", + "integrity": "sha512-X4t5xvtavUO+FxqcB8sOw/9dQ3191i9OfPyoRawlJiT2xq8aOdKwc5jj2CUwUdJwBbFynMSUHXKoZtLWZe1Lkg==", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-weixin": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-weixin/-/uni-mp-weixin-3.0.0-4080720251210001.tgz", + "integrity": "sha512-Hg3Hqb1YyBpkY5Anj6m5N67ezLLWTZUo1yM5ie3NgXI7z/f9MY3Vm27edg0dqHehKN3PKcF3CbkaJ9JAfCy6/g==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-xhs": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-mp-xhs/-/uni-mp-xhs-3.0.0-4080720251210001.tgz", + "integrity": "sha512-jAN9OBf8b2doKL4WafxWXzCSH5tkpk0eVfhDfLsd3VbvWMaGlfKA2b6Nu2fcbo1y+JYqZYuEVJz39/YkWh91hA==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-nvue-styler": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-nvue-styler/-/uni-nvue-styler-3.0.0-4080720251210001.tgz", + "integrity": "sha512-naHVOSm6Kwq9WBQEwqGj7qxy7kt3g3H8AXxJbGSn1VEKKge0X6d0Q8bfYipccL20mPkoLJIkKyCZHk8R+ioaVw==", + "dependencies": { + "parse-css-font": "^4.0.0", + "postcss": "8.4.45" + } + }, + "node_modules/@dcloudio/uni-nvue-styler/node_modules/postcss": { + "version": "8.4.45", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/@dcloudio/uni-push": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-push/-/uni-push-3.0.0-4080720251210001.tgz", + "integrity": "sha512-A7cT2Wmc6OmDX4KIhUtPwJrzpZDfcEhAkbza+4Y4KaSaeTsNIfyTmrPnjPsJoV2ETclaJduMGxMAb6l/FeV9DQ==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001" + } + }, + "node_modules/@dcloudio/uni-quickapp-webview": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-quickapp-webview/-/uni-quickapp-webview-3.0.0-4080720251210001.tgz", + "integrity": "sha512-qP703/nwcFvu3AFD2uu5KGjuPWQ88tv3aYMxCkLbtkiFMFbTyQM8lT8Ene2GZ8fycFe06zLHNL5/15HAWoZm5g==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vite": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-vue": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-shared": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-shared/-/uni-shared-3.0.0-4080720251210001.tgz", + "integrity": "sha512-SJZBF5XXXhx9+4Uv/dKu9SAtQbvCWDBpHeQ9QBma0pwgFerSAlD0VP0BtypOcPRafthTGsGsy9MdnItHyX/XgQ==", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-stacktracey": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-stacktracey/-/uni-stacktracey-3.0.0-4080720251210001.tgz", + "integrity": "sha512-Y2zDgQqe/cWicPjOgZCVWMPIuWKoGGpRbxrU4MH1W8T9TKwC+oumabd9pYemfTK431qyn7T6Pz9W8WPHB466Ew==", + "dev": true + }, + "node_modules/@dcloudio/uni-stat": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/uni-stat/-/uni-stat-3.0.0-4080720251210001.tgz", + "integrity": "sha512-r0lnxnVSTZZ1/j0IcqnotkkvXLgwqcX8i76oTEf9g+MJgBFi9Ay0ZRCoGtPoLu2+FbHOb86K1JeI4KR3+wYhDg==", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/vite-plugin-uni": { + "version": "3.0.0-4080720251210001", + "resolved": "https://registry.npmmirror.com/@dcloudio/vite-plugin-uni/-/vite-plugin-uni-3.0.0-4080720251210001.tgz", + "integrity": "sha512-WmxQxETumZ9diyua5XT28Y80lVVSqh8bkgwVyZB5z5aVn/sYDTFdVdjWBK0qiU1Ah6LtGCSaGCp7RSwzTKmKog==", + "dev": true, + "dependencies": { + "@babel/core": "7.25.2", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.23.3", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080720251210001", + "@dcloudio/uni-shared": "3.0.0-4080720251210001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-legacy": "5.3.2", + "@vitejs/plugin-vue": "5.2.4", + "@vitejs/plugin-vue-jsx": "3.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "cac": "6.7.9", + "debug": "4.3.7", + "estree-walker": "2.0.2", + "express": "4.20.0", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "terser": "^5.4.0", + "unplugin-auto-import": "19.1.0" + }, + "bin": { + "uni": "bin/uni.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "5.2.8" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "dev": true, + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@emnapi/core": { + "version": "1.10.0", + "resolved": "https://registry.npmmirror.com/@emnapi/core/-/core-1.10.0.tgz", + "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.10.0", + "resolved": "https://registry.npmmirror.com/@emnapi/runtime/-/runtime-1.10.0.tgz", + "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", + "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.88.0", + "resolved": "https://registry.npmmirror.com/@es-joy/jsdoccomment/-/jsdoccomment-0.88.0.tgz", + "integrity": "sha512-GK/HL/claLLNo5KG705auIlZMwEtmn88ofSGuLsmVZwKBqMPJhW9DiznYNq07QEqz9BPtA3LBfYImtZmhVvRAw==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.9", + "@typescript-eslint/types": "^8.59.4", + "comment-parser": "1.4.7", + "esquery": "^1.7.0", + "jsdoc-type-pratt-parser": "~7.2.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@es-joy/resolve.exports": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@es-joy/resolve.exports/-/resolve.exports-1.2.0.tgz", + "integrity": "sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-plugin-eslint-comments": { + "version": "4.8.1", + "resolved": "https://registry.npmmirror.com/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-4.8.1.tgz", + "integrity": "sha512-vafrdi15JHBFh1qWOAucyJwlEEuhdoMof28jOdKdgnwZ7bXwd6v4wzHYSmAVLwnx0yc7bqAtfJ0EZQV1WAzV/Q==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^4.0.0", + "ignore": "^7.0.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.10.1", + "resolved": "https://registry.npmmirror.com/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmmirror.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/compat": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/@eslint/compat/-/compat-2.1.1.tgz", + "integrity": "sha512-rMcy8GSrwNzcISX/BlTDY/GLB4eCopEuy9woIls3To+15OLxykZrxxq+WUcylCPCQ6F4MujjBM1DX5V1aqI3Vw==", + "dev": true, + "dependencies": { + "@eslint/core": "^1.2.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "peerDependencies": { + "eslint": "^8.40 || 9 || 10" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/@eslint/compat/node_modules/@eslint/core": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/@eslint/core/-/core-1.2.1.tgz", + "integrity": "sha512-MwcE1P+AZ4C6DWlpin/OmOA54mmIZ/+xZuJiQd4SyB29oAJjN30UW9wkKNptW2ctp4cEsvhlLY/CsQ1uoHDloQ==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.2", + "resolved": "https://registry.npmmirror.com/@eslint/config-array/-/config-array-0.21.2.tgz", + "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", + "dev": true, + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.5" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmmirror.com/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmmirror.com/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.7", + "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-3.3.7.tgz", + "integrity": "sha512-F42g89Qd5oAWtp0k0nnSrjziAKza7w8SVT4mStc18LZMaRb4J1HQAHLCalEtDCxrTuksx7NU9qsmeLwpOfPqWw==", + "dev": true, + "dependencies": { + "ajv": "^6.14.0", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.3.2", + "minimatch": "^3.1.5", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmmirror.com/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.4", + "resolved": "https://registry.npmmirror.com/@eslint/js/-/js-9.39.4.tgz", + "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/markdown": { + "version": "7.5.1", + "resolved": "https://registry.npmmirror.com/@eslint/markdown/-/markdown-7.5.1.tgz", + "integrity": "sha512-R8uZemG9dKTbru/DQRPblbJyXpObwKzo8rv1KYGGuPUPtjM4LXBYM9q5CIZAComzZupws3tWbDwam5AFpPLyJQ==", + "dev": true, + "workspaces": [ + "examples/*" + ], + "dependencies": { + "@eslint/core": "^0.17.0", + "@eslint/plugin-kit": "^0.4.1", + "github-slugger": "^2.0.0", + "mdast-util-from-markdown": "^2.0.2", + "mdast-util-frontmatter": "^2.0.1", + "mdast-util-gfm": "^3.1.0", + "micromark-extension-frontmatter": "^2.0.0", + "micromark-extension-gfm": "^3.0.0", + "micromark-util-normalize-identifier": "^2.0.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmmirror.com/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.2", + "resolved": "https://registry.npmmirror.com/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", + "dev": true, + "dependencies": { + "@humanfs/types": "^0.15.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.8", + "resolved": "https://registry.npmmirror.com/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", + "dev": true, + "dependencies": { + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmmirror.com/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmmirror.com/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@iconify-json/carbon": { + "version": "1.2.28", + "resolved": "https://registry.npmmirror.com/@iconify-json/carbon/-/carbon-1.2.28.tgz", + "integrity": "sha512-dog92E0fGszJSrmeikPQmFrd4ptbdapogEhtZ9MCA9KiCNacYb2/nDi0euwsK0kTevsFiTy7Mte6QvRq3LDyHQ==", + "dev": true, + "dependencies": { + "@iconify/types": "*" + } + }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "dev": true + }, + "node_modules/@iconify/utils": { + "version": "3.1.7", + "resolved": "https://registry.npmmirror.com/@iconify/utils/-/utils-3.1.7.tgz", + "integrity": "sha512-JZHlwdID+dy+lTgbYC8NEC4zeugqeYsc6jewvzb4c58kHauJn+X7rNwQjxz5p2qSjqaEeQoLkCIQ9v/H4PK0/w==", + "dev": true, + "dependencies": { + "@antfu/install-pkg": "^2.0.1", + "@iconify/types": "^2.0.0", + "import-meta-resolve": "^4.2.0" + } + }, + "node_modules/@iconify/utils/node_modules/@antfu/install-pkg": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/@antfu/install-pkg/-/install-pkg-2.1.0.tgz", + "integrity": "sha512-sdg9NxU3zR4Mnawfbc/x6GB5Wf17WYud5qOuEuxXjaKpYpMkISSJEjItGebXJ2bQ4DIcly4NYH23mtkGJjvKUw==", + "dev": true, + "dependencies": { + "package-manager-detector": "^1.8.0", + "tinyexec": "^1.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@intlify/core-base": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.1.9.tgz", + "integrity": "sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==", + "dependencies": { + "@intlify/devtools-if": "9.1.9", + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/devtools-if": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.1.9.tgz", + "integrity": "sha512-oKSMKjttG3Ut/1UGEZjSdghuP3fwA15zpDPcjkf/1FjlOIm6uIBGMNS5jXzsZy593u+P/YcnrZD6cD3IVFz9vQ==", + "dependencies": { + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-compiler": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.1.9.tgz", + "integrity": "sha512-6YgCMF46Xd0IH2hMRLCssZI3gFG4aywidoWQ3QP4RGYQXQYYfFC54DxhSgfIPpVoPLQ+4AD29eoYmhiHZ+qLFQ==", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-resolver": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-resolver/-/message-resolver-9.1.9.tgz", + "integrity": "sha512-Lx/DBpigeK0sz2BBbzv5mu9/dAlt98HxwbG7xLawC3O2xMF9MNWU5FtOziwYG6TDIjNq0O/3ZbOJAxwITIWXEA==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/runtime": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/runtime/-/runtime-9.1.9.tgz", + "integrity": "sha512-XgPw8+UlHCiie3fI41HPVa/VDJb3/aSH7bLhY1hJvlvNV713PFtb4p4Jo+rlE0gAoMsMCGcsiT982fImolSltg==", + "dependencies": { + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/shared": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/shared/-/shared-9.1.9.tgz", + "integrity": "sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/vue-devtools": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.1.9.tgz", + "integrity": "sha512-YPehH9uL4vZcGXky4Ev5qQIITnHKIvsD2GKGXgqf+05osMUI6WSEQHaN9USRa318Rs8RyyPCiDfmA0hRu3k7og==", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.15.2", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-3.15.2.tgz", + "integrity": "sha512-6EuL879VkRA+1Cz578mKMiKvjPNEuk6+r1JaFzoSWejZmtf7xWbIyw1e3KkxlkzTIt9Taw6JBhEppG7utc1P+w==", + "dev": true, + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/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==", + "dev": true, + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.6", + "resolved": "https://registry.npmmirror.com/@istanbuljs/schema/-/schema-0.1.6.tgz", + "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/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, + "peer": 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/@jest/console/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/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, + "peer": true + }, + "node_modules/@jest/console/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/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, + "peer": 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/@jest/core/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/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, + "peer": true + }, + "node_modules/@jest/core/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "peer": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/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, + "peer": 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/@jest/reporters/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/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, + "peer": true + }, + "node_modules/@jest/reporters/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "peer": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/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, + "peer": 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/@jest/transform/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/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, + "peer": true + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "peer": true + }, + "node_modules/@jest/transform/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/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, + "peer": 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/@jest/types/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/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, + "peer": true + }, + "node_modules/@jest/types/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jimp/bmp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/bmp/-/bmp-0.10.3.tgz", + "integrity": "sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "bmp-js": "^0.1.0", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/core": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/core/-/core-0.10.3.tgz", + "integrity": "sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "any-base": "^1.1.0", + "buffer": "^5.2.0", + "core-js": "^3.4.1", + "exif-parser": "^0.1.12", + "file-type": "^9.0.0", + "load-bmfont": "^1.3.1", + "mkdirp": "^0.5.1", + "phin": "^2.9.1", + "pixelmatch": "^4.0.2", + "tinycolor2": "^1.4.1" + } + }, + "node_modules/@jimp/custom": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/custom/-/custom-0.10.3.tgz", + "integrity": "sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/core": "^0.10.3", + "core-js": "^3.4.1" + } + }, + "node_modules/@jimp/gif": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/gif/-/gif-0.10.3.tgz", + "integrity": "sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "omggif": "^1.0.9" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/jpeg": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/jpeg/-/jpeg-0.10.3.tgz", + "integrity": "sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "jpeg-js": "^0.3.4" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blit": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blit/-/plugin-blit-0.10.3.tgz", + "integrity": "sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blur": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blur/-/plugin-blur-0.10.3.tgz", + "integrity": "sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-circle": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-circle/-/plugin-circle-0.10.3.tgz", + "integrity": "sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-color": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-color/-/plugin-color-0.10.3.tgz", + "integrity": "sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "tinycolor2": "^1.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-contain": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-contain/-/plugin-contain-0.10.3.tgz", + "integrity": "sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-cover": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-cover/-/plugin-cover-0.10.3.tgz", + "integrity": "sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-crop": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-crop/-/plugin-crop-0.10.3.tgz", + "integrity": "sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-displace": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-displace/-/plugin-displace-0.10.3.tgz", + "integrity": "sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-dither": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-dither/-/plugin-dither-0.10.3.tgz", + "integrity": "sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-fisheye": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.3.tgz", + "integrity": "sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-flip": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-flip/-/plugin-flip-0.10.3.tgz", + "integrity": "sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-rotate": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-gaussian": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.3.tgz", + "integrity": "sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-invert": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-invert/-/plugin-invert-0.10.3.tgz", + "integrity": "sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-mask": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-mask/-/plugin-mask-0.10.3.tgz", + "integrity": "sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-normalize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-normalize/-/plugin-normalize-0.10.3.tgz", + "integrity": "sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-print": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-print/-/plugin-print-0.10.3.tgz", + "integrity": "sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "load-bmfont": "^1.4.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-resize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-resize/-/plugin-resize-0.10.3.tgz", + "integrity": "sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-rotate": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-rotate/-/plugin-rotate-0.10.3.tgz", + "integrity": "sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-scale": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-scale/-/plugin-scale-0.10.3.tgz", + "integrity": "sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-shadow": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-shadow/-/plugin-shadow-0.10.3.tgz", + "integrity": "sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blur": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-threshold": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-threshold/-/plugin-threshold-0.10.3.tgz", + "integrity": "sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-color": ">=0.8.0", + "@jimp/plugin-resize": ">=0.8.0" + } + }, + "node_modules/@jimp/plugins": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugins/-/plugins-0.10.3.tgz", + "integrity": "sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/plugin-blit": "^0.10.3", + "@jimp/plugin-blur": "^0.10.3", + "@jimp/plugin-circle": "^0.10.3", + "@jimp/plugin-color": "^0.10.3", + "@jimp/plugin-contain": "^0.10.3", + "@jimp/plugin-cover": "^0.10.3", + "@jimp/plugin-crop": "^0.10.3", + "@jimp/plugin-displace": "^0.10.3", + "@jimp/plugin-dither": "^0.10.3", + "@jimp/plugin-fisheye": "^0.10.3", + "@jimp/plugin-flip": "^0.10.3", + "@jimp/plugin-gaussian": "^0.10.3", + "@jimp/plugin-invert": "^0.10.3", + "@jimp/plugin-mask": "^0.10.3", + "@jimp/plugin-normalize": "^0.10.3", + "@jimp/plugin-print": "^0.10.3", + "@jimp/plugin-resize": "^0.10.3", + "@jimp/plugin-rotate": "^0.10.3", + "@jimp/plugin-scale": "^0.10.3", + "@jimp/plugin-shadow": "^0.10.3", + "@jimp/plugin-threshold": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/png": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/png/-/png-0.10.3.tgz", + "integrity": "sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "pngjs": "^3.3.3" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/tiff": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/tiff/-/tiff-0.10.3.tgz", + "integrity": "sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "utif": "^2.0.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/types": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/types/-/types-0.10.3.tgz", + "integrity": "sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/bmp": "^0.10.3", + "@jimp/gif": "^0.10.3", + "@jimp/jpeg": "^0.10.3", + "@jimp/png": "^0.10.3", + "@jimp/tiff": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/utils": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/utils/-/utils-0.10.3.tgz", + "integrity": "sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/@jimp/utils/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "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==", + "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==", + "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==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.11", + "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", + "devOptional": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", + "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==" + }, + "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==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@json-render/core": { + "version": "0.21.0", + "resolved": "https://registry.npmmirror.com/@json-render/core/-/core-0.21.0.tgz", + "integrity": "sha512-vysEbTjO1y8mEgAsp0tztRyaWCkNsBrG8MhAqbndGK3qmMXjMRdCNtk21+AQRNKdRelFGVAwBgtUNW8tfjQlsw==", + "dev": true, + "dependencies": { + "zod": "^4.3.6" + }, + "peerDependencies": { + "zod": "^4.0.0" + } + }, + "node_modules/@mini-types/alipay": { + "version": "3.0.14", + "resolved": "https://registry.npmmirror.com/@mini-types/alipay/-/alipay-3.0.14.tgz", + "integrity": "sha512-FakzSsKvybtWlEIVTIRlr89kuQFn+XY86Ho9VUFFaKLplhW6Wx8FUxTDE7IzV7B9rT8DP/Icy637vUHlXPsw1g==", + "dev": true, + "dependencies": { + "@mini-types/global": "3.0.14", + "@mini-types/my": "3.0.14" + } + }, + "node_modules/@mini-types/global": { + "version": "3.0.14", + "resolved": "https://registry.npmmirror.com/@mini-types/global/-/global-3.0.14.tgz", + "integrity": "sha512-St2ucFRfKRskposOqV/9iNJTKn1MbyqDypQiy/0DaVJjEm2MFi82RJjX9sBz1uWhQIqzu741PgTjGSy7L/Qj9g==", + "dev": true + }, + "node_modules/@mini-types/my": { + "version": "3.0.14", + "resolved": "https://registry.npmmirror.com/@mini-types/my/-/my-3.0.14.tgz", + "integrity": "sha512-aEgmM+rbEvEzTvqltCFRAg/h6KKs14M1y+FrOkz+hn2EyNpOVPesUzTjbRhSiFFsE3WdfBh54lHNYBahAmHq7w==", + "dev": true + }, + "node_modules/@modelcontextprotocol/core": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/@modelcontextprotocol/core/-/core-2.3.1.tgz", + "integrity": "sha512-laVmIhPGpWi7rG9q+0UigblRN0Hws/Yjlb6qLFtVqryXVLkc4h+yN8z731POD2LnAGQlFe7/tXhUm7Bi0YB91g==", + "dev": true, + "dependencies": { + "zod": "^4.2.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@modelcontextprotocol/server": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/@modelcontextprotocol/server/-/server-2.3.1.tgz", + "integrity": "sha512-e59MfWuSssj6DoQ96JCTqdW1AXT5/XtnTl0WWd6MU1Ka434fFUGGosCLJbGNySDhHGvxQWoRWK137FXYFkYNWw==", + "dev": true, + "dependencies": { + "@modelcontextprotocol/core": "2.3.1", + "zod": "^4.2.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@napi-rs/lzma-linux-x64-gnu": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", + "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^22.20 || ^24.12 || >=25" + } + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.2.5", + "resolved": "https://registry.npmmirror.com/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.5.tgz", + "integrity": "sha512-HshSvXzmBxNzqejd3k/KemgQ3hdREUYFRRrgxOZ+gPljDIsO2SDZrVZMd4Z/HsxudQbE62OVyVFE8z9BCurfjA==", + "dev": true, + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.3" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=23.5.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1 || ^2.0.0-alpha.4", + "@emnapi/runtime": "^1.7.1 || ^2.0.0-alpha.4" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@oxc-parser/binding-android-arm-eabi": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.131.0.tgz", + "integrity": "sha512-t2xicr9pfzkSRYx5aPqZqlLaayIwJTqgQ81Jor31Xep2nGyL2Aq3d0K5wOfeR7VevaSdxaS9dzSQP9xDwn8fDg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-android-arm64": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.131.0.tgz", + "integrity": "sha512-nlGIod6gw75x1aEDgLS+srj+JRGY0HHm9MI9YgzE/B64l6d6+H3MSP9NOgp0+HTg8tp4vV9rVfgQGgd+TfVZcA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-arm64": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.131.0.tgz", + "integrity": "sha512-jukuV6xe5RbQKFo7QD34NDCLDZp4PSOm8rmckhNdH/60ymG5zXbDzGBEyc+nTkuLQNama2aSGCt+CPfpjNTqyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-darwin-x64": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.131.0.tgz", + "integrity": "sha512-g3JOo4khe9rslHm5WYaVDWb0HS/M1MLR3I9S8560MkKIcC96VQY00QjOlsuRyfSj/JDXj8i9T7ryPO2RidiXVg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-freebsd-x64": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.131.0.tgz", + "integrity": "sha512-1hziITDTxjMePnX+dR9ocVT+EuZkQ8wm4FPAbmbEiKG+Phbo73J1ZnPAA6Y/aGsWF3McOFnQuZIktAFwalkfJQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-gnueabihf": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.131.0.tgz", + "integrity": "sha512-9uRxfXwyKG9+MwmGQBo2ncPNwZH5HTmCETFM2WiuDBNDCW4NC5ttSQkwCAMrTAWgwMzVBH1CP8pM0v7nebCWXQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm-musleabihf": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.131.0.tgz", + "integrity": "sha512-mgbLvzRShXOLBdWGInf08Af4q+pfj1xD8hSgLClDZ9of/BXkB6+LIhTH7fihiDUipqB3yoSkKBWaZ3Ejlf5Yag==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-gnu": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.131.0.tgz", + "integrity": "sha512-OPT8++4aN6j2GJ8+3IZHS/byXoZP4aSBn+FoG6rgBJ2fKwPKXWF3MqrFMNW7NKHM28FLY579xYLxJSfgobEqPA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-arm64-musl": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.131.0.tgz", + "integrity": "sha512-vtPiwmfVTAXzaxDKsOXG+LwgRAA7WEnaeHzhS5z0GE89gAK18KSXnly7Z6saXXq6L3dVMyK44uoTI03zKxrpmw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-ppc64-gnu": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.131.0.tgz", + "integrity": "sha512-8AW8L7w5cGHSdZPcyZX2yR0+GUODsT15rbRjfdD54rv6DMbtuEB19ysLOpKJlRGfH6UNYNpCHaU1uJWgTWf1/w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-gnu": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.131.0.tgz", + "integrity": "sha512-vvpjkjEOUsPcsYf8evE4MO3aGx9+3wodXEBOicGNnOwTuAik8eBONNkgSdhkGsAblQmfVHJyanRnpxglddTXIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-riscv64-musl": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.131.0.tgz", + "integrity": "sha512-AqmcNC3fClXX+fxQ6VGEN1667xVFiRBkY0CZmDMSiaeFUsv1+UkBPYYi48IUKcA9/ivvoKNRzQl2I4//kT9F/w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-s390x-gnu": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.131.0.tgz", + "integrity": "sha512-7d3jOMKy7RSQCcDLIci+ySll2FgsOMl/GiRux4q2JNv0zg4EdhFISa9idvrdN/HEUIQQJNg6dmveUeJl2YErGA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-gnu": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.131.0.tgz", + "integrity": "sha512-JHK/h95qVqVQ+ITER837kcTdwBDFpFaNnOTYGCP0zdUSX/mLKC7tXOoyrTb6vG7iRPwGlcgBil3v2IjYw1FqJA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-linux-x64-musl": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.131.0.tgz", + "integrity": "sha512-b2BO82O8azXAyf7EUgOPKu145nWypbNyk07HbU09fkzhm9lEA5oPvaN/M8Nlo7tOErVTa2WOgS4QbOnxAPXdDQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-openharmony-arm64": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.131.0.tgz", + "integrity": "sha512-GHO9glZaX7LkX/OGfluEPf1yjg+ehiFbUdowbX6uNWOQhmwKWU4m4+nZ9FJkrHNKuxyI1KKertMdGjVKCApKWA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-wasm32-wasi": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.131.0.tgz", + "integrity": "sha512-3SkikPaEFoih1N83qLVEDLRLeY4nYsf6JT9SnWiMCQ5lGQdKup6bEuKCqkRiG9dD1IIaFeYz9RjlciPmYoFIWA==", + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "1.10.0", + "@emnapi/runtime": "1.10.0", + "@napi-rs/wasm-runtime": "^1.1.4" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-arm64-msvc": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.131.0.tgz", + "integrity": "sha512-Os5bEhryeA2jkH+ZrnZyAC1EP5gs+X4YB1Fjqml7UPD5kU7ecsK1MPEVMfCrdt/GDNpDbavYXiOXOdyJ5b3OPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-ia32-msvc": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.131.0.tgz", + "integrity": "sha512-m+jNz9EuF0NXoiptc6B9h5yompZQVW/a5MJeOu5zojfH5yWk82tvF2ccrHkfhgtrS9h9DD5l1Qv8dWlfY7Nz8g==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-parser/binding-win32-x64-msvc": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.131.0.tgz", + "integrity": "sha512-o14Hk8dAyiEUMFEWEgmAwFZvBt1RzAYLM3xeQ+5315JXgVYhoemivgYcbYVRbsFkS71ShMGlAFE0kPnr460rww==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/@oxc-project/types/-/types-0.131.0.tgz", + "integrity": "sha512-PgnWDfV0h+b16XNKbXU7Daib/BFSt/J2mEzfYIBu6JB/wNdlU+kVYXCkGA1A9fWkTbOgbjh4e6NhPeQOYvFhEA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/@pkgr/core": { + "version": "0.3.6", + "resolved": "https://registry.npmmirror.com/@pkgr/core/-/core-0.3.6.tgz", + "integrity": "sha512-SEeaJLb3qBNF/OaXnaR1NmmBbFYk1zC0ZH/52fATcRPLFg/p791YrcyFFy44Bo9sLaGuSuLp5Q6axbb/O+v/RA==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" + } + }, + "node_modules/@quansync/fs": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@quansync/fs/-/fs-1.1.0.tgz", + "integrity": "sha512-qAPG/t3HqML1TlN7sY/pTbEjzFVAKsMjNNMGheyDosro+kT4iw2KCUoHcVdmliwWjorm4elZbgNQyU2eD97eDg==", + "dev": true, + "dependencies": { + "quansync": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@quansync/fs/node_modules/quansync": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-1.0.0.tgz", + "integrity": "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ] + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.64.5.tgz", + "integrity": "sha512-MrfgRQSpD5hkkRg6XI16B6EDLb+6+xp8xje6bpdSwkYw+qxrBKbUVrRAQu9h82UT+QumSIVQ8HXsXjPd2dlhqw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.64.5.tgz", + "integrity": "sha512-+uu2p/R9Tzn8GpoQyX1pAo5dmKT1DhXevfaCzqzmPFhnLjHLWw7uWkaVGlxmhwYoRiYYhsGfRcD5cTBpL7rgSw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.64.5.tgz", + "integrity": "sha512-17dys+YEmzwzzFVHQAVDONg5FALXY9kd99HFEpfk4gJVHYxoh5bGea3D4t1fXXnwkTcOe25wPyd6nWS0I8IdLQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.64.5.tgz", + "integrity": "sha512-wg0zQEKkEvFZf1UaaX1UELOoPs//OSKUG7D+yITuqOsAvza7LvHTv5Wu4nmMfzNG7EYI2jp2PJC7Id6OETmsYQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.64.5.tgz", + "integrity": "sha512-CoJmWcpEMuwin+TZ/ev/H9uDyF/uxUKQSWXdmIPn/UBx/uGV9+4ebMp0FwnlhWR9PE1AdzYsKf3bZevhif38+A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.64.5.tgz", + "integrity": "sha512-PxZnLAaTUAL5xG0W2BXLeYPKrK2b3LIASV2/e/Kf7PZvSLI1iAQIm9B9aJD+YyFIT7hc6qaMV3+OOO35R28LfA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.64.5.tgz", + "integrity": "sha512-uPo3IvnONjhbFXwWgroBeFwOicuhT7ZwQrnzkzmOtBJzeQbkUJUE1SJDfDI31ijQ5+ZUIA6sPrdUMxTSnxUWAg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.64.5.tgz", + "integrity": "sha512-ywI8Jyuc4LyHYTjC0mw4yA1ulvZBkHusdpWnoiEBsmBuHvSnt90btTBGCZ+s/2y+YNNfVAEKy33nPo5UI9zTmg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.64.5.tgz", + "integrity": "sha512-tmuXJoQ/3ovSr637aykZMdQteU/CB2APAz2CrvsbibuoHZi1BS1Db13cVViBdEARGwXCLn1DSJ8wsjoThLJPGA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.64.5.tgz", + "integrity": "sha512-5FMjSYNcUOHx7oW8Qu9KB6jGPpvF/8sG7+BDHwU/Ihh1/6FMJ9ySmsFG4tJ1qbNRuP8OLzCBDso4sF0mQaLuFQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.64.5.tgz", + "integrity": "sha512-K8ZJ+neLDbUkIrL8dqF/5LtuVCrKwo27kREgOlxjBEjlOXwHvDnHLU8Z/UKv/B49qi7e8hsSDOyoJwhwqhvX4w==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.64.5.tgz", + "integrity": "sha512-NlVxsq7PFPv0DBKGuNWRDKixQYQCjM53zl04mxEcKMBmJbCBIUm1JdPfIWDRHyOOFzzYPmLQzfeEwh4716ayQg==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.64.5.tgz", + "integrity": "sha512-ARhRHJYs5eCFet5azfrHD97vOkD8OzNW2RSMlvo5CcBqXaTOLfp0OHDtUQh7/K5AL5fUYoFp2fgC9KDg4vVYMQ==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.64.5.tgz", + "integrity": "sha512-atSgreM5C7jpxd9aEXN+6vJ5wTd05iYw+S3FiQpw7VsoEl8B90llbq35ARON+GOHj5QlVQEq2vOKWCHTob/BSQ==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.64.5.tgz", + "integrity": "sha512-vmlmwBFGnjVWxSRoVabNkyYuscSmg52Pd0fM8jEbNT3Jmka4A6HcB84x4uAmuumznWfBVaxKOqU6jbEgomWKCA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.64.5.tgz", + "integrity": "sha512-hhJrP6S9WkbsbcHgUkvCBS5Cn8IdsG8XjlLZyxjnv9+NdoYfbbZE4TWJYr8apdaj1M5t5Y1id2StnEslxpNFyA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.64.5.tgz", + "integrity": "sha512-NNVCyN9pGrwFmQa4bf+Cnf5aVH3g6ZpnlOg1Cs/H9swIHT9bRixijfzUqyEIWm1WtiAuR1LJ+rJH6zpBm8kgQA==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.64.5.tgz", + "integrity": "sha512-dR9nd6OKnvSS60Ifz/L7Mj5zzYyoqyRn2NwTuaOONKaa3xsVGXyp8YusMbvFyEOR94DxnwgcbgsFqkHd29ZSzQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.64.5.tgz", + "integrity": "sha512-1tzsMjaqhsh3bAO6SJiJqh8hIr9sSPRd+i2vPPxJHod8/XYnf9TEnK0z/u3r1z1AkI347X0KbRSg9dWcxeGahw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.64.5.tgz", + "integrity": "sha512-01mWMQblKoXXsmk28KXtpbA96w7g/aOWUoV3AC16fdHdqkykGalqyyM+5u8M7uP5/MEMiiPv69Hv7iv/hEH/dA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.64.5.tgz", + "integrity": "sha512-trdnMPb/DNm4V/CgsaoGgr90HfQQ071wfK0KoIs4YpLvjBgVQGXhGabg2Z6nK4EcYNilrb9ZZPcsP6+zpJIdxQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.64.5.tgz", + "integrity": "sha512-x2LxZlfdfsw99T6/qb9EqE/Qi84JWzibjyOJyhJsgFJy6CafaTiqIXCCnslCGrV5XWNh7fwrS3FbRENcuKnooA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.64.5.tgz", + "integrity": "sha512-/Qd/9aDQIo0+jmItgBmPIs8195YVbDxRRApn47GyufgbutCDOh7eP5vSKKlI4QNFeaI+wKQAkSMsPnF3EuMpaA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.64.5.tgz", + "integrity": "sha512-ngUJ/XvOWrqbd2IMsfXfh2xXFLTP3sY7sCKvxbGvYdBZ1KmXFd3ewDZ9n3/GNzAUgzRuhLT/UvJRivbNoAQRBw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.64.5.tgz", + "integrity": "sha512-IhV6ew/DuzUWwHaYmlh7MrPCV3lKFUq/amTEwysi4r/mwNPAEfAMh5dYWeTSPTeMy2pFHGMEWYtPkHzfX3tG5A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@shikijs/core": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/core/-/core-4.5.0.tgz", + "integrity": "sha512-6CIgwq+bt2JZ3OSjb/nBkkwEf/CfpHcbam+Mg5Pllco7HAGRQ2/EFhZrrJtbyNTgKwknfVS+llsXGygiDGwJWw==", + "dev": true, + "dependencies": { + "@shikijs/primitive": "4.5.0", + "@shikijs/types": "4.5.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.5", + "hast-util-to-html": "^9.0.5" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/engine-javascript/-/engine-javascript-4.5.0.tgz", + "integrity": "sha512-Ed6UdEj84LyYkwnxM5CvSMWAD+id9ExTYri0/+x41U9zrgNifPSS9lZm0JqBP0VfYI8yr8tY5nbNq9+p9R0kFA==", + "dev": true, + "dependencies": { + "@shikijs/types": "4.5.0", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.6" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/engine-oniguruma/-/engine-oniguruma-4.5.0.tgz", + "integrity": "sha512-dKVmbJecVdB9recl8a/CU4jdpNXyjJQrIcesIkpS70s5HS02ohpnCSpMUbotPnEUzbAcLQ+S4hwZYbkBBiTcJw==", + "dev": true, + "dependencies": { + "@shikijs/types": "4.5.0", + "@shikijs/vscode-textmate": "^10.0.2" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/langs": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/langs/-/langs-4.5.0.tgz", + "integrity": "sha512-wwBTqwduXSz0X4v9Qa2EWeFaYJEw1clCncWjoRNQRbVDu3SPRTRWucnouYapKj3b8Q+sk/41Vbc4B5c8nuYzLA==", + "dev": true, + "dependencies": { + "@shikijs/types": "4.5.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/primitive": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/primitive/-/primitive-4.5.0.tgz", + "integrity": "sha512-UM7ShlA8oz0OWxLLO8BmO9Ip6fVqdkt8yF0EH7nOCqHfrx1eEAzF0ZUVK7L+I8NEgeu1PEWSRlxaiPPeCb4iDg==", + "dev": true, + "dependencies": { + "@shikijs/types": "4.5.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.5" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/themes": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/themes/-/themes-4.5.0.tgz", + "integrity": "sha512-zGb87H3UBbpuI4yoh5UguB1XbU+2BDU3kflM7UfZ+Cy2hWo9lBtqjSVK20gmLY6ukYl040hAypGXMgud9vul8Q==", + "dev": true, + "dependencies": { + "@shikijs/types": "4.5.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/types": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/@shikijs/types/-/types-4.5.0.tgz", + "integrity": "sha512-drtPrtD8N0DENyD2cyt6Ajy+IWsiCLgMxODwLTpvH1UsN6a9jf90tNTPjqwHvA+0Lzu9e0txk8DjfqH1p9UJRw==", + "dev": true, + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.5" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmmirror.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "dev": true + }, + "node_modules/@sindresorhus/base62": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/@sindresorhus/base62/-/base62-1.0.0.tgz", + "integrity": "sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmmirror.com/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "peer": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@standard-schema/spec": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "dev": true + }, + "node_modules/@stylistic/eslint-plugin": { + "version": "5.10.0", + "resolved": "https://registry.npmmirror.com/@stylistic/eslint-plugin/-/eslint-plugin-5.10.0.tgz", + "integrity": "sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/types": "^8.56.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "estraverse": "^5.3.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": "^9.0.0 || ^10.0.0" + } + }, + "node_modules/@stylistic/eslint-plugin/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.4", + "resolved": "https://registry.npmmirror.com/@tybys/wasm-util/-/wasm-util-0.10.4.tgz", + "integrity": "sha512-W3c4gRigFS0T/Ma4qIYF3GDAc5AQdHb1yL5znJT1Zv1YaD9Kitx656wBjvr19qbiosmZT8lWDM5BEMynUqX65A==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmmirror.com/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmmirror.com/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmmirror.com/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/babel__traverse/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@types/crypto-js": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/@types/crypto-js/-/crypto-js-4.2.2.tgz", + "integrity": "sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==", + "dev": true, + "license": "MIT" + }, + "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/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==" + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmmirror.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/@types/hast/-/hast-3.0.5.tgz", + "integrity": "sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==", + "dev": true, + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "peer": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dev": true, + "dependencies": { + "@types/unist": "*" + } + }, + "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": "25.9.9", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-25.9.9.tgz", + "integrity": "sha512-b4e2xxj/yMeT2hNlD6x7zNFiQK2Dlmkb9CQ6v3/1G2RezKN4YS2lcEv8lzGm1mhs4f2lM4yNAMI/zUDBZBBt7w==", + "devOptional": true, + "dependencies": { + "undici-types": ">=7.24.0 <7.24.7" + } + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmmirror.com/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true, + "peer": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "peer": true + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "16.0.11", + "resolved": "https://registry.npmmirror.com/@types/yargs/-/yargs-16.0.11.tgz", + "integrity": "sha512-sbtvk8wDN+JvEdabmZExoW/HNr1cB7D/j4LT08rMiuikfA7m/JNJg7ATQcgzs34zHnoScDkY0ZRSl29Fkmk36g==", + "dev": true, + "peer": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "peer": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.71.1.tgz", + "integrity": "sha512-nNlBf6HuotqMgZvSkWD5hNdemiBIxQ2NmrlgfcUIeZRs+BbakjscCQRq/Hb74EFVnFiSWWdL12JruqwBy3ERDw==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.71.1", + "@typescript-eslint/type-utils": "8.71.1", + "@typescript-eslint/utils": "8.71.1", + "@typescript-eslint/visitor-keys": "8.71.1", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.71.1", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-8.71.1.tgz", + "integrity": "sha512-oM/5sAqz/l1v/zYK1qTOPrn2+JIrBGC1V6uNYucRO5gh6eT9vWJ/RhPbGE59byvZEUQ4VP6XkLBaS5Jti5jpvw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "8.71.1", + "@typescript-eslint/types": "8.71.1", + "@typescript-eslint/typescript-estree": "8.71.1", + "@typescript-eslint/visitor-keys": "8.71.1", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/parser/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/@typescript-eslint/project-service": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/project-service/-/project-service-8.71.1.tgz", + "integrity": "sha512-Oijc9RUsohHjncg6iGi7gCtjnEjYt9FWv9u6ygK8uKcHK5eLjLAkqERQ9BaytbpceOFdk6kifPCS/zAZE+A99g==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.71.1", + "@typescript-eslint/types": "^8.71.1", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/project-service/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/@typescript-eslint/scope-manager": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-8.71.1.tgz", + "integrity": "sha512-1YUDZXdTnXLlob03SFHBipdyMBsDVm7zoSz0ytTJ39dk5J1TgsTK03VlR/dLXG/RLLUrPcYbD4rp23BmHxHP0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.71.1", + "@typescript-eslint/visitor-keys": "8.71.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.71.1.tgz", + "integrity": "sha512-oTvkml5SxXhgg+WWKhod5qWQICDXtOB+/Hi9VdPKFAANJ2b7YOgMffgvzXuqog7R6A/JtrzRf128dsxummyWhg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-8.71.1.tgz", + "integrity": "sha512-kH3t3jZCYv2PZSBEWPKTariLrCaoF1CLoPitYFBJOhAGEwWnSRAtGEifrfrpBa4K9JlwWNZotgA5w3/wLSk/FQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.71.1", + "@typescript-eslint/typescript-estree": "8.71.1", + "@typescript-eslint/utils": "8.71.1", + "debug": "^4.4.3", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/type-utils/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/@typescript-eslint/types": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/types/-/types-8.71.1.tgz", + "integrity": "sha512-ybYnPTUwg3VQQOFEiBPLs8Jxl1ry2vXdn1kVKguomBbvxpetdu3MKTNDqFNUrlG8ylP9MpZosmXMFYlGQHk1oQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.71.1.tgz", + "integrity": "sha512-pSKSEK1JJpHs6KiKVtABCE4iJK5d7FLFzDXQNBQ2oRY7LEd3UwOt3TZemTgu9syTIf56dJWlTn/pdmrO9oKUXQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.71.1", + "@typescript-eslint/tsconfig-utils": "8.71.1", + "@typescript-eslint/types": "8.71.1", + "@typescript-eslint/visitor-keys": "8.71.1", + "debug": "^4.4.3", + "minimatch": "^10.2.2", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.5.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "5.0.12", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-5.0.12.tgz", + "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==", + "dev": true, + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", + "dev": true, + "dependencies": { + "brace-expansion": "^5.0.8" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-8.71.1.tgz", + "integrity": "sha512-CBjT6gfAz3DW2j9Q4moFnqt208Aq+506sVGXfpRcyAeqn0EpayL0mjdWoCO2t3RC7GewNrFxdeehuEaPg6DMzQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.71.1", + "@typescript-eslint/types": "8.71.1", + "@typescript-eslint/typescript-estree": "8.71.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.1.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.71.1", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.71.1.tgz", + "integrity": "sha512-0GxiUGqMU0qXJt58cBsiG3DP8lUmBaFo2vChtUX+CT7PnR3v/VGLLrzVP4K9r1lNiZXjHYefMBbPunplr09v6w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.71.1", + "eslint-visitor-keys": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/@ungap/structured-clone/-/structured-clone-1.4.0.tgz", + "integrity": "sha512-1mEZtMKPM09vDmQt5y7YvmN2+DFTP7Tg0EWXdic8/C6VRnpb33e4ghisCIE3WZjsE2N8mf+QV1Zqh7ZFYLWInQ==", + "dev": true + }, + "node_modules/@uni-helper/eslint-config": { + "version": "0.6.1", + "resolved": "https://registry.npmmirror.com/@uni-helper/eslint-config/-/eslint-config-0.6.1.tgz", + "integrity": "sha512-FWnZZToXlmfbUEGM67vhYTOTCd0hsYwPFMuDm3+6kU7nUJLsq6TxurI0/jG/HRM/SH1Les4GFxA2DYMrWlIQug==", + "dev": true, + "dependencies": { + "@antfu/eslint-config": "^6.5.1", + "@eslint/eslintrc": "^3.3.3", + "eslint-flat-config-utils": "^2.1.4", + "local-pkg": "^1.1.2" + }, + "peerDependencies": { + "@antfu/eslint-config": "^5.0.0 || ^6.0.0", + "eslint": "^9.10.0" + } + }, + "node_modules/@uni-helper/plugin-uni": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/@uni-helper/plugin-uni/-/plugin-uni-0.1.0.tgz", + "integrity": "sha512-hBPUjoQc/SgqKsyGUl0fJiL+dDwLPhf2es1PJdsXcxHyOujoBP2+D4z5ie+Q72wVwKtTsQSP3tSjww/63JRmbA==", + "dev": true, + "funding": { + "url": "https://afdian.com/a/flippedround" + }, + "peerDependencies": { + "@dcloudio/vite-plugin-uni": "*" + }, + "peerDependenciesMeta": { + "@dcloudio/vite-plugin-uni": { + "optional": false + } + } + }, + "node_modules/@uni-helper/uni-app-types": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/@uni-helper/uni-app-types/-/uni-app-types-1.4.0.tgz", + "integrity": "sha512-GDjm5Mchp4wWO6XKZmlDRL9gPpS/vhCEbvEge+eAXp1hl0ch+EDypn3IO2MnR5kf1SOkVqw2e8AyOop/FUy6aA==", + "dev": true, + "engines": { + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/ModyQyW/sponsors" + }, + "peerDependencies": { + "typescript": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@uni-helper/uni-cloud-types": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/@uni-helper/uni-cloud-types/-/uni-cloud-types-1.4.1.tgz", + "integrity": "sha512-MTnt8b+NmlyGcnieKvYGN08ydSn7HjZ79MWFSq+yAOK2j2NwSG/i2tl/brQ15dBdpl+PsZWXrZmiF62uHfEcPQ==", + "dev": true, + "engines": { + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/ModyQyW/sponsors" + }, + "peerDependencies": { + "typescript": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@uni-helper/uni-env": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/@uni-helper/uni-env/-/uni-env-0.1.8.tgz", + "integrity": "sha512-oZQisgM5sFarGrswKHJvS5S7xNMXLjcBcPTKp2gzLMon+chdHiKua1+Hlqe/NX79Re35W4A6/QHDrw9cZ5AVGQ==", + "dev": true, + "dependencies": { + "std-env": "^3.7.0" + } + }, + "node_modules/@uni-helper/uni-types": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/@uni-helper/uni-types/-/uni-types-1.4.1.tgz", + "integrity": "sha512-47djMNoifVu1xCE5oBEIl+makUbc0MJOnUynytzgkdY9AqraqgKiuI4Rr9kyCLJq2g8jvh2lZGGiZY8l6B8reQ==", + "dev": true, + "dependencies": { + "@uni-helper/uni-app-types": "1.4.0", + "@uni-helper/uni-cloud-types": "1.4.1", + "@uni-helper/uni-ui-types": "1.4.0" + }, + "engines": { + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/ModyQyW/sponsors" + }, + "peerDependencies": { + "@uni-helper/uni-app-types": "1.4.0", + "@uni-helper/uni-cloud-types": "1.4.1", + "@uni-helper/uni-ui-types": "1.4.0", + "typescript": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@uni-helper/uni-ui-types": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/@uni-helper/uni-ui-types/-/uni-ui-types-1.4.0.tgz", + "integrity": "sha512-eUzPvz7+VrnxityCfFLxqIxo7oB3JGwo0SmaQfz4I8yHm8FzJa51P/jietzAoBJw/R+DCabu21Y5UIseuj9xww==", + "dev": true, + "dependencies": { + "@uni-helper/uni-app-types": "1.4.0" + }, + "engines": { + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/ModyQyW/sponsors" + }, + "peerDependencies": { + "@uni-helper/uni-app-types": "1.4.0", + "typescript": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@uni-helper/unocss-preset-uni": { + "version": "0.2.11", + "resolved": "https://registry.npmmirror.com/@uni-helper/unocss-preset-uni/-/unocss-preset-uni-0.2.11.tgz", + "integrity": "sha512-/863vV/9y89j0ZzEGSrz+dCsOjxxUpGTNHL7+i/yokhyscmvcH8KPEpcOTfNtbkE5ALyJdNnfN70g2jbpxC3mw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@uni-helper/uni-env": "^0.1.7" + }, + "peerDependencies": { + "@unocss/preset-legacy-compat": ">=0.58", + "@unocss/preset-mini": ">=0.58", + "@unocss/rule-utils": ">=0.58", + "@unocss/vite": ">=0.58", + "unocss": ">=0.58", + "unocss-applet": ">=0.7" + }, + "peerDependenciesMeta": { + "@unocss/preset-mini": { + "optional": true + }, + "@unocss/vite": { + "optional": true + } + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components": { + "version": "0.2.10", + "resolved": "https://registry.npmmirror.com/@uni-helper/vite-plugin-uni-components/-/vite-plugin-uni-components-0.2.10.tgz", + "integrity": "sha512-RmTyqO7hCu7GwPtEwaiQbuyZG9Q7Mn+6PEYfLUyGjxzo+y+FP3PakaB0vctGB0snIUrR7DvuVbGxzsKTmgLIzA==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.3.0", + "chokidar": "^4.0.3", + "debug": "^4.4.3", + "local-pkg": "^1.1.2", + "magic-string": "^0.30.21", + "minimatch": "^10.1.1", + "tinyglobby": "^0.2.15" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/node_modules/@rollup/pluginutils": { + "version": "5.4.0", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.4.0.tgz", + "integrity": "sha512-MfPp06CjRLfXQ3wY0R8vJDYBy/MvVcc9OulEfR0B8Iv9ko+GCNaRZ+EpJYFl27LhKsZK0o420sYCRHCjfCgeUg==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "dev": true, + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/node_modules/brace-expansion": { + "version": "5.0.12", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-5.0.12.tgz", + "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==", + "dev": true, + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/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/@uni-helper/vite-plugin-uni-components/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/@uni-helper/vite-plugin-uni-components/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/node_modules/minimatch": { + "version": "10.2.6", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", + "dev": true, + "dependencies": { + "brace-expansion": "^5.0.8" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@uni-helper/vite-plugin-uni-components/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/@unocss-applet/preset-applet": { + "version": "0.15.1", + "resolved": "https://registry.npmmirror.com/@unocss-applet/preset-applet/-/preset-applet-0.15.1.tgz", + "integrity": "sha512-P99iehW68zSJvB1D1kJi5LIo45IvGMQzbcDbXqbPegWp++ptzHL6+WcIuhcQksCKkYiYtip3b7q+0aVnVzeoyQ==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "~66.10.1", + "@unocss/preset-mini": "~66.10.1", + "@unocss/preset-wind3": "~66.10.1", + "@unocss/preset-wind4": "~66.10.1", + "@vue/compiler-dom": "~3.5.42", + "oxc-parser": "^0.149.0" + }, + "engines": { + "node": ">=22.12" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-android-arm-eabi": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.149.0.tgz", + "integrity": "sha512-OQmN5XYQ/GNRkbU0Ksb2QSaHOgKWhFw7Bz6lJvANBdwVkLzTlcHXDLj62XrNPtUf3pDxRBr7OoHJrKhHYOb9iA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-android-arm64": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.149.0.tgz", + "integrity": "sha512-M7nHwfHY2Xv5Rm1iygvyOTPXrD4d5WRVw+C8eItLwoipzQBnkUMmwh3jvuGLBio2BGetfIH0F7J3Afb1Qn9dJg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-darwin-arm64": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.149.0.tgz", + "integrity": "sha512-h6NrhqRAVKbgzfShjHoBgjeJ1vQR2o6iNM6/t8JCSej1XRKJyraV08Zz7ey6SsjPzof4ecp48Upg2vidqoDgtQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-darwin-x64": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.149.0.tgz", + "integrity": "sha512-+WRRZeFYqVznJEEttiWNcI43Ij2iD0yphmMFkAuKNOQTyXQ+lLCAVW6aVLOD6nPO6FOymW7HtDh5KmnxZPi/2A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-freebsd-x64": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.149.0.tgz", + "integrity": "sha512-kG0YUZj/4hdHBQDtIr2UZ7Nyxy3M5Et+w3A0V0eefRgtQWE4wJrNflBJMJfwFPiwMLPlPL6qJR+5JdeIqhzW/g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-arm-gnueabihf": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.149.0.tgz", + "integrity": "sha512-gOD5NhD8DG7aJ8CLZ+ve5xoDq0y0J0zKZSfkfMGfk96XLhu21IzSFvjpEvVUGodD7Yyy3Tr9rNdiPEdZjkuRqQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-arm-musleabihf": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.149.0.tgz", + "integrity": "sha512-UtPYQkciY1NzYRtfKBopYfOjSxPFFVyprs0iH+Z5KZKNv9at/71pGd2KNrlmALhRcNocnxEsc+KuhY3nUlhIxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-arm64-gnu": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.149.0.tgz", + "integrity": "sha512-3jWkwykjJJegMD+5dU9n30mzwvTLi99fkUqHU9Pqdzw3fIVfyn6ZnjOl8l053jogr0BGQPxagTjIKBksp288eQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-arm64-musl": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.149.0.tgz", + "integrity": "sha512-H7n8zPxnLVI0pkutAxyXJNE/IaCuCJS6ghgv2cl8IDIgXCDZWjG/Bs8rF8BHKQ9gsOpA4m+T4lFaFAdnGuk/cw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-ppc64-gnu": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.149.0.tgz", + "integrity": "sha512-aByOTCdLYp8FjwAUUmN7YYjAmPJ/9t0I1ACuhAkYun87fajIHbwuZ/opaBk0Pnfxzp2vYyD8hdG8OQWEglP5oA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-riscv64-gnu": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.149.0.tgz", + "integrity": "sha512-SAdNs+uxMRBLPM6QuLlOxzE4duWia4EMhqGknsJS2EGnWni7i53gSZhaW3VYPxaP8nk/UsMQxMODIFwBHbRWcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-riscv64-musl": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.149.0.tgz", + "integrity": "sha512-RhmzD62QNtMjuBAeKJ15gzyNRv06Yz1ZFi6lgTiA5S3ixkrSMPJWIPGyqdlC4XiWxwAW9W4jeQNV4/Om9V27gA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-s390x-gnu": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.149.0.tgz", + "integrity": "sha512-HqEExoeKhlfUacdhj7KEe1m93B1SzCUkF88c1qLQR5Km6GPSoMHMIjK7qmRXLzjsO+ipSTWVsnYMVG0j2/mxNA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-x64-gnu": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.149.0.tgz", + "integrity": "sha512-FuAv1J7GoSkmxg5glvzlHA88Ld7dOIg23VdAsVLngPZN/ZjZPtCaBZDby1GPn63Yj+7h47/wbcd7i1p2UJTeNQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-linux-x64-musl": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.149.0.tgz", + "integrity": "sha512-KDFOVgjMIOiMiRUw+jZlAIEZZFG0WgGk+adcldjc+/qz0/kvobnYJqDqNX0+REJbSpSsM1Knj0zrEGTQ6WTIng==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-openharmony-arm64": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.149.0.tgz", + "integrity": "sha512-O3O+ZBhGEUhtbDXFWRMTuOCBg+fC2hf1wrtZBrd3VJUtV/MDd1LCwZXIHY2nMCnh9Akgjay965pBok2h5AXN0A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openharmony" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-win32-arm64-msvc": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.149.0.tgz", + "integrity": "sha512-9hMvs3GZESAcbUGU3mqXFWRLgBd8TLeosNYfHusHp/hrBnk5lIP2nJtark3hZ6qT+lqSdS79sH8NoWHj1x9iUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-win32-ia32-msvc": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.149.0.tgz", + "integrity": "sha512-8hQaS1Urc1NnlutDfhQ+DwijRALGLY+AmqJSBHV4OmyPZDoqgtkmjTHl2tsTLK6PETe6PbIJLKmXcpJuqkf8Lw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-parser/binding-win32-x64-msvc": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.149.0.tgz", + "integrity": "sha512-xFqDgKSKdY0m2EtHQL7uMuknuEGnvbtxkWllGle5hmhVe5xn5XZ0Zb9iViAsItFAf0CjSiZ5er3XqqAlr5oARA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@oxc-project/types": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/@oxc-project/types/-/types-0.149.0.tgz", + "integrity": "sha512-Efcc+iF0j3Bf67YjEqIqWXbX5XddXoK/Mw4K1/JuXwRCZ8N16VR7iT23nlCc9XrveFVh/E5Rqs2StT0V8v9LdA==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/oxc-project" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@vue/compiler-core": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.43.tgz", + "integrity": "sha512-zdiLhnbe1QQqgDT8xZMpNmyqZ3qlI+/Q/FHQco57Kwl/b05HhCzN6eVGN9QU9rbga4CrS0H5SYY8VGHZCt/1Hg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/shared": "3.5.43", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@vue/compiler-dom": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.43.tgz", + "integrity": "sha512-PEZoAk3NQmsn/ejMzSOCyTYqwGqczrWm70PuhBKjjv1+TCoQAaO/zOqNwjV+honlNstT5ILxtc+8r8UUfj+iEQ==", + "dev": true, + "peer": true, + "dependencies": { + "@vue/compiler-core": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/@vue/shared": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.43.tgz", + "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==", + "dev": true, + "peer": true + }, + "node_modules/@unocss-applet/preset-applet/node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/@unocss-applet/preset-applet/node_modules/oxc-parser": { + "version": "0.149.0", + "resolved": "https://registry.npmmirror.com/oxc-parser/-/oxc-parser-0.149.0.tgz", + "integrity": "sha512-iuirONeHJBp6dFuuZKvkCfFvBiF0uFmojIQooGtazR9+GvcwoayGMtal1+cvDUnEw2k435GBish01HOn5iyVqQ==", + "dev": true, + "peer": true, + "dependencies": { + "@oxc-project/types": "^0.149.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/oxc-project" + }, + "optionalDependencies": { + "@oxc-parser/binding-android-arm-eabi": "0.149.0", + "@oxc-parser/binding-android-arm64": "0.149.0", + "@oxc-parser/binding-darwin-arm64": "0.149.0", + "@oxc-parser/binding-darwin-x64": "0.149.0", + "@oxc-parser/binding-freebsd-x64": "0.149.0", + "@oxc-parser/binding-linux-arm-gnueabihf": "0.149.0", + "@oxc-parser/binding-linux-arm-musleabihf": "0.149.0", + "@oxc-parser/binding-linux-arm64-gnu": "0.149.0", + "@oxc-parser/binding-linux-arm64-musl": "0.149.0", + "@oxc-parser/binding-linux-ppc64-gnu": "0.149.0", + "@oxc-parser/binding-linux-riscv64-gnu": "0.149.0", + "@oxc-parser/binding-linux-riscv64-musl": "0.149.0", + "@oxc-parser/binding-linux-s390x-gnu": "0.149.0", + "@oxc-parser/binding-linux-x64-gnu": "0.149.0", + "@oxc-parser/binding-linux-x64-musl": "0.149.0", + "@oxc-parser/binding-openharmony-arm64": "0.149.0", + "@oxc-parser/binding-win32-arm64-msvc": "0.149.0", + "@oxc-parser/binding-win32-ia32-msvc": "0.149.0", + "@oxc-parser/binding-win32-x64-msvc": "0.149.0" + } + }, + "node_modules/@unocss-applet/preset-rem-rpx": { + "version": "0.15.1", + "resolved": "https://registry.npmmirror.com/@unocss-applet/preset-rem-rpx/-/preset-rem-rpx-0.15.1.tgz", + "integrity": "sha512-v8nms27EF5fN5IAmuvt6tLIjTsG6mX+sV7D9ROrPPjskWQS2TMLhcO/r4U9xGqt90P9ob+oOff4IG1DIYL214A==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "~66.10.1" + }, + "engines": { + "node": ">=22.12" + } + }, + "node_modules/@unocss-applet/transformer-attributify": { + "version": "0.15.1", + "resolved": "https://registry.npmmirror.com/@unocss-applet/transformer-attributify/-/transformer-attributify-0.15.1.tgz", + "integrity": "sha512-EvuCJiQcnewPbI1WJaLuvMfXEkpSHE7dF18qd7IYC1Vl0aQbnEtriNIUJmEUv3qZt44qA/kxOJBlCLS2jBWokg==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "~66.10.1", + "magic-string": "^1.2.3" + }, + "engines": { + "node": ">=22.12" + } + }, + "node_modules/@unocss-applet/transformer-attributify/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss-applet/transformer-hover": { + "version": "0.15.1", + "resolved": "https://registry.npmmirror.com/@unocss-applet/transformer-hover/-/transformer-hover-0.15.1.tgz", + "integrity": "sha512-dCWyO5afTLXR6hSm8t84YTL+8wA4xJcvmHumMhTX3dwWZLN884/8H330CS+j4tCjIdoESGtLhn/LYc7rhnezJA==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "~66.10.1", + "magic-string": "^1.2.3" + }, + "engines": { + "node": ">=22.12" + } + }, + "node_modules/@unocss-applet/transformer-hover/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/cli": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/cli/-/cli-66.10.1.tgz", + "integrity": "sha512-rWsCIr0xKtaaIoOlmdeUcTnFf6bksAb7qgL1j+N3TGQ+HlT6U9E0FZ2nV7Rnr1CwcxKvbwQOsxJUXIGDo/r7BA==", + "dev": true, + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.1", + "@unocss/core": "66.10.1", + "@unocss/preset-wind3": "66.10.1", + "@unocss/preset-wind4": "66.10.1", + "@unocss/transformer-directives": "66.10.1", + "cac": "^7.0.0", + "chokidar": "^5.0.0", + "colorette": "^2.0.20", + "consola": "^3.4.2", + "magic-string": "^1.2.2", + "pathe": "^2.0.3", + "perfect-debounce": "^2.1.0", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "bin": { + "unocss": "bin/unocss.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/cli/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/cli/node_modules/cac": { + "version": "7.1.0", + "resolved": "https://registry.npmmirror.com/cac/-/cac-7.1.0.tgz", + "integrity": "sha512-LMDU/U2yA4IPIY8KT0NsNPWEYZvAMkbgyspxJ6btJaYV+WMDOHAZCmB0lsTObiHaRS1V/ztKAl7+TSkTqXyeoA==", + "dev": true, + "engines": { + "node": ">=20.19.0" + } + }, + "node_modules/@unocss/cli/node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "dev": true, + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/cli/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/cli/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/cli/node_modules/readdirp": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", + "dev": true, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/cli/node_modules/unplugin-utils": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.3.2.tgz", + "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@unocss/config": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/config/-/config-66.10.1.tgz", + "integrity": "sha512-dLiJnQHbocFyTXkVhOl8IxpAApOWAeoWAmTgx0JUEyXKr93N0aoHESq2V626NfPNTps9aYE8lvyhcG/P2vkf7w==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "colorette": "^2.0.20", + "consola": "^3.4.2", + "unconfig": "^7.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/config/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/core": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.5.tgz", + "integrity": "sha512-fukv4bL32z/kWIiKgDy5ih452Jzf7S76p8RnP4N+3utqMFeqWayEApiqRidGv5b6NwPguTsKXaLsy+mbK9aMfA==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/extractor-arbitrary-variants": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/extractor-arbitrary-variants/-/extractor-arbitrary-variants-66.10.1.tgz", + "integrity": "sha512-hrfEaF22mN1M/aExZtlg/va0gFuu9Qo20MyErzn6yONJzNtWGptzNhXHFsXp6Fb5eI14C/XfEcD4eMp6MSo9+g==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/extractor-arbitrary-variants/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/inspector/-/inspector-66.10.1.tgz", + "integrity": "sha512-EMWaUaN0TwP3I0f5ykDOUw0WB1jhW+aB5wc48UFpF7aJyIBnt+Hl8/lMg2BfEgrCnjTTBbzzsJA+TX0qKUO6rg==", + "dev": true, + "dependencies": { + "@devframes/service-shiki": "^0.9.11", + "@devframes/vite": "^0.9.11", + "@unocss/config": "66.10.1", + "@unocss/core": "66.10.1", + "@unocss/rule-utils": "66.10.1", + "@vitejs/devtools-kit": "^0.7.1", + "colorette": "^2.0.20", + "devframe": "^0.9.11", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector/node_modules/@devframes/service-shiki": { + "version": "0.9.20", + "resolved": "https://registry.npmmirror.com/@devframes/service-shiki/-/service-shiki-0.9.20.tgz", + "integrity": "sha512-8UkIw9qhYfR+/PjY0xiGddEVarKH/p7IaGC02Kerl2h1JOkqUOyR4UkCCPzewLD5ji2ekMk1bzEEyDoye7tJ+Q==", + "dev": true, + "dependencies": { + "shiki": "^4.4.3" + }, + "peerDependencies": { + "devframe": "0.9.20" + } + }, + "node_modules/@unocss/inspector/node_modules/@devframes/vite": { + "version": "0.9.20", + "resolved": "https://registry.npmmirror.com/@devframes/vite/-/vite-0.9.20.tgz", + "integrity": "sha512-XRauZqYq/+jDZg+firh+4orGUJhpS4Y164qCjn2chWb1UKIh/K7BtTJ+6ANHWFd4qTsjjevXF3+D638WbWz+mw==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3" + }, + "peerDependencies": { + "@devframes/hub": "0.9.20", + "@devframes/hub-ui": "0.9.20", + "devframe": "0.9.20", + "vite": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@devframes/hub": { + "optional": true + }, + "@devframes/hub-ui": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@unocss/inspector/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/inspector/node_modules/devframe": { + "version": "0.9.20", + "resolved": "https://registry.npmmirror.com/devframe/-/devframe-0.9.20.tgz", + "integrity": "sha512-RN9DHAA7+CimBRmi2bwrwqRpV5VkYlymklU1T+BM5lGRd/jFrjvWTvPe9xLHaR2SU4sDvlZFxcRind2iJI1qBg==", + "dev": true, + "dependencies": { + "@modelcontextprotocol/server": "^2.0.0", + "@standard-schema/spec": "^1.1.0", + "birpc": "^4.2.0", + "crossws": "^0.4.12", + "h3": "^2.0.1-rc.31", + "mrmime": "^2.0.1", + "nostics": "^1.2.0", + "pathe": "^2.0.3", + "ufo": "^1.6.4" + }, + "bin": { + "devframe": "bin/devframe.mjs" + }, + "peerDependencies": { + "@modelcontextprotocol/client": "^2.0.0", + "cac": "^7.0.0" + }, + "peerDependenciesMeta": { + "@modelcontextprotocol/client": { + "optional": true + }, + "cac": { + "optional": true + } + } + }, + "node_modules/@unocss/inspector/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/inspector/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/inspector/node_modules/unplugin-utils": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.3.2.tgz", + "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@unocss/preset-attributify": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-attributify/-/preset-attributify-66.10.1.tgz", + "integrity": "sha512-BiJQ3mX/EAnFMTcFdUEbMvPiDERl/FTGLjtZrlhyG8ut8jYfYKmkZGjq9MPz9bIpE0xdfgD92jcbxcsKFsL1Zw==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-attributify/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-icons": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-icons/-/preset-icons-66.10.1.tgz", + "integrity": "sha512-I+fpu2WKODytHHOlwYMBb616Y0n0V1lLoFnBRNqoM6l9B8DDPg1D8Rsi0YlDK2g07TBQis8yRhC0P+zPZt3d1Q==", + "dev": true, + "dependencies": { + "@iconify/utils": "^3.1.4", + "@unocss/core": "66.10.1", + "ofetch": "^1.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-icons/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-legacy-compat": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/preset-legacy-compat/-/preset-legacy-compat-66.10.5.tgz", + "integrity": "sha512-5VzM0SUgoNLt+DPz2wiO6K0iDgCJixd10RG7e5wzMfooaxeYLQNFVrj4UVrtiUKJRHGc4nk0uw3h91iRYX0zPg==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "66.10.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-mini/-/preset-mini-66.10.1.tgz", + "integrity": "sha512-1X52DckWsbkdjX68w+rWGCJBWrQECDGfgpfkJEUS8lmBDJent7peFfOsy9/54sTmwgLLsXpS2ZViVl+RK5TwaQ==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/extractor-arbitrary-variants": "66.10.1", + "@unocss/rule-utils": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-mini/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/preset-tagify": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-tagify/-/preset-tagify-66.10.1.tgz", + "integrity": "sha512-VXEVLy0BR9TjCKwrv+TM9FzWIodkcSFeNyVA/ISDVZGjq/Fi+HyC47mkaInI5fiNlSWRzQtKR1wvkYQxS2F1Sg==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-tagify/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-typography/-/preset-typography-66.10.1.tgz", + "integrity": "sha512-HNsKl8P11VenFPgHZPrzJTyHpeBJe/xloD61n0sBRdsoDxBO8L+JbsM5RfYigWmlNDDmlq5biIx4lzehoKIRrQ==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/rule-utils": "66.10.1" + } + }, + "node_modules/@unocss/preset-typography/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-typography/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/preset-uno": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-uno/-/preset-uno-66.10.1.tgz", + "integrity": "sha512-8UO/xdysBNz9XZpB2W1x5AK7KYHFFpD9rdoYr10FjscZ4DIlxp6DPhdsu7QITwajfeCNF2VXafXReYNyrdEEFg==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/preset-wind3": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-uno/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-web-fonts": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-web-fonts/-/preset-web-fonts-66.10.1.tgz", + "integrity": "sha512-rl80dnjL1i7O6+nkTuEcx4AzlJ+p93FCU6tvP7b55v1N7IESxONw6lJhQiafPEwM60Typ7o0rCwnU7B8Yvi3yA==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "ofetch": "^1.5.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-web-fonts/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind/-/preset-wind-66.10.1.tgz", + "integrity": "sha512-C3AZN5tZCdGISs8De0JSLQeNych9JZ8QL1LEdubjZ1PxDkynGCAY5fid5QpUxU5FeUwnFftsO9Sp3Hoj7rL1VA==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/preset-wind3": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind3": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind3/-/preset-wind3-66.10.1.tgz", + "integrity": "sha512-LV5b+xZoONFfzCkoEiA8TrsPRHZUkRU8egCDXm57kgVE2PacynwFzK7mIFuYPzyAxJ3nGw4mExjRSLg9n5LK1Q==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/preset-mini": "66.10.1", + "@unocss/rule-utils": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind3/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind3/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind3/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/preset-wind4": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/preset-wind4/-/preset-wind4-66.10.1.tgz", + "integrity": "sha512-c9unFTgfctd2TuuwIRbDHdIFLigbWp1GcEHKV7uTic/jq1t051Uil6byu5d4d6Qg2K88AD1NbK1m0+FWdVebcg==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/extractor-arbitrary-variants": "66.10.1", + "@unocss/rule-utils": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind4/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind4/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/preset-wind4/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/rollup": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rollup/-/rollup-66.10.1.tgz", + "integrity": "sha512-fA97Hdm91zp3RRYhs33ubWi/hxEiYiSibRpk1k7h9fbmJXnOwRpJQggwX118VEUjWQjooE+q+6gp9oSWxdbqeQ==", + "dev": true, + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.1", + "@unocss/core": "66.10.1", + "chokidar": "^5.0.0", + "magic-string": "^1.2.2", + "pathe": "^2.0.3", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "rolldown": "^1.0.0", + "rollup": "^4.0.0" + }, + "peerDependenciesMeta": { + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, + "node_modules/@unocss/rollup/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/rollup/node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "dev": true, + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/rollup/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/rollup/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/rollup/node_modules/readdirp": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", + "dev": true, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/rollup/node_modules/unplugin-utils": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.3.2.tgz", + "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@unocss/rule-utils": { + "version": "66.10.5", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.5.tgz", + "integrity": "sha512-ePcz9fJfEVN4VXJgx2bPdGSZ/ujdyUhiJOnMTwIWRxlUdZ2Wgc5aT6zTb9W9AjOB0eWxO2Iyb0HGhA9GGuIY8g==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss/core": "66.10.5", + "magic-string": "^1.4.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/rule-utils/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/transformer-attributify-jsx": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-66.10.1.tgz", + "integrity": "sha512-7sbS/OK1nLYfYqGbsCoXKELjPBulYDh7nZFbdvAiyNDTtJKiAJ1RNUmPF0mCw68255AMncxFEVtMWfXquHt0GQ==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "oxc-parser": "^0.131.0", + "oxc-walker": "^0.7.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-attributify-jsx/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-compile-class": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-compile-class/-/transformer-compile-class-66.10.1.tgz", + "integrity": "sha512-cc4Rndvo3/UbaXbrYc3Fq6XjeGsdBRit6XnkxQnJ/UmP6JcC4tS93N2JiMmiz/reOcc/UwCENHB8VHTwqy4EUA==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-compile-class/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-directives/-/transformer-directives-66.10.1.tgz", + "integrity": "sha512-3w7bLb1G5CnNMEGuwuR889aoLBm4/aOXzqBFC4s6A9yRb3jfmdq1qs804tjq4npbNTfMuKztPzenqC1UMtg6iA==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "@unocss/rule-utils": "66.10.1", + "css-tree": "^3.2.1" + } + }, + "node_modules/@unocss/transformer-directives/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives/node_modules/@unocss/rule-utils": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/rule-utils/-/rule-utils-66.10.1.tgz", + "integrity": "sha512-1VcGBOP4Y5Qaog81tHU0zj22B9df9yQKQRMN8ks1KTBOcfUdlNAW27SYx6mp6n3Do7FJFLi5eBs1/U8HCA/2/A==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1", + "magic-string": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-directives/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/transformer-variant-group": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/transformer-variant-group/-/transformer-variant-group-66.10.1.tgz", + "integrity": "sha512-5b/Y2wZvF2A+xfyO1DJisVnzwlmYIjlYU70PrVZzDSrvQx5nuiM+OIm9Pp8+RI5BrbAcPsTYxkZe2YgeTdN9Pg==", + "dev": true, + "dependencies": { + "@unocss/core": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/transformer-variant-group/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/vite": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/vite/-/vite-66.10.1.tgz", + "integrity": "sha512-r9xzRwbEGbez1uUmConCfKpEWKsvjF1xUePz8twk0mS4TH2zlhnwhDy/XCV6Ia4lPy+n7oRvei5AXhtHx35rXg==", + "dev": true, + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "@unocss/config": "66.10.1", + "@unocss/core": "66.10.1", + "@unocss/inspector": "66.10.1", + "chokidar": "^5.0.0", + "magic-string": "^1.2.2", + "pathe": "^2.0.3", + "tinyglobby": "^0.2.17", + "unplugin-utils": "^0.3.2" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0 || ^8.0.0-0" + } + }, + "node_modules/@unocss/vite/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@unocss/vite/node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "dev": true, + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/vite/node_modules/magic-string": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-1.4.3.tgz", + "integrity": "sha512-z12OxmaPGE0F4xlpGdjuAUckipLpQlTAuAmyGhNoD7ODpYUzvDfvtxUbjM/jwznyP178oju/KDdyi220wNJ0RQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.6.0" + } + }, + "node_modules/@unocss/vite/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@unocss/vite/node_modules/readdirp": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", + "dev": true, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@unocss/vite/node_modules/unplugin-utils": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.3.2.tgz", + "integrity": "sha512-xVToRh2CTmLk2HnEG7ac4rl1MJTT3RFkpS8B++/SnB0kXvuaavD+n3m/vrzyWQOdJNSZQACnbz01pnppbwV5BA==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=20.19.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/@vitejs/devtools-kit": { + "version": "0.7.6", + "resolved": "https://registry.npmmirror.com/@vitejs/devtools-kit/-/devtools-kit-0.7.6.tgz", + "integrity": "sha512-VtnTo296ypQyksFcPgrUyDDxh/SuAa/18uWEitbODcJIu5eilMFQyaSzsLKgp0HQPsxo/Kfzbfl5gowNGfjwqQ==", + "dev": true, + "dependencies": { + "@devframes/hub": "^1.0.0", + "@devframes/json-render": "^1.0.0", + "devframe": "^1.0.0", + "local-pkg": "^1.2.1", + "nostics": "^1.3.0", + "package-manager-detector": "^1.8.0" + }, + "peerDependencies": { + "vite": "*" + } + }, + "node_modules/@vitejs/devtools-kit/node_modules/@devframes/hub": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/@devframes/hub/-/hub-1.2.3.tgz", + "integrity": "sha512-Z5WtKK0+UxEZizo1wpRFEYR3y9UtbQk50k47dvtOgn/z/F8lpj4/nbH9HfAIDH6Z7s0vfhvQQQW6U5OnaYMM0g==", + "dev": true, + "dependencies": { + "destr": "^2.0.5", + "h3": "^2.0.1", + "pathe": "^2.0.3", + "tinyexec": "^1.3.1", + "zigpty": "^0.2.1" + }, + "peerDependencies": { + "@devframes/agentic": "1.2.3", + "devframe": "1.2.3" + }, + "peerDependenciesMeta": { + "@devframes/agentic": { + "optional": true + } + } + }, + "node_modules/@vitejs/devtools-kit/node_modules/@devframes/json-render": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/@devframes/json-render/-/json-render-1.2.3.tgz", + "integrity": "sha512-7sQFioOPfBt7jBTjVsGXAmnH8jMyXZfZywYd4qPnYZwTyilU5LfuI52LHiPP63CU0H2jmgqFilZQe86IRWRRXQ==", + "dev": true, + "dependencies": { + "@json-render/core": "^0.21.0", + "zod": "^4.6.5" + }, + "peerDependencies": { + "@devframes/hub": "1.2.3", + "devframe": "1.2.3" + }, + "peerDependenciesMeta": { + "@devframes/hub": { + "optional": true + } + } + }, + "node_modules/@vitejs/devtools-kit/node_modules/devframe": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/devframe/-/devframe-1.2.3.tgz", + "integrity": "sha512-IIe9q99/B4OS2IQ4LNk9H2NFXvWxdLteM1C2OFbpAFIQ4cWLpzmsfWsuwF3VfVclXhKl/MniNwv4vz4a+5CumA==", + "dev": true, + "dependencies": { + "crossws": "^0.4.12", + "h3": "^2.0.1", + "nostics": "^1.3.0", + "pathe": "^2.0.3" + }, + "bin": { + "devframe": "bin/devframe.mjs" + }, + "peerDependencies": { + "@devframes/agentic": "1.2.3", + "cac": "^7.0.0" + }, + "peerDependenciesMeta": { + "@devframes/agentic": { + "optional": true + }, + "cac": { + "optional": true + } + } + }, + "node_modules/@vitejs/plugin-legacy": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-legacy/-/plugin-legacy-5.3.2.tgz", + "integrity": "sha512-8moCOrIMaZ/Rjln0Q6GsH6s8fAt1JOI3k8nmfX4tXUxE5KAExVctSyOBk+A25GClsdSWqIk2yaUthH3KJ2X4tg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/preset-env": "^7.23.9", + "browserslist": "^4.23.0", + "browserslist-to-esbuild": "^2.1.1", + "core-js": "^3.36.0", + "magic-string": "^0.30.7", + "regenerator-runtime": "^0.14.1", + "systemjs": "^6.14.3" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "peerDependencies": { + "terser": "^5.4.0", + "vite": "^5.0.0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz", + "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3", + "@vue/babel-plugin-jsx": "^1.1.5" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.28", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", + "dev": true, + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.28", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", + "dev": true + }, + "node_modules/@volar/typescript": { + "version": "2.4.28", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", + "dev": true, + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.5.0", + "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.5.0.tgz", + "integrity": "sha512-0dAYkerNhhHutHZ34JtTl2czVQHUNWv6xEbkdF5W+Yrv5pCWsqjeORdOgbtW2I9gWlt+wBmVn+ttqN9ZxR5tzA==", + "dev": true + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.5.0", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.5.0.tgz", + "integrity": "sha512-mneBhw1oOqCd2247O0Yw/mRwC9jIGACAJUlawkmMBiNmL4dGA2eMzuNZVNqOUfYTa6vqmND4CtOPzmEEEqLKFw==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.0", + "@babel/types": "^7.28.2", + "@vue/babel-helper-vue-transform-on": "1.5.0", + "@vue/babel-plugin-resolve-type": "1.5.0", + "@vue/shared": "^3.5.18" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-jsx/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-jsx/node_modules/@vue/shared": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.43.tgz", + "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==", + "dev": true + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.5.0", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.5.0.tgz", + "integrity": "sha512-Wm/60o+53JwJODm4Knz47dxJnLDJ9FnKnGZJbUUf8nQRAtt6P+undLUAVU3Ha33LxOJe6IPoifRQ6F/0RrU31w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/parser": "^7.28.0", + "@vue/compiler-sfc": "^3.5.18" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@vue/compiler-core": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.43.tgz", + "integrity": "sha512-zdiLhnbe1QQqgDT8xZMpNmyqZ3qlI+/Q/FHQco57Kwl/b05HhCzN6eVGN9QU9rbga4CrS0H5SYY8VGHZCt/1Hg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/shared": "3.5.43", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@vue/compiler-dom": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.43.tgz", + "integrity": "sha512-PEZoAk3NQmsn/ejMzSOCyTYqwGqczrWm70PuhBKjjv1+TCoQAaO/zOqNwjV+honlNstT5ILxtc+8r8UUfj+iEQ==", + "dev": true, + "dependencies": { + "@vue/compiler-core": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@vue/compiler-sfc": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.43.tgz", + "integrity": "sha512-FCbrG3XNCRl+js3huuKx4IVHBLTvMkJhVepjbxSPu1gn4yWLaYtGNQdjJGZaMytXB6qb76qQDDmDSLy/vkmleQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/compiler-core": "3.5.43", + "@vue/compiler-dom": "3.5.43", + "@vue/compiler-ssr": "3.5.43", + "@vue/shared": "3.5.43", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.28", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@vue/compiler-ssr": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.43.tgz", + "integrity": "sha512-GF62orf7KiJX9RqrHNGrYBudsQGD0OhJ5nDs90O8UiDuS40+YMYomiXu6w6EuvtXuRDc3MSNis3EaaSKAVSWpg==", + "dev": true, + "dependencies": { + "@vue/compiler-dom": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@vue/shared": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.43.tgz", + "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==", + "dev": true + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", + "dependencies": { + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/consolidate": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/@vue/consolidate/-/consolidate-1.0.0.tgz", + "integrity": "sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==", + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==" + }, + "node_modules/@vue/language-core": { + "version": "3.3.13", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-3.3.13.tgz", + "integrity": "sha512-axA0Xemn5LuUKuKWob0/kVq7xQ2mJJM6VqA9Exvt35nM9yRC31goWVve/G/Zb2ZCLsXC8FHYjjfXlnshknSCew==", + "dev": true, + "dependencies": { + "@volar/language-core": "2.4.28", + "@vue/compiler-dom": "^3.5.0", + "@vue/shared": "^3.5.0", + "alien-signals": "^3.2.1", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1", + "picomatch": "^4.0.4" + } + }, + "node_modules/@vue/language-core/node_modules/@babel/parser": { + "version": "7.29.9", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.29.9.tgz", + "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/language-core/node_modules/@vue/compiler-core": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.43.tgz", + "integrity": "sha512-zdiLhnbe1QQqgDT8xZMpNmyqZ3qlI+/Q/FHQco57Kwl/b05HhCzN6eVGN9QU9rbga4CrS0H5SYY8VGHZCt/1Hg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.29.8", + "@vue/shared": "3.5.43", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/language-core/node_modules/@vue/compiler-dom": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.43.tgz", + "integrity": "sha512-PEZoAk3NQmsn/ejMzSOCyTYqwGqczrWm70PuhBKjjv1+TCoQAaO/zOqNwjV+honlNstT5ILxtc+8r8UUfj+iEQ==", + "dev": true, + "dependencies": { + "@vue/compiler-core": "3.5.43", + "@vue/shared": "3.5.43" + } + }, + "node_modules/@vue/language-core/node_modules/@vue/shared": { + "version": "3.5.43", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.43.tgz", + "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==", + "dev": true + }, + "node_modules/@vue/language-core/node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/@vue/language-core/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", + "dependencies": { + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", + "dependencies": { + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", + "dependencies": { + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "vue": "3.4.21" + } + }, + "node_modules/@vue/shared": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==" + }, + "node_modules/@vue/tsconfig": { + "version": "0.8.1", + "resolved": "https://registry.npmmirror.com/@vue/tsconfig/-/tsconfig-0.8.1.tgz", + "integrity": "sha512-aK7feIWPXFSUhsCP9PFqPyFOcz4ENkb8hZ2pneL6m2UjCkccvaOhC/5KCKluuBufvp2KzkbdA2W2pk20vLzu3g==", + "dev": true, + "peerDependencies": { + "typescript": "5.x", + "vue": "^3.4.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "vue": { + "optional": true + } + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true, + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.19.0", + "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.19.0.tgz", + "integrity": "sha512-oJlA3XiRm7Cyk6qFD2Jn8ak9B7jSy0qy00ADO3+8dpT0LSjFihQYv4C02LFCSYJV3Q37xYwwRy5m+IpIiUzqWw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "peer": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmmirror.com/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmmirror.com/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "engines": { + "node": ">=12.0" + } + }, + "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, + "peer": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "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/alien-signals": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/alien-signals/-/alien-signals-3.2.1.tgz", + "integrity": "sha512-I8FjmltrfnDFoZedi5CG8DghVYNhzb/Ijluz7tCSJH0xpd0484Kowhbb1XDYOxfJpU1p5wnM2X54dA+IfGyD1g==", + "dev": true + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansis": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/ansis/-/ansis-4.4.0.tgz", + "integrity": "sha512-9k3v7xcHwgdO/DruxGIg4HtjvlAZlcnsX/mzqUb1t3NkYnl9kK2UJ+Gq0io+vQf7iT//BD/HB/NBkUR1LWxoeA==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/any-base": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/any-base/-/any-base-1.1.0.tgz", + "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmmirror.com/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "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/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "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, + "peer": true + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmmirror.com/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/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, + "peer": 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/babel-jest/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/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, + "peer": true + }, + "node_modules/babel-jest/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.17", + "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz", + "integrity": "sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-define-polyfill-provider": "^0.6.8", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.14.2", + "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz", + "integrity": "sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.8", + "core-js-compat": "^3.48.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.8", + "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz", + "integrity": "sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.8" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", + "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "peer": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.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==", + "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/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.28", + "resolved": "https://registry.npmmirror.com/baseline-browser-mapping/-/baseline-browser-mapping-2.11.28.tgz", + "integrity": "sha512-br0LOmjJqr6Rt4AEkadbcNf67Zpo7EPwKsWbjnRrJIa1QYFHQBqM4C7F2WTbV8ahTEcg1Eo+Y0aWjjORInYFyA==", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/birpc": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/birpc/-/birpc-4.2.0.tgz", + "integrity": "sha512-KxgKcZPfrtzJDDALHPguGpGJUrzdgpymyiQQgzFjWreHMOpWrnFNVREr5J48x2DBh8ZVioscrV1SBkDipGiX+Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/bmp-js": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/bmp-js/-/bmp-js-0.1.0.tgz", + "integrity": "sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==" + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmmirror.com/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmmirror.com/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.21", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.21.tgz", + "integrity": "sha512-9zeA+KLZNNzglF2TPKRQEDyx6Yby7daAkuy8MiPzpXPsYDWi/DRM8jmwUDxokQjYqBpv5DgPiwD4h4ZZSy1Ujw==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true, + "peer": true + }, + "node_modules/browserslist": { + "version": "4.29.3", + "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.29.3.tgz", + "integrity": "sha512-1R4kiYKXGViqEN0CnoDrXc1StD9niAwu+j2dukWzrD4bJgsD4lDmEp0CRbc6E/vYJIfTHwPmwyaKtVSudICdPA==", + "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.11.26", + "caniuse-lite": "^1.0.30001813", + "electron-to-chromium": "^1.5.439", + "node-releases": "^2.0.57", + "update-browserslist-db": "^1.3.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-to-esbuild": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/browserslist-to-esbuild/-/browserslist-to-esbuild-2.1.1.tgz", + "integrity": "sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==", + "dev": true, + "dependencies": { + "meow": "^13.0.0" + }, + "bin": { + "browserslist-to-esbuild": "cli/index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "browserslist": "*" + } + }, + "node_modules/bser": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/bser/-/bser-2.1.2.tgz", + "integrity": "sha512-V2o8YS2EhrKMO9AumnkK0ynynfFlsajpYupwq7S46H5mhcanwxDkNTw3K67wPIcKTH1ffkA4vhMOtAc7gRmPZw==", + "dev": true, + "peer": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", + "engines": { + "node": ">=0.4.0" + } + }, + "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==", + "devOptional": true + }, + "node_modules/builtin-modules": { + "version": "5.4.0", + "resolved": "https://registry.npmmirror.com/builtin-modules/-/builtin-modules-5.4.0.tgz", + "integrity": "sha512-JCWSCdun+4Ovd9BhM/Vtlmwb7oD6Wl4YiPRXXwhAuwlPhW1un/MKgXn7GZoFm53ginnoNzus69V8JWx0K393jg==", + "dev": true, + "engines": { + "node": ">=18.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cac": { + "version": "6.7.9", + "resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.9.tgz", + "integrity": "sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==", + "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/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001815", + "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001815.tgz", + "integrity": "sha512-uDybUEyfgbyJJ93J1vikTylBX31AkdVYeVPeffMQpf8XN7hSfr0oZOn4VFOIMNvtU5+rHvC5Udg2TgtJKHm23Q==", + "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/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/centra": { + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/centra/-/centra-2.7.0.tgz", + "integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==", + "dependencies": { + "follow-redirects": "^1.15.6" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/change-case": { + "version": "5.4.4", + "resolved": "https://registry.npmmirror.com/change-case/-/change-case-5.4.4.tgz", + "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==", + "dev": true + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/ci-info": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-4.4.0.tgz", + "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true, + "peer": true + }, + "node_modules/clean-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/clean-regexp/-/clean-regexp-1.0.0.tgz", + "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/clean-regexp/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "peer": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", + "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==", + "dev": true, + "peer": true + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "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, + "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "devOptional": true + }, + "node_modules/comment-parser": { + "version": "1.4.7", + "resolved": "https://registry.npmmirror.com/comment-parser/-/comment-parser-1.4.7.tgz", + "integrity": "sha512-0h+uSNtQGW3D98eQt3jJ8L06Fves8hncB4V/PKdw/Qb8Hnk19VaKuTr55UNRYiSoVa7WwrFls+rh3ux9agmkeQ==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==" + }, + "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/confbox": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.3.1.tgz", + "integrity": "sha512-cKUSoKa8YxFZZSmraVi7onONx3amu77ngK3kGpsYHDH7drPwCRkQE1RYMPlLRrMtnciRj274XNRxcHxnKmDSnA==" + }, + "node_modules/consola": { + "version": "3.4.2", + "resolved": "https://registry.npmmirror.com/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "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==" + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmmirror.com/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/core-js": { + "version": "3.50.0", + "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.50.0.tgz", + "integrity": "sha512-BRWgOLKkFeCgRudR6zrs8p9XJZcE14grzKMMssoYrk6krtuEZ7MTKPIY5RzOnqsEKIR9kst7wNzphttraT+Yqw==", + "hasInstallScript": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.50.0", + "resolved": "https://registry.npmmirror.com/core-js-compat/-/core-js-compat-3.50.0.tgz", + "integrity": "sha512-XGpFGbMLHwSt74YLTKho7Ib242qi6O8MSX+sRokV4oz7iKXvQWGYZthjIhjRGMxjzVkAubBO512dKGYcefmX3Q==", + "dev": true, + "dependencies": { + "browserslist": "^4.28.7" + }, + "engines": { + "node": ">=6.4.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "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/crossws": { + "version": "0.4.15", + "resolved": "https://registry.npmmirror.com/crossws/-/crossws-0.4.15.tgz", + "integrity": "sha512-NsUOpDZosz7nyI+qEIl05yaiXOWaXH2oTeM+XBWtiSWZtb5rzcIsl1AST/HzM2jzUn76eFuyrkn83E6iSBRUvw==", + "dev": true, + "peerDependencies": { + "srvx": ">=0.11.5" + }, + "peerDependenciesMeta": { + "srvx": { + "optional": true + } + } + }, + "node_modules/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", + "license": "MIT" + }, + "node_modules/css-font-size-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", + "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==" + }, + "node_modules/css-font-stretch-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", + "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==" + }, + "node_modules/css-font-style-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", + "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==" + }, + "node_modules/css-font-weight-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", + "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==" + }, + "node_modules/css-list-helpers": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/css-list-helpers/-/css-list-helpers-2.0.0.tgz", + "integrity": "sha512-9Bj8tZ0jWbAM3u/U6m/boAzAwLPwtjzFvwivr2piSvyVa3K3rChJzQy4RIHkNkKiZCHrEMWDJWtTR8UyVhdDnQ==" + }, + "node_modules/css-system-font-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", + "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==" + }, + "node_modules/css-tree": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-3.2.1.tgz", + "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==", + "dev": true, + "dependencies": { + "mdn-data": "2.27.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true, + "peer": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "peer": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true, + "peer": true + }, + "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/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "peer": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dayjs": { + "version": "1.11.23", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.23.tgz", + "integrity": "sha512-QDTCU0M0MxR3hQfnlDJfwekQiaanm1ubOD231u73WBckQ/fsamwRLiE2GBz6D3a/xF1NgfiDLJjXBa1hYOYTtQ==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.6.0", + "resolved": "https://registry.npmmirror.com/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", + "dev": true, + "peer": true + }, + "node_modules/decode-named-character-reference": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz", + "integrity": "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==", + "dev": true, + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmmirror.com/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true, + "peer": true + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defu": { + "version": "6.1.7", + "resolved": "https://registry.npmmirror.com/defu/-/defu-6.1.7.tgz", + "integrity": "sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==", + "dev": true + }, + "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, + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/destr": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/destr/-/destr-2.0.5.tgz", + "integrity": "sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==", + "dev": true + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dev": true, + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "peer": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.5.452", + "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.452.tgz", + "integrity": "sha512-cVvk1YBSj6571VmV6hdJTqj94Y79xSu8cj6Y9t6ae4Y4431z8/7EJFvu3rVp90xhfuv9BpPKUmaLfTo4+FOGBg==" + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmmirror.com/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "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, + "peer": true + }, + "node_modules/empathic": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/empathic/-/empathic-2.1.0.tgz", + "integrity": "sha512-AnfC1ATldl49/cvZdLPDjBfrRNwbDO05aibiOtzQu3qtlbJtomNLhF30HEtn/7iBz50dlMECqATo3fG0LrdEgw==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.26.0", + "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.26.0.tgz", + "integrity": "sha512-9vhedylFonb2YGogzUKX6+Ja72gOJbN1QHAqdrvqLwhdl/QWbKopzoUC9EbQNVsAns/bx/4uyqalrQAoy1IByw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.3.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", + "dev": true, + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "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-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==" + }, + "node_modules/es-object-atoms": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", + "dev": true, + "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, + "peer": 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/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "peer": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint": { + "version": "9.39.4", + "resolved": "https://registry.npmmirror.com/eslint/-/eslint-9.39.4.tgz", + "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.2", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.5", + "@eslint/js": "9.39.4", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.14.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.5", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-compat-utils": { + "version": "0.6.5", + "resolved": "https://registry.npmmirror.com/eslint-compat-utils/-/eslint-compat-utils-0.6.5.tgz", + "integrity": "sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==", + "dev": true, + "dependencies": { + "semver": "^7.5.4" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-compat-utils/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-config-flat-gitignore": { + "version": "2.4.0", + "resolved": "https://registry.npmmirror.com/eslint-config-flat-gitignore/-/eslint-config-flat-gitignore-2.4.0.tgz", + "integrity": "sha512-JhYC+V7qEDiCDsbJcVP8fxNc62fk4+i91YLP/YvmVHlkaQ8Xo99olYN8MO5COdxl7onGlsrfZVONe5NYsZP1UA==", + "dev": true, + "dependencies": { + "@eslint/compat": "^2.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "^9.5.0 || ^10.0.0" + } + }, + "node_modules/eslint-flat-config-utils": { + "version": "2.1.4", + "resolved": "https://registry.npmmirror.com/eslint-flat-config-utils/-/eslint-flat-config-utils-2.1.4.tgz", + "integrity": "sha512-bEnmU5gqzS+4O+id9vrbP43vByjF+8KOs+QuuV4OlqAuXmnRW2zfI/Rza1fQvdihQ5h4DUo0NqFAiViD4mSrzQ==", + "dev": true, + "dependencies": { + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/eslint-json-compat-utils": { + "version": "0.2.3", + "resolved": "https://registry.npmmirror.com/eslint-json-compat-utils/-/eslint-json-compat-utils-0.2.3.tgz", + "integrity": "sha512-RbBmDFyu7FqnjE8F0ZxPNzx5UaptdeS9Uu50r7A+D7s/+FCX+ybiyViYEgFUaFIFqSWJgZRTpL5d8Kanxxl2lQ==", + "dev": true, + "dependencies": { + "esquery": "^1.6.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": "*", + "jsonc-eslint-parser": "^2.4.0 || ^3.0.0" + }, + "peerDependenciesMeta": { + "@eslint/json": { + "optional": true + } + } + }, + "node_modules/eslint-merge-processors": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/eslint-merge-processors/-/eslint-merge-processors-2.0.0.tgz", + "integrity": "sha512-sUuhSf3IrJdGooquEUB5TNpGNpBoQccbnaLHsb1XkBLUPPqCNivCpY05ZcpCOiV9uHwO2yxXEWVczVclzMxYlA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/eslint-plugin-antfu": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/eslint-plugin-antfu/-/eslint-plugin-antfu-3.2.3.tgz", + "integrity": "sha512-U2fnz/H0gFPxpuC7QpaHa0Jv2AgCZ5hunp36SOP/yWo8yFzgvMh8X4pZ4uN4IKoqtBhk7G3HuVa93Urf51+sZg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/eslint-plugin-command": { + "version": "3.5.3", + "resolved": "https://registry.npmmirror.com/eslint-plugin-command/-/eslint-plugin-command-3.5.3.tgz", + "integrity": "sha512-JIhmUOW2K2Dw1K+p4mtj5potkqTZ4ZaicrTkgCygPZCWErP2+O2F46n7ZwGKapeEjiwcVqoY8u01SxNUUXWPeQ==", + "dev": true, + "dependencies": { + "@es-joy/jsdoccomment": "^0.88.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@typescript-eslint/typescript-estree": "*", + "@typescript-eslint/utils": "*", + "eslint": "*" + } + }, + "node_modules/eslint-plugin-es-x": { + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", + "integrity": "sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/ota-meshi", + "https://opencollective.com/eslint" + ], + "dependencies": { + "@eslint-community/eslint-utils": "^4.1.2", + "@eslint-community/regexpp": "^4.11.0", + "eslint-compat-utils": "^0.5.1" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": ">=8" + } + }, + "node_modules/eslint-plugin-es-x/node_modules/eslint-compat-utils": { + "version": "0.5.1", + "resolved": "https://registry.npmmirror.com/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz", + "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", + "dev": true, + "dependencies": { + "semver": "^7.5.4" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-plugin-es-x/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-import-lite": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-import-lite/-/eslint-plugin-import-lite-0.4.0.tgz", + "integrity": "sha512-My0ReAg8WbHXYECIHVJkWB8UxrinZn3m72yonOYH6MFj40ZN1vHYQj16iq2Fd8Wrt/vRZJwDX2xm/BzDk1FzTg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=9.0.0", + "typescript": ">=4.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "61.7.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-61.7.1.tgz", + "integrity": "sha512-36DpldF95MlTX//n3/naULFVt8d1cV4jmSkx7ZKrE9ikkKHAgMLesuWp1SmwpVwAs5ndIM6abKd6PeOYZUgdWg==", + "dev": true, + "dependencies": { + "@es-joy/jsdoccomment": "~0.78.0", + "@es-joy/resolve.exports": "1.2.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.4.3", + "escape-string-regexp": "^4.0.0", + "espree": "^11.0.0", + "esquery": "^1.7.0", + "html-entities": "^2.6.0", + "object-deep-merge": "^2.0.0", + "parse-imports-exports": "^0.2.4", + "semver": "^7.7.3", + "spdx-expression-parse": "^4.0.0", + "to-valid-identifier": "^1.0.0" + }, + "engines": { + "node": ">=20.11.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/@es-joy/jsdoccomment": { + "version": "0.78.0", + "resolved": "https://registry.npmmirror.com/@es-joy/jsdoccomment/-/jsdoccomment-0.78.0.tgz", + "integrity": "sha512-rQkU5u8hNAq2NVRzHnIUUvR6arbO0b6AOlvpTNS48CkiKSn/xtNfOzBK23JE4SiW89DgvU7GtxLVgV4Vn2HBAw==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.8", + "@typescript-eslint/types": "^8.46.4", + "comment-parser": "1.4.1", + "esquery": "^1.6.0", + "jsdoc-type-pratt-parser": "~7.0.0" + }, + "engines": { + "node": ">=20.11.0" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/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/eslint-plugin-jsdoc/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/espree": { + "version": "11.2.0", + "resolved": "https://registry.npmmirror.com/espree/-/espree-11.2.0.tgz", + "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==", + "dev": true, + "dependencies": { + "acorn": "^8.16.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^5.0.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/jsdoc-type-pratt-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.0.0.tgz", + "integrity": "sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==", + "dev": true, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-jsonc": { + "version": "2.21.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-jsonc/-/eslint-plugin-jsonc-2.21.1.tgz", + "integrity": "sha512-dbNR5iEnQeORwsK2WZzr3QaMtFCY3kKJVMRHPzUpKzMhmVy2zIpVgFDpX8MNoIdoqz6KCpCfOJavhfiSbZbN+w==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.5.1", + "diff-sequences": "^27.5.1", + "eslint-compat-utils": "^0.6.4", + "eslint-json-compat-utils": "^0.2.1", + "espree": "^9.6.1 || ^10.3.0", + "graphemer": "^1.4.0", + "jsonc-eslint-parser": "^2.4.0", + "natural-compare": "^1.4.0", + "synckit": "^0.6.2 || ^0.7.3 || ^0.11.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-plugin-n": { + "version": "17.24.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-n/-/eslint-plugin-n-17.24.0.tgz", + "integrity": "sha512-/gC7/KAYmfNnPNOb3eu8vw+TdVnV0zhdQwexsw6FLXbhzroVj20vRn2qL8lDWDGnAQ2J8DhdfvXxX9EoxvERvw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.5.0", + "enhanced-resolve": "^5.17.1", + "eslint-plugin-es-x": "^7.8.0", + "get-tsconfig": "^4.8.1", + "globals": "^15.11.0", + "globrex": "^0.1.2", + "ignore": "^5.3.2", + "semver": "^7.6.3", + "ts-declaration-location": "^1.0.6" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": ">=8.23.0" + } + }, + "node_modules/eslint-plugin-n/node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmmirror.com/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-n/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint-plugin-n/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-no-only-tests": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-3.4.0.tgz", + "integrity": "sha512-4S3/9Nb7A2tiMcpzEQE9bQSlpeOz6WJkgryBuou/SA8W2x2c8Zf4j0NvTKBjv6qNhF9T79tmkecm/0CHqV0UGg==", + "dev": true, + "engines": { + "node": ">=5.0.0" + } + }, + "node_modules/eslint-plugin-perfectionist": { + "version": "4.15.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-perfectionist/-/eslint-plugin-perfectionist-4.15.1.tgz", + "integrity": "sha512-MHF0cBoOG0XyBf7G0EAFCuJJu4I18wy0zAoT1OHfx2o6EOx1EFTIzr2HGeuZa1kDcusoX0xJ9V7oZmaeFd773Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "^8.38.0", + "@typescript-eslint/utils": "^8.38.0", + "natural-orderby": "^5.0.0" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "eslint": ">=8.45.0" + } + }, + "node_modules/eslint-plugin-pnpm": { + "version": "1.9.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-pnpm/-/eslint-plugin-pnpm-1.9.1.tgz", + "integrity": "sha512-8++1Egww2cqc9Wylmt7P+xXNMQVCosAZ4m4W4Gc0V5lGea8HFByHTRvUI+ZvvpO8fLXGg2O4MQc90EhuI3mMdQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "dependencies": { + "empathic": "^2.0.1", + "eslint-json-compat-utils": "^0.2.3", + "jsonc-eslint-parser": "^3.3.0", + "pathe": "^2.0.3", + "pnpm-workspace-yaml": "1.9.1", + "tinyglobby": "^0.2.17", + "yaml": "^2.9.0", + "yaml-eslint-parser": "^2.1.0" + }, + "peerDependencies": { + "eslint": "^9.0.0 || ^10.0.0" + } + }, + "node_modules/eslint-plugin-pnpm/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-pnpm/node_modules/jsonc-eslint-parser": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/jsonc-eslint-parser/-/jsonc-eslint-parser-3.3.0.tgz", + "integrity": "sha512-hYTGkHGNRZnXOFZ1urhINADoqDrGfpy53cjw+dxk84QE0pUDujQzeUeamNs6Mz44/TKD49z2x6/GVSu4ZrtA+Q==", + "dev": true, + "dependencies": { + "acorn": "^8.5.0", + "eslint-visitor-keys": "^5.0.0", + "verkit": "^0.3.2" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/eslint-plugin-pnpm/node_modules/yaml-eslint-parser": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/yaml-eslint-parser/-/yaml-eslint-parser-2.1.0.tgz", + "integrity": "sha512-1zo9KRfp6vIAXBEhWAz09ex3hUwh3T+/6dGbGteHvNseA0Uk4FgQnPES55klZ6cDzSy9FpgKS0D/CoLUvCCj4w==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^5.0.0", + "yaml": "^2.0.0" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/eslint-plugin-regexp": { + "version": "2.10.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-regexp/-/eslint-plugin-regexp-2.10.0.tgz", + "integrity": "sha512-ovzQT8ESVn5oOe5a7gIDPD5v9bCSjIFJu57sVPDqgPRXicQzOnYfFN21WoQBQF18vrhT5o7UMKFwJQVVjyJ0ng==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.11.0", + "comment-parser": "^1.4.0", + "jsdoc-type-pratt-parser": "^4.0.0", + "refa": "^0.12.1", + "regexp-ast-analysis": "^0.7.1", + "scslre": "^0.3.0" + }, + "engines": { + "node": "^18 || >=20" + }, + "peerDependencies": { + "eslint": ">=8.44.0" + } + }, + "node_modules/eslint-plugin-regexp/node_modules/jsdoc-type-pratt-parser": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.8.0.tgz", + "integrity": "sha512-iZ8Bdb84lWRuGHamRXFyML07r21pcwBrLkHEuHgEY5UbCouBwv7ECknDRKzsQIXMiqpPymqtIf8TC/shYKB5rw==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/eslint-plugin-toml": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-toml/-/eslint-plugin-toml-0.12.0.tgz", + "integrity": "sha512-+/wVObA9DVhwZB1nG83D2OAQRrcQZXy+drqUnFJKymqnmbnbfg/UPmEMCKrJNcEboUGxUjYrJlgy+/Y930mURQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "eslint-compat-utils": "^0.6.0", + "lodash": "^4.17.19", + "toml-eslint-parser": "^0.10.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-plugin-unicorn": { + "version": "62.0.0", + "resolved": "https://registry.npmmirror.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-62.0.0.tgz", + "integrity": "sha512-HIlIkGLkvf29YEiS/ImuDZQbP12gWyx5i3C6XrRxMvVdqMroCI9qoVYCoIl17ChN+U89pn9sVwLxhIWj5nEc7g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "@eslint-community/eslint-utils": "^4.9.0", + "@eslint/plugin-kit": "^0.4.0", + "change-case": "^5.4.4", + "ci-info": "^4.3.1", + "clean-regexp": "^1.0.0", + "core-js-compat": "^3.46.0", + "esquery": "^1.6.0", + "find-up-simple": "^1.0.1", + "globals": "^16.4.0", + "indent-string": "^5.0.0", + "is-builtin-module": "^5.0.0", + "jsesc": "^3.1.0", + "pluralize": "^8.0.0", + "regexp-tree": "^0.1.27", + "regjsparser": "^0.13.0", + "semver": "^7.7.3", + "strip-indent": "^4.1.1" + }, + "engines": { + "node": "^20.10.0 || >=21.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1" + }, + "peerDependencies": { + "eslint": ">=9.38.0" + } + }, + "node_modules/eslint-plugin-unicorn/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-unused-imports": { + "version": "4.4.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-4.4.1.tgz", + "integrity": "sha512-oZGYUz1X3sRMGUB+0cZyK2VcvRX5lm/vB56PgNNcU+7ficUCKm66oZWKUubXWnOuPjQ8PvmXtCViXBMONPe7tQ==", + "dev": true, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0", + "eslint": "^10.0.0 || ^9.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-vue": { + "version": "10.11.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-vue/-/eslint-plugin-vue-10.11.1.tgz", + "integrity": "sha512-pasVXhl7wUmIvhujoqs/m0mJ9r59QW1IR9XXYKGR0FETzSM+Hhlf4qKIYgWiDDP+9YKv4YfbwskD7LqIdVcgQw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^7.1.4", + "semver": "^7.8.5", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "@stylistic/eslint-plugin": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0", + "@typescript-eslint/parser": "^7.0.0 || ^8.0.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "vue-eslint-parser": "^10.3.0" + }, + "peerDependenciesMeta": { + "@stylistic/eslint-plugin": { + "optional": true + }, + "@typescript-eslint/parser": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-vue/node_modules/postcss-selector-parser": { + "version": "7.1.6", + "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz", + "integrity": "sha512-7qASPzhKF2l2KLboRZux8CCTRMdGiV08vWmyKzPz22qZ7ZjQBOeY7rNzNoCLSUiftJ7HUq0GERHmxw/t0dCdMw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-vue/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-yml": { + "version": "1.19.1", + "resolved": "https://registry.npmmirror.com/eslint-plugin-yml/-/eslint-plugin-yml-1.19.1.tgz", + "integrity": "sha512-bYkOxyEiXh9WxUhVYPELdSHxGG5pOjCSeJOVkfdIyj6tuiHDxrES2WAW1dBxn3iaZQey57XflwLtCYRcNPOiOg==", + "dev": true, + "dependencies": { + "debug": "^4.3.2", + "diff-sequences": "^27.5.1", + "escape-string-regexp": "4.0.0", + "eslint-compat-utils": "^0.6.0", + "natural-compare": "^1.4.0", + "yaml-eslint-parser": "^1.2.1" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/eslint-processor-vue-blocks": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/eslint-processor-vue-blocks/-/eslint-processor-vue-blocks-2.0.0.tgz", + "integrity": "sha512-u4W0CJwGoWY3bjXAuFpc/b6eK3NQEI8MoeW7ritKj3G3z/WtHrKjkqf+wk8mPEy5rlMGS+k6AZYOw2XBoN/02Q==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/compiler-sfc": "^3.3.0", + "eslint": ">=9.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/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/eslint/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/eslint/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/eslint/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/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/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/eslint/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/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/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmmirror.com/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exif-parser": { + "version": "0.1.12", + "resolved": "https://registry.npmmirror.com/exif-parser/-/exif-parser-0.1.12.tgz", + "integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/express": { + "version": "4.20.0", + "resolved": "https://registry.npmmirror.com/express/-/express-4.20.0.tgz", + "integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.10", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/exsolve": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/exsolve/-/exsolve-1.1.3.tgz", + "integrity": "sha512-kuzL9zherLQoqDeQaS55AiiIg1kb4KYXaSusTtgZTPlvKP2gGCI82LNmBNh5RjDVUXIcmgx+/Mx7vPwRzBbhJA==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.20.3", + "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.20.3.tgz", + "integrity": "sha512-XKv5nnLs6nLF71NgiKJLIZFLkPyIEuOselLG7ujZnGrRfQK8HpvY+WqKhAJUAdLomwVHErVS4LfxFlPq0/FTAw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fault": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/fault/-/fault-2.0.1.tgz", + "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", + "dev": true, + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/fb-watchman/-/fb-watchman-2.0.4.tgz", + "integrity": "sha512-tGQtaoYisPDriJBN0mT5yZSyNETnJGA1gTYxaVRAE5KUO3LI9kPUc9WIu8JXcxaIci+faIKlzXqXyPgrmubtBQ==", + "dev": true, + "peer": true, + "dependencies": { + "bser": "2.1.2" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/file-type": { + "version": "9.0.0", + "resolved": "https://registry.npmmirror.com/file-type/-/file-type-9.0.0.tgz", + "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up-simple": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/find-up-simple/-/find-up-simple-1.0.1.tgz", + "integrity": "sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.4.4", + "resolved": "https://registry.npmmirror.com/flatted/-/flatted-3.4.4.tgz", + "integrity": "sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.16.1.tgz", + "integrity": "sha512-FNvFGzoMLWmE6Yj9spb/zjd7yiNCHiAW9/Tg9CXrQ8wuu32HtlJOwWO11OJafl5FfY3DxTdQ0vj42zU1kvv5jg==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "3.0.5", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-3.0.5.tgz", + "integrity": "sha512-j23EibVLnp4zNXGW7LjryXYa2X6U/M96yoOX+ybZxwkYajdxRNEqYY3zhh7y0i6kfISKS2jr+EJq1YTUDEv5+w==", + "dev": true, + "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.4", + "mime-types": "^2.1.35" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmmirror.com/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "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==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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, + "peer": 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==", + "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==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generic-names": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/generic-names/-/generic-names-4.0.0.tgz", + "integrity": "sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==", + "dependencies": { + "loader-utils": "^3.2.0" + } + }, + "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==", + "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, + "peer": 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-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8.0.0" + } + }, + "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": "6.0.1", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-tsconfig": { + "version": "4.14.3", + "resolved": "https://registry.npmmirror.com/get-tsconfig/-/get-tsconfig-4.14.3.tgz", + "integrity": "sha512-++QEw4DIY7WGoukz+/+A/8dGYPT9l9yIadnmSgZ8Rjr3YVSVDipQSO9CdnJo9ePqFqUUqh+wk9uIaoiAwsiPkA==", + "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/github-slugger": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/github-slugger/-/github-slugger-2.0.0.tgz", + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", + "dev": true + }, + "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, + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/globals": { + "version": "16.5.0", + "resolved": "https://registry.npmmirror.com/globals/-/globals-16.5.0.tgz", + "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "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/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==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/h3": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/h3/-/h3-2.0.2.tgz", + "integrity": "sha512-+/zvHSNldYpNURuUUG+y1KzdASUhNnSd1VpqxYFVY40ov3YzuBnCETaUQaT+QbKkoxhh9LRa6AEQdB14LALwdA==", + "dev": true, + "dependencies": { + "rou3": "^1.0.0", + "srvx": "^1.0.5" + }, + "bin": { + "h3": "bin/h3.mjs" + }, + "engines": { + "node": ">=20.19.0" + }, + "peerDependencies": { + "crossws": "^0.4.12", + "ocache": ">=0.3.0" + }, + "peerDependenciesMeta": { + "crossws": { + "optional": true + }, + "ocache": { + "optional": true + } + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "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, + "peer": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==" + }, + "node_modules/hasown": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmmirror.com/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "peer": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "peer": true + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "peer": true, + "dependencies": { + "@tootallnate/once": "1", + "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, + "peer": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==" + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.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==", + "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/ignore": { + "version": "7.0.12", + "resolved": "https://registry.npmmirror.com/ignore/-/ignore-7.0.12.tgz", + "integrity": "sha512-/8UvqAPU9DGTI9k4mxtf49U37Isfwr8Uts96+SBHIkFxPJnHS0Ew4f00sM4Scd8V8EjM0jUNtVDdv1kPdt35lg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "4.3.9", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.9.tgz", + "integrity": "sha512-ObHy4YN7ycwZOUCLI1/6svfyAFu7vL8RhAvVu/bh/RZW9EPlOyDaQ9jDQWCtdqzaXUjgXZCW1migtHE7YI7UGQ==", + "devOptional": true + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "peer": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-meta-resolve": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz", + "integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "peer": 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/invert-kv": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/invert-kv/-/invert-kv-3.0.1.tgz", + "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sindresorhus/invert-kv?sponsor=1" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "peer": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-builtin-module": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/is-builtin-module/-/is-builtin-module-5.0.0.tgz", + "integrity": "sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==", + "dev": true, + "dependencies": { + "builtin-modules": "^5.0.0" + }, + "engines": { + "node": ">=18.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-core-module": { + "version": "2.17.0", + "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.17.0.tgz", + "integrity": "sha512-J/vG0zBCbIKOQFfufSwyXdMrsohyJIUNkrnmo6WZGzoM7tr/lsbfW5b2BvisL6zsyMzK9UxV9L6c7AoFbyXHOA==", + "dependencies": { + "hasown": "^2.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "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==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true, + "peer": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true, + "peer": true + }, + "node_modules/isbinaryfile": { + "version": "5.0.2", + "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-5.0.2.tgz", + "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==", + "engines": { + "node": ">= 18.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/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "peer": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/istanbul-reports/-/istanbul-reports-3.2.0.tgz", + "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", + "dev": true, + "peer": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.0.4", + "resolved": "https://registry.npmmirror.com/jest/-/jest-27.0.4.tgz", + "integrity": "sha512-Px1iKFooXgGSkk1H8dJxxBIrM3tsc5SIuI4kfKYK2J+4rvCvPGr/cXktxh0e9zIPQ5g09kOMNfHQEmusBUf/ZA==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/core": "^27.0.4", + "import-local": "^3.0.2", + "jest-cli": "^27.0.4" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/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, + "peer": 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/jest-circus/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/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, + "peer": true + }, + "node_modules/jest-circus/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/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, + "peer": 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/jest-cli/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/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, + "peer": true + }, + "node_modules/jest-cli/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/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, + "peer": 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/jest-config/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" + } + ], + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/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, + "peer": true + }, + "node_modules/jest-config/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/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, + "peer": 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/jest-diff/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/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, + "peer": true + }, + "node_modules/jest-diff/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "peer": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/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, + "peer": 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/jest-each/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/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, + "peer": true + }, + "node_modules/jest-each/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/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, + "peer": 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/jest-jasmine2/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/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, + "peer": true + }, + "node_modules/jest-jasmine2/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "peer": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/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, + "peer": 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/jest-matcher-utils/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/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, + "peer": true + }, + "node_modules/jest-matcher-utils/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/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, + "peer": 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/jest-message-util/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/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, + "peer": true + }, + "node_modules/jest-message-util/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/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, + "peer": 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/jest-resolve/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/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, + "peer": true + }, + "node_modules/jest-resolve/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/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, + "peer": 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/jest-runner/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/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, + "peer": true + }, + "node_modules/jest-runner/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/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, + "peer": 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/jest-runtime/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/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, + "peer": true + }, + "node_modules/jest-runtime/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/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, + "peer": 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/jest-snapshot/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/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, + "peer": true + }, + "node_modules/jest-snapshot/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/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, + "peer": 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/jest-util/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" + } + ], + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/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, + "peer": true + }, + "node_modules/jest-util/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/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, + "peer": 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/jest-validate/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/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, + "peer": true + }, + "node_modules/jest-validate/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/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, + "peer": 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/jest-watcher/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/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, + "peer": true + }, + "node_modules/jest-watcher/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jimp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/jimp/-/jimp-0.10.3.tgz", + "integrity": "sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/custom": "^0.10.3", + "@jimp/plugins": "^0.10.3", + "@jimp/types": "^0.10.3", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/jimp/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/jiti": { + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/jiti/-/jiti-2.7.0.tgz", + "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", + "dev": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/jpeg-js": { + "version": "0.3.7", + "resolved": "https://registry.npmmirror.com/jpeg-js/-/jpeg-js-0.3.7.tgz", + "integrity": "sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==" + }, + "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==" + }, + "node_modules/js-yaml": { + "version": "4.3.2", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.3.2.tgz", + "integrity": "sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdoc-type-pratt-parser": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-7.2.0.tgz", + "integrity": "sha512-dh140MMgjyg3JhJZY/+iEzW+NO5xR2gpbDFKHqotCmexElVntw7GjWjt511+C/Ef02RU5TKYrJo/Xlzk+OLaTw==", + "dev": true, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmmirror.com/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "peer": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.13", + "resolved": "https://registry.npmmirror.com/ws/-/ws-7.5.13.tgz", + "integrity": "sha512-rsKI6xDBFVf4r/x8XyChGK04QR/XHroxs/jUcoWvtEZM8TPU/X/uIY9B1CsSzYws9ZJb/6bbBu7dPhFW00CAoA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true, + "peer": true + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true + }, + "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/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": 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==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-eslint-parser": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/jsonc-eslint-parser/-/jsonc-eslint-parser-2.4.2.tgz", + "integrity": "sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA==", + "dev": true, + "dependencies": { + "acorn": "^8.5.0", + "eslint-visitor-keys": "^3.0.0", + "espree": "^9.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/jsonc-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/jsonc-eslint-parser/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmmirror.com/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/jsonc-eslint-parser/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==" + }, + "node_modules/jsonfile": { + "version": "6.2.1", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmmirror.com/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/lcid": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/lcid/-/lcid-3.1.1.tgz", + "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==", + "dependencies": { + "invert-kv": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/licia": { + "version": "1.41.1", + "resolved": "https://registry.npmmirror.com/licia/-/licia-1.41.1.tgz", + "integrity": "sha512-XqObV8u1KEMdYWaNK0leRrTwhzKnLQEkhbnuUu7qGNH3zJoN7l9sfvF6PfHstSCuUOmpEP+0SBjRrk0I9uZs8g==" + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/load-bmfont": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/load-bmfont/-/load-bmfont-1.4.2.tgz", + "integrity": "sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==", + "dependencies": { + "buffer-equal": "0.0.1", + "mime": "^1.3.4", + "parse-bmfont-ascii": "^1.0.3", + "parse-bmfont-binary": "^1.0.5", + "parse-bmfont-xml": "^1.1.4", + "phin": "^3.7.1", + "xhr": "^2.0.1", + "xtend": "^4.0.0" + } + }, + "node_modules/load-bmfont/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-bmfont/node_modules/phin": { + "version": "3.7.1", + "resolved": "https://registry.npmmirror.com/phin/-/phin-3.7.1.tgz", + "integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dependencies": { + "centra": "^2.7.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/loader-utils": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-3.3.1.tgz", + "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/local-pkg": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-1.2.1.tgz", + "integrity": "sha512-++gUqRDEvcnN6Zhqrr+y/CkVEHhlrR96vZn3nZZPYzMcBUyBtTKzB9NadClFIsIVSsu+3i9tfk/erqy9kAmt7Q==", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.3.0", + "quansync": "^0.2.11" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/localstorage-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/localstorage-polyfill/-/localstorage-polyfill-1.0.1.tgz", + "integrity": "sha512-m4iHVZxFH5734oQcPKU08025gIz2+4bjWR9lulP8ZYxEJR0BpA0w32oJmkzh8y3UI9ci7xCBehQDc3oA1X+VHw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", + "dev": true + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-regexp": { + "version": "0.10.0", + "resolved": "https://registry.npmmirror.com/magic-regexp/-/magic-regexp-0.10.0.tgz", + "integrity": "sha512-Uly1Bu4lO1hwHUW0CQeSWuRtzCMNO00CmXtS8N6fyvB3B979GOEEeAkiTUDsmbYLAbvpUS/Kt5c4ibosAzVyVg==", + "dev": true, + "dependencies": { + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12", + "mlly": "^1.7.2", + "regexp-tree": "^0.1.27", + "type-level-regexp": "~0.1.17", + "ufo": "^1.5.4", + "unplugin": "^2.0.0" + } + }, + "node_modules/magic-regexp/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/magic-regexp/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/magic-string": { + "version": "0.30.11", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmmirror.com/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "peer": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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/mdast-util-find-and-replace": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.3.tgz", + "integrity": "sha512-xPgpDNl0/OXHsI7TlaIs22lWnH3KlpvZdXG1ET/m/YT2Hhdkx8lJV4kLphE6l9simyM4KPDFBwas08BgEob6Jw==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.1.0.tgz", + "integrity": "sha512-KRLgmPaP2H1ul2bpoJkOS+9pAcDAAj9Nu1mqLnh8NLeJG5tlvj42TH80PIGBpROWlRXLk0lDrWNuZCFy/tsB4A==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", + "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", + "dev": true, + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.1.tgz", + "integrity": "sha512-OuJHqvr455pwu2OaOrir7dbzqs4jlWKOtlu9L6GjcIjjQwNyw02VntQsr/Ek6/A13vgnXfUhBekWRUP1OkNivw==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.1", + "resolved": "https://registry.npmmirror.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.2.0.tgz", + "integrity": "sha512-2Jn/ADrHFFyyniBMi0bncTbJqU78K3/TEYvzvwrWWzD9MYPUa/Gm4r3nOeKFQg/PDM5BsbDYdc8ackW4NTY6NA==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "dev": true, + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.27.1", + "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.27.1.tgz", + "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmmirror.com/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmmirror.com/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/merge/-/merge-2.1.1.tgz", + "integrity": "sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==" + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/micromark/-/micromark-4.0.3.tgz", + "integrity": "sha512-oGYfQzHSG5dOMovQcJ3fyTmZlWAWpi0XA0sJwJs+i6OT88o1+Jtw/8z0CmdowSLxGhhFK89rQ/oXph/wN02PNw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-edit-map": "^1.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/micromark-core-commonmark/-/micromark-core-commonmark-2.0.4.tgz", + "integrity": "sha512-wxEeE8v8XVvOrxn1TZj74qYhAtTQsSqufHVS3uNVyT1MupXxhyaHk8/9xDNPh9BmL77QNDgWTkZ3RsYHB2ry7w==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.1.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-edit-map": "^1.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.3" + } + }, + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", + "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", + "dev": true, + "dependencies": { + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", + "dev": true, + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "dev": true, + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "dev": true, + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "dev": true, + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.2.tgz", + "integrity": "sha512-pRzm4kDTu0MjlmBkxmS9yYhw60nncfcEwu9NNdPFSQEFXS95ZKyIIyTSHu/o3ReBUrLKYEq+7YaXCRn/bPB4MA==", + "dev": true, + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "dev": true, + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "dev": true, + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-factory-space/-/micromark-factory-space-2.1.0.tgz", + "integrity": "sha512-fS8hnLIjnjvdQIj39Geug8wWsR0HrYZ43KShKxNfwT7t2LOHo/LbWZEzEaSOjwtjdCsjoE6syHhonEzW0zv0+Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-edit-map": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/micromark-util-edit-map/-/micromark-util-edit-map-1.0.0.tgz", + "integrity": "sha512-Pa2ljlsEL6sVwFaYeyrOLSYbQt73JvGbPOYFq+9AElXiSnfI5Q4465RRZ1sHv7lDjDOnGRDDaqPXqClqWK/q1Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/micromark-util-types/-/micromark-util-types-2.0.3.tgz", + "integrity": "sha512-oxB2Ik03hI0gv+VNn9tnh1t1YEe9MDPptViAEgfdf3YQHsn0pzGTgCdlSCJXcwhqm8phaEuM7zeEu3QQzVBrPg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.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": "2.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-document": { + "version": "2.19.2", + "resolved": "https://registry.npmmirror.com/min-document/-/min-document-2.19.2.tgz", + "integrity": "sha512-8S5I8db/uZN8r9HSLFVWPdJCvYOejMcEC82VIzNUc6Zkklf/d1gg2psfE79/vyhWOj4+J8MtwmoOz3TmvaGu5A==", + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "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/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/miniprogram-api-typings": { + "version": "4.1.3", + "resolved": "https://registry.npmmirror.com/miniprogram-api-typings/-/miniprogram-api-typings-4.1.3.tgz", + "integrity": "sha512-5mobiXzDS3KFJMM20cIg5m7hiFSJY0YGpgm5yzFeIJ+UP15RGOtW/ztqAhRfOQIvPBD0WyYB+WFCWaeeTTEZTQ==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mlly": { + "version": "1.8.2", + "resolved": "https://registry.npmmirror.com/mlly/-/mlly-1.8.2.tgz", + "integrity": "sha512-d+ObxMQFmbt10sretNDytwt85VrbkhhUA/JBGm1MPaWJ65Cl4wOgLaB1NYvJSZ0Ef03MMEU/0xpPMXUIQ29UfA==", + "dependencies": { + "acorn": "^8.16.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "ufo": "^1.6.3" + } + }, + "node_modules/mlly/node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==" + }, + "node_modules/mlly/node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/module-alias": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/module-alias/-/module-alias-2.2.3.tgz", + "integrity": "sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==" + }, + "node_modules/mrmime": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", + "dev": true, + "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==" + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.20", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.20.tgz", + "integrity": "sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-orderby": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/natural-orderby/-/natural-orderby-5.0.0.tgz", + "integrity": "sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-fetch-native": { + "version": "1.6.7", + "resolved": "https://registry.npmmirror.com/node-fetch-native/-/node-fetch-native-1.6.7.tgz", + "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==", + "dev": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "peer": true + }, + "node_modules/node-releases": { + "version": "2.0.58", + "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.58.tgz", + "integrity": "sha512-BdiKAgbfRlvfMq/XzO/AF9NPmaA8a+YpLAyAFTVFBj3gARrAIfWvNq7Q7NE4se3KgFu0KkrvQMxTS0XVnsGzHg==", + "engines": { + "node": ">=18" + } + }, + "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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nostics": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/nostics/-/nostics-1.3.0.tgz", + "integrity": "sha512-wzRsrJwNlFbqIRQt8aCeL2WE8USip/uuvGSOZV1D02CxX8ABTMbw8IywKjH7yWHETMXbWJI4OBpihg9rmz2Vyg==", + "dev": true + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.28", + "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.28.tgz", + "integrity": "sha512-IlVB7OS7qrOsVYlpnFIkETjMwT9jwvmocJmmM+GZU/PAB3uGi9Ezd7vcWhWBUnSc0ya4ppmQITOyP1ez9gg8cg==", + "dev": true, + "peer": true + }, + "node_modules/object-deep-merge": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/object-deep-merge/-/object-deep-merge-2.0.1.tgz", + "integrity": "sha512-aKttDKcU3pyZqKcCkDhsMn70WmZFG2JGDQLP9EcLyTSIFQRCPWLAmBZRLJnrVUrhPG1jETEEbfdgbNtJf1LyMg==", + "dev": true + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ofetch": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/ofetch/-/ofetch-1.5.1.tgz", + "integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==", + "dev": true, + "dependencies": { + "destr": "^2.0.5", + "node-fetch-native": "^1.6.7", + "ufo": "^1.6.1" + } + }, + "node_modules/omggif": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/omggif/-/omggif-1.0.10.tgz", + "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmmirror.com/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "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, + "peer": 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==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/oniguruma-parser": { + "version": "0.12.2", + "resolved": "https://registry.npmmirror.com/oniguruma-parser/-/oniguruma-parser-0.12.2.tgz", + "integrity": "sha512-6HVa5oIrgMC6aA6WF6XyyqbhRPJrKR02L20+2+zpDtO5QAzGHAUGw5TKQvwi5vctNnRHkJYmjAhRVQF2EKdTQw==", + "dev": true + }, + "node_modules/oniguruma-to-es": { + "version": "4.3.6", + "resolved": "https://registry.npmmirror.com/oniguruma-to-es/-/oniguruma-to-es-4.3.6.tgz", + "integrity": "sha512-csuQ9x3Yr0cEIs/Zgx/OEt9iBw9vqIunAPQkx19R/fiMq2oGVTgcMqO/V3Ybqefr1TBvosI6jU539ksaBULJyA==", + "dev": true, + "dependencies": { + "oniguruma-parser": "^0.12.2", + "regex": "^6.1.0", + "regex-recursion": "^6.0.2" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-locale-s-fix": { + "version": "1.0.8-fix-1", + "resolved": "https://registry.npmmirror.com/os-locale-s-fix/-/os-locale-s-fix-1.0.8-fix-1.tgz", + "integrity": "sha512-Sv0OvhPiMutICiwORAUefv02DCPb62IelBmo8ZsSrRHyI3FStqIWZvjqDkvtjU+lcujo7UNir+dCwKSqlEQ/5w==", + "dependencies": { + "lcid": "^3.0.0" + }, + "engines": { + "node": ">=10", + "yarn": "^1.22.4" + } + }, + "node_modules/oxc-parser": { + "version": "0.131.0", + "resolved": "https://registry.npmmirror.com/oxc-parser/-/oxc-parser-0.131.0.tgz", + "integrity": "sha512-SJ3/7ZPbgie8dr5Z9BI/M51zZbpXba+hRSG0MDzVwMW5CRQg2fjYE0jHGlLX4eeiibGgC/mzoDFKSDHwVZEHRQ==", + "dev": true, + "dependencies": { + "@oxc-project/types": "^0.131.0" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/Boshen" + }, + "optionalDependencies": { + "@oxc-parser/binding-android-arm-eabi": "0.131.0", + "@oxc-parser/binding-android-arm64": "0.131.0", + "@oxc-parser/binding-darwin-arm64": "0.131.0", + "@oxc-parser/binding-darwin-x64": "0.131.0", + "@oxc-parser/binding-freebsd-x64": "0.131.0", + "@oxc-parser/binding-linux-arm-gnueabihf": "0.131.0", + "@oxc-parser/binding-linux-arm-musleabihf": "0.131.0", + "@oxc-parser/binding-linux-arm64-gnu": "0.131.0", + "@oxc-parser/binding-linux-arm64-musl": "0.131.0", + "@oxc-parser/binding-linux-ppc64-gnu": "0.131.0", + "@oxc-parser/binding-linux-riscv64-gnu": "0.131.0", + "@oxc-parser/binding-linux-riscv64-musl": "0.131.0", + "@oxc-parser/binding-linux-s390x-gnu": "0.131.0", + "@oxc-parser/binding-linux-x64-gnu": "0.131.0", + "@oxc-parser/binding-linux-x64-musl": "0.131.0", + "@oxc-parser/binding-openharmony-arm64": "0.131.0", + "@oxc-parser/binding-wasm32-wasi": "0.131.0", + "@oxc-parser/binding-win32-arm64-msvc": "0.131.0", + "@oxc-parser/binding-win32-ia32-msvc": "0.131.0", + "@oxc-parser/binding-win32-x64-msvc": "0.131.0" + } + }, + "node_modules/oxc-walker": { + "version": "0.7.0", + "resolved": "https://registry.npmmirror.com/oxc-walker/-/oxc-walker-0.7.0.tgz", + "integrity": "sha512-54B4KUhrzbzc4sKvKwVYm7E2PgeROpGba0/2nlNZMqfDyca+yOor5IMb4WLGBatGDT0nkzYdYuzylg7n3YfB7A==", + "dev": true, + "dependencies": { + "magic-regexp": "^0.10.0" + }, + "peerDependencies": { + "oxc-parser": ">=0.98.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-manager-detector": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/package-manager-detector/-/package-manager-detector-1.9.0.tgz", + "integrity": "sha512-zAMfbta9nPA8AKkA4WdmNAT8R8s6Dk0/xwPsqNnRidMFcLo1YkLuPDTgs2f64XdzS8vbLNnoJ+uUIkgbz7oRHA==", + "dev": true + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-bmfont-ascii": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", + "integrity": "sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==" + }, + "node_modules/parse-bmfont-binary": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", + "integrity": "sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==" + }, + "node_modules/parse-bmfont-xml": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-xml/-/parse-bmfont-xml-1.1.6.tgz", + "integrity": "sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==", + "dependencies": { + "xml-parse-from-string": "^1.0.0", + "xml2js": "^0.5.0" + } + }, + "node_modules/parse-css-font": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/parse-css-font/-/parse-css-font-4.0.0.tgz", + "integrity": "sha512-lnY7dTUfjRXsSo5G5C639L8RaBBaVSgL+5hacIFKsNHzeCJQ5SFSZv1DZmc7+wZv/22PFGOq2YbaEHLdaCS/mQ==", + "dependencies": { + "css-font-size-keywords": "^1.0.0", + "css-font-stretch-keywords": "^1.0.1", + "css-font-style-keywords": "^1.0.1", + "css-font-weight-keywords": "^1.0.0", + "css-list-helpers": "^2.0.0", + "css-system-font-keywords": "^1.0.0", + "unquote": "^1.1.1" + } + }, + "node_modules/parse-gitignore": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/parse-gitignore/-/parse-gitignore-2.0.0.tgz", + "integrity": "sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/parse-headers": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/parse-headers/-/parse-headers-2.0.6.tgz", + "integrity": "sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==" + }, + "node_modules/parse-imports-exports": { + "version": "0.2.4", + "resolved": "https://registry.npmmirror.com/parse-imports-exports/-/parse-imports-exports-0.2.4.tgz", + "integrity": "sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==", + "dev": true, + "dependencies": { + "parse-statements": "1.0.11" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-json/node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "peer": true + }, + "node_modules/parse-statements": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/parse-statements/-/parse-statements-1.0.11.tgz", + "integrity": "sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==", + "dev": true + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true, + "peer": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "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": "4.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "peer": 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-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.10", + "resolved": "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "dev": true + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==" + }, + "node_modules/perfect-debounce": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/perfect-debounce/-/perfect-debounce-2.1.0.tgz", + "integrity": "sha512-LjgdTytVFXeUgtHZr9WYViYSM/g8MkcTPYDlPa3cDqMirHjKiSZPYd6DoL7pK8AJQr+uWkQvCjHNdiMqsrJs+g==", + "dev": true + }, + "node_modules/phin": { + "version": "2.9.3", + "resolved": "https://registry.npmmirror.com/phin/-/phin-2.9.3.tgz", + "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info." + }, + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==" + }, + "node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pinia": { + "version": "2.2.4", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.2.4.tgz", + "integrity": "sha512-K7ZhpMY9iJ9ShTC0cR2+PnxdQRuwVIsXDO/WIEV/RnMC/vmSoKDTKW/exNQYPI+4ij10UjXqdNiEHwn47McANQ==", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.3.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia-plugin-persistedstate": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.2.1.tgz", + "integrity": "sha512-MK++8LRUsGF7r45PjBFES82ISnPzyO6IZx3CH5vyPseFLZCk1g2kgx6l/nW8pEBKxxd4do0P6bJw+mUSZIEZUQ==", + "peerDependencies": { + "pinia": "^2.0.0" + } + }, + "node_modules/pinia/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/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pixelmatch": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/pixelmatch/-/pixelmatch-4.0.2.tgz", + "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", + "dependencies": { + "pngjs": "^3.0.0" + }, + "bin": { + "pixelmatch": "bin/pixelmatch" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/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==", + "dev": true, + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-types": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-2.3.3.tgz", + "integrity": "sha512-j/lCFdcppV0JxWpCEITdbDltBxPP6cHT+yNJ6Go2OgoSA9518X847X9z0p6LtA4Nc16+eQzCZjRrWanTGvHJ5w==", + "dependencies": { + "confbox": "^0.3.1", + "exsolve": "^1.1.1", + "pathe": "^2.0.3" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/pnpm-workspace-yaml": { + "version": "1.9.1", + "resolved": "https://registry.npmmirror.com/pnpm-workspace-yaml/-/pnpm-workspace-yaml-1.9.1.tgz", + "integrity": "sha512-Xj/T2X6DNAWbtk/9UQ0/TJRswltiHZevmcMjqoL7WrpJi67lu3qaslU4+I+zJ8wtwqmuvAE0KkB8rbv2ZdogBg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "dependencies": { + "yaml": "^2.9.0" + } + }, + "node_modules/postcss": { + "version": "8.5.29", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.29.tgz", + "integrity": "sha512-49cGhUbXj8Qenv0iTMxA1cFBzxXoctpC9Ujd77t1WcbJIr6nF/eI7g/8MgxrYldFRuAXvja7xQRwavoW7kgrxQ==", + "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.19", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmmirror.com/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/yaml": { + "version": "1.10.3", + "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.3.tgz", + "integrity": "sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/postcss-modules/-/postcss-modules-4.3.1.tgz", + "integrity": "sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==", + "dependencies": { + "generic-names": "^4.0.0", + "icss-replace-symbols": "^1.1.0", + "lodash.camelcase": "^4.3.0", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "string-hash": "^1.1.1" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default/node_modules/postcss-selector-parser": { + "version": "7.1.6", + "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz", + "integrity": "sha512-7qASPzhKF2l2KLboRZux8CCTRMdGiV08vWmyKzPz22qZ7ZjQBOeY7rNzNoCLSUiftJ7HUq0GERHmxw/t0dCdMw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope/node_modules/postcss-selector-parser": { + "version": "7.1.6", + "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz", + "integrity": "sha512-7qASPzhKF2l2KLboRZux8CCTRMdGiV08vWmyKzPz22qZ7ZjQBOeY7rNzNoCLSUiftJ7HUq0GERHmxw/t0dCdMw==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss/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/postcss/node_modules/source-map-js": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.2.tgz", + "integrity": "sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmmirror.com/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "peer": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/property-information": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/property-information/-/property-information-7.2.0.tgz", + "integrity": "sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.8", + "resolved": "https://registry.npmmirror.com/proxy-addr/-/proxy-addr-2.0.8.tgz", + "integrity": "sha512-5nnx0yGyVUcY6t9RnWcARWtwT9F1D8O9rt08htPvnd49W1IgZtmLkhu9WfMzQj1cFxjHIO6connUNVW5k7AVyQ==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/psl": { + "version": "1.15.0", + "resolved": "https://registry.npmmirror.com/psl/-/psl-1.15.0.tgz", + "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", + "dev": true, + "peer": true, + "dependencies": { + "punycode": "^2.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/lupomontero" + } + }, + "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/qrcode-reader": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/qrcode-reader/-/qrcode-reader-1.0.4.tgz", + "integrity": "sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ==" + }, + "node_modules/qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/quansync": { + "version": "0.2.11", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-0.2.11.tgz", + "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ] + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true, + "peer": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "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/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmmirror.com/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true, + "peer": true + }, + "node_modules/read-cache": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/read-cache/-/read-cache-1.0.2.tgz", + "integrity": "sha512-/peqiBB/n07gQGLsWaHho3WfvUyRscw0gYTsEFMhrIe/nWLkYaf5SbKYjGYqtRV3aPwykJgF2VEMo1ac4bnsGA==" + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/refa": { + "version": "0.12.1", + "resolved": "https://registry.npmmirror.com/refa/-/refa-0.12.1.tgz", + "integrity": "sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.8.0" + }, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/regenerate": { + "version": "1.5.0", + "resolved": "https://registry.npmmirror.com/regenerate/-/regenerate-1.5.0.tgz", + "integrity": "sha512-1s+CxXjJ71i7LNVy8nYwg47XV4y6lAnOEhsMtSKq3WpmPfhl9LuKlTqKIn/3yUpE8lBz+W+TT88Bxyhnr0U4yw==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.3.0", + "resolved": "https://registry.npmmirror.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.3.0.tgz", + "integrity": "sha512-9ns8odR8e9q3otKeHj3DE80jZYKg6zVeZKE+zQmRKXFoVUcuiTGeO6iusDhPRoIQQPVPRvH+SfBhrTud4eczuw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "node_modules/regex": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/regex/-/regex-6.1.0.tgz", + "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", + "dev": true, + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-recursion": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", + "dev": true, + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-utilities": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/regex-utilities/-/regex-utilities-2.3.0.tgz", + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", + "dev": true + }, + "node_modules/regexp-ast-analysis": { + "version": "0.7.1", + "resolved": "https://registry.npmmirror.com/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz", + "integrity": "sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.1" + }, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/regexp-tree": { + "version": "0.1.27", + "resolved": "https://registry.npmmirror.com/regexp-tree/-/regexp-tree-0.1.27.tgz", + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "dev": true, + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, + "node_modules/regexpu-core": { + "version": "6.5.3", + "resolved": "https://registry.npmmirror.com/regexpu-core/-/regexpu-core-6.5.3.tgz", + "integrity": "sha512-E8VgUoSK+LMQrLboDxavm76MTBGrQhx9RiNuomRmYnZ10Uw12HrI8fkxOOncktb2hBpzIZ9SV/347euQHG5z+g==", + "dev": true, + "dependencies": { + "regenerate": "^1.5.0", + "regenerate-unicode-properties": "^10.3.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.13.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.2.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmmirror.com/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.13.4", + "resolved": "https://registry.npmmirror.com/regjsparser/-/regjsparser-0.13.4.tgz", + "integrity": "sha512-EWV80YgFaVgFrjGCAsV7oybp4GOxbls5RzBg8OB0nKEVXsBJR1JlV8Di1JhCROg3MzTfe1RI8yitIm1eOs68iA==", + "dev": true, + "dependencies": { + "jsesc": "~3.1.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "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, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true, + "peer": true + }, + "node_modules/reserved-identifiers": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/reserved-identifiers/-/reserved-identifiers-1.2.0.tgz", + "integrity": "sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.64.5", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.64.5.tgz", + "integrity": "sha512-EAP5ZHcz2ijbgCWwPkpI7zh6bfsri2Ez5FtCy2dCp1k62duXzfG7DLGGh7RU2QQXWwavT+u4qpvDF/TWOiiGTw==", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@napi-rs/lzma-linux-x64-gnu": "1.5.1", + "@rollup/rollup-android-arm-eabi": "4.64.5", + "@rollup/rollup-android-arm64": "4.64.5", + "@rollup/rollup-darwin-arm64": "4.64.5", + "@rollup/rollup-darwin-x64": "4.64.5", + "@rollup/rollup-freebsd-arm64": "4.64.5", + "@rollup/rollup-freebsd-x64": "4.64.5", + "@rollup/rollup-linux-arm-gnueabihf": "4.64.5", + "@rollup/rollup-linux-arm-musleabihf": "4.64.5", + "@rollup/rollup-linux-arm64-gnu": "4.64.5", + "@rollup/rollup-linux-arm64-musl": "4.64.5", + "@rollup/rollup-linux-loong64-gnu": "4.64.5", + "@rollup/rollup-linux-loong64-musl": "4.64.5", + "@rollup/rollup-linux-ppc64-gnu": "4.64.5", + "@rollup/rollup-linux-ppc64-musl": "4.64.5", + "@rollup/rollup-linux-riscv64-gnu": "4.64.5", + "@rollup/rollup-linux-riscv64-musl": "4.64.5", + "@rollup/rollup-linux-s390x-gnu": "4.64.5", + "@rollup/rollup-linux-x64-gnu": "4.64.5", + "@rollup/rollup-linux-x64-musl": "4.64.5", + "@rollup/rollup-openbsd-x64": "4.64.5", + "@rollup/rollup-openharmony-arm64": "4.64.5", + "@rollup/rollup-win32-arm64-msvc": "4.64.5", + "@rollup/rollup-win32-ia32-msvc": "4.64.5", + "@rollup/rollup-win32-x64-gnu": "4.64.5", + "@rollup/rollup-win32-x64-msvc": "4.64.5", + "fsevents": "~2.3.2" + } + }, + "node_modules/rou3": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/rou3/-/rou3-1.0.0.tgz", + "integrity": "sha512-ySeaQkSrua+ut9g+65I7FHqOFBaY8tV0FmccXItoq0q21se32Q3u4YiW7/RqXSosWgYJaaKwRHXy3BST9PeCNQ==", + "dev": true, + "engines": { + "node": ">=20.19.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-area-insets": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/safe-area-insets/-/safe-area-insets-1.4.1.tgz", + "integrity": "sha512-r/nRWTjFGhhm3w1Z6Kd/jY11srN+lHt2mNl1E/emQGW8ic7n3Avu4noibklfSM+Y34peNphHD/BSZecav0sXYQ==" + }, + "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" + } + ] + }, + "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/sass": { + "version": "1.64.2", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", + "devOptional": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sax": { + "version": "1.6.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.6.1.tgz", + "integrity": "sha512-42tBVwLWnaQvW5zc4HbZrTuWccECCZfBi92FDuwtqxasH+JbPB3/FOKb1m222K42R4WxuxzzMsTswfzgtSu64Q==", + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "peer": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/scslre": { + "version": "0.3.0", + "resolved": "https://registry.npmmirror.com/scslre/-/scslre-0.3.0.tgz", + "integrity": "sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.8.0", + "refa": "^0.12.0", + "regexp-ast-analysis": "^0.7.0" + }, + "engines": { + "node": "^14.0.0 || >=16.0.0" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmmirror.com/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve-static": { + "version": "1.16.0", + "resolved": "https://registry.npmmirror.com/serve-static/-/serve-static-1.16.0.tgz", + "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-static/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-static/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-static/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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serve-static/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve-static/node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmmirror.com/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "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/shiki": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/shiki/-/shiki-4.5.0.tgz", + "integrity": "sha512-OcRW72ngQvc+MSVWBRIovC/BTW589iUE/Vxav7VeM4RcY9MUjqB+IR6ILG1k9nuW6LiG/nct9uma4/MBtnZbmQ==", + "dev": true, + "dependencies": { + "@shikijs/core": "4.5.0", + "@shikijs/engine-javascript": "4.5.0", + "@shikijs/engine-oniguruma": "4.5.0", + "@shikijs/langs": "4.5.0", + "@shikijs/themes": "4.5.0", + "@shikijs/types": "4.5.0", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.5" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/side-channel": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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==", + "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==", + "devOptional": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmmirror.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.24", + "resolved": "https://registry.npmmirror.com/spdx-license-ids/-/spdx-license-ids-3.0.24.tgz", + "integrity": "sha512-cLS9TtWkIQFyLkJ3/5aFQAOHOSKTlOs/7WDut/XPSdjom1fJhUdkepeJAKXa9Y05+FabHd0sti+Et559vDtkpQ==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "peer": true + }, + "node_modules/srvx": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/srvx/-/srvx-1.0.5.tgz", + "integrity": "sha512-KvSKRpgPG/oaq3cyT614OQ2bAa7DynuGamivCZeoZzIUULOdbQz6wUtnnVuC4+DCx2Zglzo8v5gBYmWIWYhDxA==", + "dev": true, + "bin": { + "srvx": "bin/srvx.mjs" + }, + "engines": { + "node": ">=20.16.0" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "peer": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.10.0", + "resolved": "https://registry.npmmirror.com/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", + "dev": true + }, + "node_modules/string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "peer": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "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, + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dev": true, + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "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, + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/strip-indent/-/strip-indent-4.1.1.tgz", + "integrity": "sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/strip-literal/-/strip-literal-3.1.0.tgz", + "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==" + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmmirror.com/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true, + "peer": true + }, + "node_modules/synckit": { + "version": "0.11.13", + "resolved": "https://registry.npmmirror.com/synckit/-/synckit-0.11.13.tgz", + "integrity": "sha512-eNRKgb3z66Yp3D2CixVujOUvXLFUTij/zVnV8KRyvFdQwpz7I5DS8UfRkTeLzb64u+dkzDSdelE24izu+zSSUg==", + "dev": true, + "dependencies": { + "@pkgr/core": "^0.3.6" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" + } + }, + "node_modules/systemjs": { + "version": "6.15.1", + "resolved": "https://registry.npmmirror.com/systemjs/-/systemjs-6.15.1.tgz", + "integrity": "sha512-Nk8c4lXvMB98MtbmjX7JwJRgJOL8fluecYCfCeYBznwmpOs8Bf15hLM6z4z71EDAhQVrQrI+wt1aLWSXZq+hXA==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", + "engines": { + "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.51.2", + "resolved": "https://registry.npmmirror.com/terser/-/terser-5.51.2.tgz", + "integrity": "sha512-bWnjSNscmuI+GJze6ZupnHP8G/cTcsJF+bXCeQknk2SHQsgbNJnLrqiH9jZ2W4STPVXH2mDKKRX3iwPhc9Cn/Q==", + "devOptional": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.15.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "peer": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true, + "peer": true + }, + "node_modules/timm": { + "version": "1.7.1", + "resolved": "https://registry.npmmirror.com/timm/-/timm-1.7.1.tgz", + "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==" + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==" + }, + "node_modules/tinyexec": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/tinyexec/-/tinyexec-1.3.1.tgz", + "integrity": "sha512-GCvB3aoys96IuDFBMcTB46JOR6mdMtAToqwiW8JlWhsoh1mhHi/xn9ss/Dg7N555GiJyEt2qzoG/NHCwM6h1EA==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmmirror.com/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmmirror.com/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "peer": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-valid-identifier": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/to-valid-identifier/-/to-valid-identifier-1.0.0.tgz", + "integrity": "sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==", + "dev": true, + "dependencies": { + "@sindresorhus/base62": "^1.0.0", + "reserved-identifiers": "^1.0.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/toml-eslint-parser": { + "version": "0.10.1", + "resolved": "https://registry.npmmirror.com/toml-eslint-parser/-/toml-eslint-parser-0.10.1.tgz", + "integrity": "sha512-9mjy3frhioGIVGcwamlVlUyJ9x+WHw/TXiz9R4YOlmsIuBN43r9Dp8HZ35SF9EKjHrn3BUZj04CF+YqZ2oJ+7w==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/toml-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dev": true, + "peer": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmmirror.com/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/ts-declaration-location": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/ts-declaration-location/-/ts-declaration-location-1.0.7.tgz", + "integrity": "sha512-EDyGAwH1gO0Ausm9gV6T2nUvBgXT5kGoCMJPllOaooZ+4VvJiKBdZE7wK18N1deEowhcUptS+5GXZK8U/fvpwA==", + "dev": true, + "funding": [ + { + "type": "ko-fi", + "url": "https://ko-fi.com/rebeccastevens" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/ts-declaration-location" + } + ], + "dependencies": { + "picomatch": "^4.0.2" + }, + "peerDependencies": { + "typescript": ">=4.0.0" + } + }, + "node_modules/ts-declaration-location/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmmirror.com/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-level-regexp": { + "version": "0.1.17", + "resolved": "https://registry.npmmirror.com/type-level-regexp/-/type-level-regexp-0.1.17.tgz", + "integrity": "sha512-wTk4DH3cxwk196uGLK/E9pE45aLfeKJacKmcEgEOA/q5dnPGNxXt0cfYdFxb57L+sEpf1oJH4Dnx/pnRcku9jg==", + "dev": true + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "peer": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/ufo": { + "version": "1.6.4", + "resolved": "https://registry.npmmirror.com/ufo/-/ufo-1.6.4.tgz", + "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==" + }, + "node_modules/unconfig": { + "version": "7.5.0", + "resolved": "https://registry.npmmirror.com/unconfig/-/unconfig-7.5.0.tgz", + "integrity": "sha512-oi8Qy2JV4D3UQ0PsopR28CzdQ3S/5A1zwsUwp/rosSbfhJ5z7b90bIyTwi/F7hCLD4SGcZVjDzd4XoUQcEanvA==", + "dev": true, + "dependencies": { + "@quansync/fs": "^1.0.0", + "defu": "^6.1.4", + "jiti": "^2.6.1", + "quansync": "^1.0.0", + "unconfig-core": "7.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unconfig-core": { + "version": "7.5.0", + "resolved": "https://registry.npmmirror.com/unconfig-core/-/unconfig-core-7.5.0.tgz", + "integrity": "sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==", + "dev": true, + "dependencies": { + "@quansync/fs": "^1.0.0", + "quansync": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unconfig-core/node_modules/quansync": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-1.0.0.tgz", + "integrity": "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ] + }, + "node_modules/unconfig/node_modules/quansync": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/quansync/-/quansync-1.0.0.tgz", + "integrity": "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ] + }, + "node_modules/undici-types": { + "version": "7.24.6", + "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-7.24.6.tgz", + "integrity": "sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==", + "devOptional": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unimport": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/unimport/-/unimport-4.1.1.tgz", + "integrity": "sha512-j9+fijH6aDd05yv1fXlyt7HSxtOWtGtrZeYTVBsSUg57Iuf+Ps2itIZjeyu7bEQ4k0WOgYhHrdW8m/pJgOpl5g==", + "dependencies": { + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.2", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "strip-literal": "^3.0.0", + "unplugin": "^2.1.2", + "unplugin-utils": "^0.2.3" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unimport/node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==" + }, + "node_modules/unimport/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/unimport/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/unimport/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unimport/node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/unist-util-is/-/unist-util-is-6.0.1.tgz", + "integrity": "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/unist-util-visit/-/unist-util-visit-5.1.0.tgz", + "integrity": "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz", + "integrity": "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unocss": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/unocss/-/unocss-66.10.1.tgz", + "integrity": "sha512-9PvMhWGzVDAySUzRNnevP5W+rTjL+mbHfKYjozTKwZ+z2P2ytsZ1+0ZoBuAGmBKCLHzpiEu68EsoIsH8bUSxLA==", + "dev": true, + "dependencies": { + "@unocss/cli": "66.10.1", + "@unocss/core": "66.10.1", + "@unocss/preset-attributify": "66.10.1", + "@unocss/preset-icons": "66.10.1", + "@unocss/preset-mini": "66.10.1", + "@unocss/preset-tagify": "66.10.1", + "@unocss/preset-typography": "66.10.1", + "@unocss/preset-uno": "66.10.1", + "@unocss/preset-web-fonts": "66.10.1", + "@unocss/preset-wind": "66.10.1", + "@unocss/preset-wind3": "66.10.1", + "@unocss/preset-wind4": "66.10.1", + "@unocss/rollup": "66.10.1", + "@unocss/transformer-attributify-jsx": "66.10.1", + "@unocss/transformer-compile-class": "66.10.1", + "@unocss/transformer-directives": "66.10.1", + "@unocss/transformer-variant-group": "66.10.1", + "@unocss/vite": "66.10.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@unocss/astro": "66.10.1", + "@unocss/postcss": "66.10.1", + "@unocss/webpack": "66.10.1" + }, + "peerDependenciesMeta": { + "@unocss/astro": { + "optional": true + }, + "@unocss/postcss": { + "optional": true + }, + "@unocss/webpack": { + "optional": true + } + } + }, + "node_modules/unocss-applet": { + "version": "0.15.1", + "resolved": "https://registry.npmmirror.com/unocss-applet/-/unocss-applet-0.15.1.tgz", + "integrity": "sha512-4W85EmtA+v5JskzPCGPyqmFp5ECo4/ycm9QXMCsHZPC4kr6RhWy2A+dKlpUl0EHr5LyBL6OOaVNA7V0eZ6fT3w==", + "dev": true, + "peer": true, + "dependencies": { + "@unocss-applet/preset-applet": "0.15.1", + "@unocss-applet/preset-rem-rpx": "0.15.1", + "@unocss-applet/transformer-attributify": "0.15.1", + "@unocss-applet/transformer-hover": "0.15.1" + }, + "engines": { + "node": ">=22.12" + }, + "peerDependencies": { + "unocss": "~66.10.1" + } + }, + "node_modules/unocss/node_modules/@unocss/core": { + "version": "66.10.1", + "resolved": "https://registry.npmmirror.com/@unocss/core/-/core-66.10.1.tgz", + "integrity": "sha512-kPDmL/g26gBhh4jnu99n0lg+f42+24s8ssXNvwEYEX8indWCPs5gD9HS5L08BHcOsiawmntYWtR3c4D6ql0e9w==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unplugin": { + "version": "2.3.11", + "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-2.3.11.tgz", + "integrity": "sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "acorn": "^8.15.0", + "picomatch": "^4.0.3", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unplugin-utils": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.2.5.tgz", + "integrity": "sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==", + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/unplugin-utils/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unplugin/node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" + }, + "node_modules/update-browserslist-db": { + "version": "1.3.4", + "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.3.4.tgz", + "integrity": "sha512-t8wonIOdQyOjtPd2VktlBu6QjTVTks6v8bSi7kd0r2Vll8TK1JYDZtRRdbmCHOAMphkZgrzK+L+vXK4pyZ8t4A==", + "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/update-browserslist-db/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/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": { + "version": "1.5.10", + "resolved": "https://registry.npmmirror.com/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "peer": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/utif": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/utif/-/utif-2.0.1.tgz", + "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", + "dependencies": { + "pako": "^1.0.5" + } + }, + "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==" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uview-pro": { + "version": "0.6.21", + "resolved": "https://registry.npmmirror.com/uview-pro/-/uview-pro-0.6.21.tgz", + "integrity": "sha512-atq5cNtJk2GNizqXGtEe7u0GhcAjBYgdzLFUEfwWakYrGb3nPq2QyIOdQSxiV3+WQx+oT/R5T6BjjVqfYOkQyA==", + "engines": { + "HBuilderX": "^4.07", + "uni-app": "^4.07", + "uni-app-x": "" + } + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "peer": true + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.6", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verkit": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/verkit/-/verkit-0.3.2.tgz", + "integrity": "sha512-zj/ob3UsvJGN0whEAKFp53REA5X66hvffVqoCtVQAakJKnKlH+/PcOfMoFwIG/o4rElqLv/ycAFlx8ZlXUorCg==", + "dev": true, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/vfile-message/-/vfile-message-4.0.3.tgz", + "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vite": { + "version": "5.2.8", + "resolved": "https://registry.npmmirror.com/vite/-/vite-5.2.8.tgz", + "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vscode-uri": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.2.0.tgz", + "integrity": "sha512-m2gXo3bn0G1kT9InzMf07fTbqMbGtyckj3bH5ktLO+1Ssv+yiATZ4dhwaQv9UZWxJh6E9IFGnQyjgWVDWVBDrg==", + "dev": true + }, + "node_modules/vue": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-eslint-parser": { + "version": "10.4.1", + "resolved": "https://registry.npmmirror.com/vue-eslint-parser/-/vue-eslint-parser-10.4.1.tgz", + "integrity": "sha512-Gk6gRDj0n/fkRa3C3l0bBheoBckUq/Rs0F/TvMWIS6nzzx67amAViMe9CkNgsP2tXyQONvGiHQESHwFtZ3aYDA==", + "dev": true, + "dependencies": { + "debug": "^4.4.0", + "eslint-scope": "^8.2.0 || ^9.0.0", + "eslint-visitor-keys": "^4.2.0 || ^5.0.0", + "espree": "^10.3.0 || ^11.0.0", + "esquery": "^1.6.0", + "semver": "^7.6.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0" + } + }, + "node_modules/vue-eslint-parser/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/vue-eslint-parser/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-router": { + "version": "4.5.1", + "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.5.1.tgz", + "integrity": "sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw==", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "3.3.13", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-3.3.13.tgz", + "integrity": "sha512-jE4/bXdOMSHVxEGgQCqNllJy+9N3Gx6tfSAsg0yhFK/MAN6eXqISihupnDEKSCt12VVnjN2gI3AqLYcqoh5x/A==", + "dev": true, + "dependencies": { + "@volar/typescript": "2.4.28", + "@vue/language-core": "3.3.13" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "peer": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "peer": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/w3c-xmlserializer/node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true, + "peer": true + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "peer": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==" + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "peer": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true, + "peer": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmmirror.com/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "peer": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "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/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "peer": 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/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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/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, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/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, + "peer": true + }, + "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, + "peer": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmmirror.com/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/wxmp-rsa": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/wxmp-rsa/-/wxmp-rsa-2.1.0.tgz", + "integrity": "sha512-VbWMJ+vf8t7G93sjkqjCn5yGy/Si3M8uD6OFebqjJWJ1R0WCyle7X6SNia7WWG6Qe1F2/OWxhbcSGA6ebUBwIA==", + "license": "MIT" + }, + "node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/xml-name-validator": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/xml-parse-from-string": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", + "integrity": "sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==" + }, + "node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmmirror.com/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true, + "peer": true + }, + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmmirror.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xregexp": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/xregexp/-/xregexp-3.1.0.tgz", + "integrity": "sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "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, + "peer": 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==" + }, + "node_modules/yaml": { + "version": "2.9.1", + "resolved": "https://registry.npmmirror.com/yaml/-/yaml-2.9.1.tgz", + "integrity": "sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, + "node_modules/yaml-eslint-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmmirror.com/yaml-eslint-parser/-/yaml-eslint-parser-1.3.2.tgz", + "integrity": "sha512-odxVsHAkZYYglR30aPYRY4nUGJnoJ2y1ww2HDvZALo0BDETv9kWbi16J52eHs+PWRNmF4ub6nZqfVOeesOvntg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.0.0", + "yaml": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + } + }, + "node_modules/yaml-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/yargs": { + "version": "16.2.2", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-16.2.2.tgz", + "integrity": "sha512-Nt9ZJjXTv5R8MHbqby/wXQ6Gi0Bb3TcYZkR1bzuL4yB2OxWPkXknz513gEF0GoA6tn00UpbPvERW8rzCuWCA6w==", + "dev": true, + "peer": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/z-paging": { + "version": "2.8.8", + "resolved": "https://registry.npmmirror.com/z-paging/-/z-paging-2.8.8.tgz", + "integrity": "sha512-l8HWhqlv1TvoNLwbf1fd8rS0zjAoVE6tdEUhMhKrnRXkfHFULIXMbDpljcSr6IyQoMzfWxF4Nqml3+2ZDgjk7g==", + "engines": { + "HBuilderX": "^3.0.7", + "uni-app": "^4.07" + } + }, + "node_modules/zigpty": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/zigpty/-/zigpty-0.2.1.tgz", + "integrity": "sha512-MR9JqJx2wf5f4wz8zpx050AlqrmWeIW+1h0SO5iEyhG3HFRjY5luC3szS2ux2EGuPjE5OU9ZAuiCBeMWBTrqZw==", + "dev": true, + "workspaces": [ + "playground" + ] + }, + "node_modules/zod": { + "version": "4.6.6", + "resolved": "https://registry.npmmirror.com/zod/-/zod-4.6.6.tgz", + "integrity": "sha512-4UmzQUF5fxvfcYHlbjBmejU+w+hbDnWFx4aS8kBx7nPBHcO2SqPbpAG8snbdg+Xse4pRefR98hgjFgIMCI/UhA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/uniapp/youjiala/package.json b/uniapp/youjiala/package.json new file mode 100644 index 0000000..ced722c --- /dev/null +++ b/uniapp/youjiala/package.json @@ -0,0 +1,108 @@ +{ + "name": "youjiala", + "type": "module", + "version": "1.0.0", + "private": true, + "packageManager": "pnpm@10.34.5", + "engines": { + "node": ">=18.0.0", + "pnpm": ">=10.0.0" + }, + "scripts": { + "dev": "uni", + "dev:custom": "uni -p", + "dev:h5": "uni", + "dev:h5:ssr": "uni --ssr", + "dev:app": "uni -p app", + "dev:app-android": "uni -p app-android", + "dev:app-ios": "uni -p app-ios", + "dev:mp-alipay": "uni -p mp-alipay", + "dev:mp-baidu": "uni -p mp-baidu", + "dev:mp-jd": "uni -p mp-jd", + "dev:mp-kuaishou": "uni -p mp-kuaishou", + "dev:mp-lark": "uni -p mp-lark", + "dev:mp-qq": "uni -p mp-qq", + "dev:mp-toutiao": "uni -p mp-toutiao", + "dev:mp-weixin": "uni -p mp-weixin", + "dev:mp-xhs": "uni -p mp-xhs", + "dev:mp-dingtalk": "uni -p mp-dingtalk", + "dev:quickapp-webview": "uni -p quickapp-webview", + "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei", + "dev:quickapp-webview-union": "uni -p quickapp-webview-union", + "build": "uni build", + "build:custom": "uni build -p", + "build:h5": "uni build", + "build:h5:ssr": "uni build --ssr", + "build:app": "uni build -p app", + "build:app-android": "uni build -p app-android", + "build:app-ios": "uni build -p app-ios", + "build:mp-alipay": "uni build -p mp-alipay", + "build:mp-baidu": "uni build -p mp-baidu", + "build:mp-jd": "uni build -p mp-jd", + "build:mp-kuaishou": "uni build -p mp-kuaishou", + "build:mp-lark": "uni build -p mp-lark", + "build:mp-qq": "uni build -p mp-qq", + "build:mp-toutiao": "uni build -p mp-toutiao", + "build:mp-weixin": "uni build -p mp-weixin", + "build:mp-xhs": "uni build -p mp-xhs", + "build:mp-dingtalk": "uni build -p mp-dingtalk", + "build:quickapp-webview": "uni build -p quickapp-webview", + "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei", + "build:quickapp-webview-union": "uni build -p quickapp-webview-union", + "type-check": "vue-tsc --noEmit", + "lint": "eslint .", + "lint:fix": "eslint . --fix" + }, + "dependencies": { + "@dcloudio/uni-app": "3.0.0-4080720251210001", + "@dcloudio/uni-app-harmony": "3.0.0-4080720251210001", + "@dcloudio/uni-app-plus": "3.0.0-4080720251210001", + "@dcloudio/uni-components": "3.0.0-4080720251210001", + "@dcloudio/uni-h5": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-jd": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-lark": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-qq": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080720251210001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080720251210001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080720251210001", + "crypto-js": "^4.1.1", + "dayjs": "^1.11.23", + "pinia": "2.2.4", + "pinia-plugin-persistedstate": "3.2.1", + "uview-pro": "^0.6.15", + "vue": "3.4.21", + "vue-router": "4.5.1", + "wxmp-rsa": "^2.1.0", + "z-paging": "^2.8.8" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080720251210001", + "@dcloudio/uni-cli-shared": "3.0.0-4080720251210001", + "@dcloudio/uni-stacktracey": "3.0.0-4080720251210001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080720251210001", + "@iconify-json/carbon": "^1.2.15", + "@mini-types/alipay": "^3.0.14", + "@types/crypto-js": "^4.2.2", + "@types/node": "^25.0.3", + "@uni-helper/eslint-config": "^0.6.1", + "@uni-helper/plugin-uni": "0.1.0", + "@uni-helper/uni-types": "^1.0.0-alpha.7", + "@uni-helper/unocss-preset-uni": "^0.2.11", + "@uni-helper/vite-plugin-uni-components": "^0.2.6", + "@vue/runtime-core": "3.4.21", + "@vue/tsconfig": "^0.8.1", + "eslint": "^9.39.2", + "miniprogram-api-typings": "^4.1.2", + "sass": "1.64.2", + "typescript": "^5.9.3", + "unocss": "^66.10.1", + "vite": "5.2.8", + "vue-tsc": "^3.2.1" + } +} diff --git a/uniapp/youjiala/pnpm-workspace.yaml b/uniapp/youjiala/pnpm-workspace.yaml new file mode 100644 index 0000000..876e89d --- /dev/null +++ b/uniapp/youjiala/pnpm-workspace.yaml @@ -0,0 +1,8 @@ +allowBuilds: + '@uni-helper/unocss-preset-uni': true + bufferutil: true + core-js: true + esbuild: true + vue-demi: true +overrides: + unconfig: 7.3.2 diff --git a/uniapp/youjiala/src/App.root.vue b/uniapp/youjiala/src/App.root.vue new file mode 100644 index 0000000..170344c --- /dev/null +++ b/uniapp/youjiala/src/App.root.vue @@ -0,0 +1,30 @@ + + + + + + diff --git a/uniapp/youjiala/src/App.vue b/uniapp/youjiala/src/App.vue new file mode 100644 index 0000000..acdf559 --- /dev/null +++ b/uniapp/youjiala/src/App.vue @@ -0,0 +1,14 @@ + + + diff --git a/uniapp/youjiala/src/common/constant.ts b/uniapp/youjiala/src/common/constant.ts new file mode 100644 index 0000000..04c8c78 --- /dev/null +++ b/uniapp/youjiala/src/common/constant.ts @@ -0,0 +1,53 @@ +export const APP_INFO: { + name: string; + version: string; + buildTime: string; + platform: string; +} = { + name: "uViewPro(跨平台UI组件库)", + version: "1.0.9", + buildTime: "2025-12-23", + platform: getPlatform(), +}; + +export const UVIEW_PRO_INFO = { + name: "uview-pro", + version: "0.4.7", + buildTime: "2025-12-19", +}; + +function getPlatform() { + let platform = uni.getSystemInfoSync().platform; + if (platform) { + return platform; + } + // #ifdef H5 + platform = "H5"; + // #endif + // #ifdef MP-WEIXIN + platform = "微信小程序"; + // #endif + // #ifdef MP-ALIPAY + platform = "支付宝小程序"; + // #endif + // #ifdef APP-PLUS + platform = "App"; + // #endif + // #ifdef APP-HARMONY + platform = "HarmonyOS"; + // #endif + platform = "未知平台"; + return platform; +} + +export const ONBOARDING_STORAGE_BASE_KEY = `guide-onboarded-${APP_INFO.version}`; + +export const GUIDE_TABS_KEY = `guide-page-tabs-${APP_INFO.version}`; + +export const GUIDE_FAB_KEY = `guide-page-fab-${APP_INFO.version}`; + +export const GUIDE_TABBAR_KEY = `guide-page-tabbar-${APP_INFO.version}`; + +export const GUIDE_THEME_SWITCHER_KEY = `guide-theme-switcher-${APP_INFO.version}`; + +export const GUIDE_EXPERIENCE_KEY = `guide-experience-entry-${APP_INFO.version}`; diff --git a/uniapp/youjiala/src/common/http.interceptor.ts b/uniapp/youjiala/src/common/http.interceptor.ts new file mode 100644 index 0000000..0de7671 --- /dev/null +++ b/uniapp/youjiala/src/common/http.interceptor.ts @@ -0,0 +1,517 @@ +import type { + RequestConfig, + RequestInterceptor, + RequestMeta, + RequestOptions, +} from "uview-pro"; +import type { JwtInfo } from "@/data/auto/jwtInfo"; +import { http } from "uview-pro"; +import { toBackendLocale } from "@/common/locale-const"; +import { WebSitePolicy } from "@/policy/custom/webSitePolicy"; +import { + currentRealPath, + errorPageUrl, + pageUrl, + resolvePageName, + toRealPath, +} from "@/router/routes"; + +/** + * 全项目唯一请求层(基于 uview-pro httpPlugin,main.ts 已注册) + * 整合了原 common/request 模块的全部能力: + * - JWT 登录态存取 + Authorization 头 + * - 401 并发刷新令牌单例(refreshPromise)+ _retry 防递归 + * - 业务异常识别(.NET CloudBuilder 的 ValidatedException / ServiceErrorException) + * - meta 驱动的 loading / toast 开关 + * - uploadFile / downloadFile 文件传输工具 + */ + +// ==================== 全局配置 ==================== + +// 后端地址唯一来源:policy/custom/webSitePolicy(代码生成器维护,改地址只动那里) +// 与旧系统 WebVue 同逻辑:开发构建用 WebApiRootDev,发布构建用 WebApiRoot +// App 端开发构建(真机/模拟器)连不上宿主机的 localhost,改用 WebApiRootDevApp +// 小程序端需在平台配置 https 合法域名;本地 H5 联调如遇 CORS 需后端放行开发端口 +let devBaseUrl = WebSitePolicy.WebApiRootDev; +// #ifdef APP-PLUS +devBaseUrl = WebSitePolicy.WebApiRootDevApp; +// #endif +export const baseUrl = import.meta.env.DEV + ? devBaseUrl + : WebSitePolicy.WebApiRoot; +// 登录页真实路径:getCurrentPages() 拿到的 route 永远是 pages.json 里的 path, +// 不含 H5 运行时补的短地址别名,故路径比较只能用真实路径,跳转 URL 才走 pageUrl() +const loginPage = toRealPath("login"); +const timeout = 60000; + +// ==================== 登录态(JWT) ==================== + +// JwtInfo 使用后端对齐的权威定义(@/data/auto/jwtInfo:AccessToken / RefreshToken / CreatedTime), +// 此处再导出,保持 import { JwtInfo } from '@/common/http.interceptor' 的调用方兼容 +export type { JwtInfo }; + +const JWT_STORAGE_KEY = "request-jwt-info"; + +/** 读取登录令牌信息 */ +export function getJwtInfo(): JwtInfo | null { + return (uni.getStorageSync(JWT_STORAGE_KEY) as JwtInfo) || null; +} + +/** 登录成功后写入令牌(供登录页调用) */ +export function setLoginJwt(jwt: JwtInfo) { + uni.setStorageSync(JWT_STORAGE_KEY, jwt); +} + +/** 清除登录态 */ +export function clearLoginState() { + uni.removeStorageSync(JWT_STORAGE_KEY); +} + +function getToken(): string { + return getJwtInfo()?.AccessToken ?? ""; +} + +/** + * 认证失败统一收尾:必要时清登录态并跳登录页; + * 已经在登录页就不再跳,避免死循环 + */ +function goLogin(clearState = true) { + if (clearState) + clearLoginState(); + const pages = getCurrentPages(); + const current = pages[pages.length - 1]; + const currentPath = current ? `/${current.route}` : ""; + if (currentPath !== loginPage) + uni.reLaunch({ url: pageUrl("login") }); +} + +/** + * 权限不足统一收尾:跳 403 页并把出错地址用 ?from= 带过去。 + * 这里不复用 router/nav-guard 的 jumpToError:nav-guard 依赖本模块读登录态, + * 反向 import 会形成循环依赖;本页已在 403 时不再跳,避免页面自身请求 403 导致来回刷 + */ +function goForbidden() { + const real = currentRealPath(); + const name = resolvePageName(real); + if (name === "error403") { + return; + } + // from 是给用户看的地址:H5 用短地址,其它端用真实路径 + const url = errorPageUrl("error403", name ? pageUrl(name) : real); + uni.redirectTo({ url, fail: () => uni.reLaunch({ url }) }); +} + +// ==================== 401 并发刷新(原 axios 封装的精华设计) ==================== + +/** + * 正在进行的刷新请求 Promise。 + * 多个请求同时 401 时共用同一次刷新:后端每次刷新都会换新 RefreshToken, + * 各自刷新会让先完成的那个把其它请求携带的旧 RefreshToken 作废, + * 结果被判定「无效的令牌,请重新登录」而把人踢下线。 + */ +let refreshPromise: Promise | null = null; + +/** 真正发起刷新:直接走 uni.request 绕开 http 单例,防止刷新自身 401 无限递归 */ +function doRefreshToken(): Promise { + const data = getJwtInfo(); + if (!data) + return Promise.reject(new Error("无登录态,无法刷新令牌")); + + return new Promise((resolve, reject) => { + uni.request({ + url: `${baseUrl}/Auth/RefreshToken`, + method: "POST", + data, + timeout, + success: (res) => { + if (res.statusCode >= 200 && res.statusCode < 300 && res.data) { + const jwt = res.data as JwtInfo; + setLoginJwt(jwt); + resolve(jwt); + } + else { + // 带上 status:goLogin 据此区分「服务端拒绝」与「网络抖动」 + const err: any = new Error("刷新令牌失败"); + err.status = res.statusCode; + reject(err); + } + }, + fail: (err: any) => reject(err), // 网络类异常无 status,保留登录态 + }); + }); +} + +/** 取得「共用的刷新动作」:并发 401 只刷新一次 */ +function refreshTokenOnce(): Promise { + if (!refreshPromise) { + refreshPromise = doRefreshToken().finally(() => { + refreshPromise = null; + }); + } + return refreshPromise; +} + +// ==================== 提示与业务异常 ==================== + +/** 从后端错误体里提取可读文案(兼容 .NET 序列化与常见 {message,msg} 格式) */ +function extractErrorMessage(data: any): string { + if (data == null) + return ""; + if (typeof data === "string") + return data; + return data.Message ?? data.message ?? data.msg ?? ""; +} + +/** + * 发给后端的 Culture / locale 头统一取值(与旧系统 CulturePolicy 字面一致:zh-cn / en)。 + * uni.getLocale() 在 H5 常返回 zh-Hans 等 BCP-47 变体,直传会让服务端 + * ServiceMessageManager.ComposeMessage 查不到词条,抛空 Message 异常, + * 前端只能看到兜底文案,故统一归一化(取值定义见 common/locale-const.ts)。 + */ +export function backendLocale(): string { + return toBackendLocale(String(uni.getLocale?.() ?? "")); +} + +/** 长错误用 modal 完整展示,短错误用 toast */ +function notifyError(detail: string, fallback = "请求失败") { + const content = detail || fallback; + if (content.length > 14) { + uni.showModal({ + title: fallback, + content: content.slice(0, 200), + showCancel: false, + }); + } + else { + uni.showToast({ title: content, icon: "none" }); + } +} + +/** + * 业务异常识别:HTTP 成功但 body 是 .NET 异常对象时命中 + * @returns 命中返回异常消息(调用方需抛出),未命中返回空串 + */ +function detectBusinessException(data: any): string { + if (!data || typeof data !== "object" || !data.SourceCode) + return ""; + const msg = extractErrorMessage(data) || "业务处理失败"; + if (data.SourceCode === "CloudBuilder.Core.ValidatedException") { + uni.showModal({ + title: "业务校验失败", + content: msg.slice(0, 200), + showCancel: false, + }); + return msg; + } + if (data.SourceCode === "CloudBuilder.Core.ServiceErrorException") { + notifyError(msg, "服务异常"); + return msg; + } + return ""; +} + +// ==================== 全局配置(httpPlugin 注册用) ==================== + +const httpRequestConfig: RequestConfig = { + baseUrl, + header: { + "content-type": "application/json", + }, + timeout, + meta: { + originalData: true, // 拦截器收到完整响应(含 statusCode/header),自行解包 + toast: true, // 出错默认提示,单次请求可传 meta.toast=false 关闭 + loading: false, // 默认不显示 loading,单次请求传 meta.loading=true 开启 + }, +}; + +// ==================== 请求 / 响应拦截器(httpPlugin 注册用) ==================== + +const httpInterceptor: RequestInterceptor = { + // 请求拦截器:loading + method 归一化 + Authorization + locale + request: (config: RequestOptions) => { + const meta: RequestMeta = config.meta || {}; + if (meta.loading) { + uni.showLoading({ title: "加载中...", mask: true }); + } + // 归一化 method 大写:兼容代码生成的 service 层(传小写 "post"/"get",uni.request 要求大写) + config.method = String( + config.method || "GET", + ).toUpperCase() as RequestOptions["method"]; + const token = getToken(); + if (token) { + // ASP.NET Core JWT Bearer 认证要求 Authorization 带 "Bearer " 前缀(旧系统同) + config.header.Authorization = token.startsWith("Bearer ") + ? token + : `Bearer ${token}`; + } + config.header.locale = backendLocale(); + return config; + }, + + // 响应拦截器(async:支持 401 等待刷新后重试) + response: async (response: any) => { + const meta: RequestMeta = response.config?.meta || {}; + if (meta.loading) { + uni.hideLoading(); + } + const { statusCode, data: rawData, errMsg } = response; + const config = response.config; + + // 网络层错误 + if (errMsg && errMsg.includes("Failed to connect")) { + meta.toast && notifyError("", "网络错误"); + throw new Error("网络错误"); + } + if (errMsg && errMsg.includes("request:fail")) { + meta.toast && notifyError("", "请求错误:未知"); + throw new Error("请求错误:未知"); + } + + // 401 且未重试过:共用刷新 + 重试 + if (statusCode === 401 && !config._retry) { + if (!getToken()) { + // 本来就没有登录态,直接去登录页 + goLogin(true); + throw new Error("登录已失效,请重新登录"); + } + // _retry 标记:重试请求再 401 时落入下方非 2xx 分支,防止无限递归 + config._retry = true; + // ① 只把「刷新令牌」放进 try:刷新失败(服务端拒绝)才清登录态跳登录页; + // 网络抖动(无 status)保留登录态,避免一次断网把用户踢下线 + try { + await refreshTokenOnce(); + } + catch (refreshError: any) { + goLogin(!!(refreshError && refreshError.status)); + throw refreshError; + } + // ② 重试放在 try 之外:它自身的失败(500/403 等)只算这次业务请求失败, + // 不能当成「刷新失败」,否则会误清已成功续期用户的登录态 + return await http.request(config); + } + + // 204:后端约定「无内容但业务自行处理」,静默透传 + if (statusCode === 204) + return rawData; + + // 请求错误(非 2xx) + if (!(statusCode >= 200 && statusCode < 300)) { + // 403:权限不足,跳 403 页列出原因(401 走上面的续期 / 回登录页链路,不进错误页) + if (statusCode === 403) { + goForbidden(); + } + // 异常体优先:.NET 后端常以 500 + JSON 异常返回业务错误 + const bizMsg = detectBusinessException(rawData); + if (bizMsg) + throw new Error(bizMsg); + const errorMessage = `请求错误[${statusCode}]`; + meta.toast && notifyError(extractErrorMessage(rawData), errorMessage); + const err: any = new Error(`${errorMessage}:${errMsg ?? ""}`); + err.status = statusCode; // 结构化状态码,供调用方按 401/403/500 分支处理 + err.data = rawData; + throw err; + } + + // 2xx 但 body 是业务异常 + const bizMsg = detectBusinessException(rawData); + if (bizMsg) + throw new Error(bizMsg); + + // 成功:剥壳返回 JSON body(service/* 经 utils/request 直接拿到后端实体对象) + return rawData; + }, +}; + +// ==================== 文件传输工具(不属于主链路,无拦截器逻辑) ==================== + +export interface UploadOptions { + url: string; + /** 本地文件路径(chooseImage/chooseVideo 等获得) */ + filePath: string; + /** 文件对应的 form-key,后端按此名接收(默认 'file') */ + name?: string; + formData?: Record; + header?: Record; +} + +/** 上传文件(uni.uploadFile 封装,自动携带 token,失败 reject 可感知) */ +export function uploadFile(options: UploadOptions): Promise { + const { url, filePath, name = "file", formData, header = {} } = options; + const fullUrl = url.indexOf("http") === 0 ? url : baseUrl + url; + const token = getToken(); + + return new Promise((resolve, reject) => { + uni.uploadFile({ + url: fullUrl, + filePath, + name, + formData, + timeout, + header: token ? { Authorization: token, ...header } : header, + success: (res) => { + if (res.statusCode < 200 || res.statusCode >= 300) { + notifyError("", `上传失败[${res.statusCode}]`); + reject(new Error(`上传失败[${res.statusCode}]`)); + return; + } + let data: any = res.data; + try { + data = typeof res.data === "string" ? JSON.parse(res.data) : res.data; + } + catch { + /* 非 JSON 响应保持原样 */ + } + const bizMsg = detectBusinessException(data); + if (bizMsg) + reject(new Error(bizMsg)); + else resolve(data); + }, + fail: (err: any) => { + notifyError(err.errMsg ?? "", "上传失败"); + reject(err); + }, + }); + }); +} + +export interface DownloadOptions { + url: string; + method?: "GET" | "POST"; + data?: any; + /** 下载文件名前缀(自动追加时间戳与扩展名) */ + filename: string; + extension?: string; +} + +/** arraybuffer 按 UTF-8 解码(H5 用 TextDecoder,小程序简化实现) */ +function abToString(buffer: ArrayBuffer): string { + if (typeof TextDecoder !== "undefined") + return new TextDecoder("utf-8").decode(new Uint8Array(buffer)); + const bytes = new Uint8Array(buffer); + let result = ""; + for (let i = 0; i < bytes.length;) { + const c = bytes[i]; + if (c < 0x80) { + result += String.fromCharCode(c); + i += 1; + } + else if (c < 0xE0) { + result += String.fromCharCode(((c & 0x1F) << 6) | (bytes[i + 1] & 0x3F)); + i += 2; + } + else { + result += String.fromCharCode( + ((c & 0x0F) << 12) + | ((bytes[i + 1] & 0x3F) << 6) + | (bytes[i + 2] & 0x3F), + ); + i += 3; + } + } + return result; +} + +/** 生成 yyyyMMddHHmmss 时间戳(零依赖,替代 dayjs) */ +function timestamp(): string { + const d = new Date(); + const p = (n: number) => String(n).padStart(2, "0"); + return `${d.getFullYear()}${p(d.getMonth() + 1)}${p(d.getDate())}${p(d.getHours())}${p(d.getMinutes())}${p(d.getSeconds())}`; +} + +/** + * 下载并打开文件(默认按 Excel 处理) + * 关键防御:先探测 content-type——后端报错时返回的是 JSON 而不是文件 + */ +export async function downloadFile(options: DownloadOptions): Promise { + const { url, method = "POST", data, filename, extension = "xlsx" } = options; + const fullUrl = url.indexOf("http") === 0 ? url : baseUrl + url; + const token = getToken(); + + const res = await new Promise( + (resolve, reject) => { + uni.request({ + url: fullUrl, + method, + data, + timeout, + responseType: "arraybuffer", + header: token ? { Authorization: token } : {}, + success: resolve, + fail: err => reject(new Error(err.errMsg || "下载失败")), + }); + }, + ); + + const header = res.header as Record; + const contentType = String( + header["content-type"] || header.Content_Type || header.ContentType || "", + ); + if (contentType.includes("application/json")) { + const text + = typeof res.data === "string" + ? res.data + : abToString(res.data as ArrayBuffer); + let msg = "下载失败"; + try { + msg = extractErrorMessage(JSON.parse(text)) || msg; + } + catch { + /* 解析失败沿用默认文案 */ + } + notifyError(msg, "下载失败"); + throw new Error(msg); + } + if (res.statusCode < 200 || res.statusCode >= 300) { + notifyError("", `下载失败[${res.statusCode}]`); + throw new Error(`下载失败[${res.statusCode}]`); + } + + const fileName = `${filename}${timestamp()}.${extension}`; + + // #ifdef H5 + // H5:blob + 隐藏 触发浏览器下载 + const downloadUrl = URL.createObjectURL(new Blob([res.data as ArrayBuffer])); + const link = document.createElement("a"); + link.href = downloadUrl; + link.download = fileName; + document.body.appendChild(link); + link.click(); + link.remove(); + URL.revokeObjectURL(downloadUrl); + // #endif + + // #ifndef H5 + // 小程序/App:写入本地用户目录后调起系统文档预览 + const fs = uni.getFileSystemManager(); + // 写入目录按平台区分:微信用 uni.env.USER_DATA_PATH(官方类型未声明故转 any); + // App 端无 uni.env,写 plus 私有目录 _doc/(openDocument 同样支持该相对路径) + let userDataPath = ""; + // #ifdef MP-WEIXIN + userDataPath = (uni as any).env?.USER_DATA_PATH ?? ""; + // #endif + // #ifdef APP-PLUS + userDataPath = "_doc"; + // #endif + const filePath = `${userDataPath}/${fileName}`; + await new Promise((resolve, reject) => { + fs.writeFile({ + filePath, + data: res.data as ArrayBuffer, + success: () => resolve(), + fail: (err: any) => reject(new Error(err.errMsg || "写入文件失败")), + }); + }); + await new Promise((resolve, reject) => { + uni.openDocument({ + filePath, + showMenu: true, + success: () => resolve(), + fail: (err: any) => reject(new Error(err.errMsg || "无法打开文件")), + }); + }); + // #endif +} + +// 导出(main.ts httpPlugin 注册用) +export { httpInterceptor, httpRequestConfig }; diff --git a/uniapp/youjiala/src/common/locale-const.ts b/uniapp/youjiala/src/common/locale-const.ts new file mode 100644 index 0000000..eb9e3b2 --- /dev/null +++ b/uniapp/youjiala/src/common/locale-const.ts @@ -0,0 +1,33 @@ +/** + * 语言 / Culture 取值:区分「后端 Culture 线值」与「uView Pro 语言包 name」两套 + * + * - 后端(旧 CulturePolicy)严格字面:中文 "zh-cn"、英文 "en"。 + * 发给后端的 locale 头 / 登录体 Culture 用这套,防止后端精确匹配失败。 + * - uView Pro 内置语言包 name 固定为 "zh-CN" / "en-US"(大小写敏感)。 + * 前端自定义语言包的 name 必须与之完全相同,config-provider 才能把自定义文案 + * 与内置组件文案(picker / calendar / upload …)按 name 合并; + * 若写成 "zh-cn" 会被当成另一种语言,导致内置组件文案丢失 + 语言选择器出现重复项。 + */ + +/** 发给后端的 Culture 线值 */ +export const BACKEND_LOCALE_ZH = "zh-cn"; +export const BACKEND_LOCALE_EN = "en"; + +/** uView Pro 语言包 name(必须匹配内置大小写,勿改成 zh-cn / en) */ +export const UI_LOCALE_ZH = "zh-CN"; +export const UI_LOCALE_EN = "en-US"; + +/** 前端默认选中的语言包 name */ +export const DEFAULT_LOCALE = UI_LOCALE_ZH; + +/** 归一化任意 locale 变体(zh-Hans / zh-CN / en-US …)到后端 Culture 线值 */ +export function toBackendLocale(value: string): string { + const l = String(value || "").toLowerCase(); + return l.startsWith("en") ? BACKEND_LOCALE_EN : BACKEND_LOCALE_ZH; +} + +/** 归一化任意 locale 变体(含 DB 的 Lang)到 uView 语言包 name */ +export function toUiLocale(value: string): string { + const l = String(value || "").toLowerCase(); + return l.startsWith("en") ? UI_LOCALE_EN : UI_LOCALE_ZH; +} diff --git a/uniapp/youjiala/src/common/pwd-crypto.ts b/uniapp/youjiala/src/common/pwd-crypto.ts new file mode 100644 index 0000000..c915b4f --- /dev/null +++ b/uniapp/youjiala/src/common/pwd-crypto.ts @@ -0,0 +1,36 @@ +// 跨端密码加密工具(H5 / 小程序 / App 均可用) +// 说明:原 jsencrypt 依赖浏览器 window.crypto,小程序/App 无 DOM 会失败; +// wxmp-rsa 是 jsencrypt 同源 fork(jsbn 纯 JS 实现,随机数走 Math.random 兜底), +// 无任何浏览器全局依赖,API 与 jsencrypt 完全一致,一套代码全端运行。 +import CryptoJS from "crypto-js"; +import { JSEncrypt } from "wxmp-rsa"; + +/** MD5 摘要(小写 hex),与旧系统 WebVue 的 CryptoJS.MD5(...).toString() 输出一致 */ +export function md5Hex(text: string): string { + return CryptoJS.MD5(text).toString(); +} + +/** + * RSA 公钥加密(PKCS#1 v1.5),返回 base64 密文 + * @param plaintext 待加密明文 + * @param publicKeyPem 后端 /Auth/GetRsaPublicKey 返回的 PEM 公钥(无换行的裸格式也可) + * @returns 加密失败返回空串,调用方需判空兜底 + */ +export function rsaEncrypt(plaintext: string, publicKeyPem: string): string { + const encryptor = new JSEncrypt(); + encryptor.setPublicKey(publicKeyPem); + // encrypt 失败返回 false(非 nullish),用 || 兜底为空串 + return encryptor.encrypt(plaintext) || ""; +} + +/** + * 登录密码密文:RSA( Guid + MD5(密码) ),算法与旧系统 WebVue 登录完全一致 + * Guid 同时作为请求体 LoginData.Guid 发送,服务端解密后比对前缀防重放 + */ +export function encryptLoginPassword( + password: string, + guid: string, + publicKeyPem: string, +): string { + return rsaEncrypt(guid + md5Hex(password), publicKeyPem); +} diff --git a/uniapp/youjiala/src/common/style.scss b/uniapp/youjiala/src/common/style.scss new file mode 100644 index 0000000..369c712 --- /dev/null +++ b/uniapp/youjiala/src/common/style.scss @@ -0,0 +1,12 @@ +:deep(.code-text) { + font-family: 'Monaco', 'Consolas', monospace; + white-space: pre-wrap; + line-height: 1.4; +} + +.code-block { + background: $u-bg-gray-light; + padding: 24rpx; + border-radius: 8rpx; + margin: 16rpx 0; +} \ No newline at end of file diff --git a/uniapp/youjiala/src/common/uview-pro.theme.ts b/uniapp/youjiala/src/common/uview-pro.theme.ts new file mode 100644 index 0000000..28c5af5 --- /dev/null +++ b/uniapp/youjiala/src/common/uview-pro.theme.ts @@ -0,0 +1,116 @@ +// 此自定义uView Pro主题生成于2025-11-29 13:18 +// 地址:https://uviewpro.cn/zh/guide/themeGenerate.html + +export default [ + // 主题 1: 紫色 + { + name: "purple", + label: "霞光紫", + color: { + primary: "#7c3aed", + error: "#f43f5e", + warning: "#f59e0b", + success: "#10b981", + info: "#6b7280", + primaryLight: "#f3e8ff", + errorLight: "#ffe4e6", + warningLight: "#fef3c7", + successLight: "#d1fae5", + infoLight: "#f3f4f6", + primaryDark: "#6d28d9", + errorDark: "#e11d48", + warningDark: "#d97706", + successDark: "#059669", + infoDark: "#4b5563", + primaryDisabled: "#c4b5fd", + errorDisabled: "#fbcfe8", + warningDisabled: "#fde68a", + successDisabled: "#a7f3d0", + infoDisabled: "#d1d5db", + }, + }, + + // 主题 2: 绿色 + { + name: "green", + label: "清翠绿", + color: { + primary: "#059669", + error: "#dc2626", + warning: "#eab308", + success: "#16a34a", + info: "#78716c", + primaryLight: "#ecfdf5", + errorLight: "#fee2e2", + warningLight: "#fefce8", + successLight: "#dcfce7", + infoLight: "#fafaf9", + primaryDark: "#047857", + errorDark: "#b91c1c", + warningDark: "#ca8a04", + successDark: "#15803d", + infoDark: "#57534e", + primaryDisabled: "#6ee7b7", + errorDisabled: "#fca5a5", + warningDisabled: "#facc15", + successDisabled: "#86efac", + infoDisabled: "#e7e5e4", + }, + }, + + // 主题 3: 橙色 + { + name: "orange", + label: "暖阳橙", + color: { + primary: "#f97316", + error: "#ef4444", + warning: "#fbbf24", + success: "#22c55e", + info: "#6366f1", + primaryLight: "#ffedd5", + errorLight: "#fee2e2", + warningLight: "#fef3c7", + successLight: "#dcfce7", + infoLight: "#e0e7ff", + primaryDark: "#ea580c", + errorDark: "#dc2626", + warningDark: "#f59e0b", + successDark: "#16a34a", + infoDark: "#4f46e5", + primaryDisabled: "#fed7aa", + errorDisabled: "#fecaca", + warningDisabled: "#fde68a", + successDisabled: "#86efac", + infoDisabled: "#c7d2fe", + }, + }, + + // 主题 4: 深蓝 / 黑蓝色系 + { + name: "dark", + label: "午夜蓝", + color: { + primary: "#0b3d91", + error: "#ef5350", + warning: "#ffa726", + success: "#66bb6a", + info: "#2196f3", + primaryLight: "#081a33", + errorLight: "#5e1914", + warningLight: "#663c00", + successLight: "#1b3a1b", + infoLight: "#003d66", + primaryDark: "#062a57", + errorDark: "#c62828", + warningDark: "#e65100", + successDark: "#2e7d32", + infoDark: "#01579b", + primaryDisabled: "#274a7a", + errorDisabled: "#ef9a9a", + warningDisabled: "#ffb74d", + successDisabled: "#81c784", + infoDisabled: "#4fc3f7", + }, + }, +]; diff --git a/uniapp/youjiala/src/components/app-page/app-page.vue b/uniapp/youjiala/src/components/app-page/app-page.vue new file mode 100644 index 0000000..f89a731 --- /dev/null +++ b/uniapp/youjiala/src/components/app-page/app-page.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/uniapp/youjiala/src/components/app-tabbar/app-tabbar.vue b/uniapp/youjiala/src/components/app-tabbar/app-tabbar.vue new file mode 100644 index 0000000..2726bfe --- /dev/null +++ b/uniapp/youjiala/src/components/app-tabbar/app-tabbar.vue @@ -0,0 +1,29 @@ + + + + + + + diff --git a/uniapp/youjiala/src/components/error-panel/error-panel.vue b/uniapp/youjiala/src/components/error-panel/error-panel.vue new file mode 100644 index 0000000..2490006 --- /dev/null +++ b/uniapp/youjiala/src/components/error-panel/error-panel.vue @@ -0,0 +1,316 @@ + + + + + diff --git a/uniapp/youjiala/src/composables/index.ts b/uniapp/youjiala/src/composables/index.ts new file mode 100644 index 0000000..8beb140 --- /dev/null +++ b/uniapp/youjiala/src/composables/index.ts @@ -0,0 +1,2 @@ +export * from "./useAuthGuard"; +export * from "./useLang"; diff --git a/uniapp/youjiala/src/composables/useAuthGuard.ts b/uniapp/youjiala/src/composables/useAuthGuard.ts new file mode 100644 index 0000000..9abf4c4 --- /dev/null +++ b/uniapp/youjiala/src/composables/useAuthGuard.ts @@ -0,0 +1,23 @@ +import { onShow } from "@dcloudio/uni-app"; +import { ensureCurrentPageAuthorized } from "@/router/nav-guard"; + +/** + * 页面级登录守卫(补 router/nav-guard 拦不到的那半边) + * + * uni.addInterceptor 只作用于站内跳转;H5 地址栏直达、分享链接冷启动、 + * 小程序「编译进入指定页面」都不会调用任何导航 API, + * 因此受保护页面必须在自己的 onShow 里再校验一次。 + * + * 放在 onShow 而不是 onLoad:从登录页 reLaunch 回来、或从后台切回前台时 + * 令牌可能已经变化,每次显示都复核一次更稳妥。 + * + * @param onAuthorized 校验通过后的初始化回调(拉数据等),被拦走时不会执行 + */ +export function useAuthGuard(onAuthorized?: () => void): void { + onShow(() => { + if (!ensureCurrentPageAuthorized()) { + return; + } + onAuthorized?.(); + }); +} diff --git a/uniapp/youjiala/src/composables/useLang.ts b/uniapp/youjiala/src/composables/useLang.ts new file mode 100644 index 0000000..72e6b3f --- /dev/null +++ b/uniapp/youjiala/src/composables/useLang.ts @@ -0,0 +1,18 @@ +import { useLocale } from "uview-pro"; + +export function useLang() { + const { setLocale } = useLocale(); + + // 切换语言 + function switchLang(lang: string, locale?: string) { + // 切换uniapp语言 + locale && uni.setLocale(locale); + uni.setStorageSync("UNI_LOCALE", locale); + // 切换uView Pro语言 + setLocale(lang); + } + + return { + switchLang, + }; +} diff --git a/uniapp/youjiala/src/data/auto/abstractSearchCriteria.ts b/uniapp/youjiala/src/data/auto/abstractSearchCriteria.ts new file mode 100644 index 0000000..4179439 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/abstractSearchCriteria.ts @@ -0,0 +1,16 @@ +import type { GridColumnInfo } from "./gridColumnInfo"; +import type { SearchFilter } from "./searchFilter"; +import type { SelectOption } from "./selectOption"; + +export class AbstractSearchCriteria { + public limit: number = 0; + public page: number = 0; + public clear: number = 0; + public orderby: string = ""; + public orderbytag: string = ""; + public Filter: SearchFilter[] = []; + public IsModal: boolean = false; + public ReportName: string = ""; + public GridColumns: GridColumnInfo[] = []; + public SelectOptions: SelectOption[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/biometricLoginChallengeDto.ts b/uniapp/youjiala/src/data/auto/biometricLoginChallengeDto.ts new file mode 100644 index 0000000..7ebf68e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/biometricLoginChallengeDto.ts @@ -0,0 +1,4 @@ +export class BiometricLoginChallengeDto { + public RequestOptionsJson: string = ""; + public ChallengeId: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/biometricRegistrationResultDto.ts b/uniapp/youjiala/src/data/auto/biometricRegistrationResultDto.ts new file mode 100644 index 0000000..148dadb --- /dev/null +++ b/uniapp/youjiala/src/data/auto/biometricRegistrationResultDto.ts @@ -0,0 +1,3 @@ +export class BiometricRegistrationResultDto { + public CredentialIdBase64Url: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileDeleteLogEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileDeleteLogEntity.ts new file mode 100644 index 0000000..385cea9 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileDeleteLogEntity.ts @@ -0,0 +1,68 @@ +export class DmsFileDeleteLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FileId: number = 0; + public FileName: string = ""; + public FilePath: string = ""; + public FileSize: number = 0; + public OwerId: string = ""; + public RevisionNo: number = 0; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LinkedFileId: number = 0; + public OrgFileName: string = ""; + public OrderKey: string = ""; + public FileTag: string = ""; + public AllowRenameIndc: string = ""; + public AllowDeleteIndc: string = ""; + public FileType: string = ""; + public LandscapeIndc: string = ""; + public TranscodeIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FILE_ID: string = "FileId"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly OWER_ID: string = "OwerId"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly FILE_TAG: string = "FileTag"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly FILE_TYPE: string = "FileType"; + static readonly LANDSCAPE_INDC: string = "LandscapeIndc"; + static readonly TRANSCODE_INDC: string = "TranscodeIndc"; + static readonly DB_NAME_DMS_FILE_DELETE_LOG: string = "dms_file_delete_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,file_id,file_name,file_path,file_size,ower_id,revision_no,is_directory_indc,is_link_indc,linked_file_id,org_file_name,order_key,file_tag,allow_rename_indc,allow_delete_indc,file_type,landscape_indc,transcode_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_FILE_TYPE: string = "file_type"; + static readonly DB_LANDSCAPE_INDC: string = "landscape_indc"; + static readonly DB_TRANSCODE_INDC: string = "transcode_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileEntity.ts new file mode 100644 index 0000000..60100ee --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileEntity.ts @@ -0,0 +1,68 @@ +export class DmsFileEntity { + public AllowDeleteIndc: string = ""; + public AllowRenameIndc: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FileId: number = 0; + public FileName: string = ""; + public FilePath: string = ""; + public FileSize: number = 0; + public FileTag: string = ""; + public FileType: string = ""; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LandscapeIndc: string = ""; + public LinkedFileId: number = 0; + public OrderKey: string = ""; + public OrgFileName: string = ""; + public OwerId: string = ""; + public RevisionNo: number = 0; + public TranscodeIndc: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FILE_ID: string = "FileId"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly FILE_TAG: string = "FileTag"; + static readonly FILE_TYPE: string = "FileType"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LANDSCAPE_INDC: string = "LandscapeIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly OWER_ID: string = "OwerId"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly TRANSCODE_INDC: string = "TranscodeIndc"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_DMS_FILE: string = "dms_file"; + static readonly DB_NAME_FIELDS: string = "allow_delete_indc,allow_rename_indc,created_by,created_datetime,file_id,file_name,file_path,file_size,file_tag,file_type,is_directory_indc,is_link_indc,landscape_indc,linked_file_id,order_key,org_file_name,ower_id,revision_no,transcode_indc,updated_by,updated_datetime"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_FILE_TYPE: string = "file_type"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LANDSCAPE_INDC: string = "landscape_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_TRANSCODE_INDC: string = "transcode_indc"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileResultData.ts b/uniapp/youjiala/src/data/auto/dmsFileResultData.ts new file mode 100644 index 0000000..7a15c80 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileResultData.ts @@ -0,0 +1,11 @@ +import type { DmsFileUploadDeleteLogViewDisplayData } from "./dmsFileUploadDeleteLogViewDisplayData"; +import type { DmsFileUploadViewDisplayData } from "./dmsFileUploadViewDisplayData"; +import type { FamilyDmsFileViewDisplayData } from "./familyDmsFileViewDisplayData"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class DmsFileResultData extends SearchCriteriaResultData { + public Datas: DmsFileUploadViewDisplayData[] = []; + public Previews: string[] = []; + public Logs: DmsFileUploadDeleteLogViewDisplayData[] = []; + public Families: FamilyDmsFileViewDisplayData[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileSearchCriteria.ts b/uniapp/youjiala/src/data/auto/dmsFileSearchCriteria.ts new file mode 100644 index 0000000..d9fe09f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileSearchCriteria.ts @@ -0,0 +1,6 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class DmsFileSearchCriteria extends AbstractSearchCriteria { + public UserIdIndc: boolean = false; + public FamilyName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogEntity.ts new file mode 100644 index 0000000..6007252 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogEntity.ts @@ -0,0 +1,29 @@ +export class DmsFileUploadDeleteLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FileId: number = 0; + public UploadName: string = ""; + public FileCategory: string = ""; + public OrgFileName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FILE_ID: string = "FileId"; + static readonly UPLOAD_NAME: string = "UploadName"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly DB_NAME_DMS_FILE_UPLOAD_DELETE_LOG: string = "dms_file_upload_delete_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,file_id,upload_name,file_category,org_file_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_UPLOAD_NAME: string = "upload_name"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewDisplayData.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewDisplayData.ts new file mode 100644 index 0000000..775e5e6 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewDisplayData.ts @@ -0,0 +1,13 @@ +import { DmsFileUploadDeleteLogViewEntity } from "./dmsFileUploadDeleteLogViewEntity"; + +export class DmsFileUploadDeleteLogViewDisplayData extends DmsFileUploadDeleteLogViewEntity { + public IsSelected?: Date = null!; + public IsPlay: string = ""; + public IsPause: string = ""; + public FormattedPic: string = ""; + public FormattedM3u8: string = ""; + + static readonly IS_SELECTED: string = "IsSelected"; + static readonly IS_PLAY: string = "IsPlay"; + static readonly IS_PAUSE: string = "IsPause"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewEntity.ts new file mode 100644 index 0000000..21adb1f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadDeleteLogViewEntity.ts @@ -0,0 +1,74 @@ +export class DmsFileUploadDeleteLogViewEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public FileId: number = 0; + public UploadName: string = ""; + public FileCategory: string = ""; + public OrgFileName: string = ""; + public FileName: string = ""; + public FilePath: string = ""; + public FolderLocalName: string = ""; + public FileSize: number = 0; + public OwerId: string = ""; + public RevisionNo: number = 0; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LinkedFileId: number = 0; + public OrderKey: string = ""; + public FileTag: string = ""; + public AllowRenameIndc: string = ""; + public AllowDeleteIndc: string = ""; + public FileType: string = ""; + public LandscapeIndc: string = ""; + public TranscodeIndc: string = ""; + public Url: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly FILE_ID: string = "FileId"; + static readonly UPLOAD_NAME: string = "UploadName"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly OWER_ID: string = "OwerId"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly FILE_TAG: string = "FileTag"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly FILE_TYPE: string = "FileType"; + static readonly LANDSCAPE_INDC: string = "LandscapeIndc"; + static readonly TRANSCODE_INDC: string = "TranscodeIndc"; + static readonly URL: string = "Url"; + static readonly DB_NAME_DMS_FILE_UPLOAD_DELETE_LOG_VIEW: string = "dms_file_upload_delete_log_view"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,file_id,upload_name,file_category,org_file_name,file_name,file_path,folder_local_name,file_size,ower_id,revision_no,is_directory_indc,is_link_indc,linked_file_id,order_key,file_tag,allow_rename_indc,allow_delete_indc,file_type,landscape_indc,transcode_indc,url"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_UPLOAD_NAME: string = "upload_name"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_FILE_TYPE: string = "file_type"; + static readonly DB_LANDSCAPE_INDC: string = "landscape_indc"; + static readonly DB_TRANSCODE_INDC: string = "transcode_indc"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadEntity.ts new file mode 100644 index 0000000..c9313da --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadEntity.ts @@ -0,0 +1,29 @@ +export class DmsFileUploadEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FileCategory: string = ""; + public FileId: number = 0; + public OrgFileName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UploadName: string = ""; + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly FILE_ID: string = "FileId"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPLOAD_NAME: string = "UploadName"; + static readonly DB_NAME_DMS_FILE_UPLOAD: string = "dms_file_upload"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,file_category,file_id,org_file_name,updated_by,updated_datetime,upload_name"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPLOAD_NAME: string = "upload_name"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadViewDisplayData.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadViewDisplayData.ts new file mode 100644 index 0000000..d351fd9 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadViewDisplayData.ts @@ -0,0 +1,13 @@ +import { DmsFileUploadViewEntity } from "./dmsFileUploadViewEntity"; + +export class DmsFileUploadViewDisplayData extends DmsFileUploadViewEntity { + public IsSelected?: Date = null!; + public IsPlay: string = ""; + public IsPause: string = ""; + public FormattedPic: string = ""; + public FormattedM3u8: string = ""; + + static readonly IS_SELECTED: string = "IsSelected"; + static readonly IS_PLAY: string = "IsPlay"; + static readonly IS_PAUSE: string = "IsPause"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFileUploadViewEntity.ts b/uniapp/youjiala/src/data/auto/dmsFileUploadViewEntity.ts new file mode 100644 index 0000000..db7d42c --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFileUploadViewEntity.ts @@ -0,0 +1,74 @@ +export class DmsFileUploadViewEntity { + public AllowDeleteIndc: string = ""; + public AllowRenameIndc: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FileCategory: string = ""; + public FileId: number = 0; + public FileName: string = ""; + public FilePath: string = ""; + public FileSize: number = 0; + public FileTag: string = ""; + public FileType: string = ""; + public FolderLocalName: string = ""; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LandscapeIndc: string = ""; + public LinkedFileId: number = 0; + public OrderKey: string = ""; + public OrgFileName: string = ""; + public OwerId: string = ""; + public RevisionNo: number = 0; + public TranscodeIndc: string = ""; + public UploadName: string = ""; + public Url: string = ""; + + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly FILE_ID: string = "FileId"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly FILE_TAG: string = "FileTag"; + static readonly FILE_TYPE: string = "FileType"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LANDSCAPE_INDC: string = "LandscapeIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly OWER_ID: string = "OwerId"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly TRANSCODE_INDC: string = "TranscodeIndc"; + static readonly UPLOAD_NAME: string = "UploadName"; + static readonly URL: string = "Url"; + static readonly DB_NAME_DMS_FILE_UPLOAD_VIEW: string = "dms_file_upload_view"; + static readonly DB_NAME_FIELDS: string = "allow_delete_indc,allow_rename_indc,created_by,created_datetime,file_category,file_id,file_name,file_path,file_size,file_tag,file_type,folder_local_name,is_directory_indc,is_link_indc,landscape_indc,linked_file_id,order_key,org_file_name,ower_id,revision_no,transcode_indc,upload_name,url"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_FILE_TYPE: string = "file_type"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LANDSCAPE_INDC: string = "landscape_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_TRANSCODE_INDC: string = "transcode_indc"; + static readonly DB_UPLOAD_NAME: string = "upload_name"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderData.ts b/uniapp/youjiala/src/data/auto/dmsFolderData.ts new file mode 100644 index 0000000..da810ab --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderData.ts @@ -0,0 +1,7 @@ +import type { DmsFolderEntity } from "./dmsFolderEntity"; +import type { DmsFolderMapEntity } from "./dmsFolderMapEntity"; + +export class DmsFolderData { + public DmsFolders: DmsFolderEntity[] = []; + public DmsFoldersMaps: DmsFolderMapEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderDeleteLogEntity.ts b/uniapp/youjiala/src/data/auto/dmsFolderDeleteLogEntity.ts new file mode 100644 index 0000000..400e6d7 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderDeleteLogEntity.ts @@ -0,0 +1,26 @@ +export class DmsFolderDeleteLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FolderId: number = 0; + public FolderName: string = ""; + public FolderLocalName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FOLDER_ID: string = "FolderId"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly DB_NAME_DMS_FOLDER_DELETE_LOG: string = "dms_folder_delete_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,folder_id,folder_name,folder_local_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FOLDER_ID: string = "folder_id"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderEntity.ts b/uniapp/youjiala/src/data/auto/dmsFolderEntity.ts new file mode 100644 index 0000000..b11b066 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderEntity.ts @@ -0,0 +1,26 @@ +export class DmsFolderEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FolderId: number = 0; + public FolderLocalName: string = ""; + public FolderName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FOLDER_ID: string = "FolderId"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_DMS_FOLDER: string = "dms_folder"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,folder_id,folder_local_name,folder_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FOLDER_ID: string = "folder_id"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntity.ts b/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntity.ts new file mode 100644 index 0000000..e18eaf5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntity.ts @@ -0,0 +1,26 @@ +export class DmsFolderMapDeleteLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FolderNameParent: string = ""; + public FolderNameSon: string = ""; + public Orderby: number = 0; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FOLDER_NAME_PARENT: string = "FolderNameParent"; + static readonly FOLDER_NAME_SON: string = "FolderNameSon"; + static readonly ORDERBY: string = "Orderby"; + static readonly DB_NAME_DMS_FOLDER_MAP_DELETE_LOG: string = "dms_folder_map_delete_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,folder_name_parent,folder_name_son,orderby"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FOLDER_NAME_PARENT: string = "folder_name_parent"; + static readonly DB_FOLDER_NAME_SON: string = "folder_name_son"; + static readonly DB_ORDERBY: string = "orderby"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntityKey.ts b/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntityKey.ts new file mode 100644 index 0000000..caeefd2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderMapDeleteLogEntityKey.ts @@ -0,0 +1,4 @@ +export class DmsFolderMapDeleteLogEntityKey { + public FolderNameParent: string = ""; + public FolderNameSon: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderMapEntity.ts b/uniapp/youjiala/src/data/auto/dmsFolderMapEntity.ts new file mode 100644 index 0000000..97345f0 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderMapEntity.ts @@ -0,0 +1,26 @@ +export class DmsFolderMapEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FolderNameParent: string = ""; + public FolderNameSon: string = ""; + public Orderby: number = 0; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FOLDER_NAME_PARENT: string = "FolderNameParent"; + static readonly FOLDER_NAME_SON: string = "FolderNameSon"; + static readonly ORDERBY: string = "Orderby"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_DMS_FOLDER_MAP: string = "dms_folder_map"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,folder_name_parent,folder_name_son,orderby,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FOLDER_NAME_PARENT: string = "folder_name_parent"; + static readonly DB_FOLDER_NAME_SON: string = "folder_name_son"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/dmsFolderMapEntityKey.ts b/uniapp/youjiala/src/data/auto/dmsFolderMapEntityKey.ts new file mode 100644 index 0000000..fbf59f5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/dmsFolderMapEntityKey.ts @@ -0,0 +1,4 @@ +export class DmsFolderMapEntityKey { + public FolderNameParent: string = ""; + public FolderNameSon: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyDmsFileViewDisplayData.ts b/uniapp/youjiala/src/data/auto/familyDmsFileViewDisplayData.ts new file mode 100644 index 0000000..4eec10d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyDmsFileViewDisplayData.ts @@ -0,0 +1,15 @@ +import { FamilyDmsFileViewEntity } from "./familyDmsFileViewEntity"; + +export class FamilyDmsFileViewDisplayData extends FamilyDmsFileViewEntity { + public IsSelected?: Date = null!; + public FileType: string = ""; + public IsPlay: string = ""; + public IsPause: string = ""; + public FormattedPic: string = ""; + public FormattedM3u8: string = ""; + + static readonly IS_SELECTED: string = "IsSelected"; + static readonly FILE_TYPE: string = "FileType"; + static readonly IS_PLAY: string = "IsPlay"; + static readonly IS_PAUSE: string = "IsPause"; +} diff --git a/uniapp/youjiala/src/data/auto/familyDmsFileViewEntity.ts b/uniapp/youjiala/src/data/auto/familyDmsFileViewEntity.ts new file mode 100644 index 0000000..c677942 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyDmsFileViewEntity.ts @@ -0,0 +1,89 @@ +export class FamilyDmsFileViewEntity { + public AllowDeleteIndc: string = ""; + public AllowRenameIndc: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public FavoriteIndc: string = ""; + public FileCategory: string = ""; + public FileId: number = 0; + public FileName: string = ""; + public FilePath: string = ""; + public FileSize: number = 0; + public FileTag: string = ""; + public FileType: string = ""; + public FolderLocalName: string = ""; + public FolderName: string = ""; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LandscapeIndc: string = ""; + public LinkedFileId: number = 0; + public Notice: string = ""; + public OrderKey: string = ""; + public OrgFileName: string = ""; + public OwerId: string = ""; + public PermissionIndc: string = ""; + public RevisionNo: number = 0; + public TopFolderName: string = ""; + public TranscodeIndc: string = ""; + public Url: string = ""; + + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly FAVORITE_INDC: string = "FavoriteIndc"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly FILE_ID: string = "FileId"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly FILE_TAG: string = "FileTag"; + static readonly FILE_TYPE: string = "FileType"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LANDSCAPE_INDC: string = "LandscapeIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly NOTICE: string = "Notice"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly OWER_ID: string = "OwerId"; + static readonly PERMISSION_INDC: string = "PermissionIndc"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly TOP_FOLDER_NAME: string = "TopFolderName"; + static readonly TRANSCODE_INDC: string = "TranscodeIndc"; + static readonly URL: string = "Url"; + static readonly DB_NAME_FAMILY_DMS_FILE_VIEW: string = "family_dms_file_view"; + static readonly DB_NAME_FIELDS: string = "allow_delete_indc,allow_rename_indc,created_by,created_datetime,family_name,favorite_indc,file_category,file_id,file_name,file_path,file_size,file_tag,file_type,folder_local_name,folder_name,is_directory_indc,is_link_indc,landscape_indc,linked_file_id,notice,order_key,org_file_name,ower_id,permission_indc,revision_no,top_folder_name,transcode_indc,url"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_FAVORITE_INDC: string = "favorite_indc"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_FILE_TYPE: string = "file_type"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LANDSCAPE_INDC: string = "landscape_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_PERMISSION_INDC: string = "permission_indc"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_TOP_FOLDER_NAME: string = "top_folder_name"; + static readonly DB_TRANSCODE_INDC: string = "transcode_indc"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntity.ts b/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntity.ts new file mode 100644 index 0000000..611ca02 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntity.ts @@ -0,0 +1,23 @@ +export class FamilyFolderFavoriteEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FolderName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UserName: string = ""; + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly USER_NAME: string = "UserName"; + static readonly DB_NAME_FAMILY_FOLDER_FAVORITE: string = "family_folder_favorite"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,folder_name,updated_by,updated_datetime,user_name"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_USER_NAME: string = "user_name"; +} diff --git a/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntityKey.ts b/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntityKey.ts new file mode 100644 index 0000000..066514a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyFolderFavoriteEntityKey.ts @@ -0,0 +1,4 @@ +export class FamilyFolderFavoriteEntityKey { + public FolderName: string = ""; + public UserName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyFolderFavoriteViewEntity.ts b/uniapp/youjiala/src/data/auto/familyFolderFavoriteViewEntity.ts new file mode 100644 index 0000000..a2b8232 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyFolderFavoriteViewEntity.ts @@ -0,0 +1,29 @@ +export class FamilyFolderFavoriteViewEntity { + public FamilyLocalName: string = ""; + public FamilyName: string = ""; + public FolderLocalName: string = ""; + public FolderName: string = ""; + public Notice: string = ""; + public TopFolderLocalName: string = ""; + public TopFolderName: string = ""; + public UserName: string = ""; + + static readonly FAMILY_LOCAL_NAME: string = "FamilyLocalName"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly NOTICE: string = "Notice"; + static readonly TOP_FOLDER_LOCAL_NAME: string = "TopFolderLocalName"; + static readonly TOP_FOLDER_NAME: string = "TopFolderName"; + static readonly USER_NAME: string = "UserName"; + static readonly DB_NAME_FAMILY_FOLDER_FAVORITE_VIEW: string = "family_folder_favorite_view"; + static readonly DB_NAME_FIELDS: string = "family_local_name,family_name,folder_local_name,folder_name,notice,top_folder_local_name,top_folder_name,user_name"; + static readonly DB_FAMILY_LOCAL_NAME: string = "family_local_name"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_TOP_FOLDER_LOCAL_NAME: string = "top_folder_local_name"; + static readonly DB_TOP_FOLDER_NAME: string = "top_folder_name"; + static readonly DB_USER_NAME: string = "user_name"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupData.ts b/uniapp/youjiala/src/data/auto/familyGroupData.ts new file mode 100644 index 0000000..02c637a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupData.ts @@ -0,0 +1,17 @@ +import type { FamilyGroupFolderDisplayData } from "./familyGroupFolderDisplayData"; +import type { FamilyGroupManagerDisplayData } from "./familyGroupManagerDisplayData"; +import type { FamilyGroupPermissionDisplayData } from "./familyGroupPermissionDisplayData"; +import { FamilyGroupEntity } from "./familyGroupEntity"; + +export class FamilyGroupData { + public FamilyGroup: FamilyGroupEntity = new FamilyGroupEntity(); + public IsManager: boolean = false; + public IsOpen: boolean = false; + public IsAdd: boolean = false; + public FamilyGroupFolders: FamilyGroupFolderDisplayData[] = []; + public FamilyGroupManagers: FamilyGroupManagerDisplayData[] = []; + public FamilyGroupRequests: FamilyGroupManagerDisplayData[] = []; + public FamilyGroupPermissions: FamilyGroupPermissionDisplayData[] = []; + + static readonly IS_MANAGER: string = "IsManager"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupEntity.ts new file mode 100644 index 0000000..0d0074f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupEntity.ts @@ -0,0 +1,38 @@ +export class FamilyGroupEntity { + public AddIndc: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public ExpireDatetime?: Date = null!; + public FamilyLocalName: string = ""; + public FamilyName: string = ""; + public Notice: string = ""; + public OpenIndc: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public ValidIndc: string = ""; + + static readonly ADD_INDC: string = "AddIndc"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly EXPIRE_DATETIME: string = "ExpireDatetime"; + static readonly FAMILY_LOCAL_NAME: string = "FamilyLocalName"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly NOTICE: string = "Notice"; + static readonly OPEN_INDC: string = "OpenIndc"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly DB_NAME_FAMILY_GROUP: string = "family_group"; + static readonly DB_NAME_FIELDS: string = "add_indc,created_by,created_datetime,expire_datetime,family_local_name,family_name,notice,open_indc,updated_by,updated_datetime,valid_indc"; + static readonly DB_ADD_INDC: string = "add_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_EXPIRE_DATETIME: string = "expire_datetime"; + static readonly DB_FAMILY_LOCAL_NAME: string = "family_local_name"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_OPEN_INDC: string = "open_indc"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_VALID_INDC: string = "valid_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupFolderDisplayData.ts b/uniapp/youjiala/src/data/auto/familyGroupFolderDisplayData.ts new file mode 100644 index 0000000..78454df --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupFolderDisplayData.ts @@ -0,0 +1,7 @@ +import { FamilyGroupFolderEntity } from "./familyGroupFolderEntity"; + +export class FamilyGroupFolderDisplayData extends FamilyGroupFolderEntity { + public IsSharePermission: boolean = false; + + static readonly IS_SHARE_PERMISSION: string = "IsSharePermission"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupFolderEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupFolderEntity.ts new file mode 100644 index 0000000..29a8aa5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupFolderEntity.ts @@ -0,0 +1,38 @@ +export class FamilyGroupFolderEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public FilePath: string = ""; + public FolderId: number = 0; + public FolderLocalName: string = ""; + public FolderName: string = ""; + public Notice: string = ""; + public TopFolderName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FOLDER_ID: string = "FolderId"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly NOTICE: string = "Notice"; + static readonly TOP_FOLDER_NAME: string = "TopFolderName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_FAMILY_GROUP_FOLDER: string = "family_group_folder"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,family_name,file_path,folder_id,folder_local_name,folder_name,notice,top_folder_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FOLDER_ID: string = "folder_id"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_TOP_FOLDER_NAME: string = "top_folder_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupManagerDisplayData.ts b/uniapp/youjiala/src/data/auto/familyGroupManagerDisplayData.ts new file mode 100644 index 0000000..eec3b2d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupManagerDisplayData.ts @@ -0,0 +1,10 @@ +import { FamilyGroupManagerEntity } from "./familyGroupManagerEntity"; + +export class FamilyGroupManagerDisplayData extends FamilyGroupManagerEntity { + public UserLocalName: string = ""; + public IsManager: boolean = false; + + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly IS_MANAGER: string = "IsManager"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupManagerEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupManagerEntity.ts new file mode 100644 index 0000000..80f407a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupManagerEntity.ts @@ -0,0 +1,32 @@ +export class FamilyGroupManagerEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public ManagerIndc: string = ""; + public Notice: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UserName: string = ""; + public ValidIndc: string = ""; + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly MANAGER_INDC: string = "ManagerIndc"; + static readonly NOTICE: string = "Notice"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly USER_NAME: string = "UserName"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly DB_NAME_FAMILY_GROUP_MANAGER: string = "family_group_manager"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,family_name,manager_indc,notice,updated_by,updated_datetime,user_name,valid_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_MANAGER_INDC: string = "manager_indc"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_VALID_INDC: string = "valid_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupManagerEntityKey.ts b/uniapp/youjiala/src/data/auto/familyGroupManagerEntityKey.ts new file mode 100644 index 0000000..8feb7ec --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupManagerEntityKey.ts @@ -0,0 +1,4 @@ +export class FamilyGroupManagerEntityKey { + public FamilyName: string = ""; + public UserName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupManagerUserSearchCriteria.ts b/uniapp/youjiala/src/data/auto/familyGroupManagerUserSearchCriteria.ts new file mode 100644 index 0000000..dcc120f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupManagerUserSearchCriteria.ts @@ -0,0 +1,6 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class FamilyGroupManagerUserSearchCriteria extends AbstractSearchCriteria { + public FamilyName: string = ""; + public FolderName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupManagerUserViewEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupManagerUserViewEntity.ts new file mode 100644 index 0000000..b921313 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupManagerUserViewEntity.ts @@ -0,0 +1,23 @@ +export class FamilyGroupManagerUserViewEntity { + public FamilyLocalName: string = ""; + public FamilyName: string = ""; + public ManagerIndc: string = ""; + public UserLocalName: string = ""; + public UserName: string = ""; + public ValidIndc: string = ""; + + static readonly FAMILY_LOCAL_NAME: string = "FamilyLocalName"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly MANAGER_INDC: string = "ManagerIndc"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_NAME: string = "UserName"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly DB_NAME_FAMILY_GROUP_MANAGER_USER_VIEW: string = "family_group_manager_user_view"; + static readonly DB_NAME_FIELDS: string = "family_local_name,family_name,manager_indc,user_local_name,user_name,valid_indc"; + static readonly DB_FAMILY_LOCAL_NAME: string = "family_local_name"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_MANAGER_INDC: string = "manager_indc"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_VALID_INDC: string = "valid_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupPermissionDisplayData.ts b/uniapp/youjiala/src/data/auto/familyGroupPermissionDisplayData.ts new file mode 100644 index 0000000..bcbac6d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupPermissionDisplayData.ts @@ -0,0 +1,11 @@ +import { FamilyGroupPermissionEntity } from "./familyGroupPermissionEntity"; + +export class FamilyGroupPermissionDisplayData extends FamilyGroupPermissionEntity { + public UserLocalName: string = ""; + public FolderLocalName: string = ""; + + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupPermissionEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupPermissionEntity.ts new file mode 100644 index 0000000..1cff089 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupPermissionEntity.ts @@ -0,0 +1,32 @@ +export class FamilyGroupPermissionEntity { + public CreateIndc: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DeleteIndc: string = ""; + public FamilyName: string = ""; + public FolderName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UserName: string = ""; + + static readonly CREATE_INDC: string = "CreateIndc"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DELETE_INDC: string = "DeleteIndc"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly USER_NAME: string = "UserName"; + static readonly DB_NAME_FAMILY_GROUP_PERMISSION: string = "family_group_permission"; + static readonly DB_NAME_FIELDS: string = "create_indc,created_by,created_datetime,delete_indc,family_name,folder_name,updated_by,updated_datetime,user_name"; + static readonly DB_CREATE_INDC: string = "create_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DELETE_INDC: string = "delete_indc"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_USER_NAME: string = "user_name"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupPermissionEntityKey.ts b/uniapp/youjiala/src/data/auto/familyGroupPermissionEntityKey.ts new file mode 100644 index 0000000..9d14581 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupPermissionEntityKey.ts @@ -0,0 +1,5 @@ +export class FamilyGroupPermissionEntityKey { + public FamilyName: string = ""; + public FolderName: string = ""; + public UserName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupPermissionUserFolderViewEntity.ts b/uniapp/youjiala/src/data/auto/familyGroupPermissionUserFolderViewEntity.ts new file mode 100644 index 0000000..0dd6fae --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupPermissionUserFolderViewEntity.ts @@ -0,0 +1,26 @@ +export class FamilyGroupPermissionUserFolderViewEntity { + public FamilyName: string = ""; + public FilePath: string = ""; + public FolderLocalName: string = ""; + public FolderName: string = ""; + public Notice: string = ""; + public UserLocalName: string = ""; + public UserName: string = ""; + + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FOLDER_NAME: string = "FolderName"; + static readonly NOTICE: string = "Notice"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_NAME: string = "UserName"; + static readonly DB_NAME_FAMILY_GROUP_PERMISSION_USER_FOLDER_VIEW: string = "family_group_permission_user_folder_view"; + static readonly DB_NAME_FIELDS: string = "family_name,file_path,folder_local_name,folder_name,notice,user_local_name,user_name"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FOLDER_NAME: string = "folder_name"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_NAME: string = "user_name"; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupResultData.ts b/uniapp/youjiala/src/data/auto/familyGroupResultData.ts new file mode 100644 index 0000000..1283701 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupResultData.ts @@ -0,0 +1,10 @@ +import type { FamilyFolderFavoriteViewEntity } from "./familyFolderFavoriteViewEntity"; +import type { FamilyGroupEntity } from "./familyGroupEntity"; +import type { FamilyGroupManagerUserViewEntity } from "./familyGroupManagerUserViewEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class FamilyGroupResultData extends SearchCriteriaResultData { + public Datas: FamilyGroupEntity[] = []; + public Users: FamilyGroupManagerUserViewEntity[] = []; + public Favorites: FamilyFolderFavoriteViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/familyGroupSearchCriteria.ts b/uniapp/youjiala/src/data/auto/familyGroupSearchCriteria.ts new file mode 100644 index 0000000..ff15651 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyGroupSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class FamilyGroupSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonData.ts b/uniapp/youjiala/src/data/auto/familyPersonData.ts new file mode 100644 index 0000000..60a67ac --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonData.ts @@ -0,0 +1,11 @@ +import type { FamilyTreeChildrenMapViewEntity } from "./familyTreeChildrenMapViewEntity"; +import type { FamilyTreeSpouseMapViewEntity } from "./familyTreeSpouseMapViewEntity"; +import { FamilyPersonDisplayData } from "./familyPersonDisplayData"; + +export class FamilyPersonData { + public FamilyPerson: FamilyPersonDisplayData = new FamilyPersonDisplayData(); + public FamilyTreePersons: FamilyPersonDisplayData[] = []; + public FamilyTreeSpouseMaps: FamilyTreeSpouseMapViewEntity[] = []; + public FamilyTreeParentMaps: FamilyTreeChildrenMapViewEntity[] = []; + public FamilyTreeChildrenMaps: FamilyTreeChildrenMapViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonDisplayData.ts b/uniapp/youjiala/src/data/auto/familyPersonDisplayData.ts new file mode 100644 index 0000000..2dfe7d4 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonDisplayData.ts @@ -0,0 +1,6 @@ +import { FamilyPersonEntity } from "./familyPersonEntity"; + +export class FamilyPersonDisplayData extends FamilyPersonEntity { + public AvatarUrl: string = ""; + public IsCanAmend?: Date = null!; +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonEntity.ts b/uniapp/youjiala/src/data/auto/familyPersonEntity.ts new file mode 100644 index 0000000..ba2d94b --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonEntity.ts @@ -0,0 +1,104 @@ +export class FamilyPersonEntity { + public Alias: string = ""; + public AvatarFilename: string = ""; + public BindUserId: string = ""; + public BirthDate?: Date = null!; + public BirthOrder: string = ""; + public BirthText: string = ""; + public CommonName: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DeathDate?: Date = null!; + public DeathText: string = ""; + public Duty: string = ""; + public Education: string = ""; + public FatherId: string = ""; + public Gender: string = ""; + public GenealogyName: string = ""; + public GraduationStatus: string = ""; + public Hao: string = ""; + public Introduction: string = ""; + public IsBindUser: string = ""; + public LiveStatus: string = ""; + public Major: string = ""; + public MaritalStatus: string = ""; + public MotherName: string = ""; + public PersonId: string = ""; + public Privacy: string = ""; + public School: string = ""; + public Surname: string = ""; + public Title: string = ""; + public TreeId: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public Zi: string = ""; + + static readonly ALIAS: string = "Alias"; + static readonly AVATAR_FILENAME: string = "AvatarFilename"; + static readonly BIND_USER_ID: string = "BindUserId"; + static readonly BIRTH_DATE: string = "BirthDate"; + static readonly BIRTH_ORDER: string = "BirthOrder"; + static readonly BIRTH_TEXT: string = "BirthText"; + static readonly COMMON_NAME: string = "CommonName"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DEATH_DATE: string = "DeathDate"; + static readonly DEATH_TEXT: string = "DeathText"; + static readonly DUTY: string = "Duty"; + static readonly EDUCATION: string = "Education"; + static readonly FATHER_ID: string = "FatherId"; + static readonly GENDER: string = "Gender"; + static readonly GENEALOGY_NAME: string = "GenealogyName"; + static readonly GRADUATION_STATUS: string = "GraduationStatus"; + static readonly HAO: string = "Hao"; + static readonly INTRODUCTION: string = "Introduction"; + static readonly IS_BIND_USER: string = "IsBindUser"; + static readonly LIVE_STATUS: string = "LiveStatus"; + static readonly MAJOR: string = "Major"; + static readonly MARITAL_STATUS: string = "MaritalStatus"; + static readonly MOTHER_NAME: string = "MotherName"; + static readonly PERSON_ID: string = "PersonId"; + static readonly PRIVACY: string = "Privacy"; + static readonly SCHOOL: string = "School"; + static readonly SURNAME: string = "Surname"; + static readonly TITLE: string = "Title"; + static readonly TREE_ID: string = "TreeId"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly ZI: string = "Zi"; + static readonly DB_NAME_FAMILY_PERSON: string = "family_person"; + static readonly DB_NAME_FIELDS: string = "alias,avatar_filename,bind_user_id,birth_date,birth_order,birth_text,common_name,created_by,created_datetime,death_date,death_text,duty,education,father_id,gender,genealogy_name,graduation_status,hao,introduction,is_bind_user,live_status,major,marital_status,mother_name,person_id,privacy,school,surname,title,tree_id,updated_by,updated_datetime,zi"; + static readonly DB_ALIAS: string = "alias"; + static readonly DB_AVATAR_FILENAME: string = "avatar_filename"; + static readonly DB_BIND_USER_ID: string = "bind_user_id"; + static readonly DB_BIRTH_DATE: string = "birth_date"; + static readonly DB_BIRTH_ORDER: string = "birth_order"; + static readonly DB_BIRTH_TEXT: string = "birth_text"; + static readonly DB_COMMON_NAME: string = "common_name"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DEATH_DATE: string = "death_date"; + static readonly DB_DEATH_TEXT: string = "death_text"; + static readonly DB_DUTY: string = "duty"; + static readonly DB_EDUCATION: string = "education"; + static readonly DB_FATHER_ID: string = "father_id"; + static readonly DB_GENDER: string = "gender"; + static readonly DB_GENEALOGY_NAME: string = "genealogy_name"; + static readonly DB_GRADUATION_STATUS: string = "graduation_status"; + static readonly DB_HAO: string = "hao"; + static readonly DB_INTRODUCTION: string = "introduction"; + static readonly DB_IS_BIND_USER: string = "is_bind_user"; + static readonly DB_LIVE_STATUS: string = "live_status"; + static readonly DB_MAJOR: string = "major"; + static readonly DB_MARITAL_STATUS: string = "marital_status"; + static readonly DB_MOTHER_NAME: string = "mother_name"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_PRIVACY: string = "privacy"; + static readonly DB_SCHOOL: string = "school"; + static readonly DB_SURNAME: string = "surname"; + static readonly DB_TITLE: string = "title"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_ZI: string = "zi"; +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonLogEntity.ts b/uniapp/youjiala/src/data/auto/familyPersonLogEntity.ts new file mode 100644 index 0000000..1b38c59 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonLogEntity.ts @@ -0,0 +1,35 @@ +export class FamilyPersonLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public LogId: number = 0; + public PersonId: string = ""; + public AuditCode: string = ""; + public EventActor: string = ""; + public OldValue: string = ""; + public NewValue: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly LOG_ID: string = "LogId"; + static readonly PERSON_ID: string = "PersonId"; + static readonly AUDIT_CODE: string = "AuditCode"; + static readonly EVENT_ACTOR: string = "EventActor"; + static readonly OLD_VALUE: string = "OldValue"; + static readonly NEW_VALUE: string = "NewValue"; + static readonly DB_NAME_FAMILY_PERSON_LOG: string = "family_person_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,log_id,person_id,audit_code,event_actor,old_value,new_value"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_LOG_ID: string = "log_id"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_AUDIT_CODE: string = "audit_code"; + static readonly DB_EVENT_ACTOR: string = "event_actor"; + static readonly DB_OLD_VALUE: string = "old_value"; + static readonly DB_NEW_VALUE: string = "new_value"; +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonResultData.ts b/uniapp/youjiala/src/data/auto/familyPersonResultData.ts new file mode 100644 index 0000000..50aa999 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonResultData.ts @@ -0,0 +1,6 @@ +import type { FamilyPersonEntity } from "./familyPersonEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class FamilyPersonResultData extends SearchCriteriaResultData { + public Datas: FamilyPersonEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/familyPersonSearchCriteria.ts b/uniapp/youjiala/src/data/auto/familyPersonSearchCriteria.ts new file mode 100644 index 0000000..b3bd67a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyPersonSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class FamilyPersonSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntity.ts new file mode 100644 index 0000000..0c95b05 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntity.ts @@ -0,0 +1,38 @@ +export class FamilyTreeChildrenMapEntity { + public ChildrenId: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public Orderby: number = 0; + public PersonId: string = ""; + public RelationType: string = ""; + public Remark: string = ""; + public SpouseId: string = ""; + public TreeId: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CHILDREN_ID: string = "ChildrenId"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly ORDERBY: string = "Orderby"; + static readonly PERSON_ID: string = "PersonId"; + static readonly RELATION_TYPE: string = "RelationType"; + static readonly REMARK: string = "Remark"; + static readonly SPOUSE_ID: string = "SpouseId"; + static readonly TREE_ID: string = "TreeId"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_FAMILY_TREE_CHILDREN_MAP: string = "family_tree_children_map"; + static readonly DB_NAME_FIELDS: string = "children_id,created_by,created_datetime,orderby,person_id,relation_type,remark,spouse_id,tree_id,updated_by,updated_datetime"; + static readonly DB_CHILDREN_ID: string = "children_id"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_RELATION_TYPE: string = "relation_type"; + static readonly DB_REMARK: string = "remark"; + static readonly DB_SPOUSE_ID: string = "spouse_id"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntityKey.ts b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntityKey.ts new file mode 100644 index 0000000..51d9fdf --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapEntityKey.ts @@ -0,0 +1,5 @@ +export class FamilyTreeChildrenMapEntityKey { + public ChildrenId: string = ""; + public PersonId: string = ""; + public TreeId: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeChildrenMapViewEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapViewEntity.ts new file mode 100644 index 0000000..2bb0bef --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeChildrenMapViewEntity.ts @@ -0,0 +1,47 @@ +export class FamilyTreeChildrenMapViewEntity { + public ChildrenCommonName: string = ""; + public ChildrenGenealogyName: string = ""; + public ChildrenId: string = ""; + public ChildrenSurname: string = ""; + public CommonName: string = ""; + public Gender: string = ""; + public GenealogyName: string = ""; + public Orderby: number = 0; + public PersonId: string = ""; + public RelationType: string = ""; + public Remark: string = ""; + public SpouseId: string = ""; + public Surname: string = ""; + public TreeId: string = ""; + + static readonly CHILDREN_COMMON_NAME: string = "ChildrenCommonName"; + static readonly CHILDREN_GENEALOGY_NAME: string = "ChildrenGenealogyName"; + static readonly CHILDREN_ID: string = "ChildrenId"; + static readonly CHILDREN_SURNAME: string = "ChildrenSurname"; + static readonly COMMON_NAME: string = "CommonName"; + static readonly GENDER: string = "Gender"; + static readonly GENEALOGY_NAME: string = "GenealogyName"; + static readonly ORDERBY: string = "Orderby"; + static readonly PERSON_ID: string = "PersonId"; + static readonly RELATION_TYPE: string = "RelationType"; + static readonly REMARK: string = "Remark"; + static readonly SPOUSE_ID: string = "SpouseId"; + static readonly SURNAME: string = "Surname"; + static readonly TREE_ID: string = "TreeId"; + static readonly DB_NAME_FAMILY_TREE_CHILDREN_MAP_VIEW: string = "family_tree_children_map_view"; + static readonly DB_NAME_FIELDS: string = "children_common_name,children_genealogy_name,children_id,children_surname,common_name,gender,genealogy_name,orderby,person_id,relation_type,remark,spouse_id,surname,tree_id"; + static readonly DB_CHILDREN_COMMON_NAME: string = "children_common_name"; + static readonly DB_CHILDREN_GENEALOGY_NAME: string = "children_genealogy_name"; + static readonly DB_CHILDREN_ID: string = "children_id"; + static readonly DB_CHILDREN_SURNAME: string = "children_surname"; + static readonly DB_COMMON_NAME: string = "common_name"; + static readonly DB_GENDER: string = "gender"; + static readonly DB_GENEALOGY_NAME: string = "genealogy_name"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_RELATION_TYPE: string = "relation_type"; + static readonly DB_REMARK: string = "remark"; + static readonly DB_SPOUSE_ID: string = "spouse_id"; + static readonly DB_SURNAME: string = "surname"; + static readonly DB_TREE_ID: string = "tree_id"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeData.ts b/uniapp/youjiala/src/data/auto/familyTreeData.ts new file mode 100644 index 0000000..884f47d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeData.ts @@ -0,0 +1,11 @@ +import type { FamilyTreePermissionUserViewEntity } from "./familyTreePermissionUserViewEntity"; +import { FamilyPersonData } from "./familyPersonData"; +import { FamilyTreeDisplayData } from "./familyTreeDisplayData"; + +export class FamilyTreeData { + public FamilyTree: FamilyTreeDisplayData = new FamilyTreeDisplayData(); + public CurrentPerson: FamilyPersonData = new FamilyPersonData(); + public IsManager: boolean = false; + public IsCanAmend: boolean = false; + public FamilyTreePermissions: FamilyTreePermissionUserViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeDisplayData.ts b/uniapp/youjiala/src/data/auto/familyTreeDisplayData.ts new file mode 100644 index 0000000..56d8008 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeDisplayData.ts @@ -0,0 +1,6 @@ +import { FamilyTreeEntity } from "./familyTreeEntity"; + +export class FamilyTreeDisplayData extends FamilyTreeEntity { + public AncestorPersonGenealogyName: string = ""; + public OrgTreeName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeEntity.ts new file mode 100644 index 0000000..b5240fc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeEntity.ts @@ -0,0 +1,35 @@ +export class FamilyTreeEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public TreeId: string = ""; + public TreeName: string = ""; + public Brief: string = ""; + public AncestorPersonId: string = ""; + public TreeCoverFilename: string = ""; + public PublicIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly TREE_ID: string = "TreeId"; + static readonly TREE_NAME: string = "TreeName"; + static readonly BRIEF: string = "Brief"; + static readonly ANCESTOR_PERSON_ID: string = "AncestorPersonId"; + static readonly TREE_COVER_FILENAME: string = "TreeCoverFilename"; + static readonly PUBLIC_INDC: string = "PublicIndc"; + static readonly DB_NAME_FAMILY_TREE: string = "family_tree"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,tree_id,tree_name,brief,ancestor_person_id,tree_cover_filename,public_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_TREE_NAME: string = "tree_name"; + static readonly DB_BRIEF: string = "brief"; + static readonly DB_ANCESTOR_PERSON_ID: string = "ancestor_person_id"; + static readonly DB_TREE_COVER_FILENAME: string = "tree_cover_filename"; + static readonly DB_PUBLIC_INDC: string = "public_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreePermissionEntity.ts b/uniapp/youjiala/src/data/auto/familyTreePermissionEntity.ts new file mode 100644 index 0000000..8bb2e52 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreePermissionEntity.ts @@ -0,0 +1,32 @@ +export class FamilyTreePermissionEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public ManagerIndc: string = ""; + public PersonId: string = ""; + public TreeId: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UserName: string = ""; + public ValidIndc: string = ""; + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly MANAGER_INDC: string = "ManagerIndc"; + static readonly PERSON_ID: string = "PersonId"; + static readonly TREE_ID: string = "TreeId"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly USER_NAME: string = "UserName"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly DB_NAME_FAMILY_TREE_PERMISSION: string = "family_tree_permission"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,manager_indc,person_id,tree_id,updated_by,updated_datetime,user_name,valid_indc"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_MANAGER_INDC: string = "manager_indc"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_VALID_INDC: string = "valid_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreePermissionEntityKey.ts b/uniapp/youjiala/src/data/auto/familyTreePermissionEntityKey.ts new file mode 100644 index 0000000..9dfa507 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreePermissionEntityKey.ts @@ -0,0 +1,5 @@ +export class FamilyTreePermissionEntityKey { + public PersonId: string = ""; + public TreeId: string = ""; + public UserName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreePermissionUserViewEntity.ts b/uniapp/youjiala/src/data/auto/familyTreePermissionUserViewEntity.ts new file mode 100644 index 0000000..d9bcc43 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreePermissionUserViewEntity.ts @@ -0,0 +1,29 @@ +export class FamilyTreePermissionUserViewEntity { + public CreatedDatetime: Date = new Date(); + public ManagerIndc: string = ""; + public PersonId: string = ""; + public PersonLocalName: string = ""; + public TreeId: string = ""; + public UserLocalName: string = ""; + public UserName: string = ""; + public ValidIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly MANAGER_INDC: string = "ManagerIndc"; + static readonly PERSON_ID: string = "PersonId"; + static readonly PERSON_LOCAL_NAME: string = "PersonLocalName"; + static readonly TREE_ID: string = "TreeId"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_NAME: string = "UserName"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly DB_NAME_FAMILY_TREE_PERMISSION_USER_VIEW: string = "family_tree_permission_user_view"; + static readonly DB_NAME_FIELDS: string = "created_datetime,manager_indc,person_id,person_local_name,tree_id,user_local_name,user_name,valid_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_MANAGER_INDC: string = "manager_indc"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_PERSON_LOCAL_NAME: string = "person_local_name"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_VALID_INDC: string = "valid_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeResultData.ts b/uniapp/youjiala/src/data/auto/familyTreeResultData.ts new file mode 100644 index 0000000..6c3c23e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeResultData.ts @@ -0,0 +1,6 @@ +import type { FamilyTreeViewEntity } from "./familyTreeViewEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class FamilyTreeResultData extends SearchCriteriaResultData { + public Datas: FamilyTreeViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeSearchCriteria.ts b/uniapp/youjiala/src/data/auto/familyTreeSearchCriteria.ts new file mode 100644 index 0000000..7aa33a8 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class FamilyTreeSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntity.ts new file mode 100644 index 0000000..0e1aea6 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntity.ts @@ -0,0 +1,50 @@ +export class FamilyTreeSpouseMapEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DivorceDate?: Date = null!; + public DivorceDateText: string = ""; + public IsCurrent: string = ""; + public MarryDate?: Date = null!; + public MarryDateText: string = ""; + public MarryType: string = ""; + public Orderby: number = 0; + public PersonId: string = ""; + public Remark: string = ""; + public SpouseId: string = ""; + public TreeId: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DIVORCE_DATE: string = "DivorceDate"; + static readonly DIVORCE_DATE_TEXT: string = "DivorceDateText"; + static readonly IS_CURRENT: string = "IsCurrent"; + static readonly MARRY_DATE: string = "MarryDate"; + static readonly MARRY_DATE_TEXT: string = "MarryDateText"; + static readonly MARRY_TYPE: string = "MarryType"; + static readonly ORDERBY: string = "Orderby"; + static readonly PERSON_ID: string = "PersonId"; + static readonly REMARK: string = "Remark"; + static readonly SPOUSE_ID: string = "SpouseId"; + static readonly TREE_ID: string = "TreeId"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_FAMILY_TREE_SPOUSE_MAP: string = "family_tree_spouse_map"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,divorce_date,divorce_date_text,is_current,marry_date,marry_date_text,marry_type,orderby,person_id,remark,spouse_id,tree_id,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DIVORCE_DATE: string = "divorce_date"; + static readonly DB_DIVORCE_DATE_TEXT: string = "divorce_date_text"; + static readonly DB_IS_CURRENT: string = "is_current"; + static readonly DB_MARRY_DATE: string = "marry_date"; + static readonly DB_MARRY_DATE_TEXT: string = "marry_date_text"; + static readonly DB_MARRY_TYPE: string = "marry_type"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_REMARK: string = "remark"; + static readonly DB_SPOUSE_ID: string = "spouse_id"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntityKey.ts b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntityKey.ts new file mode 100644 index 0000000..17fa0f4 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapEntityKey.ts @@ -0,0 +1,5 @@ +export class FamilyTreeSpouseMapEntityKey { + public PersonId: string = ""; + public SpouseId: string = ""; + public TreeId: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeSpouseMapViewEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapViewEntity.ts new file mode 100644 index 0000000..7121bf7 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeSpouseMapViewEntity.ts @@ -0,0 +1,59 @@ +export class FamilyTreeSpouseMapViewEntity { + public CommonName: string = ""; + public DivorceDate?: Date = null!; + public DivorceDateText: string = ""; + public Gender: string = ""; + public GenealogyName: string = ""; + public IsCurrent: string = ""; + public MarryDate?: Date = null!; + public MarryDateText: string = ""; + public MarryType: string = ""; + public Orderby: number = 0; + public PersonId: string = ""; + public Remark: string = ""; + public SpouseCommonName: string = ""; + public SpouseGenealogyName: string = ""; + public SpouseId: string = ""; + public SpouseSurname: string = ""; + public Surname: string = ""; + public TreeId: string = ""; + + static readonly COMMON_NAME: string = "CommonName"; + static readonly DIVORCE_DATE: string = "DivorceDate"; + static readonly DIVORCE_DATE_TEXT: string = "DivorceDateText"; + static readonly GENDER: string = "Gender"; + static readonly GENEALOGY_NAME: string = "GenealogyName"; + static readonly IS_CURRENT: string = "IsCurrent"; + static readonly MARRY_DATE: string = "MarryDate"; + static readonly MARRY_DATE_TEXT: string = "MarryDateText"; + static readonly MARRY_TYPE: string = "MarryType"; + static readonly ORDERBY: string = "Orderby"; + static readonly PERSON_ID: string = "PersonId"; + static readonly REMARK: string = "Remark"; + static readonly SPOUSE_COMMON_NAME: string = "SpouseCommonName"; + static readonly SPOUSE_GENEALOGY_NAME: string = "SpouseGenealogyName"; + static readonly SPOUSE_ID: string = "SpouseId"; + static readonly SPOUSE_SURNAME: string = "SpouseSurname"; + static readonly SURNAME: string = "Surname"; + static readonly TREE_ID: string = "TreeId"; + static readonly DB_NAME_FAMILY_TREE_SPOUSE_MAP_VIEW: string = "family_tree_spouse_map_view"; + static readonly DB_NAME_FIELDS: string = "common_name,divorce_date,divorce_date_text,gender,genealogy_name,is_current,marry_date,marry_date_text,marry_type,orderby,person_id,remark,spouse_common_name,spouse_genealogy_name,spouse_id,spouse_surname,surname,tree_id"; + static readonly DB_COMMON_NAME: string = "common_name"; + static readonly DB_DIVORCE_DATE: string = "divorce_date"; + static readonly DB_DIVORCE_DATE_TEXT: string = "divorce_date_text"; + static readonly DB_GENDER: string = "gender"; + static readonly DB_GENEALOGY_NAME: string = "genealogy_name"; + static readonly DB_IS_CURRENT: string = "is_current"; + static readonly DB_MARRY_DATE: string = "marry_date"; + static readonly DB_MARRY_DATE_TEXT: string = "marry_date_text"; + static readonly DB_MARRY_TYPE: string = "marry_type"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_PERSON_ID: string = "person_id"; + static readonly DB_REMARK: string = "remark"; + static readonly DB_SPOUSE_COMMON_NAME: string = "spouse_common_name"; + static readonly DB_SPOUSE_GENEALOGY_NAME: string = "spouse_genealogy_name"; + static readonly DB_SPOUSE_ID: string = "spouse_id"; + static readonly DB_SPOUSE_SURNAME: string = "spouse_surname"; + static readonly DB_SURNAME: string = "surname"; + static readonly DB_TREE_ID: string = "tree_id"; +} diff --git a/uniapp/youjiala/src/data/auto/familyTreeViewEntity.ts b/uniapp/youjiala/src/data/auto/familyTreeViewEntity.ts new file mode 100644 index 0000000..8ea219e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/familyTreeViewEntity.ts @@ -0,0 +1,29 @@ +export class FamilyTreeViewEntity { + public AncestorPersonId: string = ""; + public Brief: string = ""; + public CommonName: string = ""; + public GenealogyName: string = ""; + public PublicIndc: string = ""; + public Surname: string = ""; + public TreeId: string = ""; + public TreeName: string = ""; + + static readonly ANCESTOR_PERSON_ID: string = "AncestorPersonId"; + static readonly BRIEF: string = "Brief"; + static readonly COMMON_NAME: string = "CommonName"; + static readonly GENEALOGY_NAME: string = "GenealogyName"; + static readonly PUBLIC_INDC: string = "PublicIndc"; + static readonly SURNAME: string = "Surname"; + static readonly TREE_ID: string = "TreeId"; + static readonly TREE_NAME: string = "TreeName"; + static readonly DB_NAME_FAMILY_TREE_VIEW: string = "family_tree_view"; + static readonly DB_NAME_FIELDS: string = "ancestor_person_id,brief,common_name,genealogy_name,public_indc,surname,tree_id,tree_name"; + static readonly DB_ANCESTOR_PERSON_ID: string = "ancestor_person_id"; + static readonly DB_BRIEF: string = "brief"; + static readonly DB_COMMON_NAME: string = "common_name"; + static readonly DB_GENEALOGY_NAME: string = "genealogy_name"; + static readonly DB_PUBLIC_INDC: string = "public_indc"; + static readonly DB_SURNAME: string = "surname"; + static readonly DB_TREE_ID: string = "tree_id"; + static readonly DB_TREE_NAME: string = "tree_name"; +} diff --git a/uniapp/youjiala/src/data/auto/finishBiometricLoginData.ts b/uniapp/youjiala/src/data/auto/finishBiometricLoginData.ts new file mode 100644 index 0000000..2d33145 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/finishBiometricLoginData.ts @@ -0,0 +1,6 @@ +export class FinishBiometricLoginData { + public Username: string = ""; + public AssertionJson: string = ""; + public RequestOptionsJson: string = ""; + public ChallengeId: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/finishBiometricRegistrationData.ts b/uniapp/youjiala/src/data/auto/finishBiometricRegistrationData.ts new file mode 100644 index 0000000..5c90b43 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/finishBiometricRegistrationData.ts @@ -0,0 +1,4 @@ +export class FinishBiometricRegistrationData { + public AttestationJson: string = ""; + public CreationOptionsJson: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/gridColumnInfo.ts b/uniapp/youjiala/src/data/auto/gridColumnInfo.ts new file mode 100644 index 0000000..7ba43f4 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/gridColumnInfo.ts @@ -0,0 +1,8 @@ +export class GridColumnInfo { + public title: string = ""; + public dataIndex: string = ""; + public sequence: number = 0; + public align: string = ""; + public hidden: string = ""; + public format: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/jwtInfo.ts b/uniapp/youjiala/src/data/auto/jwtInfo.ts new file mode 100644 index 0000000..ee81936 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/jwtInfo.ts @@ -0,0 +1,5 @@ +export class JwtInfo { + public AccessToken: string = ""; + public RefreshToken: string = ""; + public CreatedTime: Date = new Date(); +} diff --git a/uniapp/youjiala/src/data/auto/localeData.ts b/uniapp/youjiala/src/data/auto/localeData.ts new file mode 100644 index 0000000..42567ee --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeData.ts @@ -0,0 +1,7 @@ +import type { LocaleDisplayData } from "./localeDisplayData"; + +export class LocaleData { + public Inserts: LocaleDisplayData[] = []; + public Updates: LocaleDisplayData[] = []; + public Deletes: LocaleDisplayData[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/localeDisplayData.ts b/uniapp/youjiala/src/data/auto/localeDisplayData.ts new file mode 100644 index 0000000..0404a31 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeDisplayData.ts @@ -0,0 +1,7 @@ +import { LocaleEntity } from "./localeEntity"; + +export class LocaleDisplayData extends LocaleEntity { + public OrgGroupName: string = ""; + public OrgLang: string = ""; + public OrgName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/localeEntity.ts b/uniapp/youjiala/src/data/auto/localeEntity.ts new file mode 100644 index 0000000..26f56fc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeEntity.ts @@ -0,0 +1,32 @@ +export class LocaleEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public GroupName: string = ""; + public Lang: string = ""; + public Name: string = ""; + public Value: string = ""; + public OrderBy: number = 0; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly LANG: string = "Lang"; + static readonly NAME: string = "Name"; + static readonly VALUE: string = "Value"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly DB_NAME_LOCALE: string = "locale"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,group_name,lang,name,value,order_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_LANG: string = "lang"; + static readonly DB_NAME: string = "name"; + static readonly DB_VALUE: string = "value"; + static readonly DB_ORDER_BY: string = "order_by"; +} diff --git a/uniapp/youjiala/src/data/auto/localeEntityKey.ts b/uniapp/youjiala/src/data/auto/localeEntityKey.ts new file mode 100644 index 0000000..c9dea7f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeEntityKey.ts @@ -0,0 +1,5 @@ +export class LocaleEntityKey { + public GroupName: string = ""; + public Lang: string = ""; + public Name: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/localeResultData.ts b/uniapp/youjiala/src/data/auto/localeResultData.ts new file mode 100644 index 0000000..1f4df10 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeResultData.ts @@ -0,0 +1,6 @@ +import type { LocaleDisplayData } from "./localeDisplayData"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class LocaleResultData extends SearchCriteriaResultData { + public Datas: LocaleDisplayData[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/localeSearchCriteria.ts b/uniapp/youjiala/src/data/auto/localeSearchCriteria.ts new file mode 100644 index 0000000..5f84f55 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/localeSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class LocaleSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/loginData.ts b/uniapp/youjiala/src/data/auto/loginData.ts new file mode 100644 index 0000000..7ea5787 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/loginData.ts @@ -0,0 +1,9 @@ +export class LoginData { + public UserName: string = ""; + public AgentUserName: string = ""; + public UserMobile: string = ""; + public UserPassword: string = ""; + public RsaUserPassword: string = ""; + public Guid: string = ""; + public Culture: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/loginProfile.ts b/uniapp/youjiala/src/data/auto/loginProfile.ts new file mode 100644 index 0000000..c4ca817 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/loginProfile.ts @@ -0,0 +1,12 @@ +import { JwtInfo } from "./jwtInfo"; +import { SecurityUserPermissionInfo } from "./securityUserPermissionInfo"; + +export class LoginProfile { + public Token: JwtInfo = new JwtInfo(); + public UserType: string = ""; + public Username: string = ""; + public UserLocalName: string = ""; + public UserEngName: string = ""; + public UserMobile: string = ""; + public PermissionInfo: SecurityUserPermissionInfo = new SecurityUserPermissionInfo(); +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioData.ts b/uniapp/youjiala/src/data/auto/publishAudioData.ts new file mode 100644 index 0000000..98e0379 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioData.ts @@ -0,0 +1,9 @@ +import type { PublishAudioDetailDisplayData } from "./publishAudioDetailDisplayData"; +import type { PublishAudioFamilyGroupEntity } from "./publishAudioFamilyGroupEntity"; +import { PublishAudioEntity } from "./publishAudioEntity"; + +export class PublishAudioData { + public PublishAudio: PublishAudioEntity = new PublishAudioEntity(); + public Details: PublishAudioDetailDisplayData[] = []; + public FamilyGroups: PublishAudioFamilyGroupEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioDetailDisplayData.ts b/uniapp/youjiala/src/data/auto/publishAudioDetailDisplayData.ts new file mode 100644 index 0000000..fd9b870 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioDetailDisplayData.ts @@ -0,0 +1,7 @@ +import { PublishAudioDetailEntity } from "./publishAudioDetailEntity"; + +export class PublishAudioDetailDisplayData extends PublishAudioDetailEntity { + public FormattedUrl: string = ""; + public FormattedPic: string = ""; + public FormattedLrc: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioDetailEntity.ts b/uniapp/youjiala/src/data/auto/publishAudioDetailEntity.ts new file mode 100644 index 0000000..f04007c --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioDetailEntity.ts @@ -0,0 +1,47 @@ +export class PublishAudioDetailEntity { + public Author: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DetailId: number = 0; + public Lrc: string = ""; + public Notice: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public Pic: string = ""; + public PublishName: string = ""; + public Title: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public Url: string = ""; + + static readonly AUTHOR: string = "Author"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DETAIL_ID: string = "DetailId"; + static readonly LRC: string = "Lrc"; + static readonly NOTICE: string = "Notice"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PIC: string = "Pic"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly TITLE: string = "Title"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly URL: string = "Url"; + static readonly DB_NAME_PUBLISH_AUDIO_DETAIL: string = "publish_audio_detail"; + static readonly DB_NAME_FIELDS: string = "author,created_by,created_datetime,detail_id,lrc,notice,order_by,owner_name,pic,publish_name,title,updated_by,updated_datetime,url"; + static readonly DB_AUTHOR: string = "author"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DETAIL_ID: string = "detail_id"; + static readonly DB_LRC: string = "lrc"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PIC: string = "pic"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_TITLE: string = "title"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioEntity.ts b/uniapp/youjiala/src/data/auto/publishAudioEntity.ts new file mode 100644 index 0000000..2b105fc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioEntity.ts @@ -0,0 +1,41 @@ +export class PublishAudioEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DefaultIndc: string = ""; + public ExpireDatetime: Date = new Date(); + public Notice: string = ""; + public OpenIndc: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public PublishLocalName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DEFAULT_INDC: string = "DefaultIndc"; + static readonly EXPIRE_DATETIME: string = "ExpireDatetime"; + static readonly NOTICE: string = "Notice"; + static readonly OPEN_INDC: string = "OpenIndc"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PUBLISH_LOCAL_NAME: string = "PublishLocalName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_AUDIO: string = "publish_audio"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,default_indc,expire_datetime,notice,open_indc,order_by,owner_name,publish_local_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DEFAULT_INDC: string = "default_indc"; + static readonly DB_EXPIRE_DATETIME: string = "expire_datetime"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_OPEN_INDC: string = "open_indc"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PUBLISH_LOCAL_NAME: string = "publish_local_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupDisplayData.ts b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupDisplayData.ts new file mode 100644 index 0000000..52a3be3 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupDisplayData.ts @@ -0,0 +1,6 @@ +import { PublishAudioFamilyGroupEntity } from "./publishAudioFamilyGroupEntity"; + +export class PublishAudioFamilyGroupDisplayData extends PublishAudioFamilyGroupEntity { + public FamilyLocalName: string = ""; + public Notice: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntity.ts b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntity.ts new file mode 100644 index 0000000..3ab69b5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntity.ts @@ -0,0 +1,23 @@ +export class PublishAudioFamilyGroupEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_AUDIO_FAMILY_GROUP: string = "publish_audio_family_group"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,family_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntityKey.ts b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntityKey.ts new file mode 100644 index 0000000..6ab59ce --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioFamilyGroupEntityKey.ts @@ -0,0 +1,4 @@ +export class PublishAudioFamilyGroupEntityKey { + public FamilyName: string = ""; + public PublishName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioResultData.ts b/uniapp/youjiala/src/data/auto/publishAudioResultData.ts new file mode 100644 index 0000000..cbfc308 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioResultData.ts @@ -0,0 +1,6 @@ +import type { PublishAudioEntity } from "./publishAudioEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class PublishAudioResultData extends SearchCriteriaResultData { + public Datas: PublishAudioEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishAudioSearchCriteria.ts b/uniapp/youjiala/src/data/auto/publishAudioSearchCriteria.ts new file mode 100644 index 0000000..6dd7055 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishAudioSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class PublishAudioSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/publishData.ts b/uniapp/youjiala/src/data/auto/publishData.ts new file mode 100644 index 0000000..4f34bd1 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishData.ts @@ -0,0 +1,4 @@ +export class PublishData { + public FileId: number = 0; + public PublishName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoData.ts b/uniapp/youjiala/src/data/auto/publishPhotoData.ts new file mode 100644 index 0000000..8284bc4 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoData.ts @@ -0,0 +1,9 @@ +import type { PublishPhotoDetailDisplayData } from "./publishPhotoDetailDisplayData"; +import type { PublishPhotoFamilyGroupDisplayData } from "./publishPhotoFamilyGroupDisplayData"; +import { PublishPhotoEntity } from "./publishPhotoEntity"; + +export class PublishPhotoData { + public PublishPhoto: PublishPhotoEntity = new PublishPhotoEntity(); + public Details: PublishPhotoDetailDisplayData[] = []; + public FamilyGroups: PublishPhotoFamilyGroupDisplayData[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoDetailDisplayData.ts b/uniapp/youjiala/src/data/auto/publishPhotoDetailDisplayData.ts new file mode 100644 index 0000000..377b80f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoDetailDisplayData.ts @@ -0,0 +1,5 @@ +import { PublishPhotoDetailEntity } from "./publishPhotoDetailEntity"; + +export class PublishPhotoDetailDisplayData extends PublishPhotoDetailEntity { + public FormattedPic: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoDetailEntity.ts b/uniapp/youjiala/src/data/auto/publishPhotoDetailEntity.ts new file mode 100644 index 0000000..52056d9 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoDetailEntity.ts @@ -0,0 +1,35 @@ +export class PublishPhotoDetailEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DetailId: number = 0; + public FileName: string = ""; + public Notice: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DETAIL_ID: string = "DetailId"; + static readonly FILE_NAME: string = "FileName"; + static readonly NOTICE: string = "Notice"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_PHOTO_DETAIL: string = "publish_photo_detail"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,detail_id,file_name,notice,order_by,owner_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DETAIL_ID: string = "detail_id"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoEntity.ts b/uniapp/youjiala/src/data/auto/publishPhotoEntity.ts new file mode 100644 index 0000000..7a51a46 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoEntity.ts @@ -0,0 +1,41 @@ +export class PublishPhotoEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DefaultIndc: string = ""; + public ExpireDatetime: Date = new Date(); + public Notice: string = ""; + public OpenIndc: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public PublishLocalName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DEFAULT_INDC: string = "DefaultIndc"; + static readonly EXPIRE_DATETIME: string = "ExpireDatetime"; + static readonly NOTICE: string = "Notice"; + static readonly OPEN_INDC: string = "OpenIndc"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PUBLISH_LOCAL_NAME: string = "PublishLocalName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_PHOTO: string = "publish_photo"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,default_indc,expire_datetime,notice,open_indc,order_by,owner_name,publish_local_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DEFAULT_INDC: string = "default_indc"; + static readonly DB_EXPIRE_DATETIME: string = "expire_datetime"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_OPEN_INDC: string = "open_indc"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PUBLISH_LOCAL_NAME: string = "publish_local_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupDisplayData.ts b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupDisplayData.ts new file mode 100644 index 0000000..80b1cc2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupDisplayData.ts @@ -0,0 +1,6 @@ +import { PublishPhotoFamilyGroupEntity } from "./publishPhotoFamilyGroupEntity"; + +export class PublishPhotoFamilyGroupDisplayData extends PublishPhotoFamilyGroupEntity { + public FamilyLocalName: string = ""; + public Notice: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntity.ts b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntity.ts new file mode 100644 index 0000000..e7e3511 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntity.ts @@ -0,0 +1,23 @@ +export class PublishPhotoFamilyGroupEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_PHOTO_FAMILY_GROUP: string = "publish_photo_family_group"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,family_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntityKey.ts b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntityKey.ts new file mode 100644 index 0000000..7b22eb1 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoFamilyGroupEntityKey.ts @@ -0,0 +1,4 @@ +export class PublishPhotoFamilyGroupEntityKey { + public FamilyName: string = ""; + public PublishName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoResultData.ts b/uniapp/youjiala/src/data/auto/publishPhotoResultData.ts new file mode 100644 index 0000000..4af32ff --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoResultData.ts @@ -0,0 +1,6 @@ +import type { PublishPhotoEntity } from "./publishPhotoEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class PublishPhotoResultData extends SearchCriteriaResultData { + public Publishs: PublishPhotoEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishPhotoSearchCriteria.ts b/uniapp/youjiala/src/data/auto/publishPhotoSearchCriteria.ts new file mode 100644 index 0000000..54217bf --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishPhotoSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class PublishPhotoSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoData.ts b/uniapp/youjiala/src/data/auto/publishVideoData.ts new file mode 100644 index 0000000..90a11c9 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoData.ts @@ -0,0 +1,9 @@ +import type { PublishVideoDetailDisplayData } from "./publishVideoDetailDisplayData"; +import type { PublishVideoFamilyGroupEntity } from "./publishVideoFamilyGroupEntity"; +import { PublishVideoEntity } from "./publishVideoEntity"; + +export class PublishVideoData { + public PublishVideo: PublishVideoEntity = new PublishVideoEntity(); + public Details: PublishVideoDetailDisplayData[] = []; + public FamilyGroups: PublishVideoFamilyGroupEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoDetailDisplayData.ts b/uniapp/youjiala/src/data/auto/publishVideoDetailDisplayData.ts new file mode 100644 index 0000000..08ab379 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoDetailDisplayData.ts @@ -0,0 +1,7 @@ +import { PublishVideoDetailEntity } from "./publishVideoDetailEntity"; + +export class PublishVideoDetailDisplayData extends PublishVideoDetailEntity { + public FormattedUrl: string = ""; + public FormattedPic: string = ""; + public FormattedM3u8: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoDetailEntity.ts b/uniapp/youjiala/src/data/auto/publishVideoDetailEntity.ts new file mode 100644 index 0000000..7dd9524 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoDetailEntity.ts @@ -0,0 +1,47 @@ +export class PublishVideoDetailEntity { + public Author: string = ""; + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DetailId: number = 0; + public Lrc: string = ""; + public Notice: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public Pic: string = ""; + public PublishName: string = ""; + public Title: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public Url: string = ""; + + static readonly AUTHOR: string = "Author"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DETAIL_ID: string = "DetailId"; + static readonly LRC: string = "Lrc"; + static readonly NOTICE: string = "Notice"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PIC: string = "Pic"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly TITLE: string = "Title"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly URL: string = "Url"; + static readonly DB_NAME_PUBLISH_VIDEO_DETAIL: string = "publish_video_detail"; + static readonly DB_NAME_FIELDS: string = "author,created_by,created_datetime,detail_id,lrc,notice,order_by,owner_name,pic,publish_name,title,updated_by,updated_datetime,url"; + static readonly DB_AUTHOR: string = "author"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DETAIL_ID: string = "detail_id"; + static readonly DB_LRC: string = "lrc"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PIC: string = "pic"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_TITLE: string = "title"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoEntity.ts b/uniapp/youjiala/src/data/auto/publishVideoEntity.ts new file mode 100644 index 0000000..7092fa0 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoEntity.ts @@ -0,0 +1,41 @@ +export class PublishVideoEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DefaultIndc: string = ""; + public ExpireDatetime: Date = new Date(); + public Notice: string = ""; + public OpenIndc: string = ""; + public OrderBy: number = 0; + public OwnerName: string = ""; + public PublishLocalName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DEFAULT_INDC: string = "DefaultIndc"; + static readonly EXPIRE_DATETIME: string = "ExpireDatetime"; + static readonly NOTICE: string = "Notice"; + static readonly OPEN_INDC: string = "OpenIndc"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly OWNER_NAME: string = "OwnerName"; + static readonly PUBLISH_LOCAL_NAME: string = "PublishLocalName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_VIDEO: string = "publish_video"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,default_indc,expire_datetime,notice,open_indc,order_by,owner_name,publish_local_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DEFAULT_INDC: string = "default_indc"; + static readonly DB_EXPIRE_DATETIME: string = "expire_datetime"; + static readonly DB_NOTICE: string = "notice"; + static readonly DB_OPEN_INDC: string = "open_indc"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_OWNER_NAME: string = "owner_name"; + static readonly DB_PUBLISH_LOCAL_NAME: string = "publish_local_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupDisplayData.ts b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupDisplayData.ts new file mode 100644 index 0000000..7e4cc5d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupDisplayData.ts @@ -0,0 +1,6 @@ +import { PublishVideoFamilyGroupEntity } from "./publishVideoFamilyGroupEntity"; + +export class PublishVideoFamilyGroupDisplayData extends PublishVideoFamilyGroupEntity { + public FamilyLocalName: string = ""; + public Notice: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntity.ts b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntity.ts new file mode 100644 index 0000000..cd4fcd1 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntity.ts @@ -0,0 +1,23 @@ +export class PublishVideoFamilyGroupEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public FamilyName: string = ""; + public PublishName: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly FAMILY_NAME: string = "FamilyName"; + static readonly PUBLISH_NAME: string = "PublishName"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_PUBLISH_VIDEO_FAMILY_GROUP: string = "publish_video_family_group"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,family_name,publish_name,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_FAMILY_NAME: string = "family_name"; + static readonly DB_PUBLISH_NAME: string = "publish_name"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntityKey.ts b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntityKey.ts new file mode 100644 index 0000000..6f27ecc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoFamilyGroupEntityKey.ts @@ -0,0 +1,4 @@ +export class PublishVideoFamilyGroupEntityKey { + public FamilyName: string = ""; + public PublishName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoResultData.ts b/uniapp/youjiala/src/data/auto/publishVideoResultData.ts new file mode 100644 index 0000000..7b39f5b --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoResultData.ts @@ -0,0 +1,6 @@ +import type { PublishVideoEntity } from "./publishVideoEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class PublishVideoResultData extends SearchCriteriaResultData { + public Datas: PublishVideoEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/publishVideoSearchCriteria.ts b/uniapp/youjiala/src/data/auto/publishVideoSearchCriteria.ts new file mode 100644 index 0000000..0212797 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/publishVideoSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class PublishVideoSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/registerData.ts b/uniapp/youjiala/src/data/auto/registerData.ts new file mode 100644 index 0000000..d8c5a66 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/registerData.ts @@ -0,0 +1,8 @@ +export class RegisterData { + public UserName: string = ""; + public UserMobile: string = ""; + public UserPassword: string = ""; + public ConfirmUserPassword: string = ""; + public RsaUserPassword: string = ""; + public Agree: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/searchCriteriaResultData.ts b/uniapp/youjiala/src/data/auto/searchCriteriaResultData.ts new file mode 100644 index 0000000..e2fa267 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/searchCriteriaResultData.ts @@ -0,0 +1,7 @@ +export class SearchCriteriaResultData { + public Limit: number = 0; + public Page: number = 0; + public Total: number = 0; + public Sql: string = ""; + public ErrorMessage: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/searchFilter.ts b/uniapp/youjiala/src/data/auto/searchFilter.ts new file mode 100644 index 0000000..b1c1e7f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/searchFilter.ts @@ -0,0 +1,8 @@ +export class SearchFilter { + public Column: string = ""; + public Type: string = ""; + public Operator: string = ""; + public Value: string = ""; + public Value1: string = ""; + public Values: string[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorData.ts b/uniapp/youjiala/src/data/auto/securityActorData.ts new file mode 100644 index 0000000..3152007 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorData.ts @@ -0,0 +1,9 @@ +import type { SecurityActorGroupViewEntity } from "./securityActorGroupViewEntity"; +import type { SecurityUserActorViewEntity } from "./securityUserActorViewEntity"; +import { SecurityActorEntity } from "./securityActorEntity"; + +export class SecurityActorData { + public SecurityActor: SecurityActorEntity = new SecurityActorEntity(); + public SecurityActorGroups: SecurityActorGroupViewEntity[] = []; + public SecurityUserActors: SecurityUserActorViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorEntity.ts b/uniapp/youjiala/src/data/auto/securityActorEntity.ts new file mode 100644 index 0000000..f89f78f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorEntity.ts @@ -0,0 +1,26 @@ +export class SecurityActorEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public ActorName: string = ""; + public ActorLocalName: string = ""; + public ActorEngName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly ACTOR_NAME: string = "ActorName"; + static readonly ACTOR_LOCAL_NAME: string = "ActorLocalName"; + static readonly ACTOR_ENG_NAME: string = "ActorEngName"; + static readonly DB_NAME_SECURITY_ACTOR: string = "security_actor"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,actor_name,actor_local_name,actor_eng_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_ACTOR_NAME: string = "actor_name"; + static readonly DB_ACTOR_LOCAL_NAME: string = "actor_local_name"; + static readonly DB_ACTOR_ENG_NAME: string = "actor_eng_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorGroupEntity.ts b/uniapp/youjiala/src/data/auto/securityActorGroupEntity.ts new file mode 100644 index 0000000..226a76d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorGroupEntity.ts @@ -0,0 +1,23 @@ +export class SecurityActorGroupEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public ActorName: string = ""; + public GroupName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly ACTOR_NAME: string = "ActorName"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly DB_NAME_SECURITY_ACTOR_GROUP: string = "security_actor_group"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,actor_name,group_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_ACTOR_NAME: string = "actor_name"; + static readonly DB_GROUP_NAME: string = "group_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorGroupEntityKey.ts b/uniapp/youjiala/src/data/auto/securityActorGroupEntityKey.ts new file mode 100644 index 0000000..0217205 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorGroupEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityActorGroupEntityKey { + public ActorName: string = ""; + public GroupName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorGroupViewEntity.ts b/uniapp/youjiala/src/data/auto/securityActorGroupViewEntity.ts new file mode 100644 index 0000000..4c61435 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorGroupViewEntity.ts @@ -0,0 +1,17 @@ +export class SecurityActorGroupViewEntity { + public ActorName: string = ""; + public ActorLocalName: string = ""; + public GroupName: string = ""; + public GroupLocalName: string = ""; + + static readonly ACTOR_NAME: string = "ActorName"; + static readonly ACTOR_LOCAL_NAME: string = "ActorLocalName"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly GROUP_LOCAL_NAME: string = "GroupLocalName"; + static readonly DB_NAME_SECURITY_ACTOR_GROUP_VIEW: string = "security_actor_group_view"; + static readonly DB_NAME_FIELDS: string = "actor_name,actor_local_name,group_name,group_local_name"; + static readonly DB_ACTOR_NAME: string = "actor_name"; + static readonly DB_ACTOR_LOCAL_NAME: string = "actor_local_name"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_GROUP_LOCAL_NAME: string = "group_local_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorResultData.ts b/uniapp/youjiala/src/data/auto/securityActorResultData.ts new file mode 100644 index 0000000..3e8695e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorResultData.ts @@ -0,0 +1,6 @@ +import type { SecurityActorEntity } from "./securityActorEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityActorResultData extends SearchCriteriaResultData { + public Datas: SecurityActorEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityActorSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityActorSearchCriteria.ts new file mode 100644 index 0000000..0f78519 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityActorSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityActorSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionData.ts b/uniapp/youjiala/src/data/auto/securityFunctionData.ts new file mode 100644 index 0000000..16d0444 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionData.ts @@ -0,0 +1,8 @@ +import type { SecurityFunctionMapViewEntity } from "./securityFunctionMapViewEntity"; +import { SecurityFunctionDisplayData } from "./securityFunctionDisplayData"; + +export class SecurityFunctionData { + public SecurityFunction: SecurityFunctionDisplayData = new SecurityFunctionDisplayData(); + public SecurityFunctionMapParents: SecurityFunctionMapViewEntity[] = []; + public SecurityFunctionMapSons: SecurityFunctionMapViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionDisplayData.ts b/uniapp/youjiala/src/data/auto/securityFunctionDisplayData.ts new file mode 100644 index 0000000..eecc77e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionDisplayData.ts @@ -0,0 +1,10 @@ +import { SecurityFunctionEntity } from "./securityFunctionEntity"; + +export class SecurityFunctionDisplayData extends SecurityFunctionEntity { + public FunctionNameParent: string = ""; + public Orderby: number = 0; + public PermissionName: string = ""; + public SonSecurityFunctions: string[] = []; + + static readonly PERMISSION_NAME: string = "PermissionName"; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionEntity.ts b/uniapp/youjiala/src/data/auto/securityFunctionEntity.ts new file mode 100644 index 0000000..ad45d2f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionEntity.ts @@ -0,0 +1,44 @@ +export class SecurityFunctionEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FunctionName: string = ""; + public FunctionLocalName: string = ""; + public FunctionEngName: string = ""; + public FunctionIndc: string = ""; + public PageUrl: string = ""; + public ApiRoute: string = ""; + public Icon: string = ""; + public PageName: string = ""; + public Remark: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly FUNCTION_LOCAL_NAME: string = "FunctionLocalName"; + static readonly FUNCTION_ENG_NAME: string = "FunctionEngName"; + static readonly FUNCTION_INDC: string = "FunctionIndc"; + static readonly PAGE_URL: string = "PageUrl"; + static readonly API_ROUTE: string = "ApiRoute"; + static readonly ICON: string = "Icon"; + static readonly PAGE_NAME: string = "PageName"; + static readonly REMARK: string = "Remark"; + static readonly DB_NAME_SECURITY_FUNCTION: string = "security_function"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,function_name,function_local_name,function_eng_name,function_indc,page_url,api_route,icon,page_name,remark"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FUNCTION_NAME: string = "function_name"; + static readonly DB_FUNCTION_LOCAL_NAME: string = "function_local_name"; + static readonly DB_FUNCTION_ENG_NAME: string = "function_eng_name"; + static readonly DB_FUNCTION_INDC: string = "function_indc"; + static readonly DB_PAGE_URL: string = "page_url"; + static readonly DB_API_ROUTE: string = "api_route"; + static readonly DB_ICON: string = "icon"; + static readonly DB_PAGE_NAME: string = "page_name"; + static readonly DB_REMARK: string = "remark"; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionMapEntity.ts b/uniapp/youjiala/src/data/auto/securityFunctionMapEntity.ts new file mode 100644 index 0000000..3efc89c --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionMapEntity.ts @@ -0,0 +1,26 @@ +export class SecurityFunctionMapEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public FunctionNameParent: string = ""; + public FunctionNameSon: string = ""; + public Orderby: number = 0; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly FUNCTION_NAME_PARENT: string = "FunctionNameParent"; + static readonly FUNCTION_NAME_SON: string = "FunctionNameSon"; + static readonly ORDERBY: string = "Orderby"; + static readonly DB_NAME_SECURITY_FUNCTION_MAP: string = "security_function_map"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,function_name_parent,function_name_son,orderby"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_FUNCTION_NAME_PARENT: string = "function_name_parent"; + static readonly DB_FUNCTION_NAME_SON: string = "function_name_son"; + static readonly DB_ORDERBY: string = "orderby"; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionMapEntityKey.ts b/uniapp/youjiala/src/data/auto/securityFunctionMapEntityKey.ts new file mode 100644 index 0000000..bf15b9a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionMapEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityFunctionMapEntityKey { + public FunctionNameParent: string = ""; + public FunctionNameSon: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionMapViewEntity.ts b/uniapp/youjiala/src/data/auto/securityFunctionMapViewEntity.ts new file mode 100644 index 0000000..3020fbc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionMapViewEntity.ts @@ -0,0 +1,23 @@ +export class SecurityFunctionMapViewEntity { + public Orderby: number = 0; + public ParentFunctionName: string = ""; + public ParentFunctionLocalName: string = ""; + public SonFunctionName: string = ""; + public SonFunctionLocalName: string = ""; + public SonPageName: string = ""; + + static readonly ORDERBY: string = "Orderby"; + static readonly PARENT_FUNCTION_NAME: string = "ParentFunctionName"; + static readonly PARENT_FUNCTION_LOCAL_NAME: string = "ParentFunctionLocalName"; + static readonly SON_FUNCTION_NAME: string = "SonFunctionName"; + static readonly SON_FUNCTION_LOCAL_NAME: string = "SonFunctionLocalName"; + static readonly SON_PAGE_NAME: string = "SonPageName"; + static readonly DB_NAME_SECURITY_FUNCTION_MAP_VIEW: string = "security_function_map_view"; + static readonly DB_NAME_FIELDS: string = "orderby,parent_function_name,parent_function_local_name,son_function_name,son_function_local_name,son_page_name"; + static readonly DB_ORDERBY: string = "orderby"; + static readonly DB_PARENT_FUNCTION_NAME: string = "parent_function_name"; + static readonly DB_PARENT_FUNCTION_LOCAL_NAME: string = "parent_function_local_name"; + static readonly DB_SON_FUNCTION_NAME: string = "son_function_name"; + static readonly DB_SON_FUNCTION_LOCAL_NAME: string = "son_function_local_name"; + static readonly DB_SON_PAGE_NAME: string = "son_page_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionResultData.ts b/uniapp/youjiala/src/data/auto/securityFunctionResultData.ts new file mode 100644 index 0000000..5df91ff --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionResultData.ts @@ -0,0 +1,10 @@ +import type { SecurityFunctionDisplayData } from "./securityFunctionDisplayData"; +import type { SecurityFunctionMapEntity } from "./securityFunctionMapEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityFunctionResultData extends SearchCriteriaResultData { + public SecurityFunctionDisplayDatas: SecurityFunctionDisplayData[] = []; + public SecurityFunctionMaps: SecurityFunctionMapEntity[] = []; + + static readonly BOOTUP: string = "BOOTUP"; +} diff --git a/uniapp/youjiala/src/data/auto/securityFunctionSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityFunctionSearchCriteria.ts new file mode 100644 index 0000000..f338125 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityFunctionSearchCriteria.ts @@ -0,0 +1,8 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityFunctionSearchCriteria extends AbstractSearchCriteria { + public FunctionLocalName: string = ""; + public FunctionName: string = ""; + public FunctionIndc: string = ""; + public FunctionIndcEnable?: Date = null!; +} diff --git a/uniapp/youjiala/src/data/auto/securityGeneratorNumberData.ts b/uniapp/youjiala/src/data/auto/securityGeneratorNumberData.ts new file mode 100644 index 0000000..5d247b2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGeneratorNumberData.ts @@ -0,0 +1,6 @@ +import type { SecurityGeneratorNumberEntity } from "./securityGeneratorNumberEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityGeneratorNumberData extends SearchCriteriaResultData { + public datas: SecurityGeneratorNumberEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityGeneratorNumberEntity.ts b/uniapp/youjiala/src/data/auto/securityGeneratorNumberEntity.ts new file mode 100644 index 0000000..267b6b6 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGeneratorNumberEntity.ts @@ -0,0 +1,41 @@ +export class SecurityGeneratorNumberEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public GeneratorId: number = 0; + public SystemId: string = ""; + public SubsystemId: string = ""; + public Prefix: string = ""; + public RefreshPeriod: string = ""; + public Format: string = ""; + public LastGeneratorDate: Date = new Date(); + public NextId: number = 0; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly GENERATOR_ID: string = "GeneratorId"; + static readonly SYSTEM_ID: string = "SystemId"; + static readonly SUBSYSTEM_ID: string = "SubsystemId"; + static readonly PREFIX: string = "Prefix"; + static readonly REFRESH_PERIOD: string = "RefreshPeriod"; + static readonly FORMAT: string = "Format"; + static readonly LAST_GENERATOR_DATE: string = "LastGeneratorDate"; + static readonly NEXT_ID: string = "NextId"; + static readonly DB_NAME_SECURITY_GENERATOR_NUMBER: string = "security_generator_number"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,generator_id,system_id,subsystem_id,prefix,refresh_period,format,last_generator_date,next_id"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_GENERATOR_ID: string = "generator_id"; + static readonly DB_SYSTEM_ID: string = "system_id"; + static readonly DB_SUBSYSTEM_ID: string = "subsystem_id"; + static readonly DB_PREFIX: string = "prefix"; + static readonly DB_REFRESH_PERIOD: string = "refresh_period"; + static readonly DB_FORMAT: string = "format"; + static readonly DB_LAST_GENERATOR_DATE: string = "last_generator_date"; + static readonly DB_NEXT_ID: string = "next_id"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGeneratorNumberResultData.ts b/uniapp/youjiala/src/data/auto/securityGeneratorNumberResultData.ts new file mode 100644 index 0000000..d34b21d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGeneratorNumberResultData.ts @@ -0,0 +1,6 @@ +import type { SecurityGeneratorNumberEntity } from "./securityGeneratorNumberEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityGeneratorNumberResultData extends SearchCriteriaResultData { + public Datas: SecurityGeneratorNumberEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityGeneratorNumberSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityGeneratorNumberSearchCriteria.ts new file mode 100644 index 0000000..3e55e38 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGeneratorNumberSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityGeneratorNumberSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupData.ts b/uniapp/youjiala/src/data/auto/securityGroupData.ts new file mode 100644 index 0000000..15cea1a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupData.ts @@ -0,0 +1,11 @@ +import type { SecurityActorGroupViewEntity } from "./securityActorGroupViewEntity"; +import type { SecurityGroupPermissionDependentViewDisplayData } from "./securityGroupPermissionDependentViewDisplayData"; +import type { SecurityGroupPermissionViewDisplayData } from "./securityGroupPermissionViewDisplayData"; +import { SecurityGroupEntity } from "./securityGroupEntity"; + +export class SecurityGroupData { + public SecurityGroup: SecurityGroupEntity = new SecurityGroupEntity(); + public SecurityGroupPermissionViews: SecurityGroupPermissionViewDisplayData[] = []; + public SecurityGroupPermissionDependentViews: SecurityGroupPermissionDependentViewDisplayData[] = []; + public SecurityActorGroups: SecurityActorGroupViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupEntity.ts b/uniapp/youjiala/src/data/auto/securityGroupEntity.ts new file mode 100644 index 0000000..aa6932e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupEntity.ts @@ -0,0 +1,26 @@ +export class SecurityGroupEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public GroupName: string = ""; + public GroupLocalName: string = ""; + public GroupEngName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly GROUP_LOCAL_NAME: string = "GroupLocalName"; + static readonly GROUP_ENG_NAME: string = "GroupEngName"; + static readonly DB_NAME_SECURITY_GROUP: string = "security_group"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,group_name,group_local_name,group_eng_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_GROUP_LOCAL_NAME: string = "group_local_name"; + static readonly DB_GROUP_ENG_NAME: string = "group_eng_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntity.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntity.ts new file mode 100644 index 0000000..0bf51f1 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntity.ts @@ -0,0 +1,38 @@ +export class SecurityGroupPermissionDependentEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public GroupName: string = ""; + public PermissionName: string = ""; + public DependentDetailName: string = ""; + public ViewIndc: string = ""; + public CreateIndc: string = ""; + public AmendIndc: string = ""; + public DeleteIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly DEPENDENT_DETAIL_NAME: string = "DependentDetailName"; + static readonly VIEW_INDC: string = "ViewIndc"; + static readonly CREATE_INDC: string = "CreateIndc"; + static readonly AMEND_INDC: string = "AmendIndc"; + static readonly DELETE_INDC: string = "DeleteIndc"; + static readonly DB_NAME_SECURITY_GROUP_PERMISSION_DEPENDENT: string = "security_group_permission_dependent"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,group_name,permission_name,dependent_detail_name,view_indc,create_indc,amend_indc,delete_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_DEPENDENT_DETAIL_NAME: string = "dependent_detail_name"; + static readonly DB_VIEW_INDC: string = "view_indc"; + static readonly DB_CREATE_INDC: string = "create_indc"; + static readonly DB_AMEND_INDC: string = "amend_indc"; + static readonly DB_DELETE_INDC: string = "delete_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntityKey.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntityKey.ts new file mode 100644 index 0000000..23e7334 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentEntityKey.ts @@ -0,0 +1,5 @@ +export class SecurityGroupPermissionDependentEntityKey { + public GroupName: string = ""; + public PermissionName: string = ""; + public DependentDetailName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewDisplayData.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewDisplayData.ts new file mode 100644 index 0000000..b1fdc63 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewDisplayData.ts @@ -0,0 +1,13 @@ +import { SecurityGroupPermissionDependentViewEntity } from "./securityGroupPermissionDependentViewEntity"; + +export class SecurityGroupPermissionDependentViewDisplayData extends SecurityGroupPermissionDependentViewEntity { + public IsView: boolean = false; + public IsCreate: boolean = false; + public IsAmend: boolean = false; + public IsDelete: boolean = false; + + static readonly IS_VIEW: string = "IsView"; + static readonly IS_CREATE: string = "IsCreate"; + static readonly IS_AMEND: string = "IsAmend"; + static readonly IS_DELETE: string = "IsDelete"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewEntity.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewEntity.ts new file mode 100644 index 0000000..b6713a8 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionDependentViewEntity.ts @@ -0,0 +1,35 @@ +export class SecurityGroupPermissionDependentViewEntity { + public GroupName: string = ""; + public PermissionName: string = ""; + public ViewIndc: string = ""; + public CreateIndc: string = ""; + public AmendIndc: string = ""; + public DeleteIndc: string = ""; + public DependentDetailName: string = ""; + public PermissionDescription: string = ""; + public DependentDetailDescription: string = ""; + public Dependent: string = ""; + + static readonly GROUP_NAME: string = "GroupName"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly VIEW_INDC: string = "ViewIndc"; + static readonly CREATE_INDC: string = "CreateIndc"; + static readonly AMEND_INDC: string = "AmendIndc"; + static readonly DELETE_INDC: string = "DeleteIndc"; + static readonly DEPENDENT_DETAIL_NAME: string = "DependentDetailName"; + static readonly PERMISSION_DESCRIPTION: string = "PermissionDescription"; + static readonly DEPENDENT_DETAIL_DESCRIPTION: string = "DependentDetailDescription"; + static readonly DEPENDENT: string = "Dependent"; + static readonly DB_NAME_SECURITY_GROUP_PERMISSION_DEPENDENT_VIEW: string = "security_group_permission_dependent_view"; + static readonly DB_NAME_FIELDS: string = "group_name,permission_name,view_indc,create_indc,amend_indc,delete_indc,dependent_detail_name,permission_description,dependent_detail_description,dependent"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_VIEW_INDC: string = "view_indc"; + static readonly DB_CREATE_INDC: string = "create_indc"; + static readonly DB_AMEND_INDC: string = "amend_indc"; + static readonly DB_DELETE_INDC: string = "delete_indc"; + static readonly DB_DEPENDENT_DETAIL_NAME: string = "dependent_detail_name"; + static readonly DB_PERMISSION_DESCRIPTION: string = "permission_description"; + static readonly DB_DEPENDENT_DETAIL_DESCRIPTION: string = "dependent_detail_description"; + static readonly DB_DEPENDENT: string = "dependent"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionEntity.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionEntity.ts new file mode 100644 index 0000000..64d006d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionEntity.ts @@ -0,0 +1,38 @@ +export class SecurityGroupPermissionEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public GroupName: string = ""; + public PermissionName: string = ""; + public ViewIndc: string = ""; + public CreateIndc: string = ""; + public AmendIndc: string = ""; + public DeleteIndc: string = ""; + public Dependent: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly VIEW_INDC: string = "ViewIndc"; + static readonly CREATE_INDC: string = "CreateIndc"; + static readonly AMEND_INDC: string = "AmendIndc"; + static readonly DELETE_INDC: string = "DeleteIndc"; + static readonly DEPENDENT: string = "Dependent"; + static readonly DB_NAME_SECURITY_GROUP_PERMISSION: string = "security_group_permission"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,group_name,permission_name,view_indc,create_indc,amend_indc,delete_indc,dependent"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_VIEW_INDC: string = "view_indc"; + static readonly DB_CREATE_INDC: string = "create_indc"; + static readonly DB_AMEND_INDC: string = "amend_indc"; + static readonly DB_DELETE_INDC: string = "delete_indc"; + static readonly DB_DEPENDENT: string = "dependent"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionEntityKey.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionEntityKey.ts new file mode 100644 index 0000000..89b33e5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityGroupPermissionEntityKey { + public GroupName: string = ""; + public PermissionName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionViewDisplayData.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionViewDisplayData.ts new file mode 100644 index 0000000..400fae8 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionViewDisplayData.ts @@ -0,0 +1,13 @@ +import { SecurityGroupPermissionViewEntity } from "./securityGroupPermissionViewEntity"; + +export class SecurityGroupPermissionViewDisplayData extends SecurityGroupPermissionViewEntity { + public IsView: boolean = false; + public IsCreate: boolean = false; + public IsAmend: boolean = false; + public IsDelete: boolean = false; + + static readonly IS_VIEW: string = "IsView"; + static readonly IS_CREATE: string = "IsCreate"; + static readonly IS_AMEND: string = "IsAmend"; + static readonly IS_DELETE: string = "IsDelete"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupPermissionViewEntity.ts b/uniapp/youjiala/src/data/auto/securityGroupPermissionViewEntity.ts new file mode 100644 index 0000000..7c89d54 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupPermissionViewEntity.ts @@ -0,0 +1,29 @@ +export class SecurityGroupPermissionViewEntity { + public GroupName: string = ""; + public PermissionName: string = ""; + public ViewIndc: string = ""; + public CreateIndc: string = ""; + public AmendIndc: string = ""; + public DeleteIndc: string = ""; + public Dependent: string = ""; + public PermissionDescription: string = ""; + + static readonly GROUP_NAME: string = "GroupName"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly VIEW_INDC: string = "ViewIndc"; + static readonly CREATE_INDC: string = "CreateIndc"; + static readonly AMEND_INDC: string = "AmendIndc"; + static readonly DELETE_INDC: string = "DeleteIndc"; + static readonly DEPENDENT: string = "Dependent"; + static readonly PERMISSION_DESCRIPTION: string = "PermissionDescription"; + static readonly DB_NAME_SECURITY_GROUP_PERMISSION_VIEW: string = "security_group_permission_view"; + static readonly DB_NAME_FIELDS: string = "group_name,permission_name,view_indc,create_indc,amend_indc,delete_indc,dependent,permission_description"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_VIEW_INDC: string = "view_indc"; + static readonly DB_CREATE_INDC: string = "create_indc"; + static readonly DB_AMEND_INDC: string = "amend_indc"; + static readonly DB_DELETE_INDC: string = "delete_indc"; + static readonly DB_DEPENDENT: string = "dependent"; + static readonly DB_PERMISSION_DESCRIPTION: string = "permission_description"; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupResultData.ts b/uniapp/youjiala/src/data/auto/securityGroupResultData.ts new file mode 100644 index 0000000..39a4b80 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupResultData.ts @@ -0,0 +1,6 @@ +import type { SecurityGroupEntity } from "./securityGroupEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityGroupResultData extends SearchCriteriaResultData { + public Datas: SecurityGroupEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityGroupSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityGroupSearchCriteria.ts new file mode 100644 index 0000000..adae7cc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityGroupSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityGroupSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFeatureData.ts b/uniapp/youjiala/src/data/auto/securityHelpFeatureData.ts new file mode 100644 index 0000000..e4bab60 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFeatureData.ts @@ -0,0 +1,7 @@ +import type { SecurityHelpFeatureEntity } from "./securityHelpFeatureEntity"; +import { SecurityHelpFeatureGroupEntity } from "./securityHelpFeatureGroupEntity"; + +export class SecurityHelpFeatureData { + public SecurityHelpFeatureGroup: SecurityHelpFeatureGroupEntity = new SecurityHelpFeatureGroupEntity(); + public SecurityHelpFeatures: SecurityHelpFeatureEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFeatureEntity.ts b/uniapp/youjiala/src/data/auto/securityHelpFeatureEntity.ts new file mode 100644 index 0000000..74a7737 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFeatureEntity.ts @@ -0,0 +1,38 @@ +export class SecurityHelpFeatureEntity { + public HelpFeatureId: string = ""; + public HelpFeatureGroupId: string = ""; + public Icon: string = ""; + public Color: string = ""; + public Name: string = ""; + public Description: string = ""; + public SortNo: number = 0; + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + + static readonly HELP_FEATURE_ID: string = "HelpFeatureId"; + static readonly HELP_FEATURE_GROUP_ID: string = "HelpFeatureGroupId"; + static readonly ICON: string = "Icon"; + static readonly COLOR: string = "Color"; + static readonly NAME: string = "Name"; + static readonly DESCRIPTION: string = "Description"; + static readonly SORT_NO: string = "SortNo"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DB_NAME_SECURITY_HELP_FEATURE: string = "security_help_feature"; + static readonly DB_NAME_FIELDS: string = "help_feature_id,help_feature_group_id,icon,color,name,description,sort_no,created_datetime,created_by,updated_datetime,updated_by"; + static readonly DB_HELP_FEATURE_ID: string = "help_feature_id"; + static readonly DB_HELP_FEATURE_GROUP_ID: string = "help_feature_group_id"; + static readonly DB_ICON: string = "icon"; + static readonly DB_COLOR: string = "color"; + static readonly DB_NAME: string = "name"; + static readonly DB_DESCRIPTION: string = "description"; + static readonly DB_SORT_NO: string = "sort_no"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFeatureGroupEntity.ts b/uniapp/youjiala/src/data/auto/securityHelpFeatureGroupEntity.ts new file mode 100644 index 0000000..41cee4e --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFeatureGroupEntity.ts @@ -0,0 +1,26 @@ +export class SecurityHelpFeatureGroupEntity { + public HelpFeatureGroupId: string = ""; + public GroupCode: string = ""; + public GroupName: string = ""; + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + + static readonly HELP_FEATURE_GROUP_ID: string = "HelpFeatureGroupId"; + static readonly GROUP_CODE: string = "GroupCode"; + static readonly GROUP_NAME: string = "GroupName"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DB_NAME_SECURITY_HELP_FEATURE_GROUP: string = "security_help_feature_group"; + static readonly DB_NAME_FIELDS: string = "help_feature_group_id,group_code,group_name,created_datetime,created_by,updated_datetime,updated_by"; + static readonly DB_HELP_FEATURE_GROUP_ID: string = "help_feature_group_id"; + static readonly DB_GROUP_CODE: string = "group_code"; + static readonly DB_GROUP_NAME: string = "group_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFunctionData.ts b/uniapp/youjiala/src/data/auto/securityHelpFunctionData.ts new file mode 100644 index 0000000..6adfccb --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFunctionData.ts @@ -0,0 +1,14 @@ +import type { SecurityHelpFeatureEntity } from "./securityHelpFeatureEntity"; +import type { SecurityHelpFeatureGroupEntity } from "./securityHelpFeatureGroupEntity"; +import type { SecurityHelpFunctionFeatureEntity } from "./securityHelpFunctionFeatureEntity"; +import type { SecurityHelpStepEntity } from "./securityHelpStepEntity"; +import { SecurityHelpFunctionEntity } from "./securityHelpFunctionEntity"; + +export class SecurityHelpFunctionData { + public SecurityHelpFunction: SecurityHelpFunctionEntity = new SecurityHelpFunctionEntity(); + public SecurityHelpFeatures: SecurityHelpFeatureEntity[] = []; + public SecurityHelpFeatureGroups: SecurityHelpFeatureGroupEntity[] = []; + public SecurityHelpFunctions: SecurityHelpFunctionEntity[] = []; + public SecurityHelpFunctionFeatures: SecurityHelpFunctionFeatureEntity[] = []; + public SecurityHelpSteps: SecurityHelpStepEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFunctionEntity.ts b/uniapp/youjiala/src/data/auto/securityHelpFunctionEntity.ts new file mode 100644 index 0000000..ad3c3f5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFunctionEntity.ts @@ -0,0 +1,29 @@ +export class SecurityHelpFunctionEntity { + public HelpFunctionId: string = ""; + public FunctionName: string = ""; + public Intro: string = ""; + public EnabledIndc: string = ""; + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + + static readonly HELP_FUNCTION_ID: string = "HelpFunctionId"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly INTRO: string = "Intro"; + static readonly ENABLED_INDC: string = "EnabledIndc"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DB_NAME_SECURITY_HELP_FUNCTION: string = "security_help_function"; + static readonly DB_NAME_FIELDS: string = "help_function_id,function_name,intro,enabled_indc,created_datetime,created_by,updated_datetime,updated_by"; + static readonly DB_HELP_FUNCTION_ID: string = "help_function_id"; + static readonly DB_FUNCTION_NAME: string = "function_name"; + static readonly DB_INTRO: string = "intro"; + static readonly DB_ENABLED_INDC: string = "enabled_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFunctionFeatureEntity.ts b/uniapp/youjiala/src/data/auto/securityHelpFunctionFeatureEntity.ts new file mode 100644 index 0000000..80adcb1 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFunctionFeatureEntity.ts @@ -0,0 +1,29 @@ +export class SecurityHelpFunctionFeatureEntity { + public HelpFunctionFeatureId: string = ""; + public FunctionName: string = ""; + public GroupCode: string = ""; + public SortNo: number = 0; + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + + static readonly HELP_FUNCTION_FEATURE_ID: string = "HelpFunctionFeatureId"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly GROUP_CODE: string = "GroupCode"; + static readonly SORT_NO: string = "SortNo"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DB_NAME_SECURITY_HELP_FUNCTION_FEATURE: string = "security_help_function_feature"; + static readonly DB_NAME_FIELDS: string = "help_function_feature_id,function_name,group_code,sort_no,created_datetime,created_by,updated_datetime,updated_by"; + static readonly DB_HELP_FUNCTION_FEATURE_ID: string = "help_function_feature_id"; + static readonly DB_FUNCTION_NAME: string = "function_name"; + static readonly DB_GROUP_CODE: string = "group_code"; + static readonly DB_SORT_NO: string = "sort_no"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFunctionResultData.ts b/uniapp/youjiala/src/data/auto/securityHelpFunctionResultData.ts new file mode 100644 index 0000000..c2b0c7d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFunctionResultData.ts @@ -0,0 +1,8 @@ +import type { SecurityHelpFeatureEntity } from "./securityHelpFeatureEntity"; +import type { SecurityHelpFunctionEntity } from "./securityHelpFunctionEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityHelpFunctionResultData extends SearchCriteriaResultData { + public Datas: SecurityHelpFunctionEntity[] = []; + public Features: SecurityHelpFeatureEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpFunctionSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityHelpFunctionSearchCriteria.ts new file mode 100644 index 0000000..24115a8 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpFunctionSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityHelpFunctionSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityHelpStepEntity.ts b/uniapp/youjiala/src/data/auto/securityHelpStepEntity.ts new file mode 100644 index 0000000..7f21240 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityHelpStepEntity.ts @@ -0,0 +1,38 @@ +export class SecurityHelpStepEntity { + public HelpStepId: string = ""; + public HelpFunctionId: string = ""; + public StepNo: number = 0; + public Title: string = ""; + public Description: string = ""; + public Tips: string = ""; + public Icon: string = ""; + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + + static readonly HELP_STEP_ID: string = "HelpStepId"; + static readonly HELP_FUNCTION_ID: string = "HelpFunctionId"; + static readonly STEP_NO: string = "StepNo"; + static readonly TITLE: string = "Title"; + static readonly DESCRIPTION: string = "Description"; + static readonly TIPS: string = "Tips"; + static readonly ICON: string = "Icon"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DB_NAME_SECURITY_HELP_STEP: string = "security_help_step"; + static readonly DB_NAME_FIELDS: string = "help_step_id,help_function_id,step_no,title,description,tips,icon,created_datetime,created_by,updated_datetime,updated_by"; + static readonly DB_HELP_STEP_ID: string = "help_step_id"; + static readonly DB_HELP_FUNCTION_ID: string = "help_function_id"; + static readonly DB_STEP_NO: string = "step_no"; + static readonly DB_TITLE: string = "title"; + static readonly DB_DESCRIPTION: string = "description"; + static readonly DB_TIPS: string = "tips"; + static readonly DB_ICON: string = "icon"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; +} diff --git a/uniapp/youjiala/src/data/auto/securityInitializerTickViewEntity.ts b/uniapp/youjiala/src/data/auto/securityInitializerTickViewEntity.ts new file mode 100644 index 0000000..20ec17f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityInitializerTickViewEntity.ts @@ -0,0 +1,41 @@ +export class SecurityInitializerTickViewEntity { + public SecurityActorUpd?: Date = null!; + public SecurityActorGroupUpd?: Date = null!; + public SecurityFunctionUpd?: Date = null!; + public SecurityFunctionMapUpd?: Date = null!; + public ProductUpd?: Date = null!; + public SecurityGroupPermissionUpd?: Date = null!; + public SecurityGroupPermissionDependentUpd?: Date = null!; + public SecurityMasterUpd?: Date = null!; + public SecurityPermissionUpd?: Date = null!; + public SecurityPermissionDependentUpd?: Date = null!; + public SecurityUserUpd?: Date = null!; + public SecurityUserActorUpd?: Date = null!; + + static readonly SECURITY_ACTOR_UPD: string = "SecurityActorUpd"; + static readonly SECURITY_ACTOR_GROUP_UPD: string = "SecurityActorGroupUpd"; + static readonly SECURITY_FUNCTION_UPD: string = "SecurityFunctionUpd"; + static readonly SECURITY_FUNCTION_MAP_UPD: string = "SecurityFunctionMapUpd"; + static readonly PRODUCT_UPD: string = "ProductUpd"; + static readonly SECURITY_GROUP_PERMISSION_UPD: string = "SecurityGroupPermissionUpd"; + static readonly SECURITY_GROUP_PERMISSION_DEPENDENT_UPD: string = "SecurityGroupPermissionDependentUpd"; + static readonly SECURITY_MASTER_UPD: string = "SecurityMasterUpd"; + static readonly SECURITY_PERMISSION_UPD: string = "SecurityPermissionUpd"; + static readonly SECURITY_PERMISSION_DEPENDENT_UPD: string = "SecurityPermissionDependentUpd"; + static readonly SECURITY_USER_UPD: string = "SecurityUserUpd"; + static readonly SECURITY_USER_ACTOR_UPD: string = "SecurityUserActorUpd"; + static readonly DB_NAME_SECURITY_INITIALIZER_TICK_VIEW: string = "security_initializer_tick_view"; + static readonly DB_NAME_FIELDS: string = "security_actor_upd,security_actor_group_upd,security_function_upd,security_function_map_upd,product_upd,security_group_permission_upd,security_group_permission_dependent_upd,security_master_upd,security_permission_upd,security_permission_dependent_upd,security_user_upd,security_user_actor_upd"; + static readonly DB_SECURITY_ACTOR_UPD: string = "security_actor_upd"; + static readonly DB_SECURITY_ACTOR_GROUP_UPD: string = "security_actor_group_upd"; + static readonly DB_SECURITY_FUNCTION_UPD: string = "security_function_upd"; + static readonly DB_SECURITY_FUNCTION_MAP_UPD: string = "security_function_map_upd"; + static readonly DB_PRODUCT_UPD: string = "product_upd"; + static readonly DB_SECURITY_GROUP_PERMISSION_UPD: string = "security_group_permission_upd"; + static readonly DB_SECURITY_GROUP_PERMISSION_DEPENDENT_UPD: string = "security_group_permission_dependent_upd"; + static readonly DB_SECURITY_MASTER_UPD: string = "security_master_upd"; + static readonly DB_SECURITY_PERMISSION_UPD: string = "security_permission_upd"; + static readonly DB_SECURITY_PERMISSION_DEPENDENT_UPD: string = "security_permission_dependent_upd"; + static readonly DB_SECURITY_USER_UPD: string = "security_user_upd"; + static readonly DB_SECURITY_USER_ACTOR_UPD: string = "security_user_actor_upd"; +} diff --git a/uniapp/youjiala/src/data/auto/securityLockEntity.ts b/uniapp/youjiala/src/data/auto/securityLockEntity.ts new file mode 100644 index 0000000..3095bde --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityLockEntity.ts @@ -0,0 +1,26 @@ +export class SecurityLockEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public EntityName: string = ""; + public PkeyId: string = ""; + public LockedByActor: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly ENTITY_NAME: string = "EntityName"; + static readonly PKEY_ID: string = "PkeyId"; + static readonly LOCKED_BY_ACTOR: string = "LockedByActor"; + static readonly DB_NAME_SECURITY_LOCK: string = "security_lock"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,entity_name,pkey_id,locked_by_actor"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_ENTITY_NAME: string = "entity_name"; + static readonly DB_PKEY_ID: string = "pkey_id"; + static readonly DB_LOCKED_BY_ACTOR: string = "locked_by_actor"; +} diff --git a/uniapp/youjiala/src/data/auto/securityLockEntityKey.ts b/uniapp/youjiala/src/data/auto/securityLockEntityKey.ts new file mode 100644 index 0000000..db21877 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityLockEntityKey.ts @@ -0,0 +1,5 @@ +export class SecurityLockEntityKey { + public EntityName: string = ""; + public PkeyId: string = ""; + public LockedByActor: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityLockSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityLockSearchCriteria.ts new file mode 100644 index 0000000..fb98bd8 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityLockSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityLockSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityMasterEntity.ts b/uniapp/youjiala/src/data/auto/securityMasterEntity.ts new file mode 100644 index 0000000..8c23628 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityMasterEntity.ts @@ -0,0 +1,44 @@ +export class SecurityMasterEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public MasterCategory: string = ""; + public MasterSubcategory: string = ""; + public MasterCodeItem: string = ""; + public LocalDescription: string = ""; + public EngDescription: string = ""; + public Value: string = ""; + public OrderBy: number = 0; + public ValidIndc: string = ""; + public Remark: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly MASTER_CATEGORY: string = "MasterCategory"; + static readonly MASTER_SUBCATEGORY: string = "MasterSubcategory"; + static readonly MASTER_CODE_ITEM: string = "MasterCodeItem"; + static readonly LOCAL_DESCRIPTION: string = "LocalDescription"; + static readonly ENG_DESCRIPTION: string = "EngDescription"; + static readonly VALUE: string = "Value"; + static readonly ORDER_BY: string = "OrderBy"; + static readonly VALID_INDC: string = "ValidIndc"; + static readonly REMARK: string = "Remark"; + static readonly DB_NAME_SECURITY_MASTER: string = "security_master"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,master_category,master_subcategory,master_code_item,local_description,eng_description,value,order_by,valid_indc,remark"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_MASTER_CATEGORY: string = "master_category"; + static readonly DB_MASTER_SUBCATEGORY: string = "master_subcategory"; + static readonly DB_MASTER_CODE_ITEM: string = "master_code_item"; + static readonly DB_LOCAL_DESCRIPTION: string = "local_description"; + static readonly DB_ENG_DESCRIPTION: string = "eng_description"; + static readonly DB_VALUE: string = "value"; + static readonly DB_ORDER_BY: string = "order_by"; + static readonly DB_VALID_INDC: string = "valid_indc"; + static readonly DB_REMARK: string = "remark"; +} diff --git a/uniapp/youjiala/src/data/auto/securityMasterEntityKey.ts b/uniapp/youjiala/src/data/auto/securityMasterEntityKey.ts new file mode 100644 index 0000000..d303a1a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityMasterEntityKey.ts @@ -0,0 +1,5 @@ +export class SecurityMasterEntityKey { + public MasterCategory: string = ""; + public MasterSubcategory: string = ""; + public MasterCodeItem: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityMasterResultData.ts b/uniapp/youjiala/src/data/auto/securityMasterResultData.ts new file mode 100644 index 0000000..4f7de60 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityMasterResultData.ts @@ -0,0 +1,6 @@ +import type { SecurityMasterEntity } from "./securityMasterEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityMasterResultData extends SearchCriteriaResultData { + public Datas: SecurityMasterEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityMasterSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityMasterSearchCriteria.ts new file mode 100644 index 0000000..17ebb8d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityMasterSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityMasterSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionData.ts b/uniapp/youjiala/src/data/auto/securityPermissionData.ts new file mode 100644 index 0000000..72ab540 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionData.ts @@ -0,0 +1,7 @@ +import type { SecurityPermissionDependentEntity } from "./securityPermissionDependentEntity"; +import { SecurityPermissionEntity } from "./securityPermissionEntity"; + +export class SecurityPermissionData { + public SecurityPermission: SecurityPermissionEntity = new SecurityPermissionEntity(); + public SecurityPermissionDependents: SecurityPermissionDependentEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionDependentEntity.ts b/uniapp/youjiala/src/data/auto/securityPermissionDependentEntity.ts new file mode 100644 index 0000000..ca5085d --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionDependentEntity.ts @@ -0,0 +1,29 @@ +export class SecurityPermissionDependentEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public PermissionName: string = ""; + public Dependent: string = ""; + public DependentDetailName: string = ""; + public DependentDetailDescription: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly DEPENDENT: string = "Dependent"; + static readonly DEPENDENT_DETAIL_NAME: string = "DependentDetailName"; + static readonly DEPENDENT_DETAIL_DESCRIPTION: string = "DependentDetailDescription"; + static readonly DB_NAME_SECURITY_PERMISSION_DEPENDENT: string = "security_permission_dependent"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,permission_name,dependent,dependent_detail_name,dependent_detail_description"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_DEPENDENT: string = "dependent"; + static readonly DB_DEPENDENT_DETAIL_NAME: string = "dependent_detail_name"; + static readonly DB_DEPENDENT_DETAIL_DESCRIPTION: string = "dependent_detail_description"; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionDependentEntityKey.ts b/uniapp/youjiala/src/data/auto/securityPermissionDependentEntityKey.ts new file mode 100644 index 0000000..bf3cd2a --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionDependentEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityPermissionDependentEntityKey { + public PermissionName: string = ""; + public DependentDetailName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionEntity.ts b/uniapp/youjiala/src/data/auto/securityPermissionEntity.ts new file mode 100644 index 0000000..ef45d07 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionEntity.ts @@ -0,0 +1,29 @@ +export class SecurityPermissionEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public PermissionName: string = ""; + public Dependent: string = ""; + public Description: string = ""; + public DelegateIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly DEPENDENT: string = "Dependent"; + static readonly DESCRIPTION: string = "Description"; + static readonly DELEGATE_INDC: string = "DelegateIndc"; + static readonly DB_NAME_SECURITY_PERMISSION: string = "security_permission"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,permission_name,dependent,description,delegate_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_DEPENDENT: string = "dependent"; + static readonly DB_DESCRIPTION: string = "description"; + static readonly DB_DELEGATE_INDC: string = "delegate_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntity.ts b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntity.ts new file mode 100644 index 0000000..043e189 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntity.ts @@ -0,0 +1,23 @@ +export class SecurityPermissionFunctionMapEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public PermissionName: string = ""; + public FunctionName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly DB_NAME_SECURITY_PERMISSION_FUNCTION_MAP: string = "security_permission_function_map"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,permission_name,function_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_FUNCTION_NAME: string = "function_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntityKey.ts b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntityKey.ts new file mode 100644 index 0000000..fba05e2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityPermissionFunctionMapEntityKey { + public PermissionName: string = ""; + public FunctionName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapViewEntity.ts b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapViewEntity.ts new file mode 100644 index 0000000..d8ed13f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionFunctionMapViewEntity.ts @@ -0,0 +1,14 @@ +export class SecurityPermissionFunctionMapViewEntity { + public PermissionName: string = ""; + public FunctionName: string = ""; + public PageName: string = ""; + + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly PAGE_NAME: string = "PageName"; + static readonly DB_NAME_SECURITY_PERMISSION_FUNCTION_MAP_VIEW: string = "security_permission_function_map_view"; + static readonly DB_NAME_FIELDS: string = "permission_name,function_name,page_name"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_FUNCTION_NAME: string = "function_name"; + static readonly DB_PAGE_NAME: string = "page_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionPolicy.ts b/uniapp/youjiala/src/data/auto/securityPermissionPolicy.ts new file mode 100644 index 0000000..3875dcc --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionPolicy.ts @@ -0,0 +1,14 @@ +export class SecurityPermissionPolicy { + static readonly SecurityUser: string = "SecurityUser"; + static readonly SecurityMaster: string = "SecurityMaster"; + static readonly SecurityGeneratorNumber: string = "SecurityGeneratorNumber"; + static readonly SecurityPermission: string = "SecurityPermission"; + static readonly SecurityFunction: string = "SecurityFunction"; + static readonly SecurityGroup: string = "SecurityGroup"; + static readonly SecurityActor: string = "SecurityActor"; + static readonly Locale: string = "Locale"; + static readonly SecurityUserPreference: string = "SecurityUserPreference"; + static readonly SecurityLock: string = "SecurityLock"; + static readonly SecurityHelpFunction: string = "SecurityHelpFunction"; + static readonly CanSeeAllUser: string = "CanSeeAllUser"; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionResultData.ts b/uniapp/youjiala/src/data/auto/securityPermissionResultData.ts new file mode 100644 index 0000000..9c47184 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionResultData.ts @@ -0,0 +1,8 @@ +import type { SecurityPermissionDependentEntity } from "./securityPermissionDependentEntity"; +import type { SecurityPermissionEntity } from "./securityPermissionEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityPermissionResultData extends SearchCriteriaResultData { + public Permissions: SecurityPermissionEntity[] = []; + public Dependents: SecurityPermissionDependentEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityPermissionSearchCriteria.ts new file mode 100644 index 0000000..102e362 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionSearchCriteria.ts @@ -0,0 +1,7 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityPermissionSearchCriteria extends AbstractSearchCriteria { + public PermissionName: string = ""; + public Dependent: string = ""; + public DependentEnable?: Date = null!; +} diff --git a/uniapp/youjiala/src/data/auto/securityPermissionViewEntity.ts b/uniapp/youjiala/src/data/auto/securityPermissionViewEntity.ts new file mode 100644 index 0000000..4c5470b --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityPermissionViewEntity.ts @@ -0,0 +1,20 @@ +export class SecurityPermissionViewEntity { + public PermissionName: string = ""; + public FunctionName: string = ""; + public Description: string = ""; + public CreatedDatetime: Date = new Date(); + public Dependent: string = ""; + + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly FUNCTION_NAME: string = "FunctionName"; + static readonly DESCRIPTION: string = "Description"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DEPENDENT: string = "Dependent"; + static readonly DB_NAME_SECURITY_PERMISSION_VIEW: string = "security_permission_view"; + static readonly DB_NAME_FIELDS: string = "permission_name,function_name,description,created_datetime,dependent"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_FUNCTION_NAME: string = "function_name"; + static readonly DB_DESCRIPTION: string = "description"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DEPENDENT: string = "dependent"; +} diff --git a/uniapp/youjiala/src/data/auto/securityScheduleTaskQueueEntity.ts b/uniapp/youjiala/src/data/auto/securityScheduleTaskQueueEntity.ts new file mode 100644 index 0000000..72f7d48 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityScheduleTaskQueueEntity.ts @@ -0,0 +1,29 @@ +export class SecurityScheduleTaskQueueEntity { + public CreatedBy: string = ""; + public CreatedDatetime: Date = new Date(); + public DocumentId: string = ""; + public QueueId: number = 0; + public TaskId: string = ""; + public TaskParam: string = ""; + public UpdatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + + static readonly CREATED_BY: string = "CreatedBy"; + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly DOCUMENT_ID: string = "DocumentId"; + static readonly QUEUE_ID: string = "QueueId"; + static readonly TASK_ID: string = "TaskId"; + static readonly TASK_PARAM: string = "TaskParam"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly DB_NAME_SECURITY_SCHEDULE_TASK_QUEUE: string = "security_schedule_task_queue"; + static readonly DB_NAME_FIELDS: string = "created_by,created_datetime,document_id,queue_id,task_id,task_param,updated_by,updated_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_DOCUMENT_ID: string = "document_id"; + static readonly DB_QUEUE_ID: string = "queue_id"; + static readonly DB_TASK_ID: string = "task_id"; + static readonly DB_TASK_PARAM: string = "task_param"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/securityTableDescriptionEntity.ts b/uniapp/youjiala/src/data/auto/securityTableDescriptionEntity.ts new file mode 100644 index 0000000..6c7b122 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityTableDescriptionEntity.ts @@ -0,0 +1,29 @@ +export class SecurityTableDescriptionEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public DescriptionId: number = 0; + public TableName: string = ""; + public FieldName: string = ""; + public Description: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly DESCRIPTION_ID: string = "DescriptionId"; + static readonly TABLE_NAME: string = "TableName"; + static readonly FIELD_NAME: string = "FieldName"; + static readonly DESCRIPTION: string = "Description"; + static readonly DB_NAME_SECURITY_TABLE_DESCRIPTION: string = "security_table_description"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,description_id,table_name,field_name,description"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_DESCRIPTION_ID: string = "description_id"; + static readonly DB_TABLE_NAME: string = "table_name"; + static readonly DB_FIELD_NAME: string = "field_name"; + static readonly DB_DESCRIPTION: string = "description"; +} diff --git a/uniapp/youjiala/src/data/auto/securityTableDescriptionViewEntity.ts b/uniapp/youjiala/src/data/auto/securityTableDescriptionViewEntity.ts new file mode 100644 index 0000000..7e7ef13 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityTableDescriptionViewEntity.ts @@ -0,0 +1,56 @@ +export class SecurityTableDescriptionViewEntity { + public TableName: string = ""; + public FieldName: string = ""; + public TypeName: string = ""; + public TypeOfName: string = ""; + public MaxLength: number = 0; + public Scale: number = 0; + public IsNullAble: string = ""; + public FieldDefaultValue: string = ""; + public Xtype: string = ""; + public FindBy: number = 0; + public Operation: number = 0; + public Pk: number = 0; + public PkName: string = ""; + public IsIdentity: number = 0; + public Colid: number = 0; + public Description: string = ""; + public DescriptionId: number = 0; + + static readonly TABLE_NAME: string = "TableName"; + static readonly FIELD_NAME: string = "FieldName"; + static readonly TYPE_NAME: string = "TypeName"; + static readonly TYPE_OF_NAME: string = "TypeOfName"; + static readonly MAX_LENGTH: string = "MaxLength"; + static readonly SCALE: string = "Scale"; + static readonly IS_NULL_ABLE: string = "IsNullAble"; + static readonly FIELD_DEFAULT_VALUE: string = "FieldDefaultValue"; + static readonly XTYPE: string = "Xtype"; + static readonly FIND_BY: string = "FindBy"; + static readonly OPERATION: string = "Operation"; + static readonly PK: string = "Pk"; + static readonly PK_NAME: string = "PkName"; + static readonly IS_IDENTITY: string = "IsIdentity"; + static readonly COLID: string = "Colid"; + static readonly DESCRIPTION: string = "Description"; + static readonly DESCRIPTION_ID: string = "DescriptionId"; + static readonly DB_NAME_SECURITY_TABLE_DESCRIPTION_VIEW: string = "security_table_description_view"; + static readonly DB_NAME_FIELDS: string = "table_name,field_name,type_name,type_of_name,max_length,scale,is_null_able,field_default_value,xtype,find_by,operation,pk,pk_name,is_identity,colid,description,description_id"; + static readonly DB_TABLE_NAME: string = "table_name"; + static readonly DB_FIELD_NAME: string = "field_name"; + static readonly DB_TYPE_NAME: string = "type_name"; + static readonly DB_TYPE_OF_NAME: string = "type_of_name"; + static readonly DB_MAX_LENGTH: string = "max_length"; + static readonly DB_SCALE: string = "scale"; + static readonly DB_IS_NULL_ABLE: string = "is_null_able"; + static readonly DB_FIELD_DEFAULT_VALUE: string = "field_default_value"; + static readonly DB_XTYPE: string = "xtype"; + static readonly DB_FIND_BY: string = "find_by"; + static readonly DB_OPERATION: string = "operation"; + static readonly DB_PK: string = "pk"; + static readonly DB_PK_NAME: string = "pk_name"; + static readonly DB_IS_IDENTITY: string = "is_identity"; + static readonly DB_COLID: string = "colid"; + static readonly DB_DESCRIPTION: string = "description"; + static readonly DB_DESCRIPTION_ID: string = "description_id"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserActorEntity.ts b/uniapp/youjiala/src/data/auto/securityUserActorEntity.ts new file mode 100644 index 0000000..18e00b7 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserActorEntity.ts @@ -0,0 +1,23 @@ +export class SecurityUserActorEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public UserName: string = ""; + public ActorName: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly USER_NAME: string = "UserName"; + static readonly ACTOR_NAME: string = "ActorName"; + static readonly DB_NAME_SECURITY_USER_ACTOR: string = "security_user_actor"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,user_name,actor_name"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_ACTOR_NAME: string = "actor_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserActorEntityKey.ts b/uniapp/youjiala/src/data/auto/securityUserActorEntityKey.ts new file mode 100644 index 0000000..5aa2a7c --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserActorEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityUserActorEntityKey { + public UserName: string = ""; + public ActorName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserActorViewEntity.ts b/uniapp/youjiala/src/data/auto/securityUserActorViewEntity.ts new file mode 100644 index 0000000..2d4af96 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserActorViewEntity.ts @@ -0,0 +1,20 @@ +export class SecurityUserActorViewEntity { + public UserName: string = ""; + public UserLocalName: string = ""; + public UserMobile: string = ""; + public ActorName: string = ""; + public ActorLocalName: string = ""; + + static readonly USER_NAME: string = "UserName"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_MOBILE: string = "UserMobile"; + static readonly ACTOR_NAME: string = "ActorName"; + static readonly ACTOR_LOCAL_NAME: string = "ActorLocalName"; + static readonly DB_NAME_SECURITY_USER_ACTOR_VIEW: string = "security_user_actor_view"; + static readonly DB_NAME_FIELDS: string = "user_name,user_local_name,user_mobile,actor_name,actor_local_name"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_MOBILE: string = "user_mobile"; + static readonly DB_ACTOR_NAME: string = "actor_name"; + static readonly DB_ACTOR_LOCAL_NAME: string = "actor_local_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserData.ts b/uniapp/youjiala/src/data/auto/securityUserData.ts new file mode 100644 index 0000000..afc9de2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserData.ts @@ -0,0 +1,7 @@ +import type { SecurityUserActorViewEntity } from "./securityUserActorViewEntity"; +import { SecurityUserDisplayData } from "./securityUserDisplayData"; + +export class SecurityUserData { + public SecurityUser: SecurityUserDisplayData = new SecurityUserDisplayData(); + public SecurityUserActors: SecurityUserActorViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntity.ts b/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntity.ts new file mode 100644 index 0000000..e099442 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntity.ts @@ -0,0 +1,32 @@ +export class SecurityUserDelegatedPermissionEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public UserName: string = ""; + public DelegatedByUser: string = ""; + public PermissionName: string = ""; + public StartDatetime: Date = new Date(); + public EndDatetime: Date = new Date(); + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly USER_NAME: string = "UserName"; + static readonly DELEGATED_BY_USER: string = "DelegatedByUser"; + static readonly PERMISSION_NAME: string = "PermissionName"; + static readonly START_DATETIME: string = "StartDatetime"; + static readonly END_DATETIME: string = "EndDatetime"; + static readonly DB_NAME_SECURITY_USER_DELEGATED_PERMISSION: string = "security_user_delegated_permission"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,user_name,delegated_by_user,permission_name,start_datetime,end_datetime"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_DELEGATED_BY_USER: string = "delegated_by_user"; + static readonly DB_PERMISSION_NAME: string = "permission_name"; + static readonly DB_START_DATETIME: string = "start_datetime"; + static readonly DB_END_DATETIME: string = "end_datetime"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntityKey.ts b/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntityKey.ts new file mode 100644 index 0000000..de3cdb0 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserDelegatedPermissionEntityKey.ts @@ -0,0 +1,5 @@ +export class SecurityUserDelegatedPermissionEntityKey { + public UserName: string = ""; + public DelegatedByUser: string = ""; + public PermissionName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserDisplayData.ts b/uniapp/youjiala/src/data/auto/securityUserDisplayData.ts new file mode 100644 index 0000000..787fd9f --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserDisplayData.ts @@ -0,0 +1,5 @@ +import { SecurityUserEntity } from "./securityUserEntity"; + +export class SecurityUserDisplayData extends SecurityUserEntity { + public OrgUserPassword: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserEntity.ts b/uniapp/youjiala/src/data/auto/securityUserEntity.ts new file mode 100644 index 0000000..fb4bee2 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserEntity.ts @@ -0,0 +1,119 @@ +export class SecurityUserEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public UserName: string = ""; + public UserLocalName: string = ""; + public UserEngName: string = ""; + public CompanyName: string = ""; + public Industry: string = ""; + public UserPassword: string = ""; + public UserMobile: string = ""; + public UserAddress: string = ""; + public Postcode: string = ""; + public Community: number = 0; + public UserGrade: number = 0; + public UserType: string = ""; + public UserWechatAccount: string = ""; + public UserAlipayAccount: string = ""; + public UserAlipayAccountImgPath: string = ""; + public UserWechatAccountImgPath: string = ""; + public UserIconImgPath: string = ""; + public UserAccountsExpireDatetime?: Date = null!; + public UserIsValidIndc: string = ""; + public IsForeceChangePasswordIndc: string = ""; + public IsAccountsLockedIndc: string = ""; + public AccountsLockedDatetime?: Date = null!; + public UserRemark: string = ""; + public WelcomePage: string = ""; + public UserTypeEndDatetime?: Date = null!; + public RoomName: string = ""; + public LastLoginDatetime?: Date = null!; + public ErrorLoginCount: number = 0; + public BiometricCredentialId: string = ""; + public BiometricPublicKey: string = ""; + public BiometricCounter: number = 0; + public BiometricDeviceName: string = ""; + public BiometricEnrolledAt?: Date = null!; + public BiometricLastUsedAt?: Date = null!; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly USER_NAME: string = "UserName"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_ENG_NAME: string = "UserEngName"; + static readonly COMPANY_NAME: string = "CompanyName"; + static readonly INDUSTRY: string = "Industry"; + static readonly USER_PASSWORD: string = "UserPassword"; + static readonly USER_MOBILE: string = "UserMobile"; + static readonly USER_ADDRESS: string = "UserAddress"; + static readonly POSTCODE: string = "Postcode"; + static readonly COMMUNITY: string = "Community"; + static readonly USER_GRADE: string = "UserGrade"; + static readonly USER_TYPE: string = "UserType"; + static readonly USER_WECHAT_ACCOUNT: string = "UserWechatAccount"; + static readonly USER_ALIPAY_ACCOUNT: string = "UserAlipayAccount"; + static readonly USER_ALIPAY_ACCOUNT_IMG_PATH: string = "UserAlipayAccountImgPath"; + static readonly USER_WECHAT_ACCOUNT_IMG_PATH: string = "UserWechatAccountImgPath"; + static readonly USER_ICON_IMG_PATH: string = "UserIconImgPath"; + static readonly USER_ACCOUNTS_EXPIRE_DATETIME: string = "UserAccountsExpireDatetime"; + static readonly USER_IS_VALID_INDC: string = "UserIsValidIndc"; + static readonly IS_FORECE_CHANGE_PASSWORD_INDC: string = "IsForeceChangePasswordIndc"; + static readonly IS_ACCOUNTS_LOCKED_INDC: string = "IsAccountsLockedIndc"; + static readonly ACCOUNTS_LOCKED_DATETIME: string = "AccountsLockedDatetime"; + static readonly USER_REMARK: string = "UserRemark"; + static readonly WELCOME_PAGE: string = "WelcomePage"; + static readonly USER_TYPE_END_DATETIME: string = "UserTypeEndDatetime"; + static readonly ROOM_NAME: string = "RoomName"; + static readonly LAST_LOGIN_DATETIME: string = "LastLoginDatetime"; + static readonly ERROR_LOGIN_COUNT: string = "ErrorLoginCount"; + static readonly BIOMETRIC_CREDENTIAL_ID: string = "BiometricCredentialId"; + static readonly BIOMETRIC_PUBLIC_KEY: string = "BiometricPublicKey"; + static readonly BIOMETRIC_COUNTER: string = "BiometricCounter"; + static readonly BIOMETRIC_DEVICE_NAME: string = "BiometricDeviceName"; + static readonly BIOMETRIC_ENROLLED_AT: string = "BiometricEnrolledAt"; + static readonly BIOMETRIC_LAST_USED_AT: string = "BiometricLastUsedAt"; + static readonly DB_NAME_SECURITY_USER: string = "security_user"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,user_name,user_local_name,user_eng_name,company_name,industry,user_password,user_mobile,user_address,postcode,community,user_grade,user_type,user_wechat_account,user_alipay_account,user_alipay_account_img_path,user_wechat_account_img_path,user_icon_img_path,user_accounts_expire_datetime,user_is_valid_indc,is_forece_change_password_indc,is_accounts_locked_indc,accounts_locked_datetime,user_remark,welcome_page,user_type_end_datetime,room_name,last_login_datetime,error_login_count,biometric_credential_id,biometric_public_key,biometric_counter,biometric_device_name,biometric_enrolled_at,biometric_last_used_at"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_ENG_NAME: string = "user_eng_name"; + static readonly DB_COMPANY_NAME: string = "company_name"; + static readonly DB_INDUSTRY: string = "industry"; + static readonly DB_USER_PASSWORD: string = "user_password"; + static readonly DB_USER_MOBILE: string = "user_mobile"; + static readonly DB_USER_ADDRESS: string = "user_address"; + static readonly DB_POSTCODE: string = "postcode"; + static readonly DB_COMMUNITY: string = "community"; + static readonly DB_USER_GRADE: string = "user_grade"; + static readonly DB_USER_TYPE: string = "user_type"; + static readonly DB_USER_WECHAT_ACCOUNT: string = "user_wechat_account"; + static readonly DB_USER_ALIPAY_ACCOUNT: string = "user_alipay_account"; + static readonly DB_USER_ALIPAY_ACCOUNT_IMG_PATH: string = "user_alipay_account_img_path"; + static readonly DB_USER_WECHAT_ACCOUNT_IMG_PATH: string = "user_wechat_account_img_path"; + static readonly DB_USER_ICON_IMG_PATH: string = "user_icon_img_path"; + static readonly DB_USER_ACCOUNTS_EXPIRE_DATETIME: string = "user_accounts_expire_datetime"; + static readonly DB_USER_IS_VALID_INDC: string = "user_is_valid_indc"; + static readonly DB_IS_FORECE_CHANGE_PASSWORD_INDC: string = "is_forece_change_password_indc"; + static readonly DB_IS_ACCOUNTS_LOCKED_INDC: string = "is_accounts_locked_indc"; + static readonly DB_ACCOUNTS_LOCKED_DATETIME: string = "accounts_locked_datetime"; + static readonly DB_USER_REMARK: string = "user_remark"; + static readonly DB_WELCOME_PAGE: string = "welcome_page"; + static readonly DB_USER_TYPE_END_DATETIME: string = "user_type_end_datetime"; + static readonly DB_ROOM_NAME: string = "room_name"; + static readonly DB_LAST_LOGIN_DATETIME: string = "last_login_datetime"; + static readonly DB_ERROR_LOGIN_COUNT: string = "error_login_count"; + static readonly DB_BIOMETRIC_CREDENTIAL_ID: string = "biometric_credential_id"; + static readonly DB_BIOMETRIC_PUBLIC_KEY: string = "biometric_public_key"; + static readonly DB_BIOMETRIC_COUNTER: string = "biometric_counter"; + static readonly DB_BIOMETRIC_DEVICE_NAME: string = "biometric_device_name"; + static readonly DB_BIOMETRIC_ENROLLED_AT: string = "biometric_enrolled_at"; + static readonly DB_BIOMETRIC_LAST_USED_AT: string = "biometric_last_used_at"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserLoginLogEntity.ts b/uniapp/youjiala/src/data/auto/securityUserLoginLogEntity.ts new file mode 100644 index 0000000..9dd7c4b --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserLoginLogEntity.ts @@ -0,0 +1,29 @@ +export class SecurityUserLoginLogEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public LoginLogId: number = 0; + public UserName: string = ""; + public AgentUserName: string = ""; + public IpAddress: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly LOGIN_LOG_ID: string = "LoginLogId"; + static readonly USER_NAME: string = "UserName"; + static readonly AGENT_USER_NAME: string = "AgentUserName"; + static readonly IP_ADDRESS: string = "IpAddress"; + static readonly DB_NAME_SECURITY_USER_LOGIN_LOG: string = "security_user_login_log"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,login_log_id,user_name,agent_user_name,ip_address"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_LOGIN_LOG_ID: string = "login_log_id"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_AGENT_USER_NAME: string = "agent_user_name"; + static readonly DB_IP_ADDRESS: string = "ip_address"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserPermissionInfo.ts b/uniapp/youjiala/src/data/auto/securityUserPermissionInfo.ts new file mode 100644 index 0000000..34c0347 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserPermissionInfo.ts @@ -0,0 +1,10 @@ +import type { SecurityGroupPermissionDependentViewEntity } from "./securityGroupPermissionDependentViewEntity"; +import type { SecurityGroupPermissionViewEntity } from "./securityGroupPermissionViewEntity"; +import type { SecurityPermissionFunctionMapViewEntity } from "./securityPermissionFunctionMapViewEntity"; + +export class SecurityUserPermissionInfo { + public UserGroups: string[] = []; + public Permissions: SecurityGroupPermissionViewEntity[] = []; + public PermissionDependents: SecurityGroupPermissionDependentViewEntity[] = []; + public PermissionFunctionMaps: SecurityPermissionFunctionMapViewEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserPolicy.ts b/uniapp/youjiala/src/data/auto/securityUserPolicy.ts new file mode 100644 index 0000000..5108717 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserPolicy.ts @@ -0,0 +1,4 @@ +export class SecurityUserPolicy { + static readonly SECURITY_USER_BASE_ACTOR: string = "SecurityUserBaseActor"; + static readonly ERROR_LOGIN_COUNT: number = 5; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserPreferenceEntity.ts b/uniapp/youjiala/src/data/auto/securityUserPreferenceEntity.ts new file mode 100644 index 0000000..d663433 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserPreferenceEntity.ts @@ -0,0 +1,26 @@ +export class SecurityUserPreferenceEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public Username: string = ""; + public PreferenceKey: string = ""; + public Preference: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly USERNAME: string = "Username"; + static readonly PREFERENCE_KEY: string = "PreferenceKey"; + static readonly PREFERENCE: string = "Preference"; + static readonly DB_NAME_SECURITY_USER_PREFERENCE: string = "security_user_preference"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,username,preference_key,preference"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_USERNAME: string = "username"; + static readonly DB_PREFERENCE_KEY: string = "preference_key"; + static readonly DB_PREFERENCE: string = "preference"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserPreferenceEntityKey.ts b/uniapp/youjiala/src/data/auto/securityUserPreferenceEntityKey.ts new file mode 100644 index 0000000..e57b136 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserPreferenceEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityUserPreferenceEntityKey { + public Username: string = ""; + public PreferenceKey: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserPreferenceSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityUserPreferenceSearchCriteria.ts new file mode 100644 index 0000000..e526e26 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserPreferenceSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityUserPreferenceSearchCriteria extends AbstractSearchCriteria { + +} diff --git a/uniapp/youjiala/src/data/auto/securityUserResultData.ts b/uniapp/youjiala/src/data/auto/securityUserResultData.ts new file mode 100644 index 0000000..2355cca --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserResultData.ts @@ -0,0 +1,6 @@ +import type { SecurityUserEntity } from "./securityUserEntity"; +import { SearchCriteriaResultData } from "./searchCriteriaResultData"; + +export class SecurityUserResultData extends SearchCriteriaResultData { + public Datas: SecurityUserEntity[] = []; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserSearchCriteria.ts b/uniapp/youjiala/src/data/auto/securityUserSearchCriteria.ts new file mode 100644 index 0000000..e750a69 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserSearchCriteria.ts @@ -0,0 +1,5 @@ +import { AbstractSearchCriteria } from "./abstractSearchCriteria"; + +export class SecurityUserSearchCriteria extends AbstractSearchCriteria { + public UserName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserViewEntity.ts b/uniapp/youjiala/src/data/auto/securityUserViewEntity.ts new file mode 100644 index 0000000..ea101fe --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserViewEntity.ts @@ -0,0 +1,23 @@ +export class SecurityUserViewEntity { + public UserName: string = ""; + public UserLocalName: string = ""; + public UserMobile: string = ""; + public WelcomePage: string = ""; + public ActorName: string = ""; + public ActorLocalName: string = ""; + + static readonly USER_NAME: string = "UserName"; + static readonly USER_LOCAL_NAME: string = "UserLocalName"; + static readonly USER_MOBILE: string = "UserMobile"; + static readonly WELCOME_PAGE: string = "WelcomePage"; + static readonly ACTOR_NAME: string = "ActorName"; + static readonly ACTOR_LOCAL_NAME: string = "ActorLocalName"; + static readonly DB_NAME_SECURITY_USER_VIEW: string = "security_user_view"; + static readonly DB_NAME_FIELDS: string = "user_name,user_local_name,user_mobile,welcome_page,actor_name,actor_local_name"; + static readonly DB_USER_NAME: string = "user_name"; + static readonly DB_USER_LOCAL_NAME: string = "user_local_name"; + static readonly DB_USER_MOBILE: string = "user_mobile"; + static readonly DB_WELCOME_PAGE: string = "welcome_page"; + static readonly DB_ACTOR_NAME: string = "actor_name"; + static readonly DB_ACTOR_LOCAL_NAME: string = "actor_local_name"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserWebLoginEntity.ts b/uniapp/youjiala/src/data/auto/securityUserWebLoginEntity.ts new file mode 100644 index 0000000..29a94ed --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserWebLoginEntity.ts @@ -0,0 +1,29 @@ +export class SecurityUserWebLoginEntity { + public SessionId: string = ""; + public Username: string = ""; + public HostIp: string = ""; + public HostUserAgent: string = ""; + public LoginTime: Date = new Date(); + public LogoutTime?: Date = null!; + public RefreshToken: string = ""; + public RefreshTokenRefreshedTime: Date = new Date(); + + static readonly SESSION_ID: string = "SessionId"; + static readonly USERNAME: string = "Username"; + static readonly HOST_IP: string = "HostIp"; + static readonly HOST_USER_AGENT: string = "HostUserAgent"; + static readonly LOGIN_TIME: string = "LoginTime"; + static readonly LOGOUT_TIME: string = "LogoutTime"; + static readonly REFRESH_TOKEN: string = "RefreshToken"; + static readonly REFRESH_TOKEN_REFRESHED_TIME: string = "RefreshTokenRefreshedTime"; + static readonly DB_NAME_SECURITY_USER_WEB_LOGIN: string = "security_user_web_login"; + static readonly DB_NAME_FIELDS: string = "session_id,username,host_ip,host_user_agent,login_time,logout_time,refresh_token,refresh_token_refreshed_time"; + static readonly DB_SESSION_ID: string = "session_id"; + static readonly DB_USERNAME: string = "username"; + static readonly DB_HOST_IP: string = "host_ip"; + static readonly DB_HOST_USER_AGENT: string = "host_user_agent"; + static readonly DB_LOGIN_TIME: string = "login_time"; + static readonly DB_LOGOUT_TIME: string = "logout_time"; + static readonly DB_REFRESH_TOKEN: string = "refresh_token"; + static readonly DB_REFRESH_TOKEN_REFRESHED_TIME: string = "refresh_token_refreshed_time"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserWebLoginEntityKey.ts b/uniapp/youjiala/src/data/auto/securityUserWebLoginEntityKey.ts new file mode 100644 index 0000000..7d1c7a5 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserWebLoginEntityKey.ts @@ -0,0 +1,4 @@ +export class SecurityUserWebLoginEntityKey { + public SessionId: string = ""; + public Username: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntity.ts b/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntity.ts new file mode 100644 index 0000000..7442013 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntity.ts @@ -0,0 +1,32 @@ +export class SecurityUserWebPagePreferenceEntity { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public UpdatedDatetime: Date = new Date(); + public UpdatedBy: string = ""; + public Username: string = ""; + public PreferenceKey: string = ""; + public ProfileName: string = ""; + public Preference: string = ""; + public DefaultIndc: string = ""; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly UPDATED_DATETIME: string = "UpdatedDatetime"; + static readonly UPDATED_BY: string = "UpdatedBy"; + static readonly USERNAME: string = "Username"; + static readonly PREFERENCE_KEY: string = "PreferenceKey"; + static readonly PROFILE_NAME: string = "ProfileName"; + static readonly PREFERENCE: string = "Preference"; + static readonly DEFAULT_INDC: string = "DefaultIndc"; + static readonly DB_NAME_SECURITY_USER_WEB_PAGE_PREFERENCE: string = "security_user_web_page_preference"; + static readonly DB_NAME_FIELDS: string = "created_datetime,created_by,updated_datetime,updated_by,username,preference_key,profile_name,preference,default_indc"; + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_UPDATED_DATETIME: string = "updated_datetime"; + static readonly DB_UPDATED_BY: string = "updated_by"; + static readonly DB_USERNAME: string = "username"; + static readonly DB_PREFERENCE_KEY: string = "preference_key"; + static readonly DB_PROFILE_NAME: string = "profile_name"; + static readonly DB_PREFERENCE: string = "preference"; + static readonly DB_DEFAULT_INDC: string = "default_indc"; +} diff --git a/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntityKey.ts b/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntityKey.ts new file mode 100644 index 0000000..a3e66ac --- /dev/null +++ b/uniapp/youjiala/src/data/auto/securityUserWebPagePreferenceEntityKey.ts @@ -0,0 +1,5 @@ +export class SecurityUserWebPagePreferenceEntityKey { + public Username: string = ""; + public PreferenceKey: string = ""; + public ProfileName: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/selectOption.ts b/uniapp/youjiala/src/data/auto/selectOption.ts new file mode 100644 index 0000000..47233e6 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/selectOption.ts @@ -0,0 +1,4 @@ +export class SelectOption { + public DisplayName: string = ""; + public BindValue: string = ""; +} diff --git a/uniapp/youjiala/src/data/auto/sysTablePkeyViewEntity.ts b/uniapp/youjiala/src/data/auto/sysTablePkeyViewEntity.ts new file mode 100644 index 0000000..a777647 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/sysTablePkeyViewEntity.ts @@ -0,0 +1,23 @@ +export class SysTablePkeyViewEntity { + public TableQualifier: string = ""; + public TableOwner: string = ""; + public TableName: string = ""; + public ColumnName: string = ""; + public PkName: string = ""; + public Pk: number = 0; + + static readonly TABLE_QUALIFIER: string = "TableQualifier"; + static readonly TABLE_OWNER: string = "TableOwner"; + static readonly TABLE_NAME: string = "TableName"; + static readonly COLUMN_NAME: string = "ColumnName"; + static readonly PK_NAME: string = "PkName"; + static readonly PK: string = "Pk"; + static readonly DB_NAME_SYS_TABLE_PKEY_VIEW: string = "sys_table_pkey_view"; + static readonly DB_NAME_FIELDS: string = "table_qualifier,table_owner,table_name,column_name,pk_name,pk"; + static readonly DB_TABLE_QUALIFIER: string = "table_qualifier"; + static readonly DB_TABLE_OWNER: string = "table_owner"; + static readonly DB_TABLE_NAME: string = "table_name"; + static readonly DB_COLUMN_NAME: string = "column_name"; + static readonly DB_PK_NAME: string = "pk_name"; + static readonly DB_PK: string = "pk"; +} diff --git a/uniapp/youjiala/src/data/auto/sysTableSchemaViewEntity.ts b/uniapp/youjiala/src/data/auto/sysTableSchemaViewEntity.ts new file mode 100644 index 0000000..cf24251 --- /dev/null +++ b/uniapp/youjiala/src/data/auto/sysTableSchemaViewEntity.ts @@ -0,0 +1,50 @@ +export class SysTableSchemaViewEntity { + public TableName: string = ""; + public FieldName: string = ""; + public TypeName: string = ""; + public TypeOfName: string = ""; + public MaxLength: number = 0; + public Scale: number = 0; + public IsNullAble: string = ""; + public FieldDefaultValue: string = ""; + public Xtype: string = ""; + public FindBy: number = 0; + public Operation: number = 0; + public Pk: number = 0; + public PkName: string = ""; + public IsIdentity: number = 0; + public Colid: number = 0; + + static readonly TABLE_NAME: string = "TableName"; + static readonly FIELD_NAME: string = "FieldName"; + static readonly TYPE_NAME: string = "TypeName"; + static readonly TYPE_OF_NAME: string = "TypeOfName"; + static readonly MAX_LENGTH: string = "MaxLength"; + static readonly SCALE: string = "Scale"; + static readonly IS_NULL_ABLE: string = "IsNullAble"; + static readonly FIELD_DEFAULT_VALUE: string = "FieldDefaultValue"; + static readonly XTYPE: string = "Xtype"; + static readonly FIND_BY: string = "FindBy"; + static readonly OPERATION: string = "Operation"; + static readonly PK: string = "Pk"; + static readonly PK_NAME: string = "PkName"; + static readonly IS_IDENTITY: string = "IsIdentity"; + static readonly COLID: string = "Colid"; + static readonly DB_NAME_SYS_TABLE_SCHEMA_VIEW: string = "sys_table_schema_view"; + static readonly DB_NAME_FIELDS: string = "table_name,field_name,type_name,type_of_name,max_length,scale,is_null_able,field_default_value,xtype,find_by,operation,pk,pk_name,is_identity,colid"; + static readonly DB_TABLE_NAME: string = "table_name"; + static readonly DB_FIELD_NAME: string = "field_name"; + static readonly DB_TYPE_NAME: string = "type_name"; + static readonly DB_TYPE_OF_NAME: string = "type_of_name"; + static readonly DB_MAX_LENGTH: string = "max_length"; + static readonly DB_SCALE: string = "scale"; + static readonly DB_IS_NULL_ABLE: string = "is_null_able"; + static readonly DB_FIELD_DEFAULT_VALUE: string = "field_default_value"; + static readonly DB_XTYPE: string = "xtype"; + static readonly DB_FIND_BY: string = "find_by"; + static readonly DB_OPERATION: string = "operation"; + static readonly DB_PK: string = "pk"; + static readonly DB_PK_NAME: string = "pk_name"; + static readonly DB_IS_IDENTITY: string = "is_identity"; + static readonly DB_COLID: string = "colid"; +} diff --git a/uniapp/youjiala/src/data/custom/bindOption.ts b/uniapp/youjiala/src/data/custom/bindOption.ts new file mode 100644 index 0000000..5374aa5 --- /dev/null +++ b/uniapp/youjiala/src/data/custom/bindOption.ts @@ -0,0 +1,33 @@ +import type { Dayjs } from "dayjs"; +import type { SelectOption } from "@/data/auto/selectOption"; + +export class BindOption { + public lg: number = 12; + public sm: number = 24; + public DisplayName: string = ""; + public BindValue: string = ""; + public Column: string = ""; + public Type: string = ""; + public Operator: string = ""; + public Value: string = ""; + public Value1: string = ""; + public Values: string[] = []; + + public NumberValue: number = null!; + public NumberValue1: number = null!; + public NumberValues: number[] = []; + + public DayjsValue: Dayjs = null!; + public DayjsValue1: Dayjs = null!; + public DayjsValues: Dayjs[] = []; + + public BooleanValue: boolean = false; + public BooleanValue1: boolean = false; + public BooleanValues: boolean[] = []; + + public SelectOptions: SelectOption[] = []; + + public Format: string = ""; + + public disabled: boolean = false; +} diff --git a/uniapp/youjiala/src/data/custom/dmsFileDisplayData.ts b/uniapp/youjiala/src/data/custom/dmsFileDisplayData.ts new file mode 100644 index 0000000..0c138a8 --- /dev/null +++ b/uniapp/youjiala/src/data/custom/dmsFileDisplayData.ts @@ -0,0 +1,69 @@ +export class DmsFileDisplayData { + public CreatedDatetime: Date = new Date(); + public CreatedBy: string = ""; + public FileId: number = 0; + public UploadName: string = ""; + public FileCategory: string = ""; + public OrgFileName: string = ""; + public FileName: string = ""; + public FilePath: string = ""; + public FolderLocalName: string = ""; + public FileSize: number = 0; + public OwerId: string = ""; + public RevisionNo: number = 0; + public IsDirectoryIndc: string = ""; + public IsLinkIndc: string = ""; + public LinkedFileId: number = 0; + public OrderKey: string = ""; + public FileTag: string = ""; + public AllowRenameIndc: string = ""; + public AllowDeleteIndc: string = ""; + public Url: string = ""; + + public Selected?: boolean = false; + + static readonly CREATED_DATETIME: string = "CreatedDatetime"; + static readonly CREATED_BY: string = "CreatedBy"; + static readonly FILE_ID: string = "FileId"; + static readonly UPLOAD_NAME: string = "UploadName"; + static readonly FILE_CATEGORY: string = "FileCategory"; + static readonly ORG_FILE_NAME: string = "OrgFileName"; + static readonly FILE_NAME: string = "FileName"; + static readonly FILE_PATH: string = "FilePath"; + static readonly FOLDER_LOCAL_NAME: string = "FolderLocalName"; + static readonly FILE_SIZE: string = "FileSize"; + static readonly OWER_ID: string = "OwerId"; + static readonly REVISION_NO: string = "RevisionNo"; + static readonly IS_DIRECTORY_INDC: string = "IsDirectoryIndc"; + static readonly IS_LINK_INDC: string = "IsLinkIndc"; + static readonly LINKED_FILE_ID: string = "LinkedFileId"; + static readonly ORDER_KEY: string = "OrderKey"; + static readonly FILE_TAG: string = "FileTag"; + static readonly ALLOW_RENAME_INDC: string = "AllowRenameIndc"; + static readonly ALLOW_DELETE_INDC: string = "AllowDeleteIndc"; + static readonly URL: string = "Url"; + static readonly DB_NAME_UPLOAD_DMS_FILE_VIEW: string = "upload_dms_file_view"; + static readonly DB_NAME_FIELDS: string + = "created_datetime,created_by,file_id,upload_name,file_category,org_file_name,file_name,file_path,folder_local_name,file_size,ower_id,revision_no,is_directory_indc,is_link_indc,linked_file_id,order_key,file_tag,allow_rename_indc,allow_delete_indc,url"; + + static readonly DB_CREATED_DATETIME: string = "created_datetime"; + static readonly DB_CREATED_BY: string = "created_by"; + static readonly DB_FILE_ID: string = "file_id"; + static readonly DB_UPLOAD_NAME: string = "upload_name"; + static readonly DB_FILE_CATEGORY: string = "file_category"; + static readonly DB_ORG_FILE_NAME: string = "org_file_name"; + static readonly DB_FILE_NAME: string = "file_name"; + static readonly DB_FILE_PATH: string = "file_path"; + static readonly DB_FOLDER_LOCAL_NAME: string = "folder_local_name"; + static readonly DB_FILE_SIZE: string = "file_size"; + static readonly DB_OWER_ID: string = "ower_id"; + static readonly DB_REVISION_NO: string = "revision_no"; + static readonly DB_IS_DIRECTORY_INDC: string = "is_directory_indc"; + static readonly DB_IS_LINK_INDC: string = "is_link_indc"; + static readonly DB_LINKED_FILE_ID: string = "linked_file_id"; + static readonly DB_ORDER_KEY: string = "order_key"; + static readonly DB_FILE_TAG: string = "file_tag"; + static readonly DB_ALLOW_RENAME_INDC: string = "allow_rename_indc"; + static readonly DB_ALLOW_DELETE_INDC: string = "allow_delete_indc"; + static readonly DB_URL: string = "url"; +} diff --git a/uniapp/youjiala/src/data/custom/gridColumn.ts b/uniapp/youjiala/src/data/custom/gridColumn.ts new file mode 100644 index 0000000..e1b5140 --- /dev/null +++ b/uniapp/youjiala/src/data/custom/gridColumn.ts @@ -0,0 +1,12 @@ +export class GridColumn { + public DisplayName: string = ""; + public ColumnName: string = ""; + public Sequence: number = 0; + public DisplayFunction: string = ""; + public DisplayHtml: boolean = false; + public Hidden: boolean = false; + + public Sortable: string = ""; + public Format: string = ""; + public FormatCSharp: string = ""; +} diff --git a/uniapp/youjiala/src/data/custom/searchFilterOperatorPolicy.ts b/uniapp/youjiala/src/data/custom/searchFilterOperatorPolicy.ts new file mode 100644 index 0000000..e735264 --- /dev/null +++ b/uniapp/youjiala/src/data/custom/searchFilterOperatorPolicy.ts @@ -0,0 +1,35 @@ +export class SearchFilterOperatorPolicy { + public static readonly EQUAL_TO: string = "equal_to"; + public static readonly CONTAIN: string = "contain"; + public static readonly START_CONTAIN: string = "start_contain"; + public static readonly END_CONTAIN: string = "end_contain"; + public static readonly CN_CONTAIN: string = "cn_contain"; + public static readonly CN_START_CONTAIN: string = "cn_start_contain"; + public static readonly CN_END_CONTAIN: string = "cn_end_contain"; + public static readonly IN_RANGE: string = "in_range"; + public static readonly NOT_IN_RANGE: string = "not_in_range"; + public static readonly NUMBER_GREATER_THAN: string = "number_greater_than"; + public static readonly NUMBER_GREATER_THAN_OR_EQUAL_TO: string + = "number_greater_than_or_equal_to"; + + public static readonly NUMBER_LESS_THAN: string = "number_less_than"; + public static readonly NUMBER_LESS_THAN_OR_EQUAL_TO: string + = "number_less_than_or_equal_to"; + + public static readonly NUMBER_EQUAL_TO: string = "number_equal_to"; + public static readonly BETWEEN: string = "between"; + public static readonly DATE_BETWEEN: string = "date_between"; + public static readonly DATE_GREATER_THAN: string = "date_greater_than"; + public static readonly DATE_GREATER_THAN_OR_EQUAL_TO: string + = "date_greater_than_or_equal_to"; + + public static readonly DATE_LESS_THAN: string = "date_less_than"; + public static readonly DATE_LESS_THAN_OR_EQUAL_TO: string + = "date_less_than_or_equal_to"; + + public static readonly DATE_EQUAL_TO: string = "date_equal_to"; + public static readonly CN_MULTIPLE: string = "cn_multiple"; + public static readonly CN_IN_RANGE: string = "cn_in_range"; + public static readonly MULTIPLE: string = "multiple"; + public static readonly SINGLE: string = "single"; +} diff --git a/uniapp/youjiala/src/data/custom/searchFilterTypePolicy.ts b/uniapp/youjiala/src/data/custom/searchFilterTypePolicy.ts new file mode 100644 index 0000000..822327e --- /dev/null +++ b/uniapp/youjiala/src/data/custom/searchFilterTypePolicy.ts @@ -0,0 +1,8 @@ +export class SearchFilterTypePolicy { + public static readonly TEXT: string = "Text"; + public static readonly TEXT_CONTAIN: string = "TextContain"; + public static readonly NUMBER: string = "Number"; + public static readonly DATE: string = "Date"; + public static readonly MULTIPLE_SELECTION: string = "MultipleSelection"; + public static readonly SINGLE_SELECTION: string = "SingleSelection"; +} diff --git a/uniapp/youjiala/src/data/custom/yesNoPolicy.ts b/uniapp/youjiala/src/data/custom/yesNoPolicy.ts new file mode 100644 index 0000000..f86a9f5 --- /dev/null +++ b/uniapp/youjiala/src/data/custom/yesNoPolicy.ts @@ -0,0 +1,4 @@ +export class YesNoPolicy { + public static readonly YES: string = "Y"; + public static readonly NO: string = "N"; +} diff --git a/uniapp/youjiala/src/locale/db.ts b/uniapp/youjiala/src/locale/db.ts new file mode 100644 index 0000000..24423c2 --- /dev/null +++ b/uniapp/youjiala/src/locale/db.ts @@ -0,0 +1,108 @@ +import type { LocaleEntity } from "@/data/auto/localeEntity"; +import { useLocale } from "uview-pro"; +import { toUiLocale } from "@/common/locale-const"; +import localeService from "@/service/security/localeService"; + +/** + * 数据库翻译合并(移植自旧项目 WebVue src/locales/index.ts 的 mergeDbLocaleMessages) + * + * 旧项目基于 vue-i18n 的 mergeLocaleMessage;本项目语言层是 uView Pro 的 + * config-provider(useLocale),没有 mergeLocaleMessage,但它把语言包以 + * 「带 name 字段的对象数组」存在响应式 ref 里,t() 按点路径实时解析。 + * 因此这里直接对 getLocales() 返回的语言对象做「就地深合并」, + * 依赖 Vue 深层响应式让界面文案在合并完成后自动刷新,效果等价于 mergeLocaleMessage。 + * + * 数据映射规则(与旧项目一致): + * Lang -> 语言 key(DB 存 zh-cn / en,经 toUiLocale 归一化到 uView 包名 zh-CN / en-US) + * GroupName -> 顶层分组(对应 json 文件名,如 login / layout / request) + * Name -> 点分隔的翻译 key(如 header.logout) + * Value -> 翻译文本 + */ + +/** 按点分隔路径写入嵌套对象,如 setByPath(obj, "header.logout", "退出") */ +function setByPath(target: Record, path: string, value: string) { + const parts = path.split("."); + let cur = target; + for (let i = 0; i < parts.length - 1; i++) { + const k = parts[i]; + // 仅当现有值是普通对象才下钻,否则用新对象覆盖,避免污染数组/字符串 + if (cur[k] == null || typeof cur[k] !== "object" || Array.isArray(cur[k])) { + cur[k] = {}; + } + cur = cur[k]; + } + cur[parts[parts.length - 1]] = value; +} + +/** 并发去重:同一时刻只允许一个 FindAll 在飞 */ +let pending: Promise | null = null; +/** 上次发起拉取的时间戳(无论成败),供 reloadLocales 节流 */ +let lastAttemptAt = 0; +/** 默认节流间隔(ms):连点语言切换不至于打爆接口 */ +const RELOAD_THROTTLE_MS = 3000; + +async function doMerge(): Promise { + // 记录「尝试」时刻而非「成功」时刻:接口失败/空数据时也能真正节流,避免连点反复重试 + lastAttemptAt = Date.now(); + try { + const list = await localeService.FindAll(); + if (!list || list.length === 0) { + return; + } + + // getLocales() 返回的数组元素与响应式语言包是同一批对象引用,就地改即生效 + const { getLocales } = useLocale(); + const locales = getLocales(); + const byName = new Map>( + locales.map((l: any) => [l.name as string, l]), + ); + + list.forEach((item: LocaleEntity) => { + if (!item.Lang || !item.Name || !item.Value) { + return; + } + const locale = byName.get(toUiLocale(item.Lang)); + // 只合并到已加载的语言包,未知语言直接跳过 + if (!locale) { + return; + } + const key = item.GroupName ? `${item.GroupName}.${item.Name}` : item.Name; + setByPath(locale, key, item.Value); + }); + } + catch (e) { + console.warn("加载数据库翻译失败,使用本地翻译文件", e); + } +} + +/** + * 拉取 /Locale/FindAll 并把结果合并进本地语言包。 + * 不 await:接口慢/失败不应阻塞启动,失败仅告警并沿用本地 JSON 文案。 + * 并发调用只会真正发一次请求(复用 in-flight promise)。 + */ +export function mergeDbLocaleMessages(): Promise { + if (pending) { + return pending; + } + pending = doMerge().finally(() => { + pending = null; + }); + return pending; +} + +/** + * 主动重载数据库翻译(开发期联调用)。 + * DB 词条改完后可不必整页刷新,调本函数即可让新值生效—— + * 合并是对 getLocales() 返回的活对象做原地写,uView 的 t() 实时取值,立刻可见。 + * @param throttleMs 距上次拉取小于该间隔则跳过,传 0 可强制重拉 + * @returns 是否真正发起了拉取(被节流跳过返回 false) + */ +export async function reloadLocales( + throttleMs: number = RELOAD_THROTTLE_MS, +): Promise { + if (Date.now() - lastAttemptAt < throttleMs) { + return false; + } + await mergeDbLocaleMessages(); + return true; +} diff --git a/uniapp/youjiala/src/locale/index.ts b/uniapp/youjiala/src/locale/index.ts new file mode 100644 index 0000000..eee531d --- /dev/null +++ b/uniapp/youjiala/src/locale/index.ts @@ -0,0 +1,5 @@ +import enUS from "./lang/en-US.json"; // 英文 +import zhCN from "./lang/zh-CN.json"; // 简体中文 + +export { enUS, zhCN }; +export { mergeDbLocaleMessages, reloadLocales } from "./db"; diff --git a/uniapp/youjiala/src/locale/lang/en-US.json b/uniapp/youjiala/src/locale/lang/en-US.json new file mode 100644 index 0000000..1574805 --- /dev/null +++ b/uniapp/youjiala/src/locale/lang/en-US.json @@ -0,0 +1,42 @@ +{ + "name": "en-US", + "LoginForm": { + "userLabel": "User ID:", + "passwordLabel": "Password:", + "loginBut": "Login", + "cancelBut": "Cancel", + "cultureLabel": "Language:" + }, + "ErrorPage": { + "reasonsTitle": "Possible reasons", + "fromLabel": "Failed address:", + "goLoginBut": "Sign in", + "reloginBut": "Sign in again", + "goHomeBut": "Back to home", + "goBackBut": "Go back", + "badge401": "UNAUTHORIZED · Not signed in", + "title401": "You need to sign in first", + "desc401": "Your session has expired, or you have not signed in yet. Sign in again to continue.", + "hint401": "Note: signing out on another device also invalidates this one.", + "r401_1": "Session expired: idle for too long, or the access token has expired", + "r401_2": "You signed out on another device or tab, so this device was invalidated", + "r401_3": "The browser cleared local data (private mode, cleared cache, another browser)", + "r401_4": "An administrator just changed your account information (password, phone number)", + "badge403": "FORBIDDEN · No permission", + "title403": "You have no permission for this page", + "desc403": "Your account is fine, but your role / permission group has not been granted this function.", + "hint403": "Note: permissions are assigned by administrators and take effect only after signing in again.", + "r403_1": "Your role / permission group does not include this function", + "r403_2": "The function has not been authorized in the backend, so the entry is visible but won't open", + "r403_3": "Permissions were just changed, and your local data still holds the old ones", + "r403_4": "Someone shared their link with you, but your account lacks the matching permission", + "badge404": "NOT FOUND · Page missing", + "title404": "This page does not exist", + "desc404": "The address may be wrong, or the page is no longer part of the system.", + "hint404": "Note: functions without permission are hidden from the menu, and opening their address lands here.", + "r404_1": "The address is misspelled, or was truncated when copied from chat or email", + "r404_2": "The function is not exposed in the menu (no such route in the system)", + "r404_3": "The page was taken offline or renamed, while your bookmark still holds the old address", + "r404_4": "The server just restarted and the menu has not loaded yet — refresh once" + } +} diff --git a/uniapp/youjiala/src/locale/lang/zh-CN.json b/uniapp/youjiala/src/locale/lang/zh-CN.json new file mode 100644 index 0000000..43a4a63 --- /dev/null +++ b/uniapp/youjiala/src/locale/lang/zh-CN.json @@ -0,0 +1,42 @@ +{ + "name": "zh-CN", + "LoginForm": { + "userLabel": "用户名:", + "passwordLabel": "密码:", + "loginBut": "登录", + "cancelBut": "取消", + "cultureLabel": "语言:" + }, + "ErrorPage": { + "reasonsTitle": "可能的原因", + "fromLabel": "出错的地址:", + "goLoginBut": "去登录", + "reloginBut": "重新登录", + "goHomeBut": "返回首页", + "goBackBut": "返回上一页", + "badge401": "UNAUTHORIZED · 未认证", + "title401": "需要登录后才能访问", + "desc401": "你的登录状态已经失效,或者还没有登录。重新登录一次即可继续。", + "hint401": "提示:登录后在其它设备退出登录,也会让当前设备失效。", + "r401_1": "登录已过期:长时间没有操作,或访问令牌到期", + "r401_2": "在其它设备或标签页退出了登录,当前设备随之失效", + "r401_3": "浏览器清理了本地数据(无痕模式、清理缓存、换浏览器)", + "r401_4": "管理员刚修改过你的账号信息(如密码、手机号)", + "badge403": "FORBIDDEN · 无权限", + "title403": "你没有这个页面的访问权限", + "desc403": "账号是正常的,但你所在的角色/权限组没有被授予这个功能。", + "hint403": "提示:权限由管理员分配,变更后需要重新登录才会生效。", + "r403_1": "当前账号所属的角色 / 权限组没有该功能的权限", + "r403_2": "该功能还没在后台授权,虽然能看到入口但打不开", + "r403_3": "权限刚被调整过,本地还是旧的权限数据", + "r403_4": "把别人的链接发给了你,而你的账号没有对应权限", + "badge404": "NOT FOUND · 找不到页面", + "title404": "这个页面不存在", + "desc404": "地址可能写错了,或者对应的页面已经不在系统里。", + "hint404": "提示:没有权限的功能不会出现在菜单里,地址直接打开也会落到这里。", + "r404_1": "地址拼错了,或从聊天/邮件里复制时被截断", + "r404_2": "该功能没有在菜单里开放(系统里查不到这条路由)", + "r404_3": "页面已下线或改名,收藏夹里还是旧地址", + "r404_4": "服务器刚重启、菜单还没加载出来,刷新一次即可" + } +} diff --git a/uniapp/youjiala/src/main.ts b/uniapp/youjiala/src/main.ts new file mode 100644 index 0000000..9effec0 --- /dev/null +++ b/uniapp/youjiala/src/main.ts @@ -0,0 +1,47 @@ +import * as Pinia from "pinia"; +import uViewPro, { httpPlugin } from "uview-pro"; +import { createSSRApp } from "vue"; +import { DEFAULT_LOCALE } from "@/common/locale-const"; +import themes from "@/common/uview-pro.theme"; +import { enUS, mergeDbLocaleMessages, zhCN } from "@/locale"; +// #ifdef H5 +import { registerCleanUrls } from "@/router/h5-clean-url"; +import { setupUnknownPathFallback } from "@/router/nav-guard"; +// #endif +import store from "@/stores"; +import App from "./App.vue"; +import { httpInterceptor, httpRequestConfig } from "./common/http.interceptor"; +import "uno.css"; + +// #ifdef H5 +// 为 /login、/dashboard 追加短地址路由记录,必须早于 uni-h5 创建 router +registerCleanUrls(); +// 地址栏是一个路由表里不存在的地址时,uni 只会白屏加一条 "No match found",这里兜底跳 404 +setupUnknownPathFallback(); +// #endif + +export function createApp() { + const app = createSSRApp(App); + app.use(uViewPro, { + theme: { + themes, + defaultTheme: "green", + defaultDarkMode: "light", + }, + locale: { + locales: [zhCN, enUS], + defaultLocale: DEFAULT_LOCALE, + }, + }); + app.use(httpPlugin, { + requestConfig: httpRequestConfig, + interceptor: httpInterceptor, + }); + app.use(store); + // 拉取数据库翻译并合并进本地语言包(不 await,避免接口慢/失败阻塞启动) + mergeDbLocaleMessages(); + return { + app, + Pinia, + }; +} diff --git a/uniapp/youjiala/src/manifest.json b/uniapp/youjiala/src/manifest.json new file mode 100644 index 0000000..5a46cbf --- /dev/null +++ b/uniapp/youjiala/src/manifest.json @@ -0,0 +1,104 @@ +{ + "name": "uView Pro Starter", + "appid": "__UNI__8BA4DF3", + "description": "uView Pro Starter", + "versionName": "1.0.0", + "versionCode": "1", + "transformPx": false, + "uniStatistics": { + "enable": false + }, + "app-plus": { + "usingComponents": true, + "nvueStyleCompiler": "uni-app", + "compilerVersion": 3, + "splashscreen": { + "alwaysShowBeforeRender": true, + "waiting": true, + "autoclose": true, + "delay": 0 + }, + "safearea": { + "background": "#ffffff", + "backgroundDark": "#2f0508", + "bottom": { + "offset": "none" + } + }, + "modules": {}, + "distribute": { + "android": { + "permissions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "ios": {}, + "sdkConfigs": {} + } + }, + "h5": { + "router": { + "mode": "history", + "base": "/" + }, + "darkmode": true, + "themeLocation": "theme.json" + }, + "quickapp": {}, + "mp-weixin": { + "appid": "wxbb176981bffc17fe", + "setting": { + "urlCheck": false + }, + "usingComponents": true, + "darkmode": true, + "themeLocation": "theme.json" + }, + "mp-alipay": { + "usingComponents": true + }, + "mp-baidu": { + "usingComponents": true + }, + "mp-toutiao": { + "usingComponents": true + }, + "vueVersion": "3", + "app-harmony": { + "darkmode": true, + "themeLocation": "theme.json", + "safearea": { + "background": "#ffffff", + "backgroundDark": "#2f0508", + "bottom": { + "offset": "none" + } + }, + "distribute": { + "bundleName": "cn.anyup.uviewpro", + "icons": { + "foreground": "unpackage/res/icons/1024x1024.png", + "background": "unpackage/res/icons/1024x1024.png" + }, + "splashScreens": { + "startWindowBackground": "#FFFFFF", + "startWindowIcon": "unpackage/res/icons/1024x1024.png" + }, + "signingConfigs": {} + } + } +} diff --git a/uniapp/youjiala/src/md/page-routing.md b/uniapp/youjiala/src/md/page-routing.md new file mode 100644 index 0000000..24c894d --- /dev/null +++ b/uniapp/youjiala/src/md/page-routing.md @@ -0,0 +1,301 @@ +# 页面路由与短地址规范 + +适用范围:`src/pages.json`、`src/manifest.json`、`src/router/routes.ts`、`src/router/h5-clean-url.ts`、`src/main.ts`。 +本文记录"为什么这么设计"和"新增页面要动哪几处",代码里的注释只解释局部行为,跨文件的约束以本文为准。 + +--- + +## 1. 目标:H5 地址形态 + +需求是**对齐旧 WebVue 系统的地址风格**(`https://uat.youjiala.com/dashboard`),同时保住 uni-app 的 `pages/` 目录结构。 + +| 阶段 | 地址 | 说明 | +| --- | --- | --- | +| 旧 WebVue | `/login`、`/dashboard` | vue-router 4 + `createWebHistory`,可自由定义 path | +| 本项目改造前 | `/#/pages/login/login` | hash 模式 + `pages.json` 的 path 字面即 URL | +| 中间态(被否决) | `/login`,但文件在 `src/login.vue` | 页面文件被迫上移到 `src` 根,放弃 `pages/` 约定 | +| 本项目现状 | `/login`、`/dashboard`,文件仍在 `pages/xxx/xxx.vue` | history 模式 + 运行时追加短地址路由记录 | + +三端最终形态: + +``` +src/pages/login/login.vue pages.json: pages/login/login URL / 和 /login +src/pages/dashboard/dashboard.vue pages.json: pages/dashboard/dashboard URL /dashboard +小程序 / App 端:只认真实路径 pages/login/login、pages/dashboard/dashboard +``` + +--- + +## 2. uni-app 的路由模型(与 vue-router 的本质差异) + +- **路由表编译期静态注册**:`pages.json` 的 `pages` 数组是唯一来源,没有 `router.addRoute`,没有嵌套路由,没有全局 `beforeEach`。 +- **URL 由 path 字面决定**:uni-h5-vite 的 `generatePageRoute` 生成 + + ```text + // uni-h5-vite/dist/pagesJson.js 逐字摘录(引号为原样,非项目代码) + const alias = isEntry ? `\n alias:'/${path}',` : ''; + return `{ path:'/${isEntry ? '' : path}',${alias} ...` + ``` + + 入口页被特殊映射为 `/`(真实路径记在 `alias` 与 `meta.route`),**其余页面的 URL 就是 `pages.json` 里 `path` 的逐字拷贝**。除入口页外,uni-app 没有任何"URL 重命名"配置项——这是整篇文档所有绕路的根源。 +- **导航 API 分端**:`uni.navigateTo / redirectTo / reLaunch / switchTab`,而不是 `router.push`。 +- **守卫靠拦截器**:`uni.addInterceptor`,不是路由中间件。 +- **产物里的路由表**:`window.__uniRoutes`,由 uni-h5 的 `initRouter(app)` 在插件 `install` 阶段拿去 `createRouter`。 + +--- + +## 3. 改动清单 + +### 3.1 短地址改造(第一轮) + +| 文件 | 改动 | +| --- | --- | +| `manifest.json` | `h5.router.mode = "history"`、`h5.router.base = "/"` | +| `pages.json` | `path` 保持带目录(`pages/login/login`);注释指向本文的登记要求 | +| `router/routes.ts` | 新增。`PAGE_PATHS` 映射表 + `toRealPath()` / `toCleanPath()` / `pageUrl()` | +| `router/h5-clean-url.ts` | 新增。往 `window.__uniRoutes` 追加短地址路由记录 | +| `main.ts` | `#ifdef H5` 引入并在模块体求值期调用 `registerCleanUrls()` | +| `common/http.interceptor.ts` | `loginPage = toRealPath("login")`;401 跳登录用 `uni.reLaunch({ url: pageUrl("login") })` | + +### 3.2 登录守卫 + 错误页(第二轮,见 §11) + +| 文件 | 改动 | +| --- | --- | +| `router/routes.ts` | 扩展:错误页登记、`CLEAN_PATH_OVERRIDES`、`AUTH_FREE_PAGES`、`PAGE_PERMISSIONS`、`resolvePageName()` / `errorPageUrl()` / `normalizePath()` | +| `router/nav-guard.ts` | 新增。`setupNavGuard()` / `ensureCurrentPageAuthorized()` / `setupUnknownPathFallback()` / `goLoginWithRedirect()` | +| `composables/useAuthGuard.ts` | 新增。页面级 `onShow` 复核(补冷启动深链那半边) | +| `components/error-panel/error-panel.vue` | 新增。401/403/404 共用外壳(移植旧 `ErrorPanel.vue`) | +| `pages/error/page40{1,3,4}.vue` | 新增。三个错误页 | +| `pages.json` | 注册 3 个错误页 | +| `App.vue` | `onLaunch` 调 `setupNavGuard()` | +| `main.ts` | H5 块内 `registerCleanUrls()` 之后调 `setupUnknownPathFallback()` | +| `common/http.interceptor.ts` | 非 2xx 分支新增 `statusCode === 403` → 跳 403 页 | +| `locale/lang/{zh-CN,en-US}.json` | 新增 `ErrorPage` 组 30 个键 | + +`history` 开关的读取路径:编译层特征开关 `__UNI_FEATURE_ROUTER_MODE__`,取自 `manifest.web || manifest.h5` 的 `router.mode`。 + +--- + +## 4. 短地址机制:追加克隆记录,而不是挂 alias + +### 4.1 第一版为什么错(实测抓到的真实故障) + +最初实现是给原路由记录挂 `alias: ["/dashboard"]`(数组)。结果症状是**割裂**的: + +- 浏览器地址栏直接输入 `/dashboard` → 能进(vue-router 自己支持数组 alias); +- 站内 `uni.reLaunch({ url: "/dashboard" })` → 报 `page \`/dashboard\` is not found`。 + +原因在 `node_modules/@dcloudio/uni-h5/dist/uni-h5.es.js` 两条硬约束: + +```text +// L1281 getRouteOptions(path, alias = false):uni 的导航层查表 +return __uniRoutes.find( + (route) => route.path === path || route.alias === path // 字符串全等,数组永不命中 +); + +// L6010 入口页在导航层被强制改写回根路径 +if (routeOptions.meta.isEntry) { + url = url.replace(routeOptions.alias, "/"); // alias 是数组时这行也是错的 +} +``` + +结论:**uni 的导航层不读 vue-router 的 alias 能力**,只认 `path` 精确匹配(alias 仅支持字符串全等);且带 `meta.isEntry` 的记录地址永远回落到 `/`,到不了 `/login`。 + +### 4.2 现方案 + +给每个页面**追加一条克隆路由记录**,`path` 用短地址,让 uni 的查表用 `path` 精确命中。 + +| 字段 | 处理 | 原因 | +| --- | --- | --- | +| `path` | 换成短地址 `/dashboard` | 让 `getRouteOptions` 第一条件命中 | +| `alias` | 删除 | 避免与真实路径互相干扰;也避开 `isEntry` 分支里的 `url.replace(alias, "/")` | +| `meta.isEntry` | 置 `undefined` | 否则地址栏被强改回 `/` | +| `meta.route` | **保持真实路径** | uni 的页面栈、导航栏样式等仍按真实路径查表 | +| `isCleanClone` | 标记 `true` | 二次注册时跳过克隆体,防止无限繁殖 | + +### 4.3 时序(为什么能赶上) + +`registerCleanUrls()` 在 `main.ts` 模块体求值期调用,而 `initRouter(app)` 要到插件 `install` 阶段才用**同一个数组引用**去 `createRouter`,所以追加必然被读进去。 + +两个分支都要覆盖,因为 pages 虚拟模块与本模块的求值先后不由我们控制: + +- `window.__uniRoutes` 已赋值 → 直接 `applyCleanUrls(数组)`; +- 尚未赋值 → `Object.defineProperty` 拦一次 `set`,在赋值瞬间完成注册。 + +### 4.4 跨端隔离 + +`h5-clean-url.ts` 只被 `#ifdef H5` 引入,实测产物命中数:H5 有、mp-weixin 0、app 0。 + +--- + +## 5. API 契约(写页面时必须遵守) + +`router/routes.ts` 是页面路径的唯一来源: + +```ts +export const PAGE_PATHS = { + login: "pages/login/login", + dashboard: "pages/dashboard/dashboard", + error401: "pages/error/page401", + error403: "pages/error/page403", + error404: "pages/error/page404", +} as const; +``` + +| 函数 | 用途 | 注意 | +| --- | --- | --- | +| `pageUrl(name)` | **跳转用的 URL** | H5 返回短地址,其他端返回真实路径(条件编译) | +| `toRealPath(name)` | **路径比较**、日志 | 永远带前导斜杠的真实路径 | +| `toCleanPath(name)` | 短地址推导 | 优先取 `CLEAN_PATH_OVERRIDES`,否则取路径最后一段 | +| `resolvePageName(url)` | 任意 URL → 页面名 | 认不出返回 `null`,守卫据此判 404;`"/"` 视为入口页 | +| `errorPageUrl(name, from?)` | 错误页地址 | 内部用 `normalizePath(from)` 清洗后拼进 `?from=`,**不做预编码**(见 §11.4) | +| `currentRealPath()` | 当前页真实路径 | 页面栈为空时返回空串 | +| `isAuthFree(name)` | 是否免登录页 | 数据源是 `AUTH_FREE_PAGES` | + +硬约束:**`getCurrentPages()` 返回的 `route` 永远是真实路径,不含运行时补的短地址**。所以任何"当前是不是某页"的判断只能用 `toRealPath()`,用 `pageUrl()` 比较在 H5 上会恒不等(`http.interceptor.ts` 的 `goLogin` 就是按这个写的)。 + +小程序 / App 端导航只能用真实路径——短地址在那些端根本不存在。 + +--- + +## 6. 新增页面的完整动作 + +``` +1. src/pages/album/album.vue 文件,目录名必须与文件名同名 +2. src/pages.json 追加 { "path": "pages/album/album" } +3. src/router/routes.ts 的 PAGE_PATHS 追加 album: "pages/album/album" +4. src/pages/album/album.vue 受登录保护的页面调一次 useAuthGuard() +``` + +第 2 步是**绝对必须**:`pages.json` 是编译期唯一注册入口,不写就没有这个页面。 +第 3 步的必须程度见下一节。 +第 4 步见 §11:站内跳转由全局拦截器兜住,但冷启动深链不经过任何导航 API,页面自己必须复核。 + +命名约定(第 1 步)不是审美问题,是功能要求:短地址由 `toCleanPath()` 取**最后一段**推出来,`pages/album/album.vue` → `/album`;若写成 `pages/album/index.vue`,短地址就成了 `/index`。 + +例外:错误页刻意写成 `pages/error/page401.vue`(末段是 `page401`),因为地址要与旧 WebVue 逐字一致的 `/error/page401`,这类情况用 `CLEAN_PATH_OVERRIDES` 指定短地址,而不是把文件改名为 `error/error.vue`。 + +--- + +## 7. 不登记 PAGE_PATHS 会怎样 + +页面**不会坏**,但会失去短地址,并且编译期被拦: + +1. `/pages/album/album` 真实路径照常可访问,深链、刷新、站内跳转都正常; +2. 短地址 `/album` 打不进去,控制台输出一条告警(`h5-clean-url.ts`): + + ``` + [h5-clean-url] 页面未登记到 PAGE_PATHS(router/routes.ts),仅真实路径可访问: /pages/album/album + ``` + +3. 只要代码里用 `pageUrl("album")` / `toRealPath("album")`,`PageName = keyof typeof PAGE_PATHS` 会让 TS 在编译期直接报错——这是有意的强制手段,比运行时静默失效应更早暴露。 + +另外两种会被跳过的情况(都有独立告警,不会静默): + +- **末段重名冲突**:`pages/a/user.vue` 与 `pages/b/user.vue` 都想占 `/user`,后到者被跳过并提示"短地址冲突,已跳过"。 +- **tabBar 页面**:明确**不注册短地址**(`h5-clean-url.ts` 的 `isTabBar` 分支)。tabBar 的路径判定依赖 `route.path.slice(1)`,克隆记录会干扰 `switchTab` / `preloadPage`。将来把首页做成 tabBar 时,它只能使用真实路径。 + +--- + +## 8. 当前没有做的事(已知缺口) + +- **权限守卫只做了一半**:登录守卫与 401/404 已落地(§11),但 `PAGE_PERMISSIONS` 还是空表——旧 WebVue 的 `setupPermissionGuard` 依赖 `PermissionContext.canView`(菜单/功能权限清单),那套体系尚未移植,所以页面级 403 目前只由请求层的 HTTP 403 触发。 +- **history 模式的服务端兜底**:`/login`、`/dashboard` 这类深链**直接刷新依赖服务端把请求 rewrite 回 `index.html`**。dev server(Vite)已实测返回 SPA 壳,但生产环境(如 `uat.youjiala.com` 的 Nginx)需要加 `try_files $uri $uri/ /index.html;` 一条,否则刷新会 404。这一条尚未在生产环境验证。 + +--- + +## 9. 验证记录 + +改造后跑过的验证,后续再动路由可比照执行: + +- **产物实锤**:`window.__uniRoutes` 含 `{path:"/",alias:"/pages/login/login"}`、`{path:"/pages/dashboard/dashboard"}`,以及追加的 `{path:"/login"}`、`{path:"/dashboard"}` 克隆记录;全程无 `#`。 +- **浏览器 8/8 用例全绿**:`/`、`/login`、`/dashboard` 深链直达 + 整页刷新;`001/123` 登录后 `reLaunch` 落到 `/dashboard`;上一轮失败的"站内跳 `/dashboard` 报 page is not found"已消失。 +- **HTTP 层**:`/`、`/login`、`/dashboard`、`/pages/dashboard/dashboard` 均返回含 `
` 的 SPA 壳。 +- **三端构建**:H5 / mp-weixin / app 均 `EXIT=0`;mp-weixin 的 `app.json` 中 `pages = login, dashboard`(根级 path 在小程序端合法)——注意该项属于中间态验证,现行结构为 `pages/xxx/xxx`。 +- **跨端隔离**:`h5-clean-url` 特征串仅在 H5 产物出现。 + +复查命令(PowerShell): + +```powershell +# 三端构建 +.\node_modules\.bin\uni.cmd build *> "$env:TEMP\_b1.log"; "H5_EXIT=$LASTEXITCODE" +.\node_modules\.bin\uni.cmd build -p mp-weixin *> "$env:TEMP\_b2.log"; "MP_EXIT=$LASTEXITCODE" +.\node_modules\.bin\uni.cmd build -p app *> "$env:TEMP\_b3.log"; "APP_EXIT=$LASTEXITCODE" + +# 产物里的路由表 +Select-String -Path ".\dist\build\h5\assets\*.js" -Pattern '__uniRoutes=\[' +``` + +浏览器侧的深链 / 地址栏 / 控制台表现无法用构建日志判定,必须真机或自动化实测。 + +--- + +## 10. 可优化项(未实现,需确认后再动) + +`PAGE_PATHS` 与 `pages.json` 目前是两处手工同步。可改为编译期自动生成,只保留"目录名 = 文件名"一条约定: + +```ts +import pagesJson from "@/pages.json"; // uni-app 支持 JSON 导入 +``` + +代价是失去 `PageName` 的字面量类型(跳转目标名不再是编译期校验),且要额外处理 `subPackages`。取舍未定,暂不动。 + +--- + +## 11. 登录守卫与 401/403/404(移植自旧 WebVue) + +### 11.1 为什么是"两条链路"而不是一条 + +旧系统是 vue-router 的 `router.beforeEach`,一个钩子覆盖所有进入方式。uni-app 没有等价物: + +- `uni.addInterceptor(api, { invoke })` 只作用在**调用导航 API 的那一次跳转**上(`navigateTo` / `redirectTo` / `reLaunch` / `switchTab`)。 +- **冷启动深链不经过任何导航 API**:H5 地址栏直接输入、分享链接打开、小程序"编译进入指定页面",都是 uni 自己解析出页面实例后直接 `onLoad/onShow`,拦截器一次都不会触发。 + +所以:`router/nav-guard.ts` 的 `setupNavGuard()` 管站内跳转,`composables/useAuthGuard.ts` 的页面级 `onShow` 复核管冷启动,缺一漏一半。 + +取消导航的机制(源码依据,`@dcloudio/uni-h5/dist/uni-h5.es.js`): + +```text +invokeApi -> queue(interceptor.invoke, options) +queue: res === false 时返回 { then(){}, catch(){} } 这样的空 thenable +``` + +即 `invoke` 返回 `false` 会让原调用被**静默丢弃**,既不会执行跳转,也不会给调用方留下未捕获的 promise rejection——所以守卫拦下来之后不需要调用方配合处理异常。 + +### 11.2 判定顺序与放行表 + +`evaluate(url)` 的顺序就是语义:地址不存在(404)→ 未登录(401)→ 无权限(403)。 + +- `AUTH_FREE_PAGES` = `login` + 三个错误页。**错误页必须免登录**:401 页就是给"没登录/登录失效"的人看的,拦掉它只会让用户看到一个登录框而不知道刚才为什么被踢。 +- 登录态只认请求层的 `getJwtInfo()?.AccessToken`(令牌唯一来源,与 `stores/loginProfile` 口径一致)。 +- 刻意**不**把已登录用户从 `/login` 弹回首页:403 页的"重新登录"按钮需要先能进入登录页。 +- 跳错误页用 `redirectTo`(保住返回栈,"返回上一页"才有内容),失败再退化成 `reLaunch`。 + +### 11.3 错误页与外壳组件 + +真实路径 `pages/error/page401` 经 `CLEAN_PATH_OVERRIDES` 得到短地址 `/error/page401`,与旧 WebVue 及 `WebSitePolicy.Web401/403/404` 逐字一致。三个页面共用 `components/error-panel/error-panel.vue`(对应旧 `ErrorPanel.vue`),它只管排版与 `tone` 三色(blue / amber / violet),文案、图标、按钮由各错误页给: + +| 页 | tone | 图标 | 主按钮 | 次按钮 | +| --- | --- | --- | --- | --- | +| 401 | blue | `lock-fill` | 去登录(带 redirect) | 返回上一页 | +| 403 | amber | `warning-fill` | 重新登录 | 返回首页 | +| 404 | violet | `map` | 返回首页 | 返回上一页 | + +旧版用 ant-design 图标和 ``,这里换成 `u-icon` + `u-button`(`u-button` 没有 `icon` 属性,故按钮只有文字),尺寸单位从 px 换成 rpx,头图顶部用 `var(--status-bar-height)` 适配 `navigationStyle: custom`。按钮间距写在容器的 `gap` 上——插槽内容属于各页面的作用域,错误页自己的 scoped 样式选不到它。 + +### 11.4 `?from=` / `?redirect=` 不做预编码 + +第一版用 `encodeURIComponent` 包了参数值,实测地址栏出现 `?from=%252Fdashboard`——uni 不会先解这一层,而 vue-router 拼 URL 用的是 `encodeURI`(不编码 `/`,但会把 `%` 编成 `%25`),于是被编码两次。现在只做 `normalizePath()` 清洗(剥 query/hash、补前导斜杠),参数值里只剩路径字符,地址栏呈现干净的 `?from=/dashboard`。页面侧仍用 `decodeQueryPath()` 兜底解一次,兼容各端 query 解码时机的差异。 + +### 11.5 403 的两个触发点 + +- 请求层:`common/http.interceptor.ts` 的非 2xx 分支里 `statusCode === 403` → `goForbidden()` 跳 403 页并带 `?from=`;已经在 403 页就不再跳,避免"错误页自己发的请求又 403"来回刷。 +- 导航层:等 `PAGE_PERMISSIONS` 与 `PermissionContext` 移植后接在 `evaluate()` 的第三步。 + +`goForbidden()` 在请求层自己实现而没有复用 `nav-guard` 的 `jumpToError`:`nav-guard` 依赖请求层读登录态,反向 import 会形成循环依赖。 + +### 11.6 词条与验证 + +- 文案全部走语言包:`locale/lang/{zh-CN,en-US}.json` 的 `ErrorPage` 组 30 个键;组件内固定的"可能的原因""出错的地址:"也在里面(`reasonsTitle` / `fromLabel`)。 +- 实测(H5 dev + 自动化浏览器):未登录深链 `/dashboard` → 401 页且 `from` 显示正确;401 的"去登录"→ `/login?redirect=/dashboard`;`001/123` 登录后回跳 `/dashboard`;`/no/such/page` → 404 页;404 的"返回首页"放行;清态后直访 `/error/page403` 不被再拦、无死循环;`window.__uniRoutes` 共 10 条(5 真 + 5 短地址克隆),全程零 console error/warn。 +- 三端构建 `EXIT=0`;`location.pathname` 仅出现在 H5 产物(`setupUnknownPathFallback` 的 `#ifdef H5` 生效),`page401` 三端产物均有。 diff --git a/uniapp/youjiala/src/pages.json b/uniapp/youjiala/src/pages.json new file mode 100644 index 0000000..dcc0911 --- /dev/null +++ b/uniapp/youjiala/src/pages.json @@ -0,0 +1,37 @@ +{ + "pages": [ + // 入口页在 H5 渲染在根路径;/login、/dashboard 等短地址由 router/h5-clean-url 运行时追加路由记录 + // 新增页面须同步登记 router/routes.ts 的 PAGE_PATHS,否则只有真实路径可访问 + { + "path": "pages/login/login" + }, + { + "path": "pages/dashboard/dashboard" + }, + // 错误页:H5 短地址由 CLEAN_PATH_OVERRIDES 指定为 /error/page40x,与旧 WebVue 地址一致 + { + "path": "pages/error/page401" + }, + { + "path": "pages/error/page403" + }, + { + "path": "pages/error/page404" + } + ], + // 全局配置 + "globalStyle": { + "backgroundColor": "@bgColor", + "backgroundColorBottom": "@bgColorBottom", + "backgroundColorTop": "@bgColorTop", + "backgroundTextStyle": "@bgTxtStyle", + "navigationBarBackgroundColor": "#000000", + "navigationBarTextStyle": "@navTxtStyle", + "navigationBarTitleText": "有家相册", + "navigationStyle": "custom" + }, + "easycom": { + "autoscan": true + }, + "subPackages": [] +} diff --git a/uniapp/youjiala/src/pages/dashboard/dashboard.vue b/uniapp/youjiala/src/pages/dashboard/dashboard.vue new file mode 100644 index 0000000..dafdcbb --- /dev/null +++ b/uniapp/youjiala/src/pages/dashboard/dashboard.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/uniapp/youjiala/src/pages/error/page401.vue b/uniapp/youjiala/src/pages/error/page401.vue new file mode 100644 index 0000000..17bd3cb --- /dev/null +++ b/uniapp/youjiala/src/pages/error/page401.vue @@ -0,0 +1,57 @@ + + + diff --git a/uniapp/youjiala/src/pages/error/page403.vue b/uniapp/youjiala/src/pages/error/page403.vue new file mode 100644 index 0000000..1e15061 --- /dev/null +++ b/uniapp/youjiala/src/pages/error/page403.vue @@ -0,0 +1,53 @@ + + + diff --git a/uniapp/youjiala/src/pages/error/page404.vue b/uniapp/youjiala/src/pages/error/page404.vue new file mode 100644 index 0000000..df58d39 --- /dev/null +++ b/uniapp/youjiala/src/pages/error/page404.vue @@ -0,0 +1,56 @@ + + + diff --git a/uniapp/youjiala/src/pages/login/login.vue b/uniapp/youjiala/src/pages/login/login.vue new file mode 100644 index 0000000..128b266 --- /dev/null +++ b/uniapp/youjiala/src/pages/login/login.vue @@ -0,0 +1,183 @@ + + + + + diff --git a/uniapp/youjiala/src/policy/custom/fileTypePolicy.ts b/uniapp/youjiala/src/policy/custom/fileTypePolicy.ts new file mode 100644 index 0000000..91221cb --- /dev/null +++ b/uniapp/youjiala/src/policy/custom/fileTypePolicy.ts @@ -0,0 +1,52 @@ +export class FileTypePolicy { + public static readonly VIDEO: string = "V"; + public static readonly AUDIO: string = "A"; + public static readonly PHOTO: string = "P"; + public static readonly DOCUMENT: string = "D"; + public static readonly LYRIC: string = "L"; + + isImage = (fileName: string) => { + if ( + fileName.toLowerCase().indexOf("png") > 0 + || fileName.toLowerCase().indexOf("jpg") > 0 + || fileName.toLowerCase().indexOf("jpeg") > 0 + || fileName.toLowerCase().indexOf("gif") > 0 + ) { + return true; + } + return false; + }; + + isVideo = (fileName: string) => { + if ( + fileName.toLowerCase().indexOf("mp4") > 0 + || fileName.toLowerCase().indexOf("mkv") > 0 + || fileName.toLowerCase().indexOf("mov") > 0 + || fileName.toLowerCase().indexOf("wmv") > 0 + || fileName.toLowerCase().indexOf("flv") > 0 + || fileName.toLowerCase().indexOf("rm") > 0 + || fileName.toLowerCase().indexOf("avi") > 0 + || fileName.toLowerCase().indexOf("mpeg") > 0 + ) { + return true; + } + return false; + }; + + isAudio = (fileName: string) => { + if ( + fileName.toLowerCase().indexOf("mp3") > 0 + || fileName.toLowerCase().indexOf("wav") > 0 + || fileName.toLowerCase().indexOf("flac") > 0 + || fileName.toLowerCase().indexOf("wma") > 0 + || fileName.toLowerCase().indexOf("ape") > 0 + || fileName.toLowerCase().indexOf("mid") > 0 + ) { + return true; + } + return false; + }; +} + +const fileTypePolicy = new FileTypePolicy(); +export default fileTypePolicy; diff --git a/uniapp/youjiala/src/policy/custom/webSitePolicy.ts b/uniapp/youjiala/src/policy/custom/webSitePolicy.ts new file mode 100644 index 0000000..9250e1b --- /dev/null +++ b/uniapp/youjiala/src/policy/custom/webSitePolicy.ts @@ -0,0 +1,22 @@ +export class WebSitePolicy { + static readonly Title: string = "有家相册"; + static readonly Copy: string + = "Copyright © 2024-2025 Cloud Builder All Rights Reserved."; + + static readonly WebApiRoot: string = "https://uat.youjiala.com"; + static readonly WebApiRootDevApp: string = "https://uat.youjiala.com"; + static readonly WebApiRootDev: string = "http://localhost:5235"; + static readonly WebSite: string = "http://192.168.195.68"; + static readonly WebProxyUrl: string = ""; + static readonly Dashboard: string = "/dashboard"; + static readonly Web401: string = "/error/page401"; + static readonly Web403: string = "/error/page403"; + static readonly Web404: string = "/error/page404"; + static readonly Logo: string = "/lib/admin-lte/dist/img/AdminLTELogo.png"; + static readonly RootDirectory: string = ""; + static readonly SystemEnvironment: string = "Dev"; + static readonly Beian: string = "闽ICP备2024046419号-1"; + static readonly LongDataFormatted: string = "yyyy-MM-dd HH:mm:ss"; + static readonly JsLongDataFormatted: string = "yyyy-mm-dd hh:ii"; + static readonly DataFormatted: string = "yyyy-MM-dd"; +} diff --git a/uniapp/youjiala/src/router/h5-clean-url.ts b/uniapp/youjiala/src/router/h5-clean-url.ts new file mode 100644 index 0000000..e6bb959 --- /dev/null +++ b/uniapp/youjiala/src/router/h5-clean-url.ts @@ -0,0 +1,130 @@ +/** + * H5 干净短地址:为每个页面追加一条短路径路由记录 + * + * 背景:uni-h5-vite 的 generatePageRoute 生成 `path:'/${isEntry ? '' : path}'`, + * 路由 path 就是 pages.json 里 path 的字面值,除入口页外没有任何 URL 重命名配置。 + * uni-h5 的 initRouter(app) 在插件 install 阶段才读取 window.__uniRoutes 去 createRouter, + * 且读的是同一个数组引用,因此在 createRouter 之前往数组里追加记录即可生效。 + * + * 为什么是"追加克隆记录"而不是"给原记录挂 alias": + * 1. uni-h5 的 getRouteOptions(path, true) 用 `route.alias === path` 字符串全等匹配, + * 数组形式的 alias 会让 uni.reLaunch 报 `page is not found`(深链能进、站内跳不进); + * 2. 带 meta.isEntry 的记录在导航层会被 `url.replace(routeOptions.alias, "/")` 强改回根路径, + * 地址栏到不了 /login;克隆体去掉 isEntry 才能保留短地址; + * 3. 克隆体沿用 meta.route = 真实路径,uni 的页面栈、导航栏样式等仍按真实路径工作。 + * + * 仅在 H5 引入(main.ts 用 #ifdef H5 包裹),其他端不会打进包里。 + */ +import type { PageName } from "@/router/routes"; +import { PAGE_PATHS, toCleanPath } from "@/router/routes"; + +interface UniRouteMeta { + route?: string; + isEntry?: boolean; + isTabBar?: boolean; + [key: string]: unknown; +} + +interface UniRouteRecord { + path: string; + alias?: string | string[]; + meta?: UniRouteMeta; + /** 标记本记录由本模块追加,避免被二次注册 */ + isCleanClone?: boolean; +} + +/** 已占用的地址:真实 path + 既有 alias(入口页的 alias 就是它的真实路径) */ +function collectTaken(routes: UniRouteRecord[]): Set { + const taken = new Set(); + routes.forEach((route) => { + taken.add(route.path); + if (typeof route.alias === "string") { + taken.add(route.alias); + } + else if (Array.isArray(route.alias)) { + route.alias.forEach(item => taken.add(item)); + } + }); + return taken; +} + +/** pages.json 的 path -> 页面名,用于套用 PAGE_PATHS 的短地址规则 */ +function toPageName(realPath: string): PageName | null { + const entry = (Object.entries(PAGE_PATHS) as [PageName, string][]).find( + ([, value]) => + `/${value}` === realPath || value === realPath.replace(/^\//, ""), + ); + return entry ? entry[0] : null; +} + +/** 复用原记录的 component/loader/meta,仅把 path 换成短地址 */ +function buildCleanRoute(route: UniRouteRecord, clean: string): UniRouteRecord { + const clone: UniRouteRecord = { ...route, path: clean, isCleanClone: true }; + delete clone.alias; + clone.meta = { ...route.meta, isEntry: undefined }; + return clone; +} + +function applyCleanUrls(routes: UniRouteRecord[]): void { + const taken = collectTaken(routes); + const additions: UniRouteRecord[] = []; + routes.forEach((route) => { + if (route.isCleanClone) { + // 本模块追加的克隆体不参与二次注册 + return; + } + // 入口页 path 是 "/",真实路径记在 meta.route(生成规则:(alias || path).slice(1)) + const realPath = route.meta?.route ? `/${route.meta.route}` : route.path; + const name = toPageName(realPath); + if (!name) { + // 漏登记不会导致页面坏掉(真实路径照常可用),但会丢掉短地址,显式提示 + console.warn( + "[h5-clean-url] 页面未登记到 PAGE_PATHS(router/routes.ts),仅真实路径可访问:", + realPath, + ); + return; + } + if (route.meta?.isTabBar) { + // tabBar 的路径判定依赖 route.path.slice(1),克隆记录会干扰 switchTab/preloadPage + console.warn("[h5-clean-url] tabBar 页面不注册短地址:", realPath); + return; + } + const clean = toCleanPath(name); + if (taken.has(clean)) { + console.warn( + "[h5-clean-url] 短地址冲突,已跳过:", + clean, + "<-", + realPath, + ); + return; + } + taken.add(clean); + additions.push(buildCleanRoute(route, clean)); + }); + // 遍历结束后再追加,避免边遍历边改数组 + additions.forEach(route => routes.push(route)); +} + +/** + * 必须在 uni-h5 创建 router 之前完成注册。 + * pages 虚拟模块与本模块的求值先后不由我们控制,故两种情况都要覆盖: + * 已赋值则直接改数组;未赋值则拦一次 setter,在赋值瞬间完成注册。 + */ +export function registerCleanUrls(): void { + const store = window as unknown as { __uniRoutes?: UniRouteRecord[] }; + if (Array.isArray(store.__uniRoutes)) { + applyCleanUrls(store.__uniRoutes); + return; + } + let routes: UniRouteRecord[] | undefined; + Object.defineProperty(window, "__uniRoutes", { + configurable: true, + enumerable: true, + get: () => routes, + set: (value: UniRouteRecord[]) => { + routes = value; + applyCleanUrls(value); + }, + }); +} diff --git a/uniapp/youjiala/src/router/nav-guard.ts b/uniapp/youjiala/src/router/nav-guard.ts new file mode 100644 index 0000000..42944da --- /dev/null +++ b/uniapp/youjiala/src/router/nav-guard.ts @@ -0,0 +1,131 @@ +/** + * 全局导航守卫(对应旧 WebVue 的 setupLoginGuard + catch-all 404) + * + * uni-app 没有 router.beforeEach,导航拦截靠 uni.addInterceptor: + * invoke 钩子返回 false 时本次导航被静默丢弃(uni-h5 的 queue 见 res === false 直接返回空 thenable, + * 既不执行原调用也不产生 promise rejection),所以取消导航不会给调用方留下未捕获异常。 + * + * 覆盖范围(两条链路都要,缺一漏一半): + * 1. 站内跳转:本文件的 addInterceptor,拦住 navigateTo/redirectTo/reLaunch/switchTab; + * 2. 冷启动直达:H5 地址栏输入 / 分享链接 / 小程序编译进某个页面,不经过任何导航 API, + * 拦截器拦不到,必须由页面自己调用 composables/useAuthGuard(页面级 onShow 校验)。 + */ +import type { ErrorPageName, PageName } from "@/router/routes"; +import { getJwtInfo } from "@/common/http.interceptor"; +import { + errorPageUrl, + isAuthFree, + normalizePath, + pageUrl, + resolvePageName, +} from "@/router/routes"; + +/** 需要拦的导航 API(switchTab 目前没有 tabBar 页,留着以免将来漏) */ +const NAV_APIS = ["navigateTo", "redirectTo", "reLaunch", "switchTab"]; + +/** 是否已登录:只认请求层的 AccessToken(令牌唯一来源,与 store 口径一致) */ +function isLoggedIn(): boolean { + return !!getJwtInfo()?.AccessToken; +} + +/** + * 判定目标地址该被拦成哪个错误页;返回 null 表示放行 + * + * 顺序即语义:地址不存在(404) -> 没登录(401) -> 没权限(403) + * 403 这层要等 PAGE_PERMISSIONS 与 PermissionContext 移植后接在这里 + */ +function evaluate(url: string): ErrorPageName | null { + const name: PageName | null = resolvePageName(url); + if (!name) { + return "error404"; + } + if (isAuthFree(name)) { + return null; + } + if (!isLoggedIn()) { + return "error401"; + } + return null; +} + +/** 跳错误页;redirectTo 保住返回栈("返回上一页"还有内容),页面栈为空时退化成 reLaunch */ +function jumpToError(blocked: ErrorPageName, from: string): void { + const url = errorPageUrl(blocked, from); + uni.redirectTo({ + url, + fail: () => { + uni.reLaunch({ url }); + }, + }); +} + +/** + * 冷启动/页面级校验:当前页面对象已由 uni 解析好,按真实路径判定 + * 返回 false 表示已被拦走,调用方(useAuthGuard)不必再做后续初始化 + */ +export function ensureCurrentPageAuthorized(): boolean { + const pages = getCurrentPages(); + const current = pages[pages.length - 1]; + if (!current) { + // 页面栈还没建立(启动极早期),交给页面自己的 useAuthGuard 再判一次 + return true; + } + const path = `/${current.route}`; + const blocked = evaluate(path); + if (!blocked) { + return true; + } + // getCurrentPages 只会给出真实路径,而 ?from= 是给用户看的:换成当前端的地址形态 + const name = resolvePageName(path); + jumpToError(blocked, name ? pageUrl(name) : path); + return false; +} + +/** 注册导航拦截器;在 App.vue 的 onLaunch 调用,确保首次站内跳转就被管住 */ +export function setupNavGuard(): void { + NAV_APIS.forEach((api) => { + uni.addInterceptor(api, { + invoke(args: { url?: string }) { + const url = args?.url ?? ""; + const blocked = evaluate(url); + if (!blocked) { + return true; + } + jumpToError(blocked, url); + // 取消本次导航 + return false; + }, + }); + }); +} + +/** + * H5 专属:地址栏直接访问一个不存在的地址时,uni 路由表里没有对应页面, + * 结果是白屏 + 一条 vue-router "No match found",且这条路径不经过导航 API,拦截器也管不到, + * 只能在启动时按 location.pathname 兜底跳 404。 + * + * 前提:manifest 的 h5.router.base 为 "/";改成子路径部署时这里要先剥掉 base 前缀。 + */ +export function setupUnknownPathFallback(): void { + // #ifdef H5 + if (resolvePageName(window.location.pathname)) { + return; + } + const from = `${window.location.pathname}${window.location.search}`; + // 延到下一个任务:此时 uni 已完成首屏路由解析,reLaunch 才作用在真实页面栈上 + setTimeout(() => { + uni.reLaunch({ url: errorPageUrl("error404", from) }); + }, 0); + // #endif +} + +/** + * 供页面把用户送回登录页(带 redirect,登录成功后回到原地址;缺省回 dashboard) + * redirect 与 from 一样不做预编码,理由见 routes.ts 的 errorPageUrl + */ +export function goLoginWithRedirect(from?: string): void { + const target = from && resolvePageName(from) ? from : pageUrl("dashboard"); + uni.reLaunch({ + url: `${pageUrl("login")}?redirect=${normalizePath(target)}`, + }); +} diff --git a/uniapp/youjiala/src/router/routes.ts b/uniapp/youjiala/src/router/routes.ts new file mode 100644 index 0000000..693e7f6 --- /dev/null +++ b/uniapp/youjiala/src/router/routes.ts @@ -0,0 +1,154 @@ +/** + * 页面路径的唯一来源 + * + * 约束(勿改): + * - PAGE_PATHS 的值必须与 pages.json 里的 path 字面一致; + * - 小程序 / App 端导航只能使用真实路径,且 getCurrentPages() 返回的 route 也是真实路径, + * 因此"路径比较"必须用 toRealPath(),只有"跳转用的 URL"才允许用 pageUrl(); + * - 详细设计与源码证据见 src/md/page-routing.md。 + */ +export const PAGE_PATHS = { + login: "pages/login/login", + dashboard: "pages/dashboard/dashboard", + error401: "pages/error/page401", + error403: "pages/error/page403", + error404: "pages/error/page404", +} as const; + +export type PageName = keyof typeof PAGE_PATHS; + +/** 错误页名(守卫与请求层按状态码跳页时只可能是这三个) */ +export type ErrorPageName = "error401" | "error403" | "error404"; + +/** + * 短地址覆盖表:默认短地址取路径最后一段(pages/album/album => /album), + * 错误页要与他系统(旧 WebVue、WebSitePolicy.Web401/403/404)逐字一致,故显式指定 + */ +const CLEAN_PATH_OVERRIDES: Partial> = { + error401: "/error/page401", + error403: "/error/page403", + error404: "/error/page404", +}; + +/** + * 免登录页面:登录页 + 三个错误页。 + * 错误页必须放行——401 页就是给"没登录/登录失效"的人看的,拦掉它只能看到登录框,看不到出错原因 + */ +export const AUTH_FREE_PAGES: PageName[] = [ + "login", + "error401", + "error403", + "error404", +]; + +/** + * 页面所需权限名(权限守卫用,格式同旧系统 meta.permission)。 + * 暂未接入:等菜单/功能权限体系移植时逐条填进来,缺省表示不校验 + */ +export const PAGE_PERMISSIONS: Partial> = {}; + +/** 带前导斜杠的真实路径,供 uni.* API 之外的路径比较、日志使用 */ +export function toRealPath(name: PageName): string { + return `/${PAGE_PATHS[name]}`; +} + +/** + * H5 干净短地址:优先取覆盖表,否则取真实路径的最后一段 + * 依赖项目约定"目录名与文件名同名"(pages/dashboard/dashboard.vue => /dashboard) + */ +export function toCleanPath(name: PageName): string { + const override = CLEAN_PATH_OVERRIDES[name]; + if (override) { + return override; + } + const segments = PAGE_PATHS[name].split("/").filter(Boolean); + return `/${segments[segments.length - 1]}`; +} + +/** + * 供 uni.navigateTo / reLaunch / redirectTo 使用的目标地址 + * H5 返回短地址(由 router/h5-clean-url 追加短地址路由记录,地址栏因此显示 /dashboard), + * 其他端返回真实路径 + */ +export function pageUrl(name: PageName): string { + let url = toRealPath(name); + // #ifdef H5 + url = toCleanPath(name); + // #endif + return url; +} + +/** + * 去 query/hash 并补前导斜杠:H5 入口页的路由 path 是 "/",也归一化成有效值。 + * 也是放进 ?from= / ?redirect= 前的清洗——保证参数值里只剩路径字符 + */ +export function normalizePath(url: string): string { + const pure = String(url || "") + .split("?")[0] + .split("#")[0]; + if (pure === "/" || pure === "") { + return "/"; + } + return pure.startsWith("/") ? pure : `/${pure}`; +} + +/** + * 任意 URL(真实路径 / H5 短地址 / 带 query 或 hash / 无前导斜杠)-> 页面名 + * 认不出即返回 null,调用方据此判定"地址不存在" + */ +export function resolvePageName(url: string): PageName | null { + const path = normalizePath(url); + const names = Object.keys(PAGE_PATHS) as PageName[]; + // "/" 是 H5 入口页(登录页)的路由 path,不对应任何字面配置 + if (path === "/") { + return "login"; + } + const hit = names.find( + name => path === toRealPath(name) || path === toCleanPath(name), + ); + return hit ?? null; +} + +/** + * 错误页地址:把出错的原地址用 ?from= 带过去,用户能一眼看出是哪个页面被拦。 + * 参数值只做 normalizePath 清洗、不做 encodeURIComponent:uni 不会先解这一层, + * 而 vue-router 拼 URL 用的是 encodeURI(不编码 /,但会把 % 编成 %25), + * 预编码只会让地址栏出现 ?from=%252Fdashboard 这种二次编码 + */ +export function errorPageUrl(name: ErrorPageName, from?: string): string { + const url = pageUrl(name); + if (!from) { + return url; + } + return `${url}?from=${normalizePath(from)}`; +} + +/** 当前页面真实路径(带前导斜杠);页面栈为空(启动极早期)返回空串 */ +export function currentRealPath(): string { + const pages = getCurrentPages(); + const current = pages[pages.length - 1]; + return current ? `/${current.route}` : ""; +} + +/** + * 读取守卫用 ?from= 带过来的地址。 + * 各端对 query 的解码时机不完全一致(H5 由 vue-router 解,小程序由平台解), + * 故兜底再解一次;残留孤立 % 时 decodeURIComponent 会抛 URIError,原样返回即可 + */ +export function decodeQueryPath(value: unknown): string { + const raw = typeof value === "string" ? value : ""; + if (!raw) { + return ""; + } + try { + return decodeURIComponent(raw); + } + catch { + return raw; + } +} + +/** 是否免登录页 */ +export function isAuthFree(name: PageName): boolean { + return AUTH_FREE_PAGES.includes(name); +} diff --git a/uniapp/youjiala/src/service/master/dmsFileService.ts b/uniapp/youjiala/src/service/master/dmsFileService.ts new file mode 100644 index 0000000..c13e785 --- /dev/null +++ b/uniapp/youjiala/src/service/master/dmsFileService.ts @@ -0,0 +1,352 @@ +import type { DmsFileDeleteLogEntity } from "@/data/auto/dmsFileDeleteLogEntity"; +import type { DmsFileEntity } from "@/data/auto/dmsFileEntity"; +import type { DmsFileResultData } from "@/data/auto/dmsFileResultData"; +import type { DmsFileSearchCriteria } from "@/data/auto/dmsFileSearchCriteria"; +import type { DmsFolderData } from "@/data/auto/dmsFolderData"; +import type { FamilyDmsFileViewEntity } from "@/data/auto/familyDmsFileViewEntity"; +import type { FamilyGroupFolderEntity } from "@/data/auto/familyGroupFolderEntity"; +import type { SelectOption } from "@/data/auto/selectOption"; +import { download, request } from "@/utils/request"; + +class DmsFileService { + async FindByKey(data: number) { + return request( + { + url: `/DmsFile/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: DmsFileSearchCriteria) { + return request( + { + url: "/DmsFile/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindDatasBySearchCriteria(data: DmsFileSearchCriteria) { + return request( + { + url: "/DmsFile/FindDatasBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindDeleteLogBySearchCriteria(data: DmsFileSearchCriteria) { + return request( + { + url: "/DmsFile/FindDeleteLogBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindFamilyBySearchCriteria(data: DmsFileSearchCriteria) { + return request( + { + url: "/DmsFile/FindFamilyBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindDmsFileDeleteLogByKey(data: number) { + return request( + { + url: `/DmsFile/FindDmsFileDeleteLogByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: DmsFileSearchCriteria) { + return download( + { + url: "/DmsFile/PrintBySearchCriteria", + method: "post", + data, + filename: "DmsFile", + }, + ); + }; + + async Insert(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: number) { + return request( + { + url: `/DmsFile/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async RestoreDmsFile(data: number) { + return request( + { + url: `/DmsFile/RestoreDmsFile?key=${data}`, + method: "post", + data, + }, + ); + }; + + async DeleteLog(data: number) { + return request( + { + url: `/DmsFile/DeleteLog?key=${data}`, + method: "post", + data, + }, + ); + }; + + async CreateDmsFolder(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/CreateDmsFolder", + method: "post", + data, + }, + ); + }; + + async DeleteFamilyDmsFolder(data: FamilyDmsFileViewEntity) { + return request( + { + url: "/DmsFile/DeleteFamilyDmsFolder", + method: "post", + data, + }, + ); + }; + + async CreateFamilyDmsFolder(data: FamilyDmsFileViewEntity) { + return request( + { + url: "/DmsFile/CreateFamilyDmsFolder", + method: "post", + data, + }, + ); + }; + + async UpdateDmsFolder(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/UpdateDmsFolder", + method: "post", + data, + }, + ); + }; + + async FindDmsFolders() { + return request( + { + url: "/DmsFile/FindDmsFolders", + method: "post", + }, + ); + }; + + async FindDmsFolderDeleteLogs() { + return request( + { + url: "/DmsFile/FindDmsFolderDeleteLogs", + method: "post", + }, + ); + }; + + async FindDmsFolderData() { + return request( + { + url: "/DmsFile/FindDmsFolderData", + method: "post", + }, + ); + }; + + async MoveDmsFolder(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/MoveDmsFolder", + method: "post", + data, + }, + ); + }; + + async UploadFile() { + return request( + { + url: "/DmsFile/UploadFile", + method: "post", + }, + ); + }; + + async UploadDmsFile() { + return request( + { + url: "/DmsFile/UploadDmsFile", + method: "post", + }, + ); + }; + + async FindM3u8Path(data: number) { + return request( + { + url: `/DmsFile/FindM3u8Path?fileId=${data}`, + method: "post", + data, + }, + ); + }; + + async FindSourceVideoPath(data: number) { + return request( + { + url: `/DmsFile/FindSourceVideoPath?fileId=${data}`, + method: "post", + data, + }, + ); + }; + + async FindDeleteLogM3u8Path(data: number) { + return request( + { + url: `/DmsFile/FindDeleteLogM3u8Path?fileId=${data}`, + method: "post", + data, + }, + ); + }; + + async DownloadFile(data: number) { + return request( + { + url: `/DmsFile/DownloadFile?fileId=${data}`, + method: "post", + data, + responseType: "arraybuffer", + }, + ); + }; + + async DownloadFilePreview(data: DmsFileEntity) { + return request( + { + url: "/DmsFile/DownloadFilePreview", + method: "post", + data, + responseType: "arraybuffer", + }, + ); + }; + + async DownloadFileCombine(data: string) { + return request( + { + url: `/DmsFile/DownloadFileCombine?fileName=${data}`, + method: "post", + data, + responseType: "arraybuffer", + }, + ); + }; + + async FindFamilyDmsFolders() { + return request( + { + url: "/DmsFile/FindFamilyDmsFolders", + method: "post", + }, + ); + }; + + async FindFamilyDmsFoldersByFamilyName(data: string) { + return request( + { + url: `/DmsFile/FindFamilyDmsFoldersByFamilyName?familyName=${data}`, + method: "post", + data, + }, + ); + }; + + async FindDmsFolderMapByFolderName(data: string) { + return request( + { + url: `/DmsFile/FindDmsFolderMapByFolderName?folderName=${data}`, + method: "post", + data, + }, + ); + }; + + async FindFolderNameParentByFolderName(data: string) { + return request( + { + url: `/DmsFile/FindFolderNameParentByFolderName?folderName=${data}`, + method: "post", + data, + }, + ); + }; + + async CreateFamilyGroupFolder(data: FamilyGroupFolderEntity[]) { + return request( + { + url: "/DmsFile/CreateFamilyGroupFolder", + method: "post", + data, + }, + ); + }; + + async DeleteFamilyGroupFolder(data: FamilyGroupFolderEntity[]) { + return request( + { + url: "/DmsFile/DeleteFamilyGroupFolder", + method: "post", + data, + }, + ); + }; +} + +const dmsFileService = new DmsFileService(); +export default dmsFileService; diff --git a/uniapp/youjiala/src/service/master/familyGroupService.ts b/uniapp/youjiala/src/service/master/familyGroupService.ts new file mode 100644 index 0000000..0a05598 --- /dev/null +++ b/uniapp/youjiala/src/service/master/familyGroupService.ts @@ -0,0 +1,164 @@ +import type { FamilyFolderFavoriteEntity } from "@/data/auto/familyFolderFavoriteEntity"; +import type { FamilyGroupData } from "@/data/auto/familyGroupData"; +import type { FamilyGroupManagerEntity } from "@/data/auto/familyGroupManagerEntity"; +import type { FamilyGroupManagerUserSearchCriteria } from "@/data/auto/familyGroupManagerUserSearchCriteria"; +import type { FamilyGroupPermissionEntity } from "@/data/auto/familyGroupPermissionEntity"; +import type { FamilyGroupResultData } from "@/data/auto/familyGroupResultData"; +import type { FamilyGroupSearchCriteria } from "@/data/auto/familyGroupSearchCriteria"; +import { download, request } from "@/utils/request"; + +class FamilyGroupService { + async FindByKey(data: string) { + return request( + { + url: `/FamilyGroup/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: FamilyGroupSearchCriteria) { + return request( + { + url: "/FamilyGroup/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindFamilyUserBySearchCriteria(data: FamilyGroupManagerUserSearchCriteria) { + return request( + { + url: "/FamilyGroup/FindFamilyUserBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FamilyFolderFavoriteBySearchCriteria(data: FamilyGroupManagerUserSearchCriteria) { + return request( + { + url: "/FamilyGroup/FamilyFolderFavoriteBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: FamilyGroupSearchCriteria) { + return download( + { + url: "/FamilyGroup/PrintBySearchCriteria", + method: "post", + data, + filename: "FamilyGroup", + }, + ); + }; + + async Insert(data: FamilyGroupData) { + return request( + { + url: "/FamilyGroup/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: FamilyGroupData) { + return request( + { + url: "/FamilyGroup/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/FamilyGroup/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async InsertFamilyGroupManager(data: FamilyGroupManagerEntity) { + return request( + { + url: "/FamilyGroup/InsertFamilyGroupManager", + method: "post", + data, + }, + ); + }; + + async InsertFamilyGroupPermission(data: FamilyGroupPermissionEntity[]) { + return request( + { + url: "/FamilyGroup/InsertFamilyGroupPermission", + method: "post", + data, + }, + ); + }; + + async UpdateFamilyGroupManager(data: FamilyGroupManagerEntity) { + return request( + { + url: "/FamilyGroup/UpdateFamilyGroupManager", + method: "post", + data, + }, + ); + }; + + async DeleteFamilyGroupManager(data: FamilyGroupManagerEntity) { + return request( + { + url: "/FamilyGroup/DeleteFamilyGroupManager", + method: "post", + data, + }, + ); + }; + + async InsertFamilyFolderFavorite(data: string) { + return request( + { + url: `/FamilyGroup/InsertFamilyFolderFavorite?folderName=${data}`, + method: "post", + data, + }, + ); + }; + + async DeleteFamilyFolderFavorite(data: string) { + return request( + { + url: `/FamilyGroup/DeleteFamilyFolderFavorite?folderName=${data}`, + method: "post", + data, + }, + ); + }; + + async DeleteFamilyFolderFavorites(data: FamilyFolderFavoriteEntity[]) { + return request( + { + url: "/FamilyGroup/DeleteFamilyFolderFavorites", + method: "post", + data, + }, + ); + }; +} + +const familyGroupService = new FamilyGroupService(); +export default familyGroupService; diff --git a/uniapp/youjiala/src/service/master/familyPersonService.ts b/uniapp/youjiala/src/service/master/familyPersonService.ts new file mode 100644 index 0000000..a4fa5ec --- /dev/null +++ b/uniapp/youjiala/src/service/master/familyPersonService.ts @@ -0,0 +1,90 @@ +import type { FamilyPersonData } from "@/data/auto/familyPersonData"; +import type { FamilyPersonEntity } from "@/data/auto/familyPersonEntity"; +import type { FamilyPersonResultData } from "@/data/auto/familyPersonResultData"; +import type { FamilyPersonSearchCriteria } from "@/data/auto/familyPersonSearchCriteria"; +import { download, request } from "@/utils/request"; + +class FamilyPersonService { + async FindAll() { + return request( + { + url: "/FamilyPerson/FindAll", + method: "post", + }, + ); + }; + + async FindByKey(data: string) { + return request( + { + url: `/FamilyPerson/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: FamilyPersonSearchCriteria) { + return request( + { + url: "/FamilyPerson/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: FamilyPersonSearchCriteria) { + return download( + { + url: "/FamilyPerson/PrintBySearchCriteria", + method: "post", + data, + filename: "FamilyPerson", + }, + ); + }; + + async Insert(data: FamilyPersonData) { + return request( + { + url: "/FamilyPerson/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: FamilyPersonData) { + return request( + { + url: "/FamilyPerson/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/FamilyPerson/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/FamilyPerson/Deletes", + method: "post", + data, + }, + ); + }; +} + +const familyPersonService = new FamilyPersonService(); +export default familyPersonService; diff --git a/uniapp/youjiala/src/service/master/familyTreeService.ts b/uniapp/youjiala/src/service/master/familyTreeService.ts new file mode 100644 index 0000000..82239f6 --- /dev/null +++ b/uniapp/youjiala/src/service/master/familyTreeService.ts @@ -0,0 +1,119 @@ +import type { FamilyTreeData } from "@/data/auto/familyTreeData"; +import type { FamilyTreeResultData } from "@/data/auto/familyTreeResultData"; +import type { FamilyTreeSearchCriteria } from "@/data/auto/familyTreeSearchCriteria"; +import { request } from "@/utils/request"; + +class FamilyTreeService { + async FindAllByTreeId(data: string) { + return request( + { + url: `/FamilyTree/FindAllByTreeId?treeId=${data}`, + method: "post", + data, + }, + ); + }; + + async FindByKey(data: string) { + return request( + { + url: `/FamilyTree/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindByCurrentPerson(data: any) { + return request( + { + url: "/FamilyTree/FindByCurrentPerson", + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: FamilyTreeSearchCriteria) { + return request( + { + url: "/FamilyTree/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async Insert(data: FamilyTreeData) { + return request( + { + url: "/FamilyTree/Insert", + method: "post", + data, + }, + ); + }; + + async RequestFamilyTreePermission(data: any) { + return request( + { + url: "/FamilyTree/RequestFamilyTreePermission", + method: "post", + data, + }, + ); + }; + + async ApproveFamilyTreePermission(data: any) { + return request( + { + url: "/FamilyTree/ApproveFamilyTreePermission", + method: "post", + data, + }, + ); + }; + + async RejectFamilyTreePermission(data: any) { + return request( + { + url: "/FamilyTree/RejectFamilyTreePermission", + method: "post", + data, + }, + ); + }; + + async Update(data: FamilyTreeData) { + return request( + { + url: "/FamilyTree/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/FamilyTree/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/FamilyTree/Deletes", + method: "post", + data, + }, + ); + }; +} + +const familyTreeService = new FamilyTreeService(); +export default familyTreeService; diff --git a/uniapp/youjiala/src/service/master/fileTypePolicyService.ts b/uniapp/youjiala/src/service/master/fileTypePolicyService.ts new file mode 100644 index 0000000..248d4f3 --- /dev/null +++ b/uniapp/youjiala/src/service/master/fileTypePolicyService.ts @@ -0,0 +1,17 @@ +import type { SelectOption } from "@/data/auto/selectOption"; +import { request } from "@/utils/request"; + +class FileTypePolicyService { + async FindSelectOption(data: any) { + return request( + { + url: `/FileTypePolicy/FindSelectOption?blank=${data}`, + method: "post", + data, + }, + ); + }; +} + +const fileTypePolicyService = new FileTypePolicyService(); +export default fileTypePolicyService; diff --git a/uniapp/youjiala/src/service/master/publishAudioService.ts b/uniapp/youjiala/src/service/master/publishAudioService.ts new file mode 100644 index 0000000..6058ee4 --- /dev/null +++ b/uniapp/youjiala/src/service/master/publishAudioService.ts @@ -0,0 +1,90 @@ +import type { PublishAudioData } from "@/data/auto/publishAudioData"; +import type { PublishAudioResultData } from "@/data/auto/publishAudioResultData"; +import type { PublishAudioSearchCriteria } from "@/data/auto/publishAudioSearchCriteria"; +import type { PublishData } from "@/data/auto/publishData"; +import { download, request } from "@/utils/request"; + +class PublishAudioService { + async FindByKey(data: string) { + return request( + { + url: `/PublishAudio/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: PublishAudioSearchCriteria) { + return request( + { + url: "/PublishAudio/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindPublishAudioDefault() { + return request( + { + url: "/PublishAudio/FindPublishAudioDefault", + method: "post", + }, + ); + }; + + async PrintBySearchCriteria(data: PublishAudioSearchCriteria) { + return download( + { + url: "/PublishAudio/PrintBySearchCriteria", + method: "post", + data, + filename: "PublishAudio", + }, + ); + }; + + async Insert(data: PublishAudioData) { + return request( + { + url: "/PublishAudio/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: PublishAudioData) { + return request( + { + url: "/PublishAudio/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/PublishAudio/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async InsertPublishAudioDetail(data: PublishData) { + return request( + { + url: "/PublishAudio/InsertPublishAudioDetail", + method: "post", + data, + }, + ); + }; +} + +const publishAudioService = new PublishAudioService(); +export default publishAudioService; diff --git a/uniapp/youjiala/src/service/master/publishPhotoService.ts b/uniapp/youjiala/src/service/master/publishPhotoService.ts new file mode 100644 index 0000000..c54f18f --- /dev/null +++ b/uniapp/youjiala/src/service/master/publishPhotoService.ts @@ -0,0 +1,111 @@ +import type { PublishData } from "@/data/auto/publishData"; +import type { PublishPhotoData } from "@/data/auto/publishPhotoData"; +import type { PublishPhotoDetailDisplayData } from "@/data/auto/publishPhotoDetailDisplayData"; +import type { PublishPhotoResultData } from "@/data/auto/publishPhotoResultData"; +import type { PublishPhotoSearchCriteria } from "@/data/auto/publishPhotoSearchCriteria"; +import { download, request } from "@/utils/request"; + +class PublishPhotoService { + async FindByKey(data: string) { + return request( + { + url: `/PublishPhoto/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: PublishPhotoSearchCriteria) { + return request( + { + url: "/PublishPhoto/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: PublishPhotoSearchCriteria) { + return download( + { + url: "/PublishPhoto/PrintBySearchCriteria", + method: "post", + data, + filename: "PublishPhoto", + }, + ); + }; + + async Insert(data: PublishPhotoData) { + return request( + { + url: "/PublishPhoto/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: PublishPhotoData) { + return request( + { + url: "/PublishPhoto/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/PublishPhoto/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindPublishPhotoDetailByPublishName(data: string) { + return request( + { + url: `/PublishPhoto/FindPublishPhotoDetailByPublishName?publishName=${data}`, + method: "post", + data, + }, + ); + }; + + async FindPublishPhotoDetail() { + return request( + { + url: "/PublishPhoto/FindPublishPhotoDetail", + method: "post", + }, + ); + }; + + async InsertPublishPhotoDetail(data: PublishData) { + return request( + { + url: "/PublishPhoto/InsertPublishPhotoDetail", + method: "post", + data, + }, + ); + }; + + async InsertPublishPhotoDetailByFamilyGroup(data: PublishData) { + return request( + { + url: "/PublishPhoto/InsertPublishPhotoDetailByFamilyGroup", + method: "post", + data, + }, + ); + }; +} + +const publishPhotoService = new PublishPhotoService(); +export default publishPhotoService; diff --git a/uniapp/youjiala/src/service/master/publishVideoService.ts b/uniapp/youjiala/src/service/master/publishVideoService.ts new file mode 100644 index 0000000..c74693c --- /dev/null +++ b/uniapp/youjiala/src/service/master/publishVideoService.ts @@ -0,0 +1,90 @@ +import type { PublishData } from "@/data/auto/publishData"; +import type { PublishVideoData } from "@/data/auto/publishVideoData"; +import type { PublishVideoResultData } from "@/data/auto/publishVideoResultData"; +import type { PublishVideoSearchCriteria } from "@/data/auto/publishVideoSearchCriteria"; +import { download, request } from "@/utils/request"; + +class PublishVideoService { + async FindByKey(data: string) { + return request( + { + url: `/PublishVideo/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: PublishVideoSearchCriteria) { + return request( + { + url: "/PublishVideo/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindPublishVideoDefault() { + return request( + { + url: "/PublishVideo/FindPublishVideoDefault", + method: "post", + }, + ); + }; + + async PrintBySearchCriteria(data: PublishVideoSearchCriteria) { + return download( + { + url: "/PublishVideo/PrintBySearchCriteria", + method: "post", + data, + filename: "PublishVideo", + }, + ); + }; + + async Insert(data: PublishVideoData) { + return request( + { + url: "/PublishVideo/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: PublishVideoData) { + return request( + { + url: "/PublishVideo/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/PublishVideo/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async InsertPublishVideoDetail(data: PublishData) { + return request( + { + url: "/PublishVideo/InsertPublishVideoDetail", + method: "post", + data, + }, + ); + }; +} + +const publishVideoService = new PublishVideoService(); +export default publishVideoService; diff --git a/uniapp/youjiala/src/service/security/authService.ts b/uniapp/youjiala/src/service/security/authService.ts new file mode 100644 index 0000000..63ae8ad --- /dev/null +++ b/uniapp/youjiala/src/service/security/authService.ts @@ -0,0 +1,141 @@ +import type { BiometricLoginChallengeDto } from "@/data/auto/biometricLoginChallengeDto"; +import type { BiometricRegistrationResultDto } from "@/data/auto/biometricRegistrationResultDto"; +import type { FinishBiometricLoginData } from "@/data/auto/finishBiometricLoginData"; +import type { FinishBiometricRegistrationData } from "@/data/auto/finishBiometricRegistrationData"; +import type { JwtInfo } from "@/data/auto/jwtInfo"; +import type { LoginData } from "@/data/auto/loginData"; +import type { LoginProfile } from "@/data/auto/loginProfile"; +import type { RegisterData } from "@/data/auto/registerData"; +import { request } from "@/utils/request"; + +class AuthService { + async Login(data: LoginData) { + return request( + { + url: "/Auth/Login", + method: "post", + data, + }, + ); + }; + + async LoginAgent(data: LoginData) { + return request( + { + url: "/Auth/LoginAgent", + method: "post", + data, + }, + ); + }; + + async Register(data: RegisterData) { + return request( + { + url: "/Auth/Register", + method: "post", + data, + }, + ); + }; + + async AmendPassword(data: LoginData) { + return request( + { + url: "/Auth/AmendPassword", + method: "post", + data, + }, + ); + }; + + async GetRsaPublicKey() { + return request( + { + url: "/Auth/GetRsaPublicKey", + method: "get", + }, + ); + }; + + async RefreshToken(data: JwtInfo) { + return request( + { + url: "/Auth/RefreshToken", + method: "post", + data, + }, + ); + }; + + async Logout() { + return request( + { + url: "/Auth/Logout", + method: "post", + }, + ); + }; + + async ConfirmPassword(data: string) { + return request( + { + url: `/Auth/ConfirmPassword?password=${data}`, + method: "post", + data, + }, + ); + }; + + async BeginBiometricRegistration(data: string) { + return request( + { + url: `/Auth/BeginBiometricRegistration?deviceName=${data}`, + method: "post", + data, + }, + ); + }; + + async FinishBiometricRegistration(data: FinishBiometricRegistrationData) { + return request( + { + url: "/Auth/FinishBiometricRegistration", + method: "post", + data, + }, + ); + }; + + async BeginBiometricLogin(data: string) { + return request( + { + url: `/Auth/BeginBiometricLogin?username=${data}`, + method: "post", + data, + }, + ); + }; + + async FinishBiometricLogin(data: FinishBiometricLoginData) { + return request( + { + url: "/Auth/FinishBiometricLogin", + method: "post", + data, + }, + ); + }; + + async RemoveBiometric() { + return request( + { + url: "/Auth/RemoveBiometric", + method: "post", + }, + ); + }; +} + +const authService = new AuthService(); +export default authService; diff --git a/uniapp/youjiala/src/service/security/localeService.ts b/uniapp/youjiala/src/service/security/localeService.ts new file mode 100644 index 0000000..4ce049f --- /dev/null +++ b/uniapp/youjiala/src/service/security/localeService.ts @@ -0,0 +1,100 @@ +import type { LocaleData } from "@/data/auto/localeData"; +import type { LocaleEntity } from "@/data/auto/localeEntity"; +import type { LocaleEntityKey } from "@/data/auto/localeEntityKey"; +import type { LocaleResultData } from "@/data/auto/localeResultData"; +import type { LocaleSearchCriteria } from "@/data/auto/localeSearchCriteria"; +import type { SelectOption } from "@/data/auto/selectOption"; +import { request } from "@/utils/request"; + +class LocaleService { + async FindAll() { + return request( + { + url: "/Locale/FindAll", + method: "get", + }, + ); + }; + + async FindSelectOption(data: any) { + return request( + { + url: "/Locale/FindSelectOption", + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: LocaleSearchCriteria) { + return request( + { + url: "/Locale/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindByKey(data: LocaleEntityKey) { + return request( + { + url: "/Locale/FindByKey", + method: "post", + data, + }, + ); + }; + + async Insert(data: LocaleEntity) { + return request( + { + url: "/Locale/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: LocaleEntity) { + return request( + { + url: "/Locale/Update", + method: "post", + data, + }, + ); + }; + + async UpdateLocaleData(data: LocaleData) { + return request( + { + url: "/Locale/UpdateLocaleData", + method: "post", + data, + }, + ); + }; + + async Delete(data: LocaleEntityKey) { + return request( + { + url: "/Locale/Delete", + method: "post", + data, + }, + ); + }; + + async Copy() { + return request( + { + url: "/Locale/Copy", + method: "get", + }, + ); + }; +} + +const localeService = new LocaleService(); +export default localeService; diff --git a/uniapp/youjiala/src/service/security/securityActorService.ts b/uniapp/youjiala/src/service/security/securityActorService.ts new file mode 100644 index 0000000..086f3fb --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityActorService.ts @@ -0,0 +1,99 @@ +import type { SecurityActorData } from "@/data/auto/securityActorData"; +import type { SecurityActorEntity } from "@/data/auto/securityActorEntity"; +import type { SecurityActorResultData } from "@/data/auto/securityActorResultData"; +import type { SecurityActorSearchCriteria } from "@/data/auto/securityActorSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityActorService { + async FindByKey(data: string) { + return request( + { + url: `/SecurityActor/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindAll() { + return request( + { + url: "/SecurityActor/FindAll", + method: "post", + }, + ); + }; + + async FindAllByNoPermission() { + return request( + { + url: "/SecurityActor/FindAllByNoPermission", + method: "post", + }, + ); + }; + + async FindBySearchCriteria(data: SecurityActorSearchCriteria) { + return request( + { + url: "/SecurityActor/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityActorSearchCriteria) { + return download( + { + url: "/SecurityActor/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityActor", + }, + ); + }; + + async Insert(data: SecurityActorData) { + return request( + { + url: "/SecurityActor/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityActorData) { + return request( + { + url: "/SecurityActor/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityActor/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/SecurityActor/Deletes", + method: "post", + data, + }, + ); + }; +} + +const securityActorService = new SecurityActorService(); +export default securityActorService; diff --git a/uniapp/youjiala/src/service/security/securityFunctionService.ts b/uniapp/youjiala/src/service/security/securityFunctionService.ts new file mode 100644 index 0000000..0e2db74 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityFunctionService.ts @@ -0,0 +1,101 @@ +import type { SecurityFunctionData } from "@/data/auto/securityFunctionData"; +import type { SecurityFunctionDisplayData } from "@/data/auto/securityFunctionDisplayData"; +import type { SecurityFunctionEntity } from "@/data/auto/securityFunctionEntity"; +import type { SecurityFunctionResultData } from "@/data/auto/securityFunctionResultData"; +import type { SecurityFunctionSearchCriteria } from "@/data/auto/securityFunctionSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityFunctionService { + async FindByKey(data: string) { + return request( + { + url: `/SecurityFunction/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: SecurityFunctionSearchCriteria) { + return request( + { + url: "/SecurityFunction/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityFunctionSearchCriteria) { + return download( + { + url: "/SecurityFunction/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityFunction", + }, + ); + }; + + async Insert(data: SecurityFunctionData) { + return request( + { + url: "/SecurityFunction/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityFunctionData) { + return request( + { + url: "/SecurityFunction/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityFunction/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/SecurityFunction/Deletes", + method: "post", + data, + }, + ); + }; + + async FindByFunctionName(data: string) { + return request( + { + url: `/SecurityFunction/FindByFunctionName?functionName=${data}`, + method: "post", + data, + }, + ); + }; + + async FindMenus() { + return request( + { + url: "/SecurityFunction/FindMenus", + method: "post", + }, + ); + }; +} + +const securityFunctionService = new SecurityFunctionService(); +export default securityFunctionService; diff --git a/uniapp/youjiala/src/service/security/securityGeneratorNumberService.ts b/uniapp/youjiala/src/service/security/securityGeneratorNumberService.ts new file mode 100644 index 0000000..dfd12b5 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityGeneratorNumberService.ts @@ -0,0 +1,70 @@ +import type { SecurityGeneratorNumberEntity } from "@/data/auto/securityGeneratorNumberEntity"; +import type { SecurityGeneratorNumberResultData } from "@/data/auto/securityGeneratorNumberResultData"; +import type { SecurityGeneratorNumberSearchCriteria } from "@/data/auto/securityGeneratorNumberSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityGeneratorNumberService { + async FindByKey(data: number) { + return request( + { + url: `/SecurityGeneratorNumber/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: SecurityGeneratorNumberSearchCriteria) { + return request( + { + url: "/SecurityGeneratorNumber/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityGeneratorNumberSearchCriteria) { + return download( + { + url: "/SecurityGeneratorNumber/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityGeneratorNumber", + }, + ); + }; + + async Insert(data: SecurityGeneratorNumberEntity) { + return request( + { + url: "/SecurityGeneratorNumber/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityGeneratorNumberEntity) { + return request( + { + url: "/SecurityGeneratorNumber/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: number) { + return request( + { + url: `/SecurityGeneratorNumber/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; +} + +const securityGeneratorNumberService = new SecurityGeneratorNumberService(); +export default securityGeneratorNumberService; diff --git a/uniapp/youjiala/src/service/security/securityGroupService.ts b/uniapp/youjiala/src/service/security/securityGroupService.ts new file mode 100644 index 0000000..c4bc798 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityGroupService.ts @@ -0,0 +1,90 @@ +import type { SecurityGroupData } from "@/data/auto/securityGroupData"; +import type { SecurityGroupEntity } from "@/data/auto/securityGroupEntity"; +import type { SecurityGroupResultData } from "@/data/auto/securityGroupResultData"; +import type { SecurityGroupSearchCriteria } from "@/data/auto/securityGroupSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityGroupService { + async FindByKey(data: string) { + return request( + { + url: `/SecurityGroup/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindAll() { + return request( + { + url: "/SecurityGroup/FindAll", + method: "post", + }, + ); + }; + + async FindBySearchCriteria(data: SecurityGroupSearchCriteria) { + return request( + { + url: "/SecurityGroup/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityGroupSearchCriteria) { + return download( + { + url: "/SecurityGroup/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityGroup", + }, + ); + }; + + async Insert(data: SecurityGroupData) { + return request( + { + url: "/SecurityGroup/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityGroupData) { + return request( + { + url: "/SecurityGroup/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityGroup/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/SecurityGroup/Deletes", + method: "post", + data, + }, + ); + }; +} + +const securityGroupService = new SecurityGroupService(); +export default securityGroupService; diff --git a/uniapp/youjiala/src/service/security/securityHelpFunctionService.ts b/uniapp/youjiala/src/service/security/securityHelpFunctionService.ts new file mode 100644 index 0000000..d82f023 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityHelpFunctionService.ts @@ -0,0 +1,149 @@ +import type { SecurityFunctionDisplayData } from "@/data/auto/securityFunctionDisplayData"; +import type { SecurityHelpFeatureData } from "@/data/auto/securityHelpFeatureData"; +import type { SecurityHelpFunctionData } from "@/data/auto/securityHelpFunctionData"; +import type { SecurityHelpFunctionResultData } from "@/data/auto/securityHelpFunctionResultData"; +import type { SecurityHelpFunctionSearchCriteria } from "@/data/auto/securityHelpFunctionSearchCriteria"; +import { request } from "@/utils/request"; + +class SecurityHelpFunctionService { + async FindByKey(data: string) { + return request( + { + url: `/SecurityHelpFunction/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindAll() { + return request( + { + url: "/SecurityHelpFunction/FindAll", + method: "post", + }, + ); + }; + + async FindBySearchCriteria(data: SecurityHelpFunctionSearchCriteria) { + return request( + { + url: "/SecurityHelpFunction/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindFeatureBySearchCriteria(data: SecurityHelpFunctionSearchCriteria) { + return request( + { + url: "/SecurityHelpFunction/FindFeatureBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async Insert(data: SecurityHelpFunctionData) { + return request( + { + url: "/SecurityHelpFunction/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityHelpFunctionData) { + return request( + { + url: "/SecurityHelpFunction/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityHelpFunction/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindByFunctionName(data: string) { + return request( + { + url: `/SecurityHelpFunction/FindByFunctionName?functionName=${data}`, + method: "post", + data, + }, + ); + }; + + async SaveFunction(data: SecurityHelpFunctionData) { + return request( + { + url: "/SecurityHelpFunction/SaveFunction", + method: "post", + data, + }, + ); + }; + + async DeleteByFunctionName(data: string) { + return request( + { + url: `/SecurityHelpFunction/DeleteByFunctionName?functionName=${data}`, + method: "post", + data, + }, + ); + }; + + async FindByGroupCode(data: string) { + return request( + { + url: `/SecurityHelpFunction/FindByGroupCode?groupCode=${data}`, + method: "post", + data, + }, + ); + }; + + async SaveFeatureGroup(data: SecurityHelpFeatureData) { + return request( + { + url: "/SecurityHelpFunction/SaveFeatureGroup", + method: "post", + data, + }, + ); + }; + + async DeleteByGroupCode(data: string) { + return request( + { + url: `/SecurityHelpFunction/DeleteByGroupCode?groupCode=${data}`, + method: "post", + data, + }, + ); + }; + + async FindFunctionNameOptions() { + return request( + { + url: "/SecurityHelpFunction/FindFunctionNameOptions", + method: "post", + }, + ); + }; +} + +const securityHelpFunctionService = new SecurityHelpFunctionService(); +export default securityHelpFunctionService; diff --git a/uniapp/youjiala/src/service/security/securityLockService.ts b/uniapp/youjiala/src/service/security/securityLockService.ts new file mode 100644 index 0000000..25d7702 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityLockService.ts @@ -0,0 +1,98 @@ +import type { SecurityLockEntity } from "@/data/auto/securityLockEntity"; +import type { SecurityLockEntityKey } from "@/data/auto/securityLockEntityKey"; +import { request } from "@/utils/request"; + +class SecurityLockService { + async FindByKey(data: SecurityLockEntityKey) { + return request( + { + url: "/SecurityLock/FindByKey", + method: "post", + data, + }, + ); + }; + + async Insert(data: SecurityLockEntity) { + return request( + { + url: "/SecurityLock/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityLockEntity) { + return request( + { + url: "/SecurityLock/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: SecurityLockEntityKey) { + return request( + { + url: "/SecurityLock/Delete", + method: "post", + data, + }, + ); + }; + + async IsLocked(data: any) { + return request( + { + url: "/SecurityLock/IsLocked", + method: "post", + data, + }, + ); + }; + + async Lock(data: any) { + return request( + { + url: "/SecurityLock/Lock", + method: "post", + data, + }, + ); + }; + + async ForceLock(data: any) { + return request( + { + url: "/SecurityLock/ForceLock", + method: "post", + data, + }, + ); + }; + + async ConsumeLock(data: any) { + return request( + { + url: "/SecurityLock/ConsumeLock", + method: "post", + data, + }, + ); + }; + + async ClearLock(data: any) { + return request( + { + url: "/SecurityLock/ClearLock", + method: "post", + data, + }, + ); + }; +} + +const securityLockService = new SecurityLockService(); +export default securityLockService; diff --git a/uniapp/youjiala/src/service/security/securityMasterService.ts b/uniapp/youjiala/src/service/security/securityMasterService.ts new file mode 100644 index 0000000..711edd8 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityMasterService.ts @@ -0,0 +1,90 @@ +import type { SecurityMasterEntity } from "@/data/auto/securityMasterEntity"; +import type { SecurityMasterEntityKey } from "@/data/auto/securityMasterEntityKey"; +import type { SecurityMasterResultData } from "@/data/auto/securityMasterResultData"; +import type { SecurityMasterSearchCriteria } from "@/data/auto/securityMasterSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityMasterService { + async FindByKey(data: SecurityMasterEntityKey) { + return request( + { + url: "/SecurityMaster/FindByKey", + method: "post", + data, + }, + ); + }; + + async FindAll() { + return request( + { + url: "/SecurityMaster/FindAll", + method: "get", + }, + ); + }; + + async FindBySearchCriteria(data: SecurityMasterSearchCriteria) { + return request( + { + url: "/SecurityMaster/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityMasterSearchCriteria) { + return download( + { + url: "/SecurityMaster/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityMaster", + }, + ); + }; + + async Insert(data: SecurityMasterEntity) { + return request( + { + url: "/SecurityMaster/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityMasterEntity) { + return request( + { + url: "/SecurityMaster/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: SecurityMasterEntityKey) { + return request( + { + url: "/SecurityMaster/Delete", + method: "post", + data, + }, + ); + }; + + async Deletes(data: SecurityMasterEntity[]) { + return request( + { + url: "/SecurityMaster/Deletes", + method: "post", + data, + }, + ); + }; +} + +const securityMasterService = new SecurityMasterService(); +export default securityMasterService; diff --git a/uniapp/youjiala/src/service/security/securityPermissionService.ts b/uniapp/youjiala/src/service/security/securityPermissionService.ts new file mode 100644 index 0000000..90767e7 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityPermissionService.ts @@ -0,0 +1,100 @@ +import type { SecurityPermissionData } from "@/data/auto/securityPermissionData"; +import type { SecurityPermissionResultData } from "@/data/auto/securityPermissionResultData"; +import type { SecurityPermissionSearchCriteria } from "@/data/auto/securityPermissionSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityPermissionService { + async FindByKey(data: string) { + return request( + { + url: `/SecurityPermission/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: SecurityPermissionSearchCriteria) { + return request( + { + url: "/SecurityPermission/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindDependentBySearchCriteria(data: SecurityPermissionSearchCriteria) { + return request( + { + url: "/SecurityPermission/FindDependentBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async FindDependentsBySearchCriteria(data: SecurityPermissionSearchCriteria) { + return request( + { + url: "/SecurityPermission/FindDependentsBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityPermissionSearchCriteria) { + return download( + { + url: "/SecurityPermission/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityPermission", + }, + ); + }; + + async Insert(data: SecurityPermissionData) { + return request( + { + url: "/SecurityPermission/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityPermissionData) { + return request( + { + url: "/SecurityPermission/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityPermission/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/SecurityPermission/Deletes", + method: "post", + data, + }, + ); + }; +} + +const securityPermissionService = new SecurityPermissionService(); +export default securityPermissionService; diff --git a/uniapp/youjiala/src/service/security/securityUserPreferenceService.ts b/uniapp/youjiala/src/service/security/securityUserPreferenceService.ts new file mode 100644 index 0000000..b22920d --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityUserPreferenceService.ts @@ -0,0 +1,70 @@ +import type { SecurityUserPreferenceEntity } from "@/data/auto/securityUserPreferenceEntity"; +import type { SecurityUserPreferenceEntityKey } from "@/data/auto/securityUserPreferenceEntityKey"; +import type { SecurityUserPreferenceSearchCriteria } from "@/data/auto/securityUserPreferenceSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityUserPreferenceService { + async FindByKey(data: SecurityUserPreferenceEntityKey) { + return request( + { + url: "/SecurityUserPreference/FindByKey", + method: "post", + data, + }, + ); + }; + + async FindBySearchCriteria(data: SecurityUserPreferenceSearchCriteria) { + return request( + { + url: "/SecurityUserPreference/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityUserPreferenceSearchCriteria) { + return download( + { + url: "/SecurityUserPreference/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityUserPreference", + }, + ); + }; + + async Insert(data: SecurityUserPreferenceEntity) { + return request( + { + url: "/SecurityUserPreference/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityUserPreferenceEntity) { + return request( + { + url: "/SecurityUserPreference/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: SecurityUserPreferenceEntityKey) { + return request( + { + url: "/SecurityUserPreference/Delete", + method: "post", + data, + }, + ); + }; +} + +const securityUserPreferenceService = new SecurityUserPreferenceService(); +export default securityUserPreferenceService; diff --git a/uniapp/youjiala/src/service/security/securityUserService.ts b/uniapp/youjiala/src/service/security/securityUserService.ts new file mode 100644 index 0000000..faed274 --- /dev/null +++ b/uniapp/youjiala/src/service/security/securityUserService.ts @@ -0,0 +1,120 @@ +import type { SecurityFunctionResultData } from "@/data/auto/securityFunctionResultData"; +import type { SecurityUserData } from "@/data/auto/securityUserData"; +import type { SecurityUserEntity } from "@/data/auto/securityUserEntity"; +import type { SecurityUserResultData } from "@/data/auto/securityUserResultData"; +import type { SecurityUserSearchCriteria } from "@/data/auto/securityUserSearchCriteria"; +import { download, request } from "@/utils/request"; + +class SecurityUserService { + async FindByStaffId(data: string) { + return request( + { + url: `/SecurityUser/FindByStaffId?staffid=${data}`, + method: "post", + data, + }, + ); + }; + + async FindByKey(data: string) { + return request( + { + url: `/SecurityUser/FindByKey?key=${data}`, + method: "post", + data, + }, + ); + }; + + async FindAll() { + return request( + { + url: "/SecurityUser/FindAll", + method: "post", + }, + ); + }; + + async FindBySearchCriteria(data: SecurityUserSearchCriteria) { + return request( + { + url: "/SecurityUser/FindBySearchCriteria", + method: "post", + data, + }, + ); + }; + + async PrintBySearchCriteria(data: SecurityUserSearchCriteria) { + return download( + { + url: "/SecurityUser/PrintBySearchCriteria", + method: "post", + data, + filename: "SecurityUser", + }, + ); + }; + + async Insert(data: SecurityUserData) { + return request( + { + url: "/SecurityUser/Insert", + method: "post", + data, + }, + ); + }; + + async Update(data: SecurityUserData) { + return request( + { + url: "/SecurityUser/Update", + method: "post", + data, + }, + ); + }; + + async Delete(data: string) { + return request( + { + url: `/SecurityUser/Delete?key=${data}`, + method: "post", + data, + }, + ); + }; + + async Deletes(data: string[]) { + return request( + { + url: "/SecurityUser/Deletes", + method: "post", + data, + }, + ); + }; + + async FindMenuByUsername() { + return request( + { + url: "/SecurityUser/FindMenuByUsername", + method: "post", + }, + ); + }; + + async UpdateLocalName(data: string) { + return request( + { + url: `/SecurityUser/UpdateLocalName?localName=${data}`, + method: "post", + data, + }, + ); + }; +} + +const securityUserService = new SecurityUserService(); +export default securityUserService; diff --git a/uniapp/youjiala/src/service/security/yesNoPolicyService.ts b/uniapp/youjiala/src/service/security/yesNoPolicyService.ts new file mode 100644 index 0000000..95e96ba --- /dev/null +++ b/uniapp/youjiala/src/service/security/yesNoPolicyService.ts @@ -0,0 +1,17 @@ +import type { SelectOption } from "@/data/auto/selectOption"; +import { request } from "@/utils/request"; + +class YesNoPolicyService { + async FindSelectOption(data: any) { + return request( + { + url: `/YesNoPolicy/FindSelectOption?blank=${data}`, + method: "post", + data, + }, + ); + }; +} + +const yesNoPolicyService = new YesNoPolicyService(); +export default yesNoPolicyService; diff --git a/uniapp/youjiala/src/static/logo.png b/uniapp/youjiala/src/static/logo.png new file mode 100644 index 0000000..ffeb00e Binary files /dev/null and b/uniapp/youjiala/src/static/logo.png differ diff --git a/uniapp/youjiala/src/stores/index.ts b/uniapp/youjiala/src/stores/index.ts new file mode 100644 index 0000000..a99ff80 --- /dev/null +++ b/uniapp/youjiala/src/stores/index.ts @@ -0,0 +1,18 @@ +import { createPinia } from "pinia"; +import { createPersistedState } from "pinia-plugin-persistedstate"; // 数据持久化 + +const pinia = createPinia(); + +pinia.use( + createPersistedState({ + storage: { + getItem: uni.getStorageSync, + setItem: uni.setStorageSync, + }, + }), +); + +export default pinia; + +export * from "./loginProfile"; +export * from "./tabbar"; diff --git a/uniapp/youjiala/src/stores/loginProfile.ts b/uniapp/youjiala/src/stores/loginProfile.ts new file mode 100644 index 0000000..35cabdc --- /dev/null +++ b/uniapp/youjiala/src/stores/loginProfile.ts @@ -0,0 +1,117 @@ +import type { JwtInfo } from "@/data/auto/jwtInfo"; +import type { LoginProfile } from "@/data/auto/loginProfile"; +import { defineStore } from "pinia"; +import { computed, ref } from "vue"; +import { + clearLoginState, + getJwtInfo, + setLoginJwt, +} from "@/common/http.interceptor"; +import { LoginProfile as LoginProfileModel } from "@/data/auto/loginProfile"; + +/** + * 登录档案 store(对齐旧项目 WebVue store/modules/loginProfile 的 API,便于后续整体移植) + * + * 方案 A 职责划分: + * - Token 的唯一来源是请求层 http.interceptor(单一请求链路,401 并发刷新也只认它); + * 本 store 不落地 Token,getToken/getJwtInfo 等一律转发到请求层,杜绝第二个数据源。 + * - 本 store 只负责「用户档案 + 权限」等展示字段的存取与持久化。 + */ + +// 语言偏好存储键(与旧项目命名保持一致) +const LOCALE_ID = "x-locale-id"; + +export const useLoginProfileStore = defineStore( + "loginProfile", + () => { + // 仅保存档案展示字段;持久化时通过 paths 排除 Token,避免陈旧与双源 + const loginProfile = ref(new LoginProfileModel()); + + // ===== 档案字段派生(对 UI 响应式) ===== + const username = computed(() => loginProfile.value.Username); + const userMobile = computed(() => loginProfile.value.UserMobile); + const userLocalName = computed(() => loginProfile.value.UserLocalName); + const userEngName = computed(() => loginProfile.value.UserEngName); + const userType = computed(() => loginProfile.value.UserType); + const permissionInfo = computed(() => loginProfile.value.PermissionInfo); + + // ===== 令牌读写:全部转发请求层,本 store 不持有 Token ===== + /** 是否已登录:以请求层令牌是否存在为准(每次实读,避免与刷新后的状态不一致) */ + function isLoggedIn(): boolean { + return !!getJwtInfo()?.AccessToken; + } + /** 当前 AccessToken(转发请求层) */ + function getToken(): string { + return getJwtInfo()?.AccessToken ?? ""; + } + /** 当前 RefreshToken(转发请求层) */ + function getRefreshToken(): string { + return getJwtInfo()?.RefreshToken ?? ""; + } + /** 完整令牌信息(转发请求层) */ + function getJwtInfoFromStorage(): JwtInfo | null { + return getJwtInfo(); + } + + // ===== 写入 ===== + /** 登录成功:保存档案,并把 Token 交给请求层保管 */ + function updateLoginProfile(profile: LoginProfile) { + loginProfile.value = profile; + if (profile?.Token) { + setLoginJwt(profile.Token); + } + } + + /** 仅更新档案(不改动登录态),供后续拉取用户信息时调用 */ + function setProfile(profile: LoginProfile) { + loginProfile.value = profile; + } + + // ===== 语言偏好 ===== + function setLocale(locale: string) { + uni.setStorageSync(LOCALE_ID, locale); + } + function getLocale(): string { + return (uni.getStorageSync(LOCALE_ID) as string) || ""; + } + + // ===== 清理 ===== + /** 退出/登录失效:清档案 + 清请求层登录态 */ + function clearStorage() { + loginProfile.value = new LoginProfileModel(); + clearLoginState(); + } + + return { + loginProfile, + username, + userMobile, + userLocalName, + userEngName, + userType, + permissionInfo, + isLoggedIn, + getToken, + getRefreshToken, + getJwtInfoFromStorage, + updateLoginProfile, + setProfile, + setLocale, + getLocale, + clearStorage, + }; + }, + { + persist: { + // 只持久化档案展示字段,Token 不落这里(防双源、防刷新后陈旧) + paths: [ + "loginProfile.UserType", + "loginProfile.Username", + "loginProfile.UserLocalName", + "loginProfile.UserEngName", + "loginProfile.UserMobile", + "loginProfile.PermissionInfo", + ], + }, + }, +); diff --git a/uniapp/youjiala/src/stores/tabbar.ts b/uniapp/youjiala/src/stores/tabbar.ts new file mode 100644 index 0000000..4f0275c --- /dev/null +++ b/uniapp/youjiala/src/stores/tabbar.ts @@ -0,0 +1,37 @@ +import type { TabbarItem } from "uview-pro/types/global"; +import { defineStore } from "pinia"; +import { ref } from "vue"; + +export const useTabbarStore = defineStore( + "tabbar", + () => { + const activeIndex = ref(0); + // 默认空列表:脚手架演示 tab(首页/关于)已随演示页一并移除。 + // 后续底部导航项由旧项目移植的菜单数据(/SecurityFunction/FindMenus)驱动, + // 在此按端需要填充,或整体改造成 pages.json 原生 tabBar。 + const tabbarList = ref([]); + + const setActiveIndex = (index: number) => { + activeIndex.value = index; + }; + + const updateBadge = (index: number, count: number) => { + tabbarList.value[index].count = count; + }; + + const updateIsDot = (index: number, isDot: boolean) => { + tabbarList.value[index].isDot = isDot; + }; + + return { + activeIndex, + tabbarList, + setActiveIndex, + updateBadge, + updateIsDot, + }; + }, + { + persist: true, + }, +); diff --git a/uniapp/youjiala/src/theme.json b/uniapp/youjiala/src/theme.json new file mode 100644 index 0000000..1d9b292 --- /dev/null +++ b/uniapp/youjiala/src/theme.json @@ -0,0 +1,26 @@ +{ + "light": { + "bgColor": "#fcfcfc", + "bgColorBottom": "#fcfcfc", + "bgColorTop": "#ff6b00", + "bgTxtStyle": "dark", + "navBgColor": "#ff6b00", + "navTxtStyle": "white", + "tabBgColor": "#fcfcfc", + "tabBorderStyle": "black", + "tabFontColor": "#1f2937", + "tabSelectedColor": "#ff6b00" + }, + "dark": { + "bgColor": "#181818", + "bgColorBottom": "#181818", + "bgColorTop": "#ff6b00", + "bgTxtStyle": "light", + "navBgColor": "#ff6b00", + "navTxtStyle": "white", + "tabBgColor": "#181818", + "tabBorderStyle": "white", + "tabFontColor": "#f3f4f6", + "tabSelectedColor": "#ff6b00" + } +} diff --git a/uniapp/youjiala/src/types/wxmp-rsa.d.ts b/uniapp/youjiala/src/types/wxmp-rsa.d.ts new file mode 100644 index 0000000..eb4fa82 --- /dev/null +++ b/uniapp/youjiala/src/types/wxmp-rsa.d.ts @@ -0,0 +1,13 @@ +// wxmp-rsa 未提供 TS 声明;它是 jsencrypt 的同源 fork(jsbn 实现、去 window 依赖),API 一致 +declare module "wxmp-rsa" { + export class JSEncrypt { + setPublicKey(key: string): void; + setPrivateKey(key: string): void; + encrypt(text: string): string | false; + decrypt(text: string): string | false; + sign(msg: string, digestAlgorithm?: string): string | false; + getPublicKey(nested?: boolean): string | false; + getPrivateKey(): string | false; + } + export default JSEncrypt; +} diff --git a/uniapp/youjiala/src/uni.scss b/uniapp/youjiala/src/uni.scss new file mode 100644 index 0000000..3c8e349 --- /dev/null +++ b/uniapp/youjiala/src/uni.scss @@ -0,0 +1,76 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ + +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ + +/* 颜色变量 */ + +/* 行为相关颜色 */ +$uni-color-primary: #007aff; +$uni-color-success: #4cd964; +$uni-color-warning: #f0ad4e; +$uni-color-error: #dd524d; + +/* 文字基本颜色 */ +$uni-text-color: #333; // 基本色 +$uni-text-color-inverse: #fff; // 反色 +$uni-text-color-grey: #999; // 辅助灰色,如加载更多的提示信息 +$uni-text-color-placeholder: #808080; +$uni-text-color-disable: #c0c0c0; + +/* 背景颜色 */ +$uni-bg-color: #fff; +$uni-bg-color-grey: #f8f8f8; +$uni-bg-color-hover: #f1f1f1; // 点击状态颜色 +$uni-bg-color-mask: rgba(0, 0, 0, 0.4); // 遮罩颜色 + +/* 边框颜色 */ +$uni-border-color: #c8c7cc; + +/* 尺寸变量 */ + +/* 文字尺寸 */ +$uni-font-size-sm: 12px; +$uni-font-size-base: 14px; +$uni-font-size-lg: 16px; + +/* 图片尺寸 */ +$uni-img-size-sm: 20px; +$uni-img-size-base: 26px; +$uni-img-size-lg: 40px; + +/* Border Radius */ +$uni-border-radius-sm: 2px; +$uni-border-radius-base: 3px; +$uni-border-radius-lg: 6px; +$uni-border-radius-circle: 50%; + +/* 水平间距 */ +$uni-spacing-row-sm: 5px; +$uni-spacing-row-base: 10px; +$uni-spacing-row-lg: 15px; + +/* 垂直间距 */ +$uni-spacing-col-sm: 4px; +$uni-spacing-col-base: 8px; +$uni-spacing-col-lg: 12px; + +/* 透明度 */ +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 + +/* 文章场景相关 */ +$uni-color-title: #2c405a; // 文章标题颜色 +$uni-font-size-title: 20px; +$uni-color-subtitle: #555; // 二级标题颜色 +$uni-font-size-subtitle: 18px; +$uni-color-paragraph: #3f536e; // 文章段落颜色 +$uni-font-size-paragraph: 15px; diff --git a/uniapp/youjiala/src/utils/request.ts b/uniapp/youjiala/src/utils/request.ts new file mode 100644 index 0000000..e10b976 --- /dev/null +++ b/uniapp/youjiala/src/utils/request.ts @@ -0,0 +1,84 @@ +import type { RequestMeta, RequestOptions } from "uview-pro"; +import { http } from "uview-pro"; +import { downloadFile, uploadFile } from "@/common/http.interceptor"; + +/** + * 代码生成的 service 层(src/service/**)专用适配入口 + * + * 生成器产物固定从 "@/utils/request" 导入 request / download / upload, + * 且调用特征与原 Web 项目(axios 版)一致: + * - method 传小写("post" / "get") + * - 不传 header / meta,仅有 url / data /(download 的)filename + * 本模块把该契约转发到本项目唯一请求层(uview-pro http + common/http.interceptor), + * 生成的 service 文件无需任何修改,重新生成后依然可用。 + */ + +/** 生成器使用的请求配置(宽松类型,容错) */ +export interface RequestConfigLite { + url: string; + /** 小写或大写均可,内部统一归一化 */ + method?: string; + data?: any; + header?: Record; + meta?: RequestMeta; + [key: string]: any; +} + +/** 生成器使用的下载配置(PrintBySearchCriteria 等报表导出) */ +export interface DownloadConfigLite { + url: string; + method?: string; + data?: any; + /** 文件名前缀,如 'FamilyPerson' */ + filename: string; + /** 扩展名,默认 xlsx */ + extension?: string; +} + +/** 上传配置(当前生成的 service 暂未用到,为原项目手工上传代码保留) */ +export interface UploadConfigLite { + url: string; + filePath: string; + name?: string; + formData?: Record; + header?: Record; +} + +/** + * 通用请求:返回后端 JSON body(LoginProfile / XxxResultData 等实体结构) + * 401 续期、业务异常提示均由 common/http.interceptor 统一处理 + */ +export async function request(config: RequestConfigLite): Promise { + return http.request({ + url: config.url, + // uni.request 要求 method 大写,生成器写的是小写,这里统一归一化 + method: String( + config.method ?? "get", + ).toUpperCase() as RequestOptions["method"], + data: config.data ?? {}, + header: config.header ?? {}, + meta: config.meta, + }); +} + +/** 报表下载:内部走 downloadFile(content-type 探测 + H5/小程序分流) */ +export async function download(config: DownloadConfigLite): Promise { + return downloadFile({ + url: config.url, + method: String(config.method ?? "post").toUpperCase() as "GET" | "POST", + data: config.data, + filename: config.filename, + extension: config.extension, + }); +} + +/** 文件上传 */ +export async function upload(config: UploadConfigLite): Promise { + return uploadFile({ + url: config.url, + filePath: config.filePath, + name: config.name, + formData: config.formData, + header: config.header, + }); +} diff --git a/uniapp/youjiala/tsconfig.json b/uniapp/youjiala/tsconfig.json new file mode 100644 index 0000000..2bfb936 --- /dev/null +++ b/uniapp/youjiala/tsconfig.json @@ -0,0 +1,41 @@ +{ + "compilerOptions": { + "target": "ESNext", + "jsx": "preserve", + "jsxImportSource": "vue", + "lib": ["DOM", "DOM.Iterable", "ESNext"], + "useDefineForClassFields": true, + "baseUrl": ".", + "module": "ESNext", + "moduleResolution": "Bundler", + "paths": { + "@/*": ["./src/*"] + }, + "resolveJsonModule": true, + "types": [ + "vite/client", + "@dcloudio/types", + "@mini-types/alipay", + "miniprogram-api-typings", + "z-paging/types", + "uview-pro/types", + "@uni-helper/uni-types" + ], + "strict": true, + "noImplicitThis": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "verbatimModuleSyntax": true, + "skipLibCheck": true + }, + "include": [ + "**/*.d.ts", + "src/**/*.ts", + "src/**/*.tsx", + "src/**/*.jsx", + "src/**/*.vue" + ], + "vueCompilerOptions": { + "plugins": ["@uni-helper/uni-types/volar-plugin"] + } +} diff --git a/uniapp/youjiala/uno.config.ts b/uniapp/youjiala/uno.config.ts new file mode 100644 index 0000000..f1dd35d --- /dev/null +++ b/uniapp/youjiala/uno.config.ts @@ -0,0 +1,28 @@ +import { presetUni } from '@uni-helper/unocss-preset-uni' + +import { + defineConfig, + presetIcons, + transformerDirectives, + transformerVariantGroup, +} from 'unocss' + +export default defineConfig({ + presets: [ + presetUni({ + attributify: false, + }), + presetIcons({ + scale: 1.2, + warn: true, + extraProperties: { + 'display': 'inline-block', + 'vertical-align': 'middle', + }, + }), + ], + transformers: [ + transformerDirectives(), + transformerVariantGroup(), + ], +}) diff --git a/uniapp/youjiala/vite.config.ts b/uniapp/youjiala/vite.config.ts new file mode 100644 index 0000000..677e263 --- /dev/null +++ b/uniapp/youjiala/vite.config.ts @@ -0,0 +1,40 @@ +import { fileURLToPath, URL } from 'node:url' + +import Uni from '@uni-helper/plugin-uni' +import Components from '@uni-helper/vite-plugin-uni-components' +import { uViewProResolver, ZPagingResolver } from '@uni-helper/vite-plugin-uni-components/resolvers' +import UnoCSS from 'unocss/vite' +import { UniRoot } from 'uview-pro/plugins' +import { defineConfig } from 'vite' + +export default defineConfig({ + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)), + }, + }, + plugins: [ + // https://github.com/anyup/uview-pro + UniRoot(), + // https://uni-helper.js.org/vite-plugin-uni-components + Components({ + dts: true, + resolvers: [ZPagingResolver(), uViewProResolver()], + }), + // https://uni-helper.js.org/plugin-uni + Uni(), + UnoCSS(), + ], + css: { + preprocessorOptions: { + scss: { + additionalData: '@import "uview-pro/theme.scss";', + }, + }, + }, + optimizeDeps: { + // wxmp-rsa: publishes ESM syntax but has no "module" field; explicit include avoids 504 Outdated Optimize Dep on first login page visit + include: ['wxmp-rsa'], + exclude: process.env.UNI_PLATFORM === 'h5' && process.env.NODE_ENV === 'development' ? ['uview-pro'] : [], + }, +})