From 457ec00abf3dbc49fca614a4e0a2ea122f7fad3f Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Tue, 06 Jan 2026 09:31:58 +0800
Subject: [PATCH] init app
---
uniapps/drone-app/env/.env.production | 5
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCloudImpl.js | 790 +
uniapps/drone-app/src/locales/langs/en.js | 11
uniapps/drone-app/src/static/images/tabbar/icon_order_selected.png | 0
uniapps/drone-app/src/static/images/tabbar/add.png | 0
uniapps/drone-app/project.config.json | 25
uniapps/drone-app/src/api/common/index.js | 8
uniapps/drone-app/src/subPackages/taskDetail/inProgress/index.vue | 61
uniapps/drone-app/env/.env | 17
uniapps/drone-app/src/api/inspectionTask.js | 10
uniapps/drone-app/src/utils/request/index.js | 56
uniapps/drone-app/eslint.config.js | 54
uniapps/drone-app/src/subPackages/taskDetail/execution/index.vue | 55
uniapps/drone-app/src/static/images/tabbar/drone.png | 0
uniapps/drone-app/src/manifest.json | 117
uniapps/drone-app/src/hooks/useTabAddButton.js | 11
uniapps/drone-app/.gitignore | 29
uniapps/drone-app/src/static/images/tabbar/icon_order.png | 0
uniapps/drone-app/src/subPackages/browser/index.vue | 39
uniapps/drone-app/src/utils/common/index.js | 93
uniapps/drone-app/src/hooks/index.js | 19
uniapps/drone-app/src/subPackages/taskDetail/addTask/index.vue | 85
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/permission.js | 279
uniapps/drone-app/src/static/images/tabbar/icon_order.svg | 8
uniapps/drone-app/src/static/images/pay.png | 0
uniapps/drone-app/src/router/index.js | 98
uniapps/drone-app/src/static/images/tabbar/add-work.svg | 10
uniapps/drone-app/src/config/env.js | 47
uniapps/drone-app/src/subPackages/workDetail/index.vue | 68
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/constants.js | 10
uniapps/drone-app/src/hooks/use-share/index.js | 46
uniapps/drone-app/src/static/fonts/font.css | 45
uniapps/drone-app/src/static/images/tabbar/icon_list_selected.png | 0
uniapps/drone-app/build/plugins/unocss.js | 9
uniapps/drone-app/src/pages/placeholder/placeholder.vue | 11
uniapps/drone-app/src/pages/user/index.vue | 228
uniapps/drone-app/src/static/images/tabbar/add-task.svg | 10
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcLocalView.nvue | 19
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/constants.js | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/._lib | 0
uniapps/drone-app/scripts/post-upgrade.js | 36
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcRemoteView.nvue | 23
uniapps/drone-app/src/static/images/tabbar/icon_home2.png | 0
uniapps/drone-app/src/hooks/use-modal/index.js | 24
uniapps/drone-app/src/static/images/yx.png | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/index.js | 0
uniapps/drone-app/src/static/images/tabbar/add.svg | 10
uniapps/drone-app/build/plugins/mcp.js | 9
uniapps/drone-app/src/utils/request/interceptors.js | 96
uniapps/drone-app/src/api/map.js | 9
uniapps/drone-app/src/static/images/app-logo.png | 0
uniapps/drone-app/src/utils/voiceCallByTX/index.js | 36
uniapps/drone-app/build/config/index.js | 1
uniapps/drone-app/build/plugins/cleanImage.js | 16
uniapps/drone-app/build/plugins/replaceUrl.js | 13
uniapps/drone-app/src/api/user/index.js | 80
uniapps/drone-app/src/subPackages/workDetail/mapWork/index.vue | 55
uniapps/drone-app/src/static/images/tabbar/icon_home.svg | 10
uniapps/drone-app/src/subPackages/workDetail/addWork/index.vue | 52
uniapps/drone-app/cz.config.js | 58
uniapps/drone-app/src/components/theme-picker/index.vue | 37
uniapps/drone-app/src/utils/index.js | 14
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._constants.js | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/PaxHeader/lib | 0
uniapps/drone-app/src/static/images/404.png | 0
uniapps/drone-app/build/plugins/component.js | 12
uniapps/drone-app/README.md | 352
uniapps/drone-app/index.html | 20
uniapps/drone-app/src/utils/voiceCallByTX/lib-generate-test-usersig-es.min.js | 2
uniapps/drone-app/src/locales/langs/zh-Hans.js | 11
uniapps/drone-app/src/pages/work/index.vue | 102
uniapps/drone-app/src/components/WebViewPlus.vue | 53
uniapps/drone-app/src/static/fonts/SourceHanSansCN-Regular.woff2 | 0
uniapps/drone-app/src/static/fonts/YouSheBiaoTiHei.TTF | 0
uniapps/drone-app/src/subPackages/userDetail/infos/index.vue | 307
uniapps/drone-app/build/plugins/index.js | 40
uniapps/drone-app/env/.env.development | 5
uniapps/drone-app/build/config/proxy.js | 25
pnpm-lock.yaml | 11081 ++++++++++++++++++++
uniapps/drone-app/src/hooks/use-location/index.js | 320
uniapps/drone-app/src/plugins/index.js | 20
uniapps/drone-app/src/static/fonts/SourceHanSansCN-Bold.woff2 | 0
uniapps/drone-app/vite.config.js | 61
uniapps/drone-app/src/static/images/tabbar/mainLogo.png | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCode.js | 0
uniapps/drone-app/src/App.vue | 76
uniapps/drone-app/src/static/images/tabbar/icon_me_selected.png | 0
uniapps/drone-app/stylelint.config.js | 58
uniapps/drone-app/src/plugins/permission.js | 56
uniapps/drone-app/src/utils/modals/index.js | 54
uniapps/drone-app/src/main.js | 27
uniapps/drone-app/src/static/images/sl.png | 0
uniapps/drone-app/src/plugins/ui.js | 45
uniapps/drone-app/src/subPackages/inspectionTask/taskDetails.vue | 59
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCloudImpl.js | 0
uniapps/drone-app/src/pages/inspectionTask/index.vue | 100
uniapps/drone-app/src/hooks/use-clipboard/index.js | 33
uniapps/drone-app/src/api/drone.js | 21
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcDefines.js | 0
uniapps/drone-app/uno.config.js | 83
uniapps/drone-app/src/static/images/tabbar/icon_home_selected.png | 0
uniapps/drone-app/.editorconfig | 22
uniapps/drone-app/src/hooks/use-permission/index.js | 10
uniapps/drone-app/build/plugins/visualizer.js | 23
uniapps/drone-app/src/static/images/tabbar/icon_list.png | 0
uniapps/drone-app/src/pages/map/drag.vue | 200
uniapps/drone-app/src/pages/login/index.vue | 294
uniapps/drone-app/src/hooks/use-loading/index.js | 24
uniapps/drone-app/src/static/images/tabbar/icon_me.svg | 7
uniapps/drone-app/src/pages/map/index.vue | 99
uniapps/drone-app/src/static/styles/common.scss | 8
uniapps/drone-app/src/subPackages/droneConsole/index.vue | 111
uniapps/drone-app/src/subPackages/qrCode/index.vue | 45
uniapps/drone-app/package.json | 154
uniapps/drone-app/project.private.config.json | 14
uniapps/drone-app/src/static/images/logo.png | 0
uniapps/drone-app/src/pages/dispatcher/index.vue | 85
uniapps/drone-app/src/utils/storage/index.js | 22
pnpm-workspace.yaml | 1
uniapps/drone-app/src/config/website.js | 83
uniapps/drone-app/src/static/images/tabbar/icon_order_selected.svg | 8
uniapps/drone-app/src/utils/request/status.js | 46
uniapps/drone-app/src/subPackages/workDetail/photoMagnify/index.vue | 26
uniapps/drone-app/src/subPackages/userDetail/password/index.vue | 240
uniapps/drone-app/src/hooks/use-theme/index.js | 47
uniapps/drone-app/src/pages/inspectionTask/AppPowerful.vue | 34
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._index.js | 0
uniapps/drone-app/src/store/index.js | 27
uniapps/drone-app/.npmrc | 12
uniapps/drone-app/src/components/lang-select/index.vue | 51
uniapps/drone-app/build/plugins/autoImport.js | 24
uniapps/drone-app/src/locales/index.js | 20
uniapps/drone-app/src/static/images/tabbar/icon_me_selected.svg | 7
uniapps/drone-app/src/uni.scss | 55
uniapps/drone-app/src/static/styles/theme.scss | 63
uniapps/drone-app/src/subPackages/theme/index.vue | 100
uniapps/drone-app/src/components/agree-privacy/index.vue | 214
uniapps/drone-app/src/store/modules/app/index.js | 81
uniapps/drone-app/src/components/.gitkeep | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCloudImpl.js | 0
uniapps/drone-app/src/subPackages/404/index.vue | 48
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/index.js | 1086 ++
uniapps/drone-app/src/hooks/useGlobalWS.js | 104
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcDefines.js | 0
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCode.js | 612 +
uniapps/drone-app/src/api/work/index.js | 62
uniapps/drone-app/src/static/images/tabbar/icon_list_selected.svg | 8
uniapps/drone-app/src/store/modules/user/index.js | 23
uniapps/drone-app/src/pages.json | 185
uniapps/drone-app/src/static/images/tabbar/icon_home_selected.svg | 10
uniapps/drone-app/src/static/images/tabbar/icon_me.png | 0
uniapps/drone-app/src/static/images/tabbar/icon_list.svg | 8
uniapps/drone-app/src/utils/voiceCallByTX/GenerateTestUserSig.js | 16
package.json | 3
uniapps/drone-app/pnpm-lock.yaml | 11430 +++++++++++++++++++++
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCode.js | 0
uniapps/drone-app/src/static/images/tabbar/icon_home1.png | 0
uniapps/drone-app/src/store/modules/map/index.js | 24
uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines.js | 522
159 files changed, 32,277 insertions(+), 96 deletions(-)
diff --git a/package.json b/package.json
index 688f24d..d6e9b91 100644
--- a/package.json
+++ b/package.json
@@ -22,7 +22,8 @@
},
"workspaces": [
"applications/*",
- "packages/*"
+ "packages/*",
+ "uniapps/*"
],
"keywords": [],
"author": "",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 942aaf9..0ea4d53 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -22,19 +22,19 @@
version: 2.2.0(@dvgis/dc-sdk@3.4.0)
'@element-plus/icons-vue':
specifier: ^2.3.1
- version: 2.3.2(vue@3.5.26)
+ version: 2.3.2(vue@3.5.26(typescript@5.9.3))
'@saber/nf-design-base-elp':
specifier: ^1.3.0
version: 1.3.0
'@saber/nf-form-design-elp':
specifier: ^1.4.1
- version: 1.6.1(vue@3.5.26)
+ version: 1.6.1(vue@3.5.26(typescript@5.9.3))
'@saber/nf-form-elp':
specifier: ^1.4.4
version: 1.6.3
'@smallwei/avue':
specifier: ^3.6.2
- version: 3.7.4(element-plus@2.9.11(vue@3.5.26))(vue@3.5.26)
+ version: 3.7.4(element-plus@2.9.11(vue@3.5.26(typescript@5.9.3)))(vue@3.5.26(typescript@5.9.3))
'@turf/turf':
specifier: ^6.5.0
version: 6.5.0
@@ -58,7 +58,7 @@
version: 4.1.1
avue-plugin-ueditor:
specifier: ^1.0.4
- version: 1.0.4(axios@1.13.2)(vue@3.5.26)
+ version: 1.0.4(axios@1.13.2)(vue@3.5.26(typescript@5.9.3))
axios:
specifier: ^1.8.3
version: 1.13.2
@@ -85,7 +85,7 @@
version: 5.6.0
element-plus:
specifier: 2.9.11
- version: 2.9.11(vue@3.5.26)
+ version: 2.9.11(vue@3.5.26(typescript@5.9.3))
eventemitter3:
specifier: ^5.0.1
version: 5.0.1
@@ -154,7 +154,7 @@
version: 11.1.0
vant:
specifier: ^4.9.21
- version: 4.9.22(vue@3.5.26)
+ version: 4.9.22(vue@3.5.26(typescript@5.9.3))
video.js:
specifier: ^8.23.4
version: 8.23.4
@@ -163,22 +163,22 @@
version: 1.0.1(video.js@8.23.4)
vue:
specifier: ^3.5.13
- version: 3.5.26
+ version: 3.5.26(typescript@5.9.3)
vue-i18n:
specifier: ^9.1.9
- version: 9.14.5(vue@3.5.26)
+ version: 9.14.5(vue@3.5.26(typescript@5.9.3))
vue-router:
specifier: ^4.3.2
- version: 4.6.4(vue@3.5.26)
+ version: 4.6.4(vue@3.5.26(typescript@5.9.3))
vue3-clipboard:
specifier: ^1.0.0
- version: 1.0.0(vue@3.5.26)
+ version: 1.0.0(vue@3.5.26(typescript@5.9.3))
vuedraggable:
specifier: ^4.1.0
- version: 4.1.0(vue@3.5.26)
+ version: 4.1.0(vue@3.5.26(typescript@5.9.3))
vuex:
specifier: ^4.1.0
- version: 4.1.0(vue@3.5.26)
+ version: 4.1.0(vue@3.5.26(typescript@5.9.3))
xlsx:
specifier: ^0.18.5
version: 0.18.5
@@ -188,7 +188,7 @@
version: 1.2.0(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))
'@vitejs/plugin-vue':
specifier: ^5.0.4
- version: 5.2.4(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))(vue@3.5.26)
+ version: 5.2.4(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))(vue@3.5.26(typescript@5.9.3))
'@vue/compiler-sfc':
specifier: ^3.4.27
version: 3.5.26
@@ -203,7 +203,7 @@
version: 5.44.1
unplugin-auto-import:
specifier: ^0.11.2
- version: 0.11.5(@vueuse/core@9.13.0(vue@3.5.26))(rollup@4.54.0)
+ version: 0.11.5(@vueuse/core@9.13.0(vue@3.5.26(typescript@5.9.3)))(rollup@4.54.0)
vite:
specifier: 5.2.12
version: 5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)
@@ -220,11 +220,11 @@
specifier: ^0.4.0
version: 0.4.0(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))
- applications/command-center-dashboard: {}
+ applications/drone-command: {}
applications/mobile-web-view: {}
- applications/task-mange: {}
+ applications/task-work-order: {}
packages/apis: {}
@@ -236,13 +236,357 @@
packages/utils: {}
+ uniapps/drone-app:
+ dependencies:
+ '@dcloudio/uni-app':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@dcloudio/types@3.4.28)(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-app-harmony':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-app-plus':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-components':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-h5':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-alipay':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-baidu':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@dcloudio/types@3.4.28)(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-harmony':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-jd':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-kuaishou':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-lark':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-qq':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-toutiao':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-weixin':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-xhs':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-quickapp-webview':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-ui':
+ specifier: ^1.5.11
+ version: 1.5.11
+ dayjs:
+ specifier: ^1.11.18
+ version: 1.11.19
+ js-audio-recorder:
+ specifier: ^1.0.7
+ version: 1.0.7
+ js-base64:
+ specifier: ^3.7.4
+ version: 3.7.8
+ js-md5:
+ specifier: ^0.7.3
+ version: 0.7.3
+ leaflet:
+ specifier: ^1.9.4
+ version: 1.9.4
+ pinia:
+ specifier: 2.2.4
+ version: 2.2.4(typescript@5.9.3)(vue@3.4.21(typescript@5.9.3))
+ pinia-plugin-persistedstate:
+ specifier: 4.1.3
+ version: 4.1.3(pinia@2.2.4(typescript@5.9.3)(vue@3.4.21(typescript@5.9.3)))
+ trtc-sdk-v5:
+ specifier: ^5.14.1
+ version: 5.14.1
+ uview-plus:
+ specifier: ^3.5.41
+ version: 3.6.29
+ vue:
+ specifier: 3.4.21
+ version: 3.4.21(typescript@5.9.3)
+ vue-i18n:
+ specifier: 9.1.9
+ version: 9.1.9(vue@3.4.21(typescript@5.9.3))
+ z-paging:
+ specifier: ^2.8.8
+ version: 2.8.8
+ devDependencies:
+ '@antfu/eslint-config':
+ specifier: 5.0.0
+ version: 5.0.0(@unocss/eslint-plugin@66.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@dcloudio/uni-automator':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(jest-environment-node@27.5.1)(jest@27.0.4)(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-cli-shared':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-stacktracey':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001
+ '@dcloudio/vite-plugin-uni':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@esbuild/darwin-arm64':
+ specifier: 0.25.1
+ version: 0.25.1
+ '@esbuild/darwin-x64':
+ specifier: 0.25.1
+ version: 0.25.1
+ '@iconify-json/mdi':
+ specifier: ^1.2.3
+ version: 1.2.3
+ '@rollup/rollup-darwin-arm64':
+ specifier: 4.38.0
+ version: 4.38.0
+ '@rollup/rollup-darwin-x64':
+ specifier: 4.38.0
+ version: 4.38.0
+ '@unocss/eslint-plugin':
+ specifier: ^66.3.3
+ version: 66.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@unocss/preset-icons':
+ specifier: ^66.3.3
+ version: 66.5.12
+ '@vue/runtime-core':
+ specifier: ^3.4.21
+ version: 3.5.26
+ czg:
+ specifier: ^1.12.0
+ version: 1.12.0
+ eslint:
+ specifier: ^9.32.0
+ version: 9.39.2(jiti@2.6.1)
+ lint-staged:
+ specifier: ^16.1.6
+ version: 16.2.7
+ miniprogram-api-typings:
+ specifier: ^4.1.0
+ version: 4.1.2
+ picocolors:
+ specifier: ^1.1.1
+ version: 1.1.1
+ rimraf:
+ specifier: ^6.0.1
+ version: 6.1.2
+ rollup-plugin-visualizer:
+ specifier: ^6.0.3
+ version: 6.0.5(rollup@4.54.0)
+ sass:
+ specifier: 1.79.6
+ version: 1.79.6
+ sass-loader:
+ specifier: ^16.0.4
+ version: 16.0.6(sass@1.79.6)
+ stylelint:
+ specifier: ^16.23.0
+ version: 16.26.1(typescript@5.9.3)
+ stylelint-config-recess-order:
+ specifier: ^6.1.0
+ version: 6.1.0(stylelint@16.26.1(typescript@5.9.3))
+ stylelint-config-standard:
+ specifier: ^39.0.0
+ version: 39.0.1(stylelint@16.26.1(typescript@5.9.3))
+ stylelint-config-standard-vue:
+ specifier: ^1.0.0
+ version: 1.0.0(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3))
+ unocss:
+ specifier: 65.5.0
+ version: 65.5.0(postcss@8.5.6)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ unocss-preset-weapp:
+ specifier: ^66.0.2
+ version: 66.0.2(@nuxt/kit@3.20.2)(esbuild@0.20.2)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ unplugin-auto-import:
+ specifier: 19.3.0
+ version: 19.3.0(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))
+ unplugin-vue-components:
+ specifier: ^28.8.0
+ version: 28.8.0(@babel/parser@7.28.5)(@nuxt/kit@3.20.2)(vue@3.4.21(typescript@5.9.3))
+ vite:
+ specifier: 5.2.8
+ version: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ vite-plugin-clean-build:
+ specifier: ^1.4.1
+ version: 1.4.1(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ vite-plugin-replace-image-url:
+ specifier: ^1.4.1
+ version: 1.4.1(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ vite-plugin-restart:
+ specifier: ^1.0.0
+ version: 1.0.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ vite-plugin-vue-mcp:
+ specifier: ^0.3.2
+ version: 0.3.2(hono@4.11.3)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+
packages:
'@amap/amap-jsapi-loader@1.0.1':
resolution: {integrity: sha512-nPyLKt7Ow/ThHLkSvn2etQlUzqxmTVgK7bIgwdBRTg2HK5668oN7xVxkaiRe3YZEzGzfV2XgH5Jmu2T73ljejw==}
+ '@ampproject/remapping@2.3.0':
+ resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
+ engines: {node: '>=6.0.0'}
+
+ '@antfu/eslint-config@5.0.0':
+ resolution: {integrity: sha512-uAMv8PiW9BOAGmIyTDtWXGnNfv6PFV4DmpqmlUpST5k4bue38VRdIfnM4jvgPuny1xnjYX3flN3kB9++6LknMw==}
+ hasBin: true
+ peerDependencies:
+ '@eslint-react/eslint-plugin': ^1.38.4
+ '@next/eslint-plugin-next': ^15.4.0-canary.115
+ '@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-react-hooks: ^5.2.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-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
+
+ '@antfu/install-pkg@1.1.0':
+ resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==}
+
'@antfu/utils@0.7.10':
resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
+
+ '@antfu/utils@8.1.1':
+ resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==}
+
+ '@antfu/utils@9.3.0':
+ resolution: {integrity: sha512-9hFT4RauhcUzqOE4f1+frMKLZrgNog5b06I7VmZQV1BkvwvqrbC8EBZf3L1eEL2AKb6rNKjER0sEvJiSP1FXEA==}
+
+ '@babel/code-frame@7.27.1':
+ resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/compat-data@7.28.5':
+ resolution: {integrity: sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/core@7.28.5':
+ resolution: {integrity: sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/generator@7.28.5':
+ resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-annotate-as-pure@7.27.3':
+ resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-compilation-targets@7.27.2':
+ resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-create-class-features-plugin@7.28.5':
+ resolution: {integrity: sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-create-regexp-features-plugin@7.28.5':
+ resolution: {integrity: sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-define-polyfill-provider@0.6.5':
+ resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ '@babel/helper-globals@7.28.0':
+ resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-member-expression-to-functions@7.28.5':
+ resolution: {integrity: sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-imports@7.27.1':
+ resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-transforms@7.28.3':
+ resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-optimise-call-expression@7.27.1':
+ resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-plugin-utils@7.27.1':
+ resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-remap-async-to-generator@7.27.1':
+ resolution: {integrity: sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-replace-supers@7.27.1':
+ resolution: {integrity: sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==}
+ engines: {node: '>=6.9.0'}
'@babel/helper-string-parser@7.27.1':
resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
@@ -252,21 +596,512 @@
resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
engines: {node: '>=6.9.0'}
+ '@babel/helper-validator-option@7.27.1':
+ resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-wrap-function@7.28.3':
+ resolution: {integrity: sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helpers@7.28.4':
+ resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==}
+ engines: {node: '>=6.9.0'}
+
'@babel/parser@7.28.5':
resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==}
engines: {node: '>=6.0.0'}
hasBin: true
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5':
+ resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1':
+ resolution: {integrity: sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1':
+ resolution: {integrity: sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1':
+ resolution: {integrity: sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.13.0
+
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3':
+ resolution: {integrity: sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2':
+ resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-async-generators@7.8.4':
+ resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-bigint@7.8.3':
+ resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-class-properties@7.12.13':
+ resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-class-static-block@7.14.5':
+ resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-assertions@7.27.1':
+ resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-attributes@7.27.1':
+ resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-meta@7.10.4':
+ resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-json-strings@7.8.3':
+ resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-jsx@7.27.1':
+ resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-logical-assignment-operators@7.10.4':
+ resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3':
+ resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-numeric-separator@7.10.4':
+ resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-object-rest-spread@7.8.3':
+ resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-optional-catch-binding@7.8.3':
+ resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-optional-chaining@7.8.3':
+ resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-private-property-in-object@7.14.5':
+ resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-top-level-await@7.14.5':
+ resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-typescript@7.27.1':
+ resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-unicode-sets-regex@7.18.6':
+ resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-arrow-functions@7.27.1':
+ resolution: {integrity: sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-async-generator-functions@7.28.0':
+ resolution: {integrity: sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-async-to-generator@7.27.1':
+ resolution: {integrity: sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-block-scoped-functions@7.27.1':
+ resolution: {integrity: sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-block-scoping@7.28.5':
+ resolution: {integrity: sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-class-properties@7.27.1':
+ resolution: {integrity: sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-class-static-block@7.28.3':
+ resolution: {integrity: sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.12.0
+
+ '@babel/plugin-transform-classes@7.28.4':
+ resolution: {integrity: sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-computed-properties@7.27.1':
+ resolution: {integrity: sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-destructuring@7.28.5':
+ resolution: {integrity: sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-dotall-regex@7.27.1':
+ resolution: {integrity: sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-duplicate-keys@7.27.1':
+ resolution: {integrity: sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1':
+ resolution: {integrity: sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-dynamic-import@7.27.1':
+ resolution: {integrity: sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-explicit-resource-management@7.28.0':
+ resolution: {integrity: sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-exponentiation-operator@7.28.5':
+ resolution: {integrity: sha512-D4WIMaFtwa2NizOp+dnoFjRez/ClKiC2BqqImwKd1X28nqBtZEyCYJ2ozQrrzlxAFrcrjxo39S6khe9RNDlGzw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-export-namespace-from@7.27.1':
+ resolution: {integrity: sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-for-of@7.27.1':
+ resolution: {integrity: sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-function-name@7.27.1':
+ resolution: {integrity: sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-json-strings@7.27.1':
+ resolution: {integrity: sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-literals@7.27.1':
+ resolution: {integrity: sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-logical-assignment-operators@7.28.5':
+ resolution: {integrity: sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-member-expression-literals@7.27.1':
+ resolution: {integrity: sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-amd@7.27.1':
+ resolution: {integrity: sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-commonjs@7.27.1':
+ resolution: {integrity: sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-systemjs@7.28.5':
+ resolution: {integrity: sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-umd@7.27.1':
+ resolution: {integrity: sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-named-capturing-groups-regex@7.27.1':
+ resolution: {integrity: sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-new-target@7.27.1':
+ resolution: {integrity: sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-nullish-coalescing-operator@7.27.1':
+ resolution: {integrity: sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-numeric-separator@7.27.1':
+ resolution: {integrity: sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-object-rest-spread@7.28.4':
+ resolution: {integrity: sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-object-super@7.27.1':
+ resolution: {integrity: sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-optional-catch-binding@7.27.1':
+ resolution: {integrity: sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-optional-chaining@7.28.5':
+ resolution: {integrity: sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-parameters@7.27.7':
+ resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-private-methods@7.27.1':
+ resolution: {integrity: sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-private-property-in-object@7.27.1':
+ resolution: {integrity: sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-property-literals@7.27.1':
+ resolution: {integrity: sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-regenerator@7.28.4':
+ resolution: {integrity: sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-regexp-modifiers@7.27.1':
+ resolution: {integrity: sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-reserved-words@7.27.1':
+ resolution: {integrity: sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-shorthand-properties@7.27.1':
+ resolution: {integrity: sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-spread@7.27.1':
+ resolution: {integrity: sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-sticky-regex@7.27.1':
+ resolution: {integrity: sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-template-literals@7.27.1':
+ resolution: {integrity: sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-typeof-symbol@7.27.1':
+ resolution: {integrity: sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-typescript@7.28.5':
+ resolution: {integrity: sha512-x2Qa+v/CuEoX7Dr31iAfr0IhInrVOWZU/2vJMJ00FOR/2nM0BcBEclpaf9sWCDc+v5e9dMrhSH8/atq/kX7+bA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-escapes@7.27.1':
+ resolution: {integrity: sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-property-regex@7.27.1':
+ resolution: {integrity: sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-regex@7.27.1':
+ resolution: {integrity: sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-sets-regex@7.27.1':
+ resolution: {integrity: sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/preset-env@7.28.5':
+ resolution: {integrity: sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/preset-modules@0.1.6-no-external-plugins':
+ resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
+
'@babel/runtime@7.28.4':
resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/template@7.27.2':
+ resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/traverse@7.28.5':
+ resolution: {integrity: sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==}
engines: {node: '>=6.9.0'}
'@babel/types@7.28.5':
resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==}
engines: {node: '>=6.9.0'}
+ '@bcoe/v8-coverage@0.2.3':
+ resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
+
'@bpmn-io/diagram-js-ui@0.2.3':
resolution: {integrity: sha512-OGyjZKvGK8tHSZ0l7RfeKhilGoOGtFDcoqSGYkX0uhFlo99OVZ9Jn1K7TJGzcE9BdKwvA5Y5kGqHEhdTxHvFfw==}
+
+ '@cacheable/memory@2.0.7':
+ resolution: {integrity: sha512-RbxnxAMf89Tp1dLhXMS7ceft/PGsDl1Ip7T20z5nZ+pwIAsQ1p2izPjVG69oCLv/jfQ7HDPHTWK0c9rcAWXN3A==}
+
+ '@cacheable/utils@2.3.3':
+ resolution: {integrity: sha512-JsXDL70gQ+1Vc2W/KUFfkAJzgb4puKwwKehNLuB+HrNKWf91O736kGfxn4KujXCCSuh6mRRL4XEB0PkAFjWS0A==}
'@cesium/engine@14.0.0':
resolution: {integrity: sha512-nmW0uQCyg4CRqi3a8o30gU9S9bFm3TLh2fRO74iv+6a8FFArvZ1xF7IqG2tyRjSXkyH4c5vpavNRT3R51R8NyQ==}
@@ -276,9 +1111,166 @@
resolution: {integrity: sha512-f0Wrp3MG02P2KSAopVESHWOhF+2eK9cQR9prEYGWuPM3iF6YktKrZqXzNnsOxCw1KPup0aSXsCrFl2asT5jF9g==}
engines: {node: '>=14.0.0'}
+ '@clack/core@0.5.0':
+ resolution: {integrity: sha512-p3y0FIOwaYRUPRcMO7+dlmLh8PSRcrjuTndsiA0WAFbWES0mLZlrjVoBRZ9DzkPFJZG6KGkJmoEAY0ZcVWTkow==}
+
+ '@clack/prompts@0.11.0':
+ resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==}
+
+ '@csstools/css-parser-algorithms@3.0.5':
+ resolution: {integrity: sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/css-syntax-patches-for-csstree@1.0.22':
+ resolution: {integrity: sha512-qBcx6zYlhleiFfdtzkRgwNC7VVoAwfK76Vmsw5t+PbvtdknO9StgRk7ROvq9so1iqbdW4uLIDAsXRsTfUrIoOw==}
+ engines: {node: '>=18'}
+
+ '@csstools/css-tokenizer@3.0.4':
+ resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==}
+ engines: {node: '>=18'}
+
+ '@csstools/media-query-list-parser@4.0.3':
+ resolution: {integrity: sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/selector-specificity@5.0.0':
+ resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
+
'@ctrl/tinycolor@3.6.1':
resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==}
engines: {node: '>=10'}
+
+ '@dcloudio/types@3.4.28':
+ resolution: {integrity: sha512-uVIRp1VLBkrL0LaGLgIS/sT3bl1zzVTKZQbfqJEQcSAvBffRdirbSh5OvOHfA1WV5lmCAGfjhKsUQouNEVUQHg==}
+
+ '@dcloudio/uni-app-harmony@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-7ZaxPGaMR3kZzNLPdgLNVMaF4Yenl1Bk3MOudfpmgpCdHRU3hRQkugJYs4QlUrmg/kmhqPsLmvnkTjbXKRaojQ==}
+
+ '@dcloudio/uni-app-plus@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-8WA1sC+bnW2tpQVOzHOEZrR6Bmq1/dYkOOqdXAfMgTjjNAEcIdGiGcnVvu/JPIk6oznAHc8A54ohyp1knhh+Vw==}
+
+ '@dcloudio/uni-app-uts@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-7/0VMAwNrgTXGdLBDT3VmvPo1kYQDIJJu564MqMLHL7OGPFZJ6d85VYlHUWgEKDirD3Q/fKhpjGDLVffLiwORw==}
+
+ '@dcloudio/uni-app-vite@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-N7lwSgr2oftcG0rHFjNDmzxnuON+alG2ldF5+0coGYUZT+VQNok6DKljiXrPK2FNonipyXiI3hHIwisgJbSS6A==}
+
+ '@dcloudio/uni-app-vue@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-/ISF+1xrcvUtcote+LfLyk/pyizTjEY6/3HZgBsOfXchkZBz0fkTWgnj5RHYeqwD7aHLsOJX93eaazNMnzD9Zw==}
+
+ '@dcloudio/uni-app@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-rR1SGJknJyDy80vb47yDICXcZrV11KJ5yhNG8aC+kH2ZL338faBrdOQgqqN/XJegVxJdTfv1KqUXuaShMWTZGA==}
+ peerDependencies:
+ '@dcloudio/types': ^3.4.14
+
+ '@dcloudio/uni-automator@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-ETBiJ9b94YeBQDNU6LXm21XsyltnyP5MU7ZioIwB30StYbn1ydOHCofSHqmAQVDdWhfvOAxb75oEjW9uas2VoQ==}
+ peerDependencies:
+ jest: 27.0.4
+ jest-environment-node: 27.5.1
+
+ '@dcloudio/uni-cli-shared@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-/IQgZzTtYbJoh28Z2v9jgX6lwd7Gwc7aU/JbzGbIJrDCnXaCm1pDZduLb3a7C3YKDMoMU/f9Qb9LHK0NL8iYfg==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+
+ '@dcloudio/uni-cloud@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-Gn6dqVktJrScW9YFmC+DeW0e6K0s8lolYrlllnykAnuWE0ThXJA0eJOV1AHwyr4xHgE6XL5S9JrDZzS6HHyzIw==}
+
+ '@dcloudio/uni-components@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-uAAkJ2wErew1ahGXIh867MygEmtaffz2vxox4i0/LG8AMSb0rnKzXMYbT3+9K+Rs4/NWH3jQPRDpxjgos5hlEg==}
+
+ '@dcloudio/uni-console@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-9vHJe5p+DhRPzRrL2g49n2VKMncRRetsO5rVFcVxYR57OY6lryCMrU+6E69Ifbzkd7T5kvUvg5blyOCIY5rzWw==}
+
+ '@dcloudio/uni-h5-vite@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-zfevmp2pnQdA9qMJx4rZLgH8H9ddZucXMefLmuSY0a3l2Unfgxew8SlT5NVVDJwqKhwOxBcZQFtGbK+X9ro55w==}
+
+ '@dcloudio/uni-h5-vue@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-Ws0/eJ3WZL8Ai5TlR1vt7TYqqy+MTrkoMew/9BScMXKPH58BfjceIxNYTIoYqo21K5DUL4v7ZMqceJKm+jm4gA==}
+
+ '@dcloudio/uni-h5@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-/nr64OZiH7BOijqwNei/WH09pfC0PQiplM/mG4Q5zz6v9k+mRfE7xL5iRybCKqzfGYwOBX0hf+RdT3tHagUZFA==}
+
+ '@dcloudio/uni-i18n@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-0e1ULCzd3AvpenN/R3wCs7LH06zhFcW22s9Bf2x95aW5UBiHCAGchDoppPskIskStmCV3UIfAMsY9bdM3G5sPg==}
+
+ '@dcloudio/uni-mp-alipay@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-sbmk+WElbBFeEqs1iScjbyj/9iwULNlfVZLkYkZka3MpAc+gOwb8csjbnOE1d4B4uDU4nR29hBg8jB35aLPovw==}
+
+ '@dcloudio/uni-mp-baidu@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-7YuoKeqZQ5M/q6e9TSuasa3aoHcqFL0+wEGInYXEVPrFfy94/c39E0y39/kirtx7YM3tcIX8/h4KOBnP3V5uhA==}
+
+ '@dcloudio/uni-mp-compiler@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-RJ+r4tlO5cO+MCwoL77gDzGio47Ft1KIRiL7akIwUw36jlwYCbV3dn4YrFc234bRtZb4SZ2FZ/5jGfN3ZzLBJg==}
+
+ '@dcloudio/uni-mp-harmony@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-6m0TC6ENenHu/e66XlJhFYcvR3hFN98IqZ5ELXyuF1L8gKAizxn8t2CSPl3J0JCFHBB2/Qg0sRHRSfBzp9PPXA==}
+
+ '@dcloudio/uni-mp-jd@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-mDIE6uLF+DcQ9MkSnwKanHc0r1lsQ2a4vmN2NCGJicRJ3BG8/7BmaAWzDvMq+glayBmStwGpp/52EO8+UulHJw==}
+
+ '@dcloudio/uni-mp-kuaishou@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-aw+dvTGfhdELQSDlsg1Z+gAUjFGDbp4aS0HPcY3a8zKh3TNIQQAjuYXQVLZ/kAghwbBwB86GExz2dUW07OhaEA==}
+
+ '@dcloudio/uni-mp-lark@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-3S7Lwlv63QAEvyIj1rsLD0uJWa2A6EB0aCovZKfAOdBTjz+D862eCMKktz0Md19MgqZJwL6oK4LgVdaKjDmCeg==}
+
+ '@dcloudio/uni-mp-qq@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-KNbUvNsieh0Ngz5xTAoEr+gtC/dbKH975Vnok5dnDknYvuUEN5dlgic2kbZ3Binrk46P18zM18t8y8ev1PAPSA==}
+
+ '@dcloudio/uni-mp-toutiao@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-N52c+7XA4Tu2wuG6vqbkN2maOSEwlQyUwshAzPXwsv1uSDoH95YsEjQ9cVkQd+W1swSyQUXg8fQ8+P0CvKCj2w==}
+
+ '@dcloudio/uni-mp-vite@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-kdqRO2zkidaia0M7IeyKy3mwAYvEZCSpQ1YglIBbj/0M9qdX83JL3pcxs+DuCs6+wd+LTsheOKmpSdE02c4Rzw==}
+
+ '@dcloudio/uni-mp-vue@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-VVL4TDbJ3q2r+MKjosy7XXq4520Po/1IVqRAbrcWnwIkUYMTK5DcijAwWqgMcJGoX+t6wszlmvXGqaEzscDExA==}
+
+ '@dcloudio/uni-mp-weixin@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-X2mFiIuddphj3O1NQ6ONyX1kSOKLbYTRiShgHPOvr0vAROJlYgfaWqusceOmNq6wJhwnWRGjIGwMi8nEur4+ew==}
+
+ '@dcloudio/uni-mp-xhs@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-9jUxEywRmRlJxbFTv0AKeMhZ04g1O4pFISCNCDZQVz/GDv4TEUpIyOIx2h9WpLtm9G3Wilh9M3Jbwsk5cLus/g==}
+
+ '@dcloudio/uni-nvue-styler@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-HdcuyOPEn7jGl0zF2SdJ9r5b1Kdmt/gGP3zNTTaDwRslnBbsH4jJ3XUBDVbn9hAv3jBWURnup2In6/omsSZZNg==}
+
+ '@dcloudio/uni-push@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-7HN9I2F2jqOq/kPu7OT1wgmamVcizCT4NWwlyF4zKPmsca70BogVBOi1MSZM1VkCAmUSlqWxyKq0xA1onJpWUw==}
+
+ '@dcloudio/uni-quickapp-webview@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-ulVhtpPulCkcQWlPdSi246gfYsceF9b/LoLC81ob4JFAEPBx99+Ceo04Fov9MYYaShiO2f9ACjGds4UBsW6V9g==}
+
+ '@dcloudio/uni-shared@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-ubeXzlJ7ODcnUmec7GhbUxR2Sd6xMO4/JPqsR73fPtR0Udlzd+5nNKcPS9NkMqD4o4+/J7TpMkA6W0o67YZBiQ==}
+
+ '@dcloudio/uni-stacktracey@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-K3PZ6augveS3uNcVD1d5Cl6pU36lemguEuEasU1xVQ7MGdNR3Dm5LpmIME6326ZFR6Yt6a6lzJh2xaz7UPI0oA==}
+
+ '@dcloudio/uni-stat@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-QOkVgNTbtd6XB6KCu0QxPXc9ejOv9Cv3MujEAJcCaoy3CT+SBPEbQVMlaa/UtP5yBpt9+xKT+atGH7R97ZsmqQ==}
+
+ '@dcloudio/uni-ui@1.5.11':
+ resolution: {integrity: sha512-DBtk046ofmeFd82zRI7d89SoEwrAxYzUN3WVPm1DIBkpLPG5F5QDNkHMnZGu2wNrMEmGBjBpUh3vqEY1L3jaMw==}
+
+ '@dcloudio/vite-plugin-uni@3.0.0-4070520250711001':
+ resolution: {integrity: sha512-Pcd1YIPP+0hyC64oh0P3EBZGF8YHsScUS7R0wjlDGkRMsGowil0IbBE5DrmqjZ7QE+0Lau77yxfZdkSjY3gbvA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ hasBin: true
+ peerDependencies:
+ vite: ^5.2.8
+
+ '@dual-bundle/import-meta-resolve@4.2.1':
+ resolution: {integrity: sha512-id+7YRUgoUX6CgV0DtuhirQWodeeA7Lf4i2x71JS/vtA5pRb/hIGWlw+G6MeXvsM+MXrz0VAydTGElX1rAfgPg==}
'@dvgis/dc-common@1.0.0':
resolution: {integrity: sha512-sjRD9kQbQ3tAhbmJt00eleU3XM7laMHWl5qMU63Mk0tj2c/M8NTTIbXEdB8gdgDDHuZGN5eRm9nJ3rSO4nsSFw==}
@@ -295,6 +1287,14 @@
resolution: {integrity: sha512-OzIuTaIfC8QXEPmJvB4Y4kw34rSXdCJzxcD1kFStBvr8bK6X1zQAYDo0CNMjojnfTqRQCJ0I7prlErcoRiET2A==}
peerDependencies:
vue: ^3.2.0
+
+ '@es-joy/jsdoccomment@0.52.0':
+ resolution: {integrity: sha512-BXuN7BII+8AyNtn57euU2Yxo9yA/KUDNzrpXyi3pfqKmBhhysR6ZWOebFh3vyPoqA3/j1SOvGgucElMGwlXing==}
+ engines: {node: '>=20.11.0'}
+
+ '@es-joy/jsdoccomment@0.78.0':
+ resolution: {integrity: sha512-rQkU5u8hNAq2NVRzHnIUUvR6arbO0b6AOlvpTNS48CkiKSn/xtNfOzBK23JE4SiW89DgvU7GtxLVgV4Vn2HBAw==}
+ engines: {node: '>=20.11.0'}
'@esbuild/aix-ppc64@0.20.2':
resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==}
@@ -326,9 +1326,21 @@
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-arm64@0.25.1':
+ resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.20.2':
resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@esbuild/darwin-x64@0.25.1':
+ resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
@@ -434,6 +1446,71 @@
cpu: [x64]
os: [win32]
+ '@eslint-community/eslint-plugin-eslint-comments@4.5.0':
+ resolution: {integrity: sha512-MAhuTKlr4y/CE3WYX26raZjy+I/kS2PLKSzvfmDCGrBLTFHOYwqROZdr4XwPgXwX3K9rjzMr4pSmUWGnzsUyMg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ '@eslint-community/eslint-utils@4.9.1':
+ resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+
+ '@eslint-community/regexpp@4.12.2':
+ resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ '@eslint/compat@1.4.1':
+ resolution: {integrity: sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.40 || 9
+ peerDependenciesMeta:
+ eslint:
+ optional: true
+
+ '@eslint/config-array@0.21.1':
+ resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/config-helpers@0.4.2':
+ resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/core@0.15.2':
+ resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/core@0.17.0':
+ resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/eslintrc@3.3.3':
+ resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/js@9.39.2':
+ resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/markdown@7.5.1':
+ resolution: {integrity: sha512-R8uZemG9dKTbru/DQRPblbJyXpObwKzo8rv1KYGGuPUPtjM4LXBYM9q5CIZAComzZupws3tWbDwam5AFpPLyJQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/object-schema@2.1.7':
+ resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/plugin-kit@0.3.5':
+ resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/plugin-kit@0.4.1':
+ resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@floating-ui/core@1.7.3':
resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==}
@@ -443,24 +1520,324 @@
'@floating-ui/utils@0.2.10':
resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
+ '@hono/node-server@1.19.7':
+ resolution: {integrity: sha512-vUcD0uauS7EU2caukW8z5lJKtoGMokxNbJtBiwHgpqxEXokaHCBkQUmCHhjFB1VUTWdqj25QoMkMKzgjq+uhrw==}
+ engines: {node: '>=18.14.1'}
+ peerDependencies:
+ hono: ^4
+
+ '@humanfs/core@0.19.1':
+ resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
+ engines: {node: '>=18.18.0'}
+
+ '@humanfs/node@0.16.7':
+ resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
+ engines: {node: '>=18.18.0'}
+
+ '@humanwhocodes/module-importer@1.0.1':
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+
+ '@humanwhocodes/retry@0.4.3':
+ resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
+ engines: {node: '>=18.18'}
+
+ '@iconify-json/mdi@1.2.3':
+ resolution: {integrity: sha512-O3cLwbDOK7NNDf2ihaQOH5F9JglnulNDFV7WprU2dSoZu3h3cWH//h74uQAB87brHmvFVxIOkuBX2sZSzYhScg==}
+
+ '@iconify/types@2.0.0':
+ resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+
+ '@iconify/utils@2.3.0':
+ resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==}
+
+ '@iconify/utils@3.1.0':
+ resolution: {integrity: sha512-Zlzem1ZXhI1iHeeERabLNzBHdOa4VhQbqAcOQaMKuTuyZCpwKbC2R4Dd0Zo3g9EAc+Y4fiarO8HIHRAth7+skw==}
+
+ '@intlify/core-base@9.1.9':
+ resolution: {integrity: sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==}
+ engines: {node: '>= 10'}
+
'@intlify/core-base@9.14.5':
resolution: {integrity: sha512-5ah5FqZG4pOoHjkvs8mjtv+gPKYU0zCISaYNjBNNqYiaITxW8ZtVih3GS/oTOqN8d9/mDLyrjD46GBApNxmlsA==}
engines: {node: '>= 16'}
+
+ '@intlify/devtools-if@9.1.9':
+ resolution: {integrity: sha512-oKSMKjttG3Ut/1UGEZjSdghuP3fwA15zpDPcjkf/1FjlOIm6uIBGMNS5jXzsZy593u+P/YcnrZD6cD3IVFz9vQ==}
+ engines: {node: '>= 10'}
+
+ '@intlify/message-compiler@9.1.9':
+ resolution: {integrity: sha512-6YgCMF46Xd0IH2hMRLCssZI3gFG4aywidoWQ3QP4RGYQXQYYfFC54DxhSgfIPpVoPLQ+4AD29eoYmhiHZ+qLFQ==}
+ engines: {node: '>= 10'}
'@intlify/message-compiler@9.14.5':
resolution: {integrity: sha512-IHzgEu61/YIpQV5Pc3aRWScDcnFKWvQA9kigcINcCBXN8mbW+vk9SK+lDxA6STzKQsVJxUPg9ACC52pKKo3SVQ==}
engines: {node: '>= 16'}
+ '@intlify/message-resolver@9.1.9':
+ resolution: {integrity: sha512-Lx/DBpigeK0sz2BBbzv5mu9/dAlt98HxwbG7xLawC3O2xMF9MNWU5FtOziwYG6TDIjNq0O/3ZbOJAxwITIWXEA==}
+ engines: {node: '>= 10'}
+
+ '@intlify/runtime@9.1.9':
+ resolution: {integrity: sha512-XgPw8+UlHCiie3fI41HPVa/VDJb3/aSH7bLhY1hJvlvNV713PFtb4p4Jo+rlE0gAoMsMCGcsiT982fImolSltg==}
+ engines: {node: '>= 10'}
+
+ '@intlify/shared@9.1.9':
+ resolution: {integrity: sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw==}
+ engines: {node: '>= 10'}
+
'@intlify/shared@9.14.5':
resolution: {integrity: sha512-9gB+E53BYuAEMhbCAxVgG38EZrk59sxBtv3jSizNL2hEWlgjBjAw1AwpLHtNaeda12pe6W20OGEa0TwuMSRbyQ==}
engines: {node: '>= 16'}
+
+ '@intlify/vue-devtools@9.1.9':
+ resolution: {integrity: sha512-YPehH9uL4vZcGXky4Ev5qQIITnHKIvsD2GKGXgqf+05osMUI6WSEQHaN9USRa318Rs8RyyPCiDfmA0hRu3k7og==}
+ engines: {node: '>= 10'}
+
+ '@isaacs/balanced-match@4.0.1':
+ resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
+ engines: {node: 20 || >=22}
+
+ '@isaacs/brace-expansion@5.0.0':
+ resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
+ engines: {node: 20 || >=22}
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
+ '@istanbuljs/load-nyc-config@1.1.0':
+ resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
+ engines: {node: '>=8'}
+
+ '@istanbuljs/schema@0.1.3':
+ resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
+ engines: {node: '>=8'}
+
+ '@jest/console@27.5.1':
+ resolution: {integrity: sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/core@27.5.1':
+ resolution: {integrity: sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==}
+ 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
+
+ '@jest/environment@27.5.1':
+ resolution: {integrity: sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/fake-timers@27.5.1':
+ resolution: {integrity: sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/globals@27.5.1':
+ resolution: {integrity: sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/reporters@27.5.1':
+ resolution: {integrity: sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==}
+ 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
+
+ '@jest/source-map@27.5.1':
+ resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/test-result@27.5.1':
+ resolution: {integrity: sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/test-sequencer@27.5.1':
+ resolution: {integrity: sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/transform@27.5.1':
+ resolution: {integrity: sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jest/types@27.5.1':
+ resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ '@jimp/bmp@0.10.3':
+ resolution: {integrity: sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/core@0.10.3':
+ resolution: {integrity: sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==}
+
+ '@jimp/custom@0.10.3':
+ resolution: {integrity: sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==}
+
+ '@jimp/gif@0.10.3':
+ resolution: {integrity: sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/jpeg@0.10.3':
+ resolution: {integrity: sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-blit@0.10.3':
+ resolution: {integrity: sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-blur@0.10.3':
+ resolution: {integrity: sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-circle@0.10.3':
+ resolution: {integrity: sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-color@0.10.3':
+ resolution: {integrity: sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-contain@0.10.3':
+ resolution: {integrity: sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ '@jimp/plugin-scale': '>=0.3.5'
+
+ '@jimp/plugin-cover@0.10.3':
+ resolution: {integrity: sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-crop': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ '@jimp/plugin-scale': '>=0.3.5'
+
+ '@jimp/plugin-crop@0.10.3':
+ resolution: {integrity: sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-displace@0.10.3':
+ resolution: {integrity: sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-dither@0.10.3':
+ resolution: {integrity: sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-fisheye@0.10.3':
+ resolution: {integrity: sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-flip@0.10.3':
+ resolution: {integrity: sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-rotate': '>=0.3.5'
+
+ '@jimp/plugin-gaussian@0.10.3':
+ resolution: {integrity: sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-invert@0.10.3':
+ resolution: {integrity: sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-mask@0.10.3':
+ resolution: {integrity: sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-normalize@0.10.3':
+ resolution: {integrity: sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-print@0.10.3':
+ resolution: {integrity: sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+
+ '@jimp/plugin-resize@0.10.3':
+ resolution: {integrity: sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/plugin-rotate@0.10.3':
+ resolution: {integrity: sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+ '@jimp/plugin-crop': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+
+ '@jimp/plugin-scale@0.10.3':
+ resolution: {integrity: sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+
+ '@jimp/plugin-shadow@0.10.3':
+ resolution: {integrity: sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blur': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+
+ '@jimp/plugin-threshold@0.10.3':
+ resolution: {integrity: sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-color': '>=0.8.0'
+ '@jimp/plugin-resize': '>=0.8.0'
+
+ '@jimp/plugins@0.10.3':
+ resolution: {integrity: sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/png@0.10.3':
+ resolution: {integrity: sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/tiff@0.10.3':
+ resolution: {integrity: sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/types@0.10.3':
+ resolution: {integrity: sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+
+ '@jimp/utils@0.10.3':
+ resolution: {integrity: sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==}
+
'@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+
+ '@jridgewell/remapping@2.3.5':
+ resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
'@jridgewell/resolve-uri@3.1.2':
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
@@ -475,6 +1852,28 @@
'@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+ '@keyv/bigmap@1.3.0':
+ resolution: {integrity: sha512-KT01GjzV6AQD5+IYrcpoYLkCu1Jod3nau1Z7EsEuViO3TZGRacSbO9MfHmbJ1WaOXFtWLxPVj169cn2WNKPkIg==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ keyv: ^5.5.4
+
+ '@keyv/serialize@1.1.1':
+ resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==}
+
+ '@meoc/utils@0.2.10':
+ resolution: {integrity: sha512-LN/CQDOVmmN/kq31630r+dFYZSPezmhbRq0Ib0RbKv+qpSpaOasXwAcwO/rkpPkhuoty5kfpHmTdjrEUU8bJYQ==}
+
+ '@modelcontextprotocol/sdk@1.25.1':
+ resolution: {integrity: sha512-yO28oVFFC7EBoiKdAn+VqRm+plcfv4v0xp6osG/VsCB0NlPZWi87ajbCZZ8f/RvOFLEu7//rSRmuZZ7lMoe3gQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@cfworker/json-schema': ^4.1.1
+ zod: ^3.25 || ^4.0
+ peerDependenciesMeta:
+ '@cfworker/json-schema':
+ optional: true
+
'@nodelib/fs.scandir@2.1.5':
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -486,6 +1885,10 @@
'@nodelib/fs.walk@1.2.8':
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
+
+ '@nuxt/kit@3.20.2':
+ resolution: {integrity: sha512-laqfmMcWWNV1FsVmm1+RQUoGY8NIJvCRl0z0K8ikqPukoEry0LXMqlQ+xaf8xJRvoH2/78OhZmsEEsUBTXipcw==}
+ engines: {node: '>=18.12.0'}
'@parcel/watcher-android-arm64@2.5.1':
resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==}
@@ -579,6 +1982,13 @@
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
+ '@pkgr/core@0.2.9':
+ resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+
+ '@polka/url@1.0.0-next.29':
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+
'@protobufjs/aspromise@1.1.2':
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
@@ -609,6 +2019,9 @@
'@protobufjs/utf8@1.1.0':
resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==}
+ '@quansync/fs@1.0.0':
+ resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==}
+
'@rollup/pluginutils@5.3.0':
resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==}
engines: {node: '>=14.0.0'}
@@ -628,9 +2041,19 @@
cpu: [arm64]
os: [android]
+ '@rollup/rollup-darwin-arm64@4.38.0':
+ resolution: {integrity: sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==}
+ cpu: [arm64]
+ os: [darwin]
+
'@rollup/rollup-darwin-arm64@4.54.0':
resolution: {integrity: sha512-k43D4qta/+6Fq+nCDhhv9yP2HdeKeP56QrUUTW7E6PhZP1US6NDqpJj4MY0jBHlJivVJD5P8NxrjuobZBJTCRw==}
cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.38.0':
+ resolution: {integrity: sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==}
+ cpu: [x64]
os: [darwin]
'@rollup/rollup-darwin-x64@4.54.0':
@@ -750,14 +2173,30 @@
resolution: {integrity: sha512-NAhWvrsswZCGfSarlSFCdYadUZuYeUzns2TSr2FQotSsvs/4xitJhcVzkRQvTpzq1+FtP9MkxEnShGa4ILvMdw==, tarball: https://center.javablade.com/api/packages/blade/npm/%40saber%2Fnf-form-elp/-/1.6.3/nf-form-elp-1.6.3.tgz}
engines: {node: ^20.19.0 || >=22.12.0}
+ '@sinonjs/commons@1.8.6':
+ resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==}
+
+ '@sinonjs/fake-timers@8.1.0':
+ resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==}
+
'@smallwei/avue@3.7.4':
resolution: {integrity: sha512-uT0Q+JGl5VuN9jo+IImyUwbW7VpjG5df/EJcp3Y9OO8w/OB5iseNAsfxAidYu514k08cEV30+W/EWhJ+O17woA==}
peerDependencies:
element-plus: '>=2.2.0'
vue: '>=3.2.0'
+ '@stylistic/eslint-plugin@5.6.1':
+ resolution: {integrity: sha512-JCs+MqoXfXrRPGbGmho/zGS/jMcn3ieKl/A8YImqib76C8kjgZwq5uUFzc30lJkMvcchuRn6/v8IApLxli3Jyw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=9.0.0'
+
'@sxzz/popperjs-es@2.11.7':
resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
+
+ '@tootallnate/once@1.1.2':
+ resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==}
+ engines: {node: '>= 6'}
'@transloadit/prettier-bytes@0.0.7':
resolution: {integrity: sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA==}
@@ -1090,6 +2529,21 @@
'@tweenjs/tween.js@25.0.0':
resolution: {integrity: sha512-XKLA6syeBUaPzx4j3qwMqzzq+V4uo72BnlbOjmuljLrRqdsd3qnzvZZoxvMHZ23ndsRS4aufU6JOZYpCbU6T1A==}
+ '@types/babel__core@7.20.5':
+ resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
+
+ '@types/babel__generator@7.27.0':
+ resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==}
+
+ '@types/babel__template@7.4.4':
+ resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
+
+ '@types/babel__traverse@7.28.0':
+ resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
+
+ '@types/debug@4.1.12':
+ resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
+
'@types/estree@1.0.8':
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
@@ -1099,17 +2553,44 @@
'@types/geojson@7946.0.8':
resolution: {integrity: sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==}
+ '@types/graceful-fs@4.1.9':
+ resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==}
+
+ '@types/istanbul-lib-coverage@2.0.6':
+ resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
+
+ '@types/istanbul-lib-report@3.0.3':
+ resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
+
+ '@types/istanbul-reports@3.0.4':
+ resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
+
+ '@types/json-schema@7.0.15':
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+
'@types/lodash-es@4.17.12':
resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
'@types/lodash@4.17.21':
resolution: {integrity: sha512-FOvQ0YPD5NOfPgMzJihoT+Za5pdkDJWcbpuj1DjaKZIr/gxodQjY/uWEFlTNqW2ugXHUiL8lRQgw63dzKHZdeQ==}
+ '@types/mdast@4.0.4':
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+
+ '@types/ms@2.1.0':
+ resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
+
'@types/node@25.0.3':
resolution: {integrity: sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==}
+ '@types/prettier@2.7.3':
+ resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==}
+
'@types/readable-stream@4.0.23':
resolution: {integrity: sha512-wwXrtQvbMHxCbBgjHaMGEmImFTQxxpfMOR/ZoQnXxB1woqkUbdLGFDgauo00Py9IudiaqSeiBiulSV9i6XIPig==}
+
+ '@types/stack-utils@2.0.3':
+ resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
'@types/svgo@2.6.4':
resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==}
@@ -1117,11 +2598,180 @@
'@types/trusted-types@2.0.7':
resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
+ '@types/unist@3.0.3':
+ resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
+
'@types/web-bluetooth@0.0.16':
resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
'@types/ws@8.18.1':
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
+
+ '@types/yargs-parser@21.0.3':
+ resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
+
+ '@types/yargs@16.0.11':
+ resolution: {integrity: sha512-sbtvk8wDN+JvEdabmZExoW/HNr1cB7D/j4LT08rMiuikfA7m/JNJg7ATQcgzs34zHnoScDkY0ZRSl29Fkmk36g==}
+
+ '@typescript-eslint/eslint-plugin@8.52.0':
+ resolution: {integrity: sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.52.0
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/parser@8.52.0':
+ resolution: {integrity: sha512-iIACsx8pxRnguSYhHiMn2PvhvfpopO9FXHyn1mG5txZIsAaB6F0KwbFnUQN3KCiG3Jcuad/Cao2FAs1Wp7vAyg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/project-service@8.52.0':
+ resolution: {integrity: sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/scope-manager@8.52.0':
+ resolution: {integrity: sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/tsconfig-utils@8.52.0':
+ resolution: {integrity: sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/type-utils@8.52.0':
+ resolution: {integrity: sha512-JD3wKBRWglYRQkAtsyGz1AewDu3mTc7NtRjR/ceTyGoPqmdS5oCdx/oZMWD5Zuqmo6/MpsYs0wp6axNt88/2EQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/types@8.52.0':
+ resolution: {integrity: sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/typescript-estree@8.52.0':
+ resolution: {integrity: sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/utils@8.52.0':
+ resolution: {integrity: sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+
+ '@typescript-eslint/visitor-keys@8.52.0':
+ resolution: {integrity: sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@unocss/astro@65.5.0':
+ resolution: {integrity: sha512-z0uLbOQhINYpd57p0p/fpVeBY1+Rv0t4GQQUMF00tH8tpIHGUdyHH9aE/yGZaeLI2onmaShTDgIVXT+7fR9fMw==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
+ '@unocss/cli@65.5.0':
+ resolution: {integrity: sha512-RZvAlu7vWIyeQr1TqFb5JsL95MWmDfopX9EaScUy5zuMjE05kvlPj4kM5y39N3XIpEDYWqI7WdwwrPqU45UraQ==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ '@unocss/config@65.5.0':
+ resolution: {integrity: sha512-XK9Y3Z1m3oPXQl5pVOYk6+pltsk70RHFvsAtTyFd5G5kAHzQS/em4/lL6/0IubU7rn2j+9eHeCVOiWXW9lnvYA==}
+ engines: {node: '>=14'}
+
+ '@unocss/config@66.5.12':
+ resolution: {integrity: sha512-rgV7Jj1nBZsLgk/FIFMDzKVLzIZlbKT5T0SB+odo9xZUsN5xwZZMl7I8TfZj5VxQaYqFEgSpS/Y4QCWlZ+7scQ==}
+ engines: {node: '>=14'}
+
+ '@unocss/core@65.5.0':
+ resolution: {integrity: sha512-XYWdS09M2XOjZNDotGhI2TIW/6duLNiyssopwjCbv4AlPklF0bZI86SKI55syYDBt6GRadoQbuvUkhSiTV/hzQ==}
+
+ '@unocss/core@66.5.12':
+ resolution: {integrity: sha512-/m6su0OXcCYRwIMf8sobBjZTC25iBLUnQVcfyvHOJwLJzOMr8dtNmZbqTs7+Kouz40jlPF7pR+ufFrN+s5ZD7g==}
+
+ '@unocss/eslint-plugin@66.5.12':
+ resolution: {integrity: sha512-dTJIiAetwq4YcxJo7O1L2DuBclrO6LcqnyGwcAregPFQ/EDUUhIIRtbQeHPIUKhiEpjURSSIXYJ6pkaR5XTm7A==}
+ engines: {node: '>=14'}
+
+ '@unocss/extractor-arbitrary-variants@65.5.0':
+ resolution: {integrity: sha512-7K3gftOdkv9jbWvbkExTcx6/FDP2Xk/NSsOYTvR9oITLnLjmdQvp+9276WSnNfKF3frBl8ZcqpkC2EsuL2Yutw==}
+
+ '@unocss/extractor-arbitrary-variants@66.5.12':
+ resolution: {integrity: sha512-UGzHhLaaSu/YT0rmXtdoE1ttLvwWsI/RVTwNNy3QnL/y4Hvmo7T1MtG5Ri5btfqfDWPzrQLQiTvI8loGCD8lFQ==}
+
+ '@unocss/inspector@65.5.0':
+ resolution: {integrity: sha512-dhAijjVblrAUqHjqB2p4JhNTpRo85BTi6SLbG+ePwGsIL9oxNXtN57O2mzp1mSEKS1C+QjHmRV7u+gh8Bj93Zg==}
+
+ '@unocss/postcss@65.5.0':
+ resolution: {integrity: sha512-mSGLX0KgygPhICZlUrjLgDJsEkgtrTjkDRI4skC7ZB/2pwQaESg8M3vhtWK/6XK+WGriUowfd5n6F6cfX3c2eg==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ postcss: ^8.4.21
+
+ '@unocss/preset-attributify@65.5.0':
+ resolution: {integrity: sha512-l3xQK6Om5fNknck04OZy3X7+k0EmVTEzF6BBMCYVaT2ZtCLhlznVt7tEg4ESLuXIZfx/+jd2sW3E3UY/EJ8rUA==}
+
+ '@unocss/preset-icons@65.5.0':
+ resolution: {integrity: sha512-lSwMNtj4nufpQDBFoioAM9S6hP8028lA9fLFM3Vw+KmI10/3TaZyOaCXJVH5UdsfNWexGGo/Qo+K1YFWfXLZ8A==}
+
+ '@unocss/preset-icons@66.5.12':
+ resolution: {integrity: sha512-3bgkN8tTrcOSGuBcJSDrtDfBt7WU3chFjfw7zo4ign+Z0L6qANB2O62AOdOMJOxKjlppJ6a8AceHthhPZP2PDA==}
+
+ '@unocss/preset-mini@65.5.0':
+ resolution: {integrity: sha512-oD2INmEgTOxmFsVceflv4Zs67vz9PRbpg3+CMsJLWgfX4UdQ1H4jZms72+g3N1hhXBvOFwvGvqGaMnrVMRk54g==}
+
+ '@unocss/preset-tagify@65.5.0':
+ resolution: {integrity: sha512-m0CfBawgf4VQlbaijgeWXG6vXEOt4VsNIk1NLUyRM0GBMiOB3usb1tPLWJtRpje6p+bR+k4rpe4LsPMHhKtFfQ==}
+
+ '@unocss/preset-typography@65.5.0':
+ resolution: {integrity: sha512-lokYOVF/y1Zt1QufxrD/oJe4aUCK6hHPlisSJRReyKXuGUrBR9yWiIZfINqhkj3kMO6zzN23QiaA5E5cpUkDPg==}
+
+ '@unocss/preset-uno@65.5.0':
+ resolution: {integrity: sha512-aVlSjzBc7IqNFgfu06qyP+CBRRGMNQLoQtZteRwa/vsUcTqGLzo7KhvkDazPEKpurmurXiymrvujTHInW0IooQ==}
+
+ '@unocss/preset-web-fonts@65.5.0':
+ resolution: {integrity: sha512-zWPsQiMSCoP61J8DX++3Z8Ncs20a3rdBb3uI7bDzHdf9MZEIhKzYYchpYO9Dfw7pzclECeuKhq5IjPjM1lmPUQ==}
+
+ '@unocss/preset-wind@65.5.0':
+ resolution: {integrity: sha512-3krOUZ5qC2J3JGheZsTDNbzqr9qYJw9GP1yEcfeE6K3qVcZnf+3DyJ0i1PuaM5SusOA0MBsHmCU49rLKurdyoA==}
+
+ '@unocss/reset@65.5.0':
+ resolution: {integrity: sha512-jADqiBAfOO9aZNpnsmxc7WX7vIIxyalcmCJ7fwdyPRmFhxZZ5ZoSYsHDt0Wfn/W2BRQkLjXWL0956nXH0lz79Q==}
+
+ '@unocss/rule-utils@65.5.0':
+ resolution: {integrity: sha512-xT4N0EY1dl1mqY5gTKD0H/Fg6xApe7xbfNTUwctOu02DMeJhqv9BTqfoAihH/hzGSI69+FtzVtz7hUxTypfehA==}
+ engines: {node: '>=14'}
+
+ '@unocss/rule-utils@66.5.12':
+ resolution: {integrity: sha512-2UQvdjS6nD3QHLEwcXlDhXFNiOUQDuOC+itX4tjqvnjP/hj5A99WEUHemb8WEHAlHAt7khe9591+BkHHo3BX/w==}
+ engines: {node: '>=14'}
+
+ '@unocss/transformer-attributify-jsx@65.5.0':
+ resolution: {integrity: sha512-ZWSGKw52h8nJSO1DaYGccjjNaBifl4LKJ4U0YpjaF2LDLA5BLBapUtyjTS7ffl6p7GZNokA6VUGL+MXPw+oDXg==}
+
+ '@unocss/transformer-compile-class@65.5.0':
+ resolution: {integrity: sha512-7QMtWhUVKkSYFCDzinR8PPubhLFA+KVJMoHCTX1KTw/lQ5Zt7/FiwLX5zepc50K3074dPgR3hWn5PpK+CZeq7g==}
+
+ '@unocss/transformer-directives@65.5.0':
+ resolution: {integrity: sha512-IsUd7L28bRAoN5fyWyNzHu7HOa1yjPqTU/QZfUEViJXApOEKUZ4anBSyU0lPU+59kMneg40xOvCBR70qNMCw4w==}
+
+ '@unocss/transformer-variant-group@65.5.0':
+ resolution: {integrity: sha512-I0ibbLRGI/9+BJy0yybxtmoYPIwGPMfwQDAvChhFXmokJG1YMpeJqPBI7fypHfbk/iO00W5lOGQ4XiIfsHfiHg==}
+
+ '@unocss/vite@65.5.0':
+ resolution: {integrity: sha512-v2rFIrBaWGQmSJeKv7us+2OMos2RqdZYpf/seOpf4MFHrmjjiFQ1ZWkTqFyNfUxAwj6VID5frVJhxJfZuEhhug==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
'@uppy/companion-client@2.2.2':
resolution: {integrity: sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og==}
@@ -1167,6 +2817,27 @@
peerDependencies:
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
+ '@vitejs/plugin-legacy@5.3.2':
+ resolution: {integrity: sha512-8moCOrIMaZ/Rjln0Q6GsH6s8fAt1JOI3k8nmfX4tXUxE5KAExVctSyOBk+A25GClsdSWqIk2yaUthH3KJ2X4tg==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ terser: ^5.4.0
+ vite: ^5.0.0
+
+ '@vitejs/plugin-vue-jsx@3.1.0':
+ resolution: {integrity: sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^4.0.0 || ^5.0.0
+ vue: ^3.0.0
+
+ '@vitejs/plugin-vue@5.1.0':
+ resolution: {integrity: sha512-QMRxARyrdiwi1mj3AW4fLByoHTavreXq0itdEW696EihXglf1MB3D4C2gBvE0jMPH29ZjC3iK8aIaUMLf4EOGA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0
+ vue: ^3.2.25
+
'@vitejs/plugin-vue@5.2.4':
resolution: {integrity: sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -1174,34 +2845,107 @@
vite: ^5.0.0 || ^6.0.0
vue: ^3.2.25
+ '@vitest/eslint-plugin@1.6.5':
+ resolution: {integrity: sha512-+wKYGmvXQJjq58qBx/AwiZr5bFfMiWBdgHViSQoFW/+wl5MQhJeOGP/3HM7GO7W1+AoiW9Gcyy2Hdwcao4LnfQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ eslint: '>=8.57.0'
+ typescript: '>=5.0.0'
+ vitest: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ vitest:
+ optional: true
+
+ '@vue/babel-helper-vue-transform-on@1.5.0':
+ resolution: {integrity: sha512-0dAYkerNhhHutHZ34JtTl2czVQHUNWv6xEbkdF5W+Yrv5pCWsqjeORdOgbtW2I9gWlt+wBmVn+ttqN9ZxR5tzA==}
+
+ '@vue/babel-plugin-jsx@1.5.0':
+ resolution: {integrity: sha512-mneBhw1oOqCd2247O0Yw/mRwC9jIGACAJUlawkmMBiNmL4dGA2eMzuNZVNqOUfYTa6vqmND4CtOPzmEEEqLKFw==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+
+ '@vue/babel-plugin-resolve-type@1.5.0':
+ resolution: {integrity: sha512-Wm/60o+53JwJODm4Knz47dxJnLDJ9FnKnGZJbUUf8nQRAtt6P+undLUAVU3Ha33LxOJe6IPoifRQ6F/0RrU31w==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@vue/compiler-core@3.4.21':
+ resolution: {integrity: sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==}
+
'@vue/compiler-core@3.5.26':
resolution: {integrity: sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==}
+
+ '@vue/compiler-dom@3.4.21':
+ resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==}
'@vue/compiler-dom@3.5.26':
resolution: {integrity: sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==}
+ '@vue/compiler-sfc@3.4.21':
+ resolution: {integrity: sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==}
+
'@vue/compiler-sfc@3.5.26':
resolution: {integrity: sha512-egp69qDTSEZcf4bGOSsprUr4xI73wfrY5oRs6GSgXFTiHrWj4Y3X5Ydtip9QMqiCMCPVwLglB9GBxXtTadJ3mA==}
+
+ '@vue/compiler-ssr@3.4.21':
+ resolution: {integrity: sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==}
'@vue/compiler-ssr@3.5.26':
resolution: {integrity: sha512-lZT9/Y0nSIRUPVvapFJEVDbEXruZh2IYHMk2zTtEgJSlP5gVOqeWXH54xDKAaFS4rTnDeDBQUYDtxKyoW9FwDw==}
+ '@vue/consolidate@1.0.0':
+ resolution: {integrity: sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==}
+ engines: {node: '>= 0.12.0'}
+
'@vue/devtools-api@6.6.4':
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
+
+ '@vue/devtools-core@7.7.9':
+ resolution: {integrity: sha512-48jrBSwG4GVQRvVeeXn9p9+dlx+ISgasM7SxZZKczseohB0cBz+ITKr4YbLWjmJdy45UHL7UMPlR4Y0CWTRcSQ==}
+ peerDependencies:
+ vue: ^3.0.0
+
+ '@vue/devtools-kit@7.7.9':
+ resolution: {integrity: sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==}
+
+ '@vue/devtools-shared@7.7.9':
+ resolution: {integrity: sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==}
+
+ '@vue/reactivity@3.4.21':
+ resolution: {integrity: sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==}
'@vue/reactivity@3.5.26':
resolution: {integrity: sha512-9EnYB1/DIiUYYnzlnUBgwU32NNvLp/nhxLXeWRhHUEeWNTn1ECxX8aGO7RTXeX6PPcxe3LLuNBFoJbV4QZ+CFQ==}
+ '@vue/runtime-core@3.4.21':
+ resolution: {integrity: sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==}
+
'@vue/runtime-core@3.5.26':
resolution: {integrity: sha512-xJWM9KH1kd201w5DvMDOwDHYhrdPTrAatn56oB/LRG4plEQeZRQLw0Bpwih9KYoqmzaxF0OKSn6swzYi84e1/Q==}
+ '@vue/runtime-dom@3.4.21':
+ resolution: {integrity: sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==}
+
'@vue/runtime-dom@3.5.26':
resolution: {integrity: sha512-XLLd/+4sPC2ZkN/6+V4O4gjJu6kSDbHAChvsyWgm1oGbdSO3efvGYnm25yCjtFm/K7rrSDvSfPDgN1pHgS4VNQ==}
+
+ '@vue/server-renderer@3.4.21':
+ resolution: {integrity: sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==}
+ peerDependencies:
+ vue: 3.4.21
'@vue/server-renderer@3.5.26':
resolution: {integrity: sha512-TYKLXmrwWKSodyVuO1WAubucd+1XlLg4set0YoV+Hu8Lo79mp/YMwWV5mC5FgtsDxX3qo1ONrxFaTP1OQgy1uA==}
peerDependencies:
vue: 3.5.26
+
+ '@vue/shared@3.4.21':
+ resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==}
'@vue/shared@3.5.26':
resolution: {integrity: sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==}
@@ -1390,27 +3134,94 @@
resolution: {integrity: sha512-SWAK+hLYKRHswhakNUirPYrdsflSFOxykUckfbWDcPvP8tjLuV5EWyd3GHV0hVaJLDps40jJnv8yQVDbWnQDfg==}
engines: {bun: '>=0.7.0', deno: '>=1.0.0', node: '>=16.5.0'}
+ abab@2.0.6:
+ resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
+ deprecated: Use your platform's native atob() and btoa() methods instead
+
abort-controller@3.0.0:
resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
engines: {node: '>=6.5'}
+
+ accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+
+ accepts@2.0.0:
+ resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==}
+ engines: {node: '>= 0.6'}
+
+ acorn-globals@6.0.0:
+ resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==}
+
+ acorn-jsx@5.3.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ acorn-walk@7.2.0:
+ resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
+ engines: {node: '>=0.4.0'}
+
+ acorn@7.4.1:
+ resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
acorn@8.15.0:
resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
engines: {node: '>=0.4.0'}
hasBin: true
+ address@1.2.2:
+ resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==}
+ engines: {node: '>= 10.0.0'}
+
adler-32@1.3.1:
resolution: {integrity: sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==}
engines: {node: '>=0.8'}
+ adm-zip@0.5.16:
+ resolution: {integrity: sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==}
+ engines: {node: '>=12.0'}
+
aes-decrypter@4.0.2:
resolution: {integrity: sha512-lc+/9s6iJvuaRe5qDlMTpCFjnwpkeOXp8qP3oiZ5jsj1MRg+SBVUmmICrhxHvc8OELSmc+fEyyxAuppY6hrWzw==}
+
+ agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
+ engines: {node: '>= 6.0.0'}
+
+ aggregate-error@3.1.0:
+ resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
+ engines: {node: '>=8'}
+
+ ajv-formats@3.0.1:
+ resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==}
+ peerDependencies:
+ ajv: ^8.0.0
+ peerDependenciesMeta:
+ ajv:
+ optional: true
+
+ ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+
+ ajv@8.17.1:
+ resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
animate.css@4.1.1:
resolution: {integrity: sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ==}
ansi-align@3.0.1:
resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
+
+ ansi-escapes@4.3.2:
+ resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
+ engines: {node: '>=8'}
+
+ ansi-escapes@7.2.0:
+ resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==}
+ engines: {node: '>=18'}
ansi-regex@2.1.1:
resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==}
@@ -1432,9 +3243,38 @@
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
engines: {node: '>=8'}
+ ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+
ansi-styles@6.2.3:
resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==}
engines: {node: '>=12'}
+
+ ansis@3.17.0:
+ resolution: {integrity: sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg==}
+ engines: {node: '>=14'}
+
+ ansis@4.2.0:
+ resolution: {integrity: sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==}
+ engines: {node: '>=14'}
+
+ any-base@1.1.0:
+ resolution: {integrity: sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==}
+
+ anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+
+ are-docs-informative@0.0.2:
+ resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
+ engines: {node: '>=14'}
+
+ argparse@1.0.10:
+ resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+
+ argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
arr-diff@4.0.0:
resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==}
@@ -1452,6 +3292,13 @@
resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
engines: {node: '>= 0.4'}
+ array-flatten@1.1.1:
+ resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
+
+ array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+
array-unique@0.3.2:
resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==}
engines: {node: '>=0.10.0'}
@@ -1463,6 +3310,10 @@
assign-symbols@1.0.0:
resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==}
engines: {node: '>=0.10.0'}
+
+ astral-regex@2.0.0:
+ resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
+ engines: {node: '>=8'}
async-function@1.0.0:
resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==}
@@ -1487,6 +3338,13 @@
resolution: {integrity: sha512-vEfYZPmvVOIuE567XBVCsx8SBgOYtjB2+S1iAaJ+HgH+DNjAcrHem2hmAeC9yaNGWayicv4yR+9UaJlkF3pvtw==}
engines: {pnpm: '>=10.10.0'}
+ autoprefixer@10.4.23:
+ resolution: {integrity: sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+
available-typed-arrays@1.0.7:
resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
engines: {node: '>= 0.4'}
@@ -1508,8 +3366,51 @@
react-native-b4a:
optional: true
+ babel-jest@27.5.1:
+ resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ peerDependencies:
+ '@babel/core': ^7.8.0
+
+ babel-plugin-istanbul@6.1.1:
+ resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==}
+ engines: {node: '>=8'}
+
+ babel-plugin-jest-hoist@27.5.1:
+ resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ babel-plugin-polyfill-corejs2@0.4.14:
+ resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-plugin-polyfill-corejs3@0.13.0:
+ resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-plugin-polyfill-regenerator@0.6.5:
+ resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-preset-current-node-syntax@1.2.0:
+ resolution: {integrity: sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0 || ^8.0.0-0
+
+ babel-preset-jest@27.5.1:
+ resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+
+ balanced-match@2.0.0:
+ resolution: {integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==}
bare-events@2.8.2:
resolution: {integrity: sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==}
@@ -1552,12 +3453,27 @@
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ base64url@3.0.1:
+ resolution: {integrity: sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==}
+ engines: {node: '>=6.0.0'}
+
base@0.11.2:
resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==}
engines: {node: '>=0.10.0'}
+ baseline-browser-mapping@2.9.11:
+ resolution: {integrity: sha512-Sg0xJUNDU1sJNGdfGWhVHX0kkZ+HWcvmVymJbj6NSgZZmW/8S9Y2HQ5euytnIgakgxN6papOAWiwDo1ctFDcoQ==}
+ hasBin: true
+
big.js@5.2.2:
resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
+
+ binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
+ engines: {node: '>=8'}
+
+ birpc@2.9.0:
+ resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==}
bitmap-sdf@1.0.4:
resolution: {integrity: sha512-1G3U4n5JE6RAiALMxu0p1XmeZkTeCwGKykzsLTCqVzfSDaN6S7fKnkIkfejogz+iwqBWc0UYAIKnKHNN7pSfDg==}
@@ -1574,6 +3490,17 @@
bluebird@3.7.2:
resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==}
+ bmp-js@0.1.0:
+ resolution: {integrity: sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==}
+
+ body-parser@1.20.4:
+ resolution: {integrity: sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+
+ body-parser@2.2.1:
+ resolution: {integrity: sha512-nfDwkulwiZYQIGwxdy0RUmowMhKcFVcYXUU7m4QlKYim1rUtg83xm2yjZ40QjDuc291AJjjeSc9b++AWHSgSHw==}
+ engines: {node: '>=18'}
+
boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -1586,6 +3513,9 @@
bpmn-moddle@8.1.0:
resolution: {integrity: sha512-yI5OAFfYVJwViKTsTsonVfCBPtB3MlefADUORwNIxxBOMp21vnoxuxsdgUWlPH/dvAEZh/+mr8UtqOBNu8NC5Q==}
+
+ brace-expansion@1.1.12:
+ resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
brace-expansion@2.0.2:
resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==}
@@ -1601,6 +3531,28 @@
broker-factory@3.1.11:
resolution: {integrity: sha512-ex4RuEI0AJOdaIcXe1lu9EqRAVkoYvdcvwLvNcE5UZQzYNqzPY+z0frnlxT4+cUwNVpE//9MwGx4lKiLH+pEcw==}
+ browser-process-hrtime@1.0.0:
+ resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
+
+ browserslist-to-esbuild@2.1.1:
+ resolution: {integrity: sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==}
+ engines: {node: '>=18'}
+ hasBin: true
+ peerDependencies:
+ browserslist: '*'
+
+ browserslist@4.28.1:
+ resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
+ bser@2.1.1:
+ resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
+
+ buffer-equal@0.0.1:
+ resolution: {integrity: sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==}
+ engines: {node: '>=0.4.0'}
+
buffer-from@1.1.2:
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
@@ -1610,9 +3562,36 @@
buffer@6.0.3:
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
+ builtin-modules@5.0.0:
+ resolution: {integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==}
+ engines: {node: '>=18.20'}
+
+ bytes@3.1.2:
+ resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
+ engines: {node: '>= 0.8'}
+
+ c12@3.3.3:
+ resolution: {integrity: sha512-750hTRvgBy5kcMNPdh95Qo+XUBeGo8C7nsKSmedDmaQI+E0r82DwHeM6vBewDe4rGFbnxoa4V9pw+sPh5+Iz8Q==}
+ peerDependencies:
+ magicast: '*'
+ peerDependenciesMeta:
+ magicast:
+ optional: true
+
+ cac@6.7.14:
+ resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+ engines: {node: '>=8'}
+
+ cac@6.7.9:
+ resolution: {integrity: sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==}
+ engines: {node: '>=8'}
+
cache-base@1.0.1:
resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==}
engines: {node: '>=0.10.0'}
+
+ cacheable@2.3.1:
+ resolution: {integrity: sha512-yr+FSHWn1ZUou5LkULX/S+jhfgfnLbuKQjE40tyEd4fxGZVMbBL5ifno0J0OauykS8UiCSgHi+DV/YD+rjFxFg==}
call-bind-apply-helpers@1.0.2:
resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
@@ -1626,9 +3605,30 @@
resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
engines: {node: '>= 0.4'}
+ callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+
+ camelcase@5.3.1:
+ resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
+ engines: {node: '>=6'}
+
+ camelcase@6.3.0:
+ resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
+ engines: {node: '>=10'}
+
camelcase@7.0.1:
resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==}
engines: {node: '>=14.16'}
+
+ caniuse-lite@1.0.30001762:
+ resolution: {integrity: sha512-PxZwGNvH7Ak8WX5iXzoK1KPZttBXNPuaOvI2ZYU7NrlM+d9Ov+TUvlLOBNGzVXAntMSMMlJPd+jY6ovrVjSmUw==}
+
+ ccount@2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+
+ centra@2.7.0:
+ resolution: {integrity: sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==}
cesium@1.126.0:
resolution: {integrity: sha512-29Cy6eq9NzTbQUaOXQEnVJyYoHCeizrBTbbB76OClI5+FNq9saUUx+iQXg/J6r8vX+KWt6oD/lVpZ0QMcvAgog==}
@@ -1650,16 +3650,56 @@
resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ change-case@5.4.4:
+ resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==}
+
+ char-regex@1.0.2:
+ resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
+ engines: {node: '>=10'}
+
+ character-entities@2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+
+ chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+ engines: {node: '>= 8.10.0'}
+
chokidar@4.0.3:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
+ chokidar@5.0.0:
+ resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==}
+ engines: {node: '>= 20.19.0'}
+
chownr@1.1.4:
resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==}
+
+ ci-info@3.9.0:
+ resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
+ engines: {node: '>=8'}
+
+ ci-info@4.3.1:
+ resolution: {integrity: sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==}
+ engines: {node: '>=8'}
+
+ citty@0.1.6:
+ resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
+
+ cjs-module-lexer@1.4.3:
+ resolution: {integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==}
class-utils@0.3.6:
resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==}
engines: {node: '>=0.10.0'}
+
+ clean-regexp@1.0.0:
+ resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
+ engines: {node: '>=4'}
+
+ clean-stack@2.2.0:
+ resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
+ engines: {node: '>=6'}
cli-boxes@3.0.0:
resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
@@ -1669,12 +3709,27 @@
resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ cli-cursor@5.0.0:
+ resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
+ engines: {node: '>=18'}
+
cli-spinners@2.9.2:
resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
engines: {node: '>=6'}
+ cli-truncate@5.1.1:
+ resolution: {integrity: sha512-SroPvNHxUnk+vIW/dOSfNqdy1sPEFkrTk6TUtqLCnBlo3N7TNYYkzzN7uSD6+jVjrdO4+p8nH7JzH6cIvUem6A==}
+ engines: {node: '>=20'}
+
clipboard@2.0.11:
resolution: {integrity: sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==}
+
+ cliui@7.0.4:
+ resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
+
+ cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
clone@2.1.2:
resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
@@ -1684,12 +3739,19 @@
resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==}
engines: {node: '>=6'}
+ co@4.6.0:
+ resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
+ engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
+
codemirror@5.65.20:
resolution: {integrity: sha512-i5dLDDxwkFCbhjvL2pNjShsojoL3XHyDwsGv1jqETUoW+lzpBKKqNTUWgQwVAOa0tUm4BwekT455ujafi8payA==}
codepage@1.15.0:
resolution: {integrity: sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==}
engines: {node: '>=0.8'}
+
+ collect-v8-coverage@1.0.3:
+ resolution: {integrity: sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==}
collection-visit@1.0.0:
resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==}
@@ -1709,9 +3771,19 @@
resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
engines: {node: '>=12.5.0'}
+ colord@2.9.3:
+ resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
+
+ colorette@2.0.20:
+ resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+
combined-stream@1.0.8:
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
engines: {node: '>= 0.8'}
+
+ commander@14.0.2:
+ resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==}
+ engines: {node: '>=20'}
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -1720,8 +3792,15 @@
resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
engines: {node: '>= 10'}
+ comment-parser@1.4.1:
+ resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
+ engines: {node: '>= 12.0.0'}
+
commist@3.2.0:
resolution: {integrity: sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw==}
+
+ compare-versions@3.6.0:
+ resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==}
complex.js@2.4.3:
resolution: {integrity: sha512-UrQVSUur14tNX6tiP4y8T4w4FeJAX3bi2cIv0pu/DTLFNxoq7z2Yh83Vfzztj6Px3X/lubqQ9IrPp7Bpn6p4MQ==}
@@ -1738,6 +3817,9 @@
compute-scroll-into-view@3.1.1:
resolution: {integrity: sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==}
+ concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+
concat-stream@2.0.0:
resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==}
engines: {'0': node >= 6.0}
@@ -1748,9 +3830,55 @@
confbox@0.1.8:
resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==}
+ confbox@0.2.2:
+ resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==}
+
+ consola@3.4.2:
+ resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+
+ content-disposition@0.5.4:
+ resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
+ engines: {node: '>= 0.6'}
+
+ content-disposition@1.0.1:
+ resolution: {integrity: sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q==}
+ engines: {node: '>=18'}
+
+ content-type@1.0.5:
+ resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
+ engines: {node: '>= 0.6'}
+
+ convert-source-map@1.9.0:
+ resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
+
+ convert-source-map@2.0.0:
+ resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+
+ cookie-signature@1.0.7:
+ resolution: {integrity: sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==}
+
+ cookie-signature@1.2.2:
+ resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==}
+ engines: {node: '>=6.6.0'}
+
+ cookie@0.7.2:
+ resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
+ engines: {node: '>= 0.6'}
+
+ copy-anything@4.0.5:
+ resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==}
+ engines: {node: '>=18'}
+
copy-descriptor@0.1.1:
resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==}
engines: {node: '>=0.10.0'}
+
+ core-js-compat@3.47.0:
+ resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==}
+
+ core-js@3.47.0:
+ resolution: {integrity: sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==}
core-util-is@1.0.3:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
@@ -1758,6 +3886,15 @@
cors@2.8.5:
resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
engines: {node: '>= 0.10'}
+
+ cosmiconfig@9.0.0:
+ resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ typescript: '>=4.9.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
countup.js@1.9.3:
resolution: {integrity: sha512-UHf2P/mFKaESqdPq+UdBJm/1y8lYdlcDd0nTZHNC8cxWoJwZr1Eldm1PpWui446vDl5Pd8PtRYkr3q6K4+Qa5A==}
@@ -1770,6 +3907,11 @@
engines: {node: '>=0.8'}
hasBin: true
+ cross-env@7.0.3:
+ resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
+ engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
+ hasBin: true
+
cross-spawn@7.0.6:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
@@ -1777,23 +3919,69 @@
crypto-js@4.2.0:
resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==}
+ css-font-size-keywords@1.0.0:
+ resolution: {integrity: sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==}
+
+ css-font-stretch-keywords@1.0.1:
+ resolution: {integrity: sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==}
+
+ css-font-style-keywords@1.0.1:
+ resolution: {integrity: sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==}
+
+ css-font-weight-keywords@1.0.0:
+ resolution: {integrity: sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==}
+
+ css-functions-list@3.2.3:
+ resolution: {integrity: sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==}
+ engines: {node: '>=12 || >=16'}
+
+ css-list-helpers@2.0.0:
+ resolution: {integrity: sha512-9Bj8tZ0jWbAM3u/U6m/boAzAwLPwtjzFvwivr2piSvyVa3K3rChJzQy4RIHkNkKiZCHrEMWDJWtTR8UyVhdDnQ==}
+
css-select@4.3.0:
resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
+
+ css-system-font-keywords@1.0.0:
+ resolution: {integrity: sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==}
css-tree@1.1.3:
resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==}
engines: {node: '>=8.0.0'}
+ css-tree@3.1.0:
+ resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==}
+ engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
+
css-what@6.2.2:
resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==}
engines: {node: '>= 6'}
+
+ cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
csso@4.2.0:
resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==}
engines: {node: '>=8.0.0'}
+ cssom@0.3.8:
+ resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==}
+
+ cssom@0.4.4:
+ resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==}
+
+ cssstyle@2.3.0:
+ resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==}
+ engines: {node: '>=8'}
+
csstype@3.2.3:
resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
+
+ czg@1.12.0:
+ resolution: {integrity: sha512-LGltcoZ5m7vhe3WNw16QXqd5WurnHegx9V15MwZJtFAU2AVCYLCqDbwxPUgZOnAcdzzooq33ONcU148HOQsjdA==}
+ engines: {node: '>=v12.20.0'}
+ hasBin: true
d3-array@1.2.4:
resolution: {integrity: sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==}
@@ -1807,6 +3995,10 @@
d@1.0.2:
resolution: {integrity: sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==}
engines: {node: '>=0.12'}
+
+ data-urls@2.0.0:
+ resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==}
+ engines: {node: '>=10'}
data-view-buffer@1.0.2:
resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==}
@@ -1843,6 +4035,9 @@
decimal.js@10.6.0:
resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==}
+ decode-named-character-reference@1.2.0:
+ resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==}
+
decode-uri-component@0.2.2:
resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==}
engines: {node: '>=0.10'}
@@ -1850,6 +4045,9 @@
decompress-response@6.0.0:
resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
engines: {node: '>=10'}
+
+ dedent@0.7.0:
+ resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
deep-equal@1.1.2:
resolution: {integrity: sha512-5tdhKF6DbU7iIzrIOa1AOUt39ZRm13cmL1cGEh//aqR8x9+tNfbywRf0n5FD/18OKMdo7DNEtrX2t22ZAkI+eg==}
@@ -1859,9 +4057,27 @@
resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
engines: {node: '>=4.0.0'}
+ deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+
+ deep-pick-omit@1.2.1:
+ resolution: {integrity: sha512-2J6Kc/m3irCeqVG42T+SaUMesaK7oGWaedGnQQK/+O0gYc+2SP5bKh/KKTE7d7SJ+GCA9UUE1GRzh6oDe0EnGw==}
+
+ deepmerge@4.3.1:
+ resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
+ engines: {node: '>=0.10.0'}
+
+ default-gateway@6.0.3:
+ resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
+ engines: {node: '>= 10'}
+
define-data-property@1.1.4:
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
engines: {node: '>= 0.4'}
+
+ define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
define-properties@1.2.1:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
@@ -1879,6 +4095,13 @@
resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==}
engines: {node: '>=0.10.0'}
+ defu@6.1.4:
+ resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
+
+ del@6.1.1:
+ resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==}
+ engines: {node: '>=10'}
+
delayed-stream@1.0.0:
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
engines: {node: '>=0.4.0'}
@@ -1893,6 +4116,13 @@
resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
engines: {node: '>= 0.8'}
+ dequal@2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+
+ destr@2.0.5:
+ resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==}
+
destroy@1.2.0:
resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
@@ -1906,6 +4136,13 @@
resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
engines: {node: '>=8'}
+ detect-newline@3.1.0:
+ resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
+ engines: {node: '>=8'}
+
+ devlop@1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+
diagram-js-direct-editing@2.1.2:
resolution: {integrity: sha512-VpccLAnLqLF1cp3fk363QUbRVTd/qTcj2oOb+IqgcmOiWszJp7J9Ta6y5GjUvw48hDZpzCatlmWwA4CJ3MaYGQ==}
peerDependencies:
@@ -1917,6 +4154,14 @@
didi@9.0.2:
resolution: {integrity: sha512-q2+aj+lnJcUweV7A9pdUrwFr4LHVmRPwTmQLtHPFz4aT7IBoryN6Iy+jmFku+oIzr5ebBkvtBCOb87+dJhb7bg==}
+ diff-sequences@27.5.1:
+ resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+
disable-devtool@0.3.9:
resolution: {integrity: sha512-WHCpC8f93Cn2DnTeaq57NFLcdw4921sovh1ammnp/2o8Snb704HK/Vw1/D2D1Pihc0zc8/mVKb5nchHtoadObQ==}
@@ -1925,6 +4170,9 @@
dom-serializer@1.4.1:
resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
+
+ dom-serializer@2.0.0:
+ resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
dom-walk@0.1.2:
resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==}
@@ -1941,11 +4189,20 @@
domelementtype@2.3.0:
resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
+ domexception@2.0.1:
+ resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==}
+ engines: {node: '>=8'}
+ deprecated: Use your platform's native DOMException instead
+
domhandler@2.4.2:
resolution: {integrity: sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==}
domhandler@4.3.1:
resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
+ engines: {node: '>= 4'}
+
+ domhandler@5.0.3:
+ resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
engines: {node: '>= 4'}
domify@1.4.2:
@@ -1960,12 +4217,22 @@
domutils@2.8.0:
resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
+ domutils@3.2.2:
+ resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==}
+
+ dotenv@17.2.3:
+ resolution: {integrity: sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==}
+ engines: {node: '>=12'}
+
draco3d@1.5.7:
resolution: {integrity: sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==}
dunder-proto@1.0.1:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
+
+ duplexer@0.1.2:
+ resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
earcut@2.2.4:
resolution: {integrity: sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==}
@@ -1982,10 +4249,17 @@
ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
+ electron-to-chromium@1.5.267:
+ resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==}
+
element-plus@2.9.11:
resolution: {integrity: sha512-x4L/6YC8de4JtuE3vpaEugJdQIeHQaHtIYKyk67IeF6dTIiVax45aX4nWOygnh+xX+0gTvL6xO+9BZhPA3G82w==}
peerDependencies:
vue: ^3.2.0
+
+ emittery@0.8.1:
+ resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==}
+ engines: {node: '>=10'}
emoji-regex@10.6.0:
resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==}
@@ -2000,6 +4274,10 @@
resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
engines: {node: '>= 4'}
+ empathic@2.0.0:
+ resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==}
+ engines: {node: '>=14'}
+
encodeurl@2.0.0:
resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==}
engines: {node: '>= 0.8'}
@@ -2007,15 +4285,37 @@
end-of-stream@1.4.5:
resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==}
+ enhanced-resolve@5.18.4:
+ resolution: {integrity: sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==}
+ engines: {node: '>=10.13.0'}
+
entities@1.1.2:
resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==}
entities@2.2.0:
resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
+ entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+
entities@7.0.0:
resolution: {integrity: sha512-FDWG5cmEYf2Z00IkYRhbFrwIwvdFKH07uV8dvNy0omp/Qb1xcyCWp2UDtcwJF4QZZvk0sLudP6/hAu42TaqVhQ==}
engines: {node: '>=0.12'}
+
+ env-paths@2.2.1:
+ resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+ engines: {node: '>=6'}
+
+ environment@1.1.0:
+ resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==}
+ engines: {node: '>=18'}
+
+ error-ex@1.3.4:
+ resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==}
+
+ errx@0.1.0:
+ resolution: {integrity: sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==}
es-abstract@1.24.1:
resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==}
@@ -2028,6 +4328,9 @@
es-errors@1.3.0:
resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
engines: {node: '>= 0.4'}
+
+ es-module-lexer@1.7.0:
+ resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
es-object-atoms@1.1.1:
resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
@@ -2057,6 +4360,10 @@
engines: {node: '>=12'}
hasBin: true
+ escalade@3.2.0:
+ resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
+ engines: {node: '>=6'}
+
escape-html@1.0.3:
resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
@@ -2067,16 +4374,231 @@
resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
engines: {node: '>=0.8.0'}
+ escape-string-regexp@2.0.0:
+ resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
+ engines: {node: '>=8'}
+
+ escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+
escape-string-regexp@5.0.0:
resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
engines: {node: '>=12'}
+
+ escodegen@2.1.0:
+ resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==}
+ engines: {node: '>=6.0'}
+ hasBin: true
+
+ eslint-compat-utils@0.5.1:
+ resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-compat-utils@0.6.5:
+ resolution: {integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-config-flat-gitignore@2.1.0:
+ resolution: {integrity: sha512-cJzNJ7L+psWp5mXM7jBX+fjHtBvvh06RBlcweMhKD8jWqQw0G78hOW5tpVALGHGFPsBV+ot2H+pdDGJy6CV8pA==}
+ peerDependencies:
+ eslint: ^9.5.0
+
+ eslint-flat-config-utils@2.1.4:
+ resolution: {integrity: sha512-bEnmU5gqzS+4O+id9vrbP43vByjF+8KOs+QuuV4OlqAuXmnRW2zfI/Rza1fQvdihQ5h4DUo0NqFAiViD4mSrzQ==}
+
+ eslint-json-compat-utils@0.2.1:
+ resolution: {integrity: sha512-YzEodbDyW8DX8bImKhAcCeu/L31Dd/70Bidx2Qex9OFUtgzXLqtfWL4Hr5fM/aCCB8QUZLuJur0S9k6UfgFkfg==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ '@eslint/json': '*'
+ eslint: '*'
+ jsonc-eslint-parser: ^2.4.0
+ peerDependenciesMeta:
+ '@eslint/json':
+ optional: true
+
+ eslint-merge-processors@2.0.0:
+ resolution: {integrity: sha512-sUuhSf3IrJdGooquEUB5TNpGNpBoQccbnaLHsb1XkBLUPPqCNivCpY05ZcpCOiV9uHwO2yxXEWVczVclzMxYlA==}
+ peerDependencies:
+ eslint: '*'
+
+ eslint-plugin-antfu@3.1.1:
+ resolution: {integrity: sha512-7Q+NhwLfHJFvopI2HBZbSxWXngTwBLKxW1AGXLr2lEGxcEIK/AsDs8pn8fvIizl5aZjBbVbVK5ujmMpBe4Tvdg==}
+ peerDependencies:
+ eslint: '*'
+
+ eslint-plugin-command@3.4.0:
+ resolution: {integrity: sha512-EW4eg/a7TKEhG0s5IEti72kh3YOTlnhfFNuctq5WnB1fst37/IHTd5OkD+vnlRf3opTvUcSRihAateP6bT5ZcA==}
+ peerDependencies:
+ eslint: '*'
+
+ eslint-plugin-es-x@7.8.0:
+ resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=8'
+
+ eslint-plugin-import-lite@0.3.1:
+ resolution: {integrity: sha512-9+EByHZatvWFn/lRsUja5pwah0U5lhOA6SXqTI/iIzoIJHMgmsHUHEaTlLzKU/ukyCRwKEU5E92aUURPgVWq0A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=9.0.0'
+ typescript: '>=4.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ eslint-plugin-jsdoc@51.4.1:
+ resolution: {integrity: sha512-y4CA9OkachG8v5nAtrwvcvjIbdcKgSyS6U//IfQr4FZFFyeBFwZFf/tfSsMr46mWDJgidZjBTqoCRlXywfFBMg==}
+ engines: {node: '>=20.11.0'}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ eslint-plugin-jsonc@2.21.0:
+ resolution: {integrity: sha512-HttlxdNG5ly3YjP1cFMP62R4qKLxJURfBZo2gnMY+yQojZxkLyOpY1H1KRTKBmvQeSG9pIpSGEhDjE17vvYosg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-plugin-n@17.23.1:
+ resolution: {integrity: sha512-68PealUpYoHOBh332JLLD9Sj7OQUDkFpmcfqt8R9sySfFSeuGJjMTJQvCRRB96zO3A/PELRLkPrzsHmzEFQQ5A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.23.0'
+
+ eslint-plugin-no-only-tests@3.3.0:
+ resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==}
+ engines: {node: '>=5.0.0'}
+
+ eslint-plugin-perfectionist@4.15.1:
+ resolution: {integrity: sha512-MHF0cBoOG0XyBf7G0EAFCuJJu4I18wy0zAoT1OHfx2o6EOx1EFTIzr2HGeuZa1kDcusoX0xJ9V7oZmaeFd773Q==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ eslint: '>=8.45.0'
+
+ eslint-plugin-pnpm@1.4.3:
+ resolution: {integrity: sha512-wdWrkWN5mxRgEADkQvxwv0xA+0++/hYDD5OyXTL6UqPLUPdcCFQJO61NO7IKhEqb3GclWs02OoFs1METN+a3zQ==}
+ peerDependencies:
+ eslint: ^9.0.0
+
+ eslint-plugin-regexp@2.10.0:
+ resolution: {integrity: sha512-ovzQT8ESVn5oOe5a7gIDPD5v9bCSjIFJu57sVPDqgPRXicQzOnYfFN21WoQBQF18vrhT5o7UMKFwJQVVjyJ0ng==}
+ engines: {node: ^18 || >=20}
+ peerDependencies:
+ eslint: '>=8.44.0'
+
+ eslint-plugin-toml@0.12.0:
+ resolution: {integrity: sha512-+/wVObA9DVhwZB1nG83D2OAQRrcQZXy+drqUnFJKymqnmbnbfg/UPmEMCKrJNcEboUGxUjYrJlgy+/Y930mURQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-plugin-unicorn@60.0.0:
+ resolution: {integrity: sha512-QUzTefvP8stfSXsqKQ+vBQSEsXIlAiCduS/V1Em+FKgL9c21U/IIm20/e3MFy1jyCf14tHAhqC1sX8OTy6VUCg==}
+ engines: {node: ^20.10.0 || >=21.0.0}
+ peerDependencies:
+ eslint: '>=9.29.0'
+
+ eslint-plugin-unused-imports@4.3.0:
+ resolution: {integrity: sha512-ZFBmXMGBYfHttdRtOG9nFFpmUvMtbHSjsKrS20vdWdbfiVYsO3yA2SGYy9i9XmZJDfMGBflZGBCm70SEnFQtOA==}
+ peerDependencies:
+ '@typescript-eslint/eslint-plugin': ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0
+ eslint: ^9.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ '@typescript-eslint/eslint-plugin':
+ optional: true
+
+ eslint-plugin-vue@10.6.2:
+ resolution: {integrity: sha512-nA5yUs/B1KmKzvC42fyD0+l9Yd+LtEpVhWRbXuDj0e+ZURcTtyRbMDWUeJmTAh2wC6jC83raS63anNM2YT3NPw==}
+ 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
+ vue-eslint-parser: ^10.0.0
+ peerDependenciesMeta:
+ '@stylistic/eslint-plugin':
+ optional: true
+ '@typescript-eslint/parser':
+ optional: true
+
+ eslint-plugin-yml@1.19.1:
+ resolution: {integrity: sha512-bYkOxyEiXh9WxUhVYPELdSHxGG5pOjCSeJOVkfdIyj6tuiHDxrES2WAW1dBxn3iaZQey57XflwLtCYRcNPOiOg==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-processor-vue-blocks@2.0.0:
+ resolution: {integrity: sha512-u4W0CJwGoWY3bjXAuFpc/b6eK3NQEI8MoeW7ritKj3G3z/WtHrKjkqf+wk8mPEy5rlMGS+k6AZYOw2XBoN/02Q==}
+ peerDependencies:
+ '@vue/compiler-sfc': ^3.3.0
+ eslint: '>=9.0.0'
+
+ eslint-scope@8.4.0:
+ resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ eslint-visitor-keys@4.2.1:
+ resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint@9.39.2:
+ resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ hasBin: true
+ peerDependencies:
+ jiti: '*'
+ peerDependenciesMeta:
+ jiti:
+ optional: true
esniff@2.0.1:
resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==}
engines: {node: '>=0.10'}
+ espree@10.4.0:
+ resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ esquery@1.7.0:
+ resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==}
+ engines: {node: '>=0.10'}
+
+ esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+
+ estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+
estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
+ estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+
+ esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
etag@1.8.1:
resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
@@ -2099,6 +4621,25 @@
resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
engines: {node: '>=0.8.x'}
+ eventsource-parser@3.0.6:
+ resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==}
+ engines: {node: '>=18.0.0'}
+
+ eventsource@3.0.7:
+ resolution: {integrity: sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==}
+ engines: {node: '>=18.0.0'}
+
+ execa@5.1.1:
+ resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
+ engines: {node: '>=10'}
+
+ exif-parser@0.1.12:
+ resolution: {integrity: sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==}
+
+ exit@0.1.2:
+ resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
+ engines: {node: '>= 0.8.0'}
+
expand-brackets@2.1.4:
resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==}
engines: {node: '>=0.10.0'}
@@ -2106,6 +4647,27 @@
expand-template@2.0.3:
resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==}
engines: {node: '>=6'}
+
+ expect@27.5.1:
+ resolution: {integrity: sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ express-rate-limit@7.5.1:
+ resolution: {integrity: sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==}
+ engines: {node: '>= 16'}
+ peerDependencies:
+ express: '>= 4.11'
+
+ express@4.22.1:
+ resolution: {integrity: sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==}
+ engines: {node: '>= 0.10.0'}
+
+ express@5.2.1:
+ resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==}
+ engines: {node: '>= 18'}
+
+ exsolve@1.0.8:
+ resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==}
ext@1.7.0:
resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==}
@@ -2122,6 +4684,9 @@
resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==}
engines: {node: '>=0.10.0'}
+ fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
fast-fifo@1.3.2:
resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==}
@@ -2129,12 +4694,51 @@
resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
engines: {node: '>=8.6.0'}
+ fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+
+ fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+
fast-unique-numbers@9.0.24:
resolution: {integrity: sha512-Dv0BYn4waOWse94j16rsZ5w/0zoaCa74O3q6IZjMqaXbtT92Q+Sb6pPk+phGzD8Xh+nueQmSRI3tSCaHKidzKw==}
engines: {node: '>=18.2.0'}
+ fast-uri@3.1.0:
+ resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
+
+ fastest-levenshtein@1.0.16:
+ resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
+ engines: {node: '>= 4.9.1'}
+
fastq@1.20.1:
resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==}
+
+ fault@2.0.1:
+ resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==}
+
+ fb-watchman@2.0.2:
+ resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
+
+ fdir@6.5.0:
+ resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
+
+ file-entry-cache@11.1.1:
+ resolution: {integrity: sha512-TPVFSDE7q91Dlk1xpFLvFllf8r0HyOMOlnWy7Z2HBku5H3KhIeOGInexrIeg2D64DosVB/JXkrrk6N/7Wriq4A==}
+
+ file-entry-cache@8.0.0:
+ resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
+ engines: {node: '>=16.0.0'}
+
+ file-type@9.0.0:
+ resolution: {integrity: sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==}
+ engines: {node: '>=6'}
filesize@10.1.6:
resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==}
@@ -2147,6 +4751,36 @@
fill-range@7.1.1:
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
+
+ finalhandler@1.3.2:
+ resolution: {integrity: sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==}
+ engines: {node: '>= 0.8'}
+
+ finalhandler@2.1.1:
+ resolution: {integrity: sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==}
+ engines: {node: '>= 18.0.0'}
+
+ find-up-simple@1.0.1:
+ resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==}
+ engines: {node: '>=18'}
+
+ find-up@4.1.0:
+ resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+ engines: {node: '>=8'}
+
+ find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+
+ flat-cache@4.0.1:
+ resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
+ engines: {node: '>=16'}
+
+ flat-cache@6.1.19:
+ resolution: {integrity: sha512-l/K33newPTZMTGAnnzaiqSl6NnH7Namh8jBNjrgjprWxGmZUuxx/sJNIRaijOh3n7q7ESbhNZC+pvVZMFdeU4A==}
+
+ flatted@3.3.3:
+ resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
follow-redirects@1.15.11:
resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==}
@@ -2169,9 +4803,21 @@
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
+ form-data@3.0.4:
+ resolution: {integrity: sha512-f0cRzm6dkyVYV3nPoooP8XlccPQukegwhAnpoLcXy+X+A8KfpGOoXwDr9FLZd3wzgLaBGQBE3lY93Zm/i1JvIQ==}
+ engines: {node: '>= 6'}
+
form-data@4.0.5:
resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==}
engines: {node: '>= 6'}
+
+ format@0.2.2:
+ resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
+ engines: {node: '>=0.4.x'}
+
+ forwarded@0.2.0:
+ resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
+ engines: {node: '>= 0.6'}
frac@1.1.2:
resolution: {integrity: sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==}
@@ -2180,6 +4826,9 @@
fraction.js@4.3.7:
resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+ fraction.js@5.3.4:
+ resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==}
+
fragment-cache@0.2.1:
resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==}
engines: {node: '>=0.10.0'}
@@ -2187,6 +4836,10 @@
fresh@0.5.2:
resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
engines: {node: '>= 0.6'}
+
+ fresh@2.0.0:
+ resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
+ engines: {node: '>= 0.8'}
fs-constants@1.0.0:
resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}
@@ -2198,6 +4851,9 @@
fs-extra@9.1.0:
resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
engines: {node: '>=10'}
+
+ fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
@@ -2218,45 +4874,120 @@
resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==}
engines: {node: '>= 0.4'}
+ generic-names@4.0.0:
+ resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==}
+
+ gensync@1.0.0-beta.2:
+ resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
+ engines: {node: '>=6.9.0'}
+
geojson-equality@0.1.6:
resolution: {integrity: sha512-TqG8YbqizP3EfwP5Uw4aLu6pKkg6JQK9uq/XZ1lXQntvTHD1BBKJWhNpJ2M0ax6TuWMP3oyx6Oq7FCIfznrgpQ==}
geojson-rbush@3.2.0:
resolution: {integrity: sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==}
+ get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ get-east-asian-width@1.4.0:
+ resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==}
+ engines: {node: '>=18'}
+
get-intrinsic@1.3.0:
resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
engines: {node: '>= 0.4'}
+
+ get-package-type@0.1.0:
+ resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
+ engines: {node: '>=8.0.0'}
get-proto@1.0.1:
resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
engines: {node: '>= 0.4'}
+ get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+ engines: {node: '>=10'}
+
get-symbol-description@1.1.0:
resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
engines: {node: '>= 0.4'}
+
+ get-tsconfig@4.13.0:
+ resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==}
get-value@2.0.6:
resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==}
engines: {node: '>=0.10.0'}
+ giget@2.0.0:
+ resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==}
+ hasBin: true
+
github-from-package@0.0.0:
resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==}
+
+ github-slugger@2.0.0:
+ resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==}
glob-parent@5.1.2:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
engines: {node: '>= 6'}
+ glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+
glob@10.5.0:
resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
hasBin: true
+ glob@13.0.0:
+ resolution: {integrity: sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==}
+ engines: {node: 20 || >=22}
+
+ glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ deprecated: Glob versions prior to v9 are no longer supported
+
+ global-modules@2.0.0:
+ resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==}
+ engines: {node: '>=6'}
+
+ global-prefix@3.0.0:
+ resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==}
+ engines: {node: '>=6'}
+
global@4.4.0:
resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==}
+
+ globals@14.0.0:
+ resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
+ engines: {node: '>=18'}
+
+ globals@15.15.0:
+ resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==}
+ engines: {node: '>=18'}
+
+ globals@16.5.0:
+ resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==}
+ engines: {node: '>=18'}
globalthis@1.0.4:
resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
engines: {node: '>= 0.4'}
+
+ globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+
+ globjoin@0.1.4:
+ resolution: {integrity: sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==}
+
+ globrex@0.1.2:
+ resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
good-listener@1.2.2:
resolution: {integrity: sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==}
@@ -2270,6 +5001,13 @@
grapheme-splitter@1.0.4:
resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
+
+ graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+
+ gzip-size@6.0.0:
+ resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
+ engines: {node: '>=10'}
hammerjs@2.0.8:
resolution: {integrity: sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==}
@@ -2322,6 +5060,13 @@
resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==}
engines: {node: '>=0.10.0'}
+ hash-sum@2.0.0:
+ resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==}
+
+ hashery@1.4.0:
+ resolution: {integrity: sha512-Wn2i1In6XFxl8Az55kkgnFRiAlIAushzh26PTjL2AKtQcEfXrcLa7Hn5QOWGZEf3LU057P9TwwZjFyxfS1VuvQ==}
+ engines: {node: '>=20'}
+
hasown@2.0.2:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
@@ -2337,8 +5082,29 @@
resolution: {integrity: sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==}
engines: {node: '>=12.0.0'}
+ hono@4.11.3:
+ resolution: {integrity: sha512-PmQi306+M/ct/m5s66Hrg+adPnkD5jiO6IjA7WhWw0gSBSo1EcRegwuI1deZ+wd5pzCGynCcn2DprnE4/yEV4w==}
+ engines: {node: '>=16.9.0'}
+
+ hookable@5.5.3:
+ resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+
+ hookified@1.15.0:
+ resolution: {integrity: sha512-51w+ZZGt7Zw5q7rM3nC4t3aLn/xvKDETsXqMczndvwyVQhAHfUmUuFBRFcos8Iyebtk7OAE9dL26wFNzZVVOkw==}
+
htm@3.1.1:
resolution: {integrity: sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ==}
+
+ html-encoding-sniffer@2.0.1:
+ resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==}
+ engines: {node: '>=10'}
+
+ html-escaper@2.0.2:
+ resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
+
+ html-tags@3.3.1:
+ resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
+ engines: {node: '>=8'}
html-void-elements@2.0.1:
resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==}
@@ -2352,13 +5118,28 @@
htmlparser2@3.10.1:
resolution: {integrity: sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==}
+ htmlparser2@8.0.2:
+ resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
+
http-errors@2.0.1:
resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==}
engines: {node: '>= 0.8'}
+ http-proxy-agent@4.0.1:
+ resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
+ engines: {node: '>= 6'}
+
+ https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
+ engines: {node: '>= 6'}
+
hull.js@1.0.6:
resolution: {integrity: sha512-TC7e9sHYOaCVms0sn2hN7buxnaGfcl9h5EPVoVX9DTPoMpqQiS9bf3tmGDgiNaMVHBD91RAvWjCxrJ5Jx8BI5A==}
deprecated: This package is unmaintained and vulnerable. Do not use it.
+
+ human-signals@2.1.0:
+ resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
+ engines: {node: '>=10.17.0'}
i18next@20.6.1:
resolution: {integrity: sha512-yCMYTMEJ9ihCwEQQ3phLo7I/Pwycf8uAx+sRHwwk5U9Aui/IZYgQRyMqXafQOw5QQ7DM1Z+WyEXWIqSuJHhG2A==}
@@ -2366,11 +5147,36 @@
i18next@23.16.8:
resolution: {integrity: sha512-06r/TitrM88Mg5FdUXAKL96dJMzgqLE5dv3ryBAra4KCwD9mJ4ndOTS95ZuymIGoE+2hzfdaMak2X11/es7ZWg==}
+ iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+ engines: {node: '>=0.10.0'}
+
+ iconv-lite@0.7.1:
+ resolution: {integrity: sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==}
+ engines: {node: '>=0.10.0'}
+
+ icss-replace-symbols@1.1.0:
+ resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==}
+
+ icss-utils@5.1.0:
+ resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
ids@1.0.5:
resolution: {integrity: sha512-XQ0yom/4KWTL29sLG+tyuycy7UmeaM/79GRtSJq6IG9cJGIPeBz5kwDCguie3TwxaMNIc3WtPi0cTa1XYHicpw==}
ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
+
+ ignore@5.3.2:
+ resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+ engines: {node: '>= 4'}
+
+ ignore@7.0.5:
+ resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
+ engines: {node: '>= 4'}
image-size@0.5.5:
resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
@@ -2383,8 +5189,36 @@
immer@9.0.21:
resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==}
+ immutable@4.3.7:
+ resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==}
+
immutable@5.1.4:
resolution: {integrity: sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==}
+
+ import-fresh@3.3.1:
+ resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
+ engines: {node: '>=6'}
+
+ import-local@3.2.0:
+ resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==}
+ engines: {node: '>=8'}
+ hasBin: true
+
+ imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+
+ indent-string@4.0.0:
+ resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+ engines: {node: '>=8'}
+
+ indent-string@5.0.0:
+ resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+ engines: {node: '>=12'}
+
+ inflight@1.0.6:
+ resolution: {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.
inherits-browser@0.1.0:
resolution: {integrity: sha512-CJHHvW3jQ6q7lzsXPpapLdMx5hDpSF3FSh45pwsj6bKxJJ8Nl8v43i5yXnr3BdfOimGHKyniewQtnAIp3vyJJw==}
@@ -2399,9 +5233,17 @@
resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
engines: {node: '>= 0.4'}
+ invert-kv@3.0.1:
+ resolution: {integrity: sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==}
+ engines: {node: '>=8'}
+
ip-address@10.1.0:
resolution: {integrity: sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==}
engines: {node: '>= 12'}
+
+ ipaddr.js@1.9.1:
+ resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
+ engines: {node: '>= 0.10'}
is-accessor-descriptor@1.0.1:
resolution: {integrity: sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==}
@@ -2415,6 +5257,9 @@
resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
engines: {node: '>= 0.4'}
+ is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+
is-arrayish@0.3.4:
resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==}
@@ -2426,6 +5271,10 @@
resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
engines: {node: '>= 0.4'}
+ is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+
is-boolean-object@1.2.2:
resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==}
engines: {node: '>= 0.4'}
@@ -2433,8 +5282,16 @@
is-buffer@1.1.6:
resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==}
+ is-builtin-module@5.0.0:
+ resolution: {integrity: sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==}
+ engines: {node: '>=18.20'}
+
is-callable@1.2.7:
resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
+ engines: {node: '>= 0.4'}
+
+ is-core-module@2.16.1:
+ resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
engines: {node: '>= 0.4'}
is-data-descriptor@1.0.1:
@@ -2457,6 +5314,11 @@
resolution: {integrity: sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==}
engines: {node: '>= 0.4'}
+ is-docker@2.2.1:
+ resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
+ engines: {node: '>=8'}
+ hasBin: true
+
is-extendable@0.1.1:
resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
engines: {node: '>=0.10.0'}
@@ -2477,8 +5339,16 @@
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
+ is-fullwidth-code-point@5.1.0:
+ resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==}
+ engines: {node: '>=18'}
+
is-function@1.0.2:
resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==}
+
+ is-generator-fn@2.1.0:
+ resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==}
+ engines: {node: '>=6'}
is-generator-function@1.1.2:
resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==}
@@ -2515,6 +5385,14 @@
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
+ is-path-cwd@2.2.0:
+ resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==}
+ engines: {node: '>=6'}
+
+ is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
+
is-plain-obj@1.1.0:
resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
engines: {node: '>=0.10.0'}
@@ -2526,6 +5404,12 @@
is-plain-object@5.0.0:
resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
engines: {node: '>=0.10.0'}
+
+ is-potential-custom-element-name@1.0.1:
+ resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
+
+ is-promise@4.0.0:
+ resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==}
is-regex@1.2.1:
resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
@@ -2539,6 +5423,10 @@
resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
engines: {node: '>= 0.4'}
+ is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+ engines: {node: '>=8'}
+
is-string@1.1.1:
resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
engines: {node: '>= 0.4'}
@@ -2550,6 +5438,9 @@
is-typed-array@1.1.15:
resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
engines: {node: '>= 0.4'}
+
+ is-typedarray@1.0.0:
+ resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
is-unicode-supported@1.3.0:
resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
@@ -2570,15 +5461,27 @@
resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
engines: {node: '>= 0.4'}
+ is-what@5.5.0:
+ resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==}
+ engines: {node: '>=18'}
+
is-windows@1.0.2:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
+
+ is-wsl@2.2.0:
+ resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
+ engines: {node: '>=8'}
isarray@1.0.0:
resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
isarray@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+
+ isbinaryfile@5.0.7:
+ resolution: {integrity: sha512-gnWD14Jh3FzS3CPhF0AxNOJ8CxqeblPTADzI38r0wt8ZyQl5edpy75myt08EG2oKvpyiqSqsx+Wkz9vtkbTqYQ==}
+ engines: {node: '>= 18.0.0'}
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -2591,11 +5494,182 @@
resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==}
engines: {node: '>=0.10.0'}
+ istanbul-lib-coverage@3.2.2:
+ resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
+ engines: {node: '>=8'}
+
+ istanbul-lib-instrument@5.2.1:
+ resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==}
+ engines: {node: '>=8'}
+
+ istanbul-lib-report@3.0.1:
+ resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
+ engines: {node: '>=10'}
+
+ istanbul-lib-source-maps@4.0.1:
+ resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==}
+ engines: {node: '>=10'}
+
+ istanbul-reports@3.2.0:
+ resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==}
+ engines: {node: '>=8'}
+
jackspeak@3.4.3:
resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
javascript-natural-sort@0.7.1:
resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==}
+
+ jest-changed-files@27.5.1:
+ resolution: {integrity: sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-circus@27.5.1:
+ resolution: {integrity: sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-cli@27.5.1:
+ resolution: {integrity: sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ hasBin: true
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+
+ jest-config@27.5.1:
+ resolution: {integrity: sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==}
+ 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
+
+ jest-diff@27.5.1:
+ resolution: {integrity: sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-docblock@27.5.1:
+ resolution: {integrity: sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-each@27.5.1:
+ resolution: {integrity: sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-environment-jsdom@27.5.1:
+ resolution: {integrity: sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-environment-node@27.5.1:
+ resolution: {integrity: sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-get-type@27.5.1:
+ resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-haste-map@27.5.1:
+ resolution: {integrity: sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-jasmine2@27.5.1:
+ resolution: {integrity: sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-leak-detector@27.5.1:
+ resolution: {integrity: sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-matcher-utils@27.5.1:
+ resolution: {integrity: sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-message-util@27.5.1:
+ resolution: {integrity: sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-mock@27.5.1:
+ resolution: {integrity: sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-pnp-resolver@1.2.3:
+ resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
+ engines: {node: '>=6'}
+ peerDependencies:
+ jest-resolve: '*'
+ peerDependenciesMeta:
+ jest-resolve:
+ optional: true
+
+ jest-regex-util@27.5.1:
+ resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-resolve-dependencies@27.5.1:
+ resolution: {integrity: sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-resolve@27.5.1:
+ resolution: {integrity: sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-runner@27.5.1:
+ resolution: {integrity: sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-runtime@27.5.1:
+ resolution: {integrity: sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-serializer@27.5.1:
+ resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-snapshot@27.5.1:
+ resolution: {integrity: sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-util@27.5.1:
+ resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-validate@27.5.1:
+ resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-watcher@27.5.1:
+ resolution: {integrity: sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ jest-worker@27.5.1:
+ resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
+ engines: {node: '>= 10.13.0'}
+
+ jest@27.0.4:
+ resolution: {integrity: sha512-Px1iKFooXgGSkk1H8dJxxBIrM3tsc5SIuI4kfKYK2J+4rvCvPGr/cXktxh0e9zIPQ5g09kOMNfHQEmusBUf/ZA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ hasBin: true
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+
+ jimp@0.10.3:
+ resolution: {integrity: sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==}
+
+ jiti@2.6.1:
+ resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
+ hasBin: true
+
+ jose@6.1.3:
+ resolution: {integrity: sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==}
+
+ jpeg-js@0.3.7:
+ resolution: {integrity: sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==}
js-audio-recorder@1.0.7:
resolution: {integrity: sha512-JiDODCElVHGrFyjGYwYyNi7zCbKk9va9C77w+zCPMmi4C6ix7zsX2h3ddHugmo4dOTOTCym9++b/wVW9nC0IaA==}
@@ -2616,16 +5690,91 @@
js-sdsl@4.3.0:
resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==}
+ js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+
+ js-tokens@9.0.1:
+ resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==}
+
+ js-yaml@3.14.2:
+ resolution: {integrity: sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==}
+ hasBin: true
+
+ js-yaml@4.1.1:
+ resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==}
+ hasBin: true
+
jsbn@1.1.0:
resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==}
+
+ jsdoc-type-pratt-parser@4.1.0:
+ resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==}
+ engines: {node: '>=12.0.0'}
+
+ jsdoc-type-pratt-parser@4.8.0:
+ resolution: {integrity: sha512-iZ8Bdb84lWRuGHamRXFyML07r21pcwBrLkHEuHgEY5UbCouBwv7ECknDRKzsQIXMiqpPymqtIf8TC/shYKB5rw==}
+ engines: {node: '>=12.0.0'}
+
+ jsdoc-type-pratt-parser@7.0.0:
+ resolution: {integrity: sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==}
+ engines: {node: '>=20.0.0'}
+
+ jsdom@16.7.0:
+ resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ canvas: ^2.5.0
+ peerDependenciesMeta:
+ canvas:
+ optional: true
jsep@1.4.0:
resolution: {integrity: sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==}
engines: {node: '>= 10.16.0'}
+ jsesc@3.0.2:
+ resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ jsesc@3.1.0:
+ resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+
+ json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+
+ json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+
+ json-schema-traverse@1.0.0:
+ resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
+
+ json-schema-typed@8.0.2:
+ resolution: {integrity: sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==}
+
+ json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+
json5@1.0.2:
resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
hasBin: true
+
+ json5@2.2.3:
+ resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ jsonc-eslint-parser@2.4.2:
+ resolution: {integrity: sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ jsonc-parser@3.3.1:
+ resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==}
jsonfile@6.2.0:
resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==}
@@ -2635,6 +5784,12 @@
kdbush@4.0.2:
resolution: {integrity: sha512-WbCVYJ27Sz8zi9Q7Q0xHC+05iwkm3Znipc2XTlrnJbsHMYktW4hPhXUE8Ys1engBrvffoSCqbil1JQAa7clRpA==}
+
+ keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+
+ keyv@5.5.5:
+ resolution: {integrity: sha512-FA5LmZVF1VziNc0bIdCSA1IoSVnDCqE8HJIZZv2/W8YmoAM50+tnUgJR/gQZwEeIMleuIOnRnHA/UaZRNeV4iQ==}
kind-of@3.2.2:
resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==}
@@ -2652,8 +5807,29 @@
resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
engines: {node: '>=0.10.0'}
+ kleur@3.0.3:
+ resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
+ engines: {node: '>=6'}
+
+ klona@2.0.6:
+ resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==}
+ engines: {node: '>= 8'}
+
+ knitwork@1.3.0:
+ resolution: {integrity: sha512-4LqMNoONzR43B1W0ek0fhXMsDNW/zxa1NdFAVMY+k28pgZLovR4G3PB5MrpTxCy1QaZCqNoiaKPr5w5qZHfSNw==}
+
+ known-css-properties@0.37.0:
+ resolution: {integrity: sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==}
+
+ kolorist@1.8.0:
+ resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+
ktx-parse@0.7.1:
resolution: {integrity: sha512-FeA3g56ksdFNwjXJJsc1CCc7co+AJYDp6ipIp878zZ2bU8kWROatLYf39TQEd4/XRSUvBXovQ8gaVKWPXsCLEQ==}
+
+ lcid@3.1.1:
+ resolution: {integrity: sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==}
+ engines: {node: '>=8'}
leaflet-ant-path@1.3.0:
resolution: {integrity: sha512-wgWWcAD4w8QVguRsHh89NGj5eqwLOP6e/HazunW0fQaytqZqEh3WePWYIrmbUeMcOf2cX/+GecHkFfI5tirS1Q==}
@@ -2664,16 +5840,70 @@
lerc@2.0.0:
resolution: {integrity: sha512-7qo1Mq8ZNmaR4USHHm615nEW2lPeeWJ3bTyoqFbd35DLx0LUH7C6ptt5FDCTAlbIzs3+WKrk5SkJvw8AFDE2hg==}
+ leven@3.1.0:
+ resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
+ engines: {node: '>=6'}
+
+ levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+
+ licia@1.48.0:
+ resolution: {integrity: sha512-bBWiT5CSdEtwuAHiYTJ74yItCjIFdHi4xiFk6BRDfKa+sdCpkUHp69YKb5udNOJlHDzFjNjcMgNZ/+wQIHrB8A==}
+
lie@3.3.0:
resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==}
+
+ lilconfig@2.1.0:
+ resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
+ engines: {node: '>=10'}
+
+ lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+
+ lines-and-columns@2.0.4:
+ resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ lint-staged@16.2.7:
+ resolution: {integrity: sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==}
+ engines: {node: '>=20.17'}
+ hasBin: true
+
+ listr2@9.0.5:
+ resolution: {integrity: sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==}
+ engines: {node: '>=20.0.0'}
+
+ load-bmfont@1.4.2:
+ resolution: {integrity: sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==}
loader-utils@1.4.2:
resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==}
engines: {node: '>=4.0.0'}
+ loader-utils@3.3.1:
+ resolution: {integrity: sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==}
+ engines: {node: '>= 12.13.0'}
+
local-pkg@0.4.3:
resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==}
engines: {node: '>=14'}
+
+ local-pkg@1.1.2:
+ resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==}
+ engines: {node: '>=14'}
+
+ localstorage-polyfill@1.0.1:
+ resolution: {integrity: sha512-m4iHVZxFH5734oQcPKU08025gIz2+4bjWR9lulP8ZYxEJR0BpA0w32oJmkzh8y3UI9ci7xCBehQDc3oA1X+VHw==}
+ engines: {node: '>=6'}
+
+ locate-path@5.0.0:
+ resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+ engines: {node: '>=8'}
+
+ locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
lodash-es@4.17.22:
resolution: {integrity: sha512-XEawp1t0gxSi9x01glktRZ5HDy0HXqrM0x5pXQM98EaI0NxO6jVM7omDOxsuEo5UIASAnm2bRp1Jt/e0a2XU8Q==}
@@ -2701,11 +5931,17 @@
resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead.
+ lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+
lodash.throttle@4.1.1:
resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
lodash.toarray@4.4.0:
resolution: {integrity: sha512-QyffEA3i5dma5q2490+SgCvDN0pXLmRGSyAANuVi0HQ01Pkfr9fuoKQW8wm1wGBnJITs/mS7wQvS6VshUEBFCw==}
+
+ lodash.truncate@4.4.2:
+ resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==}
lodash@4.17.21:
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
@@ -2714,11 +5950,25 @@
resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==}
engines: {node: '>=12'}
+ log-update@6.1.0:
+ resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==}
+ engines: {node: '>=18'}
+
long@5.3.2:
resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==}
+ longest-streak@3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
+
+ lru-cache@11.2.4:
+ resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==}
+ engines: {node: 20 || >=22}
+
+ lru-cache@5.1.1:
+ resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
m3u8-parser@7.2.0:
resolution: {integrity: sha512-CRatFqpjVtMiMaKXxNvuI3I++vUumIXVVT/JpCpdU/FynV/ceVw1qpPyyBNindL+JlPMSesx+WX1QJaZEJSaMQ==}
@@ -2737,6 +5987,13 @@
magic-string@0.30.21:
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
+ make-dir@4.0.0:
+ resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
+ engines: {node: '>=10'}
+
+ makeerror@1.0.12:
+ resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
+
map-cache@0.2.2:
resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==}
engines: {node: '>=0.10.0'}
@@ -2744,6 +6001,9 @@
map-visit@1.0.0:
resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==}
engines: {node: '>=0.10.0'}
+
+ markdown-table@3.0.4:
+ resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
math-intrinsics@1.1.0:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
@@ -2754,25 +6014,183 @@
engines: {node: '>= 12'}
hasBin: true
+ mathml-tag-names@2.1.3:
+ resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==}
+
+ mdast-util-find-and-replace@3.0.2:
+ resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==}
+
+ mdast-util-from-markdown@2.0.2:
+ resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==}
+
+ mdast-util-frontmatter@2.0.1:
+ resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==}
+
+ mdast-util-gfm-autolink-literal@2.0.1:
+ resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
+
+ mdast-util-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==}
+
+ mdast-util-gfm-strikethrough@2.0.0:
+ resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
+
+ mdast-util-gfm-table@2.0.0:
+ resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
+
+ mdast-util-gfm-task-list-item@2.0.0:
+ resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
+
+ mdast-util-gfm@3.1.0:
+ resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==}
+
+ mdast-util-phrasing@4.1.0:
+ resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+
+ mdast-util-to-markdown@2.1.2:
+ resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
+
+ mdast-util-to-string@4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+
mdn-data@2.0.14:
resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==}
+ mdn-data@2.12.2:
+ resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==}
+
+ media-typer@0.3.0:
+ resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
+ engines: {node: '>= 0.6'}
+
+ media-typer@1.1.0:
+ resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
+ engines: {node: '>= 0.8'}
+
memoize-one@6.0.0:
resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
+
+ meow@13.2.0:
+ resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==}
+ engines: {node: '>=18'}
+
+ merge-descriptors@1.0.3:
+ resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==}
+
+ merge-descriptors@2.0.0:
+ resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==}
+ engines: {node: '>=18'}
merge-options@1.0.1:
resolution: {integrity: sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==}
engines: {node: '>=4'}
+ merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+
merge2@1.4.1:
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
engines: {node: '>= 8'}
+
+ merge@2.1.1:
+ resolution: {integrity: sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==}
mersenne-twister@1.1.0:
resolution: {integrity: sha512-mUYWsMKNrm4lfygPkL3OfGzOPTR2DBlTkBNHM//F6hGp8cLThY897crAlk3/Jo17LEOOjQUrNAx6DvgO77QJkA==}
meshoptimizer@0.22.0:
resolution: {integrity: sha512-IebiK79sqIy+E4EgOr+CAw+Ke8hAspXKzBd0JdgEmPHiAwmvEj2S4h1rfvo+o/BnfEYd/jAOg5IeeIjzlzSnDg==}
+
+ methods@1.1.2:
+ resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
+ engines: {node: '>= 0.6'}
+
+ micromark-core-commonmark@2.0.3:
+ resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==}
+
+ micromark-extension-frontmatter@2.0.0:
+ resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==}
+
+ micromark-extension-gfm-autolink-literal@2.1.0:
+ resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
+
+ micromark-extension-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
+
+ micromark-extension-gfm-strikethrough@2.1.0:
+ resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
+
+ micromark-extension-gfm-table@2.1.1:
+ resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==}
+
+ micromark-extension-gfm-tagfilter@2.0.0:
+ resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
+
+ micromark-extension-gfm-task-list-item@2.1.0:
+ resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
+
+ micromark-extension-gfm@3.0.0:
+ resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
+
+ micromark-factory-destination@2.0.1:
+ resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==}
+
+ micromark-factory-label@2.0.1:
+ resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==}
+
+ micromark-factory-space@2.0.1:
+ resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==}
+
+ micromark-factory-title@2.0.1:
+ resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==}
+
+ micromark-factory-whitespace@2.0.1:
+ resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==}
+
+ micromark-util-character@2.1.1:
+ resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==}
+
+ micromark-util-chunked@2.0.1:
+ resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==}
+
+ micromark-util-classify-character@2.0.1:
+ resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==}
+
+ micromark-util-combine-extensions@2.0.1:
+ resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==}
+
+ micromark-util-decode-numeric-character-reference@2.0.2:
+ resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==}
+
+ micromark-util-decode-string@2.0.1:
+ resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==}
+
+ micromark-util-encode@2.0.1:
+ resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==}
+
+ micromark-util-html-tag-name@2.0.1:
+ resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==}
+
+ micromark-util-normalize-identifier@2.0.1:
+ resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==}
+
+ micromark-util-resolve-all@2.0.1:
+ resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==}
+
+ micromark-util-sanitize-uri@2.0.1:
+ resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==}
+
+ micromark-util-subtokenize@2.1.0:
+ resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==}
+
+ micromark-util-symbol@2.0.1:
+ resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==}
+
+ micromark-util-types@2.0.2:
+ resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==}
+
+ micromark@4.0.2:
+ resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==}
micromatch@3.1.0:
resolution: {integrity: sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==}
@@ -2786,6 +6204,10 @@
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
engines: {node: '>= 0.6'}
+ mime-db@1.54.0:
+ resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==}
+ engines: {node: '>= 0.6'}
+
mime-match@1.0.2:
resolution: {integrity: sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==}
@@ -2793,14 +6215,27 @@
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
engines: {node: '>= 0.6'}
+ mime-types@3.0.2:
+ resolution: {integrity: sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==}
+ engines: {node: '>=18'}
+
mime@1.6.0:
resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
engines: {node: '>=4'}
hasBin: true
+ mime@3.0.0:
+ resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
+ engines: {node: '>=10.0.0'}
+ hasBin: true
+
mimic-fn@2.1.0:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
engines: {node: '>=6'}
+
+ mimic-function@5.0.1:
+ resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
+ engines: {node: '>=18'}
mimic-response@3.1.0:
resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==}
@@ -2815,6 +6250,13 @@
min-dom@4.2.1:
resolution: {integrity: sha512-TMoL8SEEIhUWYgkj7XMSgxmwSyGI+4fP2KFFGnN3FbHfbGHVdsLYSz8LoIsgPhz4dWRmLvxWWSMgzZMJW5sZuA==}
+ minimatch@10.1.1:
+ resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==}
+ engines: {node: 20 || >=22}
+
+ minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+
minimatch@9.0.5:
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -2826,6 +6268,9 @@
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
+ miniprogram-api-typings@4.1.2:
+ resolution: {integrity: sha512-VmIgxal0GU3nHwsH2UNaRh8jNHG/kauG08Z4W/qiJ1Iubvme48aE+q3grpT9ZLBArMKmSuKlsTq+uPPHSGr0rA==}
+
mitt@3.0.1:
resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
@@ -2836,6 +6281,10 @@
mkdirp-classic@0.5.3:
resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==}
+ mkdirp@0.5.6:
+ resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+ hasBin: true
+
mlly@1.8.0:
resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==}
@@ -2844,6 +6293,9 @@
moddle@6.2.3:
resolution: {integrity: sha512-bLVN+ZHL3aKnhxc19XtjUfvdJsS3EsiEJC7bT6YPD11qYmTzvsxrGgyYz1Ouof7TZuGw0lDJ1OLmEnxcpQWk3Q==}
+
+ module-alias@2.2.3:
+ resolution: {integrity: sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==}
mpd-parser@1.3.1:
resolution: {integrity: sha512-1FuyEWI5k2HcmhS1HkKnUAQV7yFPfXPht2DnRRGtoiiAAW+ESTbtEXIDpRkwdU+XyrQuwrIym7UkoPKsZ0SyFw==}
@@ -2856,6 +6308,10 @@
resolution: {integrity: sha512-NxkPxE70Uq3Ph7goefQa7ggSsVzHrayCD0OyxlJgITN/EbzlZN+JEPmaAZdxP1LsIT5FamDyILoQTF72W7Nnbw==}
engines: {node: '>=16.0.0'}
hasBin: true
+
+ mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
ms@2.0.0:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
@@ -2870,6 +6326,10 @@
namespace-emitter@2.0.1:
resolution: {integrity: sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g==}
+
+ nano-spawn@2.0.0:
+ resolution: {integrity: sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==}
+ engines: {node: '>=20.17'}
nanoid@3.3.11:
resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
@@ -2888,6 +6348,24 @@
napi-build-utils@2.0.0:
resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==}
+ natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
+ natural-orderby@5.0.0:
+ resolution: {integrity: sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==}
+ engines: {node: '>=18'}
+
+ negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+
+ negotiator@1.0.0:
+ resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==}
+ engines: {node: '>= 0.6'}
+
+ neo-async@2.6.2:
+ resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+
next-tick@1.1.0:
resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==}
@@ -2901,11 +6379,28 @@
node-addon-api@7.1.1:
resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+ node-fetch-native@1.6.7:
+ resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==}
+
+ node-int64@0.4.0:
+ resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
+
+ node-releases@2.0.27:
+ resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==}
+
+ normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+
normalize-wheel-es@1.2.0:
resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==}
nosleep.js@0.12.0:
resolution: {integrity: sha512-9d1HbpKLh3sdWlhXMhU6MMH+wQzKkrgfRkYV0EBdvt99YJfj0ilCJrWRDYG2130Tm4GXbEoTCx5b34JSaP+HhA==}
+
+ npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ engines: {node: '>=8'}
nprogress@0.2.0:
resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==}
@@ -2915,6 +6410,14 @@
number-allocator@1.0.14:
resolution: {integrity: sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==}
+
+ nwsapi@2.2.23:
+ resolution: {integrity: sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==}
+
+ nypm@0.6.2:
+ resolution: {integrity: sha512-7eM+hpOtrKrBDCh7Ypu2lJ9Z7PNZBdi/8AT3AX8xoCj43BBVHD0hPSTEvMtkMpfs8FCqBGhxB+uToIQimA111g==}
+ engines: {node: ^14.16.0 || >=16.10.0}
+ hasBin: true
object-assign@4.1.1:
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
@@ -2951,6 +6454,15 @@
resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==}
engines: {node: '>=0.10.0'}
+ ofetch@1.5.1:
+ resolution: {integrity: sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==}
+
+ ohash@2.0.11:
+ resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==}
+
+ omggif@1.0.10:
+ resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==}
+
on-finished@2.4.1:
resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
engines: {node: '>= 0.8'}
@@ -2962,22 +6474,101 @@
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
+ onetime@7.0.0:
+ resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
+ engines: {node: '>=18'}
+
+ open@8.4.2:
+ resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
+ engines: {node: '>=12'}
+
+ optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+
ora@7.0.1:
resolution: {integrity: sha512-0TUxTiFJWv+JnjWm4o9yvuskpEJLXTcng8MJuKd+SzAzp2o+OP3HWqNhB4OdJRt1Vsd9/mR0oyaEYlOnL7XIRw==}
engines: {node: '>=16'}
+
+ os-locale-s-fix@1.0.8-fix-1:
+ resolution: {integrity: sha512-Sv0OvhPiMutICiwORAUefv02DCPb62IelBmo8ZsSrRHyI3FStqIWZvjqDkvtjU+lcujo7UNir+dCwKSqlEQ/5w==}
+ engines: {node: '>=10', yarn: ^1.22.4}
own-keys@1.0.1:
resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==}
engines: {node: '>= 0.4'}
+ p-limit@2.3.0:
+ resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+ engines: {node: '>=6'}
+
+ p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+
+ p-locate@4.1.0:
+ resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+ engines: {node: '>=8'}
+
+ p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+
+ p-map@4.0.0:
+ resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
+ engines: {node: '>=10'}
+
+ p-try@2.2.0:
+ resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+ engines: {node: '>=6'}
+
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+
+ package-manager-detector@1.6.0:
+ resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==}
pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
pako@2.1.0:
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
+
+ parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+
+ parse-bmfont-ascii@1.0.6:
+ resolution: {integrity: sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==}
+
+ parse-bmfont-binary@1.0.6:
+ resolution: {integrity: sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==}
+
+ parse-bmfont-xml@1.1.6:
+ resolution: {integrity: sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==}
+
+ parse-css-font@4.0.0:
+ resolution: {integrity: sha512-lnY7dTUfjRXsSo5G5C639L8RaBBaVSgL+5hacIFKsNHzeCJQ5SFSZv1DZmc7+wZv/22PFGOq2YbaEHLdaCS/mQ==}
+
+ parse-gitignore@2.0.0:
+ resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==}
+ engines: {node: '>=14'}
+
+ parse-headers@2.0.6:
+ resolution: {integrity: sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==}
+
+ parse-imports-exports@0.2.4:
+ resolution: {integrity: sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==}
+
+ parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+ engines: {node: '>=8'}
+
+ parse-statements@1.0.11:
+ resolution: {integrity: sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==}
+
+ parse5@6.0.1:
+ resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
parseurl@1.3.3:
resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
@@ -2987,16 +6578,41 @@
resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==}
engines: {node: '>=0.10.0'}
+ path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+
path-intersection@2.2.1:
resolution: {integrity: sha512-9u8xvMcSfuOiStv9bPdnRJQhGQXLKurew94n4GPQCdH1nj9QKC9ObbNoIpiRq8skiOBxKkt277PgOoFgAt3/rA==}
+
+ path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+ engines: {node: '>=0.10.0'}
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
+ path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+
path-scurry@1.11.1:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
+
+ path-scurry@2.0.1:
+ resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==}
+ engines: {node: 20 || >=22}
+
+ path-to-regexp@0.1.12:
+ resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==}
+
+ path-to-regexp@8.3.0:
+ resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==}
+
+ path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
pathe@0.2.0:
resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==}
@@ -3006,6 +6622,21 @@
pathe@2.0.3:
resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
+
+ perfect-debounce@1.0.0:
+ resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
+
+ perfect-debounce@2.0.0:
+ resolution: {integrity: sha512-fkEH/OBiKrqqI/yIgjR92lMfs2K8105zt/VT6+7eTjNwisrsh47CeIED9z58zI7DfKdH3uHAn25ziRZn3kgAow==}
+
+ phin@2.9.3:
+ resolution: {integrity: sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
+
+ phin@3.7.1:
+ resolution: {integrity: sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==}
+ engines: {node: '>= 8'}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -3018,12 +6649,74 @@
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
+ pidtree@0.6.0:
+ resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+
+ pify@2.3.0:
+ resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
+ engines: {node: '>=0.10.0'}
+
+ pinia-plugin-persistedstate@4.1.3:
+ resolution: {integrity: sha512-5Rad7oSoEh0na+j4jEViVQMtAYE38KjU7ixKc+am33QX/clJ1mb19zTZqMJXvq+PnQW7uuEuL33Q6NL0GbkfWw==}
+ peerDependencies:
+ '@pinia/nuxt': '>=0.5.0'
+ pinia: '>=2.0.0'
+ peerDependenciesMeta:
+ '@pinia/nuxt':
+ optional: true
+ pinia:
+ optional: true
+
+ pinia@2.2.4:
+ resolution: {integrity: sha512-K7ZhpMY9iJ9ShTC0cR2+PnxdQRuwVIsXDO/WIEV/RnMC/vmSoKDTKW/exNQYPI+4ij10UjXqdNiEHwn47McANQ==}
+ 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
+
+ pirates@4.0.7:
+ resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
+ engines: {node: '>= 6'}
+
+ pixelmatch@4.0.2:
+ resolution: {integrity: sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==}
+ hasBin: true
+
+ pkce-challenge@5.0.1:
+ resolution: {integrity: sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==}
+ engines: {node: '>=16.20.0'}
+
pkcs7@1.0.4:
resolution: {integrity: sha512-afRERtHn54AlwaF2/+LFszyAANTCggGilmcmILUzEjvs3XgFZT+xE6+QWQcAGmu4xajy+Xtj7acLOPdx5/eXWQ==}
hasBin: true
+ pkg-dir@4.2.0:
+ resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
+ engines: {node: '>=8'}
+
pkg-types@1.3.1:
resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
+
+ pkg-types@2.3.0:
+ resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==}
+
+ pluralize@8.0.0:
+ resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
+ engines: {node: '>=4'}
+
+ pngjs@3.4.0:
+ resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==}
+ engines: {node: '>=4.0.0'}
+
+ pnpm-workspace-yaml@1.4.3:
+ resolution: {integrity: sha512-Q8B3SWuuISy/Ciag4DFP7MCrJX07wfaekcqD2o/msdIj4x8Ql3bZ/NEKOXV7mTVh7m1YdiFWiMi9xH+0zuEGHw==}
point-in-polygon@1.1.0:
resolution: {integrity: sha512-3ojrFwjnnw8Q9242TzgXuTD+eKiutbzyslcq1ydfu82Db2y+Ogbmyrkpv0Hgj31qwT3lbS9+QAAO/pIQM35XRw==}
@@ -3039,6 +6732,57 @@
resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
engines: {node: '>= 0.4'}
+ postcss-html@1.8.0:
+ resolution: {integrity: sha512-5mMeb1TgLWoRKxZ0Xh9RZDfwUUIqRrcxO2uXO+Ezl1N5lqpCiSU5Gk6+1kZediBfBHFtPCdopr2UZ2SgUsKcgQ==}
+ engines: {node: ^12 || >=14}
+
+ postcss-import@14.1.0:
+ resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ postcss: ^8.0.0
+
+ postcss-load-config@3.1.4:
+ resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
+ engines: {node: '>= 10'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+
+ postcss-modules-extract-imports@3.1.0:
+ resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules-local-by-default@4.2.0:
+ resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules-scope@3.2.1:
+ resolution: {integrity: sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules-values@4.0.0:
+ resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules@4.3.1:
+ resolution: {integrity: sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==}
+ peerDependencies:
+ postcss: ^8.0.0
+
postcss-prefix-selector@1.16.1:
resolution: {integrity: sha512-Umxu+FvKMwlY6TyDzGFoSUnzW+NOfMBLyC1tAkIjgX+Z/qGspJeRjVC903D7mx7TuBpJlwti2ibXtWuA7fKMeQ==}
peerDependencies:
@@ -3048,6 +6792,37 @@
resolution: {integrity: sha512-ROODSNci9ADal3zUcPHOF/K83TiCgNSPXQFSbwyPHNV8ioHIE4SaC+FPOufd8jsr5jV2uIz29v1Uqy1c4ov42g==}
peerDependencies:
postcss: ^8.0.0
+
+ postcss-resolve-nested-selector@0.1.6:
+ resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==}
+
+ postcss-safe-parser@6.0.0:
+ resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.3.3
+
+ postcss-safe-parser@7.0.1:
+ resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
+
+ postcss-selector-parser@7.1.1:
+ resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==}
+ engines: {node: '>=4'}
+
+ postcss-sorting@8.0.2:
+ resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==}
+ peerDependencies:
+ postcss: ^8.4.20
+
+ postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
postcss@5.2.18:
resolution: {integrity: sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==}
@@ -3082,10 +6857,18 @@
engines: {node: '>=10'}
hasBin: true
+ prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+
prettier@2.8.8:
resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
engines: {node: '>=10.13.0'}
hasBin: true
+
+ pretty-format@27.5.1:
+ resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
prismjs@1.30.0:
resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==}
@@ -3098,22 +6881,61 @@
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
engines: {node: '>= 0.6.0'}
+ prompts@2.4.2:
+ resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
+ engines: {node: '>= 6'}
+
protobufjs@7.5.4:
resolution: {integrity: sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==}
engines: {node: '>=12.0.0'}
+ proxy-addr@2.0.7:
+ resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
+ engines: {node: '>= 0.10'}
+
proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
+
+ psl@1.15.0:
+ resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==}
pump@3.0.3:
resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==}
+ punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+
+ qified@0.5.3:
+ resolution: {integrity: sha512-kXuQdQTB6oN3KhI6V4acnBSZx8D2I4xzZvn9+wFLLFCoBNQY/sFnCW6c43OL7pOQ2HvGV4lnWIXNmgfp7cTWhQ==}
+ engines: {node: '>=20'}
+
+ qrcode-reader@1.0.4:
+ resolution: {integrity: sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ==}
+
+ qrcode-terminal@0.12.0:
+ resolution: {integrity: sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==}
+ hasBin: true
+
qrcodejs2-fix@0.0.1:
resolution: {integrity: sha512-1R6jB87k1PUwjX65hh24FftDjrghPvryYfsajV3chCp//dQb8QUeL446DVLj2SIeotP8ro9rSYri0wOp7O+7Hg==}
+
+ qs@6.14.1:
+ resolution: {integrity: sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==}
+ engines: {node: '>=0.6'}
+
+ quansync@0.2.11:
+ resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==}
+
+ quansync@1.0.0:
+ resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==}
query-string@4.3.4:
resolution: {integrity: sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==}
engines: {node: '>=0.10.0'}
+
+ querystringify@2.2.0:
+ resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
@@ -3134,6 +6956,14 @@
resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
engines: {node: '>= 0.6'}
+ raw-body@2.5.3:
+ resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==}
+ engines: {node: '>= 0.8'}
+
+ raw-body@3.0.2:
+ resolution: {integrity: sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==}
+ engines: {node: '>= 0.10'}
+
rbush@2.0.2:
resolution: {integrity: sha512-XBOuALcTm+O/H8G90b6pzu6nX6v2zCKiFG4BJho8a+bY6AER6t8uQUZdi5bomQc0AprCWhEGa7ncAbbRap0bRA==}
@@ -3143,9 +6973,18 @@
rbush@4.0.1:
resolution: {integrity: sha512-IP0UpfeWQujYC8Jg162rMNc01Rf0gWMMAb2Uxus/Q0qOFw4lCcq6ZnQEZwUoJqWyUGJ9th7JjwI4yIWo+uvoAQ==}
+ rc9@2.1.2:
+ resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==}
+
rc@1.2.8:
resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
hasBin: true
+
+ react-is@17.0.2:
+ resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
+
+ read-cache@1.0.0:
+ resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
readable-stream@2.3.8:
resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
@@ -3158,24 +6997,72 @@
resolution: {integrity: sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+
readdirp@4.1.2:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
+ readdirp@5.0.0:
+ resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==}
+ engines: {node: '>= 20.19.0'}
+
reconnecting-websocket@4.4.0:
resolution: {integrity: sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==}
+
+ refa@0.12.1:
+ resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
reflect.getprototypeof@1.0.10:
resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
engines: {node: '>= 0.4'}
+ regenerate-unicode-properties@10.2.2:
+ resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==}
+ engines: {node: '>=4'}
+
+ regenerate@1.4.2:
+ resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
+
+ regenerator-runtime@0.13.11:
+ resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==}
+
+ regenerator-runtime@0.14.1:
+ resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+
regex-not@1.0.2:
resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==}
engines: {node: '>=0.10.0'}
+ regexp-ast-analysis@0.7.1:
+ resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ regexp-tree@0.1.27:
+ resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
+ hasBin: true
+
regexp.prototype.flags@1.5.4:
resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
engines: {node: '>= 0.4'}
+
+ regexpu-core@6.4.0:
+ resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==}
+ engines: {node: '>=4'}
+
+ regjsgen@0.8.0:
+ resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
+
+ regjsparser@0.12.0:
+ resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==}
+ hasBin: true
+
+ regjsparser@0.13.0:
+ resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==}
+ hasBin: true
repeat-element@1.1.4:
resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==}
@@ -3185,13 +7072,52 @@
resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
engines: {node: '>=0.10'}
+ require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+
+ require-from-string@2.0.2:
+ resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+ engines: {node: '>=0.10.0'}
+
+ requires-port@1.0.0:
+ resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+
+ resolve-cwd@3.0.0:
+ resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
+ engines: {node: '>=8'}
+
+ resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+
+ resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+ engines: {node: '>=8'}
+
+ resolve-pkg-maps@1.0.0:
+ resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+
resolve-url@0.2.1:
resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==}
deprecated: https://github.com/lydell/resolve-url#deprecated
+ resolve.exports@1.1.1:
+ resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==}
+ engines: {node: '>=10'}
+
+ resolve@1.22.11:
+ resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==}
+ engines: {node: '>= 0.4'}
+ hasBin: true
+
restore-cursor@4.0.0:
resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ restore-cursor@5.1.0:
+ resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
+ engines: {node: '>=18'}
ret@0.1.15:
resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==}
@@ -3204,16 +7130,46 @@
rfdc@1.4.1:
resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+ rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
+ hasBin: true
+
+ rimraf@6.1.2:
+ resolution: {integrity: sha512-cFCkPslJv7BAXJsYlK1dZsbP8/ZNLkCAQ0bi1hf5EKX2QHegmDFEFA6QhuYJlk7UDdc+02JjO80YSOrWPpw06g==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+
robust-predicates@3.0.2:
resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
+
+ rollup-plugin-visualizer@6.0.5:
+ resolution: {integrity: sha512-9+HlNgKCVbJDs8tVtjQ43US12eqaiHyyiLMdBwQ7vSZPiHMysGNo2E88TAp1si5wx8NAoYriI2A5kuKfIakmJg==}
+ engines: {node: '>=18'}
+ hasBin: true
+ peerDependencies:
+ rolldown: 1.x || ^1.0.0-beta
+ rollup: 2.x || 3.x || 4.x
+ peerDependenciesMeta:
+ rolldown:
+ optional: true
+ rollup:
+ optional: true
rollup@4.54.0:
resolution: {integrity: sha512-3nk8Y3a9Ea8szgKhinMlGMhGMw89mqule3KWczxhIzqudyHdCIOHw8WJlj/r329fACjKLEh13ZSk7oE22kyeIw==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
+ router@2.2.0:
+ resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==}
+ engines: {node: '>= 18'}
+
run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+
+ safe-area-insets@1.4.1:
+ resolution: {integrity: sha512-r/nRWTjFGhhm3w1Z6Kd/jY11srN+lHt2mNl1E/emQGW8ic7n3Avu4noibklfSM+Y34peNphHD/BSZecav0sXYQ==}
safe-array-concat@1.1.3:
resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==}
@@ -3236,19 +7192,59 @@
safe-regex@1.1.0:
resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==}
+ safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+
+ sass-loader@16.0.6:
+ resolution: {integrity: sha512-sglGzId5gmlfxNs4gK2U3h7HlVRfx278YK6Ono5lwzuvi1jxig80YiuHkaDBVsYIKFhx8wN7XSCI0M2IDS/3qA==}
+ engines: {node: '>= 18.12.0'}
+ peerDependencies:
+ '@rspack/core': 0.x || 1.x
+ node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+ sass: ^1.3.0
+ sass-embedded: '*'
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@rspack/core':
+ optional: true
+ node-sass:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ webpack:
+ optional: true
+
+ sass@1.79.6:
+ resolution: {integrity: sha512-PVVjeeiUGx6Nj4PtEE/ecwu8ltwfPKzHxbbVmmLj4l1FYHhOyfA0scuVF8sVaa+b+VY4z7BVKjKq0cPUQdUU3g==}
+ engines: {node: '>=14.0.0'}
+ hasBin: true
+
sass@1.97.1:
resolution: {integrity: sha512-uf6HoO8fy6ClsrShvMgaKUn14f2EHQLQRtpsZZLeU/Mv0Q1K5P0+x2uvH6Cub39TVVbWNSrraUhDAoFph6vh0A==}
engines: {node: '>=14.0.0'}
hasBin: true
+ sax@1.4.3:
+ resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==}
+
saxen@8.1.2:
resolution: {integrity: sha512-xUOiiFbc3Ow7p8KMxwsGICPx46ZQvy3+qfNVhrkwfz3Vvq45eGt98Ft5IQaA1R/7Tb5B5MKh9fUR9x3c3nDTxw==}
+
+ saxes@5.0.1:
+ resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
+ engines: {node: '>=10'}
scroll-into-view-if-needed@2.2.31:
resolution: {integrity: sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==}
scroll-into-view-if-needed@3.1.0:
resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==}
+
+ scslre@0.3.0:
+ resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==}
+ engines: {node: ^14.0.0 || >=16.0.0}
scule@1.3.0:
resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
@@ -3262,6 +7258,10 @@
select@1.1.2:
resolution: {integrity: sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==}
+ semver@6.3.1:
+ resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+ hasBin: true
+
semver@7.7.3:
resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
engines: {node: '>=10'}
@@ -3271,9 +7271,17 @@
resolution: {integrity: sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==}
engines: {node: '>= 0.8.0'}
+ send@1.2.1:
+ resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==}
+ engines: {node: '>= 18'}
+
serve-static@1.16.3:
resolution: {integrity: sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==}
engines: {node: '>= 0.8.0'}
+
+ serve-static@2.2.1:
+ resolution: {integrity: sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==}
+ engines: {node: '>= 18'}
set-function-length@1.2.2:
resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
@@ -3344,8 +7352,19 @@
simple-swizzle@0.2.4:
resolution: {integrity: sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==}
+ sirv@3.0.2:
+ resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==}
+ engines: {node: '>=18'}
+
+ sisteransi@1.0.5:
+ resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+
skmeans@0.9.7:
resolution: {integrity: sha512-hNj1/oZ7ygsfmPZ7ZfN5MUBRoGg1gtpnImuJBgLO0ljQ67DtJuiQaiYdS4lUA6s0KCwnPhGivtC/WRwIZLkHyg==}
+
+ slash@3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+ engines: {node: '>=8'}
slate-history@0.109.0:
resolution: {integrity: sha512-DHavPwrTTAEAV66eAocB3iQHEj65N6IVtbRK98ZuqGT0S44T3zXlhzY+5SZ7EPxRcoOYVt1dioRxXYM/+PmCiQ==}
@@ -3362,6 +7381,14 @@
slate@0.82.1:
resolution: {integrity: sha512-3mdRdq7U3jSEoyFrGvbeb28hgrvrr4NdFCtJX+IjaNvSFozY0VZd/CGHF0zf/JDx7aEov864xd5uj0HQxxEWTQ==}
+
+ slice-ansi@4.0.0:
+ resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
+ engines: {node: '>=10'}
+
+ slice-ansi@7.1.2:
+ resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==}
+ engines: {node: '>=18'}
sm-crypto@0.3.13:
resolution: {integrity: sha512-ztNF+pZq6viCPMA1A6KKu3bgpkmYti5avykRHbcFIdSipFdkVmfUw2CnpM2kBJyppIalqvczLNM3wR8OQ0pT5w==}
@@ -3416,9 +7443,26 @@
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
+ source-map@0.7.6:
+ resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
+ engines: {node: '>= 12'}
+
sourcemap-codec@1.4.8:
resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
deprecated: Please use @jridgewell/sourcemap-codec instead
+
+ spdx-exceptions@2.5.0:
+ resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+
+ spdx-expression-parse@4.0.0:
+ resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
+
+ spdx-license-ids@3.0.22:
+ resolution: {integrity: sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==}
+
+ speakingurl@14.0.1:
+ resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
+ engines: {node: '>=0.10.0'}
splaytree@3.2.3:
resolution: {integrity: sha512-7OXrNWzy6CK+r7Ch9OLPBDTKfB6XlWHjX4P0RU5B3IgFuWPeYN0XtRtlexGRjgbQxpfaUve6jTAwBGWuGntz/w==}
@@ -3431,6 +7475,9 @@
split2@4.2.0:
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
engines: {node: '>= 10.x'}
+
+ sprintf-js@1.0.3:
+ resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
ssf@0.11.2:
resolution: {integrity: sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==}
@@ -3445,6 +7492,10 @@
stable@0.1.8:
resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==}
deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility'
+
+ stack-utils@2.0.6:
+ resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
+ engines: {node: '>=10'}
static-extend@0.1.2:
resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==}
@@ -3469,6 +7520,17 @@
resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==}
engines: {node: '>=0.10.0'}
+ string-argv@0.3.2:
+ resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
+ engines: {node: '>=0.6.19'}
+
+ string-hash@1.1.3:
+ resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==}
+
+ string-length@4.0.2:
+ resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==}
+ engines: {node: '>=10'}
+
string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -3480,6 +7542,14 @@
string-width@6.1.0:
resolution: {integrity: sha512-k01swCJAgQmuADB0YIc+7TuatfNvTBVOoaUWJjTB9R4VJzR5vNWzf5t42ESVZFPS8xTySF7CAdV4t/aaIm3UnQ==}
engines: {node: '>=16'}
+
+ string-width@7.2.0:
+ resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
+ engines: {node: '>=18'}
+
+ string-width@8.1.0:
+ resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==}
+ engines: {node: '>=20'}
string.prototype.trim@1.2.10:
resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==}
@@ -3511,12 +7581,83 @@
resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==}
engines: {node: '>=12'}
+ strip-bom@4.0.0:
+ resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
+ engines: {node: '>=8'}
+
+ strip-final-newline@2.0.0:
+ resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
+ engines: {node: '>=6'}
+
+ strip-indent@4.1.1:
+ resolution: {integrity: sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==}
+ engines: {node: '>=12'}
+
strip-json-comments@2.0.1:
resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
engines: {node: '>=0.10.0'}
+ strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
+
strip-literal@1.3.0:
resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==}
+
+ strip-literal@3.1.0:
+ resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==}
+
+ stylelint-config-html@1.1.0:
+ resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+
+ stylelint-config-recess-order@6.1.0:
+ resolution: {integrity: sha512-0rGZgJQjUKqv1PXZnRJxr13f3hb3i2snx2nIL6luDWUf4nD3BAweB8noS7jdfBQ56HQG3RKSF0a+MAHfBGFxgw==}
+ peerDependencies:
+ stylelint: '>=16'
+
+ stylelint-config-recommended-vue@1.6.1:
+ resolution: {integrity: sha512-lLW7hTIMBiTfjenGuDq2kyHA6fBWd/+Df7MO4/AWOxiFeXP9clbpKgg27kHfwA3H7UNMGC7aeP3mNlZB5LMmEQ==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+
+ stylelint-config-recommended@17.0.0:
+ resolution: {integrity: sha512-WaMSdEiPfZTSFVoYmJbxorJfA610O0tlYuU2aEwY33UQhSPgFbClrVJYWvy3jGJx+XW37O+LyNLiZOEXhKhJmA==}
+ engines: {node: '>=18.12.0'}
+ peerDependencies:
+ stylelint: ^16.23.0
+
+ stylelint-config-standard-vue@1.0.0:
+ resolution: {integrity: sha512-wAzU7p6DSlo04pWfCbOcaMq09Nojt0FEsbdxhCBTdC7IguD9ZVl7FP/bvyA0HAHjZGC4JkW7m6WiQaoVMDSuFw==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+
+ stylelint-config-standard@39.0.1:
+ resolution: {integrity: sha512-b7Fja59EYHRNOTa3aXiuWnhUWXFU2Nfg6h61bLfAb5GS5fX3LMUD0U5t4S8N/4tpHQg3Acs2UVPR9jy2l1g/3A==}
+ engines: {node: '>=18.12.0'}
+ peerDependencies:
+ stylelint: ^16.23.0
+
+ stylelint-order@6.0.4:
+ resolution: {integrity: sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==}
+ peerDependencies:
+ stylelint: ^14.0.0 || ^15.0.0 || ^16.0.1
+
+ stylelint@16.26.1:
+ resolution: {integrity: sha512-v20V59/crfc8sVTAtge0mdafI3AdnzQ2KsWe6v523L4OA1bJO02S7MO2oyXDCS6iWb9ckIPnqAFVItqSBQr7jw==}
+ engines: {node: '>=18.12.0'}
+ hasBin: true
+
+ superjson@2.2.6:
+ resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==}
+ engines: {node: '>=16'}
supports-color@2.0.0:
resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
@@ -3530,13 +7671,50 @@
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
engines: {node: '>=8'}
+ supports-color@8.1.1:
+ resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
+ engines: {node: '>=10'}
+
+ supports-hyperlinks@2.3.0:
+ resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
+ engines: {node: '>=8'}
+
+ supports-hyperlinks@3.2.0:
+ resolution: {integrity: sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==}
+ engines: {node: '>=14.18'}
+
+ supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+
svg-baker@1.7.0:
resolution: {integrity: sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==}
+
+ svg-tags@1.0.0:
+ resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
svgo@2.8.0:
resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==}
engines: {node: '>=10.13.0'}
hasBin: true
+
+ symbol-tree@3.2.4:
+ resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+
+ synckit@0.11.11:
+ resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+
+ systemjs@6.15.1:
+ resolution: {integrity: sha512-Nk8c4lXvMB98MtbmjX7JwJRgJOL8fluecYCfCeYBznwmpOs8Bf15hLM6z4z71EDAhQVrQrI+wt1aLWSXZq+hXA==}
+
+ table@6.9.0:
+ resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==}
+ engines: {node: '>=10.0.0'}
+
+ tapable@2.3.0:
+ resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
+ engines: {node: '>=6'}
tar-fs@2.1.4:
resolution: {integrity: sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==}
@@ -3551,13 +7729,27 @@
tar-stream@3.1.7:
resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==}
+ terminal-link@2.1.1:
+ resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==}
+ engines: {node: '>=8'}
+
terser@5.44.1:
resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==}
engines: {node: '>=10'}
hasBin: true
+ test-exclude@6.0.0:
+ resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
+ engines: {node: '>=8'}
+
text-decoder@1.2.3:
resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==}
+
+ throat@6.0.2:
+ resolution: {integrity: sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==}
+
+ timm@1.7.1:
+ resolution: {integrity: sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==}
tiny-emitter@2.1.0:
resolution: {integrity: sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==}
@@ -3568,8 +7760,22 @@
tiny-warning@1.0.3:
resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
+ tinycolor2@1.6.0:
+ resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==}
+
+ tinyexec@1.0.2:
+ resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==}
+ engines: {node: '>=18'}
+
+ tinyglobby@0.2.15:
+ resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
+ engines: {node: '>=12.0.0'}
+
tinyqueue@3.0.0:
resolution: {integrity: sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g==}
+
+ tmpl@1.0.5:
+ resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
to-object-path@0.3.0:
resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==}
@@ -3591,6 +7797,10 @@
resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
engines: {node: '>=0.6'}
+ toml-eslint-parser@0.10.1:
+ resolution: {integrity: sha512-9mjy3frhioGIVGcwamlVlUyJ9x+WHw/TXiz9R4YOlmsIuBN43r9Dp8HZ35SF9EKjHrn3BUZj04CF+YqZ2oJ+7w==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
topojson-client@3.1.0:
resolution: {integrity: sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw==}
hasBin: true
@@ -3599,12 +7809,35 @@
resolution: {integrity: sha512-/VS9j/ffKr2XAOjlZ9CgyyeLmgJ9dMwq6Y0YEON8O7p/tGGk+dCWnrE03zEdu7i4L7YsFZLEPZPzCvcB7lEEXw==}
hasBin: true
+ totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+
+ tough-cookie@4.1.4:
+ resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
+ engines: {node: '>=6'}
+
+ tr46@2.1.0:
+ resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==}
+ engines: {node: '>=8'}
+
traverse@0.6.11:
resolution: {integrity: sha512-vxXDZg8/+p3gblxB6BhhG5yWVn1kGRlaL8O78UDXc3wRnPizB5g83dcvWV1jpDMIPnjZjOFuxlMmE82XJ4407w==}
engines: {node: '>= 0.4'}
trtc-sdk-v5@5.14.1:
resolution: {integrity: sha512-FqHgzKD/A+2LwfbpBbPjMxeQUcgxENeeTMDYcDD9OM8mW68DcG4jQgyXyar5LRD4BInN1AIJKHyD5LJOUzS0wg==}
+
+ ts-api-utils@2.4.0:
+ resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==}
+ engines: {node: '>=18.12'}
+ peerDependencies:
+ typescript: '>=4.8.4'
+
+ ts-declaration-location@1.0.7:
+ resolution: {integrity: sha512-EDyGAwH1gO0Ausm9gV6T2nUvBgXT5kGoCMJPllOaooZ+4VvJiKBdZE7wK18N1deEowhcUptS+5GXZK8U/fvpwA==}
+ peerDependencies:
+ typescript: '>=4.0.0'
tslib@2.3.0:
resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==}
@@ -3618,9 +7851,29 @@
turf-jsts@1.2.3:
resolution: {integrity: sha512-Ja03QIJlPuHt4IQ2FfGex4F4JAr8m3jpaHbFbQrgwr7s7L6U8ocrHiF3J1+wf9jzhGKxvDeaCAnGDot8OjGFyA==}
+ type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+
+ type-detect@4.0.8:
+ resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
+ engines: {node: '>=4'}
+
+ type-fest@0.21.3:
+ resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
+ engines: {node: '>=10'}
+
type-fest@2.19.0:
resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
engines: {node: '>=12.20'}
+
+ type-is@1.6.18:
+ resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
+ engines: {node: '>= 0.6'}
+
+ type-is@2.0.1:
+ resolution: {integrity: sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==}
+ engines: {node: '>= 0.6'}
type@2.7.3:
resolution: {integrity: sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==}
@@ -3645,12 +7898,20 @@
resolution: {integrity: sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ==}
engines: {node: '>= 10'}
+ typedarray-to-buffer@3.1.5:
+ resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
+
typedarray.prototype.slice@1.0.5:
resolution: {integrity: sha512-q7QNVDGTdl702bVFiI5eY4l/HkgCM6at9KhcFbgUAzezHFbOVy4+0O/lCjsABEQwbZPravVfBIiBVGo89yzHFg==}
engines: {node: '>= 0.4'}
typedarray@0.0.6:
resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
+
+ typescript@5.9.3:
+ resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
ufo@1.6.1:
resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==}
@@ -3659,19 +7920,93 @@
resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==}
engines: {node: '>= 0.4'}
+ unconfig-core@7.4.2:
+ resolution: {integrity: sha512-VgPCvLWugINbXvMQDf8Jh0mlbvNjNC6eSUziHsBCMpxR05OPrNrvDnyatdMjRgcHaaNsCqz+wjNXxNw1kRLHUg==}
+
+ unconfig@7.0.0:
+ resolution: {integrity: sha512-G5CJSoG6ZTxgzCJblEfgpdRK2tos9+UdD2WtecDUVfImzQ0hFjwpH5RVvGMhP4pRpC9ML7NrC4qBsBl0Ttj35A==}
+
+ unconfig@7.4.2:
+ resolution: {integrity: sha512-nrMlWRQ1xdTjSnSUqvYqJzbTBFugoqHobQj58B2bc8qxHKBBHMNNsWQFP3Cd3/JZK907voM2geYPWqD4VK3MPQ==}
+
+ unctx@2.5.0:
+ resolution: {integrity: sha512-p+Rz9x0R7X+CYDkT+Xg8/GhpcShTlU8n+cf9OtOEf7zEQsNcCZO1dPKNRDqvUTaq+P32PMMkxWHwfrxkqfqAYg==}
+
undici-types@7.16.0:
resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
+ unicode-canonical-property-names-ecmascript@2.0.1:
+ resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
+ engines: {node: '>=4'}
+
+ unicode-match-property-ecmascript@2.0.0:
+ resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
+ engines: {node: '>=4'}
+
+ unicode-match-property-value-ecmascript@2.2.1:
+ resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==}
+ engines: {node: '>=4'}
+
+ unicode-property-aliases-ecmascript@2.2.0:
+ resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==}
+ engines: {node: '>=4'}
+
unimport@1.3.0:
resolution: {integrity: sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw==}
+
+ unimport@4.1.1:
+ resolution: {integrity: sha512-j9+fijH6aDd05yv1fXlyt7HSxtOWtGtrZeYTVBsSUg57Iuf+Ps2itIZjeyu7bEQ4k0WOgYhHrdW8m/pJgOpl5g==}
+ engines: {node: '>=18.12.0'}
+
+ unimport@4.2.0:
+ resolution: {integrity: sha512-mYVtA0nmzrysnYnyb3ALMbByJ+Maosee2+WyE0puXl+Xm2bUwPorPaaeZt0ETfuroPOtG8jj1g/qeFZ6buFnag==}
+ engines: {node: '>=18.12.0'}
union-value@1.0.1:
resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==}
engines: {node: '>=0.10.0'}
+ unist-util-is@6.0.1:
+ resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==}
+
+ unist-util-stringify-position@4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+
+ unist-util-visit-parents@6.0.2:
+ resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==}
+
+ unist-util-visit@5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+
+ universalify@0.2.0:
+ resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
+ engines: {node: '>= 4.0.0'}
+
universalify@2.0.1:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
+
+ unocss-preset-weapp@66.0.2:
+ resolution: {integrity: sha512-K6H6we8WlTO1Lf1rLLeyPOKyqEWkO/r9z8/z1CTEnHgeZMYMvIE7lQa7GFyDQ/qYzU/By8OtJ5TcIRqp/2SbIw==}
+
+ unocss@65.5.0:
+ resolution: {integrity: sha512-dLTW89YK+5KCcB3vG/wxiwdpejkLLmZlK9hjWmP52sdeUFcmywc+/khD2/nid7or8dL3YCv1gwoyvnA7JRCwjA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@unocss/webpack': 65.5.0
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+ peerDependenciesMeta:
+ '@unocss/webpack':
+ optional: true
+ vite:
+ optional: true
+
+ unpipe@1.0.0:
+ resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
+ engines: {node: '>= 0.8'}
+
+ unplugin-attributify-to-class@0.2.5:
+ resolution: {integrity: sha512-0lTUi01mI19PmTTX4420QO6gJFic1wK4LqNnHeBNDrthQEKI0xw/lYg0bGnWYgPmyqXz88hAdLG+ibaypibXqg==}
unplugin-auto-import@0.11.5:
resolution: {integrity: sha512-nvbL2AQwLRR8wbHpJ6L1EBVNmjN045RSedTa4NtsGRkSQFXkI1iKHs4dTqJwcKZsnFrZOAKtLPiN1/oQTObLZw==}
@@ -3682,13 +8017,110 @@
'@vueuse/core':
optional: true
+ unplugin-auto-import@19.1.0:
+ resolution: {integrity: sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': ^3.2.2
+ '@vueuse/core': '*'
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+ '@vueuse/core':
+ optional: true
+
+ unplugin-auto-import@19.3.0:
+ resolution: {integrity: sha512-iIi0u4Gq2uGkAOGqlPJOAMI8vocvjh1clGTfSK4SOrJKrt+tirrixo/FjgBwXQNNdS7ofcr7OxzmOb/RjWxeEQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': ^3.2.2
+ '@vueuse/core': '*'
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+ '@vueuse/core':
+ optional: true
+
+ unplugin-transform-class@0.5.3:
+ resolution: {integrity: sha512-4xBvfoeBDqlqi9aD0Hv3TTs8JpRs2h9l8LBMXIRXFNTf8biRk6hAQir+zEM/GpBKoMzvt7JqqbMIYzMazQZysQ==}
+
+ unplugin-transform-class@0.6.0:
+ resolution: {integrity: sha512-6aYNOH6hEVbi38mc7yDQD7kEDESuLJ3FfB9/rB2vHZobK4ajDS6Jkh5EktJF4Ubkz/hQizpjZ4+XS1aMOM82yg==}
+ peerDependencies:
+ '@farmfe/core': '>=1'
+ '@nuxt/kit': ^3
+ '@nuxt/schema': ^3
+ esbuild: '*'
+ rollup: ^3
+ vite: '>=3'
+ webpack: ^4 || ^5
+ peerDependenciesMeta:
+ '@farmfe/core':
+ optional: true
+ '@nuxt/kit':
+ optional: true
+ '@nuxt/schema':
+ optional: true
+ esbuild:
+ optional: true
+ rollup:
+ optional: true
+ vite:
+ optional: true
+ webpack:
+ optional: true
+
+ unplugin-utils@0.2.5:
+ resolution: {integrity: sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==}
+ engines: {node: '>=18.12.0'}
+
+ unplugin-vue-components@28.8.0:
+ resolution: {integrity: sha512-2Q6ZongpoQzuXDK0ZsVzMoshH0MWZQ1pzVL538G7oIDKRTVzHjppBDS8aB99SADGHN3lpGU7frraCG6yWNoL5Q==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/parser': ^7.15.8
+ '@nuxt/kit': ^3.2.2 || ^4.0.0
+ vue: 2 || 3
+ peerDependenciesMeta:
+ '@babel/parser':
+ optional: true
+ '@nuxt/kit':
+ optional: true
+
unplugin@1.16.1:
resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==}
engines: {node: '>=14.0.0'}
+ unplugin@1.7.1:
+ resolution: {integrity: sha512-JqzORDAPxxs8ErLV4x+LL7bk5pk3YlcWqpSNsIkAZj972KzFZLClc/ekppahKkOczGkwIG6ElFgdOgOlK4tXZw==}
+
+ unplugin@2.3.11:
+ resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==}
+ engines: {node: '>=18.12.0'}
+
+ unplugin@2.3.2:
+ resolution: {integrity: sha512-3n7YA46rROb3zSj8fFxtxC/PqoyvYQ0llwz9wtUPUutr9ig09C8gGo5CWCwHrUzlqC1LLR43kxp5vEIyH1ac1w==}
+ engines: {node: '>=18.12.0'}
+
+ unquote@1.1.1:
+ resolution: {integrity: sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==}
+
unset-value@1.0.0:
resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==}
engines: {node: '>=0.10.0'}
+
+ untyped@2.0.0:
+ resolution: {integrity: sha512-nwNCjxJTjNuLCgFr42fEak5OcLuB3ecca+9ksPFNvtfYSLpjf+iJqSIaSnIile6ZPbKYxI5k2AfXqeopGudK/g==}
+ hasBin: true
+
+ update-browserslist-db@1.2.3:
+ resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
+ uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
urijs@1.19.11:
resolution: {integrity: sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==}
@@ -3697,16 +8129,34 @@
resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==}
deprecated: Please see https://github.com/lydell/urix#deprecated
+ url-parse@1.5.10:
+ resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+
use@3.1.1:
resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==}
engines: {node: '>=0.10.0'}
+ utif@2.0.1:
+ resolution: {integrity: sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==}
+
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+ utils-merge@1.0.1:
+ resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
+ engines: {node: '>= 0.4.0'}
uuid@11.1.0:
resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==}
hasBin: true
+
+ uview-plus@3.6.29:
+ resolution: {integrity: sha512-zK522LR074rB4k3EARysmjsoOh+WjtFevIpvmV1wjVFqS3TT6brLZLd+gKa1ewxBsIgIPDTAabmnHWPsW9DWkQ==}
+ engines: {HBuilderX: ^3.1.0, uni-app: ^4.66, uni-app-x: ''}
+
+ v8-to-istanbul@8.1.1:
+ resolution: {integrity: sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==}
+ engines: {node: '>=10.12.0'}
vant@4.9.22:
resolution: {integrity: sha512-P2PDSj3oB6l3W1OpVlQpapeLmI6bXMSvPqPdrw5rutslC0Y6tSkrVB/iSD57weD7K92GsjGkvgDK0eZlOsXGqw==}
@@ -3737,6 +8187,21 @@
videojs-vtt.js@0.15.5:
resolution: {integrity: sha512-yZbBxvA7QMYn15Lr/ZfhhLPrNpI/RmCSCqgIff57GC2gIrV5YfyzLfLyZMj0NnZSAz8syB4N0nHXpZg9MyrMOQ==}
+ vite-dev-rpc@1.1.0:
+ resolution: {integrity: sha512-pKXZlgoXGoE8sEKiKJSng4hI1sQ4wi5YT24FCrwrLt6opmkjlqPPVmiPWWJn8M8byMxRGzp1CrFuqQs4M/Z39A==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.1 || ^7.0.0-0
+
+ vite-hot-client@2.1.0:
+ resolution: {integrity: sha512-7SpgZmU7R+dDnSmvXE1mfDtnHLHQSisdySVR7lO8ceAXvM0otZeuQQ6C8LrS5d/aYyP/QZ0hI0L+dIPrm4YlFQ==}
+ peerDependencies:
+ vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
+
+ vite-plugin-clean-build@1.4.1:
+ resolution: {integrity: sha512-QtO/b8sFNsgcrQG0jyeCN7gy8Pgi+xSgIKb0LGZFT8fx8nLClCpA1ttwKuv8X842waF8/tM/ey6YrD1tdD81/g==}
+ peerDependencies:
+ vite: '>= 3.0.0'
+
vite-plugin-compression@0.5.1:
resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==}
peerDependencies:
@@ -3745,10 +8210,25 @@
vite-plugin-minipic@1.3.2:
resolution: {integrity: sha512-PFN0sFZhI7mOfgKK3i+UG9wMyoreiDPblAAmiM4Uh0Z6g/mCFY2p198e6HAmuN3uO+TwKZDCuBEuIO3FbuXbOw==}
+ vite-plugin-replace-image-url@1.4.1:
+ resolution: {integrity: sha512-GyYMRtNzSSs7Vg3TyzWe/ezV5FsPAbD3MhFfd10ztU118PRfpAR9iIUjOcSrv0u8ssxaNre3FJ1KGIwYDwnNnQ==}
+ peerDependencies:
+ vite: '>=3.0.0'
+
+ vite-plugin-restart@1.0.0:
+ resolution: {integrity: sha512-t2ktkTOa+DQX05TEZm/3FE0DyrYEyFXdhG5gLcta5p71zOpg9yG3DeRcHWJVLJgWNoaVtOr4fUlr1kKu+WfXyQ==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
+
vite-plugin-svg-icons@2.0.1:
resolution: {integrity: sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==}
peerDependencies:
vite: '>=2.0.0'
+
+ vite-plugin-vue-mcp@0.3.2:
+ resolution: {integrity: sha512-MUYSQvJUbEqFWCeZNq/3c6wg3upz8+ALPZkMjPTEGQtRK88uf17P6u/xB0u+4Qq/sn83iLD8r5QZLMDfxIEcVg==}
+ peerDependencies:
+ vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
vite-plugin-vue-setup-extend@0.4.0:
resolution: {integrity: sha512-WMbjPCui75fboFoUTHhdbXzu4Y/bJMv5N9QT9a7do3wNMNHHqrk+Tn2jrSJU0LS5fGl/EG+FEDBYVUeWIkDqXQ==}
@@ -3757,6 +8237,34 @@
vite@5.2.12:
resolution: {integrity: sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ 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
+
+ vite@5.2.8:
+ resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
@@ -3794,6 +8302,23 @@
'@vue/composition-api':
optional: true
+ vue-eslint-parser@10.2.0:
+ resolution: {integrity: sha512-CydUvFOQKD928UzZhTp4pr2vWz1L+H99t7Pkln2QSPdvmURT0MoC4wUccfCnuEaihNsu9aYYyk+bep8rlfkUXw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+
+ vue-flow-layout@0.1.1:
+ resolution: {integrity: sha512-JdgRRUVrN0Y2GosA0M68DEbKlXMqJ7FQgsK8CjQD2vxvNSqAU6PZEpi4cfcTVtfM2GVOMjHo7GKKLbXxOBqDqA==}
+ peerDependencies:
+ vue: ^3.4.37
+
+ vue-i18n@9.1.9:
+ resolution: {integrity: sha512-JeRdNVxS2OGp1E+pye5XB6+M6BBkHwAv9C80Q7+kzoMdUDGRna06tjC0vCB/jDX9aWrl5swxOMFcyAr7or8XTA==}
+ engines: {node: '>= 10'}
+ peerDependencies:
+ vue: ^3.0.0
+
vue-i18n@9.14.5:
resolution: {integrity: sha512-0jQ9Em3ymWngyiIkj0+c/k7WgaPO+TNzjKSNq9BvBQaKJECqn9cd9fL4tkDhB5G1QBskGl9YxxbDAhgbFtpe2g==}
engines: {node: '>= 16'}
@@ -3810,6 +8335,14 @@
resolution: {integrity: sha512-GUqKh1oO79xDpq0z+cCv/NDVTpcJGNDzeNgT3PmTdTp/WJh3gcTrDqIYKycKhzMFOtIFJ7hO/+usgyWtT+fNhA==}
peerDependencies:
vue: ^3.0.0
+
+ vue@3.4.21:
+ resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
vue@3.5.26:
resolution: {integrity: sha512-SJ/NTccVyAoNUJmkM9KUqPcYlY+u8OVL1X5EW9RIs3ch5H2uERxyyIUI4MRxVCSOiEcupX9xNGde1tL9ZKpimA==}
@@ -3829,12 +8362,45 @@
peerDependencies:
vue: ^3.2.0
+ w3c-hr-time@1.0.2:
+ resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
+ deprecated: Use your platform's native performance.now() and performance.timeOrigin.
+
+ w3c-xmlserializer@2.0.0:
+ resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==}
+ engines: {node: '>=10'}
+
+ walker@1.0.8:
+ resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
+
+ webidl-conversions@5.0.0:
+ resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==}
+ engines: {node: '>=8'}
+
+ webidl-conversions@6.1.0:
+ resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==}
+ engines: {node: '>=10.4'}
+
+ webpack-sources@3.3.3:
+ resolution: {integrity: sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==}
+ engines: {node: '>=10.13.0'}
+
webpack-virtual-modules@0.6.2:
resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
webrtc-adapter@8.2.4:
resolution: {integrity: sha512-VwtwbYNKnVQW8koB9qb8YcxNwpSVHTvvKEZLzY6uQ3gFrA9E87VPbB5xE+m1AGwUjL1UgN35jRR9hQgteZI5bg==}
engines: {node: '>=6.0.0', npm: '>=3.10.0'}
+
+ whatwg-encoding@1.0.5:
+ resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==}
+
+ whatwg-mimetype@2.3.0:
+ resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==}
+
+ whatwg-url@8.7.0:
+ resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==}
+ engines: {node: '>=10'}
which-boxed-primitive@1.1.1:
resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
@@ -3852,6 +8418,10 @@
resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==}
engines: {node: '>= 0.4'}
+ which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -3867,6 +8437,10 @@
wmf@1.0.2:
resolution: {integrity: sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==}
engines: {node: '>=0.8'}
+
+ word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+ engines: {node: '>=0.10.0'}
word@0.3.0:
resolution: {integrity: sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==}
@@ -3892,8 +8466,31 @@
resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
engines: {node: '>=12'}
+ wrap-ansi@9.0.2:
+ resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==}
+ engines: {node: '>=18'}
+
wrappy@1.0.2:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+
+ write-file-atomic@3.0.3:
+ resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
+
+ write-file-atomic@5.0.1:
+ resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+
+ ws@7.5.10:
+ resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
+ 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
ws@8.18.3:
resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
@@ -3907,39 +8504,935 @@
utf-8-validate:
optional: true
+ xhr@2.6.0:
+ resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==}
+
xlsx@0.18.5:
resolution: {integrity: sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==}
engines: {node: '>=0.8'}
hasBin: true
+ xml-name-validator@3.0.0:
+ resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==}
+
+ xml-name-validator@4.0.0:
+ resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
+ engines: {node: '>=12'}
+
+ xml-parse-from-string@1.0.1:
+ resolution: {integrity: sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==}
+
+ xml2js@0.5.0:
+ resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
+ engines: {node: '>=4.0.0'}
+
+ xmlbuilder@11.0.1:
+ resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
+ engines: {node: '>=4.0'}
+
+ xmlchars@2.2.0:
+ resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
+
+ xmlhttprequest@1.8.0:
+ resolution: {integrity: sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==}
+ engines: {node: '>=0.4.0'}
+
+ xregexp@3.1.0:
+ resolution: {integrity: sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==}
+
+ xtend@4.0.2:
+ resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+ engines: {node: '>=0.4'}
+
+ y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+
+ yallist@3.1.1:
+ resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+
+ yaml-eslint-parser@1.3.2:
+ resolution: {integrity: sha512-odxVsHAkZYYglR30aPYRY4nUGJnoJ2y1ww2HDvZALo0BDETv9kWbi16J52eHs+PWRNmF4ub6nZqfVOeesOvntg==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+
+ yaml@1.10.2:
+ resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
+ engines: {node: '>= 6'}
+
+ yaml@2.8.2:
+ resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==}
+ engines: {node: '>= 14.6'}
+ hasBin: true
+
+ yargs-parser@20.2.9:
+ resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
+ engines: {node: '>=10'}
+
+ yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+
+ yargs@16.2.0:
+ resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
+ engines: {node: '>=10'}
+
+ yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+
+ yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+
+ z-paging@2.8.8:
+ resolution: {integrity: sha512-l8HWhqlv1TvoNLwbf1fd8rS0zjAoVE6tdEUhMhKrnRXkfHFULIXMbDpljcSr6IyQoMzfWxF4Nqml3+2ZDgjk7g==}
+ engines: {HBuilderX: ^3.0.7, uni-app: ^4.07}
+
+ zod-to-json-schema@3.25.1:
+ resolution: {integrity: sha512-pM/SU9d3YAggzi6MtR4h7ruuQlqKtad8e9S0fmxcMi+ueAK5Korys/aWcV9LIIHTVbj01NdzxcnXSN+O74ZIVA==}
+ peerDependencies:
+ zod: ^3.25 || ^4
+
+ zod@3.25.76:
+ resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
+
zrender@5.6.1:
resolution: {integrity: sha512-OFXkDJKcrlx5su2XbzJvj/34Q3m6PvyCZkVPHGYpcCJ52ek4U/ymZyfuV1nKE23AyBJ51E/6Yr0mhZ7xGTO4ag==}
+
+ zwitch@2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
snapshots:
'@amap/amap-jsapi-loader@1.0.1': {}
+ '@ampproject/remapping@2.3.0':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@antfu/eslint-config@5.0.0(@unocss/eslint-plugin@66.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@clack/prompts': 0.11.0
+ '@eslint-community/eslint-plugin-eslint-comments': 4.5.0(eslint@9.39.2(jiti@2.6.1))
+ '@eslint/markdown': 7.5.1
+ '@stylistic/eslint-plugin': 5.6.1(eslint@9.39.2(jiti@2.6.1))
+ '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/parser': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@vitest/eslint-plugin': 1.6.5(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ ansis: 4.2.0
+ cac: 6.7.14
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-config-flat-gitignore: 2.1.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-flat-config-utils: 2.1.4
+ eslint-merge-processors: 2.0.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-antfu: 3.1.1(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-command: 3.4.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-import-lite: 0.3.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ eslint-plugin-jsdoc: 51.4.1(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-jsonc: 2.21.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-n: 17.23.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ eslint-plugin-no-only-tests: 3.3.0
+ eslint-plugin-perfectionist: 4.15.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ eslint-plugin-pnpm: 1.4.3(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-regexp: 2.10.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-toml: 0.12.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-unicorn: 60.0.0(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-unused-imports: 4.3.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))
+ eslint-plugin-vue: 10.6.2(@stylistic/eslint-plugin@5.6.1(eslint@9.39.2(jiti@2.6.1)))(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.39.2(jiti@2.6.1)))
+ eslint-plugin-yml: 1.19.1(eslint@9.39.2(jiti@2.6.1))
+ eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1))
+ 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(eslint@9.39.2(jiti@2.6.1))
+ yaml-eslint-parser: 1.3.2
+ optionalDependencies:
+ '@unocss/eslint-plugin': 66.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ transitivePeerDependencies:
+ - '@eslint/json'
+ - '@vue/compiler-sfc'
+ - supports-color
+ - typescript
+ - vitest
+
+ '@antfu/install-pkg@1.1.0':
+ dependencies:
+ package-manager-detector: 1.6.0
+ tinyexec: 1.0.2
+
'@antfu/utils@0.7.10': {}
+
+ '@antfu/utils@8.1.1': {}
+
+ '@antfu/utils@9.3.0': {}
+
+ '@babel/code-frame@7.27.1':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
+ '@babel/compat-data@7.28.5': {}
+
+ '@babel/core@7.28.5':
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helpers': 7.28.4
+ '@babel/parser': 7.28.5
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ '@jridgewell/remapping': 2.3.5
+ convert-source-map: 2.0.0
+ debug: 4.4.3
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/generator@7.28.5':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ jsesc: 3.1.0
+
+ '@babel/helper-annotate-as-pure@7.27.3':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@babel/helper-compilation-targets@7.27.2':
+ dependencies:
+ '@babel/compat-data': 7.28.5
+ '@babel/helper-validator-option': 7.27.1
+ browserslist: 4.28.1
+ lru-cache: 5.1.1
+ semver: 6.3.1
+
+ '@babel/helper-create-class-features-plugin@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/traverse': 7.28.5
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ regexpu-core: 6.4.0
+ semver: 6.3.1
+
+ '@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ debug: 4.4.3
+ lodash.debounce: 4.0.8
+ resolve: 1.22.11
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-globals@7.28.0': {}
+
+ '@babel/helper-member-expression-to-functions@7.28.5':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-imports@7.27.1':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-optimise-call-expression@7.27.1':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@babel/helper-plugin-utils@7.27.1': {}
+
+ '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-wrap-function': 7.28.3
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-replace-supers@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
'@babel/helper-string-parser@7.27.1': {}
'@babel/helper-validator-identifier@7.28.5': {}
+ '@babel/helper-validator-option@7.27.1': {}
+
+ '@babel/helper-wrap-function@7.28.3':
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helpers@7.28.4':
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.5
+
'@babel/parser@7.28.5':
dependencies:
'@babel/types': 7.28.5
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+
+ '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-block-scoping@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-globals': 7.28.0
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/template': 7.27.2
+
+ '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-logical-assignment-operators@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-systemjs@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-optional-chaining@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-typescript@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/preset-env@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/compat-data': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.5)
+ '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.5)
+ '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.5)
+ '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-block-scoping': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.5)
+ '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.5)
+ '@babel/plugin-transform-exponentiation-operator': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-logical-assignment-operators': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-systemjs': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
+ '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.5)
+ babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5)
+ babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5)
+ babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5)
+ core-js-compat: 3.47.0
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/types': 7.28.5
+ esutils: 2.0.3
+
'@babel/runtime@7.28.4': {}
+
+ '@babel/template@7.27.2':
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+
+ '@babel/traverse@7.28.5':
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.5
+ '@babel/helper-globals': 7.28.0
+ '@babel/parser': 7.28.5
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.5
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
'@babel/types@7.28.5':
dependencies:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.28.5
+ '@bcoe/v8-coverage@0.2.3': {}
+
'@bpmn-io/diagram-js-ui@0.2.3':
dependencies:
htm: 3.1.1
preact: 10.28.1
+
+ '@cacheable/memory@2.0.7':
+ dependencies:
+ '@cacheable/utils': 2.3.3
+ '@keyv/bigmap': 1.3.0(keyv@5.5.5)
+ hookified: 1.15.0
+ keyv: 5.5.5
+
+ '@cacheable/utils@2.3.3':
+ dependencies:
+ hashery: 1.4.0
+ keyv: 5.5.5
'@cesium/engine@14.0.0':
dependencies:
@@ -3968,7 +9461,675 @@
'@cesium/engine': 14.0.0
nosleep.js: 0.12.0
+ '@clack/core@0.5.0':
+ dependencies:
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
+
+ '@clack/prompts@0.11.0':
+ dependencies:
+ '@clack/core': 0.5.0
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
+
+ '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/css-syntax-patches-for-csstree@1.0.22': {}
+
+ '@csstools/css-tokenizer@3.0.4': {}
+
+ '@csstools/media-query-list-parser@4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.1)':
+ dependencies:
+ postcss-selector-parser: 7.1.1
+
'@ctrl/tinycolor@3.6.1': {}
+
+ '@dcloudio/types@3.4.28': {}
+
+ '@dcloudio/uni-app-harmony@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-app-uts': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-app-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ licia: 1.48.0
+ postcss-selector-parser: 6.1.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+
+ '@dcloudio/uni-app-plus@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-app-uts': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-app-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-app-vue': 3.0.0-4070520250711001
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ licia: 1.48.0
+ postcss-selector-parser: 6.1.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+
+ '@dcloudio/uni-app-uts@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-console': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-nvue-styler': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.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.4.3
+ es-module-lexer: 1.7.0
+ estree-walker: 2.0.2
+ fast-glob: 3.3.3
+ fs-extra: 10.1.0
+ magic-string: 0.30.21
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
+ unimport: 4.1.1
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-app-vite@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-nvue-styler': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ '@vitejs/plugin-vue': 5.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ picocolors: 1.1.1
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+
+ '@dcloudio/uni-app-vue@3.0.0-4070520250711001': {}
+
+ '@dcloudio/uni-app@3.0.0-4070520250711001(@dcloudio/types@3.4.28)(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/types': 3.4.28
+ '@dcloudio/uni-cloud': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-components': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-console': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-push': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@dcloudio/uni-stat': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-automator@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(jest-environment-node@27.5.1)(jest@27.0.4)(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ address: 1.2.2
+ cross-env: 7.0.3
+ debug: 4.4.3
+ default-gateway: 6.0.3
+ fs-extra: 10.1.0
+ jest: 27.0.4
+ jest-environment-node: 27.5.1
+ jsonc-parser: 3.3.1
+ licia: 1.48.0
+ merge: 2.1.1
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+
+ '@dcloudio/uni-cli-shared@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@babel/code-frame': 7.27.1
+ '@babel/core': 7.28.5
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@intlify/core-base': 9.1.9
+ '@intlify/shared': 9.1.9
+ '@intlify/vue-devtools': 9.1.9
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.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@3.4.21(typescript@5.9.3))
+ '@vue/shared': 3.4.21
+ adm-zip: 0.5.16
+ autoprefixer: 10.4.23(postcss@8.5.6)
+ base64url: 3.0.1
+ chokidar: 3.6.0
+ compare-versions: 3.6.0
+ debug: 4.4.3
+ entities: 4.5.0
+ es-module-lexer: 1.7.0
+ 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.7
+ jsonc-parser: 3.3.1
+ lines-and-columns: 2.0.4
+ magic-string: 0.30.21
+ 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.1
+ postcss-import: 14.1.0(postcss@8.5.6)
+ postcss-load-config: 3.1.4(postcss@8.5.6)
+ postcss-modules: 4.3.1(postcss@8.5.6)
+ postcss-selector-parser: 6.1.2
+ resolve: 1.22.11
+ source-map-js: 1.2.1
+ tapable: 2.3.0
+ unimport: 4.1.1
+ unplugin-auto-import: 19.1.0(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))
+ xregexp: 3.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-cloud@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ fast-glob: 3.3.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-components@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cloud': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-h5': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-console@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ fs-extra: 10.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-h5-vite@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ '@vue/server-renderer': 3.4.21(vue@3.4.21(typescript@5.9.3))
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ mime: 3.0.0
+ module-alias: 2.2.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-h5-vue@3.0.0-4070520250711001(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/server-renderer': 3.4.21(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - vue
+
+ '@dcloudio/uni-h5@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-h5-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-h5-vue': 3.0.0-4070520250711001(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/server-renderer': 3.4.21(vue@3.4.21(typescript@5.9.3))
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ localstorage-polyfill: 1.0.1
+ postcss-selector-parser: 6.1.2
+ safe-area-insets: 1.4.1
+ vue-router: 4.6.4(vue@3.4.21(typescript@5.9.3))
+ xmlhttprequest: 1.8.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-i18n@3.0.0-4070520250711001': {}
+
+ '@dcloudio/uni-mp-alipay@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-baidu@3.0.0-4070520250711001(@dcloudio/types@3.4.28)(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-app': 3.0.0-4070520250711001(@dcloudio/types@3.4.28)(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-weixin': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ jimp: 0.10.3
+ licia: 1.48.0
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@dcloudio/types'
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+
+ '@dcloudio/uni-mp-compiler@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@babel/generator': 7.28.5
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/compiler-dom': 3.4.21
+ '@vue/shared': 3.4.21
+ estree-walker: 2.0.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-harmony@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-toutiao': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-quickapp-webview': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-jd@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-kuaishou@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-weixin': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+
+ '@dcloudio/uni-mp-lark@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-toutiao': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-qq@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ fs-extra: 10.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-toutiao@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-vite@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-mp-vue@3.0.0-4070520250711001':
+ dependencies:
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+
+ '@dcloudio/uni-mp-weixin@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ jimp: 0.10.3
+ licia: 1.48.0
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+
+ '@dcloudio/uni-mp-xhs@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-nvue-styler@3.0.0-4070520250711001':
+ dependencies:
+ parse-css-font: 4.0.0
+ postcss: 8.5.6
+
+ '@dcloudio/uni-push@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-quickapp-webview@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-shared@3.0.0-4070520250711001':
+ dependencies:
+ '@vue/shared': 3.4.21
+
+ '@dcloudio/uni-stacktracey@3.0.0-4070520250711001': {}
+
+ '@dcloudio/uni-stat@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dcloudio/uni-ui@1.5.11': {}
+
+ '@dcloudio/vite-plugin-uni@3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5)
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))(postcss@8.5.6)(rollup@4.54.0)(vue@3.4.21(typescript@5.9.3))
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ '@vitejs/plugin-legacy': 5.3.2(terser@5.44.1)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ '@vitejs/plugin-vue': 5.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@vitejs/plugin-vue-jsx': 3.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@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.4.3
+ estree-walker: 2.0.2
+ express: 4.22.1
+ fast-glob: 3.3.3
+ fs-extra: 10.1.0
+ hash-sum: 2.0.0
+ jsonc-parser: 3.3.1
+ magic-string: 0.30.21
+ picocolors: 1.1.1
+ terser: 5.44.1
+ unplugin-auto-import: 19.1.0(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3)))
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ '@dual-bundle/import-meta-resolve@4.2.1': {}
'@dvgis/dc-common@1.0.0': {}
@@ -3984,9 +10145,25 @@
transitivePeerDependencies:
- supports-color
- '@element-plus/icons-vue@2.3.2(vue@3.5.26)':
+ '@element-plus/icons-vue@2.3.2(vue@3.5.26(typescript@5.9.3))':
dependencies:
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
+ '@es-joy/jsdoccomment@0.52.0':
+ dependencies:
+ '@types/estree': 1.0.8
+ '@typescript-eslint/types': 8.52.0
+ comment-parser: 1.4.1
+ esquery: 1.7.0
+ jsdoc-type-pratt-parser: 4.1.0
+
+ '@es-joy/jsdoccomment@0.78.0':
+ dependencies:
+ '@types/estree': 1.0.8
+ '@typescript-eslint/types': 8.52.0
+ comment-parser: 1.4.1
+ esquery: 1.7.0
+ jsdoc-type-pratt-parser: 7.0.0
'@esbuild/aix-ppc64@0.20.2':
optional: true
@@ -4003,8 +10180,12 @@
'@esbuild/darwin-arm64@0.20.2':
optional: true
+ '@esbuild/darwin-arm64@0.25.1': {}
+
'@esbuild/darwin-x64@0.20.2':
optional: true
+
+ '@esbuild/darwin-x64@0.25.1': {}
'@esbuild/freebsd-arm64@0.20.2':
optional: true
@@ -4057,6 +10238,87 @@
'@esbuild/win32-x64@0.20.2':
optional: true
+ '@eslint-community/eslint-plugin-eslint-comments@4.5.0(eslint@9.39.2(jiti@2.6.1))':
+ dependencies:
+ escape-string-regexp: 4.0.0
+ eslint: 9.39.2(jiti@2.6.1)
+ ignore: 5.3.2
+
+ '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@2.6.1))':
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-visitor-keys: 3.4.3
+
+ '@eslint-community/regexpp@4.12.2': {}
+
+ '@eslint/compat@1.4.1(eslint@9.39.2(jiti@2.6.1))':
+ dependencies:
+ '@eslint/core': 0.17.0
+ optionalDependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+
+ '@eslint/config-array@0.21.1':
+ dependencies:
+ '@eslint/object-schema': 2.1.7
+ debug: 4.4.3
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/config-helpers@0.4.2':
+ dependencies:
+ '@eslint/core': 0.17.0
+
+ '@eslint/core@0.15.2':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/core@0.17.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/eslintrc@3.3.3':
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.4.3
+ espree: 10.4.0
+ globals: 14.0.0
+ ignore: 5.3.2
+ import-fresh: 3.3.1
+ js-yaml: 4.1.1
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/js@9.39.2': {}
+
+ '@eslint/markdown@7.5.1':
+ 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
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/object-schema@2.1.7': {}
+
+ '@eslint/plugin-kit@0.3.5':
+ dependencies:
+ '@eslint/core': 0.15.2
+ levn: 0.4.1
+
+ '@eslint/plugin-kit@0.4.1':
+ dependencies:
+ '@eslint/core': 0.17.0
+ levn: 0.4.1
+
'@floating-ui/core@1.7.3':
dependencies:
'@floating-ui/utils': 0.2.10
@@ -4068,17 +10330,98 @@
'@floating-ui/utils@0.2.10': {}
+ '@hono/node-server@1.19.7(hono@4.11.3)':
+ dependencies:
+ hono: 4.11.3
+
+ '@humanfs/core@0.19.1': {}
+
+ '@humanfs/node@0.16.7':
+ dependencies:
+ '@humanfs/core': 0.19.1
+ '@humanwhocodes/retry': 0.4.3
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/retry@0.4.3': {}
+
+ '@iconify-json/mdi@1.2.3':
+ dependencies:
+ '@iconify/types': 2.0.0
+
+ '@iconify/types@2.0.0': {}
+
+ '@iconify/utils@2.3.0':
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@antfu/utils': 8.1.1
+ '@iconify/types': 2.0.0
+ debug: 4.4.3
+ globals: 15.15.0
+ kolorist: 1.8.0
+ local-pkg: 1.1.2
+ mlly: 1.8.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@iconify/utils@3.1.0':
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@iconify/types': 2.0.0
+ mlly: 1.8.0
+
+ '@intlify/core-base@9.1.9':
+ 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
+
'@intlify/core-base@9.14.5':
dependencies:
'@intlify/message-compiler': 9.14.5
'@intlify/shared': 9.14.5
+
+ '@intlify/devtools-if@9.1.9':
+ dependencies:
+ '@intlify/shared': 9.1.9
+
+ '@intlify/message-compiler@9.1.9':
+ dependencies:
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/shared': 9.1.9
+ source-map: 0.6.1
'@intlify/message-compiler@9.14.5':
dependencies:
'@intlify/shared': 9.14.5
source-map-js: 1.2.1
+ '@intlify/message-resolver@9.1.9': {}
+
+ '@intlify/runtime@9.1.9':
+ dependencies:
+ '@intlify/message-compiler': 9.1.9
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/shared': 9.1.9
+
+ '@intlify/shared@9.1.9': {}
+
'@intlify/shared@9.14.5': {}
+
+ '@intlify/vue-devtools@9.1.9':
+ dependencies:
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/runtime': 9.1.9
+ '@intlify/shared': 9.1.9
+
+ '@isaacs/balanced-match@4.0.1': {}
+
+ '@isaacs/brace-expansion@5.0.0':
+ dependencies:
+ '@isaacs/balanced-match': 4.0.1
'@isaacs/cliui@8.0.2':
dependencies:
@@ -4089,9 +10432,451 @@
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
+ '@istanbuljs/load-nyc-config@1.1.0':
+ dependencies:
+ camelcase: 5.3.1
+ find-up: 4.1.0
+ get-package-type: 0.1.0
+ js-yaml: 3.14.2
+ resolve-from: 5.0.0
+
+ '@istanbuljs/schema@0.1.3': {}
+
+ '@jest/console@27.5.1':
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ chalk: 4.1.2
+ jest-message-util: 27.5.1
+ jest-util: 27.5.1
+ slash: 3.0.0
+
+ '@jest/core@27.5.1':
+ 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': 25.0.3
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ emittery: 0.8.1
+ exit: 0.1.2
+ graceful-fs: 4.2.11
+ 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.8
+ rimraf: 3.0.2
+ slash: 3.0.0
+ strip-ansi: 6.0.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+
+ '@jest/environment@27.5.1':
+ dependencies:
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ jest-mock: 27.5.1
+
+ '@jest/fake-timers@27.5.1':
+ dependencies:
+ '@jest/types': 27.5.1
+ '@sinonjs/fake-timers': 8.1.0
+ '@types/node': 25.0.3
+ jest-message-util: 27.5.1
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+
+ '@jest/globals@27.5.1':
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/types': 27.5.1
+ expect: 27.5.1
+
+ '@jest/reporters@27.5.1':
+ 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': 25.0.3
+ chalk: 4.1.2
+ collect-v8-coverage: 1.0.3
+ exit: 0.1.2
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ istanbul-lib-coverage: 3.2.2
+ istanbul-lib-instrument: 5.2.1
+ istanbul-lib-report: 3.0.1
+ istanbul-lib-source-maps: 4.0.1
+ istanbul-reports: 3.2.0
+ 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.1
+ string-length: 4.0.2
+ terminal-link: 2.1.1
+ v8-to-istanbul: 8.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@jest/source-map@27.5.1':
+ dependencies:
+ callsites: 3.1.0
+ graceful-fs: 4.2.11
+ source-map: 0.6.1
+
+ '@jest/test-result@27.5.1':
+ dependencies:
+ '@jest/console': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/istanbul-lib-coverage': 2.0.6
+ collect-v8-coverage: 1.0.3
+
+ '@jest/test-sequencer@27.5.1':
+ dependencies:
+ '@jest/test-result': 27.5.1
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-runtime: 27.5.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@jest/transform@27.5.1':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@jest/types': 27.5.1
+ babel-plugin-istanbul: 6.1.1
+ chalk: 4.1.2
+ convert-source-map: 1.9.0
+ fast-json-stable-stringify: 2.1.0
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-regex-util: 27.5.1
+ jest-util: 27.5.1
+ micromatch: 4.0.8
+ pirates: 4.0.7
+ slash: 3.0.0
+ source-map: 0.6.1
+ write-file-atomic: 3.0.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@jest/types@27.5.1':
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 25.0.3
+ '@types/yargs': 16.0.11
+ chalk: 4.1.2
+
+ '@jimp/bmp@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ bmp-js: 0.1.0
+ core-js: 3.47.0
+
+ '@jimp/core@0.10.3':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/utils': 0.10.3
+ any-base: 1.1.0
+ buffer: 5.7.1
+ core-js: 3.47.0
+ exif-parser: 0.1.12
+ file-type: 9.0.0
+ load-bmfont: 1.4.2
+ mkdirp: 0.5.6
+ phin: 2.9.3
+ pixelmatch: 4.0.2
+ tinycolor2: 1.6.0
+ transitivePeerDependencies:
+ - debug
+
+ '@jimp/custom@0.10.3':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/core': 0.10.3
+ core-js: 3.47.0
+ transitivePeerDependencies:
+ - debug
+
+ '@jimp/gif@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+ omggif: 1.0.10
+
+ '@jimp/jpeg@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+ jpeg-js: 0.3.7
+
+ '@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-blur@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-circle@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-color@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+ tinycolor2: 1.6.0
+
+ '@jimp/plugin-contain@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-cover@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-displace@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-dither@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-fisheye@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-flip@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-rotate@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-rotate': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-gaussian@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-invert@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-mask@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-normalize@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-print@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+ load-bmfont: 1.4.2
+ transitivePeerDependencies:
+ - debug
+
+ '@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-rotate@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-shadow@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blur@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blur': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugin-threshold@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-color@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-color': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+
+ '@jimp/plugins@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-blur': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-circle': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-color': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-contain': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))
+ '@jimp/plugin-cover': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-displace': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-dither': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-fisheye': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-flip': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-rotate@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3)))
+ '@jimp/plugin-gaussian': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-invert': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-mask': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-normalize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-print': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-rotate': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/plugin-shadow': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blur@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ '@jimp/plugin-threshold': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-color@0.10.3(@jimp/custom@0.10.3))(@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3))
+ core-js: 3.47.0
+ timm: 1.7.1
+ transitivePeerDependencies:
+ - debug
+
+ '@jimp/png@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.47.0
+ pngjs: 3.4.0
+
+ '@jimp/tiff@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ core-js: 3.47.0
+ utif: 2.0.1
+
+ '@jimp/types@0.10.3(@jimp/custom@0.10.3)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/bmp': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/custom': 0.10.3
+ '@jimp/gif': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/jpeg': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/png': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/tiff': 0.10.3(@jimp/custom@0.10.3)
+ core-js: 3.47.0
+ timm: 1.7.1
+
+ '@jimp/utils@0.10.3':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ core-js: 3.47.0
+ regenerator-runtime: 0.13.11
+
'@jridgewell/gen-mapping@0.3.13':
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/remapping@2.3.5':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
'@jridgewell/trace-mapping': 0.3.31
'@jridgewell/resolve-uri@3.1.2': {}
@@ -4108,6 +10893,40 @@
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
+ '@keyv/bigmap@1.3.0(keyv@5.5.5)':
+ dependencies:
+ hashery: 1.4.0
+ hookified: 1.15.0
+ keyv: 5.5.5
+
+ '@keyv/serialize@1.1.1': {}
+
+ '@meoc/utils@0.2.10':
+ dependencies:
+ dayjs: 1.11.19
+
+ '@modelcontextprotocol/sdk@1.25.1(hono@4.11.3)(zod@3.25.76)':
+ dependencies:
+ '@hono/node-server': 1.19.7(hono@4.11.3)
+ ajv: 8.17.1
+ ajv-formats: 3.0.1(ajv@8.17.1)
+ content-type: 1.0.5
+ cors: 2.8.5
+ cross-spawn: 7.0.6
+ eventsource: 3.0.7
+ eventsource-parser: 3.0.6
+ express: 5.2.1
+ express-rate-limit: 7.5.1(express@5.2.1)
+ jose: 6.1.3
+ json-schema-typed: 8.0.2
+ pkce-challenge: 5.0.1
+ raw-body: 3.0.2
+ zod: 3.25.76
+ zod-to-json-schema: 3.25.1(zod@3.25.76)
+ transitivePeerDependencies:
+ - hono
+ - supports-color
+
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -4119,6 +10938,32 @@
dependencies:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.20.1
+
+ '@nuxt/kit@3.20.2':
+ dependencies:
+ c12: 3.3.3
+ consola: 3.4.2
+ defu: 6.1.4
+ destr: 2.0.5
+ errx: 0.1.0
+ exsolve: 1.0.8
+ ignore: 7.0.5
+ jiti: 2.6.1
+ klona: 2.0.6
+ knitwork: 1.3.0
+ mlly: 1.8.0
+ ohash: 2.0.11
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ scule: 1.3.0
+ semver: 7.7.3
+ tinyglobby: 0.2.15
+ ufo: 1.6.1
+ unctx: 2.5.0
+ untyped: 2.0.0
+ transitivePeerDependencies:
+ - magicast
'@parcel/watcher-android-arm64@2.5.1':
optional: true
@@ -4179,10 +11024,13 @@
'@parcel/watcher-win32-arm64': 2.5.1
'@parcel/watcher-win32-ia32': 2.5.1
'@parcel/watcher-win32-x64': 2.5.1
- optional: true
'@pkgjs/parseargs@0.11.0':
optional: true
+
+ '@pkgr/core@0.2.9': {}
+
+ '@polka/url@1.0.0-next.29': {}
'@protobufjs/aspromise@1.1.2': {}
@@ -4207,6 +11055,10 @@
'@protobufjs/utf8@1.1.0': {}
+ '@quansync/fs@1.0.0':
+ dependencies:
+ quansync: 1.0.0
+
'@rollup/pluginutils@5.3.0(rollup@4.54.0)':
dependencies:
'@types/estree': 1.0.8
@@ -4221,8 +11073,12 @@
'@rollup/rollup-android-arm64@4.54.0':
optional: true
+ '@rollup/rollup-darwin-arm64@4.38.0': {}
+
'@rollup/rollup-darwin-arm64@4.54.0':
optional: true
+
+ '@rollup/rollup-darwin-x64@4.38.0': {}
'@rollup/rollup-darwin-x64@4.54.0':
optional: true
@@ -4287,9 +11143,9 @@
codemirror: 5.65.20
randomcolor: 0.6.2
- '@saber/nf-form-design-elp@1.6.1(vue@3.5.26)':
+ '@saber/nf-form-design-elp@1.6.1(vue@3.5.26(typescript@5.9.3))':
dependencies:
- vuedraggable: 4.1.0(vue@3.5.26)
+ vuedraggable: 4.1.0(vue@3.5.26(typescript@5.9.3))
transitivePeerDependencies:
- vue
@@ -4301,16 +11157,36 @@
countup.js: 2.9.0
signature_pad: 5.1.3
- '@smallwei/avue@3.7.4(element-plus@2.9.11(vue@3.5.26))(vue@3.5.26)':
+ '@sinonjs/commons@1.8.6':
dependencies:
- '@element-plus/icons-vue': 2.3.2(vue@3.5.26)
+ type-detect: 4.0.8
+
+ '@sinonjs/fake-timers@8.1.0':
+ dependencies:
+ '@sinonjs/commons': 1.8.6
+
+ '@smallwei/avue@3.7.4(element-plus@2.9.11(vue@3.5.26(typescript@5.9.3)))(vue@3.5.26(typescript@5.9.3))':
+ dependencies:
+ '@element-plus/icons-vue': 2.3.2(vue@3.5.26(typescript@5.9.3))
countup.js: 1.9.3
dayjs: 1.11.19
- element-plus: 2.9.11(vue@3.5.26)
+ element-plus: 2.9.11(vue@3.5.26(typescript@5.9.3))
lodash: 4.17.21
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
+ '@stylistic/eslint-plugin@5.6.1(eslint@9.39.2(jiti@2.6.1))':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@typescript-eslint/types': 8.52.0
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ estraverse: 5.3.0
+ picomatch: 4.0.3
'@sxzz/popperjs-es@2.11.7': {}
+
+ '@tootallnate/once@1.1.2': {}
'@transloadit/prettier-bytes@0.0.7': {}
@@ -5134,11 +12010,52 @@
'@tweenjs/tween.js@25.0.0': {}
+ '@types/babel__core@7.20.5':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@types/babel__generator': 7.27.0
+ '@types/babel__template': 7.4.4
+ '@types/babel__traverse': 7.28.0
+
+ '@types/babel__generator@7.27.0':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@types/babel__template@7.4.4':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+
+ '@types/babel__traverse@7.28.0':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@types/debug@4.1.12':
+ dependencies:
+ '@types/ms': 2.1.0
+
'@types/estree@1.0.8': {}
'@types/event-emitter@0.3.5': {}
'@types/geojson@7946.0.8': {}
+
+ '@types/graceful-fs@4.1.9':
+ dependencies:
+ '@types/node': 25.0.3
+
+ '@types/istanbul-lib-coverage@2.0.6': {}
+
+ '@types/istanbul-lib-report@3.0.3':
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+
+ '@types/istanbul-reports@3.0.4':
+ dependencies:
+ '@types/istanbul-lib-report': 3.0.3
+
+ '@types/json-schema@7.0.15': {}
'@types/lodash-es@4.17.12':
dependencies:
@@ -5146,13 +12063,23 @@
'@types/lodash@4.17.21': {}
+ '@types/mdast@4.0.4':
+ dependencies:
+ '@types/unist': 3.0.3
+
+ '@types/ms@2.1.0': {}
+
'@types/node@25.0.3':
dependencies:
undici-types: 7.16.0
+ '@types/prettier@2.7.3': {}
+
'@types/readable-stream@4.0.23':
dependencies:
'@types/node': 25.0.3
+
+ '@types/stack-utils@2.0.3': {}
'@types/svgo@2.6.4':
dependencies:
@@ -5161,11 +12088,287 @@
'@types/trusted-types@2.0.7':
optional: true
+ '@types/unist@3.0.3': {}
+
'@types/web-bluetooth@0.0.16': {}
'@types/ws@8.18.1':
dependencies:
'@types/node': 25.0.3
+
+ '@types/yargs-parser@21.0.3': {}
+
+ '@types/yargs@16.0.11':
+ dependencies:
+ '@types/yargs-parser': 21.0.3
+
+ '@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.2
+ '@typescript-eslint/parser': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/scope-manager': 8.52.0
+ '@typescript-eslint/type-utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.52.0
+ eslint: 9.39.2(jiti@2.6.1)
+ ignore: 7.0.5
+ natural-compare: 1.4.0
+ ts-api-utils: 2.4.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.52.0
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.52.0
+ debug: 4.4.3
+ eslint: 9.39.2(jiti@2.6.1)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/project-service@8.52.0(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/tsconfig-utils': 8.52.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.52.0
+ debug: 4.4.3
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/scope-manager@8.52.0':
+ dependencies:
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/visitor-keys': 8.52.0
+
+ '@typescript-eslint/tsconfig-utils@8.52.0(typescript@5.9.3)':
+ dependencies:
+ typescript: 5.9.3
+
+ '@typescript-eslint/type-utils@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ debug: 4.4.3
+ eslint: 9.39.2(jiti@2.6.1)
+ ts-api-utils: 2.4.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/types@8.52.0': {}
+
+ '@typescript-eslint/typescript-estree@8.52.0(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/project-service': 8.52.0(typescript@5.9.3)
+ '@typescript-eslint/tsconfig-utils': 8.52.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/visitor-keys': 8.52.0
+ debug: 4.4.3
+ minimatch: 9.0.5
+ semver: 7.7.3
+ tinyglobby: 0.2.15
+ ts-api-utils: 2.4.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@typescript-eslint/scope-manager': 8.52.0
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
+ eslint: 9.39.2(jiti@2.6.1)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/visitor-keys@8.52.0':
+ dependencies:
+ '@typescript-eslint/types': 8.52.0
+ eslint-visitor-keys: 4.2.1
+
+ '@unocss/astro@65.5.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/reset': 65.5.0
+ '@unocss/vite': 65.5.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ optionalDependencies:
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ transitivePeerDependencies:
+ - vue
+
+ '@unocss/cli@65.5.0':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/preset-uno': 65.5.0
+ cac: 6.7.14
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ consola: 3.4.2
+ magic-string: 0.30.21
+ pathe: 2.0.3
+ perfect-debounce: 1.0.0
+ tinyglobby: 0.2.15
+ unplugin-utils: 0.2.5
+
+ '@unocss/config@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ unconfig: 7.0.0
+
+ '@unocss/config@66.5.12':
+ dependencies:
+ '@unocss/core': 66.5.12
+ unconfig: 7.4.2
+
+ '@unocss/core@65.5.0': {}
+
+ '@unocss/core@66.5.12': {}
+
+ '@unocss/eslint-plugin@66.5.12(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ '@unocss/config': 66.5.12
+ '@unocss/core': 66.5.12
+ '@unocss/rule-utils': 66.5.12
+ magic-string: 0.30.21
+ synckit: 0.11.11
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - typescript
+
+ '@unocss/extractor-arbitrary-variants@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/extractor-arbitrary-variants@66.5.12':
+ dependencies:
+ '@unocss/core': 66.5.12
+
+ '@unocss/inspector@65.5.0(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ colorette: 2.0.20
+ gzip-size: 6.0.0
+ sirv: 3.0.2
+ vue-flow-layout: 0.1.1(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - vue
+
+ '@unocss/postcss@65.5.0(postcss@8.5.6)':
+ dependencies:
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ css-tree: 3.1.0
+ postcss: 8.5.6
+ tinyglobby: 0.2.15
+
+ '@unocss/preset-attributify@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/preset-icons@65.5.0':
+ dependencies:
+ '@iconify/utils': 2.3.0
+ '@unocss/core': 65.5.0
+ ofetch: 1.5.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@unocss/preset-icons@66.5.12':
+ dependencies:
+ '@iconify/utils': 3.1.0
+ '@unocss/core': 66.5.12
+ ofetch: 1.5.1
+
+ '@unocss/preset-mini@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/extractor-arbitrary-variants': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+
+ '@unocss/preset-tagify@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/preset-typography@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+
+ '@unocss/preset-uno@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/preset-wind': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+
+ '@unocss/preset-web-fonts@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ ofetch: 1.5.1
+
+ '@unocss/preset-wind@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+
+ '@unocss/reset@65.5.0': {}
+
+ '@unocss/rule-utils@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ magic-string: 0.30.21
+
+ '@unocss/rule-utils@66.5.12':
+ dependencies:
+ '@unocss/core': 66.5.12
+ magic-string: 0.30.21
+
+ '@unocss/transformer-attributify-jsx@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/transformer-compile-class@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/transformer-directives@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ css-tree: 3.1.0
+
+ '@unocss/transformer-variant-group@65.5.0':
+ dependencies:
+ '@unocss/core': 65.5.0
+
+ '@unocss/vite@65.5.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/inspector': 65.5.0(vue@3.4.21(typescript@5.9.3))
+ chokidar: 3.6.0
+ magic-string: 0.30.21
+ tinyglobby: 0.2.15
+ unplugin-utils: 0.2.5
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ transitivePeerDependencies:
+ - vue
'@uppy/companion-client@2.2.2':
dependencies:
@@ -5198,9 +12401,9 @@
'@vant/popperjs@1.3.0': {}
- '@vant/use@1.6.0(vue@3.5.26)':
+ '@vant/use@1.6.0(vue@3.5.26(typescript@5.9.3))':
dependencies:
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
'@videojs/http-streaming@3.17.2(video.js@8.23.4)':
dependencies:
@@ -5228,10 +12431,87 @@
dependencies:
vite: 5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)
- '@vitejs/plugin-vue@5.2.4(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))(vue@3.5.26)':
+ '@vitejs/plugin-legacy@5.3.2(terser@5.44.1)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/preset-env': 7.28.5(@babel/core@7.28.5)
+ browserslist: 4.28.1
+ browserslist-to-esbuild: 2.1.1(browserslist@4.28.1)
+ core-js: 3.47.0
+ magic-string: 0.30.21
+ regenerator-runtime: 0.14.1
+ systemjs: 6.15.1
+ terser: 5.44.1
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5)
+ '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.5)
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ vue: 3.4.21(typescript@5.9.3)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vitejs/plugin-vue@5.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ vue: 3.4.21(typescript@5.9.3)
+
+ '@vitejs/plugin-vue@5.2.4(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1))(vue@3.5.26(typescript@5.9.3))':
dependencies:
vite: 5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
+ '@vitest/eslint-plugin@1.6.5(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.52.0
+ '@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 9.39.2(jiti@2.6.1)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/babel-helper-vue-transform-on@1.5.0': {}
+
+ '@vue/babel-plugin-jsx@1.5.0(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ '@vue/babel-helper-vue-transform-on': 1.5.0
+ '@vue/babel-plugin-resolve-type': 1.5.0(@babel/core@7.28.5)
+ '@vue/shared': 3.5.26
+ optionalDependencies:
+ '@babel/core': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/babel-plugin-resolve-type@1.5.0(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/parser': 7.28.5
+ '@vue/compiler-sfc': 3.5.26
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/compiler-core@3.4.21':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@vue/shared': 3.4.21
+ entities: 4.5.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.1
'@vue/compiler-core@3.5.26':
dependencies:
@@ -5241,10 +12521,27 @@
estree-walker: 2.0.2
source-map-js: 1.2.1
+ '@vue/compiler-dom@3.4.21':
+ dependencies:
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+
'@vue/compiler-dom@3.5.26':
dependencies:
'@vue/compiler-core': 3.5.26
'@vue/shared': 3.5.26
+
+ '@vue/compiler-sfc@3.4.21':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@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.21
+ postcss: 8.5.6
+ source-map-js: 1.2.1
'@vue/compiler-sfc@3.5.26':
dependencies:
@@ -5258,21 +12555,69 @@
postcss: 8.5.6
source-map-js: 1.2.1
+ '@vue/compiler-ssr@3.4.21':
+ dependencies:
+ '@vue/compiler-dom': 3.4.21
+ '@vue/shared': 3.4.21
+
'@vue/compiler-ssr@3.5.26':
dependencies:
'@vue/compiler-dom': 3.5.26
'@vue/shared': 3.5.26
+ '@vue/consolidate@1.0.0': {}
+
'@vue/devtools-api@6.6.4': {}
+
+ '@vue/devtools-core@7.7.9(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@vue/devtools-kit': 7.7.9
+ '@vue/devtools-shared': 7.7.9
+ mitt: 3.0.1
+ nanoid: 5.1.6
+ pathe: 2.0.3
+ vite-hot-client: 2.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ vue: 3.4.21(typescript@5.9.3)
+ transitivePeerDependencies:
+ - vite
+
+ '@vue/devtools-kit@7.7.9':
+ dependencies:
+ '@vue/devtools-shared': 7.7.9
+ birpc: 2.9.0
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.6
+
+ '@vue/devtools-shared@7.7.9':
+ dependencies:
+ rfdc: 1.4.1
+
+ '@vue/reactivity@3.4.21':
+ dependencies:
+ '@vue/shared': 3.4.21
'@vue/reactivity@3.5.26':
dependencies:
'@vue/shared': 3.5.26
+ '@vue/runtime-core@3.4.21':
+ dependencies:
+ '@vue/reactivity': 3.4.21
+ '@vue/shared': 3.4.21
+
'@vue/runtime-core@3.5.26':
dependencies:
'@vue/reactivity': 3.5.26
'@vue/shared': 3.5.26
+
+ '@vue/runtime-dom@3.4.21':
+ dependencies:
+ '@vue/runtime-core': 3.4.21
+ '@vue/shared': 3.4.21
+ csstype: 3.2.3
'@vue/runtime-dom@3.5.26':
dependencies:
@@ -5281,57 +12626,84 @@
'@vue/shared': 3.5.26
csstype: 3.2.3
- '@vue/server-renderer@3.5.26(vue@3.5.26)':
+ '@vue/server-renderer@3.4.21(vue@3.4.21(typescript@5.9.3))':
+ dependencies:
+ '@vue/compiler-ssr': 3.4.21
+ '@vue/shared': 3.4.21
+ vue: 3.4.21(typescript@5.9.3)
+
+ '@vue/server-renderer@3.5.26(vue@3.5.26(typescript@5.9.3))':
dependencies:
'@vue/compiler-ssr': 3.5.26
'@vue/shared': 3.5.26
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
+ '@vue/shared@3.4.21': {}
'@vue/shared@3.5.26': {}
- '@vueuse/core@9.13.0(vue@3.5.26)':
+ '@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3))':
dependencies:
'@types/web-bluetooth': 0.0.16
'@vueuse/metadata': 9.13.0
- '@vueuse/shared': 9.13.0(vue@3.5.26)
- vue-demi: 0.14.10(vue@3.5.26)
+ '@vueuse/shared': 9.13.0(vue@3.4.21(typescript@5.9.3))
+ vue-demi: 0.14.10(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ optional: true
+
+ '@vueuse/core@9.13.0(vue@3.5.26(typescript@5.9.3))':
+ dependencies:
+ '@types/web-bluetooth': 0.0.16
+ '@vueuse/metadata': 9.13.0
+ '@vueuse/shared': 9.13.0(vue@3.5.26(typescript@5.9.3))
+ vue-demi: 0.14.10(vue@3.5.26(typescript@5.9.3))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
'@vueuse/metadata@9.13.0': {}
- '@vueuse/shared@9.13.0(vue@3.5.26)':
+ '@vueuse/shared@9.13.0(vue@3.4.21(typescript@5.9.3))':
dependencies:
- vue-demi: 0.14.10(vue@3.5.26)
+ vue-demi: 0.14.10(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ optional: true
+
+ '@vueuse/shared@9.13.0(vue@3.5.26(typescript@5.9.3))':
+ dependencies:
+ vue-demi: 0.14.10(vue@3.5.26(typescript@5.9.3))
transitivePeerDependencies:
- '@vue/composition-api'
- vue
- '@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)':
+ '@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
- dom7: 3.0.0
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ dom7: 4.0.6
is-url: 1.2.4
lodash.throttle: 4.1.1
- nanoid: 3.3.11
- slate: 0.72.8
+ nanoid: 5.1.6
+ slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/code-highlight@1.3.43(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)':
+ '@wangeditor-next/code-highlight@1.3.43(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
prismjs: 1.30.0
slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)':
+ '@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
'@types/event-emitter': 0.3.5
'@uppy/core': 2.3.4
'@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4)
- dom7: 3.0.0
+ dom7: 4.0.6
event-emitter: 0.3.5
html-void-elements: 3.0.0
i18next: 23.16.8
@@ -5342,9 +12714,9 @@
lodash.foreach: 4.5.0
lodash.throttle: 4.1.1
lodash.toarray: 4.4.0
- nanoid: 3.3.11
+ nanoid: 5.1.6
scroll-into-view-if-needed: 3.1.0
- slate: 0.72.8
+ slate: 0.82.1
slate-history: 0.109.0(slate@0.82.1)
snabbdom: 3.6.3
@@ -5352,13 +12724,13 @@
dependencies:
'@uppy/core': 2.3.4
'@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4)
- '@wangeditor-next/basic-modules': 1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
- '@wangeditor-next/code-highlight': 1.3.43(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
- '@wangeditor-next/list-module': 1.1.52(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)
- '@wangeditor-next/table-module': 1.6.60(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
- '@wangeditor-next/upload-image-module': 1.1.50(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.82.1)(snabbdom@3.6.3)
- '@wangeditor-next/video-module': 1.3.51(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/basic-modules': 1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/code-highlight': 1.3.43(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/list-module': 1.1.52(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/table-module': 1.6.60(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/upload-image-module': 1.1.50(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/video-module': 1.3.51(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
is-hotkey: 0.2.0
lodash.camelcase: 4.3.0
@@ -5371,16 +12743,16 @@
slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/list-module@1.1.52(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)':
+ '@wangeditor-next/list-module@1.1.52(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/table-module@1.6.60(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
+ '@wangeditor-next/table-module@1.6.60(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
lodash.debounce: 4.0.8
lodash.throttle: 4.1.1
@@ -5388,22 +12760,22 @@
slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/upload-image-module@1.1.50(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.82.1)(snabbdom@3.6.3)':
+ '@wangeditor-next/upload-image-module@1.1.50(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
'@uppy/core': 2.3.4
'@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4)
- '@wangeditor-next/basic-modules': 1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
+ '@wangeditor-next/basic-modules': 1.5.47(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
lodash.foreach: 4.5.0
slate: 0.82.1
snabbdom: 3.6.3
- '@wangeditor-next/video-module@1.3.51(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
+ '@wangeditor-next/video-module@1.3.51(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)':
dependencies:
'@uppy/core': 2.3.4
'@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4)
- '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.11)(slate@0.72.8)(snabbdom@3.6.3)
+ '@wangeditor-next/core': 1.7.45(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.6)(slate@0.82.1)(snabbdom@3.6.3)
dom7: 4.0.6
nanoid: 5.1.6
slate: 0.82.1
@@ -5450,10 +12822,10 @@
slate-history: 0.66.0(slate@0.72.8)
snabbdom: 3.6.3
- '@wangeditor/editor-for-vue@5.1.12(@wangeditor/editor@5.1.23)(vue@3.5.26)':
+ '@wangeditor/editor-for-vue@5.1.12(@wangeditor/editor@5.1.23)(vue@3.5.26(typescript@5.9.3))':
dependencies:
'@wangeditor/editor': 5.1.23
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
'@wangeditor/editor@5.1.23':
dependencies:
@@ -5521,13 +12893,42 @@
'@zip.js/zip.js@2.7.34': {}
+ abab@2.0.6: {}
+
abort-controller@3.0.0:
dependencies:
event-target-shim: 5.0.1
+ accepts@1.3.8:
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+
+ accepts@2.0.0:
+ dependencies:
+ mime-types: 3.0.2
+ negotiator: 1.0.0
+
+ acorn-globals@6.0.0:
+ dependencies:
+ acorn: 7.4.1
+ acorn-walk: 7.2.0
+
+ acorn-jsx@5.3.2(acorn@8.15.0):
+ dependencies:
+ acorn: 8.15.0
+
+ acorn-walk@7.2.0: {}
+
+ acorn@7.4.1: {}
+
acorn@8.15.0: {}
+ address@1.2.2: {}
+
adler-32@1.3.1: {}
+
+ adm-zip@0.5.16: {}
aes-decrypter@4.0.2:
dependencies:
@@ -5536,11 +12937,48 @@
global: 4.4.0
pkcs7: 1.0.4
+ agent-base@6.0.2:
+ dependencies:
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ aggregate-error@3.1.0:
+ dependencies:
+ clean-stack: 2.2.0
+ indent-string: 4.0.0
+
+ ajv-formats@3.0.1(ajv@8.17.1):
+ optionalDependencies:
+ ajv: 8.17.1
+
+ ajv@6.12.6:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+
+ ajv@8.17.1:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-uri: 3.1.0
+ json-schema-traverse: 1.0.0
+ require-from-string: 2.0.2
+
animate.css@4.1.1: {}
ansi-align@3.0.1:
dependencies:
string-width: 4.2.3
+
+ ansi-escapes@4.3.2:
+ dependencies:
+ type-fest: 0.21.3
+
+ ansi-escapes@7.2.0:
+ dependencies:
+ environment: 1.1.0
ansi-regex@2.1.1: {}
@@ -5554,7 +12992,28 @@
dependencies:
color-convert: 2.0.1
+ ansi-styles@5.2.0: {}
+
ansi-styles@6.2.3: {}
+
+ ansis@3.17.0: {}
+
+ ansis@4.2.0: {}
+
+ any-base@1.1.0: {}
+
+ anymatch@3.1.3:
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
+
+ are-docs-informative@0.0.2: {}
+
+ argparse@1.0.10:
+ dependencies:
+ sprintf-js: 1.0.3
+
+ argparse@2.0.1: {}
arr-diff@4.0.0: {}
@@ -5566,6 +13025,10 @@
dependencies:
call-bound: 1.0.4
is-array-buffer: 3.0.5
+
+ array-flatten@1.1.1: {}
+
+ array-union@2.1.0: {}
array-unique@0.3.2: {}
@@ -5581,6 +13044,8 @@
assign-symbols@1.0.0: {}
+ astral-regex@2.0.0: {}
+
async-function@1.0.0: {}
async-validator@4.2.5: {}
@@ -5595,16 +13060,25 @@
dependencies:
tslib: 2.8.1
+ autoprefixer@10.4.23(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.28.1
+ caniuse-lite: 1.0.30001762
+ fraction.js: 5.3.4
+ picocolors: 1.1.1
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+
available-typed-arrays@1.0.7:
dependencies:
possible-typed-array-names: 1.1.0
- avue-plugin-ueditor@1.0.4(axios@1.13.2)(vue@3.5.26):
+ avue-plugin-ueditor@1.0.4(axios@1.13.2)(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@wangeditor/editor': 5.1.23
- '@wangeditor/editor-for-vue': 5.1.12(@wangeditor/editor@5.1.23)(vue@3.5.26)
+ '@wangeditor/editor-for-vue': 5.1.12(@wangeditor/editor@5.1.23)(vue@3.5.26(typescript@5.9.3))
axios: 1.13.2
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
axios@1.13.2:
dependencies:
@@ -5616,7 +13090,89 @@
b4a@1.7.3: {}
+ babel-jest@27.5.1(@babel/core@7.28.5):
+ dependencies:
+ '@babel/core': 7.28.5
+ '@jest/transform': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/babel__core': 7.20.5
+ babel-plugin-istanbul: 6.1.1
+ babel-preset-jest: 27.5.1(@babel/core@7.28.5)
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ slash: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-istanbul@6.1.1:
+ dependencies:
+ '@babel/helper-plugin-utils': 7.27.1
+ '@istanbuljs/load-nyc-config': 1.1.0
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-instrument: 5.2.1
+ test-exclude: 6.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-jest-hoist@27.5.1:
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.5
+ '@types/babel__core': 7.20.5
+ '@types/babel__traverse': 7.28.0
+
+ babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.5):
+ dependencies:
+ '@babel/compat-data': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5)
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.5):
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5)
+ core-js-compat: 3.47.0
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-polyfill-regenerator@0.6.5(@babel/core@7.28.5):
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-preset-current-node-syntax@1.2.0(@babel/core@7.28.5):
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.28.5)
+ '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.28.5)
+ '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.5)
+ '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.28.5)
+ '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.28.5)
+ '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.28.5)
+ '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.28.5)
+
+ babel-preset-jest@27.5.1(@babel/core@7.28.5):
+ dependencies:
+ '@babel/core': 7.28.5
+ babel-plugin-jest-hoist: 27.5.1
+ babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.5)
+
balanced-match@1.0.2: {}
+
+ balanced-match@2.0.0: {}
bare-events@2.8.2: {}
@@ -5657,6 +13213,8 @@
base64-js@1.5.1: {}
+ base64url@3.0.1: {}
+
base@0.11.2:
dependencies:
cache-base: 1.0.1
@@ -5667,7 +13225,13 @@
mixin-deep: 1.3.2
pascalcase: 0.1.1
+ baseline-browser-mapping@2.9.11: {}
+
big.js@5.2.2: {}
+
+ binary-extensions@2.3.0: {}
+
+ birpc@2.9.0: {}
bitmap-sdf@1.0.4: {}
@@ -5691,6 +13255,39 @@
readable-stream: 4.7.0
bluebird@3.7.2: {}
+
+ bmp-js@0.1.0: {}
+
+ body-parser@1.20.4:
+ 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.1
+ iconv-lite: 0.4.24
+ on-finished: 2.4.1
+ qs: 6.14.1
+ raw-body: 2.5.3
+ type-is: 1.6.18
+ unpipe: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ body-parser@2.2.1:
+ dependencies:
+ bytes: 3.1.2
+ content-type: 1.0.5
+ debug: 4.4.3
+ http-errors: 2.0.1
+ iconv-lite: 0.7.1
+ on-finished: 2.4.1
+ qs: 6.14.1
+ raw-body: 3.0.2
+ type-is: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
boolbase@1.0.0: {}
@@ -5723,6 +13320,11 @@
moddle: 6.2.3
moddle-xml: 10.1.0
+ brace-expansion@1.1.12:
+ dependencies:
+ balanced-match: 1.0.2
+ concat-map: 0.0.1
+
brace-expansion@2.0.2:
dependencies:
balanced-match: 1.0.2
@@ -5753,6 +13355,27 @@
tslib: 2.8.1
worker-factory: 7.0.46
+ browser-process-hrtime@1.0.0: {}
+
+ browserslist-to-esbuild@2.1.1(browserslist@4.28.1):
+ dependencies:
+ browserslist: 4.28.1
+ meow: 13.2.0
+
+ browserslist@4.28.1:
+ dependencies:
+ baseline-browser-mapping: 2.9.11
+ caniuse-lite: 1.0.30001762
+ electron-to-chromium: 1.5.267
+ node-releases: 2.0.27
+ update-browserslist-db: 1.2.3(browserslist@4.28.1)
+
+ bser@2.1.1:
+ dependencies:
+ node-int64: 0.4.0
+
+ buffer-equal@0.0.1: {}
+
buffer-from@1.1.2: {}
buffer@5.7.1:
@@ -5765,6 +13388,29 @@
base64-js: 1.5.1
ieee754: 1.2.1
+ builtin-modules@5.0.0: {}
+
+ bytes@3.1.2: {}
+
+ c12@3.3.3:
+ dependencies:
+ chokidar: 5.0.0
+ confbox: 0.2.2
+ defu: 6.1.4
+ dotenv: 17.2.3
+ exsolve: 1.0.8
+ giget: 2.0.0
+ jiti: 2.6.1
+ ohash: 2.0.11
+ pathe: 2.0.3
+ perfect-debounce: 2.0.0
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+
+ cac@6.7.14: {}
+
+ cac@6.7.9: {}
+
cache-base@1.0.1:
dependencies:
collection-visit: 1.0.0
@@ -5776,6 +13422,14 @@
to-object-path: 0.3.0
union-value: 1.0.1
unset-value: 1.0.0
+
+ cacheable@2.3.1:
+ dependencies:
+ '@cacheable/memory': 2.0.7
+ '@cacheable/utils': 2.3.3
+ hookified: 1.15.0
+ keyv: 5.5.5
+ qified: 0.5.3
call-bind-apply-helpers@1.0.2:
dependencies:
@@ -5794,7 +13448,23 @@
call-bind-apply-helpers: 1.0.2
get-intrinsic: 1.3.0
+ callsites@3.1.0: {}
+
+ camelcase@5.3.1: {}
+
+ camelcase@6.3.0: {}
+
camelcase@7.0.1: {}
+
+ caniuse-lite@1.0.30001762: {}
+
+ ccount@2.0.1: {}
+
+ centra@2.7.0:
+ dependencies:
+ follow-redirects: 1.15.11
+ transitivePeerDependencies:
+ - debug
cesium@1.126.0:
dependencies:
@@ -5821,11 +13491,43 @@
chalk@5.6.2: {}
+ change-case@5.4.4: {}
+
+ char-regex@1.0.2: {}
+
+ character-entities@2.0.2: {}
+
+ chokidar@3.6.0:
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.3
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
chokidar@4.0.3:
dependencies:
readdirp: 4.1.2
+ chokidar@5.0.0:
+ dependencies:
+ readdirp: 5.0.0
+
chownr@1.1.4: {}
+
+ ci-info@3.9.0: {}
+
+ ci-info@4.3.1: {}
+
+ citty@0.1.6:
+ dependencies:
+ consola: 3.4.2
+
+ cjs-module-lexer@1.4.3: {}
class-utils@0.3.6:
dependencies:
@@ -5834,13 +13536,28 @@
isobject: 3.0.1
static-extend: 0.1.2
+ clean-regexp@1.0.0:
+ dependencies:
+ escape-string-regexp: 1.0.5
+
+ clean-stack@2.2.0: {}
+
cli-boxes@3.0.0: {}
cli-cursor@4.0.0:
dependencies:
restore-cursor: 4.0.0
+ cli-cursor@5.0.0:
+ dependencies:
+ restore-cursor: 5.1.0
+
cli-spinners@2.9.2: {}
+
+ cli-truncate@5.1.1:
+ dependencies:
+ slice-ansi: 7.1.2
+ string-width: 8.1.0
clipboard@2.0.11:
dependencies:
@@ -5848,13 +13565,29 @@
select: 1.1.2
tiny-emitter: 2.1.0
+ cliui@7.0.4:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+
+ cliui@8.0.1:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+
clone@2.1.2: {}
clsx@1.2.1: {}
+ co@4.6.0: {}
+
codemirror@5.65.20: {}
codepage@1.15.0: {}
+
+ collect-v8-coverage@1.0.3: {}
collection-visit@1.0.0:
dependencies:
@@ -5877,15 +13610,25 @@
color-convert: 2.0.1
color-string: 1.9.1
+ colord@2.9.3: {}
+
+ colorette@2.0.20: {}
+
combined-stream@1.0.8:
dependencies:
delayed-stream: 1.0.0
+
+ commander@14.0.2: {}
commander@2.20.3: {}
commander@7.2.0: {}
+ comment-parser@1.4.1: {}
+
commist@3.2.0: {}
+
+ compare-versions@3.6.0: {}
complex.js@2.4.3: {}
@@ -5896,6 +13639,8 @@
compute-scroll-into-view@1.0.20: {}
compute-scroll-into-view@3.1.1: {}
+
+ concat-map@0.0.1: {}
concat-stream@2.0.0:
dependencies:
@@ -5913,7 +13658,39 @@
confbox@0.1.8: {}
+ confbox@0.2.2: {}
+
+ consola@3.4.2: {}
+
+ content-disposition@0.5.4:
+ dependencies:
+ safe-buffer: 5.2.1
+
+ content-disposition@1.0.1: {}
+
+ content-type@1.0.5: {}
+
+ convert-source-map@1.9.0: {}
+
+ convert-source-map@2.0.0: {}
+
+ cookie-signature@1.0.7: {}
+
+ cookie-signature@1.2.2: {}
+
+ cookie@0.7.2: {}
+
+ copy-anything@4.0.5:
+ dependencies:
+ is-what: 5.5.0
+
copy-descriptor@0.1.1: {}
+
+ core-js-compat@3.47.0:
+ dependencies:
+ browserslist: 4.28.1
+
+ core-js@3.47.0: {}
core-util-is@1.0.3: {}
@@ -5922,11 +13699,24 @@
object-assign: 4.1.1
vary: 1.1.2
+ cosmiconfig@9.0.0(typescript@5.9.3):
+ dependencies:
+ env-paths: 2.2.1
+ import-fresh: 3.3.1
+ js-yaml: 4.1.1
+ parse-json: 5.2.0
+ optionalDependencies:
+ typescript: 5.9.3
+
countup.js@1.9.3: {}
countup.js@2.9.0: {}
crc-32@1.2.2: {}
+
+ cross-env@7.0.3:
+ dependencies:
+ cross-spawn: 7.0.6
cross-spawn@7.0.6:
dependencies:
@@ -5936,6 +13726,18 @@
crypto-js@4.2.0: {}
+ 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-functions-list@3.2.3: {}
+
+ css-list-helpers@2.0.0: {}
+
css-select@4.3.0:
dependencies:
boolbase: 1.0.0
@@ -5944,18 +13746,37 @@
domutils: 2.8.0
nth-check: 2.1.1
+ css-system-font-keywords@1.0.0: {}
+
css-tree@1.1.3:
dependencies:
mdn-data: 2.0.14
source-map: 0.6.1
+ css-tree@3.1.0:
+ dependencies:
+ mdn-data: 2.12.2
+ source-map-js: 1.2.1
+
css-what@6.2.2: {}
+
+ cssesc@3.0.0: {}
csso@4.2.0:
dependencies:
css-tree: 1.1.3
+ cssom@0.3.8: {}
+
+ cssom@0.4.4: {}
+
+ cssstyle@2.3.0:
+ dependencies:
+ cssom: 0.3.8
+
csstype@3.2.3: {}
+
+ czg@1.12.0: {}
d3-array@1.2.4: {}
@@ -5969,6 +13790,12 @@
dependencies:
es5-ext: 0.10.64
type: 2.7.3
+
+ data-urls@2.0.0:
+ dependencies:
+ abab: 2.0.6
+ whatwg-mimetype: 2.3.0
+ whatwg-url: 8.7.0
data-view-buffer@1.0.2:
dependencies:
@@ -6000,11 +13827,17 @@
decimal.js@10.6.0: {}
+ decode-named-character-reference@1.2.0:
+ dependencies:
+ character-entities: 2.0.2
+
decode-uri-component@0.2.2: {}
decompress-response@6.0.0:
dependencies:
mimic-response: 3.1.0
+
+ dedent@0.7.0: {}
deep-equal@1.1.2:
dependencies:
@@ -6017,11 +13850,23 @@
deep-extend@0.6.0: {}
+ deep-is@0.1.4: {}
+
+ deep-pick-omit@1.2.1: {}
+
+ deepmerge@4.3.1: {}
+
+ default-gateway@6.0.3:
+ dependencies:
+ execa: 5.1.1
+
define-data-property@1.1.4:
dependencies:
es-define-property: 1.0.1
es-errors: 1.3.0
gopd: 1.2.0
+
+ define-lazy-prop@2.0.0: {}
define-properties@1.2.1:
dependencies:
@@ -6042,6 +13887,19 @@
is-descriptor: 1.0.3
isobject: 3.0.1
+ defu@6.1.4: {}
+
+ del@6.1.1:
+ dependencies:
+ globby: 11.1.0
+ graceful-fs: 4.2.11
+ is-glob: 4.0.3
+ is-path-cwd: 2.2.0
+ is-path-inside: 3.0.3
+ p-map: 4.0.0
+ rimraf: 3.0.2
+ slash: 3.0.0
+
delayed-stream@1.0.0: {}
delegate@3.2.0: {}
@@ -6050,12 +13908,21 @@
depd@2.0.0: {}
+ dequal@2.0.3: {}
+
+ destr@2.0.5: {}
+
destroy@1.2.0: {}
- detect-libc@1.0.3:
- optional: true
+ detect-libc@1.0.3: {}
detect-libc@2.1.2: {}
+
+ detect-newline@3.1.0: {}
+
+ devlop@1.1.0:
+ dependencies:
+ dequal: 2.0.3
diagram-js-direct-editing@2.1.2(diagram-js@11.13.1):
dependencies:
@@ -6078,6 +13945,12 @@
didi@9.0.2: {}
+ diff-sequences@27.5.1: {}
+
+ dir-glob@3.0.1:
+ dependencies:
+ path-type: 4.0.0
+
disable-devtool@0.3.9: {}
dom-serializer@0.2.2:
@@ -6090,6 +13963,12 @@
domelementtype: 2.3.0
domhandler: 4.3.1
entities: 2.2.0
+
+ dom-serializer@2.0.0:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ entities: 4.5.0
dom-walk@0.1.2: {}
@@ -6105,11 +13984,19 @@
domelementtype@2.3.0: {}
+ domexception@2.0.1:
+ dependencies:
+ webidl-conversions: 5.0.0
+
domhandler@2.4.2:
dependencies:
domelementtype: 1.3.1
domhandler@4.3.1:
+ dependencies:
+ domelementtype: 2.3.0
+
+ domhandler@5.0.3:
dependencies:
domelementtype: 2.3.0
@@ -6130,6 +14017,14 @@
domelementtype: 2.3.0
domhandler: 4.3.1
+ domutils@3.2.2:
+ dependencies:
+ dom-serializer: 2.0.0
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+
+ dotenv@17.2.3: {}
+
draco3d@1.5.7: {}
dunder-proto@1.0.1:
@@ -6137,6 +14032,8 @@
call-bind-apply-helpers: 1.0.2
es-errors: 1.3.0
gopd: 1.2.0
+
+ duplexer@0.1.2: {}
earcut@2.2.4: {}
@@ -6151,15 +14048,17 @@
ee-first@1.1.1: {}
- element-plus@2.9.11(vue@3.5.26):
+ electron-to-chromium@1.5.267: {}
+
+ element-plus@2.9.11(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@ctrl/tinycolor': 3.6.1
- '@element-plus/icons-vue': 2.3.2(vue@3.5.26)
+ '@element-plus/icons-vue': 2.3.2(vue@3.5.26(typescript@5.9.3))
'@floating-ui/dom': 1.7.4
'@popperjs/core': '@sxzz/popperjs-es@2.11.7'
'@types/lodash': 4.17.21
'@types/lodash-es': 4.17.12
- '@vueuse/core': 9.13.0(vue@3.5.26)
+ '@vueuse/core': 9.13.0(vue@3.5.26(typescript@5.9.3))
async-validator: 4.2.5
dayjs: 1.11.19
escape-html: 1.0.3
@@ -6168,9 +14067,11 @@
lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.22)(lodash@4.17.21)
memoize-one: 6.0.0
normalize-wheel-es: 1.2.0
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
transitivePeerDependencies:
- '@vue/composition-api'
+
+ emittery@0.8.1: {}
emoji-regex@10.6.0: {}
@@ -6180,17 +14081,36 @@
emojis-list@3.0.0: {}
+ empathic@2.0.0: {}
+
encodeurl@2.0.0: {}
end-of-stream@1.4.5:
dependencies:
once: 1.4.0
+ enhanced-resolve@5.18.4:
+ dependencies:
+ graceful-fs: 4.2.11
+ tapable: 2.3.0
+
entities@1.1.2: {}
entities@2.2.0: {}
+ entities@4.5.0: {}
+
entities@7.0.0: {}
+
+ env-paths@2.2.1: {}
+
+ environment@1.1.0: {}
+
+ error-ex@1.3.4:
+ dependencies:
+ is-arrayish: 0.2.1
+
+ errx@0.1.0: {}
es-abstract@1.24.1:
dependencies:
@@ -6253,6 +14173,8 @@
es-errors@1.3.0: {}
+ es-module-lexer@1.7.0: {}
+
es-object-atoms@1.1.1:
dependencies:
es-errors: 1.3.0
@@ -6314,13 +14236,277 @@
'@esbuild/win32-ia32': 0.20.2
'@esbuild/win32-x64': 0.20.2
+ escalade@3.2.0: {}
+
escape-html@1.0.3: {}
escape-latex@1.2.0: {}
escape-string-regexp@1.0.5: {}
+ escape-string-regexp@2.0.0: {}
+
+ escape-string-regexp@4.0.0: {}
+
escape-string-regexp@5.0.0: {}
+
+ escodegen@2.1.0:
+ dependencies:
+ esprima: 4.0.1
+ estraverse: 5.3.0
+ esutils: 2.0.3
+ optionalDependencies:
+ source-map: 0.6.1
+
+ eslint-compat-utils@0.5.1(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ semver: 7.7.3
+
+ eslint-compat-utils@0.6.5(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ semver: 7.7.3
+
+ eslint-config-flat-gitignore@2.1.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@eslint/compat': 1.4.1(eslint@9.39.2(jiti@2.6.1))
+ eslint: 9.39.2(jiti@2.6.1)
+
+ eslint-flat-config-utils@2.1.4:
+ dependencies:
+ pathe: 2.0.3
+
+ eslint-json-compat-utils@0.2.1(eslint@9.39.2(jiti@2.6.1))(jsonc-eslint-parser@2.4.2):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ esquery: 1.7.0
+ jsonc-eslint-parser: 2.4.2
+
+ eslint-merge-processors@2.0.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+
+ eslint-plugin-antfu@3.1.1(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+
+ eslint-plugin-command@3.4.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@es-joy/jsdoccomment': 0.78.0
+ eslint: 9.39.2(jiti@2.6.1)
+
+ eslint-plugin-es-x@7.8.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@eslint-community/regexpp': 4.12.2
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-compat-utils: 0.5.1(eslint@9.39.2(jiti@2.6.1))
+
+ eslint-plugin-import-lite@0.3.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ eslint-plugin-jsdoc@51.4.1(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@es-joy/jsdoccomment': 0.52.0
+ are-docs-informative: 0.0.2
+ comment-parser: 1.4.1
+ debug: 4.4.3
+ escape-string-regexp: 4.0.0
+ eslint: 9.39.2(jiti@2.6.1)
+ espree: 10.4.0
+ esquery: 1.7.0
+ parse-imports-exports: 0.2.4
+ semver: 7.7.3
+ spdx-expression-parse: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-jsonc@2.21.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ diff-sequences: 27.5.1
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-compat-utils: 0.6.5(eslint@9.39.2(jiti@2.6.1))
+ eslint-json-compat-utils: 0.2.1(eslint@9.39.2(jiti@2.6.1))(jsonc-eslint-parser@2.4.2)
+ espree: 10.4.0
+ graphemer: 1.4.0
+ jsonc-eslint-parser: 2.4.2
+ natural-compare: 1.4.0
+ synckit: 0.11.11
+ transitivePeerDependencies:
+ - '@eslint/json'
+
+ eslint-plugin-n@17.23.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ enhanced-resolve: 5.18.4
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-plugin-es-x: 7.8.0(eslint@9.39.2(jiti@2.6.1))
+ get-tsconfig: 4.13.0
+ globals: 15.15.0
+ globrex: 0.1.2
+ ignore: 5.3.2
+ semver: 7.7.3
+ ts-declaration-location: 1.0.7(typescript@5.9.3)
+ transitivePeerDependencies:
+ - typescript
+
+ eslint-plugin-no-only-tests@3.3.0: {}
+
+ eslint-plugin-perfectionist@4.15.1(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/types': 8.52.0
+ '@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 9.39.2(jiti@2.6.1)
+ natural-orderby: 5.0.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ eslint-plugin-pnpm@1.4.3(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ empathic: 2.0.0
+ eslint: 9.39.2(jiti@2.6.1)
+ jsonc-eslint-parser: 2.4.2
+ pathe: 2.0.3
+ pnpm-workspace-yaml: 1.4.3
+ tinyglobby: 0.2.15
+ yaml: 2.8.2
+ yaml-eslint-parser: 1.3.2
+
+ eslint-plugin-regexp@2.10.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@eslint-community/regexpp': 4.12.2
+ comment-parser: 1.4.1
+ eslint: 9.39.2(jiti@2.6.1)
+ jsdoc-type-pratt-parser: 4.8.0
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
+ scslre: 0.3.0
+
+ eslint-plugin-toml@0.12.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ debug: 4.4.3
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-compat-utils: 0.6.5(eslint@9.39.2(jiti@2.6.1))
+ lodash: 4.17.21
+ toml-eslint-parser: 0.10.1
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-unicorn@60.0.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@eslint/plugin-kit': 0.3.5
+ change-case: 5.4.4
+ ci-info: 4.3.1
+ clean-regexp: 1.0.0
+ core-js-compat: 3.47.0
+ eslint: 9.39.2(jiti@2.6.1)
+ esquery: 1.7.0
+ find-up-simple: 1.0.1
+ globals: 16.5.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.12.0
+ semver: 7.7.3
+ strip-indent: 4.1.1
+
+ eslint-plugin-unused-imports@4.3.0(@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ eslint: 9.39.2(jiti@2.6.1)
+ optionalDependencies:
+ '@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+
+ eslint-plugin-vue@10.6.2(@stylistic/eslint-plugin@5.6.1(eslint@9.39.2(jiti@2.6.1)))(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.39.2(jiti@2.6.1))):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ eslint: 9.39.2(jiti@2.6.1)
+ natural-compare: 1.4.0
+ nth-check: 2.1.1
+ postcss-selector-parser: 7.1.1
+ semver: 7.7.3
+ vue-eslint-parser: 10.2.0(eslint@9.39.2(jiti@2.6.1))
+ xml-name-validator: 4.0.0
+ optionalDependencies:
+ '@stylistic/eslint-plugin': 5.6.1(eslint@9.39.2(jiti@2.6.1))
+ '@typescript-eslint/parser': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
+
+ eslint-plugin-yml@1.19.1(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ debug: 4.4.3
+ diff-sequences: 27.5.1
+ escape-string-regexp: 4.0.0
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-compat-utils: 0.6.5(eslint@9.39.2(jiti@2.6.1))
+ natural-compare: 1.4.0
+ yaml-eslint-parser: 1.3.2
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.26)(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ '@vue/compiler-sfc': 3.5.26
+ eslint: 9.39.2(jiti@2.6.1)
+
+ eslint-scope@8.4.0:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+
+ eslint-visitor-keys@3.4.3: {}
+
+ eslint-visitor-keys@4.2.1: {}
+
+ eslint@9.39.2(jiti@2.6.1):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
+ '@eslint-community/regexpp': 4.12.2
+ '@eslint/config-array': 0.21.1
+ '@eslint/config-helpers': 0.4.2
+ '@eslint/core': 0.17.0
+ '@eslint/eslintrc': 3.3.3
+ '@eslint/js': 9.39.2
+ '@eslint/plugin-kit': 0.4.1
+ '@humanfs/node': 0.16.7
+ '@humanwhocodes/module-importer': 1.0.1
+ '@humanwhocodes/retry': 0.4.3
+ '@types/estree': 1.0.8
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.6
+ debug: 4.4.3
+ escape-string-regexp: 4.0.0
+ eslint-scope: 8.4.0
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ esquery: 1.7.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 8.0.0
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ ignore: 5.3.2
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ json-stable-stringify-without-jsonify: 1.0.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.4
+ optionalDependencies:
+ jiti: 2.6.1
+ transitivePeerDependencies:
+ - supports-color
esniff@2.0.1:
dependencies:
@@ -6329,7 +14515,37 @@
event-emitter: 0.3.5
type: 2.7.3
+ espree@10.4.0:
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ eslint-visitor-keys: 4.2.1
+
+ espree@9.6.1:
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ eslint-visitor-keys: 3.4.3
+
+ esprima@4.0.1: {}
+
+ esquery@1.7.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ esrecurse@4.3.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ estraverse@5.3.0: {}
+
estree-walker@2.0.2: {}
+
+ estree-walker@3.0.3:
+ dependencies:
+ '@types/estree': 1.0.8
+
+ esutils@2.0.3: {}
etag@1.8.1: {}
@@ -6350,6 +14566,28 @@
events@3.3.0: {}
+ eventsource-parser@3.0.6: {}
+
+ eventsource@3.0.7:
+ dependencies:
+ eventsource-parser: 3.0.6
+
+ execa@5.1.1:
+ dependencies:
+ cross-spawn: 7.0.6
+ get-stream: 6.0.1
+ human-signals: 2.1.0
+ is-stream: 2.0.1
+ merge-stream: 2.0.0
+ npm-run-path: 4.0.1
+ onetime: 5.1.2
+ signal-exit: 3.0.7
+ strip-final-newline: 2.0.0
+
+ exif-parser@0.1.12: {}
+
+ exit@0.1.2: {}
+
expand-brackets@2.1.4:
dependencies:
debug: 2.6.9
@@ -6363,6 +14601,88 @@
- supports-color
expand-template@2.0.3: {}
+
+ expect@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ jest-get-type: 27.5.1
+ jest-matcher-utils: 27.5.1
+ jest-message-util: 27.5.1
+
+ express-rate-limit@7.5.1(express@5.2.1):
+ dependencies:
+ express: 5.2.1
+
+ express@4.22.1:
+ dependencies:
+ accepts: 1.3.8
+ array-flatten: 1.1.1
+ body-parser: 1.20.4
+ content-disposition: 0.5.4
+ content-type: 1.0.5
+ cookie: 0.7.2
+ cookie-signature: 1.0.7
+ debug: 2.6.9
+ depd: 2.0.0
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ finalhandler: 1.3.2
+ fresh: 0.5.2
+ http-errors: 2.0.1
+ merge-descriptors: 1.0.3
+ methods: 1.1.2
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ path-to-regexp: 0.1.12
+ proxy-addr: 2.0.7
+ qs: 6.14.1
+ range-parser: 1.2.1
+ safe-buffer: 5.2.1
+ send: 0.19.2
+ serve-static: 1.16.3
+ setprototypeof: 1.2.0
+ statuses: 2.0.2
+ type-is: 1.6.18
+ utils-merge: 1.0.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ express@5.2.1:
+ dependencies:
+ accepts: 2.0.0
+ body-parser: 2.2.1
+ content-disposition: 1.0.1
+ content-type: 1.0.5
+ cookie: 0.7.2
+ cookie-signature: 1.2.2
+ debug: 4.4.3
+ depd: 2.0.0
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ finalhandler: 2.1.1
+ fresh: 2.0.0
+ http-errors: 2.0.1
+ merge-descriptors: 2.0.0
+ mime-types: 3.0.2
+ on-finished: 2.4.1
+ once: 1.4.0
+ parseurl: 1.3.3
+ proxy-addr: 2.0.7
+ qs: 6.14.1
+ range-parser: 1.2.1
+ router: 2.2.0
+ send: 1.2.1
+ serve-static: 2.2.1
+ statuses: 2.0.2
+ type-is: 2.0.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ exsolve@1.0.8: {}
ext@1.7.0:
dependencies:
@@ -6390,6 +14710,8 @@
transitivePeerDependencies:
- supports-color
+ fast-deep-equal@3.1.3: {}
+
fast-fifo@1.3.2: {}
fast-glob@3.3.3:
@@ -6400,14 +14722,44 @@
merge2: 1.4.1
micromatch: 4.0.8
+ fast-json-stable-stringify@2.1.0: {}
+
+ fast-levenshtein@2.0.6: {}
+
fast-unique-numbers@9.0.24:
dependencies:
'@babel/runtime': 7.28.4
tslib: 2.8.1
+ fast-uri@3.1.0: {}
+
+ fastest-levenshtein@1.0.16: {}
+
fastq@1.20.1:
dependencies:
reusify: 1.1.0
+
+ fault@2.0.1:
+ dependencies:
+ format: 0.2.2
+
+ fb-watchman@2.0.2:
+ dependencies:
+ bser: 2.1.1
+
+ fdir@6.5.0(picomatch@4.0.3):
+ optionalDependencies:
+ picomatch: 4.0.3
+
+ file-entry-cache@11.1.1:
+ dependencies:
+ flat-cache: 6.1.19
+
+ file-entry-cache@8.0.0:
+ dependencies:
+ flat-cache: 4.0.1
+
+ file-type@9.0.0: {}
filesize@10.1.6: {}
@@ -6422,6 +14774,54 @@
dependencies:
to-regex-range: 5.0.1
+ finalhandler@1.3.2:
+ dependencies:
+ debug: 2.6.9
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ statuses: 2.0.2
+ unpipe: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ finalhandler@2.1.1:
+ dependencies:
+ debug: 4.4.3
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ statuses: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+
+ find-up-simple@1.0.1: {}
+
+ find-up@4.1.0:
+ dependencies:
+ locate-path: 5.0.0
+ path-exists: 4.0.0
+
+ find-up@5.0.0:
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+
+ flat-cache@4.0.1:
+ dependencies:
+ flatted: 3.3.3
+ keyv: 4.5.4
+
+ flat-cache@6.1.19:
+ dependencies:
+ cacheable: 2.3.1
+ flatted: 3.3.3
+ hookified: 1.15.0
+
+ flatted@3.3.3: {}
+
follow-redirects@1.15.11: {}
for-each@0.3.5:
@@ -6435,6 +14835,14 @@
cross-spawn: 7.0.6
signal-exit: 4.1.0
+ form-data@3.0.4:
+ dependencies:
+ asynckit: 0.4.0
+ combined-stream: 1.0.8
+ es-set-tostringtag: 2.1.0
+ hasown: 2.0.2
+ mime-types: 2.1.35
+
form-data@4.0.5:
dependencies:
asynckit: 0.4.0
@@ -6443,15 +14851,23 @@
hasown: 2.0.2
mime-types: 2.1.35
+ format@0.2.2: {}
+
+ forwarded@0.2.0: {}
+
frac@1.1.2: {}
fraction.js@4.3.7: {}
+
+ fraction.js@5.3.4: {}
fragment-cache@0.2.1:
dependencies:
map-cache: 0.2.2
fresh@0.5.2: {}
+
+ fresh@2.0.0: {}
fs-constants@1.0.0: {}
@@ -6467,6 +14883,8 @@
graceful-fs: 4.2.11
jsonfile: 6.2.0
universalify: 2.0.1
+
+ fs.realpath@1.0.0: {}
fsevents@2.3.3:
optional: true
@@ -6486,6 +14904,12 @@
generator-function@2.0.1: {}
+ generic-names@4.0.0:
+ dependencies:
+ loader-utils: 3.3.1
+
+ gensync@1.0.0-beta.2: {}
+
geojson-equality@0.1.6:
dependencies:
deep-equal: 1.1.2
@@ -6497,6 +14921,10 @@
'@turf/meta': 6.5.0
'@types/geojson': 7946.0.8
rbush: 3.0.1
+
+ get-caller-file@2.0.5: {}
+
+ get-east-asian-width@1.4.0: {}
get-intrinsic@1.3.0:
dependencies:
@@ -6511,10 +14939,14 @@
hasown: 2.0.2
math-intrinsics: 1.1.0
+ get-package-type@0.1.0: {}
+
get-proto@1.0.1:
dependencies:
dunder-proto: 1.0.1
es-object-atoms: 1.1.1
+
+ get-stream@6.0.1: {}
get-symbol-description@1.1.0:
dependencies:
@@ -6522,11 +14954,30 @@
es-errors: 1.3.0
get-intrinsic: 1.3.0
+ get-tsconfig@4.13.0:
+ dependencies:
+ resolve-pkg-maps: 1.0.0
+
get-value@2.0.6: {}
+
+ giget@2.0.0:
+ dependencies:
+ citty: 0.1.6
+ consola: 3.4.2
+ defu: 6.1.4
+ node-fetch-native: 1.6.7
+ nypm: 0.6.2
+ pathe: 2.0.3
github-from-package@0.0.0: {}
+ github-slugger@2.0.0: {}
+
glob-parent@5.1.2:
+ dependencies:
+ is-glob: 4.0.3
+
+ glob-parent@6.0.2:
dependencies:
is-glob: 4.0.3
@@ -6539,15 +14990,59 @@
package-json-from-dist: 1.0.1
path-scurry: 1.11.1
+ glob@13.0.0:
+ dependencies:
+ minimatch: 10.1.1
+ minipass: 7.1.2
+ path-scurry: 2.0.1
+
+ glob@7.2.3:
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
+
+ global-modules@2.0.0:
+ dependencies:
+ global-prefix: 3.0.0
+
+ global-prefix@3.0.0:
+ dependencies:
+ ini: 1.3.8
+ kind-of: 6.0.3
+ which: 1.3.1
+
global@4.4.0:
dependencies:
min-document: 2.19.2
process: 0.11.10
+ globals@14.0.0: {}
+
+ globals@15.15.0: {}
+
+ globals@16.5.0: {}
+
globalthis@1.0.4:
dependencies:
define-properties: 1.2.1
gopd: 1.2.0
+
+ globby@11.1.0:
+ dependencies:
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.3
+ ignore: 5.3.2
+ merge2: 1.4.1
+ slash: 3.0.0
+
+ globjoin@0.1.4: {}
+
+ globrex@0.1.2: {}
good-listener@1.2.2:
dependencies:
@@ -6558,6 +15053,12 @@
graceful-fs@4.2.11: {}
grapheme-splitter@1.0.4: {}
+
+ graphemer@1.4.0: {}
+
+ gzip-size@6.0.0:
+ dependencies:
+ duplexer: 0.1.2
hammerjs@2.0.8: {}
@@ -6604,6 +15105,12 @@
is-number: 3.0.0
kind-of: 4.0.0
+ hash-sum@2.0.0: {}
+
+ hashery@1.4.0:
+ dependencies:
+ hookified: 1.15.0
+
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
@@ -6614,7 +15121,21 @@
highlight.js@11.11.1: {}
+ hono@4.11.3: {}
+
+ hookable@5.5.3: {}
+
+ hookified@1.15.0: {}
+
htm@3.1.1: {}
+
+ html-encoding-sniffer@2.0.1:
+ dependencies:
+ whatwg-encoding: 1.0.5
+
+ html-escaper@2.0.2: {}
+
+ html-tags@3.3.1: {}
html-void-elements@2.0.1: {}
@@ -6631,6 +15152,13 @@
inherits: 2.0.4
readable-stream: 3.6.2
+ htmlparser2@8.0.2:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ domutils: 3.2.2
+ entities: 4.5.0
+
http-errors@2.0.1:
dependencies:
depd: 2.0.0
@@ -6639,7 +15167,24 @@
statuses: 2.0.2
toidentifier: 1.0.1
+ http-proxy-agent@4.0.1:
+ dependencies:
+ '@tootallnate/once': 1.1.2
+ agent-base: 6.0.2
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ https-proxy-agent@5.0.1:
+ dependencies:
+ agent-base: 6.0.2
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
hull.js@1.0.6: {}
+
+ human-signals@2.1.0: {}
i18next@20.6.1:
dependencies:
@@ -6649,9 +15194,27 @@
dependencies:
'@babel/runtime': 7.28.4
+ iconv-lite@0.4.24:
+ dependencies:
+ safer-buffer: 2.1.2
+
+ iconv-lite@0.7.1:
+ dependencies:
+ safer-buffer: 2.1.2
+
+ icss-replace-symbols@1.1.0: {}
+
+ icss-utils@5.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
ids@1.0.5: {}
ieee754@1.2.1: {}
+
+ ignore@5.3.2: {}
+
+ ignore@7.0.5: {}
image-size@0.5.5: {}
@@ -6659,7 +15222,30 @@
immer@9.0.21: {}
+ immutable@4.3.7: {}
+
immutable@5.1.4: {}
+
+ import-fresh@3.3.1:
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+
+ import-local@3.2.0:
+ dependencies:
+ pkg-dir: 4.2.0
+ resolve-cwd: 3.0.0
+
+ imurmurhash@0.1.4: {}
+
+ indent-string@4.0.0: {}
+
+ indent-string@5.0.0: {}
+
+ inflight@1.0.6:
+ dependencies:
+ once: 1.4.0
+ wrappy: 1.0.2
inherits-browser@0.1.0: {}
@@ -6673,7 +15259,11 @@
hasown: 2.0.2
side-channel: 1.1.0
+ invert-kv@3.0.1: {}
+
ip-address@10.1.0: {}
+
+ ipaddr.js@1.9.1: {}
is-accessor-descriptor@1.0.1:
dependencies:
@@ -6690,6 +15280,8 @@
call-bound: 1.0.4
get-intrinsic: 1.3.0
+ is-arrayish@0.2.1: {}
+
is-arrayish@0.3.4: {}
is-async-function@2.1.1:
@@ -6704,6 +15296,10 @@
dependencies:
has-bigints: 1.1.0
+ is-binary-path@2.1.0:
+ dependencies:
+ binary-extensions: 2.3.0
+
is-boolean-object@1.2.2:
dependencies:
call-bound: 1.0.4
@@ -6711,7 +15307,15 @@
is-buffer@1.1.6: {}
+ is-builtin-module@5.0.0:
+ dependencies:
+ builtin-modules: 5.0.0
+
is-callable@1.2.7: {}
+
+ is-core-module@2.16.1:
+ dependencies:
+ hasown: 2.0.2
is-data-descriptor@1.0.1:
dependencies:
@@ -6738,6 +15342,8 @@
is-accessor-descriptor: 1.0.1
is-data-descriptor: 1.0.1
+ is-docker@2.2.1: {}
+
is-extendable@0.1.1: {}
is-extendable@1.0.1:
@@ -6752,7 +15358,13 @@
is-fullwidth-code-point@3.0.0: {}
+ is-fullwidth-code-point@5.1.0:
+ dependencies:
+ get-east-asian-width: 1.4.0
+
is-function@1.0.2: {}
+
+ is-generator-fn@2.1.0: {}
is-generator-function@1.1.2:
dependencies:
@@ -6785,6 +15397,10 @@
is-number@7.0.0: {}
+ is-path-cwd@2.2.0: {}
+
+ is-path-inside@3.0.3: {}
+
is-plain-obj@1.1.0: {}
is-plain-object@2.0.4:
@@ -6792,6 +15408,10 @@
isobject: 3.0.1
is-plain-object@5.0.0: {}
+
+ is-potential-custom-element-name@1.0.1: {}
+
+ is-promise@4.0.0: {}
is-regex@1.2.1:
dependencies:
@@ -6805,6 +15425,8 @@
is-shared-array-buffer@1.0.4:
dependencies:
call-bound: 1.0.4
+
+ is-stream@2.0.1: {}
is-string@1.1.1:
dependencies:
@@ -6821,6 +15443,8 @@
dependencies:
which-typed-array: 1.1.19
+ is-typedarray@1.0.0: {}
+
is-unicode-supported@1.3.0: {}
is-url@1.2.4: {}
@@ -6836,11 +15460,19 @@
call-bound: 1.0.4
get-intrinsic: 1.3.0
+ is-what@5.5.0: {}
+
is-windows@1.0.2: {}
+
+ is-wsl@2.2.0:
+ dependencies:
+ is-docker: 2.2.1
isarray@1.0.0: {}
isarray@2.0.5: {}
+
+ isbinaryfile@5.0.7: {}
isexe@2.0.0: {}
@@ -6850,6 +15482,37 @@
isobject@3.0.1: {}
+ istanbul-lib-coverage@3.2.2: {}
+
+ istanbul-lib-instrument@5.2.1:
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/parser': 7.28.5
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-coverage: 3.2.2
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ istanbul-lib-report@3.0.1:
+ dependencies:
+ istanbul-lib-coverage: 3.2.2
+ make-dir: 4.0.0
+ supports-color: 7.2.0
+
+ istanbul-lib-source-maps@4.0.1:
+ dependencies:
+ debug: 4.4.3
+ istanbul-lib-coverage: 3.2.2
+ source-map: 0.6.1
+ transitivePeerDependencies:
+ - supports-color
+
+ istanbul-reports@3.2.0:
+ dependencies:
+ html-escaper: 2.0.2
+ istanbul-lib-report: 3.0.1
+
jackspeak@3.4.3:
dependencies:
'@isaacs/cliui': 8.0.2
@@ -6857,6 +15520,380 @@
'@pkgjs/parseargs': 0.11.0
javascript-natural-sort@0.7.1: {}
+
+ jest-changed-files@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ execa: 5.1.1
+ throat: 6.0.2
+
+ jest-circus@27.5.1:
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ chalk: 4.1.2
+ co: 4.6.0
+ dedent: 0.7.0
+ expect: 27.5.1
+ is-generator-fn: 2.1.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.6
+ throat: 6.0.2
+ transitivePeerDependencies:
+ - supports-color
+
+ jest-cli@27.5.1:
+ dependencies:
+ '@jest/core': 27.5.1
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ exit: 0.1.2
+ graceful-fs: 4.2.11
+ import-local: 3.2.0
+ jest-config: 27.5.1
+ jest-util: 27.5.1
+ jest-validate: 27.5.1
+ prompts: 2.4.2
+ yargs: 16.2.0
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+
+ jest-config@27.5.1:
+ dependencies:
+ '@babel/core': 7.28.5
+ '@jest/test-sequencer': 27.5.1
+ '@jest/types': 27.5.1
+ babel-jest: 27.5.1(@babel/core@7.28.5)
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ deepmerge: 4.3.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ 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.8
+ parse-json: 5.2.0
+ pretty-format: 27.5.1
+ slash: 3.0.0
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+
+ jest-diff@27.5.1:
+ dependencies:
+ chalk: 4.1.2
+ diff-sequences: 27.5.1
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+
+ jest-docblock@27.5.1:
+ dependencies:
+ detect-newline: 3.1.0
+
+ jest-each@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ jest-get-type: 27.5.1
+ jest-util: 27.5.1
+ pretty-format: 27.5.1
+
+ jest-environment-jsdom@27.5.1:
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+ jsdom: 16.7.0
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+
+ jest-environment-node@27.5.1:
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+
+ jest-get-type@27.5.1: {}
+
+ jest-haste-map@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/graceful-fs': 4.1.9
+ '@types/node': 25.0.3
+ anymatch: 3.1.3
+ fb-watchman: 2.0.2
+ graceful-fs: 4.2.11
+ jest-regex-util: 27.5.1
+ jest-serializer: 27.5.1
+ jest-util: 27.5.1
+ jest-worker: 27.5.1
+ micromatch: 4.0.8
+ walker: 1.0.8
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ jest-jasmine2@27.5.1:
+ 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': 25.0.3
+ chalk: 4.1.2
+ co: 4.6.0
+ expect: 27.5.1
+ is-generator-fn: 2.1.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.2
+ transitivePeerDependencies:
+ - supports-color
+
+ jest-leak-detector@27.5.1:
+ dependencies:
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+
+ jest-matcher-utils@27.5.1:
+ dependencies:
+ chalk: 4.1.2
+ jest-diff: 27.5.1
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+
+ jest-message-util@27.5.1:
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@jest/types': 27.5.1
+ '@types/stack-utils': 2.0.3
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ micromatch: 4.0.8
+ pretty-format: 27.5.1
+ slash: 3.0.0
+ stack-utils: 2.0.6
+
+ jest-mock@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+
+ jest-pnp-resolver@1.2.3(jest-resolve@27.5.1):
+ optionalDependencies:
+ jest-resolve: 27.5.1
+
+ jest-regex-util@27.5.1: {}
+
+ jest-resolve-dependencies@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ jest-regex-util: 27.5.1
+ jest-snapshot: 27.5.1
+ transitivePeerDependencies:
+ - supports-color
+
+ jest-resolve@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-pnp-resolver: 1.2.3(jest-resolve@27.5.1)
+ jest-util: 27.5.1
+ jest-validate: 27.5.1
+ resolve: 1.22.11
+ resolve.exports: 1.1.1
+ slash: 3.0.0
+
+ jest-runner@27.5.1:
+ 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': 25.0.3
+ chalk: 4.1.2
+ emittery: 0.8.1
+ graceful-fs: 4.2.11
+ 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.21
+ throat: 6.0.2
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+
+ jest-runtime@27.5.1:
+ 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.1.2
+ cjs-module-lexer: 1.4.3
+ collect-v8-coverage: 1.0.3
+ execa: 5.1.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ 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
+ transitivePeerDependencies:
+ - supports-color
+
+ jest-serializer@27.5.1:
+ dependencies:
+ '@types/node': 25.0.3
+ graceful-fs: 4.2.11
+
+ jest-snapshot@27.5.1:
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/generator': 7.28.5
+ '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ '@jest/transform': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/babel__traverse': 7.28.0
+ '@types/prettier': 2.7.3
+ babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.5)
+ chalk: 4.1.2
+ expect: 27.5.1
+ graceful-fs: 4.2.11
+ 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.7.3
+ transitivePeerDependencies:
+ - supports-color
+
+ jest-util@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ graceful-fs: 4.2.11
+ picomatch: 2.3.1
+
+ jest-validate@27.5.1:
+ dependencies:
+ '@jest/types': 27.5.1
+ camelcase: 6.3.0
+ chalk: 4.1.2
+ jest-get-type: 27.5.1
+ leven: 3.1.0
+ pretty-format: 27.5.1
+
+ jest-watcher@27.5.1:
+ dependencies:
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 25.0.3
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ jest-util: 27.5.1
+ string-length: 4.0.2
+
+ jest-worker@27.5.1:
+ dependencies:
+ '@types/node': 25.0.3
+ merge-stream: 2.0.0
+ supports-color: 8.1.1
+
+ jest@27.0.4:
+ dependencies:
+ '@jest/core': 27.5.1
+ import-local: 3.2.0
+ jest-cli: 27.5.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+
+ jimp@0.10.3:
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugins': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/types': 0.10.3(@jimp/custom@0.10.3)
+ core-js: 3.47.0
+ regenerator-runtime: 0.13.11
+ transitivePeerDependencies:
+ - debug
+
+ jiti@2.6.1: {}
+
+ jose@6.1.3: {}
+
+ jpeg-js@0.3.7: {}
js-audio-recorder@1.0.7: {}
@@ -6870,13 +15907,93 @@
js-sdsl@4.3.0: {}
+ js-tokens@4.0.0: {}
+
+ js-tokens@9.0.1: {}
+
+ js-yaml@3.14.2:
+ dependencies:
+ argparse: 1.0.10
+ esprima: 4.0.1
+
+ js-yaml@4.1.1:
+ dependencies:
+ argparse: 2.0.1
+
jsbn@1.1.0: {}
+ jsdoc-type-pratt-parser@4.1.0: {}
+
+ jsdoc-type-pratt-parser@4.8.0: {}
+
+ jsdoc-type-pratt-parser@7.0.0: {}
+
+ jsdom@16.7.0:
+ dependencies:
+ abab: 2.0.6
+ acorn: 8.15.0
+ acorn-globals: 6.0.0
+ cssom: 0.4.4
+ cssstyle: 2.3.0
+ data-urls: 2.0.0
+ decimal.js: 10.6.0
+ domexception: 2.0.1
+ escodegen: 2.1.0
+ form-data: 3.0.4
+ html-encoding-sniffer: 2.0.1
+ http-proxy-agent: 4.0.1
+ https-proxy-agent: 5.0.1
+ is-potential-custom-element-name: 1.0.1
+ nwsapi: 2.2.23
+ parse5: 6.0.1
+ saxes: 5.0.1
+ symbol-tree: 3.2.4
+ tough-cookie: 4.1.4
+ 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.7.0
+ ws: 7.5.10
+ xml-name-validator: 3.0.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
jsep@1.4.0: {}
+
+ jsesc@3.0.2: {}
+
+ jsesc@3.1.0: {}
+
+ json-buffer@3.0.1: {}
+
+ json-parse-even-better-errors@2.3.1: {}
+
+ json-schema-traverse@0.4.1: {}
+
+ json-schema-traverse@1.0.0: {}
+
+ json-schema-typed@8.0.2: {}
+
+ json-stable-stringify-without-jsonify@1.0.1: {}
json5@1.0.2:
dependencies:
minimist: 1.2.8
+
+ json5@2.2.3: {}
+
+ jsonc-eslint-parser@2.4.2:
+ dependencies:
+ acorn: 8.15.0
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ semver: 7.7.3
+
+ jsonc-parser@3.3.1: {}
jsonfile@6.2.0:
dependencies:
@@ -6893,6 +16010,14 @@
kdbush@4.0.2: {}
+ keyv@4.5.4:
+ dependencies:
+ json-buffer: 3.0.1
+
+ keyv@5.5.5:
+ dependencies:
+ '@keyv/serialize': 1.1.1
+
kind-of@3.2.2:
dependencies:
is-buffer: 1.1.6
@@ -6905,7 +16030,21 @@
kind-of@6.0.3: {}
+ kleur@3.0.3: {}
+
+ klona@2.0.6: {}
+
+ knitwork@1.3.0: {}
+
+ known-css-properties@0.37.0: {}
+
+ kolorist@1.8.0: {}
+
ktx-parse@0.7.1: {}
+
+ lcid@3.1.1:
+ dependencies:
+ invert-kv: 3.0.1
leaflet-ant-path@1.3.0: {}
@@ -6913,9 +16052,56 @@
lerc@2.0.0: {}
+ leven@3.1.0: {}
+
+ levn@0.4.1:
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+
+ licia@1.48.0: {}
+
lie@3.3.0:
dependencies:
immediate: 3.0.6
+
+ lilconfig@2.1.0: {}
+
+ lines-and-columns@1.2.4: {}
+
+ lines-and-columns@2.0.4: {}
+
+ lint-staged@16.2.7:
+ dependencies:
+ commander: 14.0.2
+ listr2: 9.0.5
+ micromatch: 4.0.8
+ nano-spawn: 2.0.0
+ pidtree: 0.6.0
+ string-argv: 0.3.2
+ yaml: 2.8.2
+
+ listr2@9.0.5:
+ dependencies:
+ cli-truncate: 5.1.1
+ colorette: 2.0.20
+ eventemitter3: 5.0.1
+ log-update: 6.1.0
+ rfdc: 1.4.1
+ wrap-ansi: 9.0.2
+
+ load-bmfont@1.4.2:
+ dependencies:
+ buffer-equal: 0.0.1
+ mime: 1.6.0
+ parse-bmfont-ascii: 1.0.6
+ parse-bmfont-binary: 1.0.6
+ parse-bmfont-xml: 1.1.6
+ phin: 3.7.1
+ xhr: 2.6.0
+ xtend: 4.0.2
+ transitivePeerDependencies:
+ - debug
loader-utils@1.4.2:
dependencies:
@@ -6923,7 +16109,25 @@
emojis-list: 3.0.0
json5: 1.0.2
+ loader-utils@3.3.1: {}
+
local-pkg@0.4.3: {}
+
+ local-pkg@1.1.2:
+ dependencies:
+ mlly: 1.8.0
+ pkg-types: 2.3.0
+ quansync: 0.2.11
+
+ localstorage-polyfill@1.0.1: {}
+
+ locate-path@5.0.0:
+ dependencies:
+ p-locate: 4.1.0
+
+ locate-path@6.0.0:
+ dependencies:
+ p-locate: 5.0.0
lodash-es@4.17.22: {}
@@ -6943,9 +16147,13 @@
lodash.isequal@4.5.0: {}
+ lodash.merge@4.6.2: {}
+
lodash.throttle@4.1.1: {}
lodash.toarray@4.4.0: {}
+
+ lodash.truncate@4.4.2: {}
lodash@4.17.21: {}
@@ -6954,9 +16162,25 @@
chalk: 5.6.2
is-unicode-supported: 1.3.0
+ log-update@6.1.0:
+ dependencies:
+ ansi-escapes: 7.2.0
+ cli-cursor: 5.0.0
+ slice-ansi: 7.1.2
+ strip-ansi: 7.1.2
+ wrap-ansi: 9.0.2
+
long@5.3.2: {}
+ longest-streak@3.1.0: {}
+
lru-cache@10.4.3: {}
+
+ lru-cache@11.2.4: {}
+
+ lru-cache@5.1.1:
+ dependencies:
+ yallist: 3.1.1
m3u8-parser@7.2.0:
dependencies:
@@ -6980,11 +16204,21 @@
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
+ make-dir@4.0.0:
+ dependencies:
+ semver: 7.7.3
+
+ makeerror@1.0.12:
+ dependencies:
+ tmpl: 1.0.5
+
map-cache@0.2.2: {}
map-visit@1.0.0:
dependencies:
object-visit: 1.0.1
+
+ markdown-table@3.0.4: {}
math-intrinsics@1.1.0: {}
@@ -7000,19 +16234,350 @@
tiny-emitter: 2.1.0
typed-function: 2.1.0
+ mathml-tag-names@2.1.3: {}
+
+ mdast-util-find-and-replace@3.0.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ escape-string-regexp: 5.0.0
+ unist-util-is: 6.0.1
+ unist-util-visit-parents: 6.0.2
+
+ mdast-util-from-markdown@2.0.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.2
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-decode-string: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ unist-util-stringify-position: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-frontmatter@2.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ escape-string-regexp: 5.0.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-extension-frontmatter: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-autolink-literal@2.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-find-and-replace: 3.0.2
+ micromark-util-character: 2.1.1
+
+ mdast-util-gfm-footnote@2.1.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-util-normalize-identifier: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-strikethrough@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-table@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ markdown-table: 3.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-task-list-item@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm@3.1.0:
+ dependencies:
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-gfm-autolink-literal: 2.0.1
+ mdast-util-gfm-footnote: 2.1.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.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-phrasing@4.1.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ unist-util-is: 6.0.1
+
+ mdast-util-to-markdown@2.1.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 4.1.0
+ mdast-util-to-string: 4.0.0
+ micromark-util-classify-character: 2.0.1
+ micromark-util-decode-string: 2.0.1
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+
+ mdast-util-to-string@4.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+
mdn-data@2.0.14: {}
+ mdn-data@2.12.2: {}
+
+ media-typer@0.3.0: {}
+
+ media-typer@1.1.0: {}
+
memoize-one@6.0.0: {}
+
+ meow@13.2.0: {}
+
+ merge-descriptors@1.0.3: {}
+
+ merge-descriptors@2.0.0: {}
merge-options@1.0.1:
dependencies:
is-plain-obj: 1.1.0
+ merge-stream@2.0.0: {}
+
merge2@1.4.1: {}
+
+ merge@2.1.1: {}
mersenne-twister@1.1.0: {}
meshoptimizer@0.22.0: {}
+
+ methods@1.1.2: {}
+
+ micromark-core-commonmark@2.0.3:
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-factory-destination: 2.0.1
+ micromark-factory-label: 2.0.1
+ micromark-factory-space: 2.0.1
+ micromark-factory-title: 2.0.1
+ micromark-factory-whitespace: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-html-tag-name: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-frontmatter@2.0.0:
+ dependencies:
+ fault: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-autolink-literal@2.1.0:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-footnote@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-strikethrough@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-table@2.1.1:
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-tagfilter@2.0.0:
+ dependencies:
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-task-list-item@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm@3.0.0:
+ dependencies:
+ micromark-extension-gfm-autolink-literal: 2.1.0
+ micromark-extension-gfm-footnote: 2.1.0
+ micromark-extension-gfm-strikethrough: 2.1.0
+ micromark-extension-gfm-table: 2.1.1
+ micromark-extension-gfm-tagfilter: 2.0.0
+ micromark-extension-gfm-task-list-item: 2.1.0
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-destination@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-label@2.0.1:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-space@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-title@2.0.1:
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-whitespace@2.0.1:
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-character@2.1.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-chunked@2.0.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-classify-character@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-combine-extensions@2.0.1:
+ dependencies:
+ micromark-util-chunked: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-decode-numeric-character-reference@2.0.2:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-decode-string@2.0.1:
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ micromark-util-character: 2.1.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-encode@2.0.1: {}
+
+ micromark-util-html-tag-name@2.0.1: {}
+
+ micromark-util-normalize-identifier@2.0.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-resolve-all@2.0.1:
+ dependencies:
+ micromark-util-types: 2.0.2
+
+ micromark-util-sanitize-uri@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-encode: 2.0.1
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-subtokenize@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-symbol@2.0.1: {}
+
+ micromark-util-types@2.0.2: {}
+
+ micromark@4.0.2:
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.4.3
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-encode: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
micromatch@3.1.0:
dependencies:
@@ -7039,6 +16604,8 @@
mime-db@1.52.0: {}
+ mime-db@1.54.0: {}
+
mime-match@1.0.2:
dependencies:
wildcard: 1.1.2
@@ -7047,9 +16614,17 @@
dependencies:
mime-db: 1.52.0
+ mime-types@3.0.2:
+ dependencies:
+ mime-db: 1.54.0
+
mime@1.6.0: {}
+ mime@3.0.0: {}
+
mimic-fn@2.1.0: {}
+
+ mimic-function@5.0.1: {}
mimic-response@3.1.0: {}
@@ -7065,6 +16640,14 @@
domify: 1.4.2
min-dash: 4.2.3
+ minimatch@10.1.1:
+ dependencies:
+ '@isaacs/brace-expansion': 5.0.0
+
+ minimatch@3.1.2:
+ dependencies:
+ brace-expansion: 1.1.12
+
minimatch@9.0.5:
dependencies:
brace-expansion: 2.0.2
@@ -7072,6 +16655,8 @@
minimist@1.2.8: {}
minipass@7.1.2: {}
+
+ miniprogram-api-typings@4.1.2: {}
mitt@3.0.1: {}
@@ -7081,6 +16666,10 @@
is-extendable: 1.0.1
mkdirp-classic@0.5.3: {}
+
+ mkdirp@0.5.6:
+ dependencies:
+ minimist: 1.2.8
mlly@1.8.0:
dependencies:
@@ -7098,6 +16687,8 @@
moddle@6.2.3:
dependencies:
min-dash: 4.2.3
+
+ module-alias@2.2.3: {}
mpd-parser@1.3.1:
dependencies:
@@ -7137,6 +16728,8 @@
- supports-color
- utf-8-validate
+ mrmime@2.0.1: {}
+
ms@2.0.0: {}
ms@2.1.3: {}
@@ -7147,6 +16740,8 @@
global: 4.4.0
namespace-emitter@2.0.1: {}
+
+ nano-spawn@2.0.0: {}
nanoid@3.3.11: {}
@@ -7170,6 +16765,16 @@
napi-build-utils@2.0.0: {}
+ natural-compare@1.4.0: {}
+
+ natural-orderby@5.0.0: {}
+
+ negotiator@0.6.3: {}
+
+ negotiator@1.0.0: {}
+
+ neo-async@2.6.2: {}
+
next-tick@1.1.0: {}
node-abi@3.85.0:
@@ -7178,12 +16783,23 @@
node-addon-api@6.1.0: {}
- node-addon-api@7.1.1:
- optional: true
+ node-addon-api@7.1.1: {}
+
+ node-fetch-native@1.6.7: {}
+
+ node-int64@0.4.0: {}
+
+ node-releases@2.0.27: {}
+
+ normalize-path@3.0.0: {}
normalize-wheel-es@1.2.0: {}
nosleep.js@0.12.0: {}
+
+ npm-run-path@4.0.1:
+ dependencies:
+ path-key: 3.1.1
nprogress@0.2.0: {}
@@ -7197,6 +16813,16 @@
js-sdsl: 4.3.0
transitivePeerDependencies:
- supports-color
+
+ nwsapi@2.2.23: {}
+
+ nypm@0.6.2:
+ dependencies:
+ citty: 0.1.6
+ consola: 3.4.2
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ tinyexec: 1.0.2
object-assign@4.1.1: {}
@@ -7234,6 +16860,16 @@
dependencies:
isobject: 3.0.1
+ ofetch@1.5.1:
+ dependencies:
+ destr: 2.0.5
+ node-fetch-native: 1.6.7
+ ufo: 1.6.1
+
+ ohash@2.0.11: {}
+
+ omggif@1.0.10: {}
+
on-finished@2.4.1:
dependencies:
ee-first: 1.1.1
@@ -7245,6 +16881,25 @@
onetime@5.1.2:
dependencies:
mimic-fn: 2.1.0
+
+ onetime@7.0.0:
+ dependencies:
+ mimic-function: 5.0.1
+
+ open@8.4.2:
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+
+ optionator@0.9.4:
+ dependencies:
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ word-wrap: 1.2.5
ora@7.0.1:
dependencies:
@@ -7258,30 +16913,117 @@
string-width: 6.1.0
strip-ansi: 7.1.2
+ os-locale-s-fix@1.0.8-fix-1:
+ dependencies:
+ lcid: 3.1.1
+
own-keys@1.0.1:
dependencies:
get-intrinsic: 1.3.0
object-keys: 1.1.1
safe-push-apply: 1.0.0
+ p-limit@2.3.0:
+ dependencies:
+ p-try: 2.2.0
+
+ p-limit@3.1.0:
+ dependencies:
+ yocto-queue: 0.1.0
+
+ p-locate@4.1.0:
+ dependencies:
+ p-limit: 2.3.0
+
+ p-locate@5.0.0:
+ dependencies:
+ p-limit: 3.1.0
+
+ p-map@4.0.0:
+ dependencies:
+ aggregate-error: 3.1.0
+
+ p-try@2.2.0: {}
+
package-json-from-dist@1.0.1: {}
+
+ package-manager-detector@1.6.0: {}
pako@1.0.11: {}
pako@2.1.0: {}
+ parent-module@1.0.1:
+ dependencies:
+ callsites: 3.1.0
+
+ parse-bmfont-ascii@1.0.6: {}
+
+ parse-bmfont-binary@1.0.6: {}
+
+ parse-bmfont-xml@1.1.6:
+ dependencies:
+ xml-parse-from-string: 1.0.1
+ xml2js: 0.5.0
+
+ parse-css-font@4.0.0:
+ 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
+
+ parse-gitignore@2.0.0: {}
+
+ parse-headers@2.0.6: {}
+
+ parse-imports-exports@0.2.4:
+ dependencies:
+ parse-statements: 1.0.11
+
+ parse-json@5.2.0:
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ error-ex: 1.3.4
+ json-parse-even-better-errors: 2.3.1
+ lines-and-columns: 1.2.4
+
+ parse-statements@1.0.11: {}
+
+ parse5@6.0.1: {}
+
parseurl@1.3.3: {}
pascalcase@0.1.1: {}
+ path-exists@4.0.0: {}
+
path-intersection@2.2.1: {}
+ path-is-absolute@1.0.1: {}
+
path-key@3.1.1: {}
+
+ path-parse@1.0.7: {}
path-scurry@1.11.1:
dependencies:
lru-cache: 10.4.3
minipass: 7.1.2
+
+ path-scurry@2.0.1:
+ dependencies:
+ lru-cache: 11.2.4
+ minipass: 7.1.2
+
+ path-to-regexp@0.1.12: {}
+
+ path-to-regexp@8.3.0: {}
+
+ path-type@4.0.0: {}
pathe@0.2.0: {}
@@ -7289,21 +17031,82 @@
pathe@2.0.3: {}
+ perfect-debounce@1.0.0: {}
+
+ perfect-debounce@2.0.0: {}
+
+ phin@2.9.3: {}
+
+ phin@3.7.1:
+ dependencies:
+ centra: 2.7.0
+ transitivePeerDependencies:
+ - debug
+
picocolors@1.1.1: {}
picomatch@2.3.1: {}
picomatch@4.0.3: {}
+ pidtree@0.6.0: {}
+
+ pify@2.3.0: {}
+
+ pinia-plugin-persistedstate@4.1.3(pinia@2.2.4(typescript@5.9.3)(vue@3.4.21(typescript@5.9.3))):
+ dependencies:
+ '@nuxt/kit': 3.20.2
+ deep-pick-omit: 1.2.1
+ defu: 6.1.4
+ destr: 2.0.5
+ optionalDependencies:
+ pinia: 2.2.4(typescript@5.9.3)(vue@3.4.21(typescript@5.9.3))
+ transitivePeerDependencies:
+ - magicast
+
+ pinia@2.2.4(typescript@5.9.3)(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ vue: 3.4.21(typescript@5.9.3)
+ vue-demi: 0.14.10(vue@3.4.21(typescript@5.9.3))
+ optionalDependencies:
+ typescript: 5.9.3
+
+ pirates@4.0.7: {}
+
+ pixelmatch@4.0.2:
+ dependencies:
+ pngjs: 3.4.0
+
+ pkce-challenge@5.0.1: {}
+
pkcs7@1.0.4:
dependencies:
'@babel/runtime': 7.28.4
+
+ pkg-dir@4.2.0:
+ dependencies:
+ find-up: 4.1.0
pkg-types@1.3.1:
dependencies:
confbox: 0.1.8
mlly: 1.8.0
pathe: 2.0.3
+
+ pkg-types@2.3.0:
+ dependencies:
+ confbox: 0.2.2
+ exsolve: 1.0.8
+ pathe: 2.0.3
+
+ pluralize@8.0.0: {}
+
+ pngjs@3.4.0: {}
+
+ pnpm-workspace-yaml@1.4.3:
+ dependencies:
+ yaml: 2.8.2
point-in-polygon@1.1.0: {}
@@ -7316,6 +17119,60 @@
possible-typed-array-names@1.1.0: {}
+ postcss-html@1.8.0:
+ dependencies:
+ htmlparser2: 8.0.2
+ js-tokens: 9.0.1
+ postcss: 8.5.6
+ postcss-safe-parser: 6.0.0(postcss@8.5.6)
+
+ postcss-import@14.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.11
+
+ postcss-load-config@3.1.4(postcss@8.5.6):
+ dependencies:
+ lilconfig: 2.1.0
+ yaml: 1.10.2
+ optionalDependencies:
+ postcss: 8.5.6
+
+ postcss-modules-extract-imports@3.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ postcss-modules-local-by-default@4.2.0(postcss@8.5.6):
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.1
+ postcss-value-parser: 4.2.0
+
+ postcss-modules-scope@3.2.1(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.1
+
+ postcss-modules-values@4.0.0(postcss@8.5.6):
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+
+ postcss-modules@4.3.1(postcss@8.5.6):
+ dependencies:
+ generic-names: 4.0.0
+ icss-replace-symbols: 1.1.0
+ lodash.camelcase: 4.3.0
+ postcss: 8.5.6
+ postcss-modules-extract-imports: 3.1.0(postcss@8.5.6)
+ postcss-modules-local-by-default: 4.2.0(postcss@8.5.6)
+ postcss-modules-scope: 3.2.1(postcss@8.5.6)
+ postcss-modules-values: 4.0.0(postcss@8.5.6)
+ string-hash: 1.1.3
+
postcss-prefix-selector@1.16.1(postcss@5.2.18):
dependencies:
postcss: 5.2.18
@@ -7323,6 +17180,32 @@
postcss-pxtorem@6.1.0(postcss@8.5.6):
dependencies:
postcss: 8.5.6
+
+ postcss-resolve-nested-selector@0.1.6: {}
+
+ postcss-safe-parser@6.0.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ postcss-safe-parser@7.0.1(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ postcss-selector-parser@6.1.2:
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ postcss-selector-parser@7.1.1:
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ postcss-sorting@8.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ postcss-value-parser@4.2.0: {}
postcss@5.2.18:
dependencies:
@@ -7377,13 +17260,26 @@
tar-fs: 2.1.4
tunnel-agent: 0.6.0
+ prelude-ls@1.2.1: {}
+
prettier@2.8.8: {}
+
+ pretty-format@27.5.1:
+ dependencies:
+ ansi-regex: 5.0.1
+ ansi-styles: 5.2.0
+ react-is: 17.0.2
prismjs@1.30.0: {}
process-nextick-args@2.0.1: {}
process@0.11.10: {}
+
+ prompts@2.4.2:
+ dependencies:
+ kleur: 3.0.3
+ sisteransi: 1.0.5
protobufjs@7.5.4:
dependencies:
@@ -7400,19 +17296,48 @@
'@types/node': 25.0.3
long: 5.3.2
+ proxy-addr@2.0.7:
+ dependencies:
+ forwarded: 0.2.0
+ ipaddr.js: 1.9.1
+
proxy-from-env@1.1.0: {}
+
+ psl@1.15.0:
+ dependencies:
+ punycode: 2.3.1
pump@3.0.3:
dependencies:
end-of-stream: 1.4.5
once: 1.4.0
+ punycode@2.3.1: {}
+
+ qified@0.5.3:
+ dependencies:
+ hookified: 1.15.0
+
+ qrcode-reader@1.0.4: {}
+
+ qrcode-terminal@0.12.0: {}
+
qrcodejs2-fix@0.0.1: {}
+
+ qs@6.14.1:
+ dependencies:
+ side-channel: 1.1.0
+
+ quansync@0.2.11: {}
+
+ quansync@1.0.0: {}
query-string@4.3.4:
dependencies:
object-assign: 4.1.1
strict-uri-encode: 1.1.0
+
+ querystringify@2.2.0: {}
queue-microtask@1.2.3: {}
@@ -7426,6 +17351,20 @@
range-parser@1.2.1: {}
+ raw-body@2.5.3:
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.1
+ iconv-lite: 0.4.24
+ unpipe: 1.0.0
+
+ raw-body@3.0.2:
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.1
+ iconv-lite: 0.7.1
+ unpipe: 1.0.0
+
rbush@2.0.2:
dependencies:
quickselect: 1.1.1
@@ -7438,12 +17377,23 @@
dependencies:
quickselect: 3.0.0
+ rc9@2.1.2:
+ dependencies:
+ defu: 6.1.4
+ destr: 2.0.5
+
rc@1.2.8:
dependencies:
deep-extend: 0.6.0
ini: 1.3.8
minimist: 1.2.8
strip-json-comments: 2.0.1
+
+ react-is@17.0.2: {}
+
+ read-cache@1.0.0:
+ dependencies:
+ pify: 2.3.0
readable-stream@2.3.8:
dependencies:
@@ -7469,9 +17419,19 @@
process: 0.11.10
string_decoder: 1.3.0
+ readdirp@3.6.0:
+ dependencies:
+ picomatch: 2.3.1
+
readdirp@4.1.2: {}
+ readdirp@5.0.0: {}
+
reconnecting-websocket@4.4.0: {}
+
+ refa@0.12.1:
+ dependencies:
+ '@eslint-community/regexpp': 4.12.2
reflect.getprototypeof@1.0.10:
dependencies:
@@ -7484,10 +17444,27 @@
get-proto: 1.0.1
which-builtin-type: 1.2.1
+ regenerate-unicode-properties@10.2.2:
+ dependencies:
+ regenerate: 1.4.2
+
+ regenerate@1.4.2: {}
+
+ regenerator-runtime@0.13.11: {}
+
+ regenerator-runtime@0.14.1: {}
+
regex-not@1.0.2:
dependencies:
extend-shallow: 3.0.2
safe-regex: 1.1.0
+
+ regexp-ast-analysis@0.7.1:
+ dependencies:
+ '@eslint-community/regexpp': 4.12.2
+ refa: 0.12.1
+
+ regexp-tree@0.1.27: {}
regexp.prototype.flags@1.5.4:
dependencies:
@@ -7498,16 +17475,64 @@
gopd: 1.2.0
set-function-name: 2.0.2
+ regexpu-core@6.4.0:
+ dependencies:
+ regenerate: 1.4.2
+ regenerate-unicode-properties: 10.2.2
+ regjsgen: 0.8.0
+ regjsparser: 0.13.0
+ unicode-match-property-ecmascript: 2.0.0
+ unicode-match-property-value-ecmascript: 2.2.1
+
+ regjsgen@0.8.0: {}
+
+ regjsparser@0.12.0:
+ dependencies:
+ jsesc: 3.0.2
+
+ regjsparser@0.13.0:
+ dependencies:
+ jsesc: 3.1.0
+
repeat-element@1.1.4: {}
repeat-string@1.6.1: {}
+ require-directory@2.1.1: {}
+
+ require-from-string@2.0.2: {}
+
+ requires-port@1.0.0: {}
+
+ resolve-cwd@3.0.0:
+ dependencies:
+ resolve-from: 5.0.0
+
+ resolve-from@4.0.0: {}
+
+ resolve-from@5.0.0: {}
+
+ resolve-pkg-maps@1.0.0: {}
+
resolve-url@0.2.1: {}
+
+ resolve.exports@1.1.1: {}
+
+ resolve@1.22.11:
+ dependencies:
+ is-core-module: 2.16.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
restore-cursor@4.0.0:
dependencies:
onetime: 5.1.2
signal-exit: 3.0.7
+
+ restore-cursor@5.1.0:
+ dependencies:
+ onetime: 7.0.0
+ signal-exit: 4.1.0
ret@0.1.15: {}
@@ -7515,7 +17540,25 @@
rfdc@1.4.1: {}
+ rimraf@3.0.2:
+ dependencies:
+ glob: 7.2.3
+
+ rimraf@6.1.2:
+ dependencies:
+ glob: 13.0.0
+ package-json-from-dist: 1.0.1
+
robust-predicates@3.0.2: {}
+
+ rollup-plugin-visualizer@6.0.5(rollup@4.54.0):
+ dependencies:
+ open: 8.4.2
+ picomatch: 4.0.3
+ source-map: 0.7.6
+ yargs: 17.7.2
+ optionalDependencies:
+ rollup: 4.54.0
rollup@4.54.0:
dependencies:
@@ -7545,9 +17588,21 @@
'@rollup/rollup-win32-x64-msvc': 4.54.0
fsevents: 2.3.3
+ router@2.2.0:
+ dependencies:
+ debug: 4.4.3
+ depd: 2.0.0
+ is-promise: 4.0.0
+ parseurl: 1.3.3
+ path-to-regexp: 8.3.0
+ transitivePeerDependencies:
+ - supports-color
+
run-parallel@1.2.0:
dependencies:
queue-microtask: 1.2.3
+
+ safe-area-insets@1.4.1: {}
safe-array-concat@1.1.3:
dependencies:
@@ -7576,6 +17631,21 @@
dependencies:
ret: 0.1.15
+ safer-buffer@2.1.2: {}
+
+ sass-loader@16.0.6(sass@1.79.6):
+ dependencies:
+ neo-async: 2.6.2
+ optionalDependencies:
+ sass: 1.79.6
+
+ sass@1.79.6:
+ dependencies:
+ '@parcel/watcher': 2.5.1
+ chokidar: 4.0.3
+ immutable: 4.3.7
+ source-map-js: 1.2.1
+
sass@1.97.1:
dependencies:
chokidar: 4.0.3
@@ -7584,7 +17654,13 @@
optionalDependencies:
'@parcel/watcher': 2.5.1
+ sax@1.4.3: {}
+
saxen@8.1.2: {}
+
+ saxes@5.0.1:
+ dependencies:
+ xmlchars: 2.2.0
scroll-into-view-if-needed@2.2.31:
dependencies:
@@ -7594,6 +17670,12 @@
dependencies:
compute-scroll-into-view: 3.1.1
+ scslre@0.3.0:
+ dependencies:
+ '@eslint-community/regexpp': 4.12.2
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
+
scule@1.3.0: {}
sdp@3.2.1: {}
@@ -7601,6 +17683,8 @@
seedrandom@3.0.5: {}
select@1.1.2: {}
+
+ semver@6.3.1: {}
semver@7.7.3: {}
@@ -7622,12 +17706,37 @@
transitivePeerDependencies:
- supports-color
+ send@1.2.1:
+ dependencies:
+ debug: 4.4.3
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ fresh: 2.0.0
+ http-errors: 2.0.1
+ mime-types: 3.0.2
+ ms: 2.1.3
+ on-finished: 2.4.1
+ range-parser: 1.2.1
+ statuses: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+
serve-static@1.16.3:
dependencies:
encodeurl: 2.0.0
escape-html: 1.0.3
parseurl: 1.3.3
send: 0.19.2
+ transitivePeerDependencies:
+ - supports-color
+
+ serve-static@2.2.1:
+ dependencies:
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ parseurl: 1.3.3
+ send: 1.2.1
transitivePeerDependencies:
- supports-color
@@ -7731,7 +17840,17 @@
dependencies:
is-arrayish: 0.3.4
+ sirv@3.0.2:
+ dependencies:
+ '@polka/url': 1.0.0-next.29
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
+ sisteransi@1.0.5: {}
+
skmeans@0.9.7: {}
+
+ slash@3.0.0: {}
slate-history@0.109.0(slate@0.82.1):
dependencies:
@@ -7754,6 +17873,17 @@
immer: 9.0.21
is-plain-object: 5.0.0
tiny-warning: 1.0.3
+
+ slice-ansi@4.0.0:
+ dependencies:
+ ansi-styles: 4.3.0
+ astral-regex: 2.0.0
+ is-fullwidth-code-point: 3.0.0
+
+ slice-ansi@7.1.2:
+ dependencies:
+ ansi-styles: 6.2.3
+ is-fullwidth-code-point: 5.1.0
sm-crypto@0.3.13:
dependencies:
@@ -7814,7 +17944,20 @@
source-map@0.6.1: {}
+ source-map@0.7.6: {}
+
sourcemap-codec@1.4.8: {}
+
+ spdx-exceptions@2.5.0: {}
+
+ spdx-expression-parse@4.0.0:
+ dependencies:
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.22
+
+ spdx-license-ids@3.0.22: {}
+
+ speakingurl@14.0.1: {}
splaytree@3.2.3: {}
@@ -7823,6 +17966,8 @@
extend-shallow: 3.0.2
split2@4.2.0: {}
+
+ sprintf-js@1.0.3: {}
ssf@0.11.2:
dependencies:
@@ -7833,6 +17978,10 @@
ssr-window@4.0.2: {}
stable@0.1.8: {}
+
+ stack-utils@2.0.6:
+ dependencies:
+ escape-string-regexp: 2.0.0
static-extend@0.1.2:
dependencies:
@@ -7861,6 +18010,15 @@
strict-uri-encode@1.1.0: {}
+ string-argv@0.3.2: {}
+
+ string-hash@1.1.3: {}
+
+ string-length@4.0.2:
+ dependencies:
+ char-regex: 1.0.2
+ strip-ansi: 6.0.1
+
string-width@4.2.3:
dependencies:
emoji-regex: 8.0.0
@@ -7877,6 +18035,17 @@
dependencies:
eastasianwidth: 0.2.0
emoji-regex: 10.6.0
+ strip-ansi: 7.1.2
+
+ string-width@7.2.0:
+ dependencies:
+ emoji-regex: 10.6.0
+ get-east-asian-width: 1.4.0
+ strip-ansi: 7.1.2
+
+ string-width@8.1.0:
+ dependencies:
+ get-east-asian-width: 1.4.0
strip-ansi: 7.1.2
string.prototype.trim@1.2.10:
@@ -7922,11 +18091,113 @@
dependencies:
ansi-regex: 6.2.2
+ strip-bom@4.0.0: {}
+
+ strip-final-newline@2.0.0: {}
+
+ strip-indent@4.1.1: {}
+
strip-json-comments@2.0.1: {}
+
+ strip-json-comments@3.1.1: {}
strip-literal@1.3.0:
dependencies:
acorn: 8.15.0
+
+ strip-literal@3.1.0:
+ dependencies:
+ js-tokens: 9.0.1
+
+ stylelint-config-html@1.1.0(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ postcss-html: 1.8.0
+ stylelint: 16.26.1(typescript@5.9.3)
+
+ stylelint-config-recess-order@6.1.0(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ stylelint: 16.26.1(typescript@5.9.3)
+ stylelint-order: 6.0.4(stylelint@16.26.1(typescript@5.9.3))
+
+ stylelint-config-recommended-vue@1.6.1(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ postcss-html: 1.8.0
+ semver: 7.7.3
+ stylelint: 16.26.1(typescript@5.9.3)
+ stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3))
+ stylelint-config-recommended: 17.0.0(stylelint@16.26.1(typescript@5.9.3))
+
+ stylelint-config-recommended@17.0.0(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ stylelint: 16.26.1(typescript@5.9.3)
+
+ stylelint-config-standard-vue@1.0.0(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ postcss-html: 1.8.0
+ stylelint: 16.26.1(typescript@5.9.3)
+ stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3))
+ stylelint-config-recommended-vue: 1.6.1(postcss-html@1.8.0)(stylelint@16.26.1(typescript@5.9.3))
+ stylelint-config-standard: 39.0.1(stylelint@16.26.1(typescript@5.9.3))
+
+ stylelint-config-standard@39.0.1(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ stylelint: 16.26.1(typescript@5.9.3)
+ stylelint-config-recommended: 17.0.0(stylelint@16.26.1(typescript@5.9.3))
+
+ stylelint-order@6.0.4(stylelint@16.26.1(typescript@5.9.3)):
+ dependencies:
+ postcss: 8.5.6
+ postcss-sorting: 8.0.2(postcss@8.5.6)
+ stylelint: 16.26.1(typescript@5.9.3)
+
+ stylelint@16.26.1(typescript@5.9.3):
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-syntax-patches-for-csstree': 1.0.22
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.1)
+ '@dual-bundle/import-meta-resolve': 4.2.1
+ balanced-match: 2.0.0
+ colord: 2.9.3
+ cosmiconfig: 9.0.0(typescript@5.9.3)
+ css-functions-list: 3.2.3
+ css-tree: 3.1.0
+ debug: 4.4.3
+ fast-glob: 3.3.3
+ fastest-levenshtein: 1.0.16
+ file-entry-cache: 11.1.1
+ global-modules: 2.0.0
+ globby: 11.1.0
+ globjoin: 0.1.4
+ html-tags: 3.3.1
+ ignore: 7.0.5
+ imurmurhash: 0.1.4
+ is-plain-object: 5.0.0
+ known-css-properties: 0.37.0
+ mathml-tag-names: 2.1.3
+ meow: 13.2.0
+ micromatch: 4.0.8
+ normalize-path: 3.0.0
+ picocolors: 1.1.1
+ postcss: 8.5.6
+ postcss-resolve-nested-selector: 0.1.6
+ postcss-safe-parser: 7.0.1(postcss@8.5.6)
+ postcss-selector-parser: 7.1.1
+ postcss-value-parser: 4.2.0
+ resolve-from: 5.0.0
+ string-width: 4.2.3
+ supports-hyperlinks: 3.2.0
+ svg-tags: 1.0.0
+ table: 6.9.0
+ write-file-atomic: 5.0.1
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ superjson@2.2.6:
+ dependencies:
+ copy-anything: 4.0.5
supports-color@2.0.0: {}
@@ -7937,6 +18208,22 @@
supports-color@7.2.0:
dependencies:
has-flag: 4.0.0
+
+ supports-color@8.1.1:
+ dependencies:
+ has-flag: 4.0.0
+
+ supports-hyperlinks@2.3.0:
+ dependencies:
+ has-flag: 4.0.0
+ supports-color: 7.2.0
+
+ supports-hyperlinks@3.2.0:
+ dependencies:
+ has-flag: 4.0.0
+ supports-color: 7.2.0
+
+ supports-preserve-symlinks-flag@1.0.0: {}
svg-baker@1.7.0:
dependencies:
@@ -7956,6 +18243,8 @@
transitivePeerDependencies:
- supports-color
+ svg-tags@1.0.0: {}
+
svgo@2.8.0:
dependencies:
'@trysound/sax': 0.2.0
@@ -7965,6 +18254,24 @@
csso: 4.2.0
picocolors: 1.1.1
stable: 0.1.8
+
+ symbol-tree@3.2.4: {}
+
+ synckit@0.11.11:
+ dependencies:
+ '@pkgr/core': 0.2.9
+
+ systemjs@6.15.1: {}
+
+ table@6.9.0:
+ dependencies:
+ ajv: 8.17.1
+ lodash.truncate: 4.4.2
+ slice-ansi: 4.0.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+
+ tapable@2.3.0: {}
tar-fs@2.1.4:
dependencies:
@@ -8002,6 +18309,11 @@
- bare-abort-controller
- react-native-b4a
+ terminal-link@2.1.1:
+ dependencies:
+ ansi-escapes: 4.3.2
+ supports-hyperlinks: 2.3.0
+
terser@5.44.1:
dependencies:
'@jridgewell/source-map': 0.3.11
@@ -8009,11 +18321,21 @@
commander: 2.20.3
source-map-support: 0.5.21
+ test-exclude@6.0.0:
+ dependencies:
+ '@istanbuljs/schema': 0.1.3
+ glob: 7.2.3
+ minimatch: 3.1.2
+
text-decoder@1.2.3:
dependencies:
b4a: 1.7.3
transitivePeerDependencies:
- react-native-b4a
+
+ throat@6.0.2: {}
+
+ timm@1.7.1: {}
tiny-emitter@2.1.0: {}
@@ -8021,7 +18343,18 @@
tiny-warning@1.0.3: {}
+ tinycolor2@1.6.0: {}
+
+ tinyexec@1.0.2: {}
+
+ tinyglobby@0.2.15:
+ dependencies:
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+
tinyqueue@3.0.0: {}
+
+ tmpl@1.0.5: {}
to-object-path@0.3.0:
dependencies:
@@ -8045,6 +18378,10 @@
toidentifier@1.0.1: {}
+ toml-eslint-parser@0.10.1:
+ dependencies:
+ eslint-visitor-keys: 3.4.3
+
topojson-client@3.1.0:
dependencies:
commander: 2.20.3
@@ -8052,6 +18389,19 @@
topojson-server@3.0.1:
dependencies:
commander: 2.20.3
+
+ totalist@3.0.1: {}
+
+ tough-cookie@4.1.4:
+ dependencies:
+ psl: 1.15.0
+ punycode: 2.3.1
+ universalify: 0.2.0
+ url-parse: 1.5.10
+
+ tr46@2.1.0:
+ dependencies:
+ punycode: 2.3.1
traverse@0.6.11:
dependencies:
@@ -8063,6 +18413,15 @@
dependencies:
webrtc-adapter: 8.2.4
+ ts-api-utils@2.4.0(typescript@5.9.3):
+ dependencies:
+ typescript: 5.9.3
+
+ ts-declaration-location@1.0.7(typescript@5.9.3):
+ dependencies:
+ picomatch: 4.0.3
+ typescript: 5.9.3
+
tslib@2.3.0: {}
tslib@2.8.1: {}
@@ -8073,7 +18432,26 @@
turf-jsts@1.2.3: {}
+ type-check@0.4.0:
+ dependencies:
+ prelude-ls: 1.2.1
+
+ type-detect@4.0.8: {}
+
+ type-fest@0.21.3: {}
+
type-fest@2.19.0: {}
+
+ type-is@1.6.18:
+ dependencies:
+ media-typer: 0.3.0
+ mime-types: 2.1.35
+
+ type-is@2.0.1:
+ dependencies:
+ content-type: 1.0.5
+ media-typer: 1.1.0
+ mime-types: 3.0.2
type@2.7.3: {}
@@ -8112,6 +18490,10 @@
typed-function@2.1.0: {}
+ typedarray-to-buffer@3.1.5:
+ dependencies:
+ is-typedarray: 1.0.0
+
typedarray.prototype.slice@1.0.5:
dependencies:
call-bind: 1.0.8
@@ -8125,6 +18507,8 @@
typedarray@0.0.6: {}
+ typescript@5.9.3: {}
+
ufo@1.6.1: {}
unbox-primitive@1.1.0:
@@ -8134,7 +18518,44 @@
has-symbols: 1.1.0
which-boxed-primitive: 1.1.1
+ unconfig-core@7.4.2:
+ dependencies:
+ '@quansync/fs': 1.0.0
+ quansync: 1.0.0
+
+ unconfig@7.0.0:
+ dependencies:
+ '@antfu/utils': 8.1.1
+ defu: 6.1.4
+ jiti: 2.6.1
+
+ unconfig@7.4.2:
+ dependencies:
+ '@quansync/fs': 1.0.0
+ defu: 6.1.4
+ jiti: 2.6.1
+ quansync: 1.0.0
+ unconfig-core: 7.4.2
+
+ unctx@2.5.0:
+ dependencies:
+ acorn: 8.15.0
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ unplugin: 2.3.11
+
undici-types@7.16.0: {}
+
+ unicode-canonical-property-names-ecmascript@2.0.1: {}
+
+ unicode-match-property-ecmascript@2.0.0:
+ dependencies:
+ unicode-canonical-property-names-ecmascript: 2.0.1
+ unicode-property-aliases-ecmascript: 2.2.0
+
+ unicode-match-property-value-ecmascript@2.2.1: {}
+
+ unicode-property-aliases-ecmascript@2.2.0: {}
unimport@1.3.0(rollup@4.54.0):
dependencies:
@@ -8152,6 +18573,40 @@
transitivePeerDependencies:
- rollup
+ unimport@4.1.1:
+ dependencies:
+ acorn: 8.15.0
+ escape-string-regexp: 5.0.0
+ estree-walker: 3.0.3
+ fast-glob: 3.3.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.21
+ mlly: 1.8.0
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ pkg-types: 1.3.1
+ scule: 1.3.0
+ strip-literal: 3.1.0
+ unplugin: 2.3.11
+ unplugin-utils: 0.2.5
+
+ unimport@4.2.0:
+ dependencies:
+ acorn: 8.15.0
+ escape-string-regexp: 5.0.0
+ estree-walker: 3.0.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.21
+ mlly: 1.8.0
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ pkg-types: 2.3.0
+ scule: 1.3.0
+ strip-literal: 3.1.0
+ tinyglobby: 0.2.15
+ unplugin: 2.3.11
+ unplugin-utils: 0.2.5
+
union-value@1.0.1:
dependencies:
arr-union: 3.1.0
@@ -8159,9 +18614,83 @@
is-extendable: 0.1.1
set-value: 2.0.1
+ unist-util-is@6.0.1:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-stringify-position@4.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-visit-parents@6.0.2:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.1
+
+ unist-util-visit@5.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.1
+ unist-util-visit-parents: 6.0.2
+
+ universalify@0.2.0: {}
+
universalify@2.0.1: {}
- unplugin-auto-import@0.11.5(@vueuse/core@9.13.0(vue@3.5.26))(rollup@4.54.0):
+ unocss-preset-weapp@66.0.2(@nuxt/kit@3.20.2)(esbuild@0.20.2)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ '@unocss/core': 66.5.12
+ '@unocss/extractor-arbitrary-variants': 66.5.12
+ '@unocss/rule-utils': 66.5.12
+ unplugin-attributify-to-class: 0.2.5(rollup@4.54.0)
+ unplugin-transform-class: 0.6.0(@nuxt/kit@3.20.2)(esbuild@0.20.2)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ transitivePeerDependencies:
+ - '@farmfe/core'
+ - '@nuxt/kit'
+ - '@nuxt/schema'
+ - esbuild
+ - rollup
+ - vite
+ - webpack
+
+ unocss@65.5.0(postcss@8.5.6)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ '@unocss/astro': 65.5.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@unocss/cli': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/postcss': 65.5.0(postcss@8.5.6)
+ '@unocss/preset-attributify': 65.5.0
+ '@unocss/preset-icons': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/preset-tagify': 65.5.0
+ '@unocss/preset-typography': 65.5.0
+ '@unocss/preset-uno': 65.5.0
+ '@unocss/preset-web-fonts': 65.5.0
+ '@unocss/preset-wind': 65.5.0
+ '@unocss/transformer-attributify-jsx': 65.5.0
+ '@unocss/transformer-compile-class': 65.5.0
+ '@unocss/transformer-directives': 65.5.0
+ '@unocss/transformer-variant-group': 65.5.0
+ '@unocss/vite': 65.5.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ optionalDependencies:
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ transitivePeerDependencies:
+ - postcss
+ - supports-color
+ - vue
+
+ unpipe@1.0.0: {}
+
+ unplugin-attributify-to-class@0.2.5(rollup@4.54.0):
+ dependencies:
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ unplugin: 1.16.1
+ unplugin-transform-class: 0.5.3(rollup@4.54.0)
+ transitivePeerDependencies:
+ - rollup
+
+ unplugin-auto-import@0.11.5(@vueuse/core@9.13.0(vue@3.5.26(typescript@5.9.3)))(rollup@4.54.0):
dependencies:
'@antfu/utils': 0.7.10
'@rollup/pluginutils': 5.3.0(rollup@4.54.0)
@@ -8170,36 +18699,163 @@
unimport: 1.3.0(rollup@4.54.0)
unplugin: 1.16.1
optionalDependencies:
- '@vueuse/core': 9.13.0(vue@3.5.26)
+ '@vueuse/core': 9.13.0(vue@3.5.26(typescript@5.9.3))
transitivePeerDependencies:
- rollup
+
+ unplugin-auto-import@19.1.0(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3))):
+ dependencies:
+ local-pkg: 1.1.2
+ magic-string: 0.30.21
+ picomatch: 4.0.3
+ unimport: 4.1.1
+ unplugin: 2.3.11
+ unplugin-utils: 0.2.5
+ optionalDependencies:
+ '@nuxt/kit': 3.20.2
+ '@vueuse/core': 9.13.0(vue@3.4.21(typescript@5.9.3))
+
+ unplugin-auto-import@19.3.0(@nuxt/kit@3.20.2)(@vueuse/core@9.13.0(vue@3.4.21(typescript@5.9.3))):
+ dependencies:
+ local-pkg: 1.1.2
+ magic-string: 0.30.21
+ picomatch: 4.0.3
+ unimport: 4.2.0
+ unplugin: 2.3.11
+ unplugin-utils: 0.2.5
+ optionalDependencies:
+ '@nuxt/kit': 3.20.2
+ '@vueuse/core': 9.13.0(vue@3.4.21(typescript@5.9.3))
+
+ unplugin-transform-class@0.5.3(rollup@4.54.0):
+ dependencies:
+ '@meoc/utils': 0.2.10
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ unplugin: 1.7.1
+ transitivePeerDependencies:
+ - rollup
+
+ unplugin-transform-class@0.6.0(@nuxt/kit@3.20.2)(esbuild@0.20.2)(rollup@4.54.0)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ '@meoc/utils': 0.2.10
+ '@rollup/pluginutils': 5.3.0(rollup@4.54.0)
+ unplugin: 2.3.2
+ optionalDependencies:
+ '@nuxt/kit': 3.20.2
+ esbuild: 0.20.2
+ rollup: 4.54.0
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+
+ unplugin-utils@0.2.5:
+ dependencies:
+ pathe: 2.0.3
+ picomatch: 4.0.3
+
+ unplugin-vue-components@28.8.0(@babel/parser@7.28.5)(@nuxt/kit@3.20.2)(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ chokidar: 3.6.0
+ debug: 4.4.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.21
+ mlly: 1.8.0
+ tinyglobby: 0.2.15
+ unplugin: 2.3.11
+ unplugin-utils: 0.2.5
+ vue: 3.4.21(typescript@5.9.3)
+ optionalDependencies:
+ '@babel/parser': 7.28.5
+ '@nuxt/kit': 3.20.2
+ transitivePeerDependencies:
+ - supports-color
unplugin@1.16.1:
dependencies:
acorn: 8.15.0
webpack-virtual-modules: 0.6.2
+ unplugin@1.7.1:
+ dependencies:
+ acorn: 8.15.0
+ chokidar: 3.6.0
+ webpack-sources: 3.3.3
+ webpack-virtual-modules: 0.6.2
+
+ unplugin@2.3.11:
+ dependencies:
+ '@jridgewell/remapping': 2.3.5
+ acorn: 8.15.0
+ picomatch: 4.0.3
+ webpack-virtual-modules: 0.6.2
+
+ unplugin@2.3.2:
+ dependencies:
+ acorn: 8.15.0
+ picomatch: 4.0.3
+ webpack-virtual-modules: 0.6.2
+
+ unquote@1.1.1: {}
+
unset-value@1.0.0:
dependencies:
has-value: 0.3.1
isobject: 3.0.1
+ untyped@2.0.0:
+ dependencies:
+ citty: 0.1.6
+ defu: 6.1.4
+ jiti: 2.6.1
+ knitwork: 1.3.0
+ scule: 1.3.0
+
+ update-browserslist-db@1.2.3(browserslist@4.28.1):
+ dependencies:
+ browserslist: 4.28.1
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
+ uri-js@4.4.1:
+ dependencies:
+ punycode: 2.3.1
+
urijs@1.19.11: {}
urix@0.1.0: {}
+ url-parse@1.5.10:
+ dependencies:
+ querystringify: 2.2.0
+ requires-port: 1.0.0
+
use@3.1.1: {}
+
+ utif@2.0.1:
+ dependencies:
+ pako: 1.0.11
util-deprecate@1.0.2: {}
+ utils-merge@1.0.1: {}
+
uuid@11.1.0: {}
- vant@4.9.22(vue@3.5.26):
+ uview-plus@3.6.29:
+ dependencies:
+ clipboard: 2.0.11
+ dayjs: 1.11.19
+
+ v8-to-istanbul@8.1.1:
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+ convert-source-map: 1.9.0
+ source-map: 0.7.6
+
+ vant@4.9.22(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@vant/popperjs': 1.3.0
- '@vant/use': 1.6.0(vue@3.5.26)
+ '@vant/use': 1.6.0(vue@3.5.26(typescript@5.9.3))
'@vue/shared': 3.5.26
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
vary@1.1.2: {}
@@ -8233,6 +18889,21 @@
dependencies:
global: 4.4.0
+ vite-dev-rpc@1.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ birpc: 2.9.0
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ vite-hot-client: 2.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+
+ vite-hot-client@2.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+
+ vite-plugin-clean-build@1.4.1(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ del: 6.1.1
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+
vite-plugin-compression@0.5.1(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)):
dependencies:
chalk: 4.1.2
@@ -8258,6 +18929,15 @@
- bare-buffer
- react-native-b4a
+ vite-plugin-replace-image-url@1.4.1(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+
+ vite-plugin-restart@1.0.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)):
+ dependencies:
+ micromatch: 4.0.8
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+
vite-plugin-svg-icons@2.0.1(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)):
dependencies:
'@types/svgo': 2.6.4
@@ -8271,6 +18951,28 @@
vite: 5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)
transitivePeerDependencies:
- supports-color
+
+ vite-plugin-vue-mcp@0.3.2(hono@4.11.3)(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ '@antfu/utils': 9.3.0
+ '@modelcontextprotocol/sdk': 1.25.1(hono@4.11.3)(zod@3.25.76)
+ '@vue/devtools-core': 7.7.9(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))(vue@3.4.21(typescript@5.9.3))
+ '@vue/devtools-kit': 7.7.9
+ ansis: 3.17.0
+ birpc: 2.9.0
+ debug: 4.4.3
+ hookable: 5.5.3
+ nanoid: 3.3.11
+ pathe: 2.0.3
+ vite: 5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1)
+ vite-dev-rpc: 1.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ vite-hot-client: 2.1.0(vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1))
+ zod: 3.25.76
+ transitivePeerDependencies:
+ - '@cfworker/json-schema'
+ - hono
+ - supports-color
+ - vue
vite-plugin-vue-setup-extend@0.4.0(vite@5.2.12(@types/node@25.0.3)(sass@1.97.1)(terser@5.44.1)):
dependencies:
@@ -8289,50 +18991,136 @@
sass: 1.97.1
terser: 5.44.1
- vue-demi@0.14.10(vue@3.5.26):
+ vite@5.2.8(@types/node@25.0.3)(sass@1.79.6)(terser@5.44.1):
dependencies:
- vue: 3.5.26
+ esbuild: 0.20.2
+ postcss: 8.5.6
+ rollup: 4.54.0
+ optionalDependencies:
+ '@types/node': 25.0.3
+ fsevents: 2.3.3
+ sass: 1.79.6
+ terser: 5.44.1
- vue-i18n@9.14.5(vue@3.5.26):
+ vue-demi@0.14.10(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ vue: 3.4.21(typescript@5.9.3)
+
+ vue-demi@0.14.10(vue@3.5.26(typescript@5.9.3)):
+ dependencies:
+ vue: 3.5.26(typescript@5.9.3)
+
+ vue-eslint-parser@10.2.0(eslint@9.39.2(jiti@2.6.1)):
+ dependencies:
+ debug: 4.4.3
+ eslint: 9.39.2(jiti@2.6.1)
+ eslint-scope: 8.4.0
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ esquery: 1.7.0
+ semver: 7.7.3
+ transitivePeerDependencies:
+ - supports-color
+
+ vue-flow-layout@0.1.1(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ vue: 3.4.21(typescript@5.9.3)
+
+ vue-i18n@9.1.9(vue@3.4.21(typescript@5.9.3)):
+ dependencies:
+ '@intlify/core-base': 9.1.9
+ '@intlify/shared': 9.1.9
+ '@intlify/vue-devtools': 9.1.9
+ '@vue/devtools-api': 6.6.4
+ vue: 3.4.21(typescript@5.9.3)
+
+ vue-i18n@9.14.5(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@intlify/core-base': 9.14.5
'@intlify/shared': 9.14.5
'@vue/devtools-api': 6.6.4
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
- vue-router@4.6.4(vue@3.5.26):
+ vue-router@4.6.4(vue@3.4.21(typescript@5.9.3)):
dependencies:
'@vue/devtools-api': 6.6.4
- vue: 3.5.26
+ vue: 3.4.21(typescript@5.9.3)
- vue3-clipboard@1.0.0(vue@3.5.26):
+ vue-router@4.6.4(vue@3.5.26(typescript@5.9.3)):
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ vue: 3.5.26(typescript@5.9.3)
+
+ vue3-clipboard@1.0.0(vue@3.5.26(typescript@5.9.3)):
dependencies:
clipboard: 2.0.11
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
- vue@3.5.26:
+ vue@3.4.21(typescript@5.9.3):
+ 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@3.4.21(typescript@5.9.3))
+ '@vue/shared': 3.4.21
+ optionalDependencies:
+ typescript: 5.9.3
+
+ vue@3.5.26(typescript@5.9.3):
dependencies:
'@vue/compiler-dom': 3.5.26
'@vue/compiler-sfc': 3.5.26
'@vue/runtime-dom': 3.5.26
- '@vue/server-renderer': 3.5.26(vue@3.5.26)
+ '@vue/server-renderer': 3.5.26(vue@3.5.26(typescript@5.9.3))
'@vue/shared': 3.5.26
+ optionalDependencies:
+ typescript: 5.9.3
- vuedraggable@4.1.0(vue@3.5.26):
+ vuedraggable@4.1.0(vue@3.5.26(typescript@5.9.3)):
dependencies:
sortablejs: 1.14.0
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
- vuex@4.1.0(vue@3.5.26):
+ vuex@4.1.0(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@vue/devtools-api': 6.6.4
- vue: 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
+ w3c-hr-time@1.0.2:
+ dependencies:
+ browser-process-hrtime: 1.0.0
+
+ w3c-xmlserializer@2.0.0:
+ dependencies:
+ xml-name-validator: 3.0.0
+
+ walker@1.0.8:
+ dependencies:
+ makeerror: 1.0.12
+
+ webidl-conversions@5.0.0: {}
+
+ webidl-conversions@6.1.0: {}
+
+ webpack-sources@3.3.3: {}
webpack-virtual-modules@0.6.2: {}
webrtc-adapter@8.2.4:
dependencies:
sdp: 3.2.1
+
+ whatwg-encoding@1.0.5:
+ dependencies:
+ iconv-lite: 0.4.24
+
+ whatwg-mimetype@2.3.0: {}
+
+ whatwg-url@8.7.0:
+ dependencies:
+ lodash: 4.17.21
+ tr46: 2.1.0
+ webidl-conversions: 6.1.0
which-boxed-primitive@1.1.1:
dependencies:
@@ -8375,6 +19163,10 @@
gopd: 1.2.0
has-tostringtag: 1.0.2
+ which@1.3.1:
+ dependencies:
+ isexe: 2.0.0
+
which@2.0.2:
dependencies:
isexe: 2.0.0
@@ -8386,6 +19178,8 @@
wildcard@1.1.2: {}
wmf@1.0.2: {}
+
+ word-wrap@1.2.5: {}
word@0.3.0: {}
@@ -8428,9 +19222,36 @@
string-width: 5.1.2
strip-ansi: 7.1.2
+ wrap-ansi@9.0.2:
+ dependencies:
+ ansi-styles: 6.2.3
+ string-width: 7.2.0
+ strip-ansi: 7.1.2
+
wrappy@1.0.2: {}
+ write-file-atomic@3.0.3:
+ dependencies:
+ imurmurhash: 0.1.4
+ is-typedarray: 1.0.0
+ signal-exit: 3.0.7
+ typedarray-to-buffer: 3.1.5
+
+ write-file-atomic@5.0.1:
+ dependencies:
+ imurmurhash: 0.1.4
+ signal-exit: 4.1.0
+
+ ws@7.5.10: {}
+
ws@8.18.3: {}
+
+ xhr@2.6.0:
+ dependencies:
+ global: 4.4.0
+ is-function: 1.0.2
+ parse-headers: 2.0.6
+ xtend: 4.0.2
xlsx@0.18.5:
dependencies:
@@ -8442,6 +19263,76 @@
wmf: 1.0.2
word: 0.3.0
+ xml-name-validator@3.0.0: {}
+
+ xml-name-validator@4.0.0: {}
+
+ xml-parse-from-string@1.0.1: {}
+
+ xml2js@0.5.0:
+ dependencies:
+ sax: 1.4.3
+ xmlbuilder: 11.0.1
+
+ xmlbuilder@11.0.1: {}
+
+ xmlchars@2.2.0: {}
+
+ xmlhttprequest@1.8.0: {}
+
+ xregexp@3.1.0: {}
+
+ xtend@4.0.2: {}
+
+ y18n@5.0.8: {}
+
+ yallist@3.1.1: {}
+
+ yaml-eslint-parser@1.3.2:
+ dependencies:
+ eslint-visitor-keys: 3.4.3
+ yaml: 2.8.2
+
+ yaml@1.10.2: {}
+
+ yaml@2.8.2: {}
+
+ yargs-parser@20.2.9: {}
+
+ yargs-parser@21.1.1: {}
+
+ yargs@16.2.0:
+ dependencies:
+ cliui: 7.0.4
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 20.2.9
+
+ yargs@17.7.2:
+ dependencies:
+ cliui: 8.0.1
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 21.1.1
+
+ yocto-queue@0.1.0: {}
+
+ z-paging@2.8.8: {}
+
+ zod-to-json-schema@3.25.1(zod@3.25.76):
+ dependencies:
+ zod: 3.25.76
+
+ zod@3.25.76: {}
+
zrender@5.6.1:
dependencies:
tslib: 2.3.0
+
+ zwitch@2.0.4: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index e62237b..d053e98 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -1,3 +1,4 @@
packages:
- 'applications/*'
- 'packages/*'
+ - 'uniapps/*'
diff --git a/uniapps/drone-app/.editorconfig b/uniapps/drone-app/.editorconfig
new file mode 100644
index 0000000..7034f9b
--- /dev/null
+++ b/uniapps/drone-app/.editorconfig
@@ -0,0 +1,22 @@
+# 告诉EditorConfig插件,这是根文件,不用继续往上查找
+root = true
+
+# 匹配全部文件
+[*]
+# 设置字符集
+charset = utf-8
+# 缩进风格,可选space、tab
+indent_style = space
+# 缩进的空格数
+indent_size = 2
+# 结尾换行符,可选lf、cr、crlf
+end_of_line = lf
+# 在文件结尾插入新行
+insert_final_newline = true
+# 删除一行中的前后空格
+trim_trailing_whitespace = true
+
+# 匹配md结尾的文件
+[*.md]
+insert_final_newline = false
+trim_trailing_whitespace = false
diff --git a/uniapps/drone-app/.gitignore b/uniapps/drone-app/.gitignore
new file mode 100644
index 0000000..d804b5f
--- /dev/null
+++ b/uniapps/drone-app/.gitignore
@@ -0,0 +1,29 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+*.local
+
+# Editor directories and files
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+#user
+.hbuilderx
+unpackage
+/stats.html
+# pnpm-lock.yaml
+yarn.lock
+package-lock.json
diff --git a/uniapps/drone-app/.npmrc b/uniapps/drone-app/.npmrc
new file mode 100644
index 0000000..b407e2c
--- /dev/null
+++ b/uniapps/drone-app/.npmrc
@@ -0,0 +1,12 @@
+# 设置npm包的下载源为国内镜像,加速包下载
+registry=https://registry.npmmirror.com/
+# 将依赖包提升到node_modules根目录,减少嵌套层级
+shamefully-hoist=true
+# 关闭严格的对等依赖检查,避免因对等依赖版本不匹配而安装失败
+strict-peer-dependencies=false
+# 自动安装对等依赖,无需手动安装
+auto-install-peers=true
+# 对等依赖去重,减少重复安装
+dedupe-peer-dependents=true
+# 使用提升模式链接依赖,与npm兼容性更好
+node-linker=hoisted
diff --git a/uniapps/drone-app/README.md b/uniapps/drone-app/README.md
new file mode 100644
index 0000000..5adcafd
--- /dev/null
+++ b/uniapps/drone-app/README.md
@@ -0,0 +1,352 @@
+# 掌控智飞
+
+```
+npm install pnpm -g
+pnpm install
+pnpm run dev
+
+node:16.18.0
+npm:更换为淘宝镜像
+pnpm:8.6.12
+```
+
+# h5更新步骤
+
+打开软件,发行,自定义发行,选择对应的环境
+
+然后把代码拷贝到服务器上
+测试
+/software/service/drone/web/drone-app
+正式
+/app/service/drone/web/drone-app
+# app更新步骤
+
+修改 /src/config 里面的development的参数,改为对应环境的对应变量
+
+
+
+
+
+
+# uniapp 团队协作开发实践模板(Vue3)
+
+[](https://github.com/oyjt/uniapp-vue3-template)
+[](https://github.com/oyjt/uniapp-vue3-template)
+[](https://github.com/oyjt/uniapp-vue3-template)
+[](https://github.com/oyjt/uniapp-vue3-template)
+[](https://github.com/oyjt/uniapp-vue3-template)
+[](https://github.com/oyjt/uniapp-vue3-template)
+
+
+使用uniapp+vite+vue3+typescript+uview-plus+unocss 搭建的适合团队协作的快速开发模版
+
+[uview-plus官方文档](https://uiadmin.net/uview-plus/)
+
+本项目集众多项目的优点,打造最适合团队协作开发的项目模板。
+
+国内仓库地址:[https://gitee.com/ouyang/uniapp-vue3-template](https://gitee.com/ouyang/uniapp-vue3-template)
+
+在线预览地址:[https://oyjt.github.io/uniapp-vue3-template/](https://oyjt.github.io/uniapp-vue3-template/)
+
+### 特性
+
+- [x] 集成`uview-plus3.0 ui`库
+- [x] 支持多环境打包构建
+- [x] 使用`pinia`状态管理
+- [x] 封装网络请求,并支持`Typescript`
+- [x] 支持路径别名
+- [x] 支持自动加载组件和`API`
+- [x] 自动校验`git`提交代码格式
+- [x] 集成`ESLint`、`StyleLint`、`EditorConfig`代码格式规范
+- [x] `Typescript`支持
+- [x] 集成`UnoCSS`
+- [x] 集成`iconify`图标库
+- [x] 集成`z-paging`下拉刷新功能
+- [x] 添加页面跳转拦截,登录权限校验
+- [x] 支持`token`无感刷新
+- [x] 项目分包
+- [x] 集成小程序隐私协议授权组件
+- [x] 项目构建自动删除本地图片并替换本地图片路径为线上图片
+- [x] 集成包体积视图分析插件
+- [x] 支持国际化
+- [x] 集成`alova`网络请求(具体使用请切换到 [feature/alova](https://github.com/oyjt/uniapp-vue3-template/tree/feature/alova) 分支)
+- [x] 集成`axios`网络请求(具体使用请切换到 [feature/axios](https://github.com/oyjt/uniapp-vue3-template/tree/feature/axios) 分支)
+- [x] 支持新的`wot-design-uni`库(具体使用请切换到[feature/wot-design-uni](https://github.com/oyjt/uniapp-vue3-template/tree/feature/wot-design-uni)分支),[wot-design-uni官方文档](https://wot-design-uni.cn/)
+- [x] 支持新的`shadcn-ui`库(具体使用请切换到[feature/shadcn-ui](https://github.com/oyjt/uniapp-vue3-template/tree/feature/shadcn-ui)分支),[shadcn-ui官方文档](https://ui.shadcn.com/)
+- [x] 更好的 `AI` 支持,适配`cursor`和`trae`规则,集成`MCP`插件
+
+### uniapp插件推荐
+- [uniapp 插件精选(https://github.com/oyjt/awesome-uniapp)](https://github.com/oyjt/awesome-uniapp)
+
+### 目录结构
+项目中采用目前最新的技术方案来实现,目录结构清晰。
+```
+uniapp-vue3-project
+├ build vite配置统一管理
+│ ├ config
+│ └ plugins
+├ env 环境变量
+├ scripts 一些脚本
+│ ├ post-upgrade.js 依赖库清理
+│ └ verify-commit.js git提交检验
+├ src
+│ ├ api 接口管理
+│ ├ components 公共组件
+│ ├ hooks 常用hooks封装
+│ ├ locale 国际化语言管理
+│ ├ pages 页面管理
+│ ├ plugins 插件管理
+│ ├ router 路由管理
+│ ├ static 静态资源
+│ ├ store 状态管理
+│ ├ utils 一些工具
+│ ├ App.vue
+│ ├ main.ts
+│ ├ manifest.json 项目配置
+│ ├ pages.json 页面配置
+│ └ uni.scss 全局scss变量
+├ types 全局typescript类型文件
+│ ├ auto-imports.d.ts
+│ ├ components.d.ts
+│ ├ global.d.ts
+│ └ module.d.ts
+├ LICENSE
+├ README.md
+├ cz.config.js cz-git配置
+├ eslint.config.js eslint配置
+├ index.html
+├ package.json
+├ pnpm-lock.yaml
+├ stylelint.config.js stylelint配置
+├ tsconfig.json
+├ uno.config.ts unocss配置
+└ vite.config.ts vite配置
+```
+
+#### vite插件管理
+```
+build
+├ config vite配置
+│ ├ index.ts 入口文件
+│ └ proxy.ts 跨域代理配置
+└ plugins vite插件
+ ├ autoImport.ts 自动导入api
+ ├ cleanImage.ts 自动清理图片文件
+ ├ component.ts 自动导入组件
+ ├ index.ts 入口文件
+ ├ replaceUrl.ts 自动替换图片地址为CDN地址
+ ├ unocss.ts unocss配置
+ └ visualizer.ts 包体积视图分析
+
+```
+
+#### 接口管理
+```
+api
+├ common 通用api
+│ ├ index.ts
+│ └ types.ts
+├ user 用户相关api
+│ ├ index.ts
+│ └ types.ts
+└ index.ts 入口文件
+```
+
+#### hooks管理
+```
+hooks
+├ use-clipboard 剪切板
+│ └ index.ts
+├ use-loading loading
+│ └ index.ts
+├ use-modal 模态框
+│ └ index.ts
+├ use-permission 校验权限
+│ └ index.ts
+├ use-share 分享
+│ └ index.ts
+└ index.ts 入口文件
+```
+
+### 页面管理
+```
+pages
+├ common 公共页面(分包common)
+│ ├ login
+│ │ └ index.vue
+│ └ webview
+│ └ index.vue
+└ tab 主页面(主包)
+ ├ home
+ │ └ index.vue
+ ├ list
+ │ └ index.vue
+ └ user
+ └ index.vue
+```
+
+#### 状态管理
+```
+store
+├ modules
+│ ├ app app状态
+│ │ ├ index.ts
+│ │ └ types.ts
+│ └ user 用户状态
+│ ├ index.ts
+│ └ types.ts
+└ index.ts 入口文件
+```
+
+### 工具方法
+```
+utils
+├ auth token相关方法
+│ └ index.ts
+├ common 通用方法
+│ └ index.ts
+├ modals 弹窗相关方法
+│ └ index.ts
+├ request 网络请求相关方法
+│ ├ index.ts
+│ ├ interceptors.ts
+│ ├ status.ts
+│ └ types.ts
+└ index.ts 入口文件
+```
+
+### 使用方法
+
+```bash
+# 安装依赖
+pnpm install
+
+# 启动H5
+pnpm dev:h5
+
+# 启动微信小程序
+pnpm dev:mp-weixin
+```
+
+### 发布
+
+```bash
+# 构建开发环境
+pnpm build:h5
+pnpm build:mp-weixin
+
+# 构建测试环境
+pnpm build:h5-test
+pnpm build:mp-weixin-test
+
+# 构建生产环境
+pnpm build:h5-prod
+pnpm build:mp-weixin-prod
+```
+
+### 更新uniapp版本
+
+更新uniapp相关依赖到最新正式版
+```bash
+pnpx @dcloudio/uvm@latest
+```
+或者执行下面的命令
+```bash
+pnpm uvm
+```
+
+在升级完后,会自动添加很多无用依赖,执行下面的代码减小保体积
+```
+pnpm uvm-rm
+```
+
+### `v3` 代码块
+在 `vue` 文件中,输入 `v3` 按 `tab` 即可快速生成页面模板,可以大大加快页面生成。
+> 原理:基于 VSCode 代码块生成。
+
+### 登录鉴权
+1. 页面如果需要登录才能访问,只需在 `pages.json` 文件中需要鉴权的页面下设置 `needLogin` 属性设置为 `true` 即可,比如
+```
+{
+ "pages": [
+ {
+ "path": "pages/test/test",
+ "needLogin": true,
+ "style": {
+ "navigationBarTitleText": "",
+ },
+ }
+ ]
+}
+```
+
+2. 如果有`tab`页面需要登录才能访问,上面的设置在小程序中点击`tabbar`时无效,因为在小程序中点击tabbar不会触发`uni.switchTab`方法,下面是官方给出的回复及解决方案。
+
+> 拦截uni.switchTab本身没有问题。但是在微信小程序端点击tabbar的底层逻辑并不是触发uni.switchTab。所以误认为拦截无效,此类场景的解决方案是在tabbar页面的页面生命周期onShow中处理。
+
+可参考`pages/tab/user/index.vue`中的代码,核心代码如下:
+```
+<script setup lang="ts">
+// 引入鉴权hooks
+import { usePermission } from "@/hooks";
+
+onShow(async () => {
+ console.log("tabbar page onShow");
+ const hasPermission = await usePermission();
+ console.log(hasPermission ? "已登录" : "未登录,拦截跳转");
+});
+</script>
+```
+
+### 注意事项
+1. 微信小程序开发者工具中内置的打包分析不准确,本项目使用了`rollup-plugin-visualizer`来分析小程序包体积,默认不开启,有需要的移除相关注释即可
+2. 自动构建处理本地图片资源,使用了`vite-plugin-clean-build`和`vite-plugin-replace-image-url`这两个插件,默认不开启相关功能,如果需要使用再`build/vite/plugins/index.ts`文件中移除相关注释即可
+3. 使用`vite-plugin-replace-image-url`插件,想要图片自动替换生效,需要在项目中使用绝对路径引入图片资源,如下示例所示。
+
+ 示例一:style中的图片使用
+ ```
+ <template>
+ <view :style="`background-image: url('${bgImg}')`">
+ ...
+ </view>
+ </template>
+ <script setup lang="ts">
+ import bgImg from '@/static/images/bg_img.png';
+ </script>
+ ```
+
+ 示例二:js中的图片使用
+
+ ```
+ <script setup lang="ts">
+ import walletIcon from '@/static/images/icon_wallet.png';
+ const menuList = [
+ {
+ name: 'wallet',
+ title: '钱包',
+ icon: walletIcon,
+ },
+ ...
+ ];
+ </script>
+ ```
+
+ 示例二:css中的图片使用
+ ```
+ <style lang="scss">
+ .icon {
+ background-image: url('@/static/images/icon.png')
+ }
+ </style>
+ ```
+
+4. 部分用户构建微信小程序如下错误,原因是微信开发者工具缺失了对应的依赖。
+```
+This @babel/plugin-proposal-private-property-in-object version is not meant to
+be imported.
+```
+此时升级微信开发者工具,或者安装`@babel/plugin-proposal-private-property-in-object`依赖即可解决问题。
+
+5. `shadcn-ui` 分支采用最新的 `tailwindcss v4.1` 版本,因为现阶段的 `unocss` 对于最新版 `tailwindcss` 支持还不够完善。
+`shadcn-ui`并不太适合移动端使用,如果不喜欢可以移除,只保留纯净的框架。
+
diff --git a/uniapps/drone-app/build/config/index.js b/uniapps/drone-app/build/config/index.js
new file mode 100644
index 0000000..e739ac8
--- /dev/null
+++ b/uniapps/drone-app/build/config/index.js
@@ -0,0 +1 @@
+export * from './proxy'
diff --git a/uniapps/drone-app/build/config/proxy.js b/uniapps/drone-app/build/config/proxy.js
new file mode 100644
index 0000000..68c2c42
--- /dev/null
+++ b/uniapps/drone-app/build/config/proxy.js
@@ -0,0 +1,25 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:40:50
+ * @FilePath : \build\config\proxy.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+import configEnv from "../../src/config/env.js";
+
+export const createViteProxy = (env,envName = 'development') => {
+ const { VITE_APP_PROXY, VITE_API_PREFIX,VITE_APP_ENV } = env
+ // 不使用代理直接返回
+ if (!JSON.parse(VITE_APP_PROXY)) return undefined
+ const proxy = {
+ [VITE_API_PREFIX]: {
+ target: configEnv?.[envName || VITE_APP_ENV]?.VITE_API_BASE_URL,
+ changeOrigin: true,
+ rewrite: path => path.replace(new RegExp(`^${VITE_API_PREFIX}`), ''),
+ },
+ }
+ return proxy
+}
diff --git a/uniapps/drone-app/build/plugins/autoImport.js b/uniapps/drone-app/build/plugins/autoImport.js
new file mode 100644
index 0000000..57dfe87
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/autoImport.js
@@ -0,0 +1,24 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 14:51:32
+ * @FilePath : \build\plugins\autoImport.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+/**
+ * @name AutoImportDeps
+ * @description 按需加载,自动引入
+ */
+import AutoImport from 'unplugin-auto-import/vite'
+
+export const AutoImportDeps = () => {
+ return AutoImport({
+ imports: ['vue', 'uni-app', 'pinia'],
+ // 禁用生成 .d.ts 文件,因为项目已转为 JavaScript
+ dts: false,
+ vueTemplate: true,
+ })
+}
diff --git a/uniapps/drone-app/build/plugins/cleanImage.js b/uniapps/drone-app/build/plugins/cleanImage.js
new file mode 100644
index 0000000..dc1ae37
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/cleanImage.js
@@ -0,0 +1,16 @@
+/**
+ * @name cleanImagePlugin
+ * @description 清除构建后的图片资源
+ */
+import CleanBuild from "vite-plugin-clean-build"
+
+export const CleanImagePlugin = () => {
+ return CleanBuild({
+ outputDir: "dist/build/mp-weixin",
+ patterns: [
+ "static/images/**",
+ "!static/images/logo.png",
+ "!static/images/tabbar/**"
+ ]
+ })
+}
diff --git a/uniapps/drone-app/build/plugins/component.js b/uniapps/drone-app/build/plugins/component.js
new file mode 100644
index 0000000..4d7a375
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/component.js
@@ -0,0 +1,12 @@
+/**
+ * @name AutoRegistryComponents
+ * @description 按需加载,自动引入
+ */
+import Components from 'unplugin-vue-components/vite'
+
+export const AutoRegistryComponents = () => {
+ return Components({
+ // 禁用生成 .d.ts 文件,因为项目已转为 JavaScript
+ dts: false,
+ })
+}
diff --git a/uniapps/drone-app/build/plugins/index.js b/uniapps/drone-app/build/plugins/index.js
new file mode 100644
index 0000000..49a2364
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/index.js
@@ -0,0 +1,40 @@
+import uniPlugin from '@dcloudio/vite-plugin-uni'
+import ViteRestart from 'vite-plugin-restart'
+import { AutoImportDeps } from './autoImport'
+// import { ConfigImageminPlugin } from './imagemin';
+// import { ReplaceUrlPlugin } from './replaceUrl';
+import { AutoRegistryComponents } from './component'
+import { MCPPlugin } from './mcp'
+import { ConfigUnoCSSPlugin } from './unocss'
+export default function createVitePlugins (isBuild) {
+ const vitePlugins = [
+ // UnoCSS配置
+ ConfigUnoCSSPlugin(),
+ // 自动按需引入依赖
+ AutoImportDeps(),
+ // 自动按需引入组件(注意:需注册至 uni 之前,否则不会生效)
+ AutoRegistryComponents(),
+ // uni支持(兼容性写法,当type为module时,必须要这样写)
+ uniPlugin.default(),
+ ViteRestart({
+ // 通过这个插件,在修改vite.config.js文件则不需要重新运行也生效配置
+ restart: ['vite.config.js'],
+ }),
+ // 为项目开启 MCP Server
+ MCPPlugin(),
+ ]
+
+ if (isBuild) {
+ const buildPlugins = [
+ // 图片资源自动转换为网络资源
+ // ReplaceUrlPlugin(),
+ // 自动清除本地图片
+ // CleanImagePlugin(),
+ // 打包视图分析
+ // VisualizerPlugin(),
+ ]
+ vitePlugins.push(...buildPlugins)
+ }
+
+ return vitePlugins
+}
diff --git a/uniapps/drone-app/build/plugins/mcp.js b/uniapps/drone-app/build/plugins/mcp.js
new file mode 100644
index 0000000..81e835a
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/mcp.js
@@ -0,0 +1,9 @@
+/**
+ * @name MCPPlugin
+ * @description MCP服务
+ */
+import { VueMcp } from "vite-plugin-vue-mcp"
+
+export const MCPPlugin = () => {
+ return VueMcp()
+}
diff --git a/uniapps/drone-app/build/plugins/replaceUrl.js b/uniapps/drone-app/build/plugins/replaceUrl.js
new file mode 100644
index 0000000..e8ae2d7
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/replaceUrl.js
@@ -0,0 +1,13 @@
+/**
+ * @name ReplaceImageUrl
+ * @description 替换图片地址
+ */
+import replaceImageUrl from 'vite-plugin-replace-image-url'
+
+export const ReplaceUrlPlugin = () => {
+ return replaceImageUrl({
+ publicPath: 'https://photo.example.com/miniprogram',
+ sourceDir: 'src/static',
+ verbose: true,
+ })
+}
diff --git a/uniapps/drone-app/build/plugins/unocss.js b/uniapps/drone-app/build/plugins/unocss.js
new file mode 100644
index 0000000..0cef2e0
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/unocss.js
@@ -0,0 +1,9 @@
+/**
+ * @name ConfigUnoCSSPlugin
+ * @description UnoCSS相关配置
+ */
+import UnoCSS from 'unocss/vite'
+
+export const ConfigUnoCSSPlugin = () => {
+ return UnoCSS()
+}
diff --git a/uniapps/drone-app/build/plugins/visualizer.js b/uniapps/drone-app/build/plugins/visualizer.js
new file mode 100644
index 0000000..824855c
--- /dev/null
+++ b/uniapps/drone-app/build/plugins/visualizer.js
@@ -0,0 +1,23 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:42:33
+ * @FilePath : \build\plugins\visualizer.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+/**
+ * @name VisualizerPlugin
+ * @description 打包视图分析
+ */
+import { visualizer } from 'rollup-plugin-visualizer'
+
+export const VisualizerPlugin = () => {
+ return visualizer({
+ emitFile: false,
+ filename: 'stats.html', // 分析图生成的文件名
+ open: true, // 如果存在本地服务端口,将在打包后自动展示
+ })
+}
diff --git a/uniapps/drone-app/cz.config.js b/uniapps/drone-app/cz.config.js
new file mode 100644
index 0000000..cb44b17
--- /dev/null
+++ b/uniapps/drone-app/cz.config.js
@@ -0,0 +1,58 @@
+/** @type {import('cz-git').CommitizenGitOptions} */
+export default {
+ alias: { fd: 'docs: fix typos' },
+ messages: {
+ type: '选择你要提交的类型 :',
+ scope: '选择一个提交范围(可选):',
+ customScope: '请输入自定义的提交范围 :',
+ subject: '填写简短精炼的变更描述 :\n',
+ body: '填写更加详细的变更描述(可选)。使用 \'|\' 换行 :\n',
+ breaking: '列举非兼容性重大的变更(可选)。使用 \'|\' 换行 :\n',
+ footerPrefixesSelect: '选择关联issue前缀(可选):',
+ customFooterPrefix: '输入自定义issue前缀 :',
+ footer: '列举关联issue (可选) 例如: #31, #I3244 :\n',
+ confirmCommit: '是否提交或修改commit ?',
+ },
+ types: [
+ { value: 'feat', name: 'feat: 新增功能 | A new feature', emoji: ':sparkles:' },
+ { value: 'fix', name: 'fix: 修复缺陷 | A bug fix', emoji: ':bug:' },
+ { value: 'docs', name: 'docs: 文档更新 | Documentation only changes', emoji: ':memo:' },
+ { value: 'style', name: 'style: 代码格式 | Changes that do not affect the meaning of the code', emoji: ':lipstick:' },
+ { value: 'refactor', name: 'refactor: 代码重构 | A code change that neither fixes a bug nor adds a feature', emoji: ':recycle:' },
+ { value: 'perf', name: 'perf: 性能提升 | A code change that improves performance', emoji: ':zap:' },
+ { value: 'test', name: 'test: 测试相关 | Adding missing tests or correcting existing tests', emoji: ':white_check_mark:' },
+ { value: 'build', name: 'build: 构建相关 | Changes that affect the build system or external dependencies', emoji: ':package:' },
+ { value: 'ci', name: 'ci: 持续集成 | Changes to our CI configuration files and scripts', emoji: ':ferris_wheel:' },
+ { value: 'chore', name: 'chore: 其他修改 | Other changes that don\'t modify src or test files', emoji: ':hammer:' },
+ { value: 'revert', name: 'revert: 回退代码 | Reverts a previous commit', emoji: ':rewind:' },
+ ],
+ useEmoji: false,
+ emojiAlign: 'center',
+ useAI: false,
+ aiNumber: 1,
+ themeColorCode: '',
+ scopes: [],
+ allowCustomScopes: true,
+ allowEmptyScopes: true,
+ customScopesAlign: 'bottom',
+ customScopesAlias: 'custom',
+ emptyScopesAlias: 'empty',
+ upperCaseSubject: false,
+ markBreakingChangeMode: false,
+ allowBreakingChanges: ['feat', 'fix'],
+ breaklineNumber: 100,
+ breaklineChar: '|',
+ skipQuestions: [],
+ issuePrefixes: [{ value: 'closed', name: 'closed: 标记 ISSUES 已完成' }],
+ customIssuePrefixAlign: 'top',
+ emptyIssuePrefixAlias: 'skip',
+ customIssuePrefixAlias: 'custom',
+ allowCustomIssuePrefix: true,
+ allowEmptyIssuePrefix: true,
+ confirmColorize: true,
+ minSubjectLength: 0,
+ defaultBody: '',
+ defaultIssues: '',
+ defaultScope: '',
+ defaultSubject: '',
+}
diff --git a/uniapps/drone-app/env/.env b/uniapps/drone-app/env/.env
new file mode 100644
index 0000000..695ff20
--- /dev/null
+++ b/uniapps/drone-app/env/.env
@@ -0,0 +1,17 @@
+# 页面标题
+VITE_APP_TITLE=uniapp-vue3模板项目
+
+# 开发环境配置
+VITE_APP_ENV=development
+
+# 端口号
+VITE_APP_PORT=9527
+
+# h5是否需要配置代理
+VITE_APP_PROXY=true
+
+# API代理前缀
+VITE_API_PREFIX=/api
+
+# 删除console
+VITE_DROP_CONSOLE=false
diff --git a/uniapps/drone-app/env/.env.development b/uniapps/drone-app/env/.env.development
new file mode 100644
index 0000000..80a51c6
--- /dev/null
+++ b/uniapps/drone-app/env/.env.development
@@ -0,0 +1,5 @@
+# 开发环境配置
+VITE_APP_ENV=development
+
+# 删除console
+VITE_DROP_CONSOLE=false
diff --git a/uniapps/drone-app/env/.env.production b/uniapps/drone-app/env/.env.production
new file mode 100644
index 0000000..15e9377
--- /dev/null
+++ b/uniapps/drone-app/env/.env.production
@@ -0,0 +1,5 @@
+# 生产环境配置
+VITE_APP_ENV=production
+
+# 删除console
+VITE_DROP_CONSOLE=false
diff --git a/uniapps/drone-app/eslint.config.js b/uniapps/drone-app/eslint.config.js
new file mode 100644
index 0000000..b39bb01
--- /dev/null
+++ b/uniapps/drone-app/eslint.config.js
@@ -0,0 +1,54 @@
+import antfu from '@antfu/eslint-config'
+
+export default antfu(
+ {
+ unocss: true,
+ node: true,
+ ignores: [
+ 'dist/**',
+ '.vscode/**',
+ '.idea/**',
+ 'node_modules/**',
+ 'src/uni_modules/**',
+ 'src/manifest.json',
+ 'src/pages.json',
+ 'README.md',
+ ],
+ },
+ {
+ rules: {
+ // vue顶级标签的顺序
+ 'vue/block-order': ['error', {
+ order: ['template', 'script', 'style'],
+ }],
+ // 不需要尾随逗号
+ 'comma-dangle': ['error', 'never'],
+ // 允许console
+ 'no-console': 'off',
+ // 不需要分号
+ 'style/semi': ['error', 'never'],
+ // 块内的空行
+ 'padded-blocks': ['error', 'never'],
+ // 顶级函数应使用 function 关键字声明
+ 'antfu/top-level-function': 'off',
+ // 全局的 process 不能用
+ 'node/prefer-global/process': 'off',
+ // 禁止未使用的捕获组
+ 'regexp/no-unused-capturing-group': 'off',
+ // 允许接口和类型别名中的成员之间不使用分隔符
+ 'style/member-delimiter-style': ['error', {
+ multiline: {
+ delimiter: 'none',
+ requireLast: false,
+ },
+ singleline: {
+ delimiter: 'none',
+ requireLast: false,
+ },
+ multilineDetection: 'brackets',
+ }],
+ // if 语句后需要换行
+ 'antfu/if-newline': 'off',
+ },
+ },
+)
diff --git a/uniapps/drone-app/index.html b/uniapps/drone-app/index.html
new file mode 100644
index 0000000..0eb45d2
--- /dev/null
+++ b/uniapps/drone-app/index.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html lang="zh-CN">
+ <head>
+ <meta charset="UTF-8" />
+ <script>
+ var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
+ CSS.supports('top: constant(a)'))
+ document.write(
+ '<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
+ (coverSupport ? ', viewport-fit=cover' : '') + '" />')
+ </script>
+ <title></title>
+ <!--preload-links-->
+ <!--app-context-->
+ </head>
+ <body>
+ <div id="app"><!--app-html--></div>
+ <script type="module" src="/src/main.js"></script>
+ </body>
+</html>
diff --git a/uniapps/drone-app/package.json b/uniapps/drone-app/package.json
new file mode 100644
index 0000000..b249848
--- /dev/null
+++ b/uniapps/drone-app/package.json
@@ -0,0 +1,154 @@
+{
+ "name": "uniapp-vue3-project",
+ "type": "module",
+ "version": "1.5.0",
+ "description": "掌控智飞",
+ "author": {
+ "name": "ztzf"
+ },
+ "license": "MIT",
+ "homepage": "https://github.com/oyjt/uniapp-vue3-template",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/oyjt/uniapp-vue3-template.git"
+ },
+ "keywords": [],
+ "scripts": {
+ "preinstall": "npx only-allow pnpm",
+ "uvm": "npx @dcloudio/uvm@latest",
+ "uvm-rm": "node ./scripts/post-upgrade.js",
+ "dev:h5": "uni",
+ "dev:h5:ssr": "uni --ssr",
+ "dev:h5-test": "uni --mode test",
+ "dev:h5-pro": "uni --mode production",
+ "dev:mp-weixin": "uni -p mp-weixin",
+ "dev:mp-weixin-test": "uni -p mp-weixin --mode test",
+ "dev:mp-weixin-prod": "uni -p mp-weixin --mode production",
+ "dev:app": "uni -p app",
+ "dev:app-android": "uni -p app-android",
+ "dev:app-ios": "uni -p app-ios",
+ "build:h5": "uni build",
+ "build:h5:ssr": "uni build --ssr",
+ "build:h5-test": "uni build --mode test",
+ "build:h5-prod": "uni build --mode production",
+ "build:mp-weixin": "uni build -p mp-weixin",
+ "build:mp-weixin-test": "uni build -p mp-weixin --mode test",
+ "build:mp-weixin-prod": "uni build -p mp-weixin --mode production",
+ "build:app": "uni build -p app",
+ "build:app-android": "uni build -p app-android",
+ "build:app-ios": "uni build -p app-ios",
+ "eslint": "eslint \"src/**/*.{js,jsx,ts,tsx,vue}\"",
+ "eslint:fix": "eslint \"src/**/*.{js,jsx,ts,tsx,vue}\" --fix",
+ "stylelint": "stylelint \"src/**/*.{vue,scss,css,sass,less}\"",
+ "stylelint:fix": "stylelint \"src/**/*.{vue,scss,css,sass,less}\" --fix",
+ "cz": "git add . && npx czg",
+ "clean": "npx rimraf node_modules",
+ "clean:cache": "npx rimraf node_modules/.cache"
+ },
+ "dependencies": {
+ "@dcloudio/uni-app": "3.0.0-4070520250711001",
+ "@dcloudio/uni-app-harmony": "3.0.0-4070520250711001",
+ "@dcloudio/uni-app-plus": "3.0.0-4070520250711001",
+ "@dcloudio/uni-components": "3.0.0-4070520250711001",
+ "@dcloudio/uni-h5": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-alipay": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-baidu": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-harmony": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-jd": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-kuaishou": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-lark": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-qq": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-toutiao": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-weixin": "3.0.0-4070520250711001",
+ "@dcloudio/uni-mp-xhs": "3.0.0-4070520250711001",
+ "@dcloudio/uni-quickapp-webview": "3.0.0-4070520250711001",
+ "@dcloudio/uni-ui": "^1.5.11",
+ "dayjs": "^1.11.18",
+ "js-audio-recorder": "^1.0.7",
+ "js-base64": "^3.7.4",
+ "js-md5": "^0.7.3",
+ "leaflet": "^1.9.4",
+ "pinia": "2.2.4",
+ "pinia-plugin-persistedstate": "4.1.3",
+ "trtc-sdk-v5": "^5.14.1",
+ "uview-plus": "^3.5.41",
+ "vue": "3.4.21",
+ "vue-i18n": "9.1.9",
+ "z-paging": "^2.8.8"
+ },
+ "devDependencies": {
+ "@antfu/eslint-config": "5.0.0",
+ "@dcloudio/uni-automator": "3.0.0-4070520250711001",
+ "@dcloudio/uni-cli-shared": "3.0.0-4070520250711001",
+ "@dcloudio/uni-stacktracey": "3.0.0-4070520250711001",
+ "@dcloudio/vite-plugin-uni": "3.0.0-4070520250711001",
+ "@esbuild/darwin-arm64": "0.25.1",
+ "@esbuild/darwin-x64": "0.25.1",
+ "@iconify-json/mdi": "^1.2.3",
+ "@rollup/rollup-darwin-arm64": "4.38.0",
+ "@rollup/rollup-darwin-x64": "4.38.0",
+ "@unocss/eslint-plugin": "^66.3.3",
+ "@unocss/preset-icons": "^66.3.3",
+ "@vue/runtime-core": "^3.4.21",
+ "czg": "^1.12.0",
+ "eslint": "^9.32.0",
+ "lint-staged": "^16.1.6",
+ "miniprogram-api-typings": "^4.1.0",
+ "picocolors": "^1.1.1",
+ "rimraf": "^6.0.1",
+ "rollup-plugin-visualizer": "^6.0.3",
+ "sass": "1.79.6",
+ "sass-loader": "^16.0.4",
+ "stylelint": "^16.23.0",
+ "stylelint-config-recess-order": "^6.1.0",
+ "stylelint-config-standard": "^39.0.0",
+ "stylelint-config-standard-vue": "^1.0.0",
+ "unocss": "65.5.0",
+ "unocss-preset-weapp": "^66.0.2",
+ "unplugin-auto-import": "19.3.0",
+ "unplugin-vue-components": "^28.8.0",
+ "vite": "5.2.8",
+ "vite-plugin-clean-build": "^1.4.1",
+ "vite-plugin-replace-image-url": "^1.4.1",
+ "vite-plugin-restart": "^1.0.0",
+ "vite-plugin-vue-mcp": "^0.3.2"
+ },
+ "pnpm": {
+ "overrides": {
+ "vue": "3.4.21"
+ }
+ },
+ "lint-staged": {
+ "src/**/*.{js,jsx}": "eslint --fix",
+ "*.{scss,css,style,html}": "stylelint --fix",
+ "*.vue": [
+ "eslint --fix",
+ "stylelint --fix"
+ ]
+ },
+ "uni-app": {
+ "scripts": {
+ "h5-dev": {
+ "title": "H5 开发环境",
+ "env": {
+ "UNI_PLATFORM": "h5",
+ "ENV_NAME": "development"
+ }
+ },
+ "h5-test": {
+ "title": "H5 测试环境",
+ "env": {
+ "UNI_PLATFORM": "h5",
+ "ENV_NAME": "test"
+ }
+ },
+ "h5-prod": {
+ "title": "H5 生产环境",
+ "env": {
+ "UNI_PLATFORM": "h5",
+ "ENV_NAME": "production"
+ }
+ }
+ }
+ }
+}
diff --git a/uniapps/drone-app/pnpm-lock.yaml b/uniapps/drone-app/pnpm-lock.yaml
new file mode 100644
index 0000000..5c00a05
--- /dev/null
+++ b/uniapps/drone-app/pnpm-lock.yaml
@@ -0,0 +1,11430 @@
+lockfileVersion: '6.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+overrides:
+ vue: 3.4.21
+
+dependencies:
+ '@dcloudio/uni-app':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@dcloudio/types@3.4.22)(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-app-harmony':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ '@dcloudio/uni-app-plus':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ '@dcloudio/uni-components':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-h5':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-alipay':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-baidu':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(@dcloudio/types@3.4.22)(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-harmony':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-jd':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-kuaishou':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-lark':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-qq':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-toutiao':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-weixin':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-xhs':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-quickapp-webview':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-ui':
+ specifier: ^1.5.11
+ version: 1.5.11
+ dayjs:
+ specifier: ^1.11.18
+ version: 1.11.18
+ js-audio-recorder:
+ specifier: ^1.0.7
+ version: 1.0.7
+ js-base64:
+ specifier: ^3.7.4
+ version: 3.7.4
+ js-md5:
+ specifier: ^0.7.3
+ version: 0.7.3
+ leaflet:
+ specifier: ^1.9.4
+ version: 1.9.4
+ pinia:
+ specifier: 2.2.4
+ version: 2.2.4(typescript@5.9.3)(vue@3.4.21)
+ pinia-plugin-persistedstate:
+ specifier: 4.1.3
+ version: 4.1.3(pinia@2.2.4)
+ trtc-sdk-v5:
+ specifier: ^5.14.1
+ version: 5.14.1
+ uview-plus:
+ specifier: ^3.5.41
+ version: 3.5.41
+ vue:
+ specifier: 3.4.21
+ version: 3.4.21(typescript@5.9.3)
+ vue-i18n:
+ specifier: 9.1.9
+ version: 9.1.9(vue@3.4.21)
+ z-paging:
+ specifier: ^2.8.8
+ version: 2.8.8
+
+devDependencies:
+ '@antfu/eslint-config':
+ specifier: 5.0.0
+ version: 5.0.0(@unocss/eslint-plugin@66.3.3)(@vue/compiler-sfc@3.5.22)(eslint@9.32.0)(typescript@5.9.3)
+ '@dcloudio/uni-automator':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(jest-environment-node@27.5.1)(jest@27.0.4)(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-cli-shared':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-stacktracey':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001
+ '@dcloudio/vite-plugin-uni':
+ specifier: 3.0.0-4070520250711001
+ version: 3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ '@esbuild/darwin-arm64':
+ specifier: 0.25.1
+ version: 0.25.1
+ '@esbuild/darwin-x64':
+ specifier: 0.25.1
+ version: 0.25.1
+ '@iconify-json/mdi':
+ specifier: ^1.2.3
+ version: 1.2.3
+ '@rollup/rollup-darwin-arm64':
+ specifier: 4.38.0
+ version: 4.38.0
+ '@rollup/rollup-darwin-x64':
+ specifier: 4.38.0
+ version: 4.38.0
+ '@unocss/eslint-plugin':
+ specifier: ^66.3.3
+ version: 66.3.3(eslint@9.32.0)(typescript@5.9.3)
+ '@unocss/preset-icons':
+ specifier: ^66.3.3
+ version: 66.3.3
+ '@vue/runtime-core':
+ specifier: ^3.4.21
+ version: 3.4.21
+ czg:
+ specifier: ^1.12.0
+ version: 1.12.0
+ eslint:
+ specifier: ^9.32.0
+ version: 9.32.0
+ lint-staged:
+ specifier: ^16.1.6
+ version: 16.1.6
+ miniprogram-api-typings:
+ specifier: ^4.1.0
+ version: 4.1.0
+ picocolors:
+ specifier: ^1.1.1
+ version: 1.1.1
+ rimraf:
+ specifier: ^6.0.1
+ version: 6.0.1
+ rollup-plugin-visualizer:
+ specifier: ^6.0.3
+ version: 6.0.3
+ sass:
+ specifier: 1.79.6
+ version: 1.79.6
+ sass-loader:
+ specifier: ^16.0.4
+ version: 16.0.4(sass@1.79.6)
+ stylelint:
+ specifier: ^16.23.0
+ version: 16.23.0(typescript@5.9.3)
+ stylelint-config-recess-order:
+ specifier: ^6.1.0
+ version: 6.1.0(stylelint@16.23.0)
+ stylelint-config-standard:
+ specifier: ^39.0.0
+ version: 39.0.0(stylelint@16.23.0)
+ stylelint-config-standard-vue:
+ specifier: ^1.0.0
+ version: 1.0.0(postcss-html@1.8.0)(stylelint@16.23.0)
+ unocss:
+ specifier: 65.5.0
+ version: 65.5.0(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ unocss-preset-weapp:
+ specifier: ^66.0.2
+ version: 66.0.2(vite@5.2.8)
+ unplugin-auto-import:
+ specifier: 19.3.0
+ version: 19.3.0
+ unplugin-vue-components:
+ specifier: ^28.8.0
+ version: 28.8.0(vue@3.4.21)
+ vite:
+ specifier: 5.2.8
+ version: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ vite-plugin-clean-build:
+ specifier: ^1.4.1
+ version: 1.4.1(vite@5.2.8)
+ vite-plugin-replace-image-url:
+ specifier: ^1.4.1
+ version: 1.4.1(vite@5.2.8)
+ vite-plugin-restart:
+ specifier: ^1.0.0
+ version: 1.0.0(vite@5.2.8)
+ vite-plugin-vue-mcp:
+ specifier: ^0.3.2
+ version: 0.3.2(vite@5.2.8)(vue@3.4.21)
+
+packages:
+
+ /@ampproject/remapping@2.3.0:
+ resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ /@antfu/eslint-config@5.0.0(@unocss/eslint-plugin@66.3.3)(@vue/compiler-sfc@3.5.22)(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-uAMv8PiW9BOAGmIyTDtWXGnNfv6PFV4DmpqmlUpST5k4bue38VRdIfnM4jvgPuny1xnjYX3flN3kB9++6LknMw==}
+ hasBin: true
+ peerDependencies:
+ '@eslint-react/eslint-plugin': ^1.38.4
+ '@next/eslint-plugin-next': ^15.4.0-canary.115
+ '@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-react-hooks: ^5.2.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-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
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@clack/prompts': 0.11.0
+ '@eslint-community/eslint-plugin-eslint-comments': 4.5.0(eslint@9.32.0)
+ '@eslint/markdown': 7.4.0
+ '@stylistic/eslint-plugin': 5.4.0(eslint@9.32.0)
+ '@typescript-eslint/eslint-plugin': 8.46.0(@typescript-eslint/parser@8.46.0)(eslint@9.32.0)(typescript@5.9.3)
+ '@typescript-eslint/parser': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ '@unocss/eslint-plugin': 66.3.3(eslint@9.32.0)(typescript@5.9.3)
+ '@vitest/eslint-plugin': 1.3.16(eslint@9.32.0)(typescript@5.9.3)
+ ansis: 4.2.0
+ cac: 6.7.14
+ eslint: 9.32.0
+ eslint-config-flat-gitignore: 2.1.0(eslint@9.32.0)
+ eslint-flat-config-utils: 2.1.4
+ eslint-merge-processors: 2.0.0(eslint@9.32.0)
+ eslint-plugin-antfu: 3.1.1(eslint@9.32.0)
+ eslint-plugin-command: 3.3.1(eslint@9.32.0)
+ eslint-plugin-import-lite: 0.3.0(eslint@9.32.0)(typescript@5.9.3)
+ eslint-plugin-jsdoc: 51.4.1(eslint@9.32.0)
+ eslint-plugin-jsonc: 2.21.0(eslint@9.32.0)
+ eslint-plugin-n: 17.23.1(eslint@9.32.0)(typescript@5.9.3)
+ eslint-plugin-no-only-tests: 3.3.0
+ eslint-plugin-perfectionist: 4.15.1(eslint@9.32.0)(typescript@5.9.3)
+ eslint-plugin-pnpm: 1.2.0(eslint@9.32.0)
+ eslint-plugin-regexp: 2.10.0(eslint@9.32.0)
+ eslint-plugin-toml: 0.12.0(eslint@9.32.0)
+ eslint-plugin-unicorn: 60.0.0(eslint@9.32.0)
+ eslint-plugin-unused-imports: 4.2.0(@typescript-eslint/eslint-plugin@8.46.0)(eslint@9.32.0)
+ eslint-plugin-vue: 10.5.0(@stylistic/eslint-plugin@5.4.0)(@typescript-eslint/parser@8.46.0)(eslint@9.32.0)(vue-eslint-parser@10.2.0)
+ eslint-plugin-yml: 1.19.0(eslint@9.32.0)
+ eslint-processor-vue-blocks: 2.0.0(@vue/compiler-sfc@3.5.22)(eslint@9.32.0)
+ globals: 16.4.0
+ jsonc-eslint-parser: 2.4.1
+ local-pkg: 1.1.2
+ parse-gitignore: 2.0.0
+ toml-eslint-parser: 0.10.0
+ vue-eslint-parser: 10.2.0(eslint@9.32.0)
+ yaml-eslint-parser: 1.3.0
+ transitivePeerDependencies:
+ - '@eslint/json'
+ - '@vue/compiler-sfc'
+ - supports-color
+ - typescript
+ - vitest
+ dev: true
+
+ /@antfu/install-pkg@1.1.0:
+ resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==}
+ dependencies:
+ package-manager-detector: 1.4.0
+ tinyexec: 1.0.1
+ dev: true
+
+ /@antfu/utils@8.1.1:
+ resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==}
+ dev: true
+
+ /@antfu/utils@9.3.0:
+ resolution: {integrity: sha512-9hFT4RauhcUzqOE4f1+frMKLZrgNog5b06I7VmZQV1BkvwvqrbC8EBZf3L1eEL2AKb6rNKjER0sEvJiSP1FXEA==}
+ dev: true
+
+ /@babel/code-frame@7.27.1:
+ resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-validator-identifier': 7.27.1
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
+ /@babel/compat-data@7.28.4:
+ resolution: {integrity: sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw==}
+ engines: {node: '>=6.9.0'}
+
+ /@babel/core@7.28.4:
+ resolution: {integrity: sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.3
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4)
+ '@babel/helpers': 7.28.4
+ '@babel/parser': 7.28.4
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ '@jridgewell/remapping': 2.3.5
+ convert-source-map: 2.0.0
+ debug: 4.4.3
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ /@babel/generator@7.28.3:
+ resolution: {integrity: sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ jsesc: 3.1.0
+
+ /@babel/helper-annotate-as-pure@7.27.3:
+ resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/types': 7.28.4
+ dev: true
+
+ /@babel/helper-compilation-targets@7.27.2:
+ resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/compat-data': 7.28.4
+ '@babel/helper-validator-option': 7.27.1
+ browserslist: 4.26.3
+ lru-cache: 5.1.1
+ semver: 6.3.1
+
+ /@babel/helper-create-class-features-plugin@7.28.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-V9f6ZFIYSLNEbuGA/92uOvYsGCJNsuA8ESZ4ldc09bWk/j8H8TKiPw8Mk1eG6olpnO0ALHJmYfZvF4MEE4gajg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-member-expression-to-functions': 7.27.1
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/traverse': 7.28.4
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-create-regexp-features-plugin@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ regexpu-core: 6.4.0
+ semver: 6.3.1
+ dev: true
+
+ /@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.4):
+ resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ debug: 4.4.3
+ lodash.debounce: 4.0.8
+ resolve: 1.22.10
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-globals@7.28.0:
+ resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==}
+ engines: {node: '>=6.9.0'}
+
+ /@babel/helper-member-expression-to-functions@7.27.1:
+ resolution: {integrity: sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-module-imports@7.27.1:
+ resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+
+ /@babel/helper-module-transforms@7.28.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-validator-identifier': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+
+ /@babel/helper-optimise-call-expression@7.27.1:
+ resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/types': 7.28.4
+ dev: true
+
+ /@babel/helper-plugin-utils@7.27.1:
+ resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
+ engines: {node: '>=6.9.0'}
+ dev: true
+
+ /@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-wrap-function': 7.28.3
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-replace-supers@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-member-expression-to-functions': 7.27.1
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-skip-transparent-expression-wrappers@7.27.1:
+ resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helper-string-parser@7.27.1:
+ resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
+ engines: {node: '>=6.9.0'}
+
+ /@babel/helper-validator-identifier@7.27.1:
+ resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
+ engines: {node: '>=6.9.0'}
+
+ /@babel/helper-validator-option@7.27.1:
+ resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
+ engines: {node: '>=6.9.0'}
+
+ /@babel/helper-wrap-function@7.28.3:
+ resolution: {integrity: sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/helpers@7.28.4:
+ resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.4
+
+ /@babel/parser@7.28.4:
+ resolution: {integrity: sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+ dependencies:
+ '@babel/types': 7.28.4
+
+ /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.13.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-transform-optional-chaining': 7.27.1(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.4):
+ resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ dev: true
+
+ /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.28.4):
+ resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.28.4):
+ resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.28.4):
+ resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.28.4):
+ resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.4):
+ resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.4)
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-block-scoping@7.28.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-1yxmvN0MJHOhPVmAsmoW5liWwoILobu/d/ShymZmj867bAdxGbehIrew1DuLpw2Ukv+qDSSPQdYW1dLNE7t11A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-class-features-plugin': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.12.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-class-features-plugin': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-globals': 7.28.0
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.4)
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/template': 7.27.2
+ dev: true
+
+ /@babel/plugin-transform-destructuring@7.28.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-v1nrSMBiKcodhsyJ4Gf+Z0U/yawmJDBOTpEB3mcQY52r9RIyPneGyAS/yM6seP/8I+mWI3elOMtT5dB8GJVs+A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.0(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-exponentiation-operator@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-logical-assignment-operators@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-modules-systemjs@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-identifier': 7.27.1
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.0(@babel/core@7.28.4)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.4)
+ '@babel/traverse': 7.28.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-optional-chaining@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.4):
+ resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-class-features-plugin': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.4):
+ resolution: {integrity: sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-typescript@7.28.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.3(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.28.4)
+ '@babel/helper-plugin-utils': 7.27.1
+ dev: true
+
+ /@babel/preset-env@7.28.3(@babel/core@7.28.4):
+ resolution: {integrity: sha512-ROiDcM+GbYVPYBOeCR6uBXKkQpBExLl8k9HO1ygXEyds39j+vCCsjmj7S8GOniZQlEs81QlkdJZe76IpLSiqpg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/compat-data': 7.28.4
+ '@babel/core': 7.28.4
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.4)
+ '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.4)
+ '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.4)
+ '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.4)
+ '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-block-scoping': 7.28.4(@babel/core@7.28.4)
+ '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.4)
+ '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.4)
+ '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-destructuring': 7.28.0(@babel/core@7.28.4)
+ '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.4)
+ '@babel/plugin-transform-exponentiation-operator': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-logical-assignment-operators': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-modules-systemjs': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.4)
+ '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-optional-chaining': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.4)
+ '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.4)
+ '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.4)
+ '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.4)
+ babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.4)
+ babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.4)
+ babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.4)
+ core-js-compat: 3.45.1
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.4):
+ resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/types': 7.28.4
+ esutils: 2.0.3
+ dev: true
+
+ /@babel/runtime@7.28.4:
+ resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==}
+ engines: {node: '>=6.9.0'}
+ dev: false
+
+ /@babel/template@7.27.2:
+ resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+
+ /@babel/traverse@7.28.4:
+ resolution: {integrity: sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.3
+ '@babel/helper-globals': 7.28.0
+ '@babel/parser': 7.28.4
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.4
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ /@babel/types@7.28.4:
+ resolution: {integrity: sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-string-parser': 7.27.1
+ '@babel/helper-validator-identifier': 7.27.1
+
+ /@bcoe/v8-coverage@0.2.3:
+ resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
+ dev: true
+
+ /@cacheable/memoize@2.0.3:
+ resolution: {integrity: sha512-hl9wfQgpiydhQEIv7fkjEzTGE+tcosCXLKFDO707wYJ/78FVOlowb36djex5GdbSyeHnG62pomYLMuV/OT8Pbw==}
+ dependencies:
+ '@cacheable/utils': 2.1.0
+ dev: true
+
+ /@cacheable/memory@2.0.3:
+ resolution: {integrity: sha512-R3UKy/CKOyb1LZG/VRCTMcpiMDyLH7SH3JrraRdK6kf3GweWCOU3sgvE13W3TiDRbxnDKylzKJvhUAvWl9LQOA==}
+ dependencies:
+ '@cacheable/memoize': 2.0.3
+ '@cacheable/utils': 2.1.0
+ '@keyv/bigmap': 1.0.2
+ hookified: 1.12.1
+ keyv: 5.5.3
+ dev: true
+
+ /@cacheable/utils@2.1.0:
+ resolution: {integrity: sha512-ZdxfOiaarMqMj+H7qwlt5EBKWaeGihSYVHdQv5lUsbn8MJJOTW82OIwirQ39U5tMZkNvy3bQE+ryzC+xTAb9/g==}
+ dependencies:
+ keyv: 5.5.3
+ dev: true
+
+ /@clack/core@0.5.0:
+ resolution: {integrity: sha512-p3y0FIOwaYRUPRcMO7+dlmLh8PSRcrjuTndsiA0WAFbWES0mLZlrjVoBRZ9DzkPFJZG6KGkJmoEAY0ZcVWTkow==}
+ dependencies:
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
+ dev: true
+
+ /@clack/prompts@0.11.0:
+ resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==}
+ dependencies:
+ '@clack/core': 0.5.0
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
+ dev: true
+
+ /@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4):
+ resolution: {integrity: sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-tokenizer': ^3.0.4
+ dependencies:
+ '@csstools/css-tokenizer': 3.0.4
+ dev: true
+
+ /@csstools/css-tokenizer@3.0.4:
+ resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /@csstools/media-query-list-parser@4.0.3(@csstools/css-parser-algorithms@3.0.5)(@csstools/css-tokenizer@3.0.4):
+ resolution: {integrity: sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ dev: true
+
+ /@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.0):
+ resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
+ dependencies:
+ postcss-selector-parser: 7.1.0
+ dev: true
+
+ /@dcloudio/types@3.4.22:
+ resolution: {integrity: sha512-qVDGe+eZW2ONGbMfVn1XDelculyfcXYk3d/Dos+6Pddc3x9SBlQVY5HYoKzJrnIMjnlLJMbckiF5y1EjTFvWPQ==}
+ dev: false
+
+ /@dcloudio/uni-app-harmony@3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-7ZaxPGaMR3kZzNLPdgLNVMaF4Yenl1Bk3MOudfpmgpCdHRU3hRQkugJYs4QlUrmg/kmhqPsLmvnkTjbXKRaojQ==}
+ dependencies:
+ '@dcloudio/uni-app-uts': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-app-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ licia: 1.48.0
+ postcss-selector-parser: 6.1.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+ dev: false
+
+ /@dcloudio/uni-app-plus@3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-8WA1sC+bnW2tpQVOzHOEZrR6Bmq1/dYkOOqdXAfMgTjjNAEcIdGiGcnVvu/JPIk6oznAHc8A54ohyp1knhh+Vw==}
+ dependencies:
+ '@dcloudio/uni-app-uts': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-app-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21)
+ '@dcloudio/uni-app-vue': 3.0.0-4070520250711001
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ licia: 1.48.0
+ postcss-selector-parser: 6.1.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+ dev: false
+
+ /@dcloudio/uni-app-uts@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-7/0VMAwNrgTXGdLBDT3VmvPo1kYQDIJJu564MqMLHL7OGPFZJ6d85VYlHUWgEKDirD3Q/fKhpjGDLVffLiwORw==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-console': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-nvue-styler': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ '@rollup/pluginutils': 5.3.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.4.3
+ es-module-lexer: 1.7.0
+ estree-walker: 2.0.2
+ fast-glob: 3.3.3
+ fs-extra: 10.1.0
+ magic-string: 0.30.19
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
+ unimport: 4.1.1
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-app-vite@3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-N7lwSgr2oftcG0rHFjNDmzxnuON+alG2ldF5+0coGYUZT+VQNok6DKljiXrPK2FNonipyXiI3hHIwisgJbSS6A==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-nvue-styler': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0
+ '@vitejs/plugin-vue': 5.1.0(vite@5.2.8)(vue@3.4.21)
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ picocolors: 1.1.1
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vite
+ - vue
+ dev: false
+
+ /@dcloudio/uni-app-vue@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-/ISF+1xrcvUtcote+LfLyk/pyizTjEY6/3HZgBsOfXchkZBz0fkTWgnj5RHYeqwD7aHLsOJX93eaazNMnzD9Zw==}
+ dev: false
+
+ /@dcloudio/uni-app@3.0.0-4070520250711001(@dcloudio/types@3.4.22)(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-rR1SGJknJyDy80vb47yDICXcZrV11KJ5yhNG8aC+kH2ZL338faBrdOQgqqN/XJegVxJdTfv1KqUXuaShMWTZGA==}
+ peerDependencies:
+ '@dcloudio/types': ^3.4.14
+ dependencies:
+ '@dcloudio/types': 3.4.22
+ '@dcloudio/uni-cloud': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-components': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-console': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-push': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@dcloudio/uni-stat': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-automator@3.0.0-4070520250711001(jest-environment-node@27.5.1)(jest@27.0.4)(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-ETBiJ9b94YeBQDNU6LXm21XsyltnyP5MU7ZioIwB30StYbn1ydOHCofSHqmAQVDdWhfvOAxb75oEjW9uas2VoQ==}
+ peerDependencies:
+ jest: 27.0.4
+ jest-environment-node: 27.5.1
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ address: 1.2.2
+ cross-env: 7.0.3
+ debug: 4.4.3
+ default-gateway: 6.0.3
+ fs-extra: 10.1.0
+ jest: 27.0.4
+ jest-environment-node: 27.5.1
+ jsonc-parser: 3.3.1
+ licia: 1.48.0
+ merge: 2.1.1
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+ dev: true
+
+ /@dcloudio/uni-cli-shared@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-/IQgZzTtYbJoh28Z2v9jgX6lwd7Gwc7aU/JbzGbIJrDCnXaCm1pDZduLb3a7C3YKDMoMU/f9Qb9LHK0NL8iYfg==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@babel/code-frame': 7.27.1
+ '@babel/core': 7.28.4
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@intlify/core-base': 9.1.9
+ '@intlify/shared': 9.1.9
+ '@intlify/vue-devtools': 9.1.9
+ '@rollup/pluginutils': 5.3.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@3.4.21)
+ '@vue/shared': 3.4.21
+ adm-zip: 0.5.16
+ autoprefixer: 10.4.21(postcss@8.5.6)
+ base64url: 3.0.1
+ chokidar: 3.6.0
+ compare-versions: 3.6.0
+ debug: 4.4.3
+ entities: 4.5.0
+ es-module-lexer: 1.7.0
+ 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.6
+ jsonc-parser: 3.3.1
+ lines-and-columns: 2.0.4
+ magic-string: 0.30.19
+ 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.1
+ postcss-import: 14.1.0(postcss@8.5.6)
+ postcss-load-config: 3.1.4(postcss@8.5.6)
+ postcss-modules: 4.3.1(postcss@8.5.6)
+ postcss-selector-parser: 6.1.2
+ resolve: 1.22.10
+ source-map-js: 1.2.1
+ tapable: 2.3.0
+ unimport: 4.1.1
+ unplugin-auto-import: 19.1.0
+ xregexp: 3.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+
+ /@dcloudio/uni-cloud@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-Gn6dqVktJrScW9YFmC+DeW0e6K0s8lolYrlllnykAnuWE0ThXJA0eJOV1AHwyr4xHgE6XL5S9JrDZzS6HHyzIw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ fast-glob: 3.3.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-components@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-uAAkJ2wErew1ahGXIh867MygEmtaffz2vxox4i0/LG8AMSb0rnKzXMYbT3+9K+Rs4/NWH3jQPRDpxjgos5hlEg==}
+ dependencies:
+ '@dcloudio/uni-cloud': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-h5': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-console@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-9vHJe5p+DhRPzRrL2g49n2VKMncRRetsO5rVFcVxYR57OY6lryCMrU+6E69Ifbzkd7T5kvUvg5blyOCIY5rzWw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ fs-extra: 10.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-h5-vite@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-zfevmp2pnQdA9qMJx4rZLgH8H9ddZucXMefLmuSY0a3l2Unfgxew8SlT5NVVDJwqKhwOxBcZQFtGbK+X9ro55w==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ '@vue/server-renderer': 3.4.21(vue@3.4.21)
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ fs-extra: 10.1.0
+ mime: 3.0.0
+ module-alias: 2.2.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-h5-vue@3.0.0-4070520250711001(vue@3.4.21):
+ resolution: {integrity: sha512-Ws0/eJ3WZL8Ai5TlR1vt7TYqqy+MTrkoMew/9BScMXKPH58BfjceIxNYTIoYqo21K5DUL4v7ZMqceJKm+jm4gA==}
+ dependencies:
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/server-renderer': 3.4.21(vue@3.4.21)
+ transitivePeerDependencies:
+ - vue
+ dev: false
+
+ /@dcloudio/uni-h5@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-/nr64OZiH7BOijqwNei/WH09pfC0PQiplM/mG4Q5zz6v9k+mRfE7xL5iRybCKqzfGYwOBX0hf+RdT3tHagUZFA==}
+ dependencies:
+ '@dcloudio/uni-h5-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-h5-vue': 3.0.0-4070520250711001(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/server-renderer': 3.4.21(vue@3.4.21)
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ localstorage-polyfill: 1.0.1
+ postcss-selector-parser: 6.1.2
+ safe-area-insets: 1.4.1
+ vue-router: 4.5.1(vue@3.4.21)
+ xmlhttprequest: 1.8.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-i18n@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-0e1ULCzd3AvpenN/R3wCs7LH06zhFcW22s9Bf2x95aW5UBiHCAGchDoppPskIskStmCV3UIfAMsY9bdM3G5sPg==}
+
+ /@dcloudio/uni-mp-alipay@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-sbmk+WElbBFeEqs1iScjbyj/9iwULNlfVZLkYkZka3MpAc+gOwb8csjbnOE1d4B4uDU4nR29hBg8jB35aLPovw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-baidu@3.0.0-4070520250711001(@dcloudio/types@3.4.22)(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-7YuoKeqZQ5M/q6e9TSuasa3aoHcqFL0+wEGInYXEVPrFfy94/c39E0y39/kirtx7YM3tcIX8/h4KOBnP3V5uhA==}
+ dependencies:
+ '@dcloudio/uni-app': 3.0.0-4070520250711001(@dcloudio/types@3.4.22)(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-weixin': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ jimp: 0.10.3
+ licia: 1.48.0
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@dcloudio/types'
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-compiler@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-RJ+r4tlO5cO+MCwoL77gDzGio47Ft1KIRiL7akIwUw36jlwYCbV3dn4YrFc234bRtZb4SZ2FZ/5jGfN3ZzLBJg==}
+ dependencies:
+ '@babel/generator': 7.28.3
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/compiler-dom': 3.4.21
+ '@vue/shared': 3.4.21
+ estree-walker: 2.0.2
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-harmony@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-6m0TC6ENenHu/e66XlJhFYcvR3hFN98IqZ5ELXyuF1L8gKAizxn8t2CSPl3J0JCFHBB2/Qg0sRHRSfBzp9PPXA==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-toutiao': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-quickapp-webview': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-jd@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-mDIE6uLF+DcQ9MkSnwKanHc0r1lsQ2a4vmN2NCGJicRJ3BG8/7BmaAWzDvMq+glayBmStwGpp/52EO8+UulHJw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-kuaishou@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-aw+dvTGfhdELQSDlsg1Z+gAUjFGDbp4aS0HPcY3a8zKh3TNIQQAjuYXQVLZ/kAghwbBwB86GExz2dUW07OhaEA==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-weixin': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-lark@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-3S7Lwlv63QAEvyIj1rsLD0uJWa2A6EB0aCovZKfAOdBTjz+D862eCMKktz0Md19MgqZJwL6oK4LgVdaKjDmCeg==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-toutiao': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-qq@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-KNbUvNsieh0Ngz5xTAoEr+gtC/dbKH975Vnok5dnDknYvuUEN5dlgic2kbZ3Binrk46P18zM18t8y8ev1PAPSA==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ fs-extra: 10.1.0
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-toutiao@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-N52c+7XA4Tu2wuG6vqbkN2maOSEwlQyUwshAzPXwsv1uSDoH95YsEjQ9cVkQd+W1swSyQUXg8fQ8+P0CvKCj2w==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-vite@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-kdqRO2zkidaia0M7IeyKy3mwAYvEZCSpQ1YglIBbj/0M9qdX83JL3pcxs+DuCs6+wd+LTsheOKmpSdE02c4Rzw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-i18n': 3.0.0-4070520250711001
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/compiler-dom': 3.4.21
+ '@vue/compiler-sfc': 3.4.21
+ '@vue/shared': 3.4.21
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-vue@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-VVL4TDbJ3q2r+MKjosy7XXq4520Po/1IVqRAbrcWnwIkUYMTK5DcijAwWqgMcJGoX+t6wszlmvXGqaEzscDExA==}
+ dependencies:
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ dev: false
+
+ /@dcloudio/uni-mp-weixin@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-X2mFiIuddphj3O1NQ6ONyX1kSOKLbYTRiShgHPOvr0vAROJlYgfaWqusceOmNq6wJhwnWRGjIGwMi8nEur4+ew==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ jimp: 0.10.3
+ licia: 1.48.0
+ qrcode-reader: 1.0.4
+ qrcode-terminal: 0.12.0
+ ws: 8.18.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - bufferutil
+ - debug
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ - vue
+ dev: false
+
+ /@dcloudio/uni-mp-xhs@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-9jUxEywRmRlJxbFTv0AKeMhZ04g1O4pFISCNCDZQVz/GDv4TEUpIyOIx2h9WpLtm9G3Wilh9M3Jbwsk5cLus/g==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-compiler': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-nvue-styler@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-HdcuyOPEn7jGl0zF2SdJ9r5b1Kdmt/gGP3zNTTaDwRslnBbsH4jJ3XUBDVbn9hAv3jBWURnup2In6/omsSZZNg==}
+ dependencies:
+ parse-css-font: 4.0.0
+ postcss: 8.5.6
+ dev: false
+
+ /@dcloudio/uni-push@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-7HN9I2F2jqOq/kPu7OT1wgmamVcizCT4NWwlyF4zKPmsca70BogVBOi1MSZM1VkCAmUSlqWxyKq0xA1onJpWUw==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-quickapp-webview@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-ulVhtpPulCkcQWlPdSi246gfYsceF9b/LoLC81ob4JFAEPBx99+Ceo04Fov9MYYaShiO2f9ACjGds4UBsW6V9g==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vite': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-mp-vue': 3.0.0-4070520250711001
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@vue/shared': 3.4.21
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-shared@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-ubeXzlJ7ODcnUmec7GhbUxR2Sd6xMO4/JPqsR73fPtR0Udlzd+5nNKcPS9NkMqD4o4+/J7TpMkA6W0o67YZBiQ==}
+ dependencies:
+ '@vue/shared': 3.4.21
+
+ /@dcloudio/uni-stacktracey@3.0.0-4070520250711001:
+ resolution: {integrity: sha512-K3PZ6augveS3uNcVD1d5Cl6pU36lemguEuEasU1xVQ7MGdNR3Dm5LpmIME6326ZFR6Yt6a6lzJh2xaz7UPI0oA==}
+ dev: true
+
+ /@dcloudio/uni-stat@3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21):
+ resolution: {integrity: sha512-QOkVgNTbtd6XB6KCu0QxPXc9ejOv9Cv3MujEAJcCaoy3CT+SBPEbQVMlaa/UtP5yBpt9+xKT+atGH7R97ZsmqQ==}
+ dependencies:
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: false
+
+ /@dcloudio/uni-ui@1.5.11:
+ resolution: {integrity: sha512-DBtk046ofmeFd82zRI7d89SoEwrAxYzUN3WVPm1DIBkpLPG5F5QDNkHMnZGu2wNrMEmGBjBpUh3vqEY1L3jaMw==}
+ dev: false
+
+ /@dcloudio/vite-plugin-uni@3.0.0-4070520250711001(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-Pcd1YIPP+0hyC64oh0P3EBZGF8YHsScUS7R0wjlDGkRMsGowil0IbBE5DrmqjZ7QE+0Lau77yxfZdkSjY3gbvA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ hasBin: true
+ peerDependencies:
+ vite: ^5.2.8
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.4)
+ '@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4)
+ '@dcloudio/uni-cli-shared': 3.0.0-4070520250711001(postcss@8.5.6)(vue@3.4.21)
+ '@dcloudio/uni-shared': 3.0.0-4070520250711001
+ '@rollup/pluginutils': 5.3.0
+ '@vitejs/plugin-legacy': 5.3.2(terser@5.44.0)(vite@5.2.8)
+ '@vitejs/plugin-vue': 5.1.0(vite@5.2.8)(vue@3.4.21)
+ '@vitejs/plugin-vue-jsx': 3.1.0(vite@5.2.8)(vue@3.4.21)
+ '@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.4.3
+ estree-walker: 2.0.2
+ express: 4.21.2
+ fast-glob: 3.3.3
+ fs-extra: 10.1.0
+ hash-sum: 2.0.0
+ jsonc-parser: 3.3.1
+ magic-string: 0.30.19
+ picocolors: 1.1.1
+ terser: 5.44.0
+ unplugin-auto-import: 19.1.0
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - '@vueuse/core'
+ - postcss
+ - rollup
+ - supports-color
+ - ts-node
+ - vue
+ dev: true
+
+ /@dual-bundle/import-meta-resolve@4.2.1:
+ resolution: {integrity: sha512-id+7YRUgoUX6CgV0DtuhirQWodeeA7Lf4i2x71JS/vtA5pRb/hIGWlw+G6MeXvsM+MXrz0VAydTGElX1rAfgPg==}
+ dev: true
+
+ /@es-joy/jsdoccomment@0.50.2:
+ resolution: {integrity: sha512-YAdE/IJSpwbOTiaURNCKECdAwqrJuFiZhylmesBcIRawtYKnBR2wxPhoIewMg+Yu+QuYvHfJNReWpoxGBKOChA==}
+ engines: {node: '>=18'}
+ dependencies:
+ '@types/estree': 1.0.8
+ '@typescript-eslint/types': 8.46.0
+ comment-parser: 1.4.1
+ esquery: 1.6.0
+ jsdoc-type-pratt-parser: 4.1.0
+ dev: true
+
+ /@es-joy/jsdoccomment@0.52.0:
+ resolution: {integrity: sha512-BXuN7BII+8AyNtn57euU2Yxo9yA/KUDNzrpXyi3pfqKmBhhysR6ZWOebFh3vyPoqA3/j1SOvGgucElMGwlXing==}
+ engines: {node: '>=20.11.0'}
+ dependencies:
+ '@types/estree': 1.0.8
+ '@typescript-eslint/types': 8.46.0
+ comment-parser: 1.4.1
+ esquery: 1.6.0
+ jsdoc-type-pratt-parser: 4.1.0
+ dev: true
+
+ /@esbuild/aix-ppc64@0.20.2:
+ resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [aix]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/android-arm64@0.20.2:
+ resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/android-arm@0.20.2:
+ resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/android-x64@0.20.2:
+ resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/darwin-arm64@0.20.2:
+ resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/darwin-arm64@0.25.1:
+ resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+ dev: true
+
+ /@esbuild/darwin-x64@0.20.2:
+ resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/darwin-x64@0.25.1:
+ resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+ dev: true
+
+ /@esbuild/freebsd-arm64@0.20.2:
+ resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/freebsd-x64@0.20.2:
+ resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-arm64@0.20.2:
+ resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-arm@0.20.2:
+ resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-ia32@0.20.2:
+ resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-loong64@0.20.2:
+ resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-mips64el@0.20.2:
+ resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-ppc64@0.20.2:
+ resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-riscv64@0.20.2:
+ resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-s390x@0.20.2:
+ resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/linux-x64@0.20.2:
+ resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/netbsd-x64@0.20.2:
+ resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/openbsd-x64@0.20.2:
+ resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/sunos-x64@0.20.2:
+ resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/win32-arm64@0.20.2:
+ resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/win32-ia32@0.20.2:
+ resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@esbuild/win32-x64@0.20.2:
+ resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@eslint-community/eslint-plugin-eslint-comments@4.5.0(eslint@9.32.0):
+ resolution: {integrity: sha512-MAhuTKlr4y/CE3WYX26raZjy+I/kS2PLKSzvfmDCGrBLTFHOYwqROZdr4XwPgXwX3K9rjzMr4pSmUWGnzsUyMg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+ dependencies:
+ escape-string-regexp: 4.0.0
+ eslint: 9.32.0
+ ignore: 5.3.2
+ dev: true
+
+ /@eslint-community/eslint-utils@4.9.0(eslint@9.32.0):
+ resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ dependencies:
+ eslint: 9.32.0
+ eslint-visitor-keys: 3.4.3
+ dev: true
+
+ /@eslint-community/regexpp@4.12.1:
+ resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ dev: true
+
+ /@eslint/compat@1.4.0(eslint@9.32.0):
+ resolution: {integrity: sha512-DEzm5dKeDBPm3r08Ixli/0cmxr8LkRdwxMRUIJBlSCpAwSrvFEJpVBzV+66JhDxiaqKxnRzCXhtiMiczF7Hglg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.40 || 9
+ peerDependenciesMeta:
+ eslint:
+ optional: true
+ dependencies:
+ '@eslint/core': 0.16.0
+ eslint: 9.32.0
+ dev: true
+
+ /@eslint/config-array@0.21.0:
+ resolution: {integrity: sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@eslint/object-schema': 2.1.6
+ debug: 4.4.3
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@eslint/config-helpers@0.3.1:
+ resolution: {integrity: sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dev: true
+
+ /@eslint/core@0.15.2:
+ resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@types/json-schema': 7.0.15
+ dev: true
+
+ /@eslint/core@0.16.0:
+ resolution: {integrity: sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@types/json-schema': 7.0.15
+ dev: true
+
+ /@eslint/eslintrc@3.3.1:
+ resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.4.3
+ espree: 10.4.0
+ globals: 14.0.0
+ ignore: 5.3.2
+ import-fresh: 3.3.1
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@eslint/js@9.32.0:
+ resolution: {integrity: sha512-BBpRFZK3eX6uMLKz8WxFOBIFFcGFJ/g8XuwjTHCqHROSIsopI+ddn/d5Cfh36+7+e5edVS8dbSHnBNhrLEX0zg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dev: true
+
+ /@eslint/markdown@7.4.0:
+ resolution: {integrity: sha512-VQykmMjBb4tQoJOXVWXa+oQbQeCZlE7W3rAsOpmtpKLvJd75saZZ04PVVs7+zgMDJGghd4/gyFV6YlvdJFaeNQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@eslint/core': 0.16.0
+ '@eslint/plugin-kit': 0.4.0
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@eslint/object-schema@2.1.6:
+ resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dev: true
+
+ /@eslint/plugin-kit@0.3.5:
+ resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@eslint/core': 0.15.2
+ levn: 0.4.1
+ dev: true
+
+ /@eslint/plugin-kit@0.4.0:
+ resolution: {integrity: sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@eslint/core': 0.16.0
+ levn: 0.4.1
+ dev: true
+
+ /@humanfs/core@0.19.1:
+ resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
+ engines: {node: '>=18.18.0'}
+ dev: true
+
+ /@humanfs/node@0.16.7:
+ resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
+ engines: {node: '>=18.18.0'}
+ dependencies:
+ '@humanfs/core': 0.19.1
+ '@humanwhocodes/retry': 0.4.3
+ dev: true
+
+ /@humanwhocodes/module-importer@1.0.1:
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+ dev: true
+
+ /@humanwhocodes/retry@0.4.3:
+ resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
+ engines: {node: '>=18.18'}
+ dev: true
+
+ /@iconify-json/mdi@1.2.3:
+ resolution: {integrity: sha512-O3cLwbDOK7NNDf2ihaQOH5F9JglnulNDFV7WprU2dSoZu3h3cWH//h74uQAB87brHmvFVxIOkuBX2sZSzYhScg==}
+ dependencies:
+ '@iconify/types': 2.0.0
+ dev: true
+
+ /@iconify/types@2.0.0:
+ resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+ dev: true
+
+ /@iconify/utils@2.3.0:
+ resolution: {integrity: sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==}
+ dependencies:
+ '@antfu/install-pkg': 1.1.0
+ '@antfu/utils': 8.1.1
+ '@iconify/types': 2.0.0
+ debug: 4.4.3
+ globals: 15.15.0
+ kolorist: 1.8.0
+ local-pkg: 1.1.2
+ mlly: 1.8.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@intlify/core-base@9.1.9:
+ resolution: {integrity: sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==}
+ engines: {node: '>= 10'}
+ 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
+
+ /@intlify/devtools-if@9.1.9:
+ resolution: {integrity: sha512-oKSMKjttG3Ut/1UGEZjSdghuP3fwA15zpDPcjkf/1FjlOIm6uIBGMNS5jXzsZy593u+P/YcnrZD6cD3IVFz9vQ==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@intlify/shared': 9.1.9
+
+ /@intlify/message-compiler@9.1.9:
+ resolution: {integrity: sha512-6YgCMF46Xd0IH2hMRLCssZI3gFG4aywidoWQ3QP4RGYQXQYYfFC54DxhSgfIPpVoPLQ+4AD29eoYmhiHZ+qLFQ==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/shared': 9.1.9
+ source-map: 0.6.1
+
+ /@intlify/message-resolver@9.1.9:
+ resolution: {integrity: sha512-Lx/DBpigeK0sz2BBbzv5mu9/dAlt98HxwbG7xLawC3O2xMF9MNWU5FtOziwYG6TDIjNq0O/3ZbOJAxwITIWXEA==}
+ engines: {node: '>= 10'}
+
+ /@intlify/runtime@9.1.9:
+ resolution: {integrity: sha512-XgPw8+UlHCiie3fI41HPVa/VDJb3/aSH7bLhY1hJvlvNV713PFtb4p4Jo+rlE0gAoMsMCGcsiT982fImolSltg==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@intlify/message-compiler': 9.1.9
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/shared': 9.1.9
+
+ /@intlify/shared@9.1.9:
+ resolution: {integrity: sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw==}
+ engines: {node: '>= 10'}
+
+ /@intlify/vue-devtools@9.1.9:
+ resolution: {integrity: sha512-YPehH9uL4vZcGXky4Ev5qQIITnHKIvsD2GKGXgqf+05osMUI6WSEQHaN9USRa318Rs8RyyPCiDfmA0hRu3k7og==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@intlify/message-resolver': 9.1.9
+ '@intlify/runtime': 9.1.9
+ '@intlify/shared': 9.1.9
+
+ /@isaacs/balanced-match@4.0.1:
+ resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
+ engines: {node: 20 || >=22}
+ dev: true
+
+ /@isaacs/brace-expansion@5.0.0:
+ resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
+ engines: {node: 20 || >=22}
+ dependencies:
+ '@isaacs/balanced-match': 4.0.1
+ dev: true
+
+ /@isaacs/cliui@8.0.2:
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+ dependencies:
+ string-width: 5.1.2
+ string-width-cjs: /string-width@4.2.3
+ strip-ansi: 7.1.2
+ strip-ansi-cjs: /strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: /wrap-ansi@7.0.0
+ dev: true
+
+ /@istanbuljs/load-nyc-config@1.1.0:
+ resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ camelcase: 5.3.1
+ find-up: 4.1.0
+ get-package-type: 0.1.0
+ js-yaml: 3.14.1
+ resolve-from: 5.0.0
+ dev: true
+
+ /@istanbuljs/schema@0.1.3:
+ resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /@jest/console@27.5.1:
+ resolution: {integrity: sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ chalk: 4.1.2
+ jest-message-util: 27.5.1
+ jest-util: 27.5.1
+ slash: 3.0.0
+ dev: true
+
+ /@jest/core@27.5.1:
+ resolution: {integrity: sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==}
+ 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
+ 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': 24.7.0
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ emittery: 0.8.1
+ exit: 0.1.2
+ graceful-fs: 4.2.11
+ 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.8
+ rimraf: 3.0.2
+ slash: 3.0.0
+ strip-ansi: 6.0.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ dev: true
+
+ /@jest/environment@27.5.1:
+ resolution: {integrity: sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ jest-mock: 27.5.1
+ dev: true
+
+ /@jest/fake-timers@27.5.1:
+ resolution: {integrity: sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ '@sinonjs/fake-timers': 8.1.0
+ '@types/node': 24.7.0
+ jest-message-util: 27.5.1
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+ dev: true
+
+ /@jest/globals@27.5.1:
+ resolution: {integrity: sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/types': 27.5.1
+ expect: 27.5.1
+ dev: true
+
+ /@jest/reporters@27.5.1:
+ resolution: {integrity: sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==}
+ 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
+ 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': 24.7.0
+ chalk: 4.1.2
+ collect-v8-coverage: 1.0.2
+ exit: 0.1.2
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ istanbul-lib-coverage: 3.2.2
+ istanbul-lib-instrument: 5.2.1
+ istanbul-lib-report: 3.0.1
+ istanbul-lib-source-maps: 4.0.1
+ istanbul-reports: 3.2.0
+ 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.1
+ string-length: 4.0.2
+ terminal-link: 2.1.1
+ v8-to-istanbul: 8.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@jest/source-map@27.5.1:
+ resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ callsites: 3.1.0
+ graceful-fs: 4.2.11
+ source-map: 0.6.1
+ dev: true
+
+ /@jest/test-result@27.5.1:
+ resolution: {integrity: sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/console': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/istanbul-lib-coverage': 2.0.6
+ collect-v8-coverage: 1.0.2
+ dev: true
+
+ /@jest/test-sequencer@27.5.1:
+ resolution: {integrity: sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/test-result': 27.5.1
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-runtime: 27.5.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@jest/transform@27.5.1:
+ resolution: {integrity: sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@babel/core': 7.28.4
+ '@jest/types': 27.5.1
+ babel-plugin-istanbul: 6.1.1
+ chalk: 4.1.2
+ convert-source-map: 1.9.0
+ fast-json-stable-stringify: 2.1.0
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-regex-util: 27.5.1
+ jest-util: 27.5.1
+ micromatch: 4.0.8
+ pirates: 4.0.7
+ slash: 3.0.0
+ source-map: 0.6.1
+ write-file-atomic: 3.0.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@jest/types@27.5.1:
+ resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 24.7.0
+ '@types/yargs': 16.0.9
+ chalk: 4.1.2
+ dev: true
+
+ /@jimp/bmp@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ bmp-js: 0.1.0
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/core@0.10.3:
+ resolution: {integrity: sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==}
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/utils': 0.10.3
+ any-base: 1.1.0
+ buffer: 5.7.1
+ core-js: 3.45.1
+ exif-parser: 0.1.12
+ file-type: 9.0.0
+ load-bmfont: 1.4.2
+ mkdirp: 0.5.6
+ phin: 2.9.3
+ pixelmatch: 4.0.2
+ tinycolor2: 1.6.0
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /@jimp/custom@0.10.3:
+ resolution: {integrity: sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==}
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/core': 0.10.3
+ core-js: 3.45.1
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /@jimp/gif@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ omggif: 1.0.10
+ dev: false
+
+ /@jimp/jpeg@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ jpeg-js: 0.3.7
+ dev: false
+
+ /@jimp/plugin-blit@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-blur@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-circle@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-color@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ tinycolor2: 1.6.0
+ dev: false
+
+ /@jimp/plugin-contain@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)(@jimp/plugin-resize@0.10.3)(@jimp/plugin-scale@0.10.3):
+ resolution: {integrity: sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ '@jimp/plugin-scale': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-cover@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-crop@0.10.3)(@jimp/plugin-resize@0.10.3)(@jimp/plugin-scale@0.10.3):
+ resolution: {integrity: sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-crop': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ '@jimp/plugin-scale': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-crop@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-displace@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-dither@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-fisheye@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-flip@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-rotate@0.10.3):
+ resolution: {integrity: sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-rotate': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-rotate': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)(@jimp/plugin-crop@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-gaussian@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-invert@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-mask@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-normalize@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-print@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3):
+ resolution: {integrity: sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ load-bmfont: 1.4.2
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /@jimp/plugin-resize@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-rotate@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)(@jimp/plugin-crop@0.10.3)(@jimp/plugin-resize@0.10.3):
+ resolution: {integrity: sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blit': '>=0.3.5'
+ '@jimp/plugin-crop': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-scale@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3):
+ resolution: {integrity: sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-shadow@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blur@0.10.3)(@jimp/plugin-resize@0.10.3):
+ resolution: {integrity: sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-blur': '>=0.3.5'
+ '@jimp/plugin-resize': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blur': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugin-threshold@0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-color@0.10.3)(@jimp/plugin-resize@0.10.3):
+ resolution: {integrity: sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ '@jimp/plugin-color': '>=0.8.0'
+ '@jimp/plugin-resize': '>=0.8.0'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-color': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ dev: false
+
+ /@jimp/plugins@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugin-blit': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-blur': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-circle': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-color': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-contain': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)(@jimp/plugin-resize@0.10.3)(@jimp/plugin-scale@0.10.3)
+ '@jimp/plugin-cover': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-crop@0.10.3)(@jimp/plugin-resize@0.10.3)(@jimp/plugin-scale@0.10.3)
+ '@jimp/plugin-crop': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-displace': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-dither': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-fisheye': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-flip': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-rotate@0.10.3)
+ '@jimp/plugin-gaussian': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-invert': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-mask': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-normalize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-print': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)
+ '@jimp/plugin-resize': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/plugin-rotate': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blit@0.10.3)(@jimp/plugin-crop@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/plugin-scale': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/plugin-shadow': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-blur@0.10.3)(@jimp/plugin-resize@0.10.3)
+ '@jimp/plugin-threshold': 0.10.3(@jimp/custom@0.10.3)(@jimp/plugin-color@0.10.3)(@jimp/plugin-resize@0.10.3)
+ core-js: 3.45.1
+ timm: 1.7.1
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /@jimp/png@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/utils': 0.10.3
+ core-js: 3.45.1
+ pngjs: 3.4.0
+ dev: false
+
+ /@jimp/tiff@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ core-js: 3.45.1
+ utif: 2.0.1
+ dev: false
+
+ /@jimp/types@0.10.3(@jimp/custom@0.10.3):
+ resolution: {integrity: sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==}
+ peerDependencies:
+ '@jimp/custom': '>=0.3.5'
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/bmp': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/custom': 0.10.3
+ '@jimp/gif': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/jpeg': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/png': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/tiff': 0.10.3(@jimp/custom@0.10.3)
+ core-js: 3.45.1
+ timm: 1.7.1
+ dev: false
+
+ /@jimp/utils@0.10.3:
+ resolution: {integrity: sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==}
+ dependencies:
+ '@babel/runtime': 7.28.4
+ core-js: 3.45.1
+ regenerator-runtime: 0.13.11
+ dev: false
+
+ /@jridgewell/gen-mapping@0.3.13:
+ resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
+
+ /@jridgewell/remapping@2.3.5:
+ resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ /@jridgewell/resolve-uri@3.1.2:
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
+ /@jridgewell/source-map@0.3.11:
+ resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ /@jridgewell/sourcemap-codec@1.5.5:
+ resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+
+ /@jridgewell/trace-mapping@0.3.31:
+ resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ /@keyv/bigmap@1.0.2:
+ resolution: {integrity: sha512-KR03xkEZlAZNF4IxXgVXb+uNIVNvwdh8UwI0cnc7WI6a+aQcDp8GL80qVfeB4E5NpsKJzou5jU0r6yLSSbMOtA==}
+ engines: {node: '>= 18'}
+ dependencies:
+ hookified: 1.12.1
+ dev: true
+
+ /@keyv/serialize@1.1.1:
+ resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==}
+ dev: true
+
+ /@meoc/utils@0.2.10:
+ resolution: {integrity: sha512-LN/CQDOVmmN/kq31630r+dFYZSPezmhbRq0Ib0RbKv+qpSpaOasXwAcwO/rkpPkhuoty5kfpHmTdjrEUU8bJYQ==}
+ dependencies:
+ dayjs: 1.11.18
+ dev: true
+
+ /@modelcontextprotocol/sdk@1.19.1:
+ resolution: {integrity: sha512-3Y2h3MZKjec1eAqSTBclATlX+AbC6n1LgfVzRMJLt3v6w0RCYgwLrjbxPDbhsYHt6Wdqc/aCceNJYgj448ELQQ==}
+ engines: {node: '>=18'}
+ dependencies:
+ ajv: 6.12.6
+ content-type: 1.0.5
+ cors: 2.8.5
+ cross-spawn: 7.0.6
+ eventsource: 3.0.7
+ eventsource-parser: 3.0.6
+ express: 5.1.0
+ express-rate-limit: 7.5.1(express@5.1.0)
+ pkce-challenge: 5.0.0
+ raw-body: 3.0.1
+ zod: 3.25.76
+ zod-to-json-schema: 3.24.6(zod@3.25.76)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@nodelib/fs.scandir@2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
+
+ /@nodelib/fs.stat@2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+
+ /@nodelib/fs.walk@1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.19.1
+
+ /@nuxt/kit@3.19.3:
+ resolution: {integrity: sha512-ze46EW5xW+UxDvinvPkYt2MzR355Az1lA3bpX8KDialgnCwr+IbkBij/udbUEC6ZFbidPkfK1eKl4ESN7gMY+w==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ c12: 3.3.0
+ consola: 3.4.2
+ defu: 6.1.4
+ destr: 2.0.5
+ errx: 0.1.0
+ exsolve: 1.0.7
+ ignore: 7.0.5
+ jiti: 2.6.1
+ klona: 2.0.6
+ knitwork: 1.2.0
+ mlly: 1.8.0
+ ohash: 2.0.11
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ scule: 1.3.0
+ semver: 7.7.3
+ std-env: 3.9.0
+ tinyglobby: 0.2.15
+ ufo: 1.6.1
+ unctx: 2.4.1
+ unimport: 5.4.1
+ untyped: 2.0.0
+ transitivePeerDependencies:
+ - magicast
+ dev: false
+
+ /@parcel/watcher-android-arm64@2.5.1:
+ resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-darwin-arm64@2.5.1:
+ resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-darwin-x64@2.5.1:
+ resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-freebsd-x64@2.5.1:
+ resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-arm-glibc@2.5.1:
+ resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-arm-musl@2.5.1:
+ resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-arm64-glibc@2.5.1:
+ resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-arm64-musl@2.5.1:
+ resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-x64-glibc@2.5.1:
+ resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-linux-x64-musl@2.5.1:
+ resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-win32-arm64@2.5.1:
+ resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-win32-ia32@2.5.1:
+ resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher-win32-x64@2.5.1:
+ resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@parcel/watcher@2.5.1:
+ resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==}
+ engines: {node: '>= 10.0.0'}
+ requiresBuild: true
+ dependencies:
+ detect-libc: 1.0.3
+ is-glob: 4.0.3
+ micromatch: 4.0.8
+ node-addon-api: 7.1.1
+ optionalDependencies:
+ '@parcel/watcher-android-arm64': 2.5.1
+ '@parcel/watcher-darwin-arm64': 2.5.1
+ '@parcel/watcher-darwin-x64': 2.5.1
+ '@parcel/watcher-freebsd-x64': 2.5.1
+ '@parcel/watcher-linux-arm-glibc': 2.5.1
+ '@parcel/watcher-linux-arm-musl': 2.5.1
+ '@parcel/watcher-linux-arm64-glibc': 2.5.1
+ '@parcel/watcher-linux-arm64-musl': 2.5.1
+ '@parcel/watcher-linux-x64-glibc': 2.5.1
+ '@parcel/watcher-linux-x64-musl': 2.5.1
+ '@parcel/watcher-win32-arm64': 2.5.1
+ '@parcel/watcher-win32-ia32': 2.5.1
+ '@parcel/watcher-win32-x64': 2.5.1
+
+ /@pkgr/core@0.2.9:
+ resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ dev: true
+
+ /@polka/url@1.0.0-next.29:
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+ dev: true
+
+ /@quansync/fs@0.1.5:
+ resolution: {integrity: sha512-lNS9hL2aS2NZgNW7BBj+6EBl4rOf8l+tQ0eRY6JWCI8jI2kc53gSoqbjojU0OnAWhzoXiOjFyGsHcDGePB3lhA==}
+ dependencies:
+ quansync: 0.2.11
+ dev: true
+
+ /@rollup/pluginutils@5.3.0:
+ resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@types/estree': 1.0.8
+ estree-walker: 2.0.2
+ picomatch: 4.0.3
+
+ /@rollup/rollup-android-arm-eabi@4.52.4:
+ resolution: {integrity: sha512-BTm2qKNnWIQ5auf4deoetINJm2JzvihvGb9R6K/ETwKLql/Bb3Eg2H1FBp1gUb4YGbydMA3jcmQTR73q7J+GAA==}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-android-arm64@4.52.4:
+ resolution: {integrity: sha512-P9LDQiC5vpgGFgz7GSM6dKPCiqR3XYN1WwJKA4/BUVDjHpYsf3iBEmVz62uyq20NGYbiGPR5cNHI7T1HqxNs2w==}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-darwin-arm64@4.38.0:
+ resolution: {integrity: sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==}
+ cpu: [arm64]
+ os: [darwin]
+ dev: true
+
+ /@rollup/rollup-darwin-arm64@4.52.4:
+ resolution: {integrity: sha512-QRWSW+bVccAvZF6cbNZBJwAehmvG9NwfWHwMy4GbWi/BQIA/laTIktebT2ipVjNncqE6GLPxOok5hsECgAxGZg==}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-darwin-x64@4.38.0:
+ resolution: {integrity: sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==}
+ cpu: [x64]
+ os: [darwin]
+ dev: true
+
+ /@rollup/rollup-darwin-x64@4.52.4:
+ resolution: {integrity: sha512-hZgP05pResAkRJxL1b+7yxCnXPGsXU0fG9Yfd6dUaoGk+FhdPKCJ5L1Sumyxn8kvw8Qi5PvQ8ulenUbRjzeCTw==}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-freebsd-arm64@4.52.4:
+ resolution: {integrity: sha512-xmc30VshuBNUd58Xk4TKAEcRZHaXlV+tCxIXELiE9sQuK3kG8ZFgSPi57UBJt8/ogfhAF5Oz4ZSUBN77weM+mQ==}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-freebsd-x64@4.52.4:
+ resolution: {integrity: sha512-WdSLpZFjOEqNZGmHflxyifolwAiZmDQzuOzIq9L27ButpCVpD7KzTRtEG1I0wMPFyiyUdOO+4t8GvrnBLQSwpw==}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-arm-gnueabihf@4.52.4:
+ resolution: {integrity: sha512-xRiOu9Of1FZ4SxVbB0iEDXc4ddIcjCv2aj03dmW8UrZIW7aIQ9jVJdLBIhxBI+MaTnGAKyvMwPwQnoOEvP7FgQ==}
+ cpu: [arm]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-arm-musleabihf@4.52.4:
+ resolution: {integrity: sha512-FbhM2p9TJAmEIEhIgzR4soUcsW49e9veAQCziwbR+XWB2zqJ12b4i/+hel9yLiD8pLncDH4fKIPIbt5238341Q==}
+ cpu: [arm]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-arm64-gnu@4.52.4:
+ resolution: {integrity: sha512-4n4gVwhPHR9q/g8lKCyz0yuaD0MvDf7dV4f9tHt0C73Mp8h38UCtSCSE6R9iBlTbXlmA8CjpsZoujhszefqueg==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-arm64-musl@4.52.4:
+ resolution: {integrity: sha512-u0n17nGA0nvi/11gcZKsjkLj1QIpAuPFQbR48Subo7SmZJnGxDpspyw2kbpuoQnyK+9pwf3pAoEXerJs/8Mi9g==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-loong64-gnu@4.52.4:
+ resolution: {integrity: sha512-0G2c2lpYtbTuXo8KEJkDkClE/+/2AFPdPAbmaHoE870foRFs4pBrDehilMcrSScrN/fB/1HTaWO4bqw+ewBzMQ==}
+ cpu: [loong64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-ppc64-gnu@4.52.4:
+ resolution: {integrity: sha512-teSACug1GyZHmPDv14VNbvZFX779UqWTsd7KtTM9JIZRDI5NUwYSIS30kzI8m06gOPB//jtpqlhmraQ68b5X2g==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-riscv64-gnu@4.52.4:
+ resolution: {integrity: sha512-/MOEW3aHjjs1p4Pw1Xk4+3egRevx8Ji9N6HUIA1Ifh8Q+cg9dremvFCUbOX2Zebz80BwJIgCBUemjqhU5XI5Eg==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-riscv64-musl@4.52.4:
+ resolution: {integrity: sha512-1HHmsRyh845QDpEWzOFtMCph5Ts+9+yllCrREuBR/vg2RogAQGGBRC8lDPrPOMnrdOJ+mt1WLMOC2Kao/UwcvA==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-s390x-gnu@4.52.4:
+ resolution: {integrity: sha512-seoeZp4L/6D1MUyjWkOMRU6/iLmCU2EjbMTyAG4oIOs1/I82Y5lTeaxW0KBfkUdHAWN7j25bpkt0rjnOgAcQcA==}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-x64-gnu@4.52.4:
+ resolution: {integrity: sha512-Wi6AXf0k0L7E2gteNsNHUs7UMwCIhsCTs6+tqQ5GPwVRWMaflqGec4Sd8n6+FNFDw9vGcReqk2KzBDhCa1DLYg==}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-linux-x64-musl@4.52.4:
+ resolution: {integrity: sha512-dtBZYjDmCQ9hW+WgEkaffvRRCKm767wWhxsFW3Lw86VXz/uJRuD438/XvbZT//B96Vs8oTA8Q4A0AfHbrxP9zw==}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-openharmony-arm64@4.52.4:
+ resolution: {integrity: sha512-1ox+GqgRWqaB1RnyZXL8PD6E5f7YyRUJYnCqKpNzxzP0TkaUh112NDrR9Tt+C8rJ4x5G9Mk8PQR3o7Ku2RKqKA==}
+ cpu: [arm64]
+ os: [openharmony]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-win32-arm64-msvc@4.52.4:
+ resolution: {integrity: sha512-8GKr640PdFNXwzIE0IrkMWUNUomILLkfeHjXBi/nUvFlpZP+FA8BKGKpacjW6OUUHaNI6sUURxR2U2g78FOHWQ==}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-win32-ia32-msvc@4.52.4:
+ resolution: {integrity: sha512-AIy/jdJ7WtJ/F6EcfOb2GjR9UweO0n43jNObQMb6oGxkYTfLcnN7vYYpG+CN3lLxrQkzWnMOoNSHTW54pgbVxw==}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-win32-x64-gnu@4.52.4:
+ resolution: {integrity: sha512-UF9KfsH9yEam0UjTwAgdK0anlQ7c8/pWPU2yVjyWcF1I1thABt6WXE47cI71pGiZ8wGvxohBoLnxM04L/wj8mQ==}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@rollup/rollup-win32-x64-msvc@4.52.4:
+ resolution: {integrity: sha512-bf9PtUa0u8IXDVxzRToFQKsNCRz9qLYfR/MpECxl4mRoWYjAeFjgxj1XdZr2M/GNVpT05p+LgQOHopYDlUu6/w==}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ optional: true
+
+ /@sinonjs/commons@1.8.6:
+ resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==}
+ dependencies:
+ type-detect: 4.0.8
+ dev: true
+
+ /@sinonjs/fake-timers@8.1.0:
+ resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==}
+ dependencies:
+ '@sinonjs/commons': 1.8.6
+ dev: true
+
+ /@stylistic/eslint-plugin@5.4.0(eslint@9.32.0):
+ resolution: {integrity: sha512-UG8hdElzuBDzIbjG1QDwnYH0MQ73YLXDFHgZzB4Zh/YJfnw8XNsloVtytqzx0I2Qky9THSdpTmi8Vjn/pf/Lew==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=9.0.0'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@typescript-eslint/types': 8.46.0
+ eslint: 9.32.0
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ estraverse: 5.3.0
+ picomatch: 4.0.3
+ dev: true
+
+ /@tootallnate/once@1.1.2:
+ resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /@types/babel__core@7.20.5:
+ resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ '@types/babel__generator': 7.27.0
+ '@types/babel__template': 7.4.4
+ '@types/babel__traverse': 7.28.0
+ dev: true
+
+ /@types/babel__generator@7.27.0:
+ resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==}
+ dependencies:
+ '@babel/types': 7.28.4
+ dev: true
+
+ /@types/babel__template@7.4.4:
+ resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
+ dev: true
+
+ /@types/babel__traverse@7.28.0:
+ resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
+ dependencies:
+ '@babel/types': 7.28.4
+ dev: true
+
+ /@types/debug@4.1.12:
+ resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
+ dependencies:
+ '@types/ms': 2.1.0
+ dev: true
+
+ /@types/estree@1.0.8:
+ resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+
+ /@types/graceful-fs@4.1.9:
+ resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==}
+ dependencies:
+ '@types/node': 24.7.0
+ dev: true
+
+ /@types/istanbul-lib-coverage@2.0.6:
+ resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
+ dev: true
+
+ /@types/istanbul-lib-report@3.0.3:
+ resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+ dev: true
+
+ /@types/istanbul-reports@3.0.4:
+ resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
+ dependencies:
+ '@types/istanbul-lib-report': 3.0.3
+ dev: true
+
+ /@types/json-schema@7.0.15:
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+ dev: true
+
+ /@types/mdast@4.0.4:
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+ dependencies:
+ '@types/unist': 3.0.3
+ dev: true
+
+ /@types/ms@2.1.0:
+ resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
+ dev: true
+
+ /@types/node@24.7.0:
+ resolution: {integrity: sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==}
+ dependencies:
+ undici-types: 7.14.0
+ dev: true
+
+ /@types/prettier@2.7.3:
+ resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==}
+ dev: true
+
+ /@types/stack-utils@2.0.3:
+ resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
+ dev: true
+
+ /@types/unist@3.0.3:
+ resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
+ dev: true
+
+ /@types/yargs-parser@21.0.3:
+ resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
+ dev: true
+
+ /@types/yargs@16.0.9:
+ resolution: {integrity: sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==}
+ dependencies:
+ '@types/yargs-parser': 21.0.3
+ dev: true
+
+ /@typescript-eslint/eslint-plugin@8.46.0(@typescript-eslint/parser@8.46.0)(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-hA8gxBq4ukonVXPy0OKhiaUh/68D0E88GSmtC1iAEnGaieuDi38LhS7jdCHRLi6ErJBNDGCzvh5EnzdPwUc0DA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.46.0
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ '@typescript-eslint/parser': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ '@typescript-eslint/scope-manager': 8.46.0
+ '@typescript-eslint/type-utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.46.0
+ eslint: 9.32.0
+ graphemer: 1.4.0
+ ignore: 7.0.5
+ natural-compare: 1.4.0
+ ts-api-utils: 2.1.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/parser@8.46.0(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.46.0
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.46.0
+ debug: 4.4.3
+ eslint: 9.32.0
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/project-service@8.46.0(typescript@5.9.3):
+ resolution: {integrity: sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.46.0
+ debug: 4.4.3
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/scope-manager@8.46.0:
+ resolution: {integrity: sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/visitor-keys': 8.46.0
+ dev: true
+
+ /@typescript-eslint/tsconfig-utils@8.46.0(typescript@5.9.3):
+ resolution: {integrity: sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ typescript: 5.9.3
+ dev: true
+
+ /@typescript-eslint/type-utils@8.46.0(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-hy+lvYV1lZpVs2jRaEYvgCblZxUoJiPyCemwbQZ+NGulWkQRy0HRPYAoef/CNSzaLt+MLvMptZsHXHlkEilaeg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ debug: 4.4.3
+ eslint: 9.32.0
+ ts-api-utils: 2.1.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/types@8.46.0:
+ resolution: {integrity: sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dev: true
+
+ /@typescript-eslint/typescript-estree@8.46.0(typescript@5.9.3):
+ resolution: {integrity: sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@typescript-eslint/project-service': 8.46.0(typescript@5.9.3)
+ '@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/visitor-keys': 8.46.0
+ debug: 4.4.3
+ fast-glob: 3.3.3
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.7.3
+ ts-api-utils: 2.1.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/utils@8.46.0(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-nD6yGWPj1xiOm4Gk0k6hLSZz2XkNXhuYmyIrOWcHoPuAhjT9i5bAG+xbWPgFeNR8HPHHtpNKdYUXJl/D3x7f5g==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <6.0.0'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@typescript-eslint/scope-manager': 8.46.0
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/typescript-estree': 8.46.0(typescript@5.9.3)
+ eslint: 9.32.0
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@typescript-eslint/visitor-keys@8.46.0:
+ resolution: {integrity: sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ '@typescript-eslint/types': 8.46.0
+ eslint-visitor-keys: 4.2.1
+ dev: true
+
+ /@unocss/astro@65.5.0(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-z0uLbOQhINYpd57p0p/fpVeBY1+Rv0t4GQQUMF00tH8tpIHGUdyHH9aE/yGZaeLI2onmaShTDgIVXT+7fR9fMw==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+ peerDependenciesMeta:
+ vite:
+ optional: true
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/reset': 65.5.0
+ '@unocss/vite': 65.5.0(vite@5.2.8)(vue@3.4.21)
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ transitivePeerDependencies:
+ - vue
+ dev: true
+
+ /@unocss/cli@65.5.0:
+ resolution: {integrity: sha512-RZvAlu7vWIyeQr1TqFb5JsL95MWmDfopX9EaScUy5zuMjE05kvlPj4kM5y39N3XIpEDYWqI7WdwwrPqU45UraQ==}
+ engines: {node: '>=14'}
+ hasBin: true
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/preset-uno': 65.5.0
+ cac: 6.7.14
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ consola: 3.4.2
+ magic-string: 0.30.19
+ pathe: 2.0.3
+ perfect-debounce: 1.0.0
+ tinyglobby: 0.2.15
+ unplugin-utils: 0.2.5
+ dev: true
+
+ /@unocss/config@65.5.0:
+ resolution: {integrity: sha512-XK9Y3Z1m3oPXQl5pVOYk6+pltsk70RHFvsAtTyFd5G5kAHzQS/em4/lL6/0IubU7rn2j+9eHeCVOiWXW9lnvYA==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 65.5.0
+ unconfig: 7.0.0
+ dev: true
+
+ /@unocss/config@66.3.3:
+ resolution: {integrity: sha512-D/UxnAmkabapqWU4tF85dWWhNfCUyNutWmd4AD2VsQRZOykufJedLV74r3Z3XhoPJn4IGr3BKZm5/rflf5viDg==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 66.3.3
+ unconfig: 7.3.3
+ dev: true
+
+ /@unocss/core@65.5.0:
+ resolution: {integrity: sha512-XYWdS09M2XOjZNDotGhI2TIW/6duLNiyssopwjCbv4AlPklF0bZI86SKI55syYDBt6GRadoQbuvUkhSiTV/hzQ==}
+ dev: true
+
+ /@unocss/core@66.3.3:
+ resolution: {integrity: sha512-6WFLd92TJelVQARtCGaF+EgEoHKIVe43gkGXVoWILu0HUDRWdhv+cpcyX0RTJV22Y976AxeneU7/zmhAh+CXNg==}
+ dev: true
+
+ /@unocss/core@66.5.2:
+ resolution: {integrity: sha512-POSEpwj2FJtrDgzSq6nVhAJbnGIYPqtEMTpzQXfeFqPDMidAXjaH/xZUeTdHDbI9Jg700smrRXJtFJrJFXkmiQ==}
+ dev: true
+
+ /@unocss/eslint-plugin@66.3.3(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-n2Jd22Z5QEAAdXPBzq5i4L8gzYLy7vMF/2N8TE7b8GdIF9kuawyYxTmcjgg+Tp/Sr1HXp/Fcs7Oic2lv5ZvU+A==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@typescript-eslint/utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ '@unocss/config': 66.3.3
+ '@unocss/core': 66.3.3
+ '@unocss/rule-utils': 66.3.3
+ magic-string: 0.30.19
+ synckit: 0.11.11
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - typescript
+ dev: true
+
+ /@unocss/extractor-arbitrary-variants@65.5.0:
+ resolution: {integrity: sha512-7K3gftOdkv9jbWvbkExTcx6/FDP2Xk/NSsOYTvR9oITLnLjmdQvp+9276WSnNfKF3frBl8ZcqpkC2EsuL2Yutw==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/extractor-arbitrary-variants@66.5.2:
+ resolution: {integrity: sha512-MNHzhA4RKJJVo6D5Uc+SkPfeugO1KXDt0GFg0FkOUKTTnahxyXNvd9BG9HHYlKSiaYCgUhFmysNhv04Gza+CNg==}
+ dependencies:
+ '@unocss/core': 66.5.2
+ dev: true
+
+ /@unocss/inspector@65.5.0(vue@3.4.21):
+ resolution: {integrity: sha512-dhAijjVblrAUqHjqB2p4JhNTpRo85BTi6SLbG+ePwGsIL9oxNXtN57O2mzp1mSEKS1C+QjHmRV7u+gh8Bj93Zg==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ colorette: 2.0.20
+ gzip-size: 6.0.0
+ sirv: 3.0.2
+ vue-flow-layout: 0.1.1(vue@3.4.21)
+ transitivePeerDependencies:
+ - vue
+ dev: true
+
+ /@unocss/postcss@65.5.0(postcss@8.5.6):
+ resolution: {integrity: sha512-mSGLX0KgygPhICZlUrjLgDJsEkgtrTjkDRI4skC7ZB/2pwQaESg8M3vhtWK/6XK+WGriUowfd5n6F6cfX3c2eg==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ postcss: ^8.4.21
+ dependencies:
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ css-tree: 3.1.0
+ postcss: 8.5.6
+ tinyglobby: 0.2.15
+ dev: true
+
+ /@unocss/preset-attributify@65.5.0:
+ resolution: {integrity: sha512-l3xQK6Om5fNknck04OZy3X7+k0EmVTEzF6BBMCYVaT2ZtCLhlznVt7tEg4ESLuXIZfx/+jd2sW3E3UY/EJ8rUA==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/preset-icons@65.5.0:
+ resolution: {integrity: sha512-lSwMNtj4nufpQDBFoioAM9S6hP8028lA9fLFM3Vw+KmI10/3TaZyOaCXJVH5UdsfNWexGGo/Qo+K1YFWfXLZ8A==}
+ dependencies:
+ '@iconify/utils': 2.3.0
+ '@unocss/core': 65.5.0
+ ofetch: 1.4.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@unocss/preset-icons@66.3.3:
+ resolution: {integrity: sha512-Bmhiev05BN/horlgnyZ8gzQWZKd7oVpUBWD66X7U/dgkLdO6B5GIIsdO5Fi7JLeMDmyXm6vlYk0YQhiTbx8l9w==}
+ dependencies:
+ '@iconify/utils': 2.3.0
+ '@unocss/core': 66.3.3
+ ofetch: 1.4.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@unocss/preset-mini@65.5.0:
+ resolution: {integrity: sha512-oD2INmEgTOxmFsVceflv4Zs67vz9PRbpg3+CMsJLWgfX4UdQ1H4jZms72+g3N1hhXBvOFwvGvqGaMnrVMRk54g==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/extractor-arbitrary-variants': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ dev: true
+
+ /@unocss/preset-tagify@65.5.0:
+ resolution: {integrity: sha512-m0CfBawgf4VQlbaijgeWXG6vXEOt4VsNIk1NLUyRM0GBMiOB3usb1tPLWJtRpje6p+bR+k4rpe4LsPMHhKtFfQ==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/preset-typography@65.5.0:
+ resolution: {integrity: sha512-lokYOVF/y1Zt1QufxrD/oJe4aUCK6hHPlisSJRReyKXuGUrBR9yWiIZfINqhkj3kMO6zzN23QiaA5E5cpUkDPg==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ dev: true
+
+ /@unocss/preset-uno@65.5.0:
+ resolution: {integrity: sha512-aVlSjzBc7IqNFgfu06qyP+CBRRGMNQLoQtZteRwa/vsUcTqGLzo7KhvkDazPEKpurmurXiymrvujTHInW0IooQ==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/preset-wind': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ dev: true
+
+ /@unocss/preset-web-fonts@65.5.0:
+ resolution: {integrity: sha512-zWPsQiMSCoP61J8DX++3Z8Ncs20a3rdBb3uI7bDzHdf9MZEIhKzYYchpYO9Dfw7pzclECeuKhq5IjPjM1lmPUQ==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ ofetch: 1.4.1
+ dev: true
+
+ /@unocss/preset-wind@65.5.0:
+ resolution: {integrity: sha512-3krOUZ5qC2J3JGheZsTDNbzqr9qYJw9GP1yEcfeE6K3qVcZnf+3DyJ0i1PuaM5SusOA0MBsHmCU49rLKurdyoA==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ dev: true
+
+ /@unocss/reset@65.5.0:
+ resolution: {integrity: sha512-jADqiBAfOO9aZNpnsmxc7WX7vIIxyalcmCJ7fwdyPRmFhxZZ5ZoSYsHDt0Wfn/W2BRQkLjXWL0956nXH0lz79Q==}
+ dev: true
+
+ /@unocss/rule-utils@65.5.0:
+ resolution: {integrity: sha512-xT4N0EY1dl1mqY5gTKD0H/Fg6xApe7xbfNTUwctOu02DMeJhqv9BTqfoAihH/hzGSI69+FtzVtz7hUxTypfehA==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 65.5.0
+ magic-string: 0.30.19
+ dev: true
+
+ /@unocss/rule-utils@66.3.3:
+ resolution: {integrity: sha512-QKgVGV5nRRnK44/reUKFLAc5UGyl98vz3hrfk8JI8pVza58vmQWTdAB2rIpNJ5a5j+EkWfDOUlGQaOrIeYGLdg==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 66.3.3
+ magic-string: 0.30.19
+ dev: true
+
+ /@unocss/rule-utils@66.5.2:
+ resolution: {integrity: sha512-2eR5TBTO+cmPY9ahFjyEu8qP/NFPI02dVpI0rgGKdyDMv/PnO9+yS/9rKgrmXsN3nPYHjOrLutRXkF/xxm/t3w==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 66.5.2
+ magic-string: 0.30.19
+ dev: true
+
+ /@unocss/transformer-attributify-jsx@65.5.0:
+ resolution: {integrity: sha512-ZWSGKw52h8nJSO1DaYGccjjNaBifl4LKJ4U0YpjaF2LDLA5BLBapUtyjTS7ffl6p7GZNokA6VUGL+MXPw+oDXg==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/transformer-compile-class@65.5.0:
+ resolution: {integrity: sha512-7QMtWhUVKkSYFCDzinR8PPubhLFA+KVJMoHCTX1KTw/lQ5Zt7/FiwLX5zepc50K3074dPgR3hWn5PpK+CZeq7g==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/transformer-directives@65.5.0:
+ resolution: {integrity: sha512-IsUd7L28bRAoN5fyWyNzHu7HOa1yjPqTU/QZfUEViJXApOEKUZ4anBSyU0lPU+59kMneg40xOvCBR70qNMCw4w==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ '@unocss/rule-utils': 65.5.0
+ css-tree: 3.1.0
+ dev: true
+
+ /@unocss/transformer-variant-group@65.5.0:
+ resolution: {integrity: sha512-I0ibbLRGI/9+BJy0yybxtmoYPIwGPMfwQDAvChhFXmokJG1YMpeJqPBI7fypHfbk/iO00W5lOGQ4XiIfsHfiHg==}
+ dependencies:
+ '@unocss/core': 65.5.0
+ dev: true
+
+ /@unocss/vite@65.5.0(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-v2rFIrBaWGQmSJeKv7us+2OMos2RqdZYpf/seOpf4MFHrmjjiFQ1ZWkTqFyNfUxAwj6VID5frVJhxJfZuEhhug==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@unocss/config': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/inspector': 65.5.0(vue@3.4.21)
+ chokidar: 3.6.0
+ magic-string: 0.30.19
+ tinyglobby: 0.2.15
+ unplugin-utils: 0.2.5
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ transitivePeerDependencies:
+ - vue
+ dev: true
+
+ /@vitejs/plugin-legacy@5.3.2(terser@5.44.0)(vite@5.2.8):
+ resolution: {integrity: sha512-8moCOrIMaZ/Rjln0Q6GsH6s8fAt1JOI3k8nmfX4tXUxE5KAExVctSyOBk+A25GClsdSWqIk2yaUthH3KJ2X4tg==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ terser: ^5.4.0
+ vite: ^5.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/preset-env': 7.28.3(@babel/core@7.28.4)
+ browserslist: 4.26.3
+ browserslist-to-esbuild: 2.1.1(browserslist@4.26.3)
+ core-js: 3.45.1
+ magic-string: 0.30.19
+ regenerator-runtime: 0.14.1
+ systemjs: 6.15.1
+ terser: 5.44.0
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^4.0.0 || ^5.0.0
+ vue: 3.4.21
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4)
+ '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.4)
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ vue: 3.4.21(typescript@5.9.3)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@vitejs/plugin-vue@5.1.0(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-QMRxARyrdiwi1mj3AW4fLByoHTavreXq0itdEW696EihXglf1MB3D4C2gBvE0jMPH29ZjC3iK8aIaUMLf4EOGA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0
+ vue: 3.4.21
+ dependencies:
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ vue: 3.4.21(typescript@5.9.3)
+
+ /@vitest/eslint-plugin@1.3.16(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-EvXGiZpz3L1G/pmebcmMe61UzqgR8LFwmm+QGgQEHcrTCFkMgl+c0mj2jneo38/CkHhofbK3zc3xafV6/SpzNw==}
+ peerDependencies:
+ eslint: '>= 8.57.0'
+ typescript: '>= 5.0.0'
+ vitest: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ vitest:
+ optional: true
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.46.0
+ '@typescript-eslint/utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ eslint: 9.32.0
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@vue/babel-helper-vue-transform-on@1.5.0:
+ resolution: {integrity: sha512-0dAYkerNhhHutHZ34JtTl2czVQHUNWv6xEbkdF5W+Yrv5pCWsqjeORdOgbtW2I9gWlt+wBmVn+ttqN9ZxR5tzA==}
+ dev: true
+
+ /@vue/babel-plugin-jsx@1.5.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-mneBhw1oOqCd2247O0Yw/mRwC9jIGACAJUlawkmMBiNmL4dGA2eMzuNZVNqOUfYTa6vqmND4CtOPzmEEEqLKFw==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.4)
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ '@vue/babel-helper-vue-transform-on': 1.5.0
+ '@vue/babel-plugin-resolve-type': 1.5.0(@babel/core@7.28.4)
+ '@vue/shared': 3.5.22
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@vue/babel-plugin-resolve-type@1.5.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-Wm/60o+53JwJODm4Knz47dxJnLDJ9FnKnGZJbUUf8nQRAtt6P+undLUAVU3Ha33LxOJe6IPoifRQ6F/0RrU31w==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/core': 7.28.4
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/parser': 7.28.4
+ '@vue/compiler-sfc': 3.5.22
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@vue/compiler-core@3.4.21:
+ resolution: {integrity: sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@vue/shared': 3.4.21
+ entities: 4.5.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.1
+
+ /@vue/compiler-core@3.5.22:
+ resolution: {integrity: sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@vue/shared': 3.5.22
+ entities: 4.5.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.1
+ dev: true
+
+ /@vue/compiler-dom@3.4.21:
+ resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==}
+ dependencies:
+ '@vue/compiler-core': 3.4.21
+ '@vue/shared': 3.4.21
+
+ /@vue/compiler-dom@3.5.22:
+ resolution: {integrity: sha512-W8RknzUM1BLkypvdz10OVsGxnMAuSIZs9Wdx1vzA3mL5fNMN15rhrSCLiTm6blWeACwUwizzPVqGJgOGBEN/hA==}
+ dependencies:
+ '@vue/compiler-core': 3.5.22
+ '@vue/shared': 3.5.22
+ dev: true
+
+ /@vue/compiler-sfc@3.4.21:
+ resolution: {integrity: sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@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.19
+ postcss: 8.5.6
+ source-map-js: 1.2.1
+
+ /@vue/compiler-sfc@3.5.22:
+ resolution: {integrity: sha512-tbTR1zKGce4Lj+JLzFXDq36K4vcSZbJ1RBu8FxcDv1IGRz//Dh2EBqksyGVypz3kXpshIfWKGOCcqpSbyGWRJQ==}
+ dependencies:
+ '@babel/parser': 7.28.4
+ '@vue/compiler-core': 3.5.22
+ '@vue/compiler-dom': 3.5.22
+ '@vue/compiler-ssr': 3.5.22
+ '@vue/shared': 3.5.22
+ estree-walker: 2.0.2
+ magic-string: 0.30.19
+ postcss: 8.5.6
+ source-map-js: 1.2.1
+ dev: true
+
+ /@vue/compiler-ssr@3.4.21:
+ resolution: {integrity: sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==}
+ dependencies:
+ '@vue/compiler-dom': 3.4.21
+ '@vue/shared': 3.4.21
+
+ /@vue/compiler-ssr@3.5.22:
+ resolution: {integrity: sha512-GdgyLvg4R+7T8Nk2Mlighx7XGxq/fJf9jaVofc3IL0EPesTE86cP/8DD1lT3h1JeZr2ySBvyqKQJgbS54IX1Ww==}
+ dependencies:
+ '@vue/compiler-dom': 3.5.22
+ '@vue/shared': 3.5.22
+ dev: true
+
+ /@vue/consolidate@1.0.0:
+ resolution: {integrity: sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==}
+ engines: {node: '>= 0.12.0'}
+ dev: false
+
+ /@vue/devtools-api@6.6.4:
+ resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
+ dev: false
+
+ /@vue/devtools-core@7.7.7(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-9z9TLbfC+AjAi1PQyWX+OErjIaJmdFlbDHcD+cAMYKY6Bh5VlsAtCeGyRMrXwIlMEQPukvnWt3gZBLwTAIMKzQ==}
+ peerDependencies:
+ vue: 3.4.21
+ dependencies:
+ '@vue/devtools-kit': 7.7.7
+ '@vue/devtools-shared': 7.7.7
+ mitt: 3.0.1
+ nanoid: 5.1.6
+ pathe: 2.0.3
+ vite-hot-client: 2.1.0(vite@5.2.8)
+ vue: 3.4.21(typescript@5.9.3)
+ transitivePeerDependencies:
+ - vite
+ dev: true
+
+ /@vue/devtools-kit@7.7.7:
+ resolution: {integrity: sha512-wgoZtxcTta65cnZ1Q6MbAfePVFxfM+gq0saaeytoph7nEa7yMXoi6sCPy4ufO111B9msnw0VOWjPEFCXuAKRHA==}
+ dependencies:
+ '@vue/devtools-shared': 7.7.7
+ birpc: 2.6.1
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.2
+ dev: true
+
+ /@vue/devtools-shared@7.7.7:
+ resolution: {integrity: sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==}
+ dependencies:
+ rfdc: 1.4.1
+ dev: true
+
+ /@vue/reactivity@3.4.21:
+ resolution: {integrity: sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==}
+ dependencies:
+ '@vue/shared': 3.4.21
+
+ /@vue/runtime-core@3.4.21:
+ resolution: {integrity: sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==}
+ dependencies:
+ '@vue/reactivity': 3.4.21
+ '@vue/shared': 3.4.21
+
+ /@vue/runtime-dom@3.4.21:
+ resolution: {integrity: sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==}
+ dependencies:
+ '@vue/runtime-core': 3.4.21
+ '@vue/shared': 3.4.21
+ csstype: 3.1.3
+
+ /@vue/server-renderer@3.4.21(vue@3.4.21):
+ resolution: {integrity: sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==}
+ peerDependencies:
+ vue: 3.4.21
+ dependencies:
+ '@vue/compiler-ssr': 3.4.21
+ '@vue/shared': 3.4.21
+ vue: 3.4.21(typescript@5.9.3)
+
+ /@vue/shared@3.4.21:
+ resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==}
+
+ /@vue/shared@3.5.22:
+ resolution: {integrity: sha512-F4yc6palwq3TT0u+FYf0Ns4Tfl9GRFURDN2gWG7L1ecIaS/4fCIuFOjMTnCyjsu/OK6vaDKLCrGAa+KvvH+h4w==}
+ dev: true
+
+ /abab@2.0.6:
+ resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
+ deprecated: Use your platform's native atob() and btoa() methods instead
+ dev: true
+
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+ dev: true
+
+ /accepts@2.0.0:
+ resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 3.0.1
+ negotiator: 1.0.0
+ dev: true
+
+ /acorn-globals@6.0.0:
+ resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==}
+ dependencies:
+ acorn: 7.4.1
+ acorn-walk: 7.2.0
+ dev: true
+
+ /acorn-jsx@5.3.2(acorn@8.15.0):
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ acorn: 8.15.0
+ dev: true
+
+ /acorn-walk@7.2.0:
+ resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
+ engines: {node: '>=0.4.0'}
+ dev: true
+
+ /acorn@7.4.1:
+ resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: true
+
+ /acorn@8.15.0:
+ resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+
+ /address@1.2.2:
+ resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==}
+ engines: {node: '>= 10.0.0'}
+ dev: true
+
+ /adm-zip@0.5.16:
+ resolution: {integrity: sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==}
+ engines: {node: '>=12.0'}
+
+ /agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
+ engines: {node: '>= 6.0.0'}
+ dependencies:
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /aggregate-error@3.1.0:
+ resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
+ engines: {node: '>=8'}
+ dependencies:
+ clean-stack: 2.2.0
+ indent-string: 4.0.0
+ dev: true
+
+ /ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+ dev: true
+
+ /ajv@8.17.1:
+ resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-uri: 3.1.0
+ json-schema-traverse: 1.0.0
+ require-from-string: 2.0.2
+ dev: true
+
+ /ansi-escapes@4.3.2:
+ resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ type-fest: 0.21.3
+ dev: true
+
+ /ansi-escapes@7.1.1:
+ resolution: {integrity: sha512-Zhl0ErHcSRUaVfGUeUdDuLgpkEo8KIFjB4Y9uAc46ScOpdDiU1Dbyplh7qWJeJ/ZHpbyMSM26+X3BySgnIz40Q==}
+ engines: {node: '>=18'}
+ dependencies:
+ environment: 1.1.0
+ dev: true
+
+ /ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /ansi-regex@6.2.2:
+ resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+ dependencies:
+ color-convert: 2.0.1
+ dev: true
+
+ /ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /ansi-styles@6.2.3:
+ resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /ansis@3.17.0:
+ resolution: {integrity: sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /ansis@4.2.0:
+ resolution: {integrity: sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /any-base@1.1.0:
+ resolution: {integrity: sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==}
+ dev: false
+
+ /anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
+
+ /are-docs-informative@0.0.2:
+ resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /argparse@1.0.10:
+ resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+ dependencies:
+ sprintf-js: 1.0.3
+ dev: true
+
+ /argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+ dev: true
+
+ /array-flatten@1.1.1:
+ resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
+ dev: true
+
+ /array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /astral-regex@2.0.0:
+ resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /asynckit@0.4.0:
+ resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
+ dev: true
+
+ /autoprefixer@10.4.21(postcss@8.5.6):
+ resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ browserslist: 4.26.3
+ caniuse-lite: 1.0.30001749
+ fraction.js: 4.3.7
+ normalize-range: 0.1.2
+ picocolors: 1.1.1
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+
+ /babel-jest@27.5.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ peerDependencies:
+ '@babel/core': ^7.8.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@jest/transform': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/babel__core': 7.20.5
+ babel-plugin-istanbul: 6.1.1
+ babel-preset-jest: 27.5.1(@babel/core@7.28.4)
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ slash: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /babel-plugin-istanbul@6.1.1:
+ resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/helper-plugin-utils': 7.27.1
+ '@istanbuljs/load-nyc-config': 1.1.0
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-instrument: 5.2.1
+ test-exclude: 6.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /babel-plugin-jest-hoist@27.5.1:
+ resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.4
+ '@types/babel__core': 7.20.5
+ '@types/babel__traverse': 7.28.0
+ dev: true
+
+ /babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.4):
+ resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ dependencies:
+ '@babel/compat-data': 7.28.4
+ '@babel/core': 7.28.4
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.4)
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.4)
+ core-js-compat: 3.45.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /babel-plugin-polyfill-regenerator@0.6.5(@babel/core@7.28.4):
+ resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /babel-preset-current-node-syntax@1.2.0(@babel/core@7.28.4):
+ resolution: {integrity: sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==}
+ peerDependencies:
+ '@babel/core': ^7.0.0 || ^8.0.0-0
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.28.4)
+ '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.28.4)
+ '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.28.4)
+ '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.4)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.28.4)
+ '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.28.4)
+ '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.28.4)
+ '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.28.4)
+ '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.28.4)
+ '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.28.4)
+ dev: true
+
+ /babel-preset-jest@27.5.1(@babel/core@7.28.4):
+ resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.28.4
+ babel-plugin-jest-hoist: 27.5.1
+ babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.4)
+ dev: true
+
+ /balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ dev: true
+
+ /balanced-match@2.0.0:
+ resolution: {integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==}
+ dev: true
+
+ /base64-js@1.5.1:
+ resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ dev: false
+
+ /base64url@3.0.1:
+ resolution: {integrity: sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==}
+ engines: {node: '>=6.0.0'}
+
+ /baseline-browser-mapping@2.8.14:
+ resolution: {integrity: sha512-GM9c0cWWR8Ga7//Ves/9KRgTS8nLausCkP3CGiFLrnwA2CDUluXgaQqvrULoR2Ujrd/mz/lkX87F5BHFsNr5sQ==}
+ hasBin: true
+
+ /binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
+ engines: {node: '>=8'}
+
+ /birpc@2.6.1:
+ resolution: {integrity: sha512-LPnFhlDpdSH6FJhJyn4M0kFO7vtQ5iPw24FnG0y21q09xC7e8+1LeR31S1MAIrDAHp4m7aas4bEkTDTvMAtebQ==}
+ dev: true
+
+ /bmp-js@0.1.0:
+ resolution: {integrity: sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==}
+ dev: false
+
+ /body-parser@1.20.3:
+ resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /body-parser@2.2.0:
+ resolution: {integrity: sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==}
+ engines: {node: '>=18'}
+ dependencies:
+ bytes: 3.1.2
+ content-type: 1.0.5
+ debug: 4.4.3
+ http-errors: 2.0.0
+ iconv-lite: 0.6.3
+ on-finished: 2.4.1
+ qs: 6.14.0
+ raw-body: 3.0.1
+ type-is: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+ dev: true
+
+ /brace-expansion@1.1.12:
+ resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
+ dependencies:
+ balanced-match: 1.0.2
+ concat-map: 0.0.1
+ dev: true
+
+ /brace-expansion@2.0.2:
+ resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==}
+ dependencies:
+ balanced-match: 1.0.2
+ dev: true
+
+ /braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: 7.1.1
+
+ /browser-process-hrtime@1.0.0:
+ resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
+ dev: true
+
+ /browserslist-to-esbuild@2.1.1(browserslist@4.26.3):
+ resolution: {integrity: sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==}
+ engines: {node: '>=18'}
+ hasBin: true
+ peerDependencies:
+ browserslist: '*'
+ dependencies:
+ browserslist: 4.26.3
+ meow: 13.2.0
+ dev: true
+
+ /browserslist@4.26.3:
+ resolution: {integrity: sha512-lAUU+02RFBuCKQPj/P6NgjlbCnLBMp4UtgTx7vNHd3XSIJF87s9a5rA3aH2yw3GS9DqZAUbOtZdCCiZeVRqt0w==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+ dependencies:
+ baseline-browser-mapping: 2.8.14
+ caniuse-lite: 1.0.30001749
+ electron-to-chromium: 1.5.233
+ node-releases: 2.0.23
+ update-browserslist-db: 1.1.3(browserslist@4.26.3)
+
+ /bser@2.1.1:
+ resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
+ dependencies:
+ node-int64: 0.4.0
+ dev: true
+
+ /buffer-equal@0.0.1:
+ resolution: {integrity: sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==}
+ engines: {node: '>=0.4.0'}
+ dev: false
+
+ /buffer-from@1.1.2:
+ resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
+
+ /buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+ dependencies:
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+ dev: false
+
+ /builtin-modules@5.0.0:
+ resolution: {integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==}
+ engines: {node: '>=18.20'}
+ dev: true
+
+ /bytes@3.1.2:
+ resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /c12@3.3.0:
+ resolution: {integrity: sha512-K9ZkuyeJQeqLEyqldbYLG3wjqwpw4BVaAqvmxq3GYKK0b1A/yYQdIcJxkzAOWcNVWhJpRXAPfZFueekiY/L8Dw==}
+ peerDependencies:
+ magicast: ^0.3.5
+ peerDependenciesMeta:
+ magicast:
+ optional: true
+ dependencies:
+ chokidar: 4.0.3
+ confbox: 0.2.2
+ defu: 6.1.4
+ dotenv: 17.2.3
+ exsolve: 1.0.7
+ giget: 2.0.0
+ jiti: 2.6.1
+ ohash: 2.0.11
+ pathe: 2.0.3
+ perfect-debounce: 2.0.0
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ dev: false
+
+ /cac@6.7.14:
+ resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /cac@6.7.9:
+ resolution: {integrity: sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /cacheable@2.1.0:
+ resolution: {integrity: sha512-zzL1BxdnqwD69JRT0dihnawAcLkBMwAH+hZSKjUzeBbPedVhk3qYPjRw9VOMYWwt5xRih5xd8S+3kEdGohZm/g==}
+ dependencies:
+ '@cacheable/memoize': 2.0.3
+ '@cacheable/memory': 2.0.3
+ '@cacheable/utils': 2.1.0
+ hookified: 1.12.1
+ keyv: 5.5.3
+ qified: 0.5.0
+ dev: true
+
+ /call-bind-apply-helpers@1.0.2:
+ resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+ dev: true
+
+ /call-bound@1.0.4:
+ resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ get-intrinsic: 1.3.0
+ dev: true
+
+ /callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /camelcase@5.3.1:
+ resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /camelcase@6.3.0:
+ resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /caniuse-lite@1.0.30001749:
+ resolution: {integrity: sha512-0rw2fJOmLfnzCRbkm8EyHL8SvI2Apu5UbnQuTsJ0ClgrH8hcwFooJ1s5R0EP8o8aVrFu8++ae29Kt9/gZAZp/Q==}
+
+ /ccount@2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+ dev: true
+
+ /centra@2.7.0:
+ resolution: {integrity: sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==}
+ dependencies:
+ follow-redirects: 1.15.11
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
+ dev: true
+
+ /chalk@5.6.2:
+ resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ dev: true
+
+ /change-case@5.4.4:
+ resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==}
+ dev: true
+
+ /char-regex@1.0.2:
+ resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /character-entities@2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+ dev: true
+
+ /chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+ engines: {node: '>= 8.10.0'}
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.3
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ /chokidar@4.0.3:
+ resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
+ engines: {node: '>= 14.16.0'}
+ dependencies:
+ readdirp: 4.1.2
+
+ /ci-info@3.9.0:
+ resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /ci-info@4.3.1:
+ resolution: {integrity: sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /citty@0.1.6:
+ resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
+ dependencies:
+ consola: 3.4.2
+ dev: false
+
+ /cjs-module-lexer@1.4.3:
+ resolution: {integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==}
+ dev: true
+
+ /clean-regexp@1.0.0:
+ resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
+ engines: {node: '>=4'}
+ dependencies:
+ escape-string-regexp: 1.0.5
+ dev: true
+
+ /clean-stack@2.2.0:
+ resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /cli-cursor@5.0.0:
+ resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
+ engines: {node: '>=18'}
+ dependencies:
+ restore-cursor: 5.1.0
+ dev: true
+
+ /cli-truncate@5.1.0:
+ resolution: {integrity: sha512-7JDGG+4Zp0CsknDCedl0DYdaeOhc46QNpXi3NLQblkZpXXgA6LncLDUUyvrjSvZeF3VRQa+KiMGomazQrC1V8g==}
+ engines: {node: '>=20'}
+ dependencies:
+ slice-ansi: 7.1.2
+ string-width: 8.1.0
+ dev: true
+
+ /clipboard@2.0.11:
+ resolution: {integrity: sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==}
+ dependencies:
+ good-listener: 1.2.2
+ select: 1.1.2
+ tiny-emitter: 2.1.0
+ dev: false
+
+ /cliui@7.0.4:
+ resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+ dev: true
+
+ /cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+ dev: true
+
+ /co@4.6.0:
+ resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
+ engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
+ dev: true
+
+ /collect-v8-coverage@1.0.2:
+ resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==}
+ dev: true
+
+ /color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: 1.1.4
+ dev: true
+
+ /color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ dev: true
+
+ /colord@2.9.3:
+ resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
+ dev: true
+
+ /colorette@2.0.20:
+ resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+ dev: true
+
+ /combined-stream@1.0.8:
+ resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ delayed-stream: 1.0.0
+ dev: true
+
+ /commander@14.0.1:
+ resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==}
+ engines: {node: '>=20'}
+ dev: true
+
+ /commander@2.20.3:
+ resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
+
+ /comment-parser@1.4.1:
+ resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
+ engines: {node: '>= 12.0.0'}
+ dev: true
+
+ /compare-versions@3.6.0:
+ resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==}
+
+ /concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+ dev: true
+
+ /confbox@0.1.8:
+ resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==}
+
+ /confbox@0.2.2:
+ resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==}
+
+ /consola@3.4.2:
+ resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+
+ /content-disposition@0.5.4:
+ resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: true
+
+ /content-disposition@1.0.0:
+ resolution: {integrity: sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: true
+
+ /content-type@1.0.5:
+ resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /convert-source-map@1.9.0:
+ resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
+ dev: true
+
+ /convert-source-map@2.0.0:
+ resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+
+ /cookie-signature@1.0.6:
+ resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
+ dev: true
+
+ /cookie-signature@1.2.2:
+ resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==}
+ engines: {node: '>=6.6.0'}
+ dev: true
+
+ /cookie@0.7.1:
+ resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /cookie@0.7.2:
+ resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /copy-anything@3.0.5:
+ resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
+ engines: {node: '>=12.13'}
+ dependencies:
+ is-what: 4.1.16
+ dev: true
+
+ /core-js-compat@3.45.1:
+ resolution: {integrity: sha512-tqTt5T4PzsMIZ430XGviK4vzYSoeNJ6CXODi6c/voxOT6IZqBht5/EKaSNnYiEjjRYxjVz7DQIsOsY0XNi8PIA==}
+ dependencies:
+ browserslist: 4.26.3
+ dev: true
+
+ /core-js@3.45.1:
+ resolution: {integrity: sha512-L4NPsJlCfZsPeXukyzHFlg/i7IIVwHSItR0wg0FLNqYClJ4MQYTYLbC7EkjKYRLZF2iof2MUgN0EGy7MdQFChg==}
+ requiresBuild: true
+
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+ dev: true
+
+ /cosmiconfig@9.0.0(typescript@5.9.3):
+ resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ typescript: '>=4.9.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ env-paths: 2.2.1
+ import-fresh: 3.3.1
+ js-yaml: 4.1.0
+ parse-json: 5.2.0
+ typescript: 5.9.3
+ dev: true
+
+ /cross-env@7.0.3:
+ resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
+ engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
+ hasBin: true
+ dependencies:
+ cross-spawn: 7.0.6
+ dev: true
+
+ /cross-spawn@7.0.6:
+ resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
+ engines: {node: '>= 8'}
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+ dev: true
+
+ /css-font-size-keywords@1.0.0:
+ resolution: {integrity: sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==}
+ dev: false
+
+ /css-font-stretch-keywords@1.0.1:
+ resolution: {integrity: sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==}
+ dev: false
+
+ /css-font-style-keywords@1.0.1:
+ resolution: {integrity: sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==}
+ dev: false
+
+ /css-font-weight-keywords@1.0.0:
+ resolution: {integrity: sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==}
+ dev: false
+
+ /css-functions-list@3.2.3:
+ resolution: {integrity: sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==}
+ engines: {node: '>=12 || >=16'}
+ dev: true
+
+ /css-list-helpers@2.0.0:
+ resolution: {integrity: sha512-9Bj8tZ0jWbAM3u/U6m/boAzAwLPwtjzFvwivr2piSvyVa3K3rChJzQy4RIHkNkKiZCHrEMWDJWtTR8UyVhdDnQ==}
+ dev: false
+
+ /css-system-font-keywords@1.0.0:
+ resolution: {integrity: sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==}
+ dev: false
+
+ /css-tree@3.1.0:
+ resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==}
+ engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
+ dependencies:
+ mdn-data: 2.12.2
+ source-map-js: 1.2.1
+ dev: true
+
+ /cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ /cssom@0.3.8:
+ resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==}
+ dev: true
+
+ /cssom@0.4.4:
+ resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==}
+ dev: true
+
+ /cssstyle@2.3.0:
+ resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==}
+ engines: {node: '>=8'}
+ dependencies:
+ cssom: 0.3.8
+ dev: true
+
+ /csstype@3.1.3:
+ resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+
+ /czg@1.12.0:
+ resolution: {integrity: sha512-LGltcoZ5m7vhe3WNw16QXqd5WurnHegx9V15MwZJtFAU2AVCYLCqDbwxPUgZOnAcdzzooq33ONcU148HOQsjdA==}
+ engines: {node: '>=v12.20.0'}
+ hasBin: true
+ dev: true
+
+ /data-urls@2.0.0:
+ resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ abab: 2.0.6
+ whatwg-mimetype: 2.3.0
+ whatwg-url: 8.7.0
+ dev: true
+
+ /dayjs@1.11.18:
+ resolution: {integrity: sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==}
+
+ /debug@2.6.9:
+ resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.0.0
+ dev: true
+
+ /debug@4.4.3:
+ resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.3
+
+ /decimal.js@10.6.0:
+ resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==}
+ dev: true
+
+ /decode-named-character-reference@1.2.0:
+ resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==}
+ dependencies:
+ character-entities: 2.0.2
+ dev: true
+
+ /dedent@0.7.0:
+ resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
+ dev: true
+
+ /deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+ dev: true
+
+ /deep-pick-omit@1.2.1:
+ resolution: {integrity: sha512-2J6Kc/m3irCeqVG42T+SaUMesaK7oGWaedGnQQK/+O0gYc+2SP5bKh/KKTE7d7SJ+GCA9UUE1GRzh6oDe0EnGw==}
+ dev: false
+
+ /deepmerge@4.3.1:
+ resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /default-gateway@6.0.3:
+ resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
+ engines: {node: '>= 10'}
+ dependencies:
+ execa: 5.1.1
+ dev: true
+
+ /define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /defu@6.1.4:
+ resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
+
+ /del@6.1.1:
+ resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==}
+ engines: {node: '>=10'}
+ dependencies:
+ globby: 11.1.0
+ graceful-fs: 4.2.11
+ is-glob: 4.0.3
+ is-path-cwd: 2.2.0
+ is-path-inside: 3.0.3
+ p-map: 4.0.0
+ rimraf: 3.0.2
+ slash: 3.0.0
+ dev: true
+
+ /delayed-stream@1.0.0:
+ resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
+ engines: {node: '>=0.4.0'}
+ dev: true
+
+ /delegate@3.2.0:
+ resolution: {integrity: sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==}
+ dev: false
+
+ /depd@2.0.0:
+ resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /dequal@2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /destr@2.0.5:
+ resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==}
+
+ /destroy@1.2.0:
+ resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+ dev: true
+
+ /detect-libc@1.0.3:
+ resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+
+ /detect-newline@3.1.0:
+ resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /devlop@1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+ dependencies:
+ dequal: 2.0.3
+ dev: true
+
+ /diff-sequences@27.5.1:
+ resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dev: true
+
+ /dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+ dependencies:
+ path-type: 4.0.0
+ dev: true
+
+ /dom-serializer@2.0.0:
+ resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ entities: 4.5.0
+ dev: true
+
+ /dom-walk@0.1.2:
+ resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==}
+ dev: false
+
+ /domelementtype@2.3.0:
+ resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
+ dev: true
+
+ /domexception@2.0.1:
+ resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==}
+ engines: {node: '>=8'}
+ deprecated: Use your platform's native DOMException instead
+ dependencies:
+ webidl-conversions: 5.0.0
+ dev: true
+
+ /domhandler@5.0.3:
+ resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
+ engines: {node: '>= 4'}
+ dependencies:
+ domelementtype: 2.3.0
+ dev: true
+
+ /domutils@3.2.2:
+ resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==}
+ dependencies:
+ dom-serializer: 2.0.0
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ dev: true
+
+ /dotenv@17.2.3:
+ resolution: {integrity: sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /dunder-proto@1.0.1:
+ resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-errors: 1.3.0
+ gopd: 1.2.0
+ dev: true
+
+ /duplexer@0.1.2:
+ resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
+ dev: true
+
+ /eastasianwidth@0.2.0:
+ resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+ dev: true
+
+ /ee-first@1.1.1:
+ resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
+ dev: true
+
+ /electron-to-chromium@1.5.233:
+ resolution: {integrity: sha512-iUdTQSf7EFXsDdQsp8MwJz5SVk4APEFqXU/S47OtQ0YLqacSwPXdZ5vRlMX3neb07Cy2vgioNuRnWUXFwuslkg==}
+
+ /emittery@0.8.1:
+ resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /emoji-regex@10.5.0:
+ resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==}
+ dev: true
+
+ /emoji-regex@8.0.0:
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+ dev: true
+
+ /emoji-regex@9.2.2:
+ resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+ dev: true
+
+ /empathic@2.0.0:
+ resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /encodeurl@1.0.2:
+ resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /encodeurl@2.0.0:
+ resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /enhanced-resolve@5.18.3:
+ resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ graceful-fs: 4.2.11
+ tapable: 2.3.0
+ dev: true
+
+ /entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+
+ /env-paths@2.2.1:
+ resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /environment@1.1.0:
+ resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /error-ex@1.3.4:
+ resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==}
+ dependencies:
+ is-arrayish: 0.2.1
+ dev: true
+
+ /errx@0.1.0:
+ resolution: {integrity: sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==}
+ dev: false
+
+ /es-define-property@1.0.1:
+ resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /es-errors@1.3.0:
+ resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /es-module-lexer@1.7.0:
+ resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
+
+ /es-object-atoms@1.1.1:
+ resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+ dev: true
+
+ /es-set-tostringtag@2.1.0:
+ resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+ dev: true
+
+ /esbuild@0.20.2:
+ resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ 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
+
+ /escalade@3.2.0:
+ resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
+ engines: {node: '>=6'}
+
+ /escape-html@1.0.3:
+ resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
+ dev: true
+
+ /escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+ dev: true
+
+ /escape-string-regexp@2.0.0:
+ resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+
+ /escodegen@2.1.0:
+ resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==}
+ engines: {node: '>=6.0'}
+ hasBin: true
+ dependencies:
+ esprima: 4.0.1
+ estraverse: 5.3.0
+ esutils: 2.0.3
+ optionalDependencies:
+ source-map: 0.6.1
+ dev: true
+
+ /eslint-compat-utils@0.5.1(eslint@9.32.0):
+ resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ eslint: 9.32.0
+ semver: 7.7.3
+ dev: true
+
+ /eslint-compat-utils@0.6.5(eslint@9.32.0):
+ resolution: {integrity: sha512-vAUHYzue4YAa2hNACjB8HvUQj5yehAZgiClyFVVom9cP8z5NSFq3PwB/TtJslN2zAMgRX6FCFCjYBbQh71g5RQ==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ eslint: 9.32.0
+ semver: 7.7.3
+ dev: true
+
+ /eslint-config-flat-gitignore@2.1.0(eslint@9.32.0):
+ resolution: {integrity: sha512-cJzNJ7L+psWp5mXM7jBX+fjHtBvvh06RBlcweMhKD8jWqQw0G78hOW5tpVALGHGFPsBV+ot2H+pdDGJy6CV8pA==}
+ peerDependencies:
+ eslint: ^9.5.0
+ dependencies:
+ '@eslint/compat': 1.4.0(eslint@9.32.0)
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-flat-config-utils@2.1.4:
+ resolution: {integrity: sha512-bEnmU5gqzS+4O+id9vrbP43vByjF+8KOs+QuuV4OlqAuXmnRW2zfI/Rza1fQvdihQ5h4DUo0NqFAiViD4mSrzQ==}
+ dependencies:
+ pathe: 2.0.3
+ dev: true
+
+ /eslint-json-compat-utils@0.2.1(eslint@9.32.0)(jsonc-eslint-parser@2.4.1):
+ resolution: {integrity: sha512-YzEodbDyW8DX8bImKhAcCeu/L31Dd/70Bidx2Qex9OFUtgzXLqtfWL4Hr5fM/aCCB8QUZLuJur0S9k6UfgFkfg==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ '@eslint/json': '*'
+ eslint: '*'
+ jsonc-eslint-parser: ^2.4.0
+ peerDependenciesMeta:
+ '@eslint/json':
+ optional: true
+ dependencies:
+ eslint: 9.32.0
+ esquery: 1.6.0
+ jsonc-eslint-parser: 2.4.1
+ dev: true
+
+ /eslint-merge-processors@2.0.0(eslint@9.32.0):
+ resolution: {integrity: sha512-sUuhSf3IrJdGooquEUB5TNpGNpBoQccbnaLHsb1XkBLUPPqCNivCpY05ZcpCOiV9uHwO2yxXEWVczVclzMxYlA==}
+ peerDependencies:
+ eslint: '*'
+ dependencies:
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-plugin-antfu@3.1.1(eslint@9.32.0):
+ resolution: {integrity: sha512-7Q+NhwLfHJFvopI2HBZbSxWXngTwBLKxW1AGXLr2lEGxcEIK/AsDs8pn8fvIizl5aZjBbVbVK5ujmMpBe4Tvdg==}
+ peerDependencies:
+ eslint: '*'
+ dependencies:
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-plugin-command@3.3.1(eslint@9.32.0):
+ resolution: {integrity: sha512-fBVTXQ2y48TVLT0+4A6PFINp7GcdIailHAXbvPBixE7x+YpYnNQhFZxTdvnb+aWk+COgNebQKen/7m4dmgyWAw==}
+ peerDependencies:
+ eslint: '*'
+ dependencies:
+ '@es-joy/jsdoccomment': 0.50.2
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-plugin-es-x@7.8.0(eslint@9.32.0):
+ resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=8'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@eslint-community/regexpp': 4.12.1
+ eslint: 9.32.0
+ eslint-compat-utils: 0.5.1(eslint@9.32.0)
+ dev: true
+
+ /eslint-plugin-import-lite@0.3.0(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-dkNBAL6jcoCsXZsQ/Tt2yXmMDoNt5NaBh/U7yvccjiK8cai6Ay+MK77bMykmqQA2bTF6lngaLCDij6MTO3KkvA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=9.0.0'
+ typescript: '>=4.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@typescript-eslint/types': 8.46.0
+ eslint: 9.32.0
+ typescript: 5.9.3
+ dev: true
+
+ /eslint-plugin-jsdoc@51.4.1(eslint@9.32.0):
+ resolution: {integrity: sha512-y4CA9OkachG8v5nAtrwvcvjIbdcKgSyS6U//IfQr4FZFFyeBFwZFf/tfSsMr46mWDJgidZjBTqoCRlXywfFBMg==}
+ engines: {node: '>=20.11.0'}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+ dependencies:
+ '@es-joy/jsdoccomment': 0.52.0
+ are-docs-informative: 0.0.2
+ comment-parser: 1.4.1
+ debug: 4.4.3
+ escape-string-regexp: 4.0.0
+ eslint: 9.32.0
+ espree: 10.4.0
+ esquery: 1.6.0
+ parse-imports-exports: 0.2.4
+ semver: 7.7.3
+ spdx-expression-parse: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /eslint-plugin-jsonc@2.21.0(eslint@9.32.0):
+ resolution: {integrity: sha512-HttlxdNG5ly3YjP1cFMP62R4qKLxJURfBZo2gnMY+yQojZxkLyOpY1H1KRTKBmvQeSG9pIpSGEhDjE17vvYosg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ diff-sequences: 27.5.1
+ eslint: 9.32.0
+ eslint-compat-utils: 0.6.5(eslint@9.32.0)
+ eslint-json-compat-utils: 0.2.1(eslint@9.32.0)(jsonc-eslint-parser@2.4.1)
+ espree: 10.4.0
+ graphemer: 1.4.0
+ jsonc-eslint-parser: 2.4.1
+ natural-compare: 1.4.0
+ synckit: 0.11.11
+ transitivePeerDependencies:
+ - '@eslint/json'
+ dev: true
+
+ /eslint-plugin-n@17.23.1(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-68PealUpYoHOBh332JLLD9Sj7OQUDkFpmcfqt8R9sySfFSeuGJjMTJQvCRRB96zO3A/PELRLkPrzsHmzEFQQ5A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.23.0'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ enhanced-resolve: 5.18.3
+ eslint: 9.32.0
+ eslint-plugin-es-x: 7.8.0(eslint@9.32.0)
+ get-tsconfig: 4.12.0
+ globals: 15.15.0
+ globrex: 0.1.2
+ ignore: 5.3.2
+ semver: 7.7.3
+ ts-declaration-location: 1.0.7(typescript@5.9.3)
+ transitivePeerDependencies:
+ - typescript
+ dev: true
+
+ /eslint-plugin-no-only-tests@3.3.0:
+ resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==}
+ engines: {node: '>=5.0.0'}
+ dev: true
+
+ /eslint-plugin-perfectionist@4.15.1(eslint@9.32.0)(typescript@5.9.3):
+ resolution: {integrity: sha512-MHF0cBoOG0XyBf7G0EAFCuJJu4I18wy0zAoT1OHfx2o6EOx1EFTIzr2HGeuZa1kDcusoX0xJ9V7oZmaeFd773Q==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ eslint: '>=8.45.0'
+ dependencies:
+ '@typescript-eslint/types': 8.46.0
+ '@typescript-eslint/utils': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ eslint: 9.32.0
+ natural-orderby: 5.0.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: true
+
+ /eslint-plugin-pnpm@1.2.0(eslint@9.32.0):
+ resolution: {integrity: sha512-HKIFEmRGVxXvPx/hCpZY0qUGCYoaSYO6EVut4Hf9bckC0qP6F23mBgdoIExRZIWoViHuMznSaDU1FpQmc2xpgw==}
+ peerDependencies:
+ eslint: ^9.0.0
+ dependencies:
+ empathic: 2.0.0
+ eslint: 9.32.0
+ jsonc-eslint-parser: 2.4.1
+ pathe: 2.0.3
+ pnpm-workspace-yaml: 1.2.0
+ tinyglobby: 0.2.15
+ yaml-eslint-parser: 1.3.0
+ dev: true
+
+ /eslint-plugin-regexp@2.10.0(eslint@9.32.0):
+ resolution: {integrity: sha512-ovzQT8ESVn5oOe5a7gIDPD5v9bCSjIFJu57sVPDqgPRXicQzOnYfFN21WoQBQF18vrhT5o7UMKFwJQVVjyJ0ng==}
+ engines: {node: ^18 || >=20}
+ peerDependencies:
+ eslint: '>=8.44.0'
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@eslint-community/regexpp': 4.12.1
+ comment-parser: 1.4.1
+ eslint: 9.32.0
+ jsdoc-type-pratt-parser: 4.8.0
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
+ scslre: 0.3.0
+ dev: true
+
+ /eslint-plugin-toml@0.12.0(eslint@9.32.0):
+ resolution: {integrity: sha512-+/wVObA9DVhwZB1nG83D2OAQRrcQZXy+drqUnFJKymqnmbnbfg/UPmEMCKrJNcEboUGxUjYrJlgy+/Y930mURQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ debug: 4.4.3
+ eslint: 9.32.0
+ eslint-compat-utils: 0.6.5(eslint@9.32.0)
+ lodash: 4.17.21
+ toml-eslint-parser: 0.10.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /eslint-plugin-unicorn@60.0.0(eslint@9.32.0):
+ resolution: {integrity: sha512-QUzTefvP8stfSXsqKQ+vBQSEsXIlAiCduS/V1Em+FKgL9c21U/IIm20/e3MFy1jyCf14tHAhqC1sX8OTy6VUCg==}
+ engines: {node: ^20.10.0 || >=21.0.0}
+ peerDependencies:
+ eslint: '>=9.29.0'
+ dependencies:
+ '@babel/helper-validator-identifier': 7.27.1
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@eslint/plugin-kit': 0.3.5
+ change-case: 5.4.4
+ ci-info: 4.3.1
+ clean-regexp: 1.0.0
+ core-js-compat: 3.45.1
+ eslint: 9.32.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.12.0
+ semver: 7.7.3
+ strip-indent: 4.1.0
+ dev: true
+
+ /eslint-plugin-unused-imports@4.2.0(@typescript-eslint/eslint-plugin@8.46.0)(eslint@9.32.0):
+ resolution: {integrity: sha512-hLbJ2/wnjKq4kGA9AUaExVFIbNzyxYdVo49QZmKCnhk5pc9wcYRbfgLHvWJ8tnsdcseGhoUAddm9gn/lt+d74w==}
+ peerDependencies:
+ '@typescript-eslint/eslint-plugin': ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0
+ eslint: ^9.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ '@typescript-eslint/eslint-plugin':
+ optional: true
+ dependencies:
+ '@typescript-eslint/eslint-plugin': 8.46.0(@typescript-eslint/parser@8.46.0)(eslint@9.32.0)(typescript@5.9.3)
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-plugin-vue@10.5.0(@stylistic/eslint-plugin@5.4.0)(@typescript-eslint/parser@8.46.0)(eslint@9.32.0)(vue-eslint-parser@10.2.0):
+ resolution: {integrity: sha512-7BZHsG3kC2vei8F2W8hnfDi9RK+cv5eKPMvzBdrl8Vuc0hR5odGQRli8VVzUkrmUHkxFEm4Iio1r5HOKslO0Aw==}
+ 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
+ vue-eslint-parser: ^10.0.0
+ peerDependenciesMeta:
+ '@stylistic/eslint-plugin':
+ optional: true
+ '@typescript-eslint/parser':
+ optional: true
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@stylistic/eslint-plugin': 5.4.0(eslint@9.32.0)
+ '@typescript-eslint/parser': 8.46.0(eslint@9.32.0)(typescript@5.9.3)
+ eslint: 9.32.0
+ natural-compare: 1.4.0
+ nth-check: 2.1.1
+ postcss-selector-parser: 6.1.2
+ semver: 7.7.3
+ vue-eslint-parser: 10.2.0(eslint@9.32.0)
+ xml-name-validator: 4.0.0
+ dev: true
+
+ /eslint-plugin-yml@1.19.0(eslint@9.32.0):
+ resolution: {integrity: sha512-S+4GbcCWksFKAvFJtf0vpdiCkZZvDJCV4Zsi9ahmYkYOYcf+LRqqzvzkb/ST7vTYV6sFwXOvawzYyL/jFT2nQA==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ debug: 4.4.3
+ diff-sequences: 27.5.1
+ escape-string-regexp: 4.0.0
+ eslint: 9.32.0
+ eslint-compat-utils: 0.6.5(eslint@9.32.0)
+ natural-compare: 1.4.0
+ yaml-eslint-parser: 1.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /eslint-processor-vue-blocks@2.0.0(@vue/compiler-sfc@3.5.22)(eslint@9.32.0):
+ resolution: {integrity: sha512-u4W0CJwGoWY3bjXAuFpc/b6eK3NQEI8MoeW7ritKj3G3z/WtHrKjkqf+wk8mPEy5rlMGS+k6AZYOw2XBoN/02Q==}
+ peerDependencies:
+ '@vue/compiler-sfc': ^3.3.0
+ eslint: '>=9.0.0'
+ dependencies:
+ '@vue/compiler-sfc': 3.5.22
+ eslint: 9.32.0
+ dev: true
+
+ /eslint-scope@8.4.0:
+ resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+ dev: true
+
+ /eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: true
+
+ /eslint-visitor-keys@4.2.1:
+ resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dev: true
+
+ /eslint@9.32.0:
+ resolution: {integrity: sha512-LSehfdpgMeWcTZkWZVIJl+tkZ2nuSkyyB9C27MZqFWXuph7DvaowgcTvKqxvpLW1JZIk8PN7hFY3Rj9LQ7m7lg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ hasBin: true
+ peerDependencies:
+ jiti: '*'
+ peerDependenciesMeta:
+ jiti:
+ optional: true
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.0(eslint@9.32.0)
+ '@eslint-community/regexpp': 4.12.1
+ '@eslint/config-array': 0.21.0
+ '@eslint/config-helpers': 0.3.1
+ '@eslint/core': 0.15.2
+ '@eslint/eslintrc': 3.3.1
+ '@eslint/js': 9.32.0
+ '@eslint/plugin-kit': 0.3.5
+ '@humanfs/node': 0.16.7
+ '@humanwhocodes/module-importer': 1.0.1
+ '@humanwhocodes/retry': 0.4.3
+ '@types/estree': 1.0.8
+ '@types/json-schema': 7.0.15
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.6
+ debug: 4.4.3
+ escape-string-regexp: 4.0.0
+ eslint-scope: 8.4.0
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ esquery: 1.6.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 8.0.0
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ ignore: 5.3.2
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ json-stable-stringify-without-jsonify: 1.0.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /espree@10.4.0:
+ resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ eslint-visitor-keys: 4.2.1
+ dev: true
+
+ /espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ eslint-visitor-keys: 3.4.3
+ dev: true
+
+ /esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+ dev: true
+
+ /esquery@1.6.0:
+ resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
+ engines: {node: '>=0.10'}
+ dependencies:
+ estraverse: 5.3.0
+ dev: true
+
+ /esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+ dependencies:
+ estraverse: 5.3.0
+ dev: true
+
+ /estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+ dev: true
+
+ /estree-walker@2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
+ /estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+ dependencies:
+ '@types/estree': 1.0.8
+
+ /esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /etag@1.8.1:
+ resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /eventemitter3@5.0.1:
+ resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
+ dev: true
+
+ /eventsource-parser@3.0.6:
+ resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==}
+ engines: {node: '>=18.0.0'}
+ dev: true
+
+ /eventsource@3.0.7:
+ resolution: {integrity: sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.6
+ dev: true
+
+ /execa@5.1.1:
+ resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
+ engines: {node: '>=10'}
+ dependencies:
+ cross-spawn: 7.0.6
+ get-stream: 6.0.1
+ human-signals: 2.1.0
+ is-stream: 2.0.1
+ merge-stream: 2.0.0
+ npm-run-path: 4.0.1
+ onetime: 5.1.2
+ signal-exit: 3.0.7
+ strip-final-newline: 2.0.0
+ dev: true
+
+ /exif-parser@0.1.12:
+ resolution: {integrity: sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==}
+ dev: false
+
+ /exit@0.1.2:
+ resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
+ engines: {node: '>= 0.8.0'}
+ dev: true
+
+ /expect@27.5.1:
+ resolution: {integrity: sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ jest-get-type: 27.5.1
+ jest-matcher-utils: 27.5.1
+ jest-message-util: 27.5.1
+ dev: true
+
+ /express-rate-limit@7.5.1(express@5.1.0):
+ resolution: {integrity: sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==}
+ engines: {node: '>= 16'}
+ peerDependencies:
+ express: '>= 4.11'
+ dependencies:
+ express: 5.1.0
+ dev: true
+
+ /express@4.21.2:
+ resolution: {integrity: sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==}
+ engines: {node: '>= 0.10.0'}
+ dependencies:
+ accepts: 1.3.8
+ array-flatten: 1.1.1
+ body-parser: 1.20.3
+ content-disposition: 0.5.4
+ content-type: 1.0.5
+ cookie: 0.7.1
+ 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.3.1
+ 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.12
+ proxy-addr: 2.0.7
+ qs: 6.13.0
+ range-parser: 1.2.1
+ safe-buffer: 5.2.1
+ send: 0.19.0
+ serve-static: 1.16.2
+ setprototypeof: 1.2.0
+ statuses: 2.0.1
+ type-is: 1.6.18
+ utils-merge: 1.0.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /express@5.1.0:
+ resolution: {integrity: sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==}
+ engines: {node: '>= 18'}
+ dependencies:
+ accepts: 2.0.0
+ body-parser: 2.2.0
+ content-disposition: 1.0.0
+ content-type: 1.0.5
+ cookie: 0.7.2
+ cookie-signature: 1.2.2
+ debug: 4.4.3
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ finalhandler: 2.1.0
+ fresh: 2.0.0
+ http-errors: 2.0.0
+ merge-descriptors: 2.0.0
+ mime-types: 3.0.1
+ on-finished: 2.4.1
+ once: 1.4.0
+ parseurl: 1.3.3
+ proxy-addr: 2.0.7
+ qs: 6.14.0
+ range-parser: 1.2.1
+ router: 2.2.0
+ send: 1.2.0
+ serve-static: 2.2.0
+ statuses: 2.0.2
+ type-is: 2.0.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /exsolve@1.0.7:
+ resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==}
+
+ /fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ dev: true
+
+ /fast-glob@3.3.3:
+ resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.8
+
+ /fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+ dev: true
+
+ /fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+ dev: true
+
+ /fast-uri@3.1.0:
+ resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
+ dev: true
+
+ /fastest-levenshtein@1.0.16:
+ resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
+ engines: {node: '>= 4.9.1'}
+ dev: true
+
+ /fastq@1.19.1:
+ resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
+ dependencies:
+ reusify: 1.1.0
+
+ /fault@2.0.1:
+ resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==}
+ dependencies:
+ format: 0.2.2
+ dev: true
+
+ /fb-watchman@2.0.2:
+ resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
+ dependencies:
+ bser: 2.1.1
+ dev: true
+
+ /fdir@6.5.0(picomatch@4.0.3):
+ resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
+ dependencies:
+ picomatch: 4.0.3
+
+ /file-entry-cache@10.1.4:
+ resolution: {integrity: sha512-5XRUFc0WTtUbjfGzEwXc42tiGxQHBmtbUG1h9L2apu4SulCGN3Hqm//9D6FAolf8MYNL7f/YlJl9vy08pj5JuA==}
+ dependencies:
+ flat-cache: 6.1.17
+ dev: true
+
+ /file-entry-cache@8.0.0:
+ resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
+ engines: {node: '>=16.0.0'}
+ dependencies:
+ flat-cache: 4.0.1
+ dev: true
+
+ /file-type@9.0.0:
+ resolution: {integrity: sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
+ dependencies:
+ to-regex-range: 5.0.1
+
+ /finalhandler@1.3.1:
+ resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ debug: 2.6.9
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ statuses: 2.0.1
+ unpipe: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /finalhandler@2.1.0:
+ resolution: {integrity: sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ debug: 4.4.3
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ statuses: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /find-up-simple@1.0.1:
+ resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /find-up@4.1.0:
+ resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+ engines: {node: '>=8'}
+ dependencies:
+ locate-path: 5.0.0
+ path-exists: 4.0.0
+ dev: true
+
+ /find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+ dev: true
+
+ /flat-cache@4.0.1:
+ resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
+ engines: {node: '>=16'}
+ dependencies:
+ flatted: 3.3.3
+ keyv: 4.5.4
+ dev: true
+
+ /flat-cache@6.1.17:
+ resolution: {integrity: sha512-Jzse4YoiUJBVYTwz5Bwl4h/2VQM7e2KK3MVAMlXzX9uamIHAH/TXUlRKU1AQGQOryQhN0EsmufiiF40G057YXA==}
+ dependencies:
+ cacheable: 2.1.0
+ flatted: 3.3.3
+ hookified: 1.12.1
+ dev: true
+
+ /flatted@3.3.3:
+ resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
+ dev: true
+
+ /follow-redirects@1.15.11:
+ resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+ dev: false
+
+ /foreground-child@3.3.1:
+ resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
+ engines: {node: '>=14'}
+ dependencies:
+ cross-spawn: 7.0.6
+ signal-exit: 4.1.0
+ dev: true
+
+ /form-data@3.0.4:
+ resolution: {integrity: sha512-f0cRzm6dkyVYV3nPoooP8XlccPQukegwhAnpoLcXy+X+A8KfpGOoXwDr9FLZd3wzgLaBGQBE3lY93Zm/i1JvIQ==}
+ engines: {node: '>= 6'}
+ dependencies:
+ asynckit: 0.4.0
+ combined-stream: 1.0.8
+ es-set-tostringtag: 2.1.0
+ hasown: 2.0.2
+ mime-types: 2.1.35
+ dev: true
+
+ /format@0.2.2:
+ resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
+ engines: {node: '>=0.4.x'}
+ dev: true
+
+ /forwarded@0.2.0:
+ resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /fraction.js@4.3.7:
+ resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+
+ /fresh@0.5.2:
+ resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /fresh@2.0.0:
+ resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /fs-extra@10.1.0:
+ resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.2.0
+ universalify: 2.0.1
+
+ /fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+ dev: true
+
+ /fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ /function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+
+ /generic-names@4.0.0:
+ resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==}
+ dependencies:
+ loader-utils: 3.3.1
+
+ /gensync@1.0.0-beta.2:
+ resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
+ engines: {node: '>=6.9.0'}
+
+ /get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+ dev: true
+
+ /get-east-asian-width@1.4.0:
+ resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /get-intrinsic@1.3.0:
+ resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
+ engines: {node: '>= 0.4'}
+ 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
+ dev: true
+
+ /get-package-type@0.1.0:
+ resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
+ engines: {node: '>=8.0.0'}
+ dev: true
+
+ /get-proto@1.0.1:
+ resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ dunder-proto: 1.0.1
+ es-object-atoms: 1.1.1
+ dev: true
+
+ /get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /get-tsconfig@4.12.0:
+ resolution: {integrity: sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==}
+ dependencies:
+ resolve-pkg-maps: 1.0.0
+ dev: true
+
+ /giget@2.0.0:
+ resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==}
+ hasBin: true
+ dependencies:
+ citty: 0.1.6
+ consola: 3.4.2
+ defu: 6.1.4
+ node-fetch-native: 1.6.7
+ nypm: 0.6.2
+ pathe: 2.0.3
+ dev: false
+
+ /github-slugger@2.0.0:
+ resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==}
+ dev: true
+
+ /glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+ dependencies:
+ is-glob: 4.0.3
+
+ /glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: true
+
+ /glob@11.0.3:
+ resolution: {integrity: sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+ dependencies:
+ foreground-child: 3.3.1
+ jackspeak: 4.1.1
+ minimatch: 10.0.3
+ minipass: 7.1.2
+ package-json-from-dist: 1.0.1
+ path-scurry: 2.0.0
+ dev: true
+
+ /glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ deprecated: Glob versions prior to v9 are no longer supported
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
+ dev: true
+
+ /global-modules@2.0.0:
+ resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==}
+ engines: {node: '>=6'}
+ dependencies:
+ global-prefix: 3.0.0
+ dev: true
+
+ /global-prefix@3.0.0:
+ resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==}
+ engines: {node: '>=6'}
+ dependencies:
+ ini: 1.3.8
+ kind-of: 6.0.3
+ which: 1.3.1
+ dev: true
+
+ /global@4.4.0:
+ resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==}
+ dependencies:
+ min-document: 2.19.0
+ process: 0.11.10
+ dev: false
+
+ /globals@14.0.0:
+ resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /globals@15.15.0:
+ resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /globals@16.4.0:
+ resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+ dependencies:
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.3
+ ignore: 5.3.2
+ merge2: 1.4.1
+ slash: 3.0.0
+ dev: true
+
+ /globjoin@0.1.4:
+ resolution: {integrity: sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==}
+ dev: true
+
+ /globrex@0.1.2:
+ resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
+ dev: true
+
+ /good-listener@1.2.2:
+ resolution: {integrity: sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==}
+ dependencies:
+ delegate: 3.2.0
+ dev: false
+
+ /gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+
+ /graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+ dev: true
+
+ /gzip-size@6.0.0:
+ resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ duplexer: 0.1.2
+ dev: true
+
+ /has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /has-tostringtag@1.0.2:
+ resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-symbols: 1.1.0
+ dev: true
+
+ /hash-sum@2.0.0:
+ resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==}
+
+ /hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ function-bind: 1.1.2
+
+ /hookable@5.5.3:
+ resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+ dev: true
+
+ /hookified@1.12.1:
+ resolution: {integrity: sha512-xnKGl+iMIlhrZmGHB729MqlmPoWBznctSQTYCpFKqNsCgimJQmithcW0xSQMMFzYnV2iKUh25alswn6epgxS0Q==}
+ dev: true
+
+ /html-encoding-sniffer@2.0.1:
+ resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ whatwg-encoding: 1.0.5
+ dev: true
+
+ /html-escaper@2.0.2:
+ resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
+ dev: true
+
+ /html-tags@3.3.1:
+ resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /htmlparser2@8.0.2:
+ resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ domutils: 3.2.2
+ entities: 4.5.0
+ dev: true
+
+ /http-errors@2.0.0:
+ resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ depd: 2.0.0
+ inherits: 2.0.4
+ setprototypeof: 1.2.0
+ statuses: 2.0.1
+ toidentifier: 1.0.1
+ dev: true
+
+ /http-proxy-agent@4.0.1:
+ resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
+ engines: {node: '>= 6'}
+ dependencies:
+ '@tootallnate/once': 1.1.2
+ agent-base: 6.0.2
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
+ engines: {node: '>= 6'}
+ dependencies:
+ agent-base: 6.0.2
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /human-signals@2.1.0:
+ resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
+ engines: {node: '>=10.17.0'}
+ dev: true
+
+ /iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ safer-buffer: 2.1.2
+ dev: true
+
+ /iconv-lite@0.6.3:
+ resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ safer-buffer: 2.1.2
+ dev: true
+
+ /iconv-lite@0.7.0:
+ resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ safer-buffer: 2.1.2
+ dev: true
+
+ /icss-replace-symbols@1.1.0:
+ resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==}
+
+ /icss-utils@5.1.0(postcss@8.5.6):
+ resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.5.6
+
+ /ieee754@1.2.1:
+ resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
+ dev: false
+
+ /ignore@5.3.2:
+ resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+ engines: {node: '>= 4'}
+ dev: true
+
+ /ignore@7.0.5:
+ resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
+ engines: {node: '>= 4'}
+
+ /immutable@4.3.7:
+ resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==}
+
+ /import-fresh@3.3.1:
+ resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
+ engines: {node: '>=6'}
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+ dev: true
+
+ /import-local@3.2.0:
+ resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dependencies:
+ pkg-dir: 4.2.0
+ resolve-cwd: 3.0.0
+ dev: true
+
+ /imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+ dev: true
+
+ /indent-string@4.0.0:
+ resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /indent-string@5.0.0:
+ resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /inflight@1.0.6:
+ resolution: {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.
+ dependencies:
+ once: 1.4.0
+ wrappy: 1.0.2
+ dev: true
+
+ /inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+ dev: true
+
+ /ini@1.3.8:
+ resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+ dev: true
+
+ /invert-kv@3.0.1:
+ resolution: {integrity: sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==}
+ engines: {node: '>=8'}
+
+ /ipaddr.js@1.9.1:
+ resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
+ engines: {node: '>= 0.10'}
+ dev: true
+
+ /is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+ dev: true
+
+ /is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+ dependencies:
+ binary-extensions: 2.3.0
+
+ /is-builtin-module@5.0.0:
+ resolution: {integrity: sha512-f4RqJKBUe5rQkJ2eJEJBXSticB3hGbN9j0yxxMQFqIW89Jp9WYFtzfTcRlstDKVUTRzSOTLKRfO9vIztenwtxA==}
+ engines: {node: '>=18.20'}
+ dependencies:
+ builtin-modules: 5.0.0
+ dev: true
+
+ /is-core-module@2.16.1:
+ resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ hasown: 2.0.2
+
+ /is-docker@2.2.1:
+ resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dev: true
+
+ /is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+
+ /is-fullwidth-code-point@3.0.0:
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /is-fullwidth-code-point@5.1.0:
+ resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==}
+ engines: {node: '>=18'}
+ dependencies:
+ get-east-asian-width: 1.4.0
+ dev: true
+
+ /is-function@1.0.2:
+ resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==}
+ dev: false
+
+ /is-generator-fn@2.1.0:
+ resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extglob: 2.1.1
+
+ /is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+
+ /is-path-cwd@2.2.0:
+ resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /is-plain-object@5.0.0:
+ resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /is-potential-custom-element-name@1.0.1:
+ resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
+ dev: true
+
+ /is-promise@4.0.0:
+ resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==}
+ dev: true
+
+ /is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /is-typedarray@1.0.0:
+ resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
+ dev: true
+
+ /is-what@4.1.16:
+ resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
+ engines: {node: '>=12.13'}
+ dev: true
+
+ /is-wsl@2.2.0:
+ resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
+ engines: {node: '>=8'}
+ dependencies:
+ is-docker: 2.2.1
+ dev: true
+
+ /isbinaryfile@5.0.6:
+ resolution: {integrity: sha512-I+NmIfBHUl+r2wcDd6JwE9yWje/PIVY/R5/CmV8dXLZd5K+L9X2klAOwfAHNnondLXkbHyTAleQAWonpTJBTtw==}
+ engines: {node: '>= 18.0.0'}
+
+ /isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+ dev: true
+
+ /istanbul-lib-coverage@3.2.2:
+ resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /istanbul-lib-instrument@5.2.1:
+ resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/parser': 7.28.4
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-coverage: 3.2.2
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /istanbul-lib-report@3.0.1:
+ resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
+ engines: {node: '>=10'}
+ dependencies:
+ istanbul-lib-coverage: 3.2.2
+ make-dir: 4.0.0
+ supports-color: 7.2.0
+ dev: true
+
+ /istanbul-lib-source-maps@4.0.1:
+ resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==}
+ engines: {node: '>=10'}
+ dependencies:
+ debug: 4.4.3
+ istanbul-lib-coverage: 3.2.2
+ source-map: 0.6.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /istanbul-reports@3.2.0:
+ resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==}
+ engines: {node: '>=8'}
+ dependencies:
+ html-escaper: 2.0.2
+ istanbul-lib-report: 3.0.1
+ dev: true
+
+ /jackspeak@4.1.1:
+ resolution: {integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==}
+ engines: {node: 20 || >=22}
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+ dev: true
+
+ /jest-changed-files@27.5.1:
+ resolution: {integrity: sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ execa: 5.1.1
+ throat: 6.0.2
+ dev: true
+
+ /jest-circus@27.5.1:
+ resolution: {integrity: sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ chalk: 4.1.2
+ co: 4.6.0
+ dedent: 0.7.0
+ expect: 27.5.1
+ is-generator-fn: 2.1.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.6
+ throat: 6.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /jest-cli@27.5.1:
+ resolution: {integrity: sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ hasBin: true
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ dependencies:
+ '@jest/core': 27.5.1
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ exit: 0.1.2
+ graceful-fs: 4.2.11
+ import-local: 3.2.0
+ jest-config: 27.5.1
+ jest-util: 27.5.1
+ jest-validate: 27.5.1
+ prompts: 2.4.2
+ yargs: 16.2.0
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ dev: true
+
+ /jest-config@27.5.1:
+ resolution: {integrity: sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==}
+ 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
+ dependencies:
+ '@babel/core': 7.28.4
+ '@jest/test-sequencer': 27.5.1
+ '@jest/types': 27.5.1
+ babel-jest: 27.5.1(@babel/core@7.28.4)
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ deepmerge: 4.3.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ 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.8
+ parse-json: 5.2.0
+ pretty-format: 27.5.1
+ slash: 3.0.0
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /jest-diff@27.5.1:
+ resolution: {integrity: sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ chalk: 4.1.2
+ diff-sequences: 27.5.1
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+ dev: true
+
+ /jest-docblock@27.5.1:
+ resolution: {integrity: sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ detect-newline: 3.1.0
+ dev: true
+
+ /jest-each@27.5.1:
+ resolution: {integrity: sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ jest-get-type: 27.5.1
+ jest-util: 27.5.1
+ pretty-format: 27.5.1
+ dev: true
+
+ /jest-environment-jsdom@27.5.1:
+ resolution: {integrity: sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+ jsdom: 16.7.0
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /jest-environment-node@27.5.1:
+ resolution: {integrity: sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/environment': 27.5.1
+ '@jest/fake-timers': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ jest-mock: 27.5.1
+ jest-util: 27.5.1
+ dev: true
+
+ /jest-get-type@27.5.1:
+ resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dev: true
+
+ /jest-haste-map@27.5.1:
+ resolution: {integrity: sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/graceful-fs': 4.1.9
+ '@types/node': 24.7.0
+ anymatch: 3.1.3
+ fb-watchman: 2.0.2
+ graceful-fs: 4.2.11
+ jest-regex-util: 27.5.1
+ jest-serializer: 27.5.1
+ jest-util: 27.5.1
+ jest-worker: 27.5.1
+ micromatch: 4.0.8
+ walker: 1.0.8
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: true
+
+ /jest-jasmine2@27.5.1:
+ resolution: {integrity: sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ 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': 24.7.0
+ chalk: 4.1.2
+ co: 4.6.0
+ expect: 27.5.1
+ is-generator-fn: 2.1.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.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /jest-leak-detector@27.5.1:
+ resolution: {integrity: sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+ dev: true
+
+ /jest-matcher-utils@27.5.1:
+ resolution: {integrity: sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ chalk: 4.1.2
+ jest-diff: 27.5.1
+ jest-get-type: 27.5.1
+ pretty-format: 27.5.1
+ dev: true
+
+ /jest-message-util@27.5.1:
+ resolution: {integrity: sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@jest/types': 27.5.1
+ '@types/stack-utils': 2.0.3
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ micromatch: 4.0.8
+ pretty-format: 27.5.1
+ slash: 3.0.0
+ stack-utils: 2.0.6
+ dev: true
+
+ /jest-mock@27.5.1:
+ resolution: {integrity: sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ dev: true
+
+ /jest-pnp-resolver@1.2.3(jest-resolve@27.5.1):
+ resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
+ engines: {node: '>=6'}
+ peerDependencies:
+ jest-resolve: '*'
+ peerDependenciesMeta:
+ jest-resolve:
+ optional: true
+ dependencies:
+ jest-resolve: 27.5.1
+ dev: true
+
+ /jest-regex-util@27.5.1:
+ resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dev: true
+
+ /jest-resolve-dependencies@27.5.1:
+ resolution: {integrity: sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ jest-regex-util: 27.5.1
+ jest-snapshot: 27.5.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /jest-resolve@27.5.1:
+ resolution: {integrity: sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ chalk: 4.1.2
+ graceful-fs: 4.2.11
+ jest-haste-map: 27.5.1
+ jest-pnp-resolver: 1.2.3(jest-resolve@27.5.1)
+ jest-util: 27.5.1
+ jest-validate: 27.5.1
+ resolve: 1.22.10
+ resolve.exports: 1.1.1
+ slash: 3.0.0
+ dev: true
+
+ /jest-runner@27.5.1:
+ resolution: {integrity: sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ 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': 24.7.0
+ chalk: 4.1.2
+ emittery: 0.8.1
+ graceful-fs: 4.2.11
+ 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.21
+ throat: 6.0.2
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /jest-runtime@27.5.1:
+ resolution: {integrity: sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ 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.1.2
+ cjs-module-lexer: 1.4.3
+ collect-v8-coverage: 1.0.2
+ execa: 5.1.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /jest-serializer@27.5.1:
+ resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@types/node': 24.7.0
+ graceful-fs: 4.2.11
+ dev: true
+
+ /jest-snapshot@27.5.1:
+ resolution: {integrity: sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@babel/core': 7.28.4
+ '@babel/generator': 7.28.3
+ '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.4)
+ '@babel/traverse': 7.28.4
+ '@babel/types': 7.28.4
+ '@jest/transform': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/babel__traverse': 7.28.0
+ '@types/prettier': 2.7.3
+ babel-preset-current-node-syntax: 1.2.0(@babel/core@7.28.4)
+ chalk: 4.1.2
+ expect: 27.5.1
+ graceful-fs: 4.2.11
+ 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.7.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /jest-util@27.5.1:
+ resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ graceful-fs: 4.2.11
+ picomatch: 2.3.1
+ dev: true
+
+ /jest-validate@27.5.1:
+ resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/types': 27.5.1
+ camelcase: 6.3.0
+ chalk: 4.1.2
+ jest-get-type: 27.5.1
+ leven: 3.1.0
+ pretty-format: 27.5.1
+ dev: true
+
+ /jest-watcher@27.5.1:
+ resolution: {integrity: sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ '@jest/test-result': 27.5.1
+ '@jest/types': 27.5.1
+ '@types/node': 24.7.0
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ jest-util: 27.5.1
+ string-length: 4.0.2
+ dev: true
+
+ /jest-worker@27.5.1:
+ resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
+ engines: {node: '>= 10.13.0'}
+ dependencies:
+ '@types/node': 24.7.0
+ merge-stream: 2.0.0
+ supports-color: 8.1.1
+ dev: true
+
+ /jest@27.0.4:
+ resolution: {integrity: sha512-Px1iKFooXgGSkk1H8dJxxBIrM3tsc5SIuI4kfKYK2J+4rvCvPGr/cXktxh0e9zIPQ5g09kOMNfHQEmusBUf/ZA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ hasBin: true
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0
+ peerDependenciesMeta:
+ node-notifier:
+ optional: true
+ dependencies:
+ '@jest/core': 27.5.1
+ import-local: 3.2.0
+ jest-cli: 27.5.1
+ transitivePeerDependencies:
+ - bufferutil
+ - canvas
+ - supports-color
+ - ts-node
+ - utf-8-validate
+ dev: true
+
+ /jimp@0.10.3:
+ resolution: {integrity: sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==}
+ dependencies:
+ '@babel/runtime': 7.28.4
+ '@jimp/custom': 0.10.3
+ '@jimp/plugins': 0.10.3(@jimp/custom@0.10.3)
+ '@jimp/types': 0.10.3(@jimp/custom@0.10.3)
+ core-js: 3.45.1
+ regenerator-runtime: 0.13.11
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /jiti@2.6.1:
+ resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
+ hasBin: true
+
+ /jpeg-js@0.3.7:
+ resolution: {integrity: sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==}
+ dev: false
+
+ /js-audio-recorder@1.0.7:
+ resolution: {integrity: sha512-JiDODCElVHGrFyjGYwYyNi7zCbKk9va9C77w+zCPMmi4C6ix7zsX2h3ddHugmo4dOTOTCym9++b/wVW9nC0IaA==}
+ dev: false
+
+ /js-base64@3.7.4:
+ resolution: {integrity: sha512-wpM/wi20Tl+3ifTyi0RdDckS4YTD4Lf953mBRrpG8547T7hInHNPEj8+ck4gB8VDcGyeAWFK++Wb/fU1BeavKQ==}
+ dev: false
+
+ /js-md5@0.7.3:
+ resolution: {integrity: sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ==}
+ dev: false
+
+ /js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+
+ /js-tokens@9.0.1:
+ resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==}
+
+ /js-yaml@3.14.1:
+ resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
+ hasBin: true
+ dependencies:
+ argparse: 1.0.10
+ esprima: 4.0.1
+ dev: true
+
+ /js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+ dependencies:
+ argparse: 2.0.1
+ dev: true
+
+ /jsdoc-type-pratt-parser@4.1.0:
+ resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==}
+ engines: {node: '>=12.0.0'}
+ dev: true
+
+ /jsdoc-type-pratt-parser@4.8.0:
+ resolution: {integrity: sha512-iZ8Bdb84lWRuGHamRXFyML07r21pcwBrLkHEuHgEY5UbCouBwv7ECknDRKzsQIXMiqpPymqtIf8TC/shYKB5rw==}
+ engines: {node: '>=12.0.0'}
+ dev: true
+
+ /jsdom@16.7.0:
+ resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ canvas: ^2.5.0
+ peerDependenciesMeta:
+ canvas:
+ optional: true
+ dependencies:
+ abab: 2.0.6
+ acorn: 8.15.0
+ acorn-globals: 6.0.0
+ cssom: 0.4.4
+ cssstyle: 2.3.0
+ data-urls: 2.0.0
+ decimal.js: 10.6.0
+ domexception: 2.0.1
+ escodegen: 2.1.0
+ form-data: 3.0.4
+ html-encoding-sniffer: 2.0.1
+ http-proxy-agent: 4.0.1
+ https-proxy-agent: 5.0.1
+ is-potential-custom-element-name: 1.0.1
+ nwsapi: 2.2.22
+ parse5: 6.0.1
+ saxes: 5.0.1
+ symbol-tree: 3.2.4
+ tough-cookie: 4.1.4
+ 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.7.0
+ ws: 7.5.10
+ xml-name-validator: 3.0.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /jsesc@3.0.2:
+ resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
+ engines: {node: '>=6'}
+ hasBin: true
+ dev: true
+
+ /jsesc@3.1.0:
+ resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ /json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+ dev: true
+
+ /json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+ dev: true
+
+ /json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+ dev: true
+
+ /json-schema-traverse@1.0.0:
+ resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
+ dev: true
+
+ /json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+ dev: true
+
+ /json5@2.2.3:
+ resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ /jsonc-eslint-parser@2.4.1:
+ resolution: {integrity: sha512-uuPNLJkKN8NXAlZlQ6kmUF9qO+T6Kyd7oV4+/7yy8Jz6+MZNyhPq8EdLpdfnPVzUC8qSf1b4j1azKaGnFsjmsw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ acorn: 8.15.0
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ semver: 7.7.3
+ dev: true
+
+ /jsonc-parser@3.3.1:
+ resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==}
+
+ /jsonfile@6.2.0:
+ resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==}
+ dependencies:
+ universalify: 2.0.1
+ optionalDependencies:
+ graceful-fs: 4.2.11
+
+ /keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+ dependencies:
+ json-buffer: 3.0.1
+ dev: true
+
+ /keyv@5.5.3:
+ resolution: {integrity: sha512-h0Un1ieD+HUrzBH6dJXhod3ifSghk5Hw/2Y4/KHBziPlZecrFyE9YOTPU6eOs0V9pYl8gOs86fkr/KN8lUX39A==}
+ dependencies:
+ '@keyv/serialize': 1.1.1
+ dev: true
+
+ /kind-of@6.0.3:
+ resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /kleur@3.0.3:
+ resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /klona@2.0.6:
+ resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==}
+ engines: {node: '>= 8'}
+ dev: false
+
+ /knitwork@1.2.0:
+ resolution: {integrity: sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==}
+ dev: false
+
+ /known-css-properties@0.37.0:
+ resolution: {integrity: sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==}
+ dev: true
+
+ /kolorist@1.8.0:
+ resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+ dev: true
+
+ /lcid@3.1.1:
+ resolution: {integrity: sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==}
+ engines: {node: '>=8'}
+ dependencies:
+ invert-kv: 3.0.1
+
+ /leaflet@1.9.4:
+ resolution: {integrity: sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==}
+ dev: false
+
+ /leven@3.1.0:
+ resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ dev: true
+
+ /licia@1.48.0:
+ resolution: {integrity: sha512-bBWiT5CSdEtwuAHiYTJ74yItCjIFdHi4xiFk6BRDfKa+sdCpkUHp69YKb5udNOJlHDzFjNjcMgNZ/+wQIHrB8A==}
+
+ /lilconfig@2.1.0:
+ resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
+ engines: {node: '>=10'}
+
+ /lilconfig@3.1.3:
+ resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+ dev: true
+
+ /lines-and-columns@2.0.4:
+ resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ /lint-staged@16.1.6:
+ resolution: {integrity: sha512-U4kuulU3CKIytlkLlaHcGgKscNfJPNTiDF2avIUGFCv7K95/DCYQ7Ra62ydeRWmgQGg9zJYw2dzdbztwJlqrow==}
+ engines: {node: '>=20.17'}
+ hasBin: true
+ dependencies:
+ chalk: 5.6.2
+ commander: 14.0.1
+ debug: 4.4.3
+ lilconfig: 3.1.3
+ listr2: 9.0.4
+ micromatch: 4.0.8
+ nano-spawn: 1.0.3
+ pidtree: 0.6.0
+ string-argv: 0.3.2
+ yaml: 2.8.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /listr2@9.0.4:
+ resolution: {integrity: sha512-1wd/kpAdKRLwv7/3OKC8zZ5U8e/fajCfWMxacUvB79S5nLrYGPtUI/8chMQhn3LQjsRVErTb9i1ECAwW0ZIHnQ==}
+ engines: {node: '>=20.0.0'}
+ dependencies:
+ cli-truncate: 5.1.0
+ colorette: 2.0.20
+ eventemitter3: 5.0.1
+ log-update: 6.1.0
+ rfdc: 1.4.1
+ wrap-ansi: 9.0.2
+ dev: true
+
+ /load-bmfont@1.4.2:
+ resolution: {integrity: sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==}
+ dependencies:
+ buffer-equal: 0.0.1
+ mime: 1.6.0
+ parse-bmfont-ascii: 1.0.6
+ parse-bmfont-binary: 1.0.6
+ parse-bmfont-xml: 1.1.6
+ phin: 3.7.1
+ xhr: 2.6.0
+ xtend: 4.0.2
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /loader-utils@3.3.1:
+ resolution: {integrity: sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==}
+ engines: {node: '>= 12.13.0'}
+
+ /local-pkg@1.1.2:
+ resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==}
+ engines: {node: '>=14'}
+ dependencies:
+ mlly: 1.8.0
+ pkg-types: 2.3.0
+ quansync: 0.2.11
+
+ /localstorage-polyfill@1.0.1:
+ resolution: {integrity: sha512-m4iHVZxFH5734oQcPKU08025gIz2+4bjWR9lulP8ZYxEJR0BpA0w32oJmkzh8y3UI9ci7xCBehQDc3oA1X+VHw==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /locate-path@5.0.0:
+ resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+ engines: {node: '>=8'}
+ dependencies:
+ p-locate: 4.1.0
+ dev: true
+
+ /locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+ dependencies:
+ p-locate: 5.0.0
+ dev: true
+
+ /lodash.camelcase@4.3.0:
+ resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
+
+ /lodash.debounce@4.0.8:
+ resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
+ dev: true
+
+ /lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+ dev: true
+
+ /lodash.truncate@4.4.2:
+ resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==}
+ dev: true
+
+ /lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+ dev: true
+
+ /log-update@6.1.0:
+ resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==}
+ engines: {node: '>=18'}
+ dependencies:
+ ansi-escapes: 7.1.1
+ cli-cursor: 5.0.0
+ slice-ansi: 7.1.2
+ strip-ansi: 7.1.2
+ wrap-ansi: 9.0.2
+ dev: true
+
+ /longest-streak@3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+ dev: true
+
+ /lru-cache@11.2.2:
+ resolution: {integrity: sha512-F9ODfyqML2coTIsQpSkRHnLSZMtkU8Q+mSfcaIyKwy58u+8k5nvAYeiNhsyMARvzNcXJ9QfWVrcPsC9e9rAxtg==}
+ engines: {node: 20 || >=22}
+ dev: true
+
+ /lru-cache@5.1.1:
+ resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
+ dependencies:
+ yallist: 3.1.1
+
+ /magic-string@0.30.19:
+ resolution: {integrity: sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ /make-dir@4.0.0:
+ resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
+ engines: {node: '>=10'}
+ dependencies:
+ semver: 7.7.3
+ dev: true
+
+ /makeerror@1.0.12:
+ resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
+ dependencies:
+ tmpl: 1.0.5
+ dev: true
+
+ /markdown-table@3.0.4:
+ resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
+ dev: true
+
+ /math-intrinsics@1.1.0:
+ resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /mathml-tag-names@2.1.3:
+ resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==}
+ dev: true
+
+ /mdast-util-find-and-replace@3.0.2:
+ resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ escape-string-regexp: 5.0.0
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: true
+
+ /mdast-util-from-markdown@2.0.2:
+ resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.2
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-decode-string: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ unist-util-stringify-position: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-frontmatter@2.0.1:
+ resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ escape-string-regexp: 5.0.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-extension-frontmatter: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-gfm-autolink-literal@2.0.1:
+ resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-find-and-replace: 3.0.2
+ micromark-util-character: 2.1.1
+ dev: true
+
+ /mdast-util-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-util-normalize-identifier: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-gfm-strikethrough@2.0.0:
+ resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-gfm-table@2.0.0:
+ resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ markdown-table: 3.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-gfm-task-list-item@2.0.0:
+ resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-gfm@3.1.0:
+ resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==}
+ dependencies:
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-gfm-autolink-literal: 2.0.1
+ mdast-util-gfm-footnote: 2.1.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.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /mdast-util-phrasing@4.1.0:
+ resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ unist-util-is: 6.0.0
+ dev: true
+
+ /mdast-util-to-markdown@2.1.2:
+ resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 4.1.0
+ mdast-util-to-string: 4.0.0
+ micromark-util-classify-character: 2.0.1
+ micromark-util-decode-string: 2.0.1
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+ dev: true
+
+ /mdast-util-to-string@4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ dev: true
+
+ /mdn-data@2.12.2:
+ resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==}
+ dev: true
+
+ /media-typer@0.3.0:
+ resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /media-typer@1.1.0:
+ resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /meow@13.2.0:
+ resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /merge-descriptors@1.0.3:
+ resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==}
+ dev: true
+
+ /merge-descriptors@2.0.0:
+ resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+ dev: true
+
+ /merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+
+ /merge@2.1.1:
+ resolution: {integrity: sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==}
+
+ /methods@1.1.2:
+ resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /micromark-core-commonmark@2.0.3:
+ resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==}
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-factory-destination: 2.0.1
+ micromark-factory-label: 2.0.1
+ micromark-factory-space: 2.0.1
+ micromark-factory-title: 2.0.1
+ micromark-factory-whitespace: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-html-tag-name: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-frontmatter@2.0.0:
+ resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==}
+ dependencies:
+ fault: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-autolink-literal@2.1.0:
+ resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-strikethrough@2.1.0:
+ resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-table@2.1.1:
+ resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-tagfilter@2.0.0:
+ resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
+ dependencies:
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm-task-list-item@2.1.0:
+ resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-extension-gfm@3.0.0:
+ resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
+ dependencies:
+ micromark-extension-gfm-autolink-literal: 2.1.0
+ micromark-extension-gfm-footnote: 2.1.0
+ micromark-extension-gfm-strikethrough: 2.1.0
+ micromark-extension-gfm-table: 2.1.1
+ micromark-extension-gfm-tagfilter: 2.0.0
+ micromark-extension-gfm-task-list-item: 2.1.0
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-factory-destination@2.0.1:
+ resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==}
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-factory-label@2.0.1:
+ resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-factory-space@2.0.1:
+ resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==}
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-factory-title@2.0.1:
+ resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==}
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-factory-whitespace@2.0.1:
+ resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==}
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-character@2.1.1:
+ resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==}
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-chunked@2.0.1:
+ resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==}
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ dev: true
+
+ /micromark-util-classify-character@2.0.1:
+ resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==}
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-combine-extensions@2.0.1:
+ resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==}
+ dependencies:
+ micromark-util-chunked: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-decode-numeric-character-reference@2.0.2:
+ resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==}
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ dev: true
+
+ /micromark-util-decode-string@2.0.1:
+ resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==}
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ micromark-util-character: 2.1.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-symbol: 2.0.1
+ dev: true
+
+ /micromark-util-encode@2.0.1:
+ resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==}
+ dev: true
+
+ /micromark-util-html-tag-name@2.0.1:
+ resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==}
+ dev: true
+
+ /micromark-util-normalize-identifier@2.0.1:
+ resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==}
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ dev: true
+
+ /micromark-util-resolve-all@2.0.1:
+ resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==}
+ dependencies:
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-sanitize-uri@2.0.1:
+ resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==}
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-encode: 2.0.1
+ micromark-util-symbol: 2.0.1
+ dev: true
+
+ /micromark-util-subtokenize@2.1.0:
+ resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ dev: true
+
+ /micromark-util-symbol@2.0.1:
+ resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==}
+ dev: true
+
+ /micromark-util-types@2.0.2:
+ resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==}
+ dev: true
+
+ /micromark@4.0.2:
+ resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==}
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.4.3
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-encode: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /micromatch@4.0.8:
+ resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
+ engines: {node: '>=8.6'}
+ dependencies:
+ braces: 3.0.3
+ picomatch: 2.3.1
+
+ /mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /mime-db@1.54.0:
+ resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: 1.52.0
+ dev: true
+
+ /mime-types@3.0.1:
+ resolution: {integrity: sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: 1.54.0
+ dev: true
+
+ /mime@1.6.0:
+ resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ /mime@3.0.0:
+ resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
+ engines: {node: '>=10.0.0'}
+ hasBin: true
+
+ /mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /mimic-function@5.0.1:
+ resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /min-document@2.19.0:
+ resolution: {integrity: sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==}
+ dependencies:
+ dom-walk: 0.1.2
+ dev: false
+
+ /minimatch@10.0.3:
+ resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==}
+ engines: {node: 20 || >=22}
+ dependencies:
+ '@isaacs/brace-expansion': 5.0.0
+ dev: true
+
+ /minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+ dependencies:
+ brace-expansion: 1.1.12
+ dev: true
+
+ /minimatch@9.0.5:
+ resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dependencies:
+ brace-expansion: 2.0.2
+ dev: true
+
+ /minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+ dev: false
+
+ /minipass@7.1.2:
+ resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dev: true
+
+ /miniprogram-api-typings@4.1.0:
+ resolution: {integrity: sha512-4RBsz27nBKyRkVGoNkRaPx24/KeJBw3zaaIlXDR8s/WBh2PbcUAc+q7wLLbp7Qsmb3bLzzUu7tqAti+B06kmjg==}
+ dev: true
+
+ /mitt@3.0.1:
+ resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
+ dev: true
+
+ /mkdirp@0.5.6:
+ resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+ hasBin: true
+ dependencies:
+ minimist: 1.2.8
+ dev: false
+
+ /mlly@1.8.0:
+ resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==}
+ dependencies:
+ acorn: 8.15.0
+ pathe: 2.0.3
+ pkg-types: 1.3.1
+ ufo: 1.6.1
+
+ /module-alias@2.2.3:
+ resolution: {integrity: sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==}
+
+ /mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /ms@2.0.0:
+ resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
+ dev: true
+
+ /ms@2.1.3:
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+
+ /nano-spawn@1.0.3:
+ resolution: {integrity: sha512-jtpsQDetTnvS2Ts1fiRdci5rx0VYws5jGyC+4IYOTnIQ/wwdf6JdomlHBwqC3bJYOvaKu0C2GSZ1A60anrYpaA==}
+ engines: {node: '>=20.17'}
+ dev: true
+
+ /nanoid@3.3.11:
+ resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ /nanoid@5.1.6:
+ resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==}
+ engines: {node: ^18 || >=20}
+ hasBin: true
+ dev: true
+
+ /natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+ dev: true
+
+ /natural-orderby@5.0.0:
+ resolution: {integrity: sha512-kKHJhxwpR/Okycz4HhQKKlhWe4ASEfPgkSWNmKFHd7+ezuQlxkA5cM3+XkBPvm1gmHen3w53qsYAv+8GwRrBlg==}
+ engines: {node: '>=18'}
+ dev: true
+
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /negotiator@1.0.0:
+ resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /neo-async@2.6.2:
+ resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+ dev: true
+
+ /node-addon-api@7.1.1:
+ resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+
+ /node-fetch-native@1.6.7:
+ resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==}
+
+ /node-int64@0.4.0:
+ resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
+ dev: true
+
+ /node-releases@2.0.23:
+ resolution: {integrity: sha512-cCmFDMSm26S6tQSDpBCg/NR8NENrVPhAJSf+XbxBG4rPFaaonlEoE9wHQmun+cls499TQGSb7ZyPBRlzgKfpeg==}
+
+ /normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+
+ /normalize-range@0.1.2:
+ resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
+ engines: {node: '>=0.10.0'}
+
+ /npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ engines: {node: '>=8'}
+ dependencies:
+ path-key: 3.1.1
+ dev: true
+
+ /nth-check@2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+ dependencies:
+ boolbase: 1.0.0
+ dev: true
+
+ /nwsapi@2.2.22:
+ resolution: {integrity: sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==}
+ dev: true
+
+ /nypm@0.6.2:
+ resolution: {integrity: sha512-7eM+hpOtrKrBDCh7Ypu2lJ9Z7PNZBdi/8AT3AX8xoCj43BBVHD0hPSTEvMtkMpfs8FCqBGhxB+uToIQimA111g==}
+ engines: {node: ^14.16.0 || >=16.10.0}
+ hasBin: true
+ dependencies:
+ citty: 0.1.6
+ consola: 3.4.2
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ tinyexec: 1.0.1
+ dev: false
+
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /object-inspect@1.13.4:
+ resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /ofetch@1.4.1:
+ resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
+ dependencies:
+ destr: 2.0.5
+ node-fetch-native: 1.6.7
+ ufo: 1.6.1
+ dev: true
+
+ /ohash@2.0.11:
+ resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==}
+ dev: false
+
+ /omggif@1.0.10:
+ resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==}
+ dev: false
+
+ /on-finished@2.4.1:
+ resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ ee-first: 1.1.1
+ dev: true
+
+ /once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+ dependencies:
+ wrappy: 1.0.2
+ dev: true
+
+ /onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+ engines: {node: '>=6'}
+ dependencies:
+ mimic-fn: 2.1.0
+ dev: true
+
+ /onetime@7.0.0:
+ resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
+ engines: {node: '>=18'}
+ dependencies:
+ mimic-function: 5.0.1
+ dev: true
+
+ /open@8.4.2:
+ resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+ dev: true
+
+ /optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ word-wrap: 1.2.5
+ dev: true
+
+ /os-locale-s-fix@1.0.8-fix-1:
+ resolution: {integrity: sha512-Sv0OvhPiMutICiwORAUefv02DCPb62IelBmo8ZsSrRHyI3FStqIWZvjqDkvtjU+lcujo7UNir+dCwKSqlEQ/5w==}
+ engines: {node: '>=10', yarn: ^1.22.4}
+ dependencies:
+ lcid: 3.1.1
+
+ /p-limit@2.3.0:
+ resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+ engines: {node: '>=6'}
+ dependencies:
+ p-try: 2.2.0
+ dev: true
+
+ /p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ yocto-queue: 0.1.0
+ dev: true
+
+ /p-locate@4.1.0:
+ resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+ engines: {node: '>=8'}
+ dependencies:
+ p-limit: 2.3.0
+ dev: true
+
+ /p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+ dependencies:
+ p-limit: 3.1.0
+ dev: true
+
+ /p-map@4.0.0:
+ resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ aggregate-error: 3.1.0
+ dev: true
+
+ /p-try@2.2.0:
+ resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /package-json-from-dist@1.0.1:
+ resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+ dev: true
+
+ /package-manager-detector@1.4.0:
+ resolution: {integrity: sha512-rRZ+pR1Usc+ND9M2NkmCvE/LYJS+8ORVV9X0KuNSY/gFsp7RBHJM/ADh9LYq4Vvfq6QkKrW6/weuh8SMEtN5gw==}
+ dev: true
+
+ /pako@1.0.11:
+ resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
+ dev: false
+
+ /parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+ dependencies:
+ callsites: 3.1.0
+ dev: true
+
+ /parse-bmfont-ascii@1.0.6:
+ resolution: {integrity: sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==}
+ dev: false
+
+ /parse-bmfont-binary@1.0.6:
+ resolution: {integrity: sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==}
+ dev: false
+
+ /parse-bmfont-xml@1.1.6:
+ resolution: {integrity: sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==}
+ dependencies:
+ xml-parse-from-string: 1.0.1
+ xml2js: 0.5.0
+ dev: false
+
+ /parse-css-font@4.0.0:
+ resolution: {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
+ dev: false
+
+ /parse-gitignore@2.0.0:
+ resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /parse-headers@2.0.6:
+ resolution: {integrity: sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==}
+ dev: false
+
+ /parse-imports-exports@0.2.4:
+ resolution: {integrity: sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==}
+ dependencies:
+ parse-statements: 1.0.11
+ dev: true
+
+ /parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ error-ex: 1.3.4
+ json-parse-even-better-errors: 2.3.1
+ lines-and-columns: 1.2.4
+ dev: true
+
+ /parse-statements@1.0.11:
+ resolution: {integrity: sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==}
+ dev: true
+
+ /parse5@6.0.1:
+ resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
+ dev: true
+
+ /parseurl@1.3.3:
+ resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+
+ /path-scurry@2.0.0:
+ resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
+ engines: {node: 20 || >=22}
+ dependencies:
+ lru-cache: 11.2.2
+ minipass: 7.1.2
+ dev: true
+
+ /path-to-regexp@0.1.12:
+ resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==}
+ dev: true
+
+ /path-to-regexp@8.3.0:
+ resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==}
+ dev: true
+
+ /path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /pathe@2.0.3:
+ resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
+
+ /perfect-debounce@1.0.0:
+ resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
+ dev: true
+
+ /perfect-debounce@2.0.0:
+ resolution: {integrity: sha512-fkEH/OBiKrqqI/yIgjR92lMfs2K8105zt/VT6+7eTjNwisrsh47CeIED9z58zI7DfKdH3uHAn25ziRZn3kgAow==}
+ dev: false
+
+ /phin@2.9.3:
+ resolution: {integrity: sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
+ dev: false
+
+ /phin@3.7.1:
+ resolution: {integrity: sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==}
+ engines: {node: '>= 8'}
+ dependencies:
+ centra: 2.7.0
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ /picocolors@1.1.1:
+ resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
+
+ /picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
+
+ /picomatch@4.0.3:
+ resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
+ engines: {node: '>=12'}
+
+ /pidtree@0.6.0:
+ resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+ dev: true
+
+ /pify@2.3.0:
+ resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
+ engines: {node: '>=0.10.0'}
+
+ /pinia-plugin-persistedstate@4.1.3(pinia@2.2.4):
+ resolution: {integrity: sha512-5Rad7oSoEh0na+j4jEViVQMtAYE38KjU7ixKc+am33QX/clJ1mb19zTZqMJXvq+PnQW7uuEuL33Q6NL0GbkfWw==}
+ peerDependencies:
+ '@pinia/nuxt': '>=0.5.0'
+ pinia: '>=2.0.0'
+ peerDependenciesMeta:
+ '@pinia/nuxt':
+ optional: true
+ pinia:
+ optional: true
+ dependencies:
+ '@nuxt/kit': 3.19.3
+ deep-pick-omit: 1.2.1
+ defu: 6.1.4
+ destr: 2.0.5
+ pinia: 2.2.4(typescript@5.9.3)(vue@3.4.21)
+ transitivePeerDependencies:
+ - magicast
+ dev: false
+
+ /pinia@2.2.4(typescript@5.9.3)(vue@3.4.21):
+ resolution: {integrity: sha512-K7ZhpMY9iJ9ShTC0cR2+PnxdQRuwVIsXDO/WIEV/RnMC/vmSoKDTKW/exNQYPI+4ij10UjXqdNiEHwn47McANQ==}
+ peerDependencies:
+ '@vue/composition-api': ^1.4.0
+ typescript: '>=4.4.4'
+ vue: 3.4.21
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+ typescript:
+ optional: true
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ typescript: 5.9.3
+ vue: 3.4.21(typescript@5.9.3)
+ vue-demi: 0.14.10(vue@3.4.21)
+ dev: false
+
+ /pirates@4.0.7:
+ resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /pixelmatch@4.0.2:
+ resolution: {integrity: sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==}
+ hasBin: true
+ dependencies:
+ pngjs: 3.4.0
+ dev: false
+
+ /pkce-challenge@5.0.0:
+ resolution: {integrity: sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ==}
+ engines: {node: '>=16.20.0'}
+ dev: true
+
+ /pkg-dir@4.2.0:
+ resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ find-up: 4.1.0
+ dev: true
+
+ /pkg-types@1.3.1:
+ resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
+ dependencies:
+ confbox: 0.1.8
+ mlly: 1.8.0
+ pathe: 2.0.3
+
+ /pkg-types@2.3.0:
+ resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==}
+ dependencies:
+ confbox: 0.2.2
+ exsolve: 1.0.7
+ pathe: 2.0.3
+
+ /pluralize@8.0.0:
+ resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /pngjs@3.4.0:
+ resolution: {integrity: sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==}
+ engines: {node: '>=4.0.0'}
+ dev: false
+
+ /pnpm-workspace-yaml@1.2.0:
+ resolution: {integrity: sha512-4CnZHmLSaprRnIm2iQ27Zl1cWPRHdX7Ehw7ckRwujoPKCk2QAz4agsA2MbTodg4sgbqYfJ68ULT+Q5A8dU+Mow==}
+ dependencies:
+ yaml: 2.8.1
+ dev: true
+
+ /postcss-html@1.8.0:
+ resolution: {integrity: sha512-5mMeb1TgLWoRKxZ0Xh9RZDfwUUIqRrcxO2uXO+Ezl1N5lqpCiSU5Gk6+1kZediBfBHFtPCdopr2UZ2SgUsKcgQ==}
+ engines: {node: ^12 || >=14}
+ dependencies:
+ htmlparser2: 8.0.2
+ js-tokens: 9.0.1
+ postcss: 8.5.6
+ postcss-safe-parser: 6.0.0(postcss@8.5.6)
+ dev: true
+
+ /postcss-import@14.1.0(postcss@8.5.6):
+ resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ postcss: ^8.0.0
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.10
+
+ /postcss-load-config@3.1.4(postcss@8.5.6):
+ resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
+ engines: {node: '>= 10'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+ dependencies:
+ lilconfig: 2.1.0
+ postcss: 8.5.6
+ yaml: 1.10.2
+
+ /postcss-modules-extract-imports@3.1.0(postcss@8.5.6):
+ resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.5.6
+
+ /postcss-modules-local-by-default@4.2.0(postcss@8.5.6):
+ resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+ postcss-value-parser: 4.2.0
+
+ /postcss-modules-scope@3.2.1(postcss@8.5.6):
+ resolution: {integrity: sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+
+ /postcss-modules-values@4.0.0(postcss@8.5.6):
+ resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+
+ /postcss-modules@4.3.1(postcss@8.5.6):
+ resolution: {integrity: sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==}
+ peerDependencies:
+ postcss: ^8.0.0
+ dependencies:
+ generic-names: 4.0.0
+ icss-replace-symbols: 1.1.0
+ lodash.camelcase: 4.3.0
+ postcss: 8.5.6
+ postcss-modules-extract-imports: 3.1.0(postcss@8.5.6)
+ postcss-modules-local-by-default: 4.2.0(postcss@8.5.6)
+ postcss-modules-scope: 3.2.1(postcss@8.5.6)
+ postcss-modules-values: 4.0.0(postcss@8.5.6)
+ string-hash: 1.1.3
+
+ /postcss-resolve-nested-selector@0.1.6:
+ resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==}
+ dev: true
+
+ /postcss-safe-parser@6.0.0(postcss@8.5.6):
+ resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.3.3
+ dependencies:
+ postcss: 8.5.6
+ dev: true
+
+ /postcss-safe-parser@7.0.1(postcss@8.5.6):
+ resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ postcss: ^8.4.31
+ dependencies:
+ postcss: 8.5.6
+ dev: true
+
+ /postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ /postcss-selector-parser@7.1.0:
+ resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ /postcss-sorting@8.0.2(postcss@8.5.6):
+ resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==}
+ peerDependencies:
+ postcss: ^8.4.20
+ dependencies:
+ postcss: 8.5.6
+ dev: true
+
+ /postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+
+ /postcss@8.5.6:
+ resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: 3.3.11
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
+
+ /prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+ dev: true
+
+ /pretty-format@27.5.1:
+ resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ dependencies:
+ ansi-regex: 5.0.1
+ ansi-styles: 5.2.0
+ react-is: 17.0.2
+ dev: true
+
+ /process@0.11.10:
+ resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
+ engines: {node: '>= 0.6.0'}
+ dev: false
+
+ /prompts@2.4.2:
+ resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
+ engines: {node: '>= 6'}
+ dependencies:
+ kleur: 3.0.3
+ sisteransi: 1.0.5
+ dev: true
+
+ /proxy-addr@2.0.7:
+ resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ forwarded: 0.2.0
+ ipaddr.js: 1.9.1
+ dev: true
+
+ /psl@1.15.0:
+ resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==}
+ dependencies:
+ punycode: 2.3.1
+ dev: true
+
+ /punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /qified@0.5.0:
+ resolution: {integrity: sha512-Zj6Q/Vc/SQ+Fzc87N90jJUzBzxD7MVQ2ZvGyMmYtnl2u1a07CejAhvtk4ZwASos+SiHKCAIylyGHJKIek75QBw==}
+ engines: {node: '>=20'}
+ dependencies:
+ hookified: 1.12.1
+ dev: true
+
+ /qrcode-reader@1.0.4:
+ resolution: {integrity: sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ==}
+
+ /qrcode-terminal@0.12.0:
+ resolution: {integrity: sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==}
+ hasBin: true
+
+ /qs@6.13.0:
+ resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==}
+ engines: {node: '>=0.6'}
+ dependencies:
+ side-channel: 1.1.0
+ dev: true
+
+ /qs@6.14.0:
+ resolution: {integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==}
+ engines: {node: '>=0.6'}
+ dependencies:
+ side-channel: 1.1.0
+ dev: true
+
+ /quansync@0.2.11:
+ resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==}
+
+ /querystringify@2.2.0:
+ resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
+ dev: true
+
+ /queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+
+ /range-parser@1.2.1:
+ resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /raw-body@2.5.2:
+ resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.0
+ iconv-lite: 0.4.24
+ unpipe: 1.0.0
+ dev: true
+
+ /raw-body@3.0.1:
+ resolution: {integrity: sha512-9G8cA+tuMS75+6G/TzW8OtLzmBDMo8p1JRxN5AZ+LAp8uxGA8V8GZm4GQ4/N5QNQEnLmg6SS7wyuSmbKepiKqA==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.0
+ iconv-lite: 0.7.0
+ unpipe: 1.0.0
+ dev: true
+
+ /rc9@2.1.2:
+ resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==}
+ dependencies:
+ defu: 6.1.4
+ destr: 2.0.5
+ dev: false
+
+ /react-is@17.0.2:
+ resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
+ dev: true
+
+ /read-cache@1.0.0:
+ resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
+ dependencies:
+ pify: 2.3.0
+
+ /readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+ dependencies:
+ picomatch: 2.3.1
+
+ /readdirp@4.1.2:
+ resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
+ engines: {node: '>= 14.18.0'}
+
+ /refa@0.12.1:
+ resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ dev: true
+
+ /regenerate-unicode-properties@10.2.2:
+ resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==}
+ engines: {node: '>=4'}
+ dependencies:
+ regenerate: 1.4.2
+ dev: true
+
+ /regenerate@1.4.2:
+ resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
+ dev: true
+
+ /regenerator-runtime@0.13.11:
+ resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==}
+ dev: false
+
+ /regenerator-runtime@0.14.1:
+ resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+ dev: true
+
+ /regexp-ast-analysis@0.7.1:
+ resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ refa: 0.12.1
+ dev: true
+
+ /regexp-tree@0.1.27:
+ resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
+ hasBin: true
+ dev: true
+
+ /regexpu-core@6.4.0:
+ resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==}
+ engines: {node: '>=4'}
+ dependencies:
+ regenerate: 1.4.2
+ regenerate-unicode-properties: 10.2.2
+ regjsgen: 0.8.0
+ regjsparser: 0.13.0
+ unicode-match-property-ecmascript: 2.0.0
+ unicode-match-property-value-ecmascript: 2.2.1
+ dev: true
+
+ /regjsgen@0.8.0:
+ resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
+ dev: true
+
+ /regjsparser@0.12.0:
+ resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==}
+ hasBin: true
+ dependencies:
+ jsesc: 3.0.2
+ dev: true
+
+ /regjsparser@0.13.0:
+ resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==}
+ hasBin: true
+ dependencies:
+ jsesc: 3.1.0
+ dev: true
+
+ /require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /require-from-string@2.0.2:
+ resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /requires-port@1.0.0:
+ resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+ dev: true
+
+ /resolve-cwd@3.0.0:
+ resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
+ engines: {node: '>=8'}
+ dependencies:
+ resolve-from: 5.0.0
+ dev: true
+
+ /resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /resolve-pkg-maps@1.0.0:
+ resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+ dev: true
+
+ /resolve.exports@1.1.1:
+ resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /resolve@1.22.10:
+ resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
+ engines: {node: '>= 0.4'}
+ hasBin: true
+ dependencies:
+ is-core-module: 2.16.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+
+ /restore-cursor@5.1.0:
+ resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
+ engines: {node: '>=18'}
+ dependencies:
+ onetime: 7.0.0
+ signal-exit: 4.1.0
+ dev: true
+
+ /reusify@1.1.0:
+ resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+ /rfdc@1.4.1:
+ resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+ dev: true
+
+ /rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
+ hasBin: true
+ dependencies:
+ glob: 7.2.3
+ dev: true
+
+ /rimraf@6.0.1:
+ resolution: {integrity: sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+ dependencies:
+ glob: 11.0.3
+ package-json-from-dist: 1.0.1
+ dev: true
+
+ /rollup-plugin-visualizer@6.0.3:
+ resolution: {integrity: sha512-ZU41GwrkDcCpVoffviuM9Clwjy5fcUxlz0oMoTXTYsK+tcIFzbdacnrr2n8TXcHxbGKKXtOdjxM2HUS4HjkwIw==}
+ engines: {node: '>=18'}
+ hasBin: true
+ peerDependencies:
+ rolldown: 1.x || ^1.0.0-beta
+ rollup: 2.x || 3.x || 4.x
+ peerDependenciesMeta:
+ rolldown:
+ optional: true
+ rollup:
+ optional: true
+ dependencies:
+ open: 8.4.2
+ picomatch: 4.0.3
+ source-map: 0.7.6
+ yargs: 17.7.2
+ dev: true
+
+ /rollup@4.52.4:
+ resolution: {integrity: sha512-CLEVl+MnPAiKh5pl4dEWSyMTpuflgNQiLGhMv8ezD5W/qP8AKvmYpCOKRRNOh7oRKnauBZ4SyeYkMS+1VSyKwQ==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+ dependencies:
+ '@types/estree': 1.0.8
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.52.4
+ '@rollup/rollup-android-arm64': 4.52.4
+ '@rollup/rollup-darwin-arm64': 4.52.4
+ '@rollup/rollup-darwin-x64': 4.52.4
+ '@rollup/rollup-freebsd-arm64': 4.52.4
+ '@rollup/rollup-freebsd-x64': 4.52.4
+ '@rollup/rollup-linux-arm-gnueabihf': 4.52.4
+ '@rollup/rollup-linux-arm-musleabihf': 4.52.4
+ '@rollup/rollup-linux-arm64-gnu': 4.52.4
+ '@rollup/rollup-linux-arm64-musl': 4.52.4
+ '@rollup/rollup-linux-loong64-gnu': 4.52.4
+ '@rollup/rollup-linux-ppc64-gnu': 4.52.4
+ '@rollup/rollup-linux-riscv64-gnu': 4.52.4
+ '@rollup/rollup-linux-riscv64-musl': 4.52.4
+ '@rollup/rollup-linux-s390x-gnu': 4.52.4
+ '@rollup/rollup-linux-x64-gnu': 4.52.4
+ '@rollup/rollup-linux-x64-musl': 4.52.4
+ '@rollup/rollup-openharmony-arm64': 4.52.4
+ '@rollup/rollup-win32-arm64-msvc': 4.52.4
+ '@rollup/rollup-win32-ia32-msvc': 4.52.4
+ '@rollup/rollup-win32-x64-gnu': 4.52.4
+ '@rollup/rollup-win32-x64-msvc': 4.52.4
+ fsevents: 2.3.3
+
+ /router@2.2.0:
+ resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==}
+ engines: {node: '>= 18'}
+ dependencies:
+ debug: 4.4.3
+ depd: 2.0.0
+ is-promise: 4.0.0
+ parseurl: 1.3.3
+ path-to-regexp: 8.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ dependencies:
+ queue-microtask: 1.2.3
+
+ /safe-area-insets@1.4.1:
+ resolution: {integrity: sha512-r/nRWTjFGhhm3w1Z6Kd/jY11srN+lHt2mNl1E/emQGW8ic7n3Avu4noibklfSM+Y34peNphHD/BSZecav0sXYQ==}
+ dev: false
+
+ /safe-buffer@5.2.1:
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+ dev: true
+
+ /safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+ dev: true
+
+ /sass-loader@16.0.4(sass@1.79.6):
+ resolution: {integrity: sha512-LavLbgbBGUt3wCiYzhuLLu65+fWXaXLmq7YxivLhEqmiupCFZ5sKUAipK3do6V80YSU0jvSxNhEdT13IXNr3rg==}
+ engines: {node: '>= 18.12.0'}
+ peerDependencies:
+ '@rspack/core': 0.x || 1.x
+ node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+ sass: ^1.3.0
+ sass-embedded: '*'
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@rspack/core':
+ optional: true
+ node-sass:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ webpack:
+ optional: true
+ dependencies:
+ neo-async: 2.6.2
+ sass: 1.79.6
+ dev: true
+
+ /sass@1.79.6:
+ resolution: {integrity: sha512-PVVjeeiUGx6Nj4PtEE/ecwu8ltwfPKzHxbbVmmLj4l1FYHhOyfA0scuVF8sVaa+b+VY4z7BVKjKq0cPUQdUU3g==}
+ engines: {node: '>=14.0.0'}
+ hasBin: true
+ dependencies:
+ '@parcel/watcher': 2.5.1
+ chokidar: 4.0.3
+ immutable: 4.3.7
+ source-map-js: 1.2.1
+
+ /sax@1.4.1:
+ resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==}
+ dev: false
+
+ /saxes@5.0.1:
+ resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
+ engines: {node: '>=10'}
+ dependencies:
+ xmlchars: 2.2.0
+ dev: true
+
+ /scslre@0.3.0:
+ resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==}
+ engines: {node: ^14.0.0 || >=16.0.0}
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
+ dev: true
+
+ /scule@1.3.0:
+ resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
+
+ /sdp@3.2.1:
+ resolution: {integrity: sha512-lwsAIzOPlH8/7IIjjz3K0zYBk7aBVVcvjMwt3M4fLxpjMYyy7i3I97SLHebgn4YBjirkzfp3RvRDWSKsh/+WFw==}
+ dev: false
+
+ /select@1.1.2:
+ resolution: {integrity: sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==}
+ dev: false
+
+ /semver@6.3.1:
+ resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+ hasBin: true
+
+ /semver@7.7.3:
+ resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ /send@0.19.0:
+ resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==}
+ engines: {node: '>= 0.8.0'}
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /send@1.2.0:
+ resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==}
+ engines: {node: '>= 18'}
+ dependencies:
+ debug: 4.4.3
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ fresh: 2.0.0
+ http-errors: 2.0.0
+ mime-types: 3.0.1
+ ms: 2.1.3
+ on-finished: 2.4.1
+ range-parser: 1.2.1
+ statuses: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /serve-static@1.16.2:
+ resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ parseurl: 1.3.3
+ send: 0.19.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /serve-static@2.2.0:
+ resolution: {integrity: sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==}
+ engines: {node: '>= 18'}
+ dependencies:
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ parseurl: 1.3.3
+ send: 1.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /setprototypeof@1.2.0:
+ resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
+ dev: true
+
+ /shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+ dependencies:
+ shebang-regex: 3.0.0
+ dev: true
+
+ /shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /side-channel-list@1.0.0:
+ resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ dev: true
+
+ /side-channel-map@1.0.1:
+ resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ dev: true
+
+ /side-channel-weakmap@1.0.2:
+ resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-map: 1.0.1
+ dev: true
+
+ /side-channel@1.1.0:
+ resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-list: 1.0.0
+ side-channel-map: 1.0.1
+ side-channel-weakmap: 1.0.2
+ dev: true
+
+ /signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+ dev: true
+
+ /signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /sirv@3.0.2:
+ resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==}
+ engines: {node: '>=18'}
+ dependencies:
+ '@polka/url': 1.0.0-next.29
+ mrmime: 2.0.1
+ totalist: 3.0.1
+ dev: true
+
+ /sisteransi@1.0.5:
+ resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+ dev: true
+
+ /slash@3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /slice-ansi@4.0.0:
+ resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: 4.3.0
+ astral-regex: 2.0.0
+ is-fullwidth-code-point: 3.0.0
+ dev: true
+
+ /slice-ansi@7.1.2:
+ resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==}
+ engines: {node: '>=18'}
+ dependencies:
+ ansi-styles: 6.2.3
+ is-fullwidth-code-point: 5.1.0
+ dev: true
+
+ /source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
+ engines: {node: '>=0.10.0'}
+
+ /source-map-support@0.5.21:
+ resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
+ dependencies:
+ buffer-from: 1.1.2
+ source-map: 0.6.1
+
+ /source-map@0.6.1:
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
+ engines: {node: '>=0.10.0'}
+
+ /source-map@0.7.6:
+ resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
+ engines: {node: '>= 12'}
+ dev: true
+
+ /spdx-exceptions@2.5.0:
+ resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+ dev: true
+
+ /spdx-expression-parse@4.0.0:
+ resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
+ dependencies:
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.22
+ dev: true
+
+ /spdx-license-ids@3.0.22:
+ resolution: {integrity: sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==}
+ dev: true
+
+ /speakingurl@14.0.1:
+ resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /sprintf-js@1.0.3:
+ resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+ dev: true
+
+ /stack-utils@2.0.6:
+ resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ escape-string-regexp: 2.0.0
+ dev: true
+
+ /statuses@2.0.1:
+ resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /statuses@2.0.2:
+ resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /std-env@3.9.0:
+ resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==}
+ dev: false
+
+ /string-argv@0.3.2:
+ resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
+ engines: {node: '>=0.6.19'}
+ dev: true
+
+ /string-hash@1.1.3:
+ resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==}
+
+ /string-length@4.0.2:
+ resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ char-regex: 1.0.2
+ strip-ansi: 6.0.1
+ dev: true
+
+ /string-width@4.2.3:
+ resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+ engines: {node: '>=8'}
+ dependencies:
+ emoji-regex: 8.0.0
+ is-fullwidth-code-point: 3.0.0
+ strip-ansi: 6.0.1
+ dev: true
+
+ /string-width@5.1.2:
+ resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+ engines: {node: '>=12'}
+ dependencies:
+ eastasianwidth: 0.2.0
+ emoji-regex: 9.2.2
+ strip-ansi: 7.1.2
+ dev: true
+
+ /string-width@7.2.0:
+ resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
+ engines: {node: '>=18'}
+ dependencies:
+ emoji-regex: 10.5.0
+ get-east-asian-width: 1.4.0
+ strip-ansi: 7.1.2
+ dev: true
+
+ /string-width@8.1.0:
+ resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==}
+ engines: {node: '>=20'}
+ dependencies:
+ get-east-asian-width: 1.4.0
+ strip-ansi: 7.1.2
+ dev: true
+
+ /strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-regex: 5.0.1
+ dev: true
+
+ /strip-ansi@7.1.2:
+ resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==}
+ engines: {node: '>=12'}
+ dependencies:
+ ansi-regex: 6.2.2
+ dev: true
+
+ /strip-bom@4.0.0:
+ resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /strip-final-newline@2.0.0:
+ resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /strip-indent@4.1.0:
+ resolution: {integrity: sha512-OA95x+JPmL7kc7zCu+e+TeYxEiaIyndRx0OrBcK2QPPH09oAndr2ALvymxWA+Lx1PYYvFUm4O63pRkdJAaW96w==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /strip-literal@3.1.0:
+ resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==}
+ dependencies:
+ js-tokens: 9.0.1
+
+ /stylelint-config-html@1.1.0(postcss-html@1.8.0)(stylelint@16.23.0):
+ resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+ dependencies:
+ postcss-html: 1.8.0
+ stylelint: 16.23.0(typescript@5.9.3)
+ dev: true
+
+ /stylelint-config-recess-order@6.1.0(stylelint@16.23.0):
+ resolution: {integrity: sha512-0rGZgJQjUKqv1PXZnRJxr13f3hb3i2snx2nIL6luDWUf4nD3BAweB8noS7jdfBQ56HQG3RKSF0a+MAHfBGFxgw==}
+ peerDependencies:
+ stylelint: '>=16'
+ dependencies:
+ stylelint: 16.23.0(typescript@5.9.3)
+ stylelint-order: 6.0.4(stylelint@16.23.0)
+ dev: true
+
+ /stylelint-config-recommended-vue@1.6.1(postcss-html@1.8.0)(stylelint@16.23.0):
+ resolution: {integrity: sha512-lLW7hTIMBiTfjenGuDq2kyHA6fBWd/+Df7MO4/AWOxiFeXP9clbpKgg27kHfwA3H7UNMGC7aeP3mNlZB5LMmEQ==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+ dependencies:
+ postcss-html: 1.8.0
+ semver: 7.7.3
+ stylelint: 16.23.0(typescript@5.9.3)
+ stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.23.0)
+ stylelint-config-recommended: 17.0.0(stylelint@16.23.0)
+ dev: true
+
+ /stylelint-config-recommended@17.0.0(stylelint@16.23.0):
+ resolution: {integrity: sha512-WaMSdEiPfZTSFVoYmJbxorJfA610O0tlYuU2aEwY33UQhSPgFbClrVJYWvy3jGJx+XW37O+LyNLiZOEXhKhJmA==}
+ engines: {node: '>=18.12.0'}
+ peerDependencies:
+ stylelint: ^16.23.0
+ dependencies:
+ stylelint: 16.23.0(typescript@5.9.3)
+ dev: true
+
+ /stylelint-config-standard-vue@1.0.0(postcss-html@1.8.0)(stylelint@16.23.0):
+ resolution: {integrity: sha512-wAzU7p6DSlo04pWfCbOcaMq09Nojt0FEsbdxhCBTdC7IguD9ZVl7FP/bvyA0HAHjZGC4JkW7m6WiQaoVMDSuFw==}
+ engines: {node: ^12 || >=14}
+ peerDependencies:
+ postcss-html: ^1.0.0
+ stylelint: '>=14.0.0'
+ dependencies:
+ postcss-html: 1.8.0
+ stylelint: 16.23.0(typescript@5.9.3)
+ stylelint-config-html: 1.1.0(postcss-html@1.8.0)(stylelint@16.23.0)
+ stylelint-config-recommended-vue: 1.6.1(postcss-html@1.8.0)(stylelint@16.23.0)
+ stylelint-config-standard: 39.0.0(stylelint@16.23.0)
+ dev: true
+
+ /stylelint-config-standard@39.0.0(stylelint@16.23.0):
+ resolution: {integrity: sha512-JabShWORb8Bmc1A47ZyJstran60P3yUdI1zWMpGYPeFiC6xzHXJMkpKAd8EjIhq3HPUplIWWMDJ/xu0AiPd+kA==}
+ engines: {node: '>=18.12.0'}
+ peerDependencies:
+ stylelint: ^16.23.0
+ dependencies:
+ stylelint: 16.23.0(typescript@5.9.3)
+ stylelint-config-recommended: 17.0.0(stylelint@16.23.0)
+ dev: true
+
+ /stylelint-order@6.0.4(stylelint@16.23.0):
+ resolution: {integrity: sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==}
+ peerDependencies:
+ stylelint: ^14.0.0 || ^15.0.0 || ^16.0.1
+ dependencies:
+ postcss: 8.5.6
+ postcss-sorting: 8.0.2(postcss@8.5.6)
+ stylelint: 16.23.0(typescript@5.9.3)
+ dev: true
+
+ /stylelint@16.23.0(typescript@5.9.3):
+ resolution: {integrity: sha512-69T5aS2LUY306ekt1Q1oaSPwz/jaG9HjyMix3UMrai1iEbuOafBe2Dh8xlyczrxFAy89qcKyZWWtc42XLx3Bbw==}
+ engines: {node: '>=18.12.0'}
+ hasBin: true
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5)(@csstools/css-tokenizer@3.0.4)
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
+ '@dual-bundle/import-meta-resolve': 4.2.1
+ balanced-match: 2.0.0
+ colord: 2.9.3
+ cosmiconfig: 9.0.0(typescript@5.9.3)
+ css-functions-list: 3.2.3
+ css-tree: 3.1.0
+ debug: 4.4.3
+ fast-glob: 3.3.3
+ fastest-levenshtein: 1.0.16
+ file-entry-cache: 10.1.4
+ global-modules: 2.0.0
+ globby: 11.1.0
+ globjoin: 0.1.4
+ html-tags: 3.3.1
+ ignore: 7.0.5
+ imurmurhash: 0.1.4
+ is-plain-object: 5.0.0
+ known-css-properties: 0.37.0
+ mathml-tag-names: 2.1.3
+ meow: 13.2.0
+ micromatch: 4.0.8
+ normalize-path: 3.0.0
+ picocolors: 1.1.1
+ postcss: 8.5.6
+ postcss-resolve-nested-selector: 0.1.6
+ postcss-safe-parser: 7.0.1(postcss@8.5.6)
+ postcss-selector-parser: 7.1.0
+ postcss-value-parser: 4.2.0
+ resolve-from: 5.0.0
+ string-width: 4.2.3
+ supports-hyperlinks: 3.2.0
+ svg-tags: 1.0.0
+ table: 6.9.0
+ write-file-atomic: 5.0.1
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: true
+
+ /superjson@2.2.2:
+ resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==}
+ engines: {node: '>=16'}
+ dependencies:
+ copy-anything: 3.0.5
+ dev: true
+
+ /supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: 4.0.0
+ dev: true
+
+ /supports-color@8.1.1:
+ resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ has-flag: 4.0.0
+ dev: true
+
+ /supports-hyperlinks@2.3.0:
+ resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: 4.0.0
+ supports-color: 7.2.0
+ dev: true
+
+ /supports-hyperlinks@3.2.0:
+ resolution: {integrity: sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==}
+ engines: {node: '>=14.18'}
+ dependencies:
+ has-flag: 4.0.0
+ supports-color: 7.2.0
+ dev: true
+
+ /supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+
+ /svg-tags@1.0.0:
+ resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
+ dev: true
+
+ /symbol-tree@3.2.4:
+ resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+ dev: true
+
+ /synckit@0.11.11:
+ resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ dependencies:
+ '@pkgr/core': 0.2.9
+ dev: true
+
+ /systemjs@6.15.1:
+ resolution: {integrity: sha512-Nk8c4lXvMB98MtbmjX7JwJRgJOL8fluecYCfCeYBznwmpOs8Bf15hLM6z4z71EDAhQVrQrI+wt1aLWSXZq+hXA==}
+ dev: true
+
+ /table@6.9.0:
+ resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==}
+ engines: {node: '>=10.0.0'}
+ dependencies:
+ ajv: 8.17.1
+ lodash.truncate: 4.4.2
+ slice-ansi: 4.0.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ dev: true
+
+ /tapable@2.3.0:
+ resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
+ engines: {node: '>=6'}
+
+ /terminal-link@2.1.1:
+ resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-escapes: 4.3.2
+ supports-hyperlinks: 2.3.0
+ dev: true
+
+ /terser@5.44.0:
+ resolution: {integrity: sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/source-map': 0.3.11
+ acorn: 8.15.0
+ commander: 2.20.3
+ source-map-support: 0.5.21
+
+ /test-exclude@6.0.0:
+ resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@istanbuljs/schema': 0.1.3
+ glob: 7.2.3
+ minimatch: 3.1.2
+ dev: true
+
+ /throat@6.0.2:
+ resolution: {integrity: sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==}
+ dev: true
+
+ /timm@1.7.1:
+ resolution: {integrity: sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==}
+ dev: false
+
+ /tiny-emitter@2.1.0:
+ resolution: {integrity: sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==}
+ dev: false
+
+ /tinycolor2@1.6.0:
+ resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==}
+ dev: false
+
+ /tinyexec@1.0.1:
+ resolution: {integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==}
+
+ /tinyglobby@0.2.15:
+ resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
+ engines: {node: '>=12.0.0'}
+ dependencies:
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+
+ /tmpl@1.0.5:
+ resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
+ dev: true
+
+ /to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+ dependencies:
+ is-number: 7.0.0
+
+ /toidentifier@1.0.1:
+ resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
+ engines: {node: '>=0.6'}
+ dev: true
+
+ /toml-eslint-parser@0.10.0:
+ resolution: {integrity: sha512-khrZo4buq4qVmsGzS5yQjKe/WsFvV8fGfOjDQN0q4iy9FjRfPWRgTFrU8u1R2iu/SfWLhY9WnCi4Jhdrcbtg+g==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ eslint-visitor-keys: 3.4.3
+ dev: true
+
+ /totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /tough-cookie@4.1.4:
+ resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
+ engines: {node: '>=6'}
+ dependencies:
+ psl: 1.15.0
+ punycode: 2.3.1
+ universalify: 0.2.0
+ url-parse: 1.5.10
+ dev: true
+
+ /tr46@2.1.0:
+ resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==}
+ engines: {node: '>=8'}
+ dependencies:
+ punycode: 2.3.1
+ dev: true
+
+ /trtc-sdk-v5@5.14.1:
+ resolution: {integrity: sha512-FqHgzKD/A+2LwfbpBbPjMxeQUcgxENeeTMDYcDD9OM8mW68DcG4jQgyXyar5LRD4BInN1AIJKHyD5LJOUzS0wg==}
+ dependencies:
+ webrtc-adapter: 8.2.4
+ dev: false
+
+ /ts-api-utils@2.1.0(typescript@5.9.3):
+ resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==}
+ engines: {node: '>=18.12'}
+ peerDependencies:
+ typescript: '>=4.8.4'
+ dependencies:
+ typescript: 5.9.3
+ dev: true
+
+ /ts-declaration-location@1.0.7(typescript@5.9.3):
+ resolution: {integrity: sha512-EDyGAwH1gO0Ausm9gV6T2nUvBgXT5kGoCMJPllOaooZ+4VvJiKBdZE7wK18N1deEowhcUptS+5GXZK8U/fvpwA==}
+ peerDependencies:
+ typescript: '>=4.0.0'
+ dependencies:
+ picomatch: 4.0.3
+ typescript: 5.9.3
+ dev: true
+
+ /type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: 1.2.1
+ dev: true
+
+ /type-detect@4.0.8:
+ resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /type-fest@0.21.3:
+ resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /type-is@1.6.18:
+ resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ media-typer: 0.3.0
+ mime-types: 2.1.35
+ dev: true
+
+ /type-is@2.0.1:
+ resolution: {integrity: sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ content-type: 1.0.5
+ media-typer: 1.1.0
+ mime-types: 3.0.1
+ dev: true
+
+ /typedarray-to-buffer@3.1.5:
+ resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
+ dependencies:
+ is-typedarray: 1.0.0
+ dev: true
+
+ /typescript@5.9.3:
+ resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
+ /ufo@1.6.1:
+ resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==}
+
+ /unconfig@7.0.0:
+ resolution: {integrity: sha512-G5CJSoG6ZTxgzCJblEfgpdRK2tos9+UdD2WtecDUVfImzQ0hFjwpH5RVvGMhP4pRpC9ML7NrC4qBsBl0Ttj35A==}
+ dependencies:
+ '@antfu/utils': 8.1.1
+ defu: 6.1.4
+ jiti: 2.6.1
+ dev: true
+
+ /unconfig@7.3.3:
+ resolution: {integrity: sha512-QCkQoOnJF8L107gxfHL0uavn7WD9b3dpBcFX6HtfQYmjw2YzWxGuFQ0N0J6tE9oguCBJn9KOvfqYDCMPHIZrBA==}
+ dependencies:
+ '@quansync/fs': 0.1.5
+ defu: 6.1.4
+ jiti: 2.6.1
+ quansync: 0.2.11
+ dev: true
+
+ /unctx@2.4.1:
+ resolution: {integrity: sha512-AbaYw0Nm4mK4qjhns67C+kgxR2YWiwlDBPzxrN8h8C6VtAdCgditAY5Dezu3IJy4XVqAnbrXt9oQJvsn3fyozg==}
+ dependencies:
+ acorn: 8.15.0
+ estree-walker: 3.0.3
+ magic-string: 0.30.19
+ unplugin: 2.3.10
+ dev: false
+
+ /undici-types@7.14.0:
+ resolution: {integrity: sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==}
+ dev: true
+
+ /unicode-canonical-property-names-ecmascript@2.0.1:
+ resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /unicode-match-property-ecmascript@2.0.0:
+ resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
+ engines: {node: '>=4'}
+ dependencies:
+ unicode-canonical-property-names-ecmascript: 2.0.1
+ unicode-property-aliases-ecmascript: 2.2.0
+ dev: true
+
+ /unicode-match-property-value-ecmascript@2.2.1:
+ resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /unicode-property-aliases-ecmascript@2.2.0:
+ resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==}
+ engines: {node: '>=4'}
+ dev: true
+
+ /unimport@4.1.1:
+ resolution: {integrity: sha512-j9+fijH6aDd05yv1fXlyt7HSxtOWtGtrZeYTVBsSUg57Iuf+Ps2itIZjeyu7bEQ4k0WOgYhHrdW8m/pJgOpl5g==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ acorn: 8.15.0
+ escape-string-regexp: 5.0.0
+ estree-walker: 3.0.3
+ fast-glob: 3.3.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ mlly: 1.8.0
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ pkg-types: 1.3.1
+ scule: 1.3.0
+ strip-literal: 3.1.0
+ unplugin: 2.3.10
+ unplugin-utils: 0.2.5
+
+ /unimport@4.2.0:
+ resolution: {integrity: sha512-mYVtA0nmzrysnYnyb3ALMbByJ+Maosee2+WyE0puXl+Xm2bUwPorPaaeZt0ETfuroPOtG8jj1g/qeFZ6buFnag==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ acorn: 8.15.0
+ escape-string-regexp: 5.0.0
+ estree-walker: 3.0.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ mlly: 1.8.0
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ pkg-types: 2.3.0
+ scule: 1.3.0
+ strip-literal: 3.1.0
+ tinyglobby: 0.2.15
+ unplugin: 2.3.10
+ unplugin-utils: 0.2.5
+ dev: true
+
+ /unimport@5.4.1:
+ resolution: {integrity: sha512-wMZ2JKUCleCK2zfRHeWcbrUHKXOC3SVBYkyn/wTGzh0THX6sT4hSjuKXxKANN4/WMbT6ZPM4JzcDcnhD2x9Bpg==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ acorn: 8.15.0
+ escape-string-regexp: 5.0.0
+ estree-walker: 3.0.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ mlly: 1.8.0
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ pkg-types: 2.3.0
+ scule: 1.3.0
+ strip-literal: 3.1.0
+ tinyglobby: 0.2.15
+ unplugin: 2.3.10
+ unplugin-utils: 0.3.1
+ dev: false
+
+ /unist-util-is@6.0.0:
+ resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
+ dependencies:
+ '@types/unist': 3.0.3
+ dev: true
+
+ /unist-util-stringify-position@4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+ dependencies:
+ '@types/unist': 3.0.3
+ dev: true
+
+ /unist-util-visit-parents@6.0.1:
+ resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.0
+ dev: true
+
+ /unist-util-visit@5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: true
+
+ /universalify@0.2.0:
+ resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
+ engines: {node: '>= 4.0.0'}
+ dev: true
+
+ /universalify@2.0.1:
+ resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
+ engines: {node: '>= 10.0.0'}
+
+ /unocss-preset-weapp@66.0.2(vite@5.2.8):
+ resolution: {integrity: sha512-K6H6we8WlTO1Lf1rLLeyPOKyqEWkO/r9z8/z1CTEnHgeZMYMvIE7lQa7GFyDQ/qYzU/By8OtJ5TcIRqp/2SbIw==}
+ dependencies:
+ '@rollup/pluginutils': 5.3.0
+ '@unocss/core': 66.5.2
+ '@unocss/extractor-arbitrary-variants': 66.5.2
+ '@unocss/rule-utils': 66.5.2
+ unplugin-attributify-to-class: 0.2.5
+ unplugin-transform-class: 0.6.0(vite@5.2.8)
+ transitivePeerDependencies:
+ - '@farmfe/core'
+ - '@nuxt/kit'
+ - '@nuxt/schema'
+ - esbuild
+ - rollup
+ - vite
+ - webpack
+ dev: true
+
+ /unocss@65.5.0(postcss@8.5.6)(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-dLTW89YK+5KCcB3vG/wxiwdpejkLLmZlK9hjWmP52sdeUFcmywc+/khD2/nid7or8dL3YCv1gwoyvnA7JRCwjA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@unocss/webpack': 65.5.0
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+ peerDependenciesMeta:
+ '@unocss/webpack':
+ optional: true
+ vite:
+ optional: true
+ dependencies:
+ '@unocss/astro': 65.5.0(vite@5.2.8)(vue@3.4.21)
+ '@unocss/cli': 65.5.0
+ '@unocss/core': 65.5.0
+ '@unocss/postcss': 65.5.0(postcss@8.5.6)
+ '@unocss/preset-attributify': 65.5.0
+ '@unocss/preset-icons': 65.5.0
+ '@unocss/preset-mini': 65.5.0
+ '@unocss/preset-tagify': 65.5.0
+ '@unocss/preset-typography': 65.5.0
+ '@unocss/preset-uno': 65.5.0
+ '@unocss/preset-web-fonts': 65.5.0
+ '@unocss/preset-wind': 65.5.0
+ '@unocss/transformer-attributify-jsx': 65.5.0
+ '@unocss/transformer-compile-class': 65.5.0
+ '@unocss/transformer-directives': 65.5.0
+ '@unocss/transformer-variant-group': 65.5.0
+ '@unocss/vite': 65.5.0(vite@5.2.8)(vue@3.4.21)
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ transitivePeerDependencies:
+ - postcss
+ - supports-color
+ - vue
+ dev: true
+
+ /unpipe@1.0.0:
+ resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /unplugin-attributify-to-class@0.2.5:
+ resolution: {integrity: sha512-0lTUi01mI19PmTTX4420QO6gJFic1wK4LqNnHeBNDrthQEKI0xw/lYg0bGnWYgPmyqXz88hAdLG+ibaypibXqg==}
+ dependencies:
+ '@rollup/pluginutils': 5.3.0
+ unplugin: 1.16.1
+ unplugin-transform-class: 0.5.3
+ transitivePeerDependencies:
+ - rollup
+ dev: true
+
+ /unplugin-auto-import@19.1.0:
+ resolution: {integrity: sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': ^3.2.2
+ '@vueuse/core': '*'
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+ '@vueuse/core':
+ optional: true
+ dependencies:
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ picomatch: 4.0.3
+ unimport: 4.1.1
+ unplugin: 2.3.10
+ unplugin-utils: 0.2.5
+
+ /unplugin-auto-import@19.3.0:
+ resolution: {integrity: sha512-iIi0u4Gq2uGkAOGqlPJOAMI8vocvjh1clGTfSK4SOrJKrt+tirrixo/FjgBwXQNNdS7ofcr7OxzmOb/RjWxeEQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': ^3.2.2
+ '@vueuse/core': '*'
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+ '@vueuse/core':
+ optional: true
+ dependencies:
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ picomatch: 4.0.3
+ unimport: 4.2.0
+ unplugin: 2.3.10
+ unplugin-utils: 0.2.5
+ dev: true
+
+ /unplugin-transform-class@0.5.3:
+ resolution: {integrity: sha512-4xBvfoeBDqlqi9aD0Hv3TTs8JpRs2h9l8LBMXIRXFNTf8biRk6hAQir+zEM/GpBKoMzvt7JqqbMIYzMazQZysQ==}
+ dependencies:
+ '@meoc/utils': 0.2.10
+ '@rollup/pluginutils': 5.3.0
+ unplugin: 1.7.1
+ transitivePeerDependencies:
+ - rollup
+ dev: true
+
+ /unplugin-transform-class@0.6.0(vite@5.2.8):
+ resolution: {integrity: sha512-6aYNOH6hEVbi38mc7yDQD7kEDESuLJ3FfB9/rB2vHZobK4ajDS6Jkh5EktJF4Ubkz/hQizpjZ4+XS1aMOM82yg==}
+ peerDependencies:
+ '@farmfe/core': '>=1'
+ '@nuxt/kit': ^3
+ '@nuxt/schema': ^3
+ esbuild: '*'
+ rollup: ^3
+ vite: '>=3'
+ webpack: ^4 || ^5
+ peerDependenciesMeta:
+ '@farmfe/core':
+ optional: true
+ '@nuxt/kit':
+ optional: true
+ '@nuxt/schema':
+ optional: true
+ esbuild:
+ optional: true
+ rollup:
+ optional: true
+ vite:
+ optional: true
+ webpack:
+ optional: true
+ dependencies:
+ '@meoc/utils': 0.2.10
+ '@rollup/pluginutils': 5.3.0
+ unplugin: 2.3.2
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ dev: true
+
+ /unplugin-utils@0.2.5:
+ resolution: {integrity: sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ pathe: 2.0.3
+ picomatch: 4.0.3
+
+ /unplugin-utils@0.3.1:
+ resolution: {integrity: sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==}
+ engines: {node: '>=20.19.0'}
+ dependencies:
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ dev: false
+
+ /unplugin-vue-components@28.8.0(vue@3.4.21):
+ resolution: {integrity: sha512-2Q6ZongpoQzuXDK0ZsVzMoshH0MWZQ1pzVL538G7oIDKRTVzHjppBDS8aB99SADGHN3lpGU7frraCG6yWNoL5Q==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/parser': ^7.15.8
+ '@nuxt/kit': ^3.2.2 || ^4.0.0
+ vue: 3.4.21
+ peerDependenciesMeta:
+ '@babel/parser':
+ optional: true
+ '@nuxt/kit':
+ optional: true
+ dependencies:
+ chokidar: 3.6.0
+ debug: 4.4.3
+ local-pkg: 1.1.2
+ magic-string: 0.30.19
+ mlly: 1.8.0
+ tinyglobby: 0.2.15
+ unplugin: 2.3.10
+ unplugin-utils: 0.2.5
+ vue: 3.4.21(typescript@5.9.3)
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /unplugin@1.16.1:
+ resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==}
+ engines: {node: '>=14.0.0'}
+ dependencies:
+ acorn: 8.15.0
+ webpack-virtual-modules: 0.6.2
+ dev: true
+
+ /unplugin@1.7.1:
+ resolution: {integrity: sha512-JqzORDAPxxs8ErLV4x+LL7bk5pk3YlcWqpSNsIkAZj972KzFZLClc/ekppahKkOczGkwIG6ElFgdOgOlK4tXZw==}
+ dependencies:
+ acorn: 8.15.0
+ chokidar: 3.6.0
+ webpack-sources: 3.3.3
+ webpack-virtual-modules: 0.6.2
+ dev: true
+
+ /unplugin@2.3.10:
+ resolution: {integrity: sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ '@jridgewell/remapping': 2.3.5
+ acorn: 8.15.0
+ picomatch: 4.0.3
+ webpack-virtual-modules: 0.6.2
+
+ /unplugin@2.3.2:
+ resolution: {integrity: sha512-3n7YA46rROb3zSj8fFxtxC/PqoyvYQ0llwz9wtUPUutr9ig09C8gGo5CWCwHrUzlqC1LLR43kxp5vEIyH1ac1w==}
+ engines: {node: '>=18.12.0'}
+ dependencies:
+ acorn: 8.15.0
+ picomatch: 4.0.3
+ webpack-virtual-modules: 0.6.2
+ dev: true
+
+ /unquote@1.1.1:
+ resolution: {integrity: sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==}
+ dev: false
+
+ /untyped@2.0.0:
+ resolution: {integrity: sha512-nwNCjxJTjNuLCgFr42fEak5OcLuB3ecca+9ksPFNvtfYSLpjf+iJqSIaSnIile6ZPbKYxI5k2AfXqeopGudK/g==}
+ hasBin: true
+ dependencies:
+ citty: 0.1.6
+ defu: 6.1.4
+ jiti: 2.6.1
+ knitwork: 1.2.0
+ scule: 1.3.0
+ dev: false
+
+ /update-browserslist-db@1.1.3(browserslist@4.26.3):
+ resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+ dependencies:
+ browserslist: 4.26.3
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
+ /uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ dependencies:
+ punycode: 2.3.1
+ dev: true
+
+ /url-parse@1.5.10:
+ resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+ dependencies:
+ querystringify: 2.2.0
+ requires-port: 1.0.0
+ dev: true
+
+ /utif@2.0.1:
+ resolution: {integrity: sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==}
+ dependencies:
+ pako: 1.0.11
+ dev: false
+
+ /util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+ /utils-merge@1.0.1:
+ resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
+ engines: {node: '>= 0.4.0'}
+ dev: true
+
+ /uview-plus@3.5.41:
+ resolution: {integrity: sha512-X+oCPvTngZaqbzMlTZepPxEHk750br2UnywnIShXWHm3uiV3WzrFh5TQzK9f8JveX6FS/dVUgcVk89BJPMC6mw==}
+ engines: {HBuilderX: ^3.1.0, uni-app: ^4.66, uni-app-x: ''}
+ dependencies:
+ clipboard: 2.0.11
+ dayjs: 1.11.18
+ dev: false
+
+ /v8-to-istanbul@8.1.1:
+ resolution: {integrity: sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==}
+ engines: {node: '>=10.12.0'}
+ dependencies:
+ '@types/istanbul-lib-coverage': 2.0.6
+ convert-source-map: 1.9.0
+ source-map: 0.7.6
+ dev: true
+
+ /vary@1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ /vite-dev-rpc@1.1.0(vite@5.2.8):
+ resolution: {integrity: sha512-pKXZlgoXGoE8sEKiKJSng4hI1sQ4wi5YT24FCrwrLt6opmkjlqPPVmiPWWJn8M8byMxRGzp1CrFuqQs4M/Z39A==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.1 || ^7.0.0-0
+ dependencies:
+ birpc: 2.6.1
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ vite-hot-client: 2.1.0(vite@5.2.8)
+ dev: true
+
+ /vite-hot-client@2.1.0(vite@5.2.8):
+ resolution: {integrity: sha512-7SpgZmU7R+dDnSmvXE1mfDtnHLHQSisdySVR7lO8ceAXvM0otZeuQQ6C8LrS5d/aYyP/QZ0hI0L+dIPrm4YlFQ==}
+ peerDependencies:
+ vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
+ dependencies:
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ dev: true
+
+ /vite-plugin-clean-build@1.4.1(vite@5.2.8):
+ resolution: {integrity: sha512-QtO/b8sFNsgcrQG0jyeCN7gy8Pgi+xSgIKb0LGZFT8fx8nLClCpA1ttwKuv8X842waF8/tM/ey6YrD1tdD81/g==}
+ peerDependencies:
+ vite: '>= 3.0.0'
+ dependencies:
+ del: 6.1.1
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ dev: true
+
+ /vite-plugin-replace-image-url@1.4.1(vite@5.2.8):
+ resolution: {integrity: sha512-GyYMRtNzSSs7Vg3TyzWe/ezV5FsPAbD3MhFfd10ztU118PRfpAR9iIUjOcSrv0u8ssxaNre3FJ1KGIwYDwnNnQ==}
+ peerDependencies:
+ vite: '>=3.0.0'
+ dependencies:
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ dev: true
+
+ /vite-plugin-restart@1.0.0(vite@5.2.8):
+ resolution: {integrity: sha512-t2ktkTOa+DQX05TEZm/3FE0DyrYEyFXdhG5gLcta5p71zOpg9yG3DeRcHWJVLJgWNoaVtOr4fUlr1kKu+WfXyQ==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
+ dependencies:
+ micromatch: 4.0.8
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ dev: true
+
+ /vite-plugin-vue-mcp@0.3.2(vite@5.2.8)(vue@3.4.21):
+ resolution: {integrity: sha512-MUYSQvJUbEqFWCeZNq/3c6wg3upz8+ALPZkMjPTEGQtRK88uf17P6u/xB0u+4Qq/sn83iLD8r5QZLMDfxIEcVg==}
+ peerDependencies:
+ vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
+ dependencies:
+ '@antfu/utils': 9.3.0
+ '@modelcontextprotocol/sdk': 1.19.1
+ '@vue/devtools-core': 7.7.7(vite@5.2.8)(vue@3.4.21)
+ '@vue/devtools-kit': 7.7.7
+ ansis: 3.17.0
+ birpc: 2.6.1
+ debug: 4.4.3
+ hookable: 5.5.3
+ nanoid: 3.3.11
+ pathe: 2.0.3
+ vite: 5.2.8(sass@1.79.6)(terser@5.44.0)
+ vite-dev-rpc: 1.1.0(vite@5.2.8)
+ vite-hot-client: 2.1.0(vite@5.2.8)
+ zod: 3.25.76
+ transitivePeerDependencies:
+ - supports-color
+ - vue
+ dev: true
+
+ /vite@5.2.8(sass@1.79.6)(terser@5.44.0):
+ resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ 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
+ dependencies:
+ esbuild: 0.20.2
+ postcss: 8.5.6
+ rollup: 4.52.4
+ sass: 1.79.6
+ terser: 5.44.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ /vue-demi@0.14.10(vue@3.4.21):
+ resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: 3.4.21
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+ dependencies:
+ vue: 3.4.21(typescript@5.9.3)
+ dev: false
+
+ /vue-eslint-parser@10.2.0(eslint@9.32.0):
+ resolution: {integrity: sha512-CydUvFOQKD928UzZhTp4pr2vWz1L+H99t7Pkln2QSPdvmURT0MoC4wUccfCnuEaihNsu9aYYyk+bep8rlfkUXw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ dependencies:
+ debug: 4.4.3
+ eslint: 9.32.0
+ eslint-scope: 8.4.0
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ esquery: 1.6.0
+ semver: 7.7.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /vue-flow-layout@0.1.1(vue@3.4.21):
+ resolution: {integrity: sha512-JdgRRUVrN0Y2GosA0M68DEbKlXMqJ7FQgsK8CjQD2vxvNSqAU6PZEpi4cfcTVtfM2GVOMjHo7GKKLbXxOBqDqA==}
+ peerDependencies:
+ vue: 3.4.21
+ dependencies:
+ vue: 3.4.21(typescript@5.9.3)
+ dev: true
+
+ /vue-i18n@9.1.9(vue@3.4.21):
+ resolution: {integrity: sha512-JeRdNVxS2OGp1E+pye5XB6+M6BBkHwAv9C80Q7+kzoMdUDGRna06tjC0vCB/jDX9aWrl5swxOMFcyAr7or8XTA==}
+ engines: {node: '>= 10'}
+ peerDependencies:
+ vue: 3.4.21
+ dependencies:
+ '@intlify/core-base': 9.1.9
+ '@intlify/shared': 9.1.9
+ '@intlify/vue-devtools': 9.1.9
+ '@vue/devtools-api': 6.6.4
+ vue: 3.4.21(typescript@5.9.3)
+ dev: false
+
+ /vue-router@4.5.1(vue@3.4.21):
+ resolution: {integrity: sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw==}
+ peerDependencies:
+ vue: 3.4.21
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ vue: 3.4.21(typescript@5.9.3)
+ dev: false
+
+ /vue@3.4.21(typescript@5.9.3):
+ resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ 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@3.4.21)
+ '@vue/shared': 3.4.21
+ typescript: 5.9.3
+
+ /w3c-hr-time@1.0.2:
+ resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
+ deprecated: Use your platform's native performance.now() and performance.timeOrigin.
+ dependencies:
+ browser-process-hrtime: 1.0.0
+ dev: true
+
+ /w3c-xmlserializer@2.0.0:
+ resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==}
+ engines: {node: '>=10'}
+ dependencies:
+ xml-name-validator: 3.0.0
+ dev: true
+
+ /walker@1.0.8:
+ resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
+ dependencies:
+ makeerror: 1.0.12
+ dev: true
+
+ /webidl-conversions@5.0.0:
+ resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /webidl-conversions@6.1.0:
+ resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==}
+ engines: {node: '>=10.4'}
+ dev: true
+
+ /webpack-sources@3.3.3:
+ resolution: {integrity: sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==}
+ engines: {node: '>=10.13.0'}
+ dev: true
+
+ /webpack-virtual-modules@0.6.2:
+ resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
+
+ /webrtc-adapter@8.2.4:
+ resolution: {integrity: sha512-VwtwbYNKnVQW8koB9qb8YcxNwpSVHTvvKEZLzY6uQ3gFrA9E87VPbB5xE+m1AGwUjL1UgN35jRR9hQgteZI5bg==}
+ engines: {node: '>=6.0.0', npm: '>=3.10.0'}
+ dependencies:
+ sdp: 3.2.1
+ dev: false
+
+ /whatwg-encoding@1.0.5:
+ resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==}
+ dependencies:
+ iconv-lite: 0.4.24
+ dev: true
+
+ /whatwg-mimetype@2.3.0:
+ resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==}
+ dev: true
+
+ /whatwg-url@8.7.0:
+ resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==}
+ engines: {node: '>=10'}
+ dependencies:
+ lodash: 4.17.21
+ tr46: 2.1.0
+ webidl-conversions: 6.1.0
+ dev: true
+
+ /which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: true
+
+ /which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: true
+
+ /word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ dev: true
+
+ /wrap-ansi@8.1.0:
+ resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ ansi-styles: 6.2.3
+ string-width: 5.1.2
+ strip-ansi: 7.1.2
+ dev: true
+
+ /wrap-ansi@9.0.2:
+ resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==}
+ engines: {node: '>=18'}
+ dependencies:
+ ansi-styles: 6.2.3
+ string-width: 7.2.0
+ strip-ansi: 7.1.2
+ dev: true
+
+ /wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+ dev: true
+
+ /write-file-atomic@3.0.3:
+ resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
+ dependencies:
+ imurmurhash: 0.1.4
+ is-typedarray: 1.0.0
+ signal-exit: 3.0.7
+ typedarray-to-buffer: 3.1.5
+ dev: true
+
+ /write-file-atomic@5.0.1:
+ resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ dependencies:
+ imurmurhash: 0.1.4
+ signal-exit: 4.1.0
+ dev: true
+
+ /ws@7.5.10:
+ resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
+ 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
+ dev: true
+
+ /ws@8.18.3:
+ resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
+ 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
+
+ /xhr@2.6.0:
+ resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==}
+ dependencies:
+ global: 4.4.0
+ is-function: 1.0.2
+ parse-headers: 2.0.6
+ xtend: 4.0.2
+ dev: false
+
+ /xml-name-validator@3.0.0:
+ resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==}
+ dev: true
+
+ /xml-name-validator@4.0.0:
+ resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /xml-parse-from-string@1.0.1:
+ resolution: {integrity: sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==}
+ dev: false
+
+ /xml2js@0.5.0:
+ resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
+ engines: {node: '>=4.0.0'}
+ dependencies:
+ sax: 1.4.1
+ xmlbuilder: 11.0.1
+ dev: false
+
+ /xmlbuilder@11.0.1:
+ resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
+ engines: {node: '>=4.0'}
+ dev: false
+
+ /xmlchars@2.2.0:
+ resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
+ dev: true
+
+ /xmlhttprequest@1.8.0:
+ resolution: {integrity: sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==}
+ engines: {node: '>=0.4.0'}
+ dev: false
+
+ /xregexp@3.1.0:
+ resolution: {integrity: sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==}
+
+ /xtend@4.0.2:
+ resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+ engines: {node: '>=0.4'}
+ dev: false
+
+ /y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /yallist@3.1.1:
+ resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+
+ /yaml-eslint-parser@1.3.0:
+ resolution: {integrity: sha512-E/+VitOorXSLiAqtTd7Yqax0/pAS3xaYMP+AUUJGOK1OZG3rhcj9fcJOM5HJ2VrP1FrStVCWr1muTfQCdj4tAA==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ dependencies:
+ eslint-visitor-keys: 3.4.3
+ yaml: 2.8.1
+ dev: true
+
+ /yaml@1.10.2:
+ resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
+ engines: {node: '>= 6'}
+
+ /yaml@2.8.1:
+ resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==}
+ engines: {node: '>= 14.6'}
+ hasBin: true
+ dev: true
+
+ /yargs-parser@20.2.9:
+ resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /yargs@16.2.0:
+ resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
+ engines: {node: '>=10'}
+ dependencies:
+ cliui: 7.0.4
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 20.2.9
+ dev: true
+
+ /yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+ dependencies:
+ cliui: 8.0.1
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 21.1.1
+ dev: true
+
+ /yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /z-paging@2.8.8:
+ resolution: {integrity: sha512-l8HWhqlv1TvoNLwbf1fd8rS0zjAoVE6tdEUhMhKrnRXkfHFULIXMbDpljcSr6IyQoMzfWxF4Nqml3+2ZDgjk7g==}
+ engines: {HBuilderX: ^3.0.7, uni-app: ^4.07}
+ dev: false
+
+ /zod-to-json-schema@3.24.6(zod@3.25.76):
+ resolution: {integrity: sha512-h/z3PKvcTcTetyjl1fkj79MHNEjm+HpD6NXheWjzOekY7kV+lwDYnHw+ivHkijnCSMz1yJaWBD9vu/Fcmk+vEg==}
+ peerDependencies:
+ zod: ^3.24.1
+ dependencies:
+ zod: 3.25.76
+ dev: true
+
+ /zod@3.25.76:
+ resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
+ dev: true
+
+ /zwitch@2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
+ dev: true
diff --git a/uniapps/drone-app/project.config.json b/uniapps/drone-app/project.config.json
new file mode 100644
index 0000000..473407b
--- /dev/null
+++ b/uniapps/drone-app/project.config.json
@@ -0,0 +1,25 @@
+{
+ "setting": {
+ "es6": true,
+ "postcss": true,
+ "minified": true,
+ "uglifyFileName": false,
+ "enhance": true,
+ "packNpmRelationList": [],
+ "babelSetting": {
+ "ignore": [],
+ "disablePlugins": [],
+ "outputPath": ""
+ },
+ "useCompilerPlugins": false,
+ "minifyWXML": true
+ },
+ "compileType": "miniprogram",
+ "simulatorPluginLibVersion": {},
+ "packOptions": {
+ "ignore": [],
+ "include": []
+ },
+ "appid": "wxf7a7651c306981af",
+ "editorSetting": {}
+}
\ No newline at end of file
diff --git a/uniapps/drone-app/project.private.config.json b/uniapps/drone-app/project.private.config.json
new file mode 100644
index 0000000..458576e
--- /dev/null
+++ b/uniapps/drone-app/project.private.config.json
@@ -0,0 +1,14 @@
+{
+ "libVersion": "3.9.1",
+ "projectname": "drone-app",
+ "setting": {
+ "urlCheck": true,
+ "coverView": true,
+ "lazyloadPlaceholderEnable": false,
+ "skylineRenderEnable": false,
+ "preloadBackgroundData": false,
+ "autoAudits": false,
+ "showShadowRootInWxmlPanel": true,
+ "compileHotReLoad": true
+ }
+}
diff --git a/uniapps/drone-app/scripts/post-upgrade.js b/uniapps/drone-app/scripts/post-upgrade.js
new file mode 100644
index 0000000..1092af4
--- /dev/null
+++ b/uniapps/drone-app/scripts/post-upgrade.js
@@ -0,0 +1,36 @@
+// # 执行 `pnpm upgrade` 后会升级 `uniapp` 相关依赖
+// # 在升级完后,会自动添加很多无用依赖,这需要删除以减小依赖包体积
+// # 只需要执行下面的命令即可
+
+import { exec } from 'node:child_process'
+
+// 定义要执行的命令
+const dependencies = [
+ '@dcloudio/uni-app-harmony',
+ // TODO: 如果需要某个平台的小程序,请手动删除或注释掉
+ '@dcloudio/uni-mp-alipay',
+ '@dcloudio/uni-mp-baidu',
+ '@dcloudio/uni-mp-jd',
+ '@dcloudio/uni-mp-kuaishou',
+ '@dcloudio/uni-mp-lark',
+ '@dcloudio/uni-mp-qq',
+ '@dcloudio/uni-mp-toutiao',
+ '@dcloudio/uni-mp-xhs',
+ '@dcloudio/uni-quickapp-webview',
+ '@dcloudio/uni-mp-harmony',
+ // vue 已经内置了 @vue/runtime-core,这里移除掉
+ '@vue/runtime-core',
+]
+
+// 使用exec执行命令
+exec(`pnpm remove ${dependencies.join(' ')}`, (error, stdout, stderr) => {
+ if (error) {
+ // 如果有错误,打印错误信息
+ console.error(`执行出错: ${error}`)
+ return
+ }
+ // 打印正常输出
+ console.log(`stdout: ${stdout}`)
+ // 如果有错误输出,也打印出来
+ console.error(`stderr: ${stderr}`)
+})
diff --git a/uniapps/drone-app/src/App.vue b/uniapps/drone-app/src/App.vue
new file mode 100644
index 0000000..5101c82
--- /dev/null
+++ b/uniapps/drone-app/src/App.vue
@@ -0,0 +1,76 @@
+<script setup>
+import { onHide, onLaunch, onShow } from "@dcloudio/uni-app";
+import { useAppStore, useUserStore } from "@/store";
+import { useGlobalWS } from "@/hooks/useGlobalWS.js";
+
+const appStore = useAppStore();
+const userStore = useUserStore();
+
+useGlobalWS();
+
+onShow(() => {
+ console.log("App Show");
+});
+
+onHide(() => {
+ console.log("App Hide");
+});
+
+onLaunch(() => {
+ // 初始化系统信息
+ appStore.initSystemInfo();
+ if (!userStore.userInfo) {
+ //不存在则跳转至登录页
+ uni.reLaunch({
+ url: "/pages/login/index",
+ });
+ }
+});
+</script>
+
+<style lang="scss">
+/* 每个页面公共css */
+@import "uview-plus/index.scss";
+@import "@/static/styles/common.scss";
+
+.TUICallKit-mobile {
+ position: fixed;
+ left: 0;
+ top: 0;
+ z-index: 9999;
+}
+
+page {
+ background-image: url("https://wrj.shuixiongit.com/aiskyminio/cloud-bucket/ztzf_app_assets/images/user/bg.png");
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-attachment: fixed;
+ // min-height: 10vh;
+}
+
+.uni-tabbar__item:nth-child(4) {
+ .uni-tabbar__bd {
+ .uni-tabbar__icon {
+ width: 60px !important;
+ height: 60px !important;
+ margin-top: -20px;
+ }
+ }
+}
+
+.uni-tabbar-border {
+ background-color: #f6f6f6 !important;
+}
+
+.uni-page-head__title {
+ font-family: Source Han Sans CN, Source Han Sans CN !important;
+ font-weight: 400 !important;
+ font-size: 17px !important;
+ color: #222324 !important;
+}
+
+.uni-page-head {
+ background: transparent !important;
+}
+</style>
diff --git a/uniapps/drone-app/src/api/common/index.js b/uniapps/drone-app/src/api/common/index.js
new file mode 100644
index 0000000..52d1afc
--- /dev/null
+++ b/uniapps/drone-app/src/api/common/index.js
@@ -0,0 +1,8 @@
+import { post, upload } from '@/utils/request'
+
+// 文件上传
+export const uploadFile = filePath =>
+ upload('/common/upload', { filePath, name: 'file' })
+
+// 发送验证码
+export const sendCode = data => post('/sendCode', { data })
diff --git a/uniapps/drone-app/src/api/drone.js b/uniapps/drone-app/src/api/drone.js
new file mode 100644
index 0000000..ca58a98
--- /dev/null
+++ b/uniapps/drone-app/src/api/drone.js
@@ -0,0 +1,21 @@
+import {request} from "@/utils/request"
+
+export const startVoice = data => {
+ return request({
+ url: `/drone-device-core/speak/api/v1/startVoice`,
+ method: 'post',
+ data,
+ })
+}
+
+// 上传音频文件
+export const uploadSpeak = data => {
+ return request({
+ url:'/drone-device-core/speak/api/v1/uploadSpeak',
+ method: 'post',
+ headers: {
+ 'Content-Type': 'multipart/form-data',
+ },
+ data,
+ })
+}
diff --git a/uniapps/drone-app/src/api/inspectionTask.js b/uniapps/drone-app/src/api/inspectionTask.js
new file mode 100644
index 0000000..4f778a8
--- /dev/null
+++ b/uniapps/drone-app/src/api/inspectionTask.js
@@ -0,0 +1,10 @@
+import {request} from "@/utils/index.js";
+
+export const getJobListApi = (data, params) => {
+ return request({
+ url: `/drone-device-core/wayline/waylineJobInfo/jobList`,
+ method: 'post',
+ data,
+ params,
+ })
+}
diff --git a/uniapps/drone-app/src/api/map.js b/uniapps/drone-app/src/api/map.js
new file mode 100644
index 0000000..9e905bb
--- /dev/null
+++ b/uniapps/drone-app/src/api/map.js
@@ -0,0 +1,9 @@
+import {request} from "@/utils/request"
+
+export const getDeviceRegionApi = data => {
+ return request({
+ url: '/drone-device-core/manage/api/v1/devices/getDeviceRegion',
+ method: 'post',
+ data: { hidden_flag: 0, ...data },
+ })
+}
diff --git a/uniapps/drone-app/src/api/user/index.js b/uniapps/drone-app/src/api/user/index.js
new file mode 100644
index 0000000..7597dc1
--- /dev/null
+++ b/uniapps/drone-app/src/api/user/index.js
@@ -0,0 +1,80 @@
+import {
+ get,
+ post,
+ request
+} from "@/utils/request"
+
+import website from '@/config/website'
+
+/** 登录 */
+export const login = data =>
+ post("/user/login", {
+ data,
+ custom: {
+ auth: false
+ }
+ })
+
+/** 验证码登录 */
+export const loginByCode = data => post("/user/loginByCode", {
+ data
+})
+
+/** 退出登录 */
+export const logout = () => post("/user/logout")
+
+// 用户登录接口
+export const loginByUsername = (tenantId, deptId, roleId, username, password, type, key, code) => {
+ return request({
+ url: '/blade-auth/oauth/token',
+ method: 'post',
+ header: {
+ 'Tenant-Id': tenantId,
+ 'Dept-Id': website.switchMode ? deptId : '',
+ 'Role-Id': website.switchMode ? roleId : '',
+ 'Captcha-Key': key,
+ 'Captcha-Code': code,
+ },
+ params: {
+ tenantId,
+ username,
+ password,
+ grant_type: 'password',
+ scope: 'all',
+ type,
+ },
+ })
+}
+export const getUserInfo = () => {
+ return request({
+ url: '/blade-system/user/info',
+ method: 'get',
+ });
+};
+export const updateInfo = row => {
+ return request({
+ url: '/blade-system/user/update-info',
+ method: 'post',
+ data: row,
+ });
+};
+export const updatePassword = (oldPassword, newPassword, newPassword1) => {
+ return request({
+ url: '/blade-system/user/update-password',
+ method: 'post',
+ params: {
+ oldPassword,
+ newPassword,
+ newPassword1,
+ },
+ });
+};
+
+// 发送通话信息
+export const sendVoiceCallApi = (data) => {
+ return request({
+ url: `/drone-device-core/dp/call/sendVoiceCall`,
+ method: 'post',
+ data
+ })
+}
diff --git a/uniapps/drone-app/src/api/work/index.js b/uniapps/drone-app/src/api/work/index.js
new file mode 100644
index 0000000..882de2f
--- /dev/null
+++ b/uniapps/drone-app/src/api/work/index.js
@@ -0,0 +1,62 @@
+import {request} from "@/utils/index.js";
+export const getList = (data) => {
+ return request({
+ url: '/drone-device-core/jobEvent/eventPage',
+ method: 'post',
+ data,
+ })
+}
+// 获取状态统计数据
+export const getstatusCount = (params) => {
+ return request({
+ url: '/drone-device-core/jobEvent/getstatusCount',
+ method: 'get',
+ params,
+ })
+}
+
+export const getStepInfo = (eventNum) => {
+ return request({
+ url: '/drone-device-core/jobEvent/getStepInfo',
+ method: 'get',
+ params: { eventNum }
+ })
+}
+
+// 修改接口:处理待审核状态,动态构建 FormData 提交
+export const flowEvent = (data, file) => {
+ const formData = new FormData()
+
+ // 动态添加非空字段到 FormData
+ Object.entries(data).forEach(([key, value]) => {
+ if (value !== undefined && value !== null) {
+ formData.append(key, value)
+ }
+ })
+
+ // 如果 file 存在,则添加到 FormData
+ if (file) {
+ formData.append('file', file)
+ }
+ for (let [key, value] of formData.entries()) {
+ console.log(key, value)
+ }
+console.log('formData',formData)
+ return request({
+ url: '/drone-device-core/jobEvent/flowEvent',
+ method: 'post',
+ data: formData,
+ headers: {
+ 'Content-Type': 'multipart/form-data', // 设置为表单数据格式
+ },
+ })
+}
+
+// 新增接口:获取工单详细信息
+export const getTicketInfo = (id) => {
+ return request({
+ url: '/drone-device-core/jobEvent/getTicketInfo',
+ method: 'get',
+ params: { id }, // 使用工单 ID 查询
+ })
+}
diff --git a/uniapps/drone-app/src/components/.gitkeep b/uniapps/drone-app/src/components/.gitkeep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/uniapps/drone-app/src/components/.gitkeep
diff --git a/uniapps/drone-app/src/components/WebViewPlus.vue b/uniapps/drone-app/src/components/WebViewPlus.vue
new file mode 100644
index 0000000..a6ca687
--- /dev/null
+++ b/uniapps/drone-app/src/components/WebViewPlus.vue
@@ -0,0 +1,53 @@
+<template>
+ <web-view :src="src" @message="viewMessage" :allow="allow"/>
+</template>
+
+
+<script setup>
+
+
+const allow = "accelerometer;ambient-light-sensor;autoplay;battery;camera;clipboard-read;clipboard-write;cross-origin-isolated;display-capture;document-domain;encrypted-media;execution-while-not-rendered;execution-while-out-of-viewport;fullscreen;gamepad;geolocation;gyroscope;hid;idle-detection;local-fonts;magnetometer;microphone;midi;payment;picture-in-picture;publickey-credentials-get;screen-wake-lock;serial;speaker-selection;storage-access;sync-xhr;usb;web-share;xr-spatial-tracking"
+const src = defineModel("src");
+const emit = defineEmits(["webMessage"]);
+
+function viewMessage(event) {
+ messageFun({
+ data: {
+ data: {
+ arg: event.detail.data[0],
+ },
+ type: "WEB_INVOKE_APPSERVICE",
+ },
+ });
+}
+
+// WEB_INVOKE_APPSERVICE
+function messageFun(e) {
+ if (e.data.type === "WEB_INVOKE_APPSERVICE") {
+ if (e.data.data.arg.type === "tokenExpired") {
+ return uni.reLaunch({
+ url: "/pages/login/index",
+ });
+ }
+ emit("webMessage", e.data.data.arg);
+ }
+}
+
+
+onLoad((obj) => {
+ // const h5Params = obj?.cs && JSON.parse(obj?.cs)
+ // console.log('h5Params', h5Params)
+ // h5Params && viewMessage({detail: {data: [h5Params.data]}})
+})
+
+onShow(() => {
+ if (window && window.addEventListener)
+ window.addEventListener("message", messageFun);
+});
+onHide(() => {
+ if (window && window.removeEventListener)
+ window.removeEventListener("message", messageFun);
+});
+</script>
+
+<style scoped lang="scss"></style>
diff --git a/uniapps/drone-app/src/components/agree-privacy/index.vue b/uniapps/drone-app/src/components/agree-privacy/index.vue
new file mode 100644
index 0000000..f2e18d1
--- /dev/null
+++ b/uniapps/drone-app/src/components/agree-privacy/index.vue
@@ -0,0 +1,214 @@
+<template>
+ <u-popup :show="modelValue" round="20" @close="closeAgreePrivacy">
+ <view class="p-30rpx">
+ <view class="text-lg text-black font-bold">
+ <span>{{ initTitle }}</span>
+ </view>
+
+ <view class="flex flex-col">
+ <span class="pt-30rpx text-black font-bold">{{ initSubTitle }}</span>
+ <span class="pt-30rpx text-sm text-black"
+ >1.为向您提供基本的服务,我们会遵循正当、合法、必要的原则收集和使用必要的信息。</span
+ >
+ <span class="pt-30rpx text-sm text-black"
+ >2.基于您的授权我们可能会收集和使用您的相关信息,您有权拒绝或取消授权。</span
+ >
+ <span class="pt-30rpx text-sm text-black"
+ >3.未经您的授权同意,我们不会将您的信息共享给第三方或用于您未授权的其他用途。</span
+ >
+ <span class="pt-30rpx text-sm text-black"
+ >4.详细信息请您完整阅读<text
+ class="text-decoration"
+ @click="openPrivacyContract"
+ >{{ initPrivacyContractName }}</text
+ ></span
+ >
+ </view>
+
+ <view class="mt-30rpx flex items-center justify-around pt-10rpx">
+ <view class="min-w-100px">
+ <button class="button button-default" @click="disagree">拒绝</button>
+ </view>
+ <view class="min-w-100px">
+ <button
+ :id="agreePrivacyId"
+ class="button button-primary"
+ open-type="agreePrivacyAuthorization"
+ @agreeprivacyauthorization="agree"
+ >
+ 同意
+ </button>
+ </view>
+ </view>
+ </view>
+ </u-popup>
+</template>
+
+<script setup>
+const props = withDefaults(defineProps(), {
+ modelValue: false,
+ title: "",
+ subTitle: "",
+ disableCheckPrivacy: true,
+ agreePrivacyId: "agree-btn",
+});
+
+const emit = defineEmits([
+ "update:modelValue",
+ "needPrivacyAuthorization",
+ "agree",
+ "disagree",
+]);
+// 初始化的标题
+const initTitle = ref("隐私政策概要");
+// 初始化的副标题
+const initSubTitle = ref("");
+// 隐私政策
+const initPrivacyContractName = ref("隐私政策");
+
+// 打开隐私
+function openAgreePrivacy() {
+ emit("update:modelValue", true);
+}
+
+// 关闭隐私
+function closeAgreePrivacy() {
+ emit("update:modelValue", false);
+}
+
+// 需要初始化的数据
+function initData() {
+ initTitle.value = props.title || initTitle.value;
+ initSubTitle.value =
+ props.subTitle ||
+ `亲爱的用户,感谢您一直以来的支持!为了更好地保护您的权益,同时遵守相关监管要求,请认真阅读${initPrivacyContractName.value},特向您说明如下:`;
+}
+
+// 检测是否授权
+function checkPrivacySetting() {
+ wx.getPrivacySetting({
+ success: (res) => {
+ // 未授权弹框
+ if (res.needAuthorization) {
+ initPrivacyContractName.value = res.privacyContractName;
+ initData();
+ // 是否禁用 自动检测隐私并弹框
+ if (!props.disableCheckPrivacy) {
+ // 需要弹出隐私协议
+ openAgreePrivacy();
+ }
+ } else {
+ // 用户已经同意过隐私协议,所以不需要再弹出隐私协议,也能调用已声明过的隐私接口
+ // wx.getUserProfile()
+ }
+ },
+ fail: (e) => {
+ console.log(e);
+ },
+ });
+}
+// 打开隐私政策
+function openPrivacyContract() {
+ wx.openPrivacyContract({
+ success: () => {}, // 打开成功
+ fail: (e) => {
+ uni.$u.toast(`打开失败:${e}`);
+ }, // 打开失败
+ });
+}
+
+// 同意
+function agree(e) {
+ const buttonId = e.target.id || "agree-btn";
+ emit("agree", buttonId);
+ emit("update:modelValue", false);
+}
+
+// 拒绝
+function disagree() {
+ emit("disagree");
+ closeAgreePrivacy();
+}
+
+onMounted(() => {
+ // 检测是否授权
+ checkPrivacySetting();
+
+ // // 监听授权
+ // wx.onNeedPrivacyAuthorization((resolve, eventInfo) => {
+ // emit('update:modelValue', true);
+ // // 回调
+ // emit('needPrivacyAuthorization', resolve, eventInfo);
+ // });
+});
+</script>
+
+<style scoped lang="scss">
+.button {
+ position: relative;
+ box-sizing: border-box;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+ //height: 80rpx;
+ padding: 10px 20px;
+ font-size: 14px;
+ font-weight: 500;
+ line-height: 1.5;
+ color: #fff;
+ text-align: center;
+ text-decoration: none;
+ border-radius: 18rpx;
+ //border-width: 1px;
+ //border-style: solid;
+}
+
+.button-lg {
+ position: relative;
+ box-sizing: border-box;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+ //height: 80rpx;
+ padding: 12px 22px;
+ font-size: 14px;
+ font-weight: 700;
+ line-height: 1.5;
+ color: #fff;
+ text-align: center;
+ text-decoration: none;
+ border-radius: 20rpx;
+ //border-width: 1px;
+ //border-style: solid;
+}
+
+.button-default {
+ color: #07c160;
+ background-color: rgb(0 0 0 / 5%);
+}
+
+.button-primary {
+ color: #fff;
+ background-color: #07c160;
+}
+
+button {
+ padding: 0;
+ margin: 0;
+ line-height: inherit;
+ background-color: transparent;
+ border-radius: 0;
+ outline: none;
+}
+
+button::after {
+ border: none;
+}
+
+.text-decoration {
+ color: #07c160;
+ text-decoration: underline;
+}
+</style>
diff --git a/uniapps/drone-app/src/components/lang-select/index.vue b/uniapps/drone-app/src/components/lang-select/index.vue
new file mode 100644
index 0000000..a81533f
--- /dev/null
+++ b/uniapps/drone-app/src/components/lang-select/index.vue
@@ -0,0 +1,51 @@
+<template>
+ <view>
+ <picker
+ range-key="label"
+ :range="langOptions"
+ :value="langIndex"
+ @change="handleLangChange"
+ >
+ <slot>
+ <view class="i-mdi-language" :style="langStyle" />
+ </slot>
+ </picker>
+ </view>
+</template>
+
+<script setup>
+import { useI18n } from "vue-i18n";
+
+const props = defineProps({
+ size: {
+ type: Number,
+ default: 40,
+ required: false,
+ },
+});
+const emit = defineEmits(["change"]);
+const { locale, t } = useI18n();
+const langStyle = {
+ fontSize: `${props.size}rpx`,
+};
+const langOptions = computed(() => {
+ return [
+ { label: t("locale.en"), value: "en" },
+ { label: t("locale.zh-hans"), value: "zh-Hans" },
+ ];
+});
+const langIndex = computed(() => {
+ return langOptions.value.findIndex((item) => {
+ return item.value === locale.value;
+ });
+});
+
+function handleLangChange(event) {
+ const lang = langOptions.value[event.detail.value].value;
+ locale.value = lang;
+ uni.setLocale(lang);
+ emit("change", lang);
+}
+</script>
+
+<style lang="scss" scoped></style>
diff --git a/uniapps/drone-app/src/components/theme-picker/index.vue b/uniapps/drone-app/src/components/theme-picker/index.vue
new file mode 100644
index 0000000..0747ec7
--- /dev/null
+++ b/uniapps/drone-app/src/components/theme-picker/index.vue
@@ -0,0 +1,37 @@
+<template>
+ <view class="flex flex-wrap gap-3">
+ <view
+ v-for="(item, index) in colors"
+ :key="index"
+ class="mb-10rpx h-40rpx w-40rpx center cursor-pointer border-4rpx border-gray-300 rounded-4rpx border-solid"
+ :class="{ 'border-white': theme === item.name }"
+ :style="{ backgroundColor: item.color }"
+ @click="changeTheme(item.name)"
+ >
+ <view v-if="theme === item.name" class="i-mdi-check text-32rpx c-#fff" />
+ </view>
+ </view>
+</template>
+
+<script setup>
+import { useAppStore } from "@/store";
+
+const appStore = useAppStore();
+
+const colors = [
+ {
+ name: "",
+ color: "#21d59d",
+ },
+ {
+ name: "blue",
+ color: "#3c9cff",
+ },
+];
+
+const theme = computed(() => appStore.getTheme);
+
+function changeTheme(theme) {
+ appStore.setTheme(theme);
+}
+</script>
diff --git a/uniapps/drone-app/src/config/env.js b/uniapps/drone-app/src/config/env.js
new file mode 100644
index 0000000..94e7913
--- /dev/null
+++ b/uniapps/drone-app/src/config/env.js
@@ -0,0 +1,47 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-12-15 17:51:08
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-16 15:01:04
+ * @FilePath : \src\config\env.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-12-15 17:51:08
+ */
+// 如果是打包app,需要改这里,h5不需要改这里
+const development = {
+ VITE_APP_ENV:'development',
+ // 开发环境这里改为自己的
+ VITE_APP_WEBVIEW_URL: 'https://wrj.shuixiongit.com/drone-app-web-view/#/webViewWrapper',
+ // VITE_APP_WEBVIEW_URL: 'http://localhost:5173/drone-app-web-view/#/webViewWrapper',
+ VITE_API_BASE_URL: 'https://wrj.shuixiongit.com/api',
+ // VITE_API_BASE_URL: 'https://aisky.org.cn/api',
+ VITE_APP_WS_API_URL:'wss://wrj.shuixiongit.com/drone-wss/api/v1/ws',
+
+ // 静态资源存放地址'
+ VITE_APP_ASSETS_URL: 'https://wrj.shuixiongit.com/drone-app/assets/static'
+}
+
+const test = {
+ VITE_APP_ENV: 'test',
+ VITE_APP_WEBVIEW_URL: 'https://wrj.shuixiongit.com/drone-app-web-view/#/webViewWrapper',
+ VITE_API_BASE_URL: 'https://wrj.shuixiongit.com/api',
+ VITE_APP_WS_API_URL: 'wss://wrj.shuixiongit.com/drone-wss/api/v1/ws',
+ // 静态资源存放地址'
+ VITE_APP_ASSETS_URL: 'https://wrj.shuixiongit.com/drone-app/assets/static'
+}
+
+const production = {
+ VITE_APP_ENV: 'production',
+ VITE_APP_WEBVIEW_URL: 'https://aisky.org.cn/drone-app-web-view/#/webViewWrapper',
+ VITE_API_BASE_URL: 'https://aisky.org.cn/api',
+ VITE_APP_WS_API_URL: 'wss://aisky.org.cn/drone-wss/api/v1/ws',
+ // 静态资源存放地址'
+ VITE_APP_ASSETS_URL: 'https://wrj.shuixiongit.com/drone-app/assets/static'
+}
+
+export default {
+ development,
+ test,
+ production
+}
diff --git a/uniapps/drone-app/src/config/website.js b/uniapps/drone-app/src/config/website.js
new file mode 100644
index 0000000..53305b7
--- /dev/null
+++ b/uniapps/drone-app/src/config/website.js
@@ -0,0 +1,83 @@
+/**
+ * 全局配置文件
+ */
+export default {
+ title: '',
+ logo: 'S',
+ key: 'saber', //配置主键,目前用于存储
+ indexTitle: 'BladeX 微服务平台',
+ clientId: 'drone', // 客户端id
+ clientSecret: 'drone_secret', // 客户端密钥
+ tenantMode: false, // 是否开启租户模式
+ tenantId: '000000', // 管理组租户编号
+ captchaMode: false, // 是否开启验证码模式
+ switchMode: false, // 是否开启登录切换角色部门
+ lockPage: '/lock',
+ tokenTime: 3000,
+ tokenHeader: 'Blade-Auth',
+ //HTTP状态码白名单
+ statusWhiteList: [],
+ //配置首页不可关闭
+ setting: {
+ sidebar: 'vertical',
+ tag: true,
+ debug: true,
+ collapse: true,
+ search: true,
+ color: true,
+ lock: true,
+ screenshot: true,
+ fullscreen: true,
+ theme: true,
+ menu: true,
+ },
+ //首页配置
+ fistPage: {
+ // name: '首页',
+ // path: '/wel/index',
+ name: '门户页',
+ path: '/wel/gatewayPage',
+ },
+ //配置菜单的属性
+ menu: {
+ iconDefault: 'icon-caidan',
+ label: 'name',
+ path: 'path',
+ icon: 'source',
+ children: 'children',
+ query: 'query',
+ href: 'path',
+ meta: 'meta',
+ },
+ //水印配置
+ watermark: {
+ mode: false,
+ text: 'BladeX',
+ },
+ //oauth2配置
+ oauth2: {
+ // 是否开启注册功能
+ registerMode: true,
+ // 使用后端工程 @org.springblade.test.Sm2KeyGenerator 获取
+ publicKey: '请配置国密sm2公钥',
+ // 第三方系统授权地址
+ authUrl: 'http://localhost/blade-auth/oauth/render',
+ // 单点登录系统认证
+ ssoMode: false, // 是否开启单点登录功能
+ ssoBaseUrl: 'http://localhost:8100', // 单点登录系统地址(cloud端口为8100,boot端口为80)
+ ssoAuthUrl: '/oauth/authorize?client_id=saber3&response_type=code&redirect_uri=', // 单点登录授权地址
+ ssoLogoutUrl: '/oauth/authorize/logout?redirect_uri=', // 单点登录退出地址
+ redirectUri: 'http://localhost:2888/login', // 单点登录回调地址(Saber服务的登录界面地址)
+ },
+ //设计器配置
+ design: {
+ // 流程设计器类型(true->nutflow,false->flowable)
+ designMode: true,
+ // 流程设计器地址(flowable模式)
+ designUrl: 'http://localhost:9999',
+ // 报表设计器地址(cloud端口为8108,boot端口为80)
+ reportUrl: 'http://localhost:8108/ureport',
+ // 规则设计引擎地址
+ edgeUrl: 'http://localhost:1880',
+ },
+}
diff --git a/uniapps/drone-app/src/hooks/index.js b/uniapps/drone-app/src/hooks/index.js
new file mode 100644
index 0000000..f8b4ac2
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/index.js
@@ -0,0 +1,19 @@
+import useClipboard from "./use-clipboard"
+import useLoading from "./use-loading"
+import useLocation from "./use-location"
+import useModal from "./use-modal"
+import usePermission from "./use-permission"
+import useShare from "./use-share"
+import useTheme from "./use-theme"
+import useTabAddButton from "./useTabAddButton"
+
+export {
+ useClipboard,
+ useLoading,
+ useLocation,
+ useModal,
+ usePermission,
+ useShare,
+ useTheme,
+ useTabAddButton
+}
diff --git a/uniapps/drone-app/src/hooks/use-clipboard/index.js b/uniapps/drone-app/src/hooks/use-clipboard/index.js
new file mode 100644
index 0000000..b1b8cf2
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-clipboard/index.js
@@ -0,0 +1,33 @@
+/**
+ * 剪切板
+ * @example
+ * const {setClipboardData, getClipboardData} = useClipboard()
+ * // 设置剪切板
+ * setClipboardData({data: '1234567890'})
+ * // 获取剪切板
+ * const data = await getClipboardData()
+ */
+export default function useClipboard () {
+ const setClipboardData = ({ data, showToast = true }) => {
+ return new Promise((resolve, reject) => {
+ uni.setClipboardData({
+ data,
+ showToast,
+ success: ({ data }) => resolve(data),
+ fail: error => reject(error)
+ })
+ })
+ }
+ const getClipboardData = () => {
+ return new Promise((resolve, reject) => {
+ uni.getClipboardData({
+ success: ({ data }) => resolve(data),
+ fail: error => reject(error)
+ })
+ })
+ }
+ return {
+ setClipboardData,
+ getClipboardData
+ }
+}
diff --git a/uniapps/drone-app/src/hooks/use-loading/index.js b/uniapps/drone-app/src/hooks/use-loading/index.js
new file mode 100644
index 0000000..b45c54b
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-loading/index.js
@@ -0,0 +1,24 @@
+/**
+ * loading 提示框
+ * @example
+ * const {showLoading, hideLoading} = useLoading()
+ * // 显示loading
+ * showLoading()
+ * // 隐藏loading
+ * hideLoading()
+ */
+export default function useLoading () {
+ const showLoading = (content = "加载中") => {
+ uni.showLoading({
+ title: content,
+ mask: true
+ })
+ }
+ const hideLoading = () => {
+ uni.hideLoading()
+ }
+ return {
+ showLoading,
+ hideLoading
+ }
+}
diff --git a/uniapps/drone-app/src/hooks/use-location/index.js b/uniapps/drone-app/src/hooks/use-location/index.js
new file mode 100644
index 0000000..7e063d1
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-location/index.js
@@ -0,0 +1,320 @@
+/**
+ * 定位hooks,提供定位相关功能
+ * - 获取位置
+ * - 位置监听
+ * - 地址解析
+ * - 距离计算
+ */
+export default function useLocation () {
+ // 当前位置信息
+ const location = ref(null)
+
+ // 定位状态
+ const isLocating = ref(false)
+
+ // 是否正在监听位置
+ const isWatching = ref(false)
+
+ // 定位错误信息
+ const error = ref(null)
+
+ // 历史位置
+ const historyLocations = ref([])
+
+ // 监听位置的定时器ID
+ let watchId = null
+
+ /**
+ * 获取当前位置
+ * @param options 定位选项
+ */
+ const getLocation = (options = {}) => {
+ isLocating.value = true
+ error.value = null
+
+ const defaultOptions = {
+ type: "gcj02",
+ altitude: false,
+ isHighAccuracy: false
+ }
+
+ const finalOptions = { ...defaultOptions, ...options }
+
+ return new Promise((resolve, reject) => {
+ uni.getLocation({
+ type: finalOptions.type,
+ altitude: finalOptions.altitude,
+ isHighAccuracy: finalOptions.isHighAccuracy,
+ highAccuracyExpireTime: finalOptions.highAccuracyExpireTime,
+ success: res => {
+ // 更新当前位置
+ const locationData = {
+ ...res,
+ timestamp: Date.now()
+ }
+
+ location.value = locationData
+
+ // 添加到历史记录
+ historyLocations.value.push(locationData)
+
+ // 只保留最近的20条记录
+ if (historyLocations.value.length > 20) {
+ historyLocations.value.shift()
+ }
+
+ finalOptions.success && finalOptions.success(res)
+ resolve(locationData)
+ },
+ fail: err => {
+ error.value = err
+ finalOptions.fail && finalOptions.fail(err)
+ reject(err)
+ },
+ complete: () => {
+ isLocating.value = false
+ finalOptions.complete && finalOptions.complete()
+ }
+ })
+ })
+ }
+
+ /**
+ * 使用地理编码获取地址信息
+ * @param latitude 纬度
+ * @param longitude 经度
+ */
+ const getAddress = (latitude, longitude) => {
+ return new Promise((resolve, reject) => {
+ // #ifdef APP-PLUS
+ uni.request({
+ url: `https://apis.map.qq.com/ws/geocoder/v1/?location=${latitude},${longitude}&key=YOUR_KEY`,
+ success: res => {
+ if (res.data && res.data.status === 0) {
+ const addressComponent = res.data.result.address_component
+ const formattedAddress =
+ res.data.result.formatted_addresses.recommend
+
+ const addressInfo = {
+ nation: addressComponent.nation,
+ province: addressComponent.province,
+ city: addressComponent.city,
+ district: addressComponent.district,
+ street: addressComponent.street,
+ streetNum: addressComponent.street_number,
+ poiName:
+ res.data.result.poi_count > 0
+ ? res.data.result.pois[0].title
+ : "",
+ cityCode: res.data.result.ad_info.city_code
+ }
+
+ if (location.value) {
+ location.value.address = addressInfo
+ location.value.formatted = formattedAddress
+ }
+
+ resolve(addressInfo)
+ } else {
+ reject(new Error("获取地址信息失败"))
+ }
+ },
+ fail: err => {
+ reject(err)
+ }
+ })
+ // #endif
+
+ // #ifndef APP-PLUS
+ // 其他平台可以使用uni.getLocation的geocode参数获取(仅App和微信小程序支持)
+ // 或者使用其他地图服务的API
+ reject(new Error("当前平台不支持地址解析"))
+ // #endif
+ })
+ }
+
+ /**
+ * 停止监听位置
+ */
+ const stopWatchLocation = () => {
+ if (watchId !== null) {
+ clearInterval(watchId)
+ watchId = null
+ }
+
+ isWatching.value = false
+ }
+
+ /**
+ * 开始监听位置变化
+ * @param options 定位选项
+ * @param interval 监听间隔,单位毫秒
+ */
+ const watchLocation = (options = {}, interval = 5000) => {
+ // 已经在监听,先停止
+ if (isWatching.value) {
+ stopWatchLocation()
+ }
+
+ isWatching.value = true
+
+ // 首次定位
+ getLocation(options).catch(err => {
+ console.error("监听位置首次定位失败", err)
+ })
+
+ // 定时获取位置
+ watchId = window.setInterval(() => {
+ if (isWatching.value) {
+ getLocation(options).catch(err => {
+ console.error("监听位置更新失败", err)
+ })
+ }
+ }, interval)
+
+ return watchId
+ }
+
+ /**
+ * 计算两点间距离(米)
+ * @param lat1 第一个点的纬度
+ * @param lon1 第一个点的经度
+ * @param lat2 第二个点的纬度
+ * @param lon2 第二个点的经度
+ * @returns 距离,单位:米
+ */
+ const calculateDistance = (lat1, lon1, lat2, lon2) => {
+ const R = 6371000 // 地球半径,单位米
+ const dLat = ((lat2 - lat1) * Math.PI) / 180
+ const dLon = ((lon2 - lon1) * Math.PI) / 180
+
+ const a =
+ Math.sin(dLat / 2) * Math.sin(dLat / 2) +
+ Math.cos((lat1 * Math.PI) / 180) *
+ Math.cos((lat2 * Math.PI) / 180) *
+ Math.sin(dLon / 2) *
+ Math.sin(dLon / 2)
+
+ const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a))
+ const distance = R * c
+
+ return distance
+ }
+
+ /**
+ * 获取当前位置到目标位置的距离
+ * @param targetLat 目标位置纬度
+ * @param targetLon 目标位置经度
+ * @returns 距离,单位:米,如果当前没有位置信息则返回-1
+ */
+ const getDistanceFromCurrent = (targetLat, targetLon) => {
+ if (!location.value) {
+ return -1
+ }
+
+ return calculateDistance(
+ location.value.latitude,
+ location.value.longitude,
+ targetLat,
+ targetLon
+ )
+ }
+
+ /**
+ * 格式化距离显示
+ * @param distance 距离,单位:米
+ * @returns 格式化后的距离字符串
+ */
+ const formatDistance = distance => {
+ if (distance < 0) {
+ return "未知距离"
+ } else if (distance < 1000) {
+ return `${Math.round(distance)}米`
+ } else {
+ return `${(distance / 1000).toFixed(1)}公里`
+ }
+ }
+
+ /**
+ * 打开导航
+ * @param latitude 目标纬度
+ * @param longitude 目标经度
+ * @param name 目标名称
+ * @param address 目标地址
+ */
+ const openLocation = (latitude, longitude, name = "", address = "") => {
+ return new Promise((resolve, reject) => {
+ uni.openLocation({
+ latitude,
+ longitude,
+ name,
+ address,
+ success: () => resolve(),
+ fail: err => reject(err)
+ })
+ })
+ }
+
+ /**
+ * 选择位置
+ */
+ const chooseLocation = () => {
+ return new Promise((resolve, reject) => {
+ uni.chooseLocation({
+ success: res => {
+ // 更新当前位置
+ if (res.latitude && res.longitude) {
+ const locationData = {
+ latitude: res.latitude,
+ longitude: res.longitude,
+ accuracy: 0,
+ verticalAccuracy: 0,
+ horizontalAccuracy: 0,
+ altitude: 0,
+ speed: 0,
+ timestamp: Date.now(),
+ address: {
+ province: "",
+ city: "",
+ district: "",
+ street: "",
+ poiName: res.name
+ },
+ formatted: res.address
+ }
+
+ location.value = locationData
+ }
+
+ resolve(res)
+ },
+ fail: err => reject(err)
+ })
+ })
+ }
+
+ // 自动清理
+ onUnmounted(() => {
+ stopWatchLocation()
+ })
+
+ return {
+ // 状态
+ location,
+ isLocating,
+ isWatching,
+ error,
+ historyLocations,
+
+ // 方法
+ getLocation,
+ getAddress,
+ watchLocation,
+ stopWatchLocation,
+ calculateDistance,
+ getDistanceFromCurrent,
+ formatDistance,
+ openLocation,
+ chooseLocation
+ }
+}
diff --git a/uniapps/drone-app/src/hooks/use-modal/index.js b/uniapps/drone-app/src/hooks/use-modal/index.js
new file mode 100644
index 0000000..5cf5ac9
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-modal/index.js
@@ -0,0 +1,24 @@
+/**
+ * Dialog 提示框
+ * @example
+ * const {showModal} = useModal()
+ * showModal('提示内容')
+ */
+export default function useModal () {
+ const showModal = (content, options) => {
+ return new Promise((resolve, reject) => {
+ uni.showModal({
+ title: "温馨提示",
+ content,
+ showCancel: false,
+ confirmColor: "#1677FF",
+ success: res => resolve(res),
+ fail: () => reject(new Error("Alert 调用失败 !")),
+ ...options
+ })
+ })
+ }
+ return {
+ showModal
+ }
+}
diff --git a/uniapps/drone-app/src/hooks/use-permission/index.js b/uniapps/drone-app/src/hooks/use-permission/index.js
new file mode 100644
index 0000000..dc2621d
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-permission/index.js
@@ -0,0 +1,10 @@
+import { hasPerm } from "@/plugins/permission"
+import { currentRoute } from "@/router"
+
+// 对某些特殊场景需要在页面onShow生命周期中校验权限:
+// 1.微信小程序端点击tabbar的底层逻辑不触发uni.switchTab
+// 2.h5在浏览器地址栏输入url后跳转不触发uni的路由api
+// 3.首次启动加载的页面不触发uni的路由api
+export default async function usePermission () {
+ return hasPerm(currentRoute())
+}
diff --git a/uniapps/drone-app/src/hooks/use-share/index.js b/uniapps/drone-app/src/hooks/use-share/index.js
new file mode 100644
index 0000000..d982598
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-share/index.js
@@ -0,0 +1,46 @@
+/**
+ * 小程序分享
+ * @param {object} options
+ * @example
+ * // 必须要调用onShareAppMessage,onShareTimeline才能正常分享
+ * // 因为小程序平台,必须在注册页面时,主动配置onShareAppMessage, onShareTimeline才可以
+ * // 组合式API是运行时才能注册,框架不可能默认给每个页面都开启这两个分享,所以必须在页面代码里包含这两个API的字符串,才会主动去注册。
+ * // 相关说明链接:https://ask.dcloud.net.cn/question/150353
+ * const {onShareAppMessage, onShareTimeline} = useShare({title: '分享标题', path: 'pages/index/index', query: 'id=1', imageUrl: 'https://xxx.png'})
+ * onShareAppMessage()
+ * onShareTimeline()
+ */
+export default function useShare (options) {
+ // #ifdef MP-WEIXIN
+ const title = options?.title ?? ""
+ const path = options?.path ?? ""
+ const query = options?.query ?? ""
+ const imageUrl = options?.imageUrl ?? ""
+
+ const shareApp = (params = {}) => {
+ onShareAppMessage(() => {
+ return {
+ title,
+ path: path ? `${path}${query ? `?${query}` : ""}` : "",
+ imageUrl,
+ ...params
+ }
+ })
+ }
+
+ const shareTime = (params = {}) => {
+ onShareTimeline(() => {
+ return {
+ title,
+ query: options?.query ?? "",
+ imageUrl,
+ ...params
+ }
+ })
+ }
+ return {
+ onShareAppMessage: shareApp,
+ onShareTimeline: shareTime
+ }
+ // #endif
+}
diff --git a/uniapps/drone-app/src/hooks/use-theme/index.js b/uniapps/drone-app/src/hooks/use-theme/index.js
new file mode 100644
index 0000000..024a76b
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/use-theme/index.js
@@ -0,0 +1,47 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:48:36
+ * @FilePath : \src\hooks\use-theme\index.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+import { computed } from "vue"
+import { useAppStore } from "@/store"
+
+/**
+ * 主题Hook
+ */
+export default function useTheme () {
+ const appStore = useAppStore()
+
+ // 当前主题模式
+ const theme = computed(() => appStore.getTheme)
+
+ // 是否为深色主题
+ const isDark = computed(() => appStore.getTheme === "dark")
+
+ /**
+ * 设置主题
+ */
+ const setTheme = mode => {
+ appStore.setTheme(mode)
+ }
+
+ /**
+ * 切换主题
+ */
+ const toggleTheme = () => {
+ const newTheme = theme.value === "light" ? "dark" : "light"
+ appStore.setTheme(newTheme)
+ }
+
+ return {
+ theme,
+ isDark,
+ setTheme,
+ toggleTheme
+ }
+}
diff --git a/uniapps/drone-app/src/hooks/useGlobalWS.js b/uniapps/drone-app/src/hooks/useGlobalWS.js
new file mode 100644
index 0000000..eee6a81
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/useGlobalWS.js
@@ -0,0 +1,104 @@
+import {useUserStore} from "@/store/index.js";
+import {getEnvObj} from "@/utils/index.js";
+import {enterRoom} from "@/utils/voiceCallByTX/index.js";
+import useAppStore from "../store/modules/app/index.js";
+
+let socketTask = null
+
+export function useGlobalWS() {
+ const userStore = useUserStore();
+ const appStore = useAppStore();
+
+ const userId = computed(() => userStore?.userInfo?.user_id)
+ const access_token = computed(() => userStore?.userInfo?.access_token)
+ const {VITE_APP_WS_API_URL} = getEnvObj()
+
+ // 消息处理
+ function messageHandler(payload) {
+ switch (payload.biz_code) {
+ case 'JOB_ISREFRESH':
+ appStore.setJobUpdateKeyAdd()
+ break
+ case 'DEVICE_ISREFRESH':
+ appStore.setDeviceUpdateKeyAdd()
+ break
+ case 'DOWNLOAD_PROGRESS':
+ break
+ case 'LOGOUT_USER':
+ userStore.setUserInfo(null)
+ uni.reLaunch({
+ url: '/pages/login/index'
+ })
+ break
+ case 'VoiceCall':
+ enterRoom(payload, userId.value)
+ break
+ default:
+ break;
+ }
+ }
+
+ // 关闭ws
+ function closeWS() {
+ socketTask?.close({
+ success: () => {
+ console.log('ws关闭连接');
+ },
+ })
+ }
+
+ // 初始化ws
+ function initWS() {
+ // 关闭,再连接ws
+ closeWS()
+ if (!access_token.value) return
+ const url = VITE_APP_WS_API_URL
+ + `?x-auth-token=${encodeURI(access_token?.value)}`
+ + `&model_type=3&workspace-id=${userId.value}`
+ // 创建连接
+ socketTask = uni.connectSocket({
+ url: url,
+ success: () => {
+ console.log('ws连接成功');
+ },
+ fail: (err) => {
+ console.error('ws连接失败:', err);
+ }
+ });
+ // 消息监听
+ socketTask.onMessage((result) => {
+ messageHandler(JSON.parse(result.data))
+ })
+ //==================================
+ // 监听连接打开
+ socketTask.onOpen((res) => {
+ console.log('✅ WebSocket连接已建立')
+ // reconnectAttempts = 0 // 连接成功后重置重连次数
+ // 可以在这里发送心跳或订阅消息
+ // startHeartbeat()
+ })
+ // 监听连接关闭
+ socketTask.onClose((res) => {
+ console.log(`WebSocket连接关闭,代码: ${res.code}, 原因: ${res.reason}`)
+
+ // 根据不同的关闭代码处理
+ if (res.code === 1000) { // 正常关闭
+ console.log('连接正常关闭')
+ } else if (res.code === 1006) { // 异常关闭
+ console.log('连接异常关闭,尝试重连...')
+ } else if (res.code === 1011) { // 服务器内部错误
+ console.log('服务器内部错误(1011),延迟重连...')
+ } else {
+ console.log('其他原因关闭,尝试重连...')
+ }
+ })
+
+ // 监听错误
+ socketTask.onError((err) => {
+ console.error('WebSocket发生错误:', err)
+ })
+ }
+
+
+ watch(access_token, initWS, {immediate: true})
+}
diff --git a/uniapps/drone-app/src/hooks/useTabAddButton.js b/uniapps/drone-app/src/hooks/useTabAddButton.js
new file mode 100644
index 0000000..95706e7
--- /dev/null
+++ b/uniapps/drone-app/src/hooks/useTabAddButton.js
@@ -0,0 +1,11 @@
+import {onShow} from "@dcloudio/uni-app";
+
+export default function useTabAddButton (visible) {
+ onShow(()=>{
+ // const tabList = uni.getTabBar().list;
+ // uni.setTabBarItem({
+ // index: 2, // Tab 的索引(从0开始)
+ // visible,
+ // });
+ })
+}
diff --git a/uniapps/drone-app/src/locales/index.js b/uniapps/drone-app/src/locales/index.js
new file mode 100644
index 0000000..2ea0f89
--- /dev/null
+++ b/uniapps/drone-app/src/locales/index.js
@@ -0,0 +1,20 @@
+import { createI18n } from "vue-i18n"
+import en from "./langs/en"
+import zhHans from "./langs/zh-Hans"
+
+const i18n = createI18n({
+ legacy: false, // 必须设置false才能使用Composition API
+ globalInjection: true, // 为每个组件注入$为前缀的全局属性和函数
+ locale: uni.getLocale(),
+ messages: {
+ en,
+ "zh-Hans": zhHans
+ }
+})
+
+function setupI18n (app) {
+ app.use(i18n)
+}
+
+export { i18n }
+export default setupI18n
diff --git a/uniapps/drone-app/src/locales/langs/en.js b/uniapps/drone-app/src/locales/langs/en.js
new file mode 100644
index 0000000..56cde40
--- /dev/null
+++ b/uniapps/drone-app/src/locales/langs/en.js
@@ -0,0 +1,11 @@
+export default {
+ locale: {
+ auto: "System",
+ en: "English",
+ "zh-hans": "Chinese"
+ },
+ home: {
+ intro: "Welcome to uni-app demo",
+ "toggle-langs": "Change languages"
+ }
+}
diff --git a/uniapps/drone-app/src/locales/langs/zh-Hans.js b/uniapps/drone-app/src/locales/langs/zh-Hans.js
new file mode 100644
index 0000000..2af4d34
--- /dev/null
+++ b/uniapps/drone-app/src/locales/langs/zh-Hans.js
@@ -0,0 +1,11 @@
+export default {
+ locale: {
+ auto: "系统",
+ en: "英语",
+ "zh-hans": "中文"
+ },
+ home: {
+ intro: "欢迎来到uni-app演示",
+ "toggle-langs": "切换语言"
+ }
+}
diff --git a/uniapps/drone-app/src/main.js b/uniapps/drone-app/src/main.js
new file mode 100644
index 0000000..f067f95
--- /dev/null
+++ b/uniapps/drone-app/src/main.js
@@ -0,0 +1,27 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:39:15
+ * @FilePath : \src\main.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+import { createSSRApp } from "vue"
+import App from "@/App.vue"
+import setupPlugins from "@/plugins"
+// 引入UnoCSS
+import "virtual:uno.css"
+import 'leaflet/dist/leaflet.css'
+import './static/fonts/font.css'
+import {getEnvObj} from "@/utils/index.js";
+console.log('当前环境变量',getEnvObj())
+export function createApp () {
+ const app = createSSRApp(App)
+ app.use(setupPlugins)
+
+ return {
+ app
+ }
+}
diff --git a/uniapps/drone-app/src/manifest.json b/uniapps/drone-app/src/manifest.json
new file mode 100644
index 0000000..344ac1d
--- /dev/null
+++ b/uniapps/drone-app/src/manifest.json
@@ -0,0 +1,117 @@
+{
+ "name" : "掌控智飞",
+ "appid" : "__UNI__0981D7F",
+ "description" : "",
+ "versionName" : "1.0.0",
+ "versionCode" : "100",
+ "transformPx" : false,
+ /* 5+App特有相关 */
+ "app-plus" : {
+ "orientation" : [
+ //竖屏正方向
+ "portrait-primary",
+ //竖屏反方向
+ "portrait-secondary",
+ //横屏正方向
+ "landscape-primary",
+ //横屏反方向
+ "landscape-secondary",
+ //自然方向
+ "default"
+ ],
+ "usingComponents" : true,
+ "nvueStyleCompiler" : "uni-app",
+ "compilerVersion" : 3,
+ "splashscreen" : {
+ "alwaysShowBeforeRender" : true,
+ "waiting" : true,
+ "autoclose" : true,
+ "delay" : 0
+ },
+ /* 模块配置 */
+ "modules" : {},
+ /* 应用发布信息 */
+ "distribute" : {
+ /* android打包配置 */
+ "android" : {
+ "permissions" : [
+ "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+ "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+ "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+ "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+ "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+ "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+ "<uses-feature android:name=\"android.hardware.camera\"/>",
+ "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>",
+ "<uses-permission android:name=\"android.permission.RECORD_AUDIO\" />"
+ ]
+ },
+ /* ios打包配置 */
+ "ios" : {
+ "dSYMs" : false
+ },
+ /* SDK配置 */
+ "sdkConfigs" : {},
+ "icons" : {
+ "android" : {
+ "hdpi" : "src/static/images/app-logo.png",
+ "xhdpi" : "src/static/images/app-logo.png",
+ "xxhdpi" : "src/static/images/app-logo.png",
+ "xxxhdpi" : "src/static/images/app-logo.png"
+ }
+ }
+ },
+ "nativePlugins" : {
+ "TRTCCloudUniPlugin-TRTCCloudImpl" : {
+ "__plugin_info__" : {
+ "name" : "【官方】腾讯云实时音视频SDK",
+ "description" : "uni-app TRTC SDK 是腾讯云实时音视频通讯解决方案在 uni-app 上的 SDK,提供实时音视频服务",
+ "platforms" : "Android,iOS",
+ "url" : "https://ext.dcloud.net.cn/plugin?id=7774",
+ "android_package_name" : "uni.app.UNI0981D7F",
+ "ios_bundle_id" : "",
+ "isCloud" : true,
+ "bought" : 1,
+ "pid" : "7774",
+ "parameters" : {}
+ }
+ }
+ }
+ },
+ /* 快应用特有相关 */
+ "quickapp" : {},
+ /* 小程序特有相关 */
+ "mp-weixin" : {
+ "appid" : "wx05742eafb412a57a",
+ "setting" : {
+ "urlCheck" : false
+ },
+ "usingComponents" : true
+ },
+ "mp-alipay" : {
+ "usingComponents" : true
+ },
+ "mp-baidu" : {
+ "usingComponents" : true
+ },
+ "mp-toutiao" : {
+ "usingComponents" : true
+ },
+ "uniStatistics" : {
+ "enable" : false
+ },
+ "vueVersion" : "3",
+ "h5" : {
+ "router" : {
+ "mode" : "hash",
+ "base" : "/drone-app/"
+ }
+ }
+}
diff --git a/uniapps/drone-app/src/pages.json b/uniapps/drone-app/src/pages.json
new file mode 100644
index 0000000..9cd978c
--- /dev/null
+++ b/uniapps/drone-app/src/pages.json
@@ -0,0 +1,185 @@
+{
+ "easycom": {
+ "custom": {
+ "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue",
+ "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue",
+ "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue",
+ "^(?!z-paging-refresh|z-paging-load-more)z-paging(.*)": "z-paging/components/z-paging$1/z-paging$1.vue"
+ }
+ },
+ "pages": [
+ {
+ "path": "pages/map/index",
+ "style": {
+ "navigationBarTitleText": "地图",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "pages/inspectionTask/index",
+ "style": {
+ "navigationBarTitleText": "巡检任务",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "pages/work/index",
+ "style": {
+ "navigationBarTitleText": "事件工单",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "pages/user/index",
+ "style": {
+ "navigationBarTitleText": "我的",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "pages/login/index",
+ "style": {
+ "navigationBarTitleText": "登录页",
+ "navigationStyle": "custom"
+ }
+ }
+ ],
+ "subPackages": [
+ {
+ "root": "subPackages",
+ "pages": [
+ {
+ "path": "404/index",
+ "style": {
+ "navigationBarTitleText": "404",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "droneConsole/index",
+ "style": {
+ "navigationBarTitleText": "直播监控",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "taskDetail/addTask/index",
+ "style": {
+ "navigationBarTitleText": "新建任务",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "taskDetail/execution/index",
+ "style": {
+ "navigationBarTitleText": "任务详情"
+ }
+ },
+ {
+ "path": "taskDetail/inProgress/index",
+ "style": {
+ "navigationBarTitleText": "任务详情"
+ }
+ },
+ {
+ "path": "workDetail/index",
+ "style": {
+ "navigationBarTitleText": "工单详情"
+ }
+ },
+ {
+ "path": "workDetail/addWork/index",
+ "style": {
+ "navigationBarTitleText": "新建工单"
+ }
+ },
+ {
+ "path": "workDetail/mapWork/index",
+ "style": {
+ "navigationBarTitleText": "地图展示",
+ "navigationStyle": "custom"
+ }
+ },
+ {
+ "path": "workDetail/photoMagnify/index",
+ "style": {
+ "navigationBarTitleText": "照片放大"
+ }
+ },
+ {
+ "path": "userDetail/infos/index",
+ "style": {
+ "navigationBarTitleText": "个人资料"
+ }
+ },
+ {
+ "path": "userDetail/password/index",
+ "style": {
+ "navigationBarTitleText": "修改密码"
+ }
+ },
+ {
+ "path": "browser/index",
+ "style": {
+ "navigationBarTitleText": "地图"
+ }
+ },
+ {
+ "path": "qrCode/index",
+ "style": {
+ "navigationBarTitleText": "扫码",
+ "navigationBarTextStyle": "black"
+ }
+ }
+ ]
+ }
+ ],
+ "tabBar": {
+ "color": "#8c8c8c",
+ "selectedColor": "#1D6FE9",
+ "borderStyle": "black",
+ "backgroundColor": "#ffffff",
+ "list": [
+ {
+ "iconPath": "static/images/tabbar/icon_home1.png",
+ "selectedIconPath": "static/images/tabbar/icon_home_selected.png",
+ "pagePath": "pages/map/index",
+ "text": "地图"
+ },
+ {
+ "iconPath": "static/images/tabbar/icon_list.png",
+ "selectedIconPath": "static/images/tabbar/icon_list_selected.png",
+ "pagePath": "pages/inspectionTask/index",
+ "text": "任务"
+ },
+ // #ifndef MP-WEIXIN
+ {
+ "iconPath": "static/images/tabbar/add.png",
+ "pagePath": "subPackages/taskDetail/addTask/index"
+ },
+ {
+ "iconPath": "static/images/tabbar/drone.png",
+ "visible": "true"
+ },
+ // #endif
+ {
+ "iconPath": "static/images/tabbar/icon_order.png",
+ "selectedIconPath": "static/images/tabbar/icon_order_selected.png",
+ "pagePath": "pages/work/index",
+ "text": "工单"
+ },
+ {
+ "iconPath": "static/images/tabbar/icon_me.png",
+ "selectedIconPath": "static/images/tabbar/icon_me_selected.png",
+ "pagePath": "pages/user/index",
+ "text": "我的"
+ }
+ ]
+ },
+ "globalStyle": {
+ "navigationBarTextStyle": "black",
+ "navigationBarTitleText": "uni-app",
+ "navigationBarBackgroundColor": "#F8F8F8",
+ "backgroundColor": "#F8F8F8"
+ }
+}
\ No newline at end of file
diff --git a/uniapps/drone-app/src/pages/dispatcher/index.vue b/uniapps/drone-app/src/pages/dispatcher/index.vue
new file mode 100644
index 0000000..4040a88
--- /dev/null
+++ b/uniapps/drone-app/src/pages/dispatcher/index.vue
@@ -0,0 +1,85 @@
+<template>
+ <view></view>
+</template>
+
+<script setup>
+import { onShow, onHide } from "@dcloudio/uni-app";
+import { ref } from "vue";
+
+// 标记是否已经跳转过,防止从子页面返回时再次触发跳转
+const isNavigating = ref(false);
+
+onShow(() => {
+ const lastTab = uni.getStorageSync("lastTab");
+
+ // 如果是跳转后返回的状态(isNavigating为true),则说明用户取消了操作或完成了操作返回
+ // 此时应该回到之前的Tab页
+ if (isNavigating.value) {
+ isNavigating.value = false; // 重置标志位
+ if (lastTab === "task") {
+ uni.switchTab({ url: "/pages/inspectionTask/index" });
+ } else if (lastTab === "work") {
+ uni.switchTab({ url: "/pages/work/index" });
+ } else if (lastTab === "user") {
+ uni.switchTab({ url: "/pages/user/index" });
+ } else {
+ uni.switchTab({ url: "/pages/map/index" });
+ }
+ return;
+ }
+
+ // 根据上一个页面决定跳转逻辑
+ if (lastTab === "task") {
+ // 任务页面 -> 跳转新建任务
+ isNavigating.value = true;
+ uni.navigateTo({
+ url: "/subPackages/taskDetail/addTask/index",
+ fail: (err) => {
+ console.error("Navigate to addTask failed:", err);
+ isNavigating.value = false;
+ // 如果跳转失败,返回上一页
+ uni.switchTab({ url: "/pages/inspectionTask/index" });
+ },
+ });
+ } else if (lastTab === "work") {
+ // 工单页面 -> 跳转新建工单
+ isNavigating.value = true;
+ uni.navigateTo({
+ url: "/subPackages/workDetail/addWork/index",
+ fail: (err) => {
+ console.error("Navigate to addWork failed:", err);
+ isNavigating.value = false;
+ uni.switchTab({ url: "/pages/work/index" });
+ },
+ });
+ } else {
+ // 地图或我的页面 -> 仅占位,不跳转,提示并返回
+ uni.showToast({
+ title: "此功能暂未开放",
+ icon: "none",
+ duration: 2000,
+ });
+
+ // 返回上一个Tab
+ if (lastTab === "user") {
+ uni.switchTab({ url: "/pages/user/index" });
+ } else {
+ // 默认为地图
+ uni.switchTab({ url: "/pages/map/index" });
+ }
+ }
+});
+
+onHide(() => {
+ // 页面隐藏时,如果是切换到了其他Tab(不是navigateTo),可能需要重置?
+ // 不,如果是navigateTo,页面隐藏是正常的,flag保持true。
+ // 如果是switchTab出去,flag应该是false(因为已经处理过了)。
+ // 唯一风险是:如果navigateTo之前就switchTab了?(不可能,逻辑是同步的)
+});
+</script>
+
+<style>
+page {
+ background-color: transparent;
+}
+</style>
diff --git a/uniapps/drone-app/src/pages/inspectionTask/AppPowerful.vue b/uniapps/drone-app/src/pages/inspectionTask/AppPowerful.vue
new file mode 100644
index 0000000..af1edb0
--- /dev/null
+++ b/uniapps/drone-app/src/pages/inspectionTask/AppPowerful.vue
@@ -0,0 +1,34 @@
+<template>
+ <web-view ref="sWebViewRef" :src="src"
+ @message="viewMessage"/>
+</template>
+
+<script setup>
+import {onLoad} from "@dcloudio/uni-app";
+
+const src = defineModel('src')
+const emit = defineEmits(['webMessage'])
+
+function viewMessage(event) {
+ messageFun({data: {data: {arg: event.detail.data[0]}}})
+}
+
+function messageFun(e) {
+ emit('webMessage', e.data.data.arg)
+}
+
+onShow(() => {
+ console.log('show')
+ window.addEventListener('message', messageFun)
+})
+onHide(() => {
+ console.log('hide')
+ window.removeEventListener('message', messageFun)
+})
+
+
+</script>
+
+<style scoped lang="scss">
+
+</style>
diff --git a/uniapps/drone-app/src/pages/inspectionTask/index.vue b/uniapps/drone-app/src/pages/inspectionTask/index.vue
new file mode 100644
index 0000000..4aeeb55
--- /dev/null
+++ b/uniapps/drone-app/src/pages/inspectionTask/index.vue
@@ -0,0 +1,100 @@
+<!-- 巡检任务 -->
+<template>
+ <view>
+ <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
+ </view>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import { onHide, onShow } from "@dcloudio/uni-app";
+import { errorFactory } from "sass-loader/dist/utils.js";
+import { useAppStore } from "@/store/index.js";
+
+const appStore = useAppStore();
+
+// const viewUrl = getWebViewUrl('/inspectionTask')
+
+const updateKey = ref(0);
+const sxListKey = ref(0);
+const viewUrl = computed(() => {
+ // #ifdef MP-WEIXIN
+ return getWebViewUrl("/inspectionTask", {
+ updateKey: updateKey.value,
+ sxListKey: sxListKey.value,
+ showAddBtn: 1,
+ });
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ return getWebViewUrl("/inspectionTask", {
+ updateKey: updateKey.value,
+ sxListKey: sxListKey.value,
+ showAddBtn: 0,
+ });
+ // #endif
+});
+
+watch(
+ () => [appStore.jobUpdateKey, appStore.deviceUpdateKey],
+ () => {
+ sxListKey.value = sxListKey.value + 1;
+ }
+);
+
+function onPostMessage(data) {
+ if (data.type === "taskDetails") {
+ // #ifdef MP-WEIXIN
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ if ([1, 2].includes(data.rowItem.status)) {
+ uni.navigateTo({
+ url: `/subPackages/taskDetail/inProgress/index?wayLineJobInfoId=${data.rowItem.id}&batchNo=${data.rowItem.batch_no}`,
+ });
+ } else {
+ uni.navigateTo({
+ url: `/subPackages/taskDetail/execution/index?wayLineJobInfoId=${data.rowItem.id}&waylineJobId=${data.rowItem.wayline_job_id}&batch_no=${data.rowItem.batch_no}`,
+ });
+ }
+ // #endif
+ }
+
+ if (data.type === "addTask") {
+ // #ifdef MP-WEIXIN
+ // #endif
+ }
+}
+
+onShow(() => {
+ const joinParams = uni.getStorageSync("joinParams");
+ if (joinParams) {
+ // 使用后清除
+ console.log("是否打印", updateKey.value);
+ updateKey.value = updateKey.value + 1;
+ uni.removeStorageSync("joinParams");
+ }
+ // isApp.value = true
+ // 清除数据
+ const encodedData = encodeURIComponent(JSON.stringify({ device_sn: "" }));
+ uni.setStorageSync("webview_params", encodedData);
+
+ // #ifndef MP-WEIXIN
+ uni.setTabBarItem({
+ index: 2, // Tab 的索引(从0开始)
+ visible: true,
+ pagePath: "subPackages/taskDetail/addTask/index",
+ });
+ uni.setTabBarItem({
+ index: 3, // Tab
+ visible: false,
+ });
+ // #endif
+});
+
+onHide(() => {
+ // isApp.value = false
+});
+</script>
+<style scoped lang="scss"></style>
diff --git a/uniapps/drone-app/src/pages/login/index.vue b/uniapps/drone-app/src/pages/login/index.vue
new file mode 100644
index 0000000..5384de8
--- /dev/null
+++ b/uniapps/drone-app/src/pages/login/index.vue
@@ -0,0 +1,294 @@
+<!-- 登录页 -->
+<template>
+ <view class="login-form-wrap">
+ <image class="logo" :src="logoSvg" />
+ <div class="title">掌控智飞</div>
+ <div class="user-name">
+ <image :src="usernameSvg" />
+ <input v-model="loginForm.username" placeholder="请输入用户名" />
+ </div>
+ <div class="pass-word">
+ <image :src="passwordSvg" />
+ <input
+ v-model="loginForm.password"
+ type="password"
+ placeholder="请输入密码"
+ />
+ </div>
+ <div class="remember-password">
+ <label>
+ <checkbox-group @change="toggleRemember">
+ <checkbox
+ :checked="rememberPassword"
+ color="#1D6FE9"
+ style="transform: scale(0.7)"
+ />
+ </checkbox-group>
+ 记住密码
+ </label>
+ </div>
+
+ <button class="login-btn" :style="[inputStyle]" @tap="submit">登录</button>
+ <image class="lowerRightCorner" :src="droneSvg" />
+ </view>
+</template>
+
+<script setup>
+import { getAssetsImage } from "@/utils/index.js";
+import md5 from "js-md5";
+import { loginByUsername } from "@/api/user/index.js";
+import { useUserStore } from "@/store/index.js";
+
+import { HOME_PATH, LOGIN_PATH, removeQueryString } from "@/router";
+import { onMounted } from "vue";
+
+const droneSvg = getAssetsImage("/images/login/droneSvg.svg");
+const usernameSvg = getAssetsImage("/images/login/username.svg");
+const passwordSvg = getAssetsImage("/images/login/password.svg");
+const logoSvg = getAssetsImage("/images/login/logo.svg");
+
+const userStore = useUserStore();
+const loginForm = ref({
+ username: "",
+ password: "",
+});
+const rememberPassword = ref(false);
+const inputStyle = computed(() => {
+ const style = {};
+ if (loginForm.value.username && loginForm.value.password) {
+ style.color = "#fff";
+ style.backgroundColor = "#1D6FE9";
+ }
+ return style;
+});
+let redirect = HOME_PATH;
+function toggleRemember(e) {
+ rememberPassword.value = e.detail.value.length > 0;
+}
+
+async function submit() {
+ if (!loginForm.value.username.trim()) {
+ uni.showToast({
+ title: "请输入用户名",
+ icon: "none",
+ duration: 2000,
+ });
+ return;
+ }
+
+ if (!loginForm.value.password.trim()) {
+ uni.showToast({
+ title: "请输入密码",
+ icon: "none",
+ duration: 2000,
+ });
+ return;
+ }
+ let userInfo = {
+ tenantId: "000000",
+ deptId: "",
+ roleId: "",
+ username: loginForm.value.username,
+ password: loginForm.value.password,
+ type: "account",
+ code: "",
+ key: "",
+ };
+
+ if (rememberPassword.value) {
+ uni.setStorageSync("rememberedUser", {
+ username: loginForm.value.username,
+ password: loginForm.value.password,
+ });
+ } else {
+ uni.removeStorageSync("rememberedUser");
+ }
+
+ try {
+ const res = await loginByUsername(
+ userInfo.tenantId,
+ userInfo.deptId,
+ userInfo.roleId,
+ userInfo.username,
+ md5(userInfo.password),
+ userInfo.type,
+ userInfo.key,
+ userInfo.code
+ );
+ userStore.setUserInfo(res.data);
+ uni.reLaunch({
+ url: "/pages/map/index",
+ });
+ } catch (error) {
+ const errorMsg =
+ error.data?.error_description !== "Bad credentials"
+ ? error.data?.error_description
+ : "登录失败,请重试";
+ uni.showToast({
+ title: errorMsg,
+ icon: "none",
+ duration: 2000,
+ });
+ }
+}
+
+// 从本地存储加载记住的密码
+onMounted(() => {
+ const savedUserInfo = uni.getStorageSync("rememberedUser");
+ console.log("记住密码", savedUserInfo);
+ if (savedUserInfo) {
+ loginForm.value.username = savedUserInfo.username;
+ loginForm.value.password = savedUserInfo.password;
+ rememberPassword.value = true;
+ }
+});
+onLoad((options) => {
+ if (options.redirect && removeQueryString(options.redirect) !== LOGIN_PATH) {
+ redirect = decodeURIComponent(options.redirect);
+ }
+});
+</script>
+
+<style lang="scss" scoped>
+.login-form-wrap {
+ position: relative;
+ text-align: center;
+ height: 100%;
+ width: 100%;
+
+ .logo {
+ width: 127px;
+ height: 51px;
+ margin: 0 auto;
+ margin-top: 104px;
+ margin-bottom: 16px;
+ }
+
+ .lowerRightCorner {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ width: 425.61rpx;
+ height: 316.46rpx;
+ }
+
+ .title {
+ font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
+ font-weight: 400;
+ font-size: 84rpx;
+ line-height: 82rpx;
+ letter-spacing: 1px;
+ text-shadow: 0px 8px 8px rgba(0, 0, 0, 0.18);
+ text-align: center;
+ font-style: normal;
+ text-transform: none;
+ color: #1452d3;
+ text-align: center;
+ margin-bottom: 168rpx;
+ }
+
+ .user-name,
+ .pass-word {
+ display: flex;
+ //justify-content: center;
+ align-items: center;
+ margin-left: 62rpx;
+ margin-right: 58rpx;
+ height: 118rpx;
+ border-bottom: 2rpx solid #e3e3e3;
+
+ image {
+ width: 40rpx;
+ height: 40rpx;
+ margin-right: 12rpx;
+ }
+
+ :deep(uni-input) {
+ height: 40rpx;
+ line-height: 40rpx;
+ width: 80%;
+ margin-top: 20rpx;
+ padding: 0 !important;
+ }
+
+ :deep(input) {
+ height: 40rpx;
+ line-height: 40rpx;
+ width: 80%;
+ margin-top: 20rpx;
+ padding: 0 !important;
+ margin: 0 !important;
+ }
+
+ :deep(.uni-input-placeholder) {
+ font-size: 32rpx;
+ color: #e3e3e3;
+ font-weight: 500;
+ }
+ }
+
+ .remember-password {
+ display: flex;
+ justify-content: flex-end;
+ align-items: center;
+ margin-left: 62rpx;
+ margin-right: 58rpx;
+ margin-top: 20rpx;
+
+ color: #666;
+ font-size: 28rpx;
+
+ label {
+ display: flex;
+ align-items: center;
+ }
+ }
+
+ input {
+ @apply pb-6rpx mb-10rpx text-left;
+ }
+
+ .tips {
+ @apply mt-8rpx mb-60rpx;
+ color: $u-info;
+ }
+
+ .login-btn {
+ z-index: 1;
+ @apply flex items-center justify-center py-12rpx px-0 text-30rpx border-none;
+ background: #1d6fe9;
+ color: white;
+ width: 590rpx;
+ height: 76rpx;
+ border-radius: 40rpx 40rpx 40rpx 40rpx;
+ margin-top: 100rpx;
+
+ &::after {
+ @apply border-none;
+ }
+ }
+
+ .alternative {
+ @apply flex justify-between mt-30rpx;
+ color: $u-tips-color;
+ }
+}
+
+.login-type-wrap {
+ @apply flex justify-between pt-350rpx px-150rpx pb-150rpx;
+
+ .item {
+ @apply flex items-center flex-col text-28rpx;
+ color: $u-content-color;
+ }
+}
+
+.hint {
+ @apply px-40rpx py-20rpx text-24rpx;
+ color: $u-tips-color;
+
+ .link {
+ color: $u-warning;
+ }
+}
+</style>
diff --git a/uniapps/drone-app/src/pages/map/drag.vue b/uniapps/drone-app/src/pages/map/drag.vue
new file mode 100644
index 0000000..f3c52c7
--- /dev/null
+++ b/uniapps/drone-app/src/pages/map/drag.vue
@@ -0,0 +1,200 @@
+<template>
+ <view class="panel-container" :style="{
+ transform: `translateY(${translateY}px)`,
+ transition: isDragging ? 'none' : 'transform 0.3s ease',
+ }" @touchstart="onTouchStart" @touchmove="onTouchMove" @touchend="onTouchEnd">
+ <!-- 顶部拖拽提示条 -->
+ <view class="drag-bar"></view>
+
+ <!-- 搜索框(带毛玻璃) -->
+ <view class="search-box" :style="searchBoxStyle">
+ <slot name="searchBox"></slot>
+ </view>
+
+ <!-- 内容区 -->
+ <scroll-view scroll-y class="panel-content">
+ <view class="dummy-content">
+ <text>这里可以放搜索结果、推荐地点等内容</text>
+ </view>
+ </scroll-view>
+ </view>
+</template>
+
+<script setup>
+ import {
+ ref,
+ computed,
+ onMounted,
+ watch
+ } from 'vue'
+
+ const props = defineProps({
+ isSelectInput: {
+ type: Boolean,
+ default: false
+ },
+ searchVal: {
+ type: String,
+ default: ''
+ },
+ })
+
+ // 获取屏幕高度
+ let screenHeight = 0
+
+ // 拖拽状态
+ const startY = ref(0)
+ const currentY = ref(0)
+ const translateY = ref(0)
+ const isDragging = ref(false)
+
+ const initialPosition = ref(0.8)
+ const oneSlidePosition = ref(0.6)
+ const twoSlidePosition = ref(0.1)
+
+ // 毛玻璃效果
+ const searchBoxStyle = computed(() => {
+ return translateY.value <= screenHeight * oneSlidePosition.value ?
+ {
+ backdropFilter: 'blur(10px)',
+ background: 'rgba(255, 255, 255, 0.7)',
+ } :
+ {
+ background: '#fff',
+ }
+ })
+
+ watch([
+ () => props.isSelectInput,
+ () => props.searchVal,
+ ], ([newIsSelectInput, newSearchVal]) => {
+ if (newIsSelectInput) {
+ translateY.value = screenHeight * twoSlidePosition.value
+ }
+
+ if (!newIsSelectInput && !newSearchVal) {
+ translateY.value = screenHeight * initialPosition.value
+ }
+ })
+
+ // 获取屏幕高度
+ onMounted(() => {
+ const info = uni.getSystemInfoSync()
+ screenHeight = info.windowHeight
+
+ // #ifdef APP-PLUS
+ initialPosition.value = 0.8
+ // #endif
+
+ // #ifdef H5
+ initialPosition.value = 0.95
+
+ if (screenHeight < 500) {
+ initialPosition.value = 0.86
+ }
+
+ if (screenHeight > 575) {
+ initialPosition.value = 0.85
+ }
+
+ if (screenHeight > 642) {
+ initialPosition.value = 0.865
+ }
+ // #endif
+
+ translateY.value = screenHeight * initialPosition.value
+ })
+
+ // 拖拽开始
+ const onTouchStart = (e) => {
+ // 只在拖拽时,阻止页面滚动
+ startY.value = e.touches[0].clientY
+ currentY.value = translateY.value
+ isDragging.value = true
+ }
+
+ // 拖拽移动
+ const onTouchMove = (e) => {
+ // 只在拖拽时,阻止页面滚动
+ if (isDragging.value) {
+ e.preventDefault() // 阻止滚动行为
+ e.stopPropagation() // 阻止事件冒泡
+ }
+
+ const delta = e.touches[0].clientY - startY.value
+ let nextY = currentY.value + delta
+
+ // 限制拖拽范围 [0, 90% 屏幕高度]
+ nextY = Math.min(screenHeight * (1 - twoSlidePosition.value), Math.max(0, nextY))
+
+ translateY.value = nextY
+ }
+
+ // 拖拽结束后自动吸附
+ const onTouchEnd = () => {
+ isDragging.value = false
+ const percentFromTop = 100 - (translateY.value / screenHeight) * 100
+
+ if (percentFromTop < 20) translateY.value = screenHeight * initialPosition.value
+ else if (percentFromTop < 40) translateY.value = screenHeight * oneSlidePosition.value
+ else if (percentFromTop < 75) translateY.value = screenHeight * oneSlidePosition.value
+ else if (percentFromTop < 90) translateY.value = screenHeight * twoSlidePosition.value
+ else translateY.value = screenHeight * twoSlidePosition.value
+ }
+</script>
+
+<style scoped>
+ .panel-container {
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 90vh;
+ background: #fff;
+ border-top-left-radius: 20rpx;
+ border-top-right-radius: 20rpx;
+ box-shadow: 0 -4rpx 12rpx rgba(0, 0, 0, 0.15);
+ display: flex;
+ flex-direction: column;
+ z-index: 997;
+ touch-action: none;
+ /* 禁止默认的滚动行为 */
+ }
+
+ .drag-bar {
+ width: 80rpx;
+ height: 8rpx;
+ background: #ccc;
+ border-radius: 4rpx;
+ margin: 16rpx auto;
+ }
+
+ .search-box {
+ padding: 0 24rpx;
+ margin-bottom: 12rpx;
+ border-radius: 40rpx;
+ transition: backdrop-filter 0.3s ease, background 0.3s ease;
+ }
+
+ .search-input {
+ width: 100%;
+ height: 80rpx;
+ border-radius: 40rpx;
+ background: #f2f2f2;
+ padding: 0 24rpx;
+ font-size: 28rpx;
+ border: none;
+ outline: none;
+ }
+
+ .panel-content {
+ flex: 1;
+ padding: 20rpx;
+ }
+
+ .dummy-content {
+ text-align: center;
+ color: #999;
+ margin-top: 100rpx;
+ }
+</style>
diff --git a/uniapps/drone-app/src/pages/map/index.vue b/uniapps/drone-app/src/pages/map/index.vue
new file mode 100644
index 0000000..b92167f
--- /dev/null
+++ b/uniapps/drone-app/src/pages/map/index.vue
@@ -0,0 +1,99 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-12-03 14:20:57
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-20 16:49:02
+ * @FilePath : \src\pages\map\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-12-03 14:20:57
+-->
+<template>
+ <view class="page-wrap">
+ <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
+ </view>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import { onHide, onShow } from "@dcloudio/uni-app";
+// const viewUrl = getWebViewUrl("/defaultMap");
+
+let envParam = "";
+// #ifdef WEB
+envParam = "true";
+// #endif
+// #ifdef APP-PLUS
+envParam = "false";
+// #endif
+
+const updateKey = ref(0);
+const viewUrl = computed(() => {
+ return getWebViewUrl("/defaultMap", {
+ isWeb: envParam,
+ updateKey: updateKey.value,
+ });
+});
+
+const onPostMessage = (data) => {
+ // #ifdef MP-WEIXIN
+ if (data.type === "scanCode") {
+ } else if (data.type === "jumpAddWork") {
+ } else if (data.type === "jumpMapNav") {
+ //事件导航
+ } else if (data.type === "workid") {
+ //事件详情
+ }
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ if (data.type === "scanCode") {
+ uni.navigateTo({
+ url: "/subPackages/qrCode/index",
+ });
+ } else if (data.type === "jumpAddWork") {
+ //新建任务
+ const encodedData = encodeURIComponent(JSON.stringify(data.rowItem));
+ uni.setStorageSync("webview_params", encodedData);
+ uni.navigateTo({
+ url: `/subPackages/taskDetail/addTask/index`,
+ });
+ } else if (data.type === "jumpMapNav") {
+ //事件导航
+ uni.navigateTo({
+ url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`,
+ });
+ } else if (data.type === "workid") {
+ //事件详情
+ uni.navigateTo({
+ url: `/subPackages/workDetail/index?eventNum=${data.eventNum}`,
+ });
+ }
+ // #endif
+};
+
+onShow(() => {
+ // #ifndef MP-WEIXIN
+ uni.setTabBarItem({
+ index: 2, // Tab 的索引(从0开始)
+ visible: false,
+ pagePath: "subPackages/taskDetail/addTask/index",
+ });
+ uni.setTabBarItem({
+ index: 3, // Tab
+ visible: true,
+ });
+ // #endif
+});
+
+onHide(() => {
+ updateKey.value = updateKey.value + 1;
+});
+</script>
+
+<style scoped lang="scss">
+.page-wrap {
+ font-size: 20px;
+}
+</style>
diff --git a/uniapps/drone-app/src/pages/placeholder/placeholder.vue b/uniapps/drone-app/src/pages/placeholder/placeholder.vue
new file mode 100644
index 0000000..8a7c737
--- /dev/null
+++ b/uniapps/drone-app/src/pages/placeholder/placeholder.vue
@@ -0,0 +1,11 @@
+<!-- 登录页 -->
+<template>
+ <view>占位页</view>
+</template>
+
+<script setup>
+
+</script>
+
+<style lang="scss" scoped>
+</style>
diff --git a/uniapps/drone-app/src/pages/user/index.vue b/uniapps/drone-app/src/pages/user/index.vue
new file mode 100644
index 0000000..7e94e96
--- /dev/null
+++ b/uniapps/drone-app/src/pages/user/index.vue
@@ -0,0 +1,228 @@
+<!-- 我的 -->
+<template>
+ <view class="page-wrap">
+ <view class="userBox">
+ <view class="flex items-center pb-30rpx pl-30rpx pr-20rpx">
+ <view class="mr-20rpx">
+ <u-avatar :src="user.avatar" size="70" />
+ </view>
+ <view class="flex-1">
+ <view class="userName">{{ userStore?.userInfo?.nick_name }}</view>
+ <view class="departs">
+ <image
+ src="https://wrj.shuixiongit.com/aiskyminio/cloud-bucket/ztzf_app_assets/images/user/mobile.svg"
+ alt=""
+ />
+ <span>{{ user.deptName }}</span>
+ </view>
+ </view>
+ <view class="rightLogo">
+ <image
+ src="https://wrj.shuixiongit.com/aiskyminio/cloud-bucket/ztzf_app_assets/images/user/logo2.png"
+ alt=""
+ />
+ </view>
+ </view>
+ <view class="personalInformation">
+ <div class="message">
+ <div class="messagebox">个人信息</div>
+ <div class="editInfo" @click="handelEdit(1)">
+ 点击编辑
+ <image :src="rightImage" alt="" />
+ </div>
+ </div>
+ <div class="passwordBox">
+ <div class="messagebox">修改密码</div>
+ <div class="editInfo" @click="handelEdit(2)">
+ 点击编辑
+ <image :src="rightImage" alt="" />
+ </div>
+ </div>
+ </view>
+
+ <view class="mt-20rpx">
+ <div class="goOutStyle" @click="logOut">退出登录</div>
+ </view>
+ <div class="bottomLogo">
+ <image :src="logoImage" alt="" />
+ </div>
+ </view>
+ </view>
+</template>
+
+<script setup>
+import { getAssetsImage } from "@/utils/index.js";
+import { getUserInfo } from "@/api/user/index.js";
+import { useClipboard } from "@/hooks";
+import { useUserStore } from "@/store/index.js";
+import { onShow } from "@dcloudio/uni-app";
+import { getDeviceRegionApi } from "@/api/map.js";
+
+const { setClipboardData, getClipboardData } = useClipboard();
+
+const rightImage = getAssetsImage("/images/user/rightBtn.svg");
+const logoImage = getAssetsImage("/images/user/logo1.png");
+
+const userStore = useUserStore();
+const user = ref("");
+const getUserInfoData = () => {
+ getUserInfo().then((res) => {
+ user.value = res.data.data;
+ });
+};
+
+function logOut() {
+ userStore.setUserInfo(null);
+ uni.reLaunch({
+ url: "/pages/login/index",
+ });
+}
+
+function getDeviceRegion() {
+ getDeviceRegionApi().then((res) => {});
+}
+const handelEdit = (val) => {
+ if (val === 1) {
+ uni.navigateTo({
+ url: `/subPackages/userDetail/infos/index`,
+ });
+ } else {
+ uni.navigateTo({
+ url: `/subPackages/userDetail/password/index`,
+ });
+ }
+};
+onShow(() => {
+ getUserInfoData();
+
+ // #ifndef MP-WEIXIN
+ uni.setTabBarItem({
+ index: 2, // Tab 的索引(从0开始)
+ visible: false,
+ });
+ uni.setTabBarItem({
+ index: 3, // Tab
+ visible: true,
+ });
+ // #endif
+});
+</script>
+<style scoped lang="scss">
+.page-wrap {
+ width: 100%;
+ height: 100%;
+}
+.userBox {
+ padding-top: 88rpx;
+}
+.userName {
+ font-weight: 700;
+ font-size: 36rpx;
+ color: #000000;
+}
+
+.departs {
+ display: flex;
+ align-items: center;
+ margin-top: 22rpx;
+
+ image {
+ width: 28rpx;
+ height: 28rpx;
+ }
+
+ span {
+ font-family: "Source Han Sans CN";
+ font-weight: 400;
+ font-size: 28rpx;
+ color: rgba(0, 0, 0, 0.6);
+ margin-left: 6rpx;
+ }
+}
+
+.rightLogo {
+ width: 200rpx;
+ height: 80rpx;
+
+ image {
+ width: 100%;
+ height: 100%;
+ }
+}
+
+.bottomLogo {
+ position: absolute;
+ bottom: 50rpx;
+ left: 0;
+ right: 0;
+ margin: 0 auto;
+ text-align: center;
+
+ image {
+ width: 128rpx;
+ height: 52rpx;
+ }
+}
+
+.goOutStyle {
+ width: 590rpx;
+ height: 76rpx;
+ background: #1d6fe9;
+ border-radius: 40rpx;
+ font-family: "Source Han Sans CN";
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #ffffff;
+ text-align: center;
+ line-height: 76rpx;
+ margin: auto;
+ margin-top: 114rpx;
+}
+
+.personalInformation {
+ display: flex;
+ justify-content: space-between;
+ padding: 0 24rpx;
+
+ .message,
+ .passwordBox {
+ width: 340rpx;
+ height: 160rpx;
+
+ .messagebox {
+ padding: 20rpx 24rpx;
+ font-family: "Source Han Sans CN";
+ font-weight: 500;
+ font-size: 28rpx;
+ color: #000000;
+ }
+
+ .editInfo {
+ padding: 20rpx 24rpx;
+ color: rgba(0, 0, 0, 0.5);
+ font-family: "Source Han Sans CN";
+ font-weight: 400;
+ font-size: 24rpx;
+ display: flex;
+ align-items: center;
+
+ image {
+ width: 28rpx;
+ height: 28rpx;
+ }
+ }
+ }
+
+ .message {
+ background: url(https://wrj.shuixiongit.com/drone-app/assets/static/images/user/info.png)
+ no-repeat center;
+ background-size: 100% 100%;
+ }
+
+ .passwordBox {
+ background: url(https://wrj.shuixiongit.com/drone-app/assets/static/images/user/password.png)
+ no-repeat center;
+ background-size: 100% 100%;
+ }
+}
+</style>
diff --git a/uniapps/drone-app/src/pages/work/index.vue b/uniapps/drone-app/src/pages/work/index.vue
new file mode 100644
index 0000000..ac51a5f
--- /dev/null
+++ b/uniapps/drone-app/src/pages/work/index.vue
@@ -0,0 +1,102 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-12-18 10:06:30
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-20 14:18:42
+ * @FilePath : \src\pages\work\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-12-18 10:06:30
+-->
+<template>
+ <view class="eventTickets">
+ <WebViewPlus
+ ref="sWebViewRef"
+ :src="`${viewUrl}`"
+ @webMessage="onPostMessage"
+ />
+ </view>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import { useTabAddButton } from "@/hooks/index.js";
+import { onShow, onHide } from "@dcloudio/uni-app";
+
+const sWebViewRef = ref(null);
+// const viewUrl = getWebViewUrl('/work', {})
+const updateKey = ref(0);
+const viewUrl = computed(() => {
+ // #ifdef MP-WEIXIN
+ return getWebViewUrl("/work", {
+ updateKey: updateKey.value,
+ showAddBtn: 1,
+ });
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ return getWebViewUrl("/work", {
+ updateKey: updateKey.value,
+ showAddBtn: 0,
+ });
+ // #endif
+});
+
+function onPostMessage(data) {
+ // #ifdef MP-WEIXIN
+ if (data.type === "addWork") {
+ }
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ if (data.type === "jumpMapNav") {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`,
+ });
+ } else if (data.type === "workid") {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/index?eventNum=${data.eventNum}&totalNum=${data.totalNum}&keyword=${data.keyword}&aiType=${data.aiType}&status=${data.status}¤t=${data.current}`,
+ });
+ } else if (data.type === "bigImage") {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/photoMagnify/index?eventNum=${data.eventNum}`,
+ });
+ }
+ // #endif
+}
+const isApp = ref(false);
+onShow(() => {
+ const joinParams = uni.getStorageSync("joinParams");
+ if (joinParams) {
+ updateKey.value = updateKey.value + 1;
+ uni.removeStorageSync("joinParams");
+ }
+
+ // #ifndef MP-WEIXIN
+ uni.setTabBarItem({
+ index: 2, // Tab 的索引(从0开始)
+ // text: '新建工单',
+ visible: true,
+ pagePath: "subPackages/workDetail/addWork/index",
+ });
+ uni.setTabBarItem({
+ index: 3, // Tab
+ visible: false,
+ });
+ // #endif
+
+ // isApp.value = true
+});
+
+onHide(() => {
+ // isApp.value = false
+});
+</script>
+
+<style scoped lang="scss">
+.eventTickets {
+ width: 100%;
+ height: 100%;
+}
+</style>
diff --git a/uniapps/drone-app/src/plugins/index.js b/uniapps/drone-app/src/plugins/index.js
new file mode 100644
index 0000000..58547a9
--- /dev/null
+++ b/uniapps/drone-app/src/plugins/index.js
@@ -0,0 +1,20 @@
+import setupI18n from "@/locales"
+import setupStore from "@/store"
+import setupRequest from "@/utils/request"
+import setupPermission from "./permission"
+import setupUI from "./ui"
+
+export default {
+ install (app) {
+ // UI扩展配置
+ setupUI(app)
+ // 状态管理
+ setupStore(app)
+ // 国际化
+ setupI18n(app)
+ // 路由拦截
+ setupPermission()
+ // 网络请求
+ setupRequest()
+ }
+}
diff --git a/uniapps/drone-app/src/plugins/permission.js b/uniapps/drone-app/src/plugins/permission.js
new file mode 100644
index 0000000..0700fc8
--- /dev/null
+++ b/uniapps/drone-app/src/plugins/permission.js
@@ -0,0 +1,56 @@
+import {
+ ERROR404_PATH,
+ isPathExists,
+ LOGIN_PATH,
+ removeQueryString,
+ routes
+} from "@/router"
+import {useUserStore} from "@/store/index.js";
+
+// 白名单路由
+const whiteList = ["/"]
+routes.forEach(item => {
+ if (item.needLogin !== true) {
+ whiteList.push(item.path)
+ }
+})
+
+/**
+ * 权限校验
+ * @param {string} path
+ * @returns {boolean} 是否有权限
+ */
+export function hasPerm (path = "") {
+ if (!isPathExists(path) && path !== "/") {
+ uni.redirectTo({
+ url: ERROR404_PATH
+ })
+ return false
+ }
+ // 在白名单中或有token,直接放行
+ const hasPermission = whiteList.includes(removeQueryString(path)) || useUserStore().$state.userInfo.access_token
+ if (!hasPermission) {
+ // 将用户的目标路径传递过去,这样可以实现用户登录之后,直接跳转到目标页面
+ uni.redirectTo({
+ url: `${LOGIN_PATH}?redirect=${encodeURIComponent(path)}`
+ })
+ }
+ return hasPermission
+}
+
+function setupPermission () {
+ // 注意:拦截uni.switchTab本身没有问题。但是在微信小程序端点击tabbar的底层逻辑并不是触发uni.switchTab。
+ // 所以误认为拦截无效,此类场景的解决方案是在tabbar页面的页面生命周期onShow中处理。
+ ;["navigateTo", "redirectTo", "reLaunch", "switchTab"].forEach(item => {
+ // https://uniapp.dcloud.net.cn/api/interceptor.html
+ uni.addInterceptor(item, {
+ // 页面跳转前进行拦截, invoke根据返回值进行判断是否继续执行跳转
+ invoke (args) {
+ // args为所拦截api中的参数,比如拦截的是uni.redirectTo(OBJECT),则args对应的是OBJECT参数
+ return hasPerm(args.url)
+ }
+ })
+ })
+}
+
+export default setupPermission
diff --git a/uniapps/drone-app/src/plugins/ui.js b/uniapps/drone-app/src/plugins/ui.js
new file mode 100644
index 0000000..08e097d
--- /dev/null
+++ b/uniapps/drone-app/src/plugins/ui.js
@@ -0,0 +1,45 @@
+import uviewPlus, {
+ setConfig
+} from "uview-plus"
+
+function setupUI(app) {
+ // 下面的在特殊场景下才需要配置,通常不用配置即可直接使用uview-plus框架。
+ // 调用setConfig方法,方法内部会进行对象属性深度合并,可以放心嵌套配置
+ // 需要在app.use(uview-plus)之后执行
+ setConfig({
+ // 修改$u.config对象的属性
+ config: {
+ // 修改默认单位为rpx,相当于执行 uni.$u.config.unit = 'rpx'
+ unit: "rpx"
+ },
+ // 修改$u.props对象的属性
+ props: {
+ // 修改radio组件的size参数的默认值,相当于执行 uni.$u.props.radio.size = 30
+ radio: {
+ // size: 20
+ }
+ // 其他组件属性配置
+ // ......
+ }
+ })
+
+ app.use(uviewPlus, () => {
+ return {
+ options: {
+ // 修改config对象的属性
+ config: {
+ customIcon: {
+ family: 'xyicon',
+ url: 'https://at.alicdn.com/t/c/font_5036193_7g86rzw8srl.ttf?t=1760003919145'
+ },
+ customIcons: {
+ 'tuceng': '\uea2d',
+ 'dingwei': '\ue610',
+ },
+ }
+ }
+ }
+ })
+}
+
+export default setupUI
diff --git a/uniapps/drone-app/src/router/index.js b/uniapps/drone-app/src/router/index.js
new file mode 100644
index 0000000..41ec59c
--- /dev/null
+++ b/uniapps/drone-app/src/router/index.js
@@ -0,0 +1,98 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:55:05
+ * @FilePath : \src\router\index.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+import pagesJson from "@/pages.json"
+
+// 路径常量
+export const HOME_PATH = "/pages/map/index"
+export const LOGIN_PATH = "/pages/login/index"
+export const ERROR404_PATH = "/pages/common/404/index"
+
+/**
+ * 解析路由地址
+ * @param {object} pagesJson
+ * @returns [{"path": "/pages/tab/map/index","needLogin": false},...]
+ */
+function parseRoutes (pagesJson = {}) {
+ if (!pagesJson.pages) {
+ pagesJson.pages = []
+ }
+ if (!pagesJson.subPackages) {
+ pagesJson.subPackages = []
+ }
+
+ function parsePages (pages = [], rootPath = "") {
+ const routes = []
+ for (let i = 0; i < pages.length; i++) {
+ routes.push({
+ path: rootPath ? `/${rootPath}/${pages[i].path}` : `/${pages[i].path}`,
+ needLogin: pages[i].needLogin === true
+ })
+ }
+ return routes
+ }
+
+ function parseSubPackages (subPackages = []) {
+ const routes = []
+ for (let i = 0; i < subPackages.length; i++) {
+ routes.push(...parsePages(subPackages[i].pages, subPackages[i].root))
+ }
+ return routes
+ }
+
+ return [
+ ...parsePages(pagesJson.pages),
+ ...parseSubPackages(pagesJson.subPackages)
+ ]
+}
+export const routes = parseRoutes(pagesJson)
+
+/**
+ * 当前路由
+ * @returns {string} 当前路由
+ */
+export function currentRoute () {
+ // getCurrentPages() 至少有1个元素,所以不再额外判断
+ const pages = getCurrentPages()
+ const currentPage = pages[pages.length - 1]
+ return currentPage?.$page?.fullPath || currentPage.route
+}
+
+/**
+ * 去除查询字符串
+ * @param {string} path
+ * @returns {string} 去除查询字符串后的路径
+ */
+export function removeQueryString (path = "") {
+ return path.split("?")[0]
+}
+
+/**
+ * 路径是否存在
+ * @param {string} path
+ * @returns {boolean} 路径是否存在
+ */
+export function isPathExists (path = "") {
+ const cleanPath = removeQueryString(path)
+ return routes.some(item => item.path === cleanPath)
+}
+
+/**
+ * 是否是tabbar页面路径
+ * @param {string} path
+ * @returns {boolean} 是否是tabbar页面
+ */
+export function isTabBarPath (path = "") {
+ const cleanPath = removeQueryString(path)
+ return (
+ pagesJson.tabBar?.list?.some(item => `/${item.pagePath}` === cleanPath) ===
+ true
+ )
+}
diff --git a/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Bold.woff2 b/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Bold.woff2
new file mode 100644
index 0000000..deac255
--- /dev/null
+++ b/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Bold.woff2
Binary files differ
diff --git a/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Regular.woff2 b/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Regular.woff2
new file mode 100644
index 0000000..1f71f8e
--- /dev/null
+++ b/uniapps/drone-app/src/static/fonts/SourceHanSansCN-Regular.woff2
Binary files differ
diff --git a/uniapps/drone-app/src/static/fonts/YouSheBiaoTiHei.TTF b/uniapps/drone-app/src/static/fonts/YouSheBiaoTiHei.TTF
new file mode 100644
index 0000000..3729151
--- /dev/null
+++ b/uniapps/drone-app/src/static/fonts/YouSheBiaoTiHei.TTF
Binary files differ
diff --git a/uniapps/drone-app/src/static/fonts/font.css b/uniapps/drone-app/src/static/fonts/font.css
new file mode 100644
index 0000000..ed4240f
--- /dev/null
+++ b/uniapps/drone-app/src/static/fonts/font.css
@@ -0,0 +1,45 @@
+@font-face {
+ font-family: "Source Han Sans CN";
+ src: url("https://wrj.shuixiongit.com/drone-app/assets/static/fonts/SourceHanSansCN-Regular.woff2")
+ format("opentype");
+ font-weight: 400;
+ font-style: normal;
+ font-display: swap;
+}
+
+@font-face {
+ font-family: "Source Han Sans CN";
+ src: url("https://wrj.shuixiongit.com/drone-app/assets/static/fonts/SourceHanSansCN-Bold.woff2")
+ format("opentype");
+ font-weight: 700;
+ font-style: normal;
+ font-display: swap;
+}
+
+@font-face {
+ font-family: "Segoe UI";
+ src: url("https://wrj.shuixiongit.com/drone-app/assets/static/fonts/SourceHanSansCN-Regular.woff2")
+ format("opentype");
+ font-weight: 400;
+ font-style: normal;
+ font-display: swap;
+}
+
+@font-face {
+ font-family: "Segoe UI";
+ src: url("https://wrj.shuixiongit.com/drone-app/assets/static/fonts/SourceHanSansCN-Bold.woff2")
+ format("opentype");
+ font-weight: 700;
+ font-style: normal;
+ font-display: swap;
+}
+
+/* 额外的标题字体 */
+@font-face {
+ font-family: "YouSheBiaoTiHei";
+ src: url("https://wrj.shuixiongit.com/drone-app/assets/static/fonts/YouSheBiaoTiHei.TTF")
+ format("truetype");
+ font-weight: normal;
+ font-style: normal;
+ font-display: swap;
+}
diff --git a/uniapps/drone-app/src/static/images/404.png b/uniapps/drone-app/src/static/images/404.png
new file mode 100644
index 0000000..c4d3dbf
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/404.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/app-logo.png b/uniapps/drone-app/src/static/images/app-logo.png
new file mode 100644
index 0000000..13aba38
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/app-logo.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/logo.png b/uniapps/drone-app/src/static/images/logo.png
new file mode 100644
index 0000000..b5771e2
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/logo.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/pay.png b/uniapps/drone-app/src/static/images/pay.png
new file mode 100644
index 0000000..f677d6e
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/pay.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/sl.png b/uniapps/drone-app/src/static/images/sl.png
new file mode 100644
index 0000000..cf1c6d6
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/sl.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/add-task.svg b/uniapps/drone-app/src/static/images/tabbar/add-task.svg
new file mode 100644
index 0000000..94465b9
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/add-task.svg
@@ -0,0 +1,10 @@
+<svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316217">
+<g id="图标">
+<circle id="bg" cx="28" cy="28" r="25.5" fill="#1D6FE9" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
+</g>
+<g id="Frame">
+<path id="Vector" d="M29.051 17.3062C29.1972 17.3062 29.3373 17.3642 29.4407 17.4675C29.544 17.5709 29.6021 17.711 29.6021 17.8572V26.6735H38.4184C38.5645 26.6735 38.7047 26.7316 38.808 26.8349C38.9114 26.9382 38.9694 27.0784 38.9694 27.2245V28.3266C38.9694 28.4727 38.9114 28.6129 38.808 28.7162C38.7047 28.8195 38.5645 28.8776 38.4184 28.8776H29.6021V37.6939C29.6021 37.84 29.544 37.9802 29.4407 38.0835C29.3373 38.1869 29.1972 38.2449 29.051 38.2449H27.949C27.8029 38.2449 27.6627 38.1869 27.5594 38.0835C27.456 37.9802 27.398 37.84 27.398 37.6939V28.8776H18.5817C18.4355 28.8776 18.2954 28.8195 18.192 28.7162C18.0887 28.6129 18.0306 28.4727 18.0306 28.3266V27.2245C18.0306 27.0784 18.0887 26.9382 18.192 26.8349C18.2954 26.7316 18.4355 26.6735 18.5817 26.6735H27.398V17.8572C27.398 17.711 27.456 17.5709 27.5594 17.4675C27.6627 17.3642 27.8029 17.3062 27.949 17.3062H29.051Z" fill="white" stroke="white" stroke-width="0.4"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/add-work.svg b/uniapps/drone-app/src/static/images/tabbar/add-work.svg
new file mode 100644
index 0000000..94465b9
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/add-work.svg
@@ -0,0 +1,10 @@
+<svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316217">
+<g id="图标">
+<circle id="bg" cx="28" cy="28" r="25.5" fill="#1D6FE9" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
+</g>
+<g id="Frame">
+<path id="Vector" d="M29.051 17.3062C29.1972 17.3062 29.3373 17.3642 29.4407 17.4675C29.544 17.5709 29.6021 17.711 29.6021 17.8572V26.6735H38.4184C38.5645 26.6735 38.7047 26.7316 38.808 26.8349C38.9114 26.9382 38.9694 27.0784 38.9694 27.2245V28.3266C38.9694 28.4727 38.9114 28.6129 38.808 28.7162C38.7047 28.8195 38.5645 28.8776 38.4184 28.8776H29.6021V37.6939C29.6021 37.84 29.544 37.9802 29.4407 38.0835C29.3373 38.1869 29.1972 38.2449 29.051 38.2449H27.949C27.8029 38.2449 27.6627 38.1869 27.5594 38.0835C27.456 37.9802 27.398 37.84 27.398 37.6939V28.8776H18.5817C18.4355 28.8776 18.2954 28.8195 18.192 28.7162C18.0887 28.6129 18.0306 28.4727 18.0306 28.3266V27.2245C18.0306 27.0784 18.0887 26.9382 18.192 26.8349C18.2954 26.7316 18.4355 26.6735 18.5817 26.6735H27.398V17.8572C27.398 17.711 27.456 17.5709 27.5594 17.4675C27.6627 17.3642 27.8029 17.3062 27.949 17.3062H29.051Z" fill="white" stroke="white" stroke-width="0.4"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/add.png b/uniapps/drone-app/src/static/images/tabbar/add.png
new file mode 100644
index 0000000..c71b746
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/add.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/add.svg b/uniapps/drone-app/src/static/images/tabbar/add.svg
new file mode 100644
index 0000000..94465b9
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/add.svg
@@ -0,0 +1,10 @@
+<svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316217">
+<g id="图标">
+<circle id="bg" cx="28" cy="28" r="25.5" fill="#1D6FE9" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
+</g>
+<g id="Frame">
+<path id="Vector" d="M29.051 17.3062C29.1972 17.3062 29.3373 17.3642 29.4407 17.4675C29.544 17.5709 29.6021 17.711 29.6021 17.8572V26.6735H38.4184C38.5645 26.6735 38.7047 26.7316 38.808 26.8349C38.9114 26.9382 38.9694 27.0784 38.9694 27.2245V28.3266C38.9694 28.4727 38.9114 28.6129 38.808 28.7162C38.7047 28.8195 38.5645 28.8776 38.4184 28.8776H29.6021V37.6939C29.6021 37.84 29.544 37.9802 29.4407 38.0835C29.3373 38.1869 29.1972 38.2449 29.051 38.2449H27.949C27.8029 38.2449 27.6627 38.1869 27.5594 38.0835C27.456 37.9802 27.398 37.84 27.398 37.6939V28.8776H18.5817C18.4355 28.8776 18.2954 28.8195 18.192 28.7162C18.0887 28.6129 18.0306 28.4727 18.0306 28.3266V27.2245C18.0306 27.0784 18.0887 26.9382 18.192 26.8349C18.2954 26.7316 18.4355 26.6735 18.5817 26.6735H27.398V17.8572C27.398 17.711 27.456 17.5709 27.5594 17.4675C27.6627 17.3642 27.8029 17.3062 27.949 17.3062H29.051Z" fill="white" stroke="white" stroke-width="0.4"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/drone.png b/uniapps/drone-app/src/static/images/tabbar/drone.png
new file mode 100644
index 0000000..4339d14
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/drone.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_home.svg b/uniapps/drone-app/src/static/images/tabbar/icon_home.svg
new file mode 100644
index 0000000..bebb6f9
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_home.svg
@@ -0,0 +1,10 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Frame" clip-path="url(#clip0_2193_2310)">
+<path id="Vector" d="M9.91638 3.74371C9.92985 3.74371 9.93856 3.74689 9.9447 3.75055V3.74957L14.1088 6.24371H14.1097C14.1278 6.25464 14.1342 6.27141 14.1342 6.28375V21.0543C14.134 21.0767 14.1164 21.0972 14.0883 21.0972C14.0819 21.0972 14.0745 21.0955 14.0677 21.0914L14.0658 21.0904L9.89587 18.5728L9.89294 18.5709L9.8783 18.5562C9.87433 18.5491 9.8725 18.5416 9.87244 18.5347V3.78766C9.87244 3.7637 9.8919 3.74371 9.91638 3.74371ZM7.17419 2.97223C7.18018 2.98303 7.18292 2.99144 7.18298 2.99957V18.3658C7.18293 18.3839 7.17326 18.3982 7.16052 18.4058L2.99451 20.897H2.99353C2.97355 20.909 2.94565 20.9043 2.93103 20.8804L2.92908 20.8775C2.92878 20.8769 2.92782 20.8752 2.92712 20.8726C2.92624 20.8693 2.92615 20.8639 2.92615 20.857V5.52887C2.92615 5.52001 2.92792 5.51161 2.93201 5.50446L2.94861 5.48785L7.1156 2.96051C7.13758 2.94718 7.16169 2.95431 7.17419 2.97223ZM21.0687 2.97321C21.0742 2.98351 21.0765 2.99172 21.0765 2.99957V18.3658C21.0765 18.3749 21.0746 18.3834 21.0707 18.3902L21.0551 18.4058L16.8881 20.897H16.8871C16.8671 20.9089 16.8392 20.9043 16.8246 20.8804L16.8236 20.8775L16.8217 20.8726C16.8208 20.8693 16.8197 20.8641 16.8197 20.857V5.53473C16.8199 5.52179 16.8226 5.51142 16.8265 5.50446C16.8303 5.4978 16.8359 5.49264 16.8422 5.48883L21.0092 2.96051C21.0316 2.9469 21.0565 2.9545 21.0687 2.97321Z" stroke="#8C8C8C" stroke-width="1.3"/>
+</g>
+<defs>
+<clipPath id="clip0_2193_2310">
+<rect width="24" height="24" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_home1.png b/uniapps/drone-app/src/static/images/tabbar/icon_home1.png
new file mode 100644
index 0000000..790d1c4
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_home1.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_home2.png b/uniapps/drone-app/src/static/images/tabbar/icon_home2.png
new file mode 100644
index 0000000..ba24413
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_home2.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.png b/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.png
new file mode 100644
index 0000000..19ecf37
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.svg b/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.svg
new file mode 100644
index 0000000..99bf26a
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_home_selected.svg
@@ -0,0 +1,10 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Frame" clip-path="url(#clip0_2193_2351)">
+<path id="Vector" d="M2.60857 4.9336L6.7781 2.40469C7.10623 2.20547 7.53279 2.3086 7.73201 2.63672C7.79763 2.74688 7.83279 2.8711 7.83279 3V18.3656C7.83279 18.6094 7.70622 18.8367 7.49529 18.9633L3.3281 21.4547C2.99998 21.6516 2.57341 21.5461 2.37419 21.2156C2.30857 21.1078 2.27576 20.9836 2.27576 20.857V5.52891C2.27576 5.28516 2.40232 5.06016 2.60857 4.9336ZM16.5047 4.9336L20.6719 2.40469C21 2.20547 21.4265 2.3086 21.6258 2.63672C21.6914 2.74688 21.7265 2.8711 21.7265 3V18.3656C21.7265 18.6094 21.6 18.8367 21.389 18.9633L17.2218 21.4547C16.8937 21.6516 16.4672 21.5461 16.2679 21.2156C16.2023 21.1078 16.1695 20.9836 16.1695 20.857V5.52891C16.1719 5.28516 16.2961 5.06016 16.5047 4.9336ZM10.2773 3.19219L14.4469 5.68829C14.6554 5.81485 14.7843 6.03985 14.7843 6.2836V21.0539C14.7843 21.4383 14.4726 21.7477 14.0883 21.7477C13.9617 21.7477 13.8375 21.7125 13.7297 21.6469L9.56013 19.1297C9.35154 19.0055 9.22263 18.7781 9.22263 18.5344V3.7875C9.22263 3.40313 9.53435 3.09375 9.91638 3.09375C10.0429 3.09375 10.1672 3.12657 10.2773 3.19219Z" fill="#1D6FE9"/>
+</g>
+<defs>
+<clipPath id="clip0_2193_2351">
+<rect width="24" height="24" fill="white"/>
+</clipPath>
+</defs>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_list.png b/uniapps/drone-app/src/static/images/tabbar/icon_list.png
new file mode 100644
index 0000000..34c1947
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_list.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_list.svg b/uniapps/drone-app/src/static/images/tabbar/icon_list.svg
new file mode 100644
index 0000000..b87fead
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_list.svg
@@ -0,0 +1,8 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316224">
+<g id="Group 1321316110">
+<path id="Vector" d="M18.0517 2H5.9495C3.7748 2 2 3.95801 2 6.35412V16.6459C2 19.0469 3.77117 21 5.9495 21H18.0517C20.2264 21 22 19.042 22 16.6459V6.36023C22 3.95311 20.2288 2 18.0517 2ZM20.5502 16.6459C20.5502 18.2368 19.429 19.5315 18.0517 19.5315H5.9495C4.57098 19.5315 3.4498 18.2368 3.4498 16.6459V6.36023C3.4498 4.76935 4.57098 3.47462 5.9495 3.47462H18.0517C19.429 3.47462 20.5502 4.76935 20.5502 6.36023V16.6459Z" fill="#8C8C8C"/>
+<path id="Vector_2" d="M9.5048 6.51704L7.3727 8.75839L6.45271 7.80389C6.38958 7.73887 6.31426 7.68693 6.23106 7.65102C6.14786 7.61512 6.0584 7.59595 5.96779 7.59461C5.87719 7.59328 5.7872 7.6098 5.70298 7.64324C5.61876 7.67668 5.54194 7.72639 5.47693 7.78951C5.41192 7.85264 5.35997 7.92795 5.32406 8.01116C5.28816 8.09436 5.26899 8.18382 5.26765 8.27442C5.26632 8.36503 5.28284 8.45502 5.31628 8.53924C5.34973 8.62346 5.39943 8.70027 5.46256 8.76529L6.88166 10.235C6.94604 10.3013 7.0231 10.354 7.10824 10.3899C7.19338 10.4259 7.28488 10.4444 7.37731 10.4443C7.4705 10.445 7.56288 10.4268 7.64885 10.3908C7.73483 10.3549 7.81263 10.3019 7.87756 10.235L10.5053 7.47499C10.6314 7.34231 10.6997 7.16497 10.695 6.98198C10.6904 6.79899 10.6133 6.62533 10.4806 6.49921C10.3479 6.3731 10.1706 6.30485 9.98757 6.30949C9.80458 6.31412 9.63092 6.39126 9.5048 6.52394V6.51704ZM17.3168 7.68314H12.3131C12.1301 7.68314 11.9546 7.75584 11.8252 7.88524C11.6958 8.01464 11.6231 8.19014 11.6231 8.37314C11.6231 8.55614 11.6958 8.73164 11.8252 8.86104C11.9546 8.99044 12.1301 9.06314 12.3131 9.06314H17.3168C17.4998 9.06314 17.6753 8.99044 17.8047 8.86104C17.9341 8.73164 18.0068 8.55614 18.0068 8.37314C18.0068 8.19014 17.9341 8.01464 17.8047 7.88524C17.6753 7.75584 17.4998 7.68314 17.3168 7.68314ZM17.3168 13.555H12.3131C12.1301 13.555 11.9546 13.6277 11.8252 13.7571C11.6958 13.8865 11.6231 14.062 11.6231 14.245C11.6231 14.428 11.6958 14.6035 11.8252 14.7329C11.9546 14.8623 12.1301 14.935 12.3131 14.935H17.3168C17.4998 14.935 17.6753 14.8623 17.8047 14.7329C17.9341 14.6035 18.0068 14.428 18.0068 14.245C18.0068 14.062 17.9341 13.8865 17.8047 13.7571C17.6753 13.6277 17.4998 13.555 17.3168 13.555ZM7.97875 11.4252C7.48997 11.4252 7.01216 11.5702 6.60575 11.8417C6.19934 12.1133 5.88258 12.4993 5.69553 12.9508C5.50848 13.4024 5.45953 13.8993 5.55489 14.3787C5.65025 14.8581 5.88562 15.2985 6.23125 15.6441C6.57687 15.9897 7.01722 16.2251 7.49662 16.3205C7.97601 16.4158 8.47292 16.3669 8.9245 16.1798C9.37608 15.9928 9.76205 15.676 10.0336 15.2696C10.3052 14.8632 10.4501 14.3854 10.4501 13.8966C10.4492 13.2414 10.1885 12.6134 9.72525 12.1501C9.26198 11.6868 8.63392 11.4262 7.97875 11.4252ZM7.97875 14.9902C7.76291 14.9902 7.55191 14.9262 7.37243 14.8063C7.19296 14.6864 7.05308 14.5159 6.97048 14.3165C6.88788 14.1171 6.86627 13.8977 6.90838 13.686C6.95049 13.4743 7.05443 13.2798 7.20705 13.1272C7.35968 12.9746 7.55414 12.8706 7.76584 12.8285C7.97754 12.7864 8.19698 12.808 8.3964 12.8906C8.59581 12.9732 8.76626 13.1131 8.88618 13.2926C9.0061 13.472 9.0701 13.683 9.0701 13.8989C9.06889 14.1877 8.95345 14.4644 8.74898 14.6684C8.54451 14.8725 8.26761 14.9873 7.97875 14.9879V14.9902Z" fill="#8C8C8C"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.png b/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.png
new file mode 100644
index 0000000..b98f189
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.svg b/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.svg
new file mode 100644
index 0000000..47b46ca
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_list_selected.svg
@@ -0,0 +1,8 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316223">
+<g id="Frame">
+<path id="Vector" d="M18.0517 2H5.9495C3.7748 2 2 3.95801 2 6.35412V16.6459C2 19.0469 3.77117 21 5.9495 21H18.0517C20.2264 21 22 19.042 22 16.6459V6.36023C22 3.95311 20.2288 2 18.0517 2ZM20.5502 16.6459C20.5502 18.2368 19.429 19.5315 18.0517 19.5315H5.9495C4.57098 19.5315 3.4498 18.2368 3.4498 16.6459V6.36023C3.4498 4.76935 4.57098 3.47462 5.9495 3.47462H18.0517C19.429 3.47462 20.5502 4.76935 20.5502 6.36023V16.6459Z" fill="#444444"/>
+<path id="Exclude" d="M22 16.9C22 19.1644 20.1644 21 17.9 21H6.1C3.83563 21 2 19.1644 2 16.9V6.1C2 3.83563 3.83563 2 6.1 2H17.9C20.1644 2 22 3.83563 22 6.1V16.9ZM7.97852 11.4248C7.48981 11.4249 7.01181 11.5703 6.60547 11.8418C6.19916 12.1133 5.88233 12.4997 5.69531 12.9512C5.50838 13.4027 5.45935 13.8996 5.55469 14.3789C5.65006 14.8582 5.88585 15.2989 6.23145 15.6445C6.57702 15.99 7.01782 16.225 7.49707 16.3203C7.97634 16.4156 8.47335 16.3667 8.9248 16.1797C9.3762 15.9926 9.76171 15.6758 10.0332 15.2695C10.3048 14.8631 10.4502 14.3853 10.4502 13.8965C10.4493 13.2415 10.1886 12.6136 9.72559 12.1504C9.26232 11.6871 8.63368 11.4257 7.97852 11.4248ZM7.76562 12.8281C7.97733 12.786 8.19707 12.808 8.39648 12.8906C8.59587 12.9732 8.76584 13.1135 8.88574 13.293C9.00555 13.4723 9.07022 13.6828 9.07031 13.8984C9.0691 14.1872 8.95333 14.464 8.74902 14.668C8.54478 14.8718 8.268 14.9874 7.97949 14.9883C7.97895 14.9883 7.97852 14.9887 7.97852 14.9893C7.97852 14.9898 7.97808 14.9902 7.97754 14.9902C7.76211 14.99 7.5512 14.9263 7.37207 14.8066C7.19265 14.6867 7.05329 14.5158 6.9707 14.3164C6.88811 14.117 6.8661 13.8972 6.9082 13.6855C6.95036 13.474 7.05449 13.2795 7.20703 13.127C7.35961 12.9744 7.55403 12.8702 7.76562 12.8281ZM12.3135 13.5547C12.1305 13.5547 11.9546 13.6275 11.8252 13.7568C11.6958 13.8862 11.623 14.0621 11.623 14.2451C11.6231 14.4281 11.6958 14.604 11.8252 14.7334C11.9546 14.8627 12.1306 14.9346 12.3135 14.9346H17.3164C17.4993 14.9346 17.6753 14.8627 17.8047 14.7334C17.9341 14.604 18.0068 14.4281 18.0068 14.2451C18.0068 14.0621 17.9341 13.8862 17.8047 13.7568C17.6753 13.6275 17.4993 13.5547 17.3164 13.5547H12.3135ZM9.9873 6.30957C9.80571 6.31424 9.63341 6.3907 9.50759 6.52159C9.50661 6.5226 9.50488 6.52192 9.50488 6.52051C9.50488 6.5191 9.50316 6.51841 9.50219 6.51943L8.00092 8.09842C7.65871 8.45834 7.08544 8.46019 6.74091 8.10249L6.45312 7.80371C6.39011 7.73881 6.31447 7.68727 6.23145 7.65137C6.14824 7.61546 6.05838 7.59606 5.96777 7.59473C5.87718 7.59339 5.78734 7.61012 5.70312 7.64355C5.61892 7.67699 5.54157 7.72595 5.47656 7.78906C5.41165 7.85209 5.36012 7.9277 5.32422 8.01074C5.28831 8.09394 5.26891 8.18381 5.26758 8.27441C5.26624 8.36498 5.28299 8.45487 5.31641 8.53906C5.34985 8.62329 5.39976 8.70061 5.46289 8.76562L6.88184 10.2354C6.94617 10.3015 7.02337 10.3537 7.1084 10.3896C7.19343 10.4255 7.28466 10.4444 7.37695 10.4443C7.47005 10.445 7.56254 10.4265 7.64844 10.3906C7.73442 10.3547 7.813 10.3022 7.87793 10.2354L10.5049 7.47461C10.6309 7.34204 10.6998 7.16526 10.6953 6.98242C10.6907 6.79943 10.6131 6.62514 10.4805 6.49902C10.3478 6.373 10.1702 6.30494 9.9873 6.30957ZM12.3135 7.68359C12.1306 7.68359 11.9546 7.75551 11.8252 7.88477C11.6958 8.01414 11.6231 8.19008 11.623 8.37305C11.623 8.55605 11.6958 8.73193 11.8252 8.86133C11.9546 8.99064 12.1305 9.06348 12.3135 9.06348H17.3164C17.4993 9.06348 17.6753 8.99065 17.8047 8.86133C17.9341 8.73193 18.0068 8.55605 18.0068 8.37305C18.0068 8.19008 17.9341 8.01414 17.8047 7.88477C17.6753 7.7555 17.4993 7.68359 17.3164 7.68359H12.3135Z" fill="#1D6FE9"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_me.png b/uniapps/drone-app/src/static/images/tabbar/icon_me.png
new file mode 100644
index 0000000..1b2ca05
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_me.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_me.svg b/uniapps/drone-app/src/static/images/tabbar/icon_me.svg
new file mode 100644
index 0000000..af78338
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_me.svg
@@ -0,0 +1,7 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="user">
+<g id="user_2">
+<path id="primary" d="M16 7C16 7.79113 15.7654 8.56448 15.3259 9.22228C14.8864 9.88008 14.2616 10.3928 13.5307 10.6955C12.7998 10.9983 11.9956 11.0775 11.2196 10.9231C10.4437 10.7688 9.73098 10.3878 9.17157 9.82843C8.61216 9.26902 8.2312 8.55629 8.07686 7.78036C7.92252 7.00444 8.00173 6.20017 8.30448 5.46927C8.60723 4.73836 9.11992 4.11365 9.77772 3.67412C10.4355 3.2346 11.2089 3 12 3C13.0609 3 14.0783 3.42143 14.8284 4.17157C15.5786 4.92172 16 5.93913 16 7ZM16 15H8C6.93913 15 5.92172 15.4214 5.17157 16.1716C4.42143 16.9217 4 17.9391 4 19V19C4 19.5304 4.21071 20.0391 4.58579 20.4142C4.96086 20.7893 5.46957 21 6 21H18C18.5304 21 19.0391 20.7893 19.4142 20.4142C19.7893 20.0391 20 19.5304 20 19C20 17.9391 19.5786 16.9217 18.8284 16.1716C18.0783 15.4214 17.0609 15 16 15V15Z" stroke="#8C8C8C" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.png b/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.png
new file mode 100644
index 0000000..6e3ee71
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.svg b/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.svg
new file mode 100644
index 0000000..3cf8373
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_me_selected.svg
@@ -0,0 +1,7 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="user">
+<g id="user_2">
+<path id="primary" d="M16 7C16 7.79113 15.7654 8.56448 15.3259 9.22228C14.8864 9.88008 14.2616 10.3928 13.5307 10.6955C12.7998 10.9983 11.9956 11.0775 11.2196 10.9231C10.4437 10.7688 9.73098 10.3878 9.17157 9.82843C8.61216 9.26902 8.2312 8.55629 8.07686 7.78036C7.92252 7.00444 8.00173 6.20017 8.30448 5.46927C8.60723 4.73836 9.11992 4.11365 9.77772 3.67412C10.4355 3.2346 11.2089 3 12 3C13.0609 3 14.0783 3.42143 14.8284 4.17157C15.5786 4.92172 16 5.93913 16 7ZM16 15H8C6.93913 15 5.92172 15.4214 5.17157 16.1716C4.42143 16.9217 4 17.9391 4 19C4 19.5304 4.21071 20.0391 4.58579 20.4142C4.96086 20.7893 5.46957 21 6 21H18C18.5304 21 19.0391 20.7893 19.4142 20.4142C19.7893 20.0391 20 19.5304 20 19C20 17.9391 19.5786 16.9217 18.8284 16.1716C18.0783 15.4214 17.0609 15 16 15Z" fill="#1D6FE9" stroke="#1D6FE9" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_order.png b/uniapps/drone-app/src/static/images/tabbar/icon_order.png
new file mode 100644
index 0000000..f3cc671
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_order.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_order.svg b/uniapps/drone-app/src/static/images/tabbar/icon_order.svg
new file mode 100644
index 0000000..a5b6593
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_order.svg
@@ -0,0 +1,8 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316220">
+<g id="Group 1321316218">
+<path id="Vector" d="M21.9989 6.20825C21.9669 5.55338 21.6873 4.94449 21.2116 4.49381C20.7267 4.03439 20.0844 4 19.4034 4H16.7914L16.7915 2.79167C16.7915 2.5817 16.7037 2.38034 16.5474 2.23187C16.3911 2.08341 16.1792 2 15.9582 2C15.7372 2 15.5252 2.08341 15.3689 2.23187C15.2126 2.38034 15.1248 2.5817 15.1248 2.79167L15.1247 4H8.87489L8.87502 2.79167C8.87502 2.5817 8.78722 2.38034 8.63095 2.23187C8.47467 2.08341 8.26271 2 8.04169 2C7.82068 2 7.60872 2.08341 7.45244 2.23187C7.29616 2.38034 7.20837 2.5817 7.20837 2.79167L7.20823 4H4.60212C3.22092 4 2.07853 4.82277 2.00133 6.15213C2.0004 6.1667 2 6.18127 2 6.19583V18.5118C2 18.5263 2.0004 18.5408 2.00133 18.5555C2.076 19.841 3.16493 20.8908 4.53425 20.9973C4.55692 20.9992 4.57958 21 4.60238 21H19.4036C19.4263 21 19.4489 20.9991 19.4716 20.9973C20.1264 20.9455 20.7412 20.6768 21.2087 20.2381C21.6849 19.7916 21.9656 19.2105 21.9989 18.6021C21.9996 18.5884 22 18.5747 22 18.561V6.24498C21.9999 6.23273 21.9996 6.22048 21.9989 6.20825ZM20.3332 18.5368C20.2991 18.9766 19.8713 19.3641 19.3644 19.4167H4.64132C4.12625 19.3631 3.70439 18.9612 3.66666 18.4864V6.22079C3.70439 5.7392 4.11172 5.36465 4.60225 5.36465H7.20823V6.55215C7.20823 6.76211 7.29603 6.96347 7.45231 7.11194C7.60859 7.26041 7.82055 7.34381 8.04156 7.34381C8.26257 7.34381 8.47453 7.26041 8.63081 7.11194C8.78709 6.96347 8.87489 6.76211 8.87489 6.55215V5.36465H15.1248V6.55215C15.1248 6.76211 15.2126 6.96347 15.3689 7.11194C15.5252 7.26041 15.7372 7.34381 15.9582 7.34381C16.1792 7.34381 16.3911 7.26041 16.5474 7.11194C16.7037 6.96347 16.7915 6.76211 16.7915 6.55215V5.36465H19.4035C19.9032 5.36465 20.3004 5.75098 20.3332 6.26588V18.5368Z" fill="#8C8C8C"/>
+<path id="Vector_2" d="M16.9465 13.9149H7.60278C7.38729 13.9149 7.18063 14.0005 7.02826 14.1529C6.87589 14.3053 6.79028 14.5119 6.79028 14.7274C6.79028 14.9429 6.87589 15.1496 7.02826 15.3019C7.18063 15.4543 7.38729 15.5399 7.60278 15.5399H16.9465C17.162 15.5399 17.3687 15.4543 17.5211 15.3019C17.6734 15.1496 17.759 14.9429 17.759 14.7274C17.759 14.5119 17.6734 14.3053 17.5211 14.1529C17.3687 14.0005 17.162 13.9149 16.9465 13.9149ZM7.5994 11.4774H12.0749C12.1812 11.4774 12.2864 11.4565 12.3846 11.4159C12.4827 11.3752 12.5719 11.3156 12.6471 11.2405C12.7222 11.1653 12.7818 11.0761 12.8225 10.978C12.8631 10.8798 12.8841 10.7746 12.884 10.6683V10.6615C12.884 10.5553 12.8631 10.4501 12.8224 10.3519C12.7818 10.2537 12.7222 10.1645 12.647 10.0894C12.5719 10.0143 12.4827 9.95467 12.3845 9.91401C12.2864 9.87335 12.1812 9.85242 12.0749 9.85242H7.5994C7.38481 9.85242 7.17901 9.93766 7.02727 10.0894C6.87553 10.2411 6.79028 10.4469 6.79028 10.6615V10.6683C6.79028 10.7746 6.81121 10.8798 6.85187 10.9779C6.89254 11.0761 6.95214 11.1653 7.02727 11.2404C7.1024 11.3156 7.1916 11.3752 7.28977 11.4158C7.38793 11.4565 7.49315 11.4774 7.5994 11.4774Z" fill="#8C8C8C"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.png b/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.png
new file mode 100644
index 0000000..10f4d74
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.svg b/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.svg
new file mode 100644
index 0000000..028a088
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/icon_order_selected.svg
@@ -0,0 +1,8 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g id="Group 1321316221">
+<g id="Group 1321316219">
+<path id="Vector" d="M21.9989 6.20825C21.9669 5.55338 21.6873 4.94449 21.2116 4.49381C20.7267 4.03439 20.0844 4 19.4034 4H16.7914L16.7915 2.79167C16.7915 2.5817 16.7037 2.38034 16.5474 2.23187C16.3911 2.08341 16.1792 2 15.9582 2C15.7372 2 15.5252 2.08341 15.3689 2.23187C15.2126 2.38034 15.1248 2.5817 15.1248 2.79167L15.1247 4H8.87489L8.87502 2.79167C8.87502 2.5817 8.78722 2.38034 8.63095 2.23187C8.47467 2.08341 8.26271 2 8.04169 2C7.82068 2 7.60872 2.08341 7.45244 2.23187C7.29616 2.38034 7.20837 2.5817 7.20837 2.79167L7.20823 4H4.60212C3.22092 4 2.07853 4.82277 2.00133 6.15213C2.0004 6.1667 2 6.18127 2 6.19583V18.5118C2 18.5263 2.0004 18.5408 2.00133 18.5555C2.076 19.841 3.16493 20.8908 4.53425 20.9973C4.55692 20.9992 4.57958 21 4.60238 21H19.4036C19.4263 21 19.4489 20.9991 19.4716 20.9973C20.1264 20.9455 20.7412 20.6768 21.2087 20.2381C21.6849 19.7916 21.9656 19.2105 21.9989 18.6021C21.9996 18.5884 22 18.5747 22 18.561V6.24498C21.9999 6.23273 21.9996 6.22048 21.9989 6.20825ZM20.3332 18.5368C20.2991 18.9766 19.8713 19.3641 19.3644 19.4167H4.64132C4.12625 19.3631 3.70439 18.9612 3.66666 18.4864V6.22079C3.70439 5.7392 4.11172 5.36465 4.60225 5.36465H7.20823V6.55215C7.20823 6.76211 7.29603 6.96347 7.45231 7.11194C7.60859 7.26041 7.82055 7.34381 8.04156 7.34381C8.26257 7.34381 8.47453 7.26041 8.63081 7.11194C8.78709 6.96347 8.87489 6.76211 8.87489 6.55215V5.36465H15.1248V6.55215C15.1248 6.76211 15.2126 6.96347 15.3689 7.11194C15.5252 7.26041 15.7372 7.34381 15.9582 7.34381C16.1792 7.34381 16.3911 7.26041 16.5474 7.11194C16.7037 6.96347 16.7915 6.76211 16.7915 6.55215V5.36465H19.4035C19.9032 5.36465 20.3004 5.75098 20.3332 6.26588V18.5368Z" fill="#1D6FE9"/>
+<path id="Exclude" d="M19.5996 4C20.9251 4 22 5.07491 22 6.40039V18.5996C22 19.9251 20.9251 21 19.5996 21H4.40039C3.07491 21 2 19.9251 2 18.5996V6.40039C2 5.07491 3.07491 4 4.40039 4H19.5996ZM7.60254 13.915C7.38718 13.9151 7.18061 14.001 7.02832 14.1533C6.8761 14.3057 6.79004 14.5122 6.79004 14.7275C6.79007 14.9429 6.87605 15.1494 7.02832 15.3018C7.18061 15.454 7.38718 15.5399 7.60254 15.54H16.9463C17.1618 15.54 17.3691 15.4541 17.5215 15.3018C17.6737 15.1494 17.7588 14.9429 17.7588 14.7275C17.7588 14.5122 17.6736 14.3057 17.5215 14.1533C17.3691 14.0009 17.1618 13.915 16.9463 13.915H7.60254ZM7.59961 9.85254C7.38502 9.85254 7.17908 9.9381 7.02734 10.0898C6.87585 10.2415 6.79015 10.4468 6.79004 10.6611V10.668C6.79004 10.774 6.81103 10.8795 6.85156 10.9775C6.8922 11.0757 6.95227 11.1651 7.02734 11.2402C7.10248 11.3154 7.19187 11.3754 7.29004 11.416C7.38815 11.4566 7.49342 11.4775 7.59961 11.4775H12.0752C12.1814 11.4775 12.2866 11.4567 12.3848 11.416C12.4829 11.3754 12.5723 11.3154 12.6475 11.2402C12.7225 11.1651 12.7817 11.0756 12.8223 10.9775C12.8629 10.8794 12.8838 10.7741 12.8838 10.668V10.6611C12.8837 10.555 12.8629 10.4496 12.8223 10.3516C12.7817 10.2537 12.7223 10.1648 12.6475 10.0898C12.5724 10.0147 12.4829 9.95472 12.3848 9.91406C12.2866 9.87342 12.1814 9.85256 12.0752 9.85254H7.59961Z" fill="#1D6FE9"/>
+</g>
+</g>
+</svg>
diff --git a/uniapps/drone-app/src/static/images/tabbar/mainLogo.png b/uniapps/drone-app/src/static/images/tabbar/mainLogo.png
new file mode 100644
index 0000000..9e4425f
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/tabbar/mainLogo.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/images/yx.png b/uniapps/drone-app/src/static/images/yx.png
new file mode 100644
index 0000000..4e5d412
--- /dev/null
+++ b/uniapps/drone-app/src/static/images/yx.png
Binary files differ
diff --git a/uniapps/drone-app/src/static/styles/common.scss b/uniapps/drone-app/src/static/styles/common.scss
new file mode 100644
index 0000000..7ae5e61
--- /dev/null
+++ b/uniapps/drone-app/src/static/styles/common.scss
@@ -0,0 +1,8 @@
+page {
+ font-size: $u-font-base;
+ color: $u-main-color;
+ background-color: $u-bg-color;
+
+ height: 100%;
+
+}
diff --git a/uniapps/drone-app/src/static/styles/theme.scss b/uniapps/drone-app/src/static/styles/theme.scss
new file mode 100644
index 0000000..36756a5
--- /dev/null
+++ b/uniapps/drone-app/src/static/styles/theme.scss
@@ -0,0 +1,63 @@
+// 主题CSS变量
+:root,
+page {
+ // 主色调
+ --theme-primary: #21d59d;
+ --theme-success: #3ed268;
+ --theme-warning: #fe9831;
+ --theme-error: #fa4e62;
+
+ // 文字颜色
+ --theme-main-color: #1b233b;
+ --theme-content-color: #60687e;
+ --theme-tips-color: #7e869a;
+ --theme-light-color: #bdc3d2;
+ --theme-disabled-color: #dce0eb;
+
+ // 背景颜色
+ --theme-bg-color: #ffffff;
+ --theme-bg-color-secondary: #f8f9fa;
+
+ // 边框颜色
+ --theme-border-color: #e9ecef;
+}
+
+.theme-dark {
+ // 主色调
+ --theme-primary: #3c9cff;
+ --theme-success: #5ac725;
+ --theme-warning: #f9ae3d;
+ --theme-error: #f56c6c;
+
+ // 文字颜色
+ --theme-main-color: #ffffff;
+ --theme-content-color: #b0b8c1;
+ --theme-tips-color: #8a8f95;
+ --theme-light-color: #6c757d;
+ --theme-disabled-color: #495057;
+
+ // 背景颜色
+ --theme-bg-color: #1a1a1a;
+ --theme-bg-color-secondary: #2d2d2d;
+}
+
+// 主题工具类
+.theme-bg {
+ background-color: var(--theme-bg-color);
+}
+
+.theme-bg-secondary {
+ background-color: var(--theme-bg-color-secondary);
+}
+
+.theme-text {
+ color: var(--theme-main-color);
+}
+
+.theme-text-content {
+ color: var(--theme-content-color);
+}
+
+.theme-text-tips {
+ color: var(--theme-tips-color);
+}
diff --git a/uniapps/drone-app/src/store/index.js b/uniapps/drone-app/src/store/index.js
new file mode 100644
index 0000000..bc05f9b
--- /dev/null
+++ b/uniapps/drone-app/src/store/index.js
@@ -0,0 +1,27 @@
+import { createPinia } from "pinia"
+// pinia 持久化插件
+import { createPersistedState } from "pinia-plugin-persistedstate"
+
+// 导入子模块
+import useAppStore from "./modules/app"
+import useUserStore from "./modules/user"
+import useMapStore from "./modules/map"
+
+// 安装pinia状态管理插件
+function setupStore (app) {
+ const store = createPinia()
+
+ const piniaPersist = createPersistedState({
+ storage: {
+ getItem: uni.getStorageSync,
+ setItem: uni.setStorageSync
+ }
+ })
+ store.use(piniaPersist)
+
+ app.use(store)
+}
+
+// 导出模块
+export { useAppStore, useUserStore, useMapStore }
+export default setupStore
diff --git a/uniapps/drone-app/src/store/modules/app/index.js b/uniapps/drone-app/src/store/modules/app/index.js
new file mode 100644
index 0000000..b77db8d
--- /dev/null
+++ b/uniapps/drone-app/src/store/modules/app/index.js
@@ -0,0 +1,81 @@
+import { defineStore } from 'pinia'
+import storage from '@/utils/storage'
+
+// 缓存的主题
+const THEME_KEY = 'app-theme'
+
+const useAppStore = defineStore('app', {
+ state: () => ({
+ systemInfo: {}, // 原本 TS: {} as UniApp.GetSystemInfoResult
+ theme: storage.get(THEME_KEY) || 'light',
+ deviceUpdateKey: 0, //设备刷新key
+ jobUpdateKey: 0, //任务刷新key
+ }),
+ getters: {
+ getSystemInfo (state) {
+ return state.systemInfo
+ },
+ getTheme (state) {
+ return state.theme
+ }
+ },
+ actions: {
+ setSystemInfo (info) {
+ this.systemInfo = info
+ },
+ setDeviceUpdateKeyAdd () {
+ console.log(111, this.deviceUpdateKey + 1)
+ this.deviceUpdateKey = this.deviceUpdateKey + 1
+ },
+ setJobUpdateKeyAdd (state, data) {
+ this.deviceUpdateKey = this.deviceUpdateKey + 1
+ },
+ initSystemInfo () {
+ uni.getSystemInfo({
+ success: (res) => {
+ this.setSystemInfo(res)
+ },
+ fail: (err) => {
+ console.error(err)
+ }
+ })
+ },
+ /**
+ * 设置主题
+ */
+ setTheme (theme) {
+ this.theme = theme
+ // 保存到本地存储
+ storage.set(THEME_KEY, this.theme)
+ },
+ checkUpdate () {
+ const updateManager = uni.getUpdateManager()
+ updateManager.onCheckForUpdate((res) => {
+ // 请求完新版本信息的回调
+ console.log(res.hasUpdate)
+ })
+ updateManager.onUpdateReady(() => {
+ uni.showModal({
+ title: '更新提示',
+ content: '新版本已经准备好,是否重启应用?',
+ success (res) {
+ if (res.confirm) {
+ // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
+ updateManager.applyUpdate()
+ }
+ }
+ })
+ })
+ updateManager.onUpdateFailed((res) => {
+ console.error(res)
+ // 新的版本下载失败
+ uni.showToast({
+ title: '更新失败',
+ icon: 'error'
+ })
+ })
+ }
+ }
+})
+
+export default useAppStore
diff --git a/uniapps/drone-app/src/store/modules/map/index.js b/uniapps/drone-app/src/store/modules/map/index.js
new file mode 100644
index 0000000..bdb51bb
--- /dev/null
+++ b/uniapps/drone-app/src/store/modules/map/index.js
@@ -0,0 +1,24 @@
+import {
+ defineStore
+} from 'pinia'
+
+const useMapStore = defineStore('map', {
+ state: () => ({
+ selectMapLayerKey: 1 // 默认展示地图
+ }),
+ actions: {
+ setSelectMapLayerKey(selectMapLayerKey) {
+ this.selectMapLayerKey = selectMapLayerKey
+ },
+ },
+
+ getters: {
+ getSelectMapLayerKey(state) {
+ return state.selectMapLayerKey
+ },
+ },
+
+ persist: true //持久化
+})
+
+export default useMapStore
diff --git a/uniapps/drone-app/src/store/modules/user/index.js b/uniapps/drone-app/src/store/modules/user/index.js
new file mode 100644
index 0000000..67dfd9c
--- /dev/null
+++ b/uniapps/drone-app/src/store/modules/user/index.js
@@ -0,0 +1,23 @@
+import {defineStore} from 'pinia'
+
+const useUserStore = defineStore('user', {
+ state: () => ({
+ userInfo: null // 用户信息
+ }),
+ actions: {
+ setUserInfo(userInfo) {
+ this.userInfo = userInfo
+ },
+ // 重置
+ resetUserStore() {
+ this.$reset()
+ },
+ // 合并
+ mergeUserStore(data) {
+ this.$patch(data)
+ },
+ },
+ persist: true //持久化
+})
+
+export default useUserStore
diff --git a/uniapps/drone-app/src/subPackages/404/index.vue b/uniapps/drone-app/src/subPackages/404/index.vue
new file mode 100644
index 0000000..e5a4b4f
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/404/index.vue
@@ -0,0 +1,48 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-16 11:02:27
+ * @FilePath : \src\subPackages\404\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+-->
+<template>
+ <div class="not-found">
+ <u-navbar left-icon-size="40rpx" @left-click="handleBack" />
+ <u-empty
+ mode="page"
+ text-size="20"
+ text="页面不存在"
+ :icon="errorImage"
+ width="380"
+ height="380"
+ />
+ </div>
+</template>
+
+<script setup>
+import { getAssetsImage } from "@/utils/index.js";
+import { HOME_PATH } from "@/router";
+
+const errorImage = getAssetsImage("/404.png");
+
+function handleBack() {
+ uni.$u.route({
+ type: "switchTab",
+ url: HOME_PATH,
+ });
+}
+</script>
+
+<style lang="scss" scoped>
+.not-found {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ height: 100%;
+ overflow: auto;
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/browser/index.vue b/uniapps/drone-app/src/subPackages/browser/index.vue
new file mode 100644
index 0000000..bd22b80
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/browser/index.vue
@@ -0,0 +1,39 @@
+<!-- 跳转第三方应用 -->
+<template>
+ <view class="content">
+ <!-- WebView组件 -->
+ <web-view :src="webViewUrl"></web-view>
+ </view>
+</template>
+
+<script>
+export default {
+ data() {
+ return {
+ webViewUrl: '' // WebView要加载的URL
+ };
+ },
+ onLoad(options) {
+ // 从导航参数中获取URL
+ if (options.url) {
+ this.webViewUrl = decodeURIComponent(options.url);
+ } else {
+ uni.showToast({
+ title: '未获取到URL',
+ icon: 'none'
+ });
+ // 如果没有URL,可以返回上一页或做其他处理
+ setTimeout(() => {
+ uni.navigateBack();
+ }, 1500);
+ }
+ }
+};
+</script>
+
+<style>
+.content {
+ width: 100%;
+ height: 100%;
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/droneConsole/index.vue b/uniapps/drone-app/src/subPackages/droneConsole/index.vue
new file mode 100644
index 0000000..a947943
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/droneConsole/index.vue
@@ -0,0 +1,111 @@
+<template>
+ <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage"/>
+ <up-toast ref="uNotifyRef"></up-toast>
+</template>
+<script setup>
+import {onHide, onLoad, onShow} from "@dcloudio/uni-app";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import {getEnvObj, getWebViewUrl} from "@/utils/index.js";
+import Recorder from "js-audio-recorder";
+import dayjs from "dayjs";
+import {useUserStore} from "@/store/index.js";
+
+const queryParams = ref({})
+
+const viewUrl = computed(() => {
+ return getWebViewUrl('/DroneConsole', queryParams.value)
+})
+
+function onPostMessage(data) {
+ if (data.type === 'back'){
+ // uni.navigateTo({
+ // url: `/subPackages/inProgress/index?wayLineJobInfoId=${data.taskDetails.id}`
+ // });
+ // #ifdef H5
+ window.history.back()
+ // #endif
+
+ // #ifdef APP-PLUS
+ uni.navigateBack({
+ delta: 1 // 返回的页面数,默认1(返回上一页)
+ });
+ // #endif
+ }
+}
+
+
+// 文件上传demo
+const {VITE_API_BASE_URL} = getEnvObj()
+function uploadUtil(options) {
+ const {formData, file, url} = options
+ return new Promise((resolve, reject) => {
+ let accessToken = useUserStore()?.$state?.userInfo?.access_token;
+ const file = new File([recorder.getWAVBlob()], '.wav')
+ uni.uploadFile({
+ url: `${VITE_API_BASE_URL}${url}`,
+ name: 'file',
+ header: {'Blade-Auth': 'bearer ' + accessToken},
+ file,
+ formData,
+ success: (res) => {
+ const resData = JSON.parse(res.data)
+ if (resData.code === 200 || resData.code === 0) {
+ resolve(res)
+ } else {
+ showToast(resData.message)
+ reject(res)
+ }
+ },
+ fail: (err) => {
+ reject(err)
+ }
+ });
+ })
+}
+
+function showToast(message) {
+ uNotifyRef.value.show({
+ type: 'default',
+ message,
+ });
+}
+
+
+// 保存喊话至广播列表内
+function saveSound(data) {
+ const recorder = 'xxx'
+ const file = new File([recorder?.getWAVBlob()], '.wav')
+ uploadUtil({
+ file,
+ formData: {
+ fileName: 'xxx',
+ sn: 'xxx',
+ },
+ url: '/drone-device-core/speak/api/v1/uploadSpeak'
+ }).then(res => {
+ showToast('保存成功')
+ })
+}
+
+onLoad((options) => {
+ queryParams.value = options
+})
+
+
+onShow(() => {
+ // #ifdef APP-PLUS
+ plus.navigator.setFullscreen(true); // 加入全屏
+ plus.screen.lockOrientation("landscape-primary");//横屏
+ // #endif
+});
+
+onHide(() => {
+ // #ifdef APP-PLUS
+ plus.navigator.setFullscreen(false);
+ plus.screen.lockOrientation("portrait-primary");
+ // #endif
+});
+</script>
+<style scoped lang="scss">
+
+</style>
diff --git a/uniapps/drone-app/src/subPackages/inspectionTask/taskDetails.vue b/uniapps/drone-app/src/subPackages/inspectionTask/taskDetails.vue
new file mode 100644
index 0000000..f623b08
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/inspectionTask/taskDetails.vue
@@ -0,0 +1,59 @@
+<template>
+ <view class="task-details">
+ <view>
+ <web-view
+ ref="sWebViewRef"
+ :src='`${viewUrl}?token=${token}&wayLineJobInfoId=${active.id}`'
+ @message="onPostMessage"
+ @onPostMessage="onPostMessage"
+ />
+ </view>
+ <view>
+ <view>任务内容</view>
+ <view>任务编号:{{taskData.job_info_num }}</view>
+ <view>任务名称:{{ taskData.name }}</view>
+ <view>任务类型:{{ taskData.industry_type_str }}</view>
+ <view>飞行事件:{{ }}</view>
+ <view>所属单位:{{ taskData.dept_name }}</view>
+ <view>所属机巢:{{ taskData.device_names }}</view>
+ <view>任务时间:{{ taskData.cycle_time_value }}</view>
+ <view>任务频次:{{ }}</view>
+ <view>关联算法:{{ }}</view>
+ <view>任务描述:{{ taskData.reason }}</view>
+ </view>
+ </view>
+</template>
+
+<script setup>
+
+import {onHide, onShow} from "@dcloudio/uni-app";
+import {useUserStore} from "@/store/index.js";
+const active = defineModel('active')
+const sWebViewRef = ref(null)
+const viewUrl = 'http://192.168.1.15:5173/drone-app-web-view/#/appTaskDetails'
+const userStore = useUserStore()
+const token = computed(() => userStore?.userInfo?.access_token)
+
+import {onLoad} from "@dcloudio/uni-app";
+
+// const active = defineModel('active')
+// console.log(active.value, '555')
+function onPostMessage(event) {
+ if (event.detail.data[0].type === 'back'){
+ active.value = null
+ }
+}
+// 获取传参
+const taskData = ref({})
+
+onLoad((options)=>{
+ taskData.value = JSON.parse(decodeURIComponent(options.rowItem))
+})
+
+
+</script>
+
+<style scoped lang="scss">
+.task-details {
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/qrCode/index.vue b/uniapps/drone-app/src/subPackages/qrCode/index.vue
new file mode 100644
index 0000000..b8a10a7
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/qrCode/index.vue
@@ -0,0 +1,45 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-10-14 17:43:52
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-19 15:33:48
+ * @FilePath : \src\subPackages\qrCode\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-10-14 17:43:52
+-->
+<template>
+ <view class="page-wrap">
+ <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
+ </view>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+
+const viewUrl = getWebViewUrl("/QrCodeScanner");
+
+const onPostMessage = (data) => {
+ if (data.type === "browser") {
+ // #ifdef MP-WEIXIN
+
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ uni.navigateTo({
+ url:
+ "/subPackages/browser/index?url=" + encodeURIComponent(data.data.url),
+ });
+ // #endif
+ }
+};
+
+onLoad(() => {});
+</script>
+
+<style lang="scss" scoped>
+.page-wrap {
+ font-size: 20px;
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/taskDetail/addTask/index.vue b/uniapps/drone-app/src/subPackages/taskDetail/addTask/index.vue
new file mode 100644
index 0000000..f175785
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/taskDetail/addTask/index.vue
@@ -0,0 +1,85 @@
+<!-- 新建任务 -->
+<template>
+ <WebViewPlus v-if="isApp" :src="`${viewUrl}`" @webMessage="onPostMessage" />
+</template>
+
+<script setup>
+import WebViewPlus from "@/components/WebViewPlus.vue";
+
+import { getWebViewUrl } from "@/utils/index.js";
+import { onHide, onLoad, onShow } from "@dcloudio/uni-app";
+
+// const viewUrl = ref(getWebViewUrl('/addTask'))
+const sWebViewRef = ref(null);
+const viewUrl = ref("");
+
+function onPostMessage(data) {
+ if (data.type === "submitSuccess") {
+ // #ifdef MP-WEIXIN
+ if ("fun" in data && data.fun === "add") {
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ }
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ // console.log('打印新增成功')
+ uni.switchTab({
+ url: "/pages/inspectionTask/index",
+ });
+ // #endif
+
+ // uni.redirectTo({
+ // url: `/pages/inspectionTask/index?addLog=1111`
+ // });
+ }
+}
+
+// onLoad( (options) => {
+// console.log(options, '8888')
+// const sns = options.device_sn
+//
+// });
+const isApp = ref(false);
+
+// #ifdef MP-WEIXIN
+onLoad((options) => {
+ isApp.value = true;
+ let params = {};
+ if ("data" in options) {
+ try {
+ params = JSON.parse(options.data);
+ } catch (e) {
+ console.error(e);
+ }
+ }
+ viewUrl.value = getWebViewUrl("/addTask", params);
+});
+// #endif
+
+// #ifndef MP-WEIXIN
+onShow(() => {
+ isApp.value = true;
+ let params = {};
+ const encodedData = uni.getStorageSync("webview_params");
+ if (encodedData) {
+ try {
+ params = JSON.parse(decodeURIComponent(encodedData));
+ } catch (e) {
+ console.error(e);
+ }
+ }
+ viewUrl.value = getWebViewUrl("/addTask", params);
+});
+// #endif
+
+onHide(() => {
+ isApp.value = false;
+});
+</script>
+
+<style lang="scss" scoped></style>
diff --git a/uniapps/drone-app/src/subPackages/taskDetail/execution/index.vue b/uniapps/drone-app/src/subPackages/taskDetail/execution/index.vue
new file mode 100644
index 0000000..8a11578
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/taskDetail/execution/index.vue
@@ -0,0 +1,55 @@
+<!-- 已执行 -->
+<template>
+ <WebViewPlus v-if="isApp" :src="`${viewUrl}`" @webMessage="onPostMessage"/>
+</template>
+
+<script setup>
+import {onHide, onLoad, onShow} from "@dcloudio/uni-app";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import {getWebViewUrl} from "@/utils/index.js";
+
+const wayLineJobInfoId = ref(null)
+const viewUrl = ref('')
+// const viewUrl = ref(getWebViewUrl('/execution'))
+
+// function onPostMessage(data) {
+// console.log(data, '9999')
+// if (data.type === 'taskDetails'){
+// console.log('4444')
+// uni.switchTab({
+// url: '/subPackages/taskDetail/execution/index'
+// });
+// }
+// }
+function onPostMessage(data) {
+ if (data.type === 'back') {
+ uni.switchTab({
+ url: '/pages/inspectionTask/index'
+ });
+ } else if (data.type === 'control') {
+ uni.redirectTo({
+ url: `/pages/inspectionTask/execution/index?wayLineJobInfoId=${wayLineJobInfoId.value}`
+ });
+ } else if(data.type === 'workid') {
+ uni.navigateTo({
+ url: `/subPackages/workDetail/index?eventNum=${data.eventNum}&wLJobInfoId=${data.wLJobInfoId}¤t=${data.current}`
+ });
+ }
+}
+
+onLoad((options) => {
+ wayLineJobInfoId.value = options.wayLineJobInfoId
+ viewUrl.value = getWebViewUrl('/execution', {wayLineJobInfoId: wayLineJobInfoId.value, waylineJobId: options.waylineJobId, batch_no: options.batch_no})
+})
+const isApp = ref(false)
+onShow(() => {
+ isApp.value = true
+});
+
+onHide(() => {
+ // 如果工单详情返回任务详情,那么tab栏对应的是关联事件一项
+ // isApp.value = false
+});
+</script>
+
+<style lang="scss" scoped></style>
diff --git a/uniapps/drone-app/src/subPackages/taskDetail/inProgress/index.vue b/uniapps/drone-app/src/subPackages/taskDetail/inProgress/index.vue
new file mode 100644
index 0000000..5e1dd5c
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/taskDetail/inProgress/index.vue
@@ -0,0 +1,61 @@
+<template>
+ <WebViewPlus
+ v-if="showComponent"
+ :src="`${viewUrl}`"
+ @webMessage="onPostMessage"
+ />
+</template>
+
+<script setup>
+import WebViewPlus from "@/components/WebViewPlus.vue";
+import { getWebViewUrl } from "@/utils/index.js";
+import { onHide, onLoad, onShow } from "@dcloudio/uni-app";
+
+const wayLineJobInfoId = ref(null);
+const batchNo = ref(null)
+const viewUrl = ref("");
+const showComponent = ref(false);
+function onPostMessage(data) {
+ // #ifdef MP-WEIXIN
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ if (data.type === "back") {
+ uni.switchTab({
+ url: "/pages/inspectionTask/index",
+ });
+ } else if (data.type === "control") {
+ uni.navigateTo({
+ url: `/subPackages/droneConsole/index?wayLineJobInfoId=${wayLineJobInfoId.value}&dockSn=${data.dockSn}&batchNo=${batchNo.value}`,
+ });
+ }
+ // #endif
+}
+
+onLoad((queryParams) => {
+ wayLineJobInfoId.value = queryParams.wayLineJobInfoId;
+ batchNo.value = queryParams.batchNo
+ viewUrl.value = getWebViewUrl("/TaskInProgress", {
+ wayLineJobInfoId: wayLineJobInfoId.value,
+ batchNo: batchNo.value,
+ });
+});
+
+onShow(function () {
+ showComponent.value = true;
+ // #ifdef APP-PLUS
+ plus.navigator.setFullscreen(false);
+ plus.screen.lockOrientation("portrait-primary");
+ // #endif
+});
+
+onHide(() => {
+ showComponent.value = false;
+});
+</script>
+
+<style scoped lang="scss">
+.page-wrap {
+ font-size: 20px;
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/theme/index.vue b/uniapps/drone-app/src/subPackages/theme/index.vue
new file mode 100644
index 0000000..5fb8fa9
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/theme/index.vue
@@ -0,0 +1,100 @@
+<template>
+ <view class="theme-bg min-h-screen p-5" :class="themeClass">
+ <!-- 主题模式选择 -->
+ <view class="mb-5">
+ <view class="theme-text-content mb-5 px-5 text-28rpx font-medium">
+ 主题模式
+ </view>
+ <view class="theme-bg-secondary overflow-hidden rounded-12rpx">
+ <view
+ v-for="option in themeOptions"
+ :key="option.value"
+ class="flex items-center border-b px-5 py-7.5 transition-all duration-300"
+ :class="{ 'theme-bg-secondary': theme === option.value }"
+ @click="setTheme(option.value)"
+ >
+ <view class="mr-5">
+ <view class="text-48rpx c-primary" :class="option.icon" />
+ </view>
+ <view class="flex-1">
+ <text class="theme-text mb-2 block text-28rpx font-medium">
+ {{ option.label }}
+ </text>
+ <text class="theme-text-tips block text-24rpx">
+ {{ option.description }}
+ </text>
+ </view>
+ <view v-if="theme === option.value" class="ml-5">
+ <u-icon name="checkmark" color="var(--theme-primary)" size="20" />
+ </view>
+ </view>
+ </view>
+ </view>
+
+ <!-- 主题预览 -->
+ <view class="mb-5">
+ <view class="theme-text-content mb-5 px-5 text-28rpx font-medium">
+ 主题预览
+ </view>
+ <view class="theme-bg-secondary rounded-12rpx p-7.5">
+ <view class="mb-7.5">
+ <text class="theme-text text-28rpx font-medium"> 示例内容 </text>
+ </view>
+ <view class="mb-7.5 flex flex-wrap gap-5">
+ <view class="min-w-120rpx flex-1">
+ <u-button type="primary" text="主要按钮" />
+ </view>
+ <view class="min-w-120rpx flex-1">
+ <u-button type="success" text="成功按钮" />
+ </view>
+ <view class="min-w-120rpx flex-1">
+ <u-button type="warning" text="警告按钮" />
+ </view>
+ <view class="min-w-120rpx flex-1">
+ <u-button type="error" text="错误按钮" />
+ </view>
+ </view>
+ <view class="flex flex-col gap-2.5">
+ <text class="theme-text text-28rpx font-medium"> 主要文字颜色 </text>
+ <text class="theme-text-content text-26rpx"> 内容文字颜色 </text>
+ <text class="theme-text-tips text-24rpx"> 提示文字颜色 </text>
+ </view>
+ </view>
+ </view>
+
+ <!-- 快速切换按钮 -->
+ <view class="py-5 text-center">
+ <u-button
+ :text="isDark ? '切换到亮色主题' : '切换到暗色主题'"
+ type="primary"
+ @click="toggleTheme"
+ />
+ </view>
+ </view>
+</template>
+
+<script setup>
+import { useTheme } from "@/hooks";
+import { useAppStore } from "@/store";
+
+const { theme, isDark, setTheme, toggleTheme } = useTheme();
+
+const appStore = useAppStore();
+const themeClass = computed(() => `theme-${appStore.theme}`);
+
+// 主题选项
+const themeOptions = [
+ {
+ label: "亮色主题",
+ value: "light",
+ icon: "i-mdi-white-balance-sunny",
+ description: "适合明亮环境使用",
+ },
+ {
+ label: "暗色主题",
+ value: "dark",
+ icon: "i-mdi-moon-and-stars",
+ description: "适合暗光环境使用",
+ },
+];
+</script>
diff --git a/uniapps/drone-app/src/subPackages/userDetail/infos/index.vue b/uniapps/drone-app/src/subPackages/userDetail/infos/index.vue
new file mode 100644
index 0000000..dcde669
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/userDetail/infos/index.vue
@@ -0,0 +1,307 @@
+<template>
+ <view class="container">
+ <div class="avatarBox">
+ <u-avatar @click="uploadAvatar" :src="userInfo.avatar" size="114" mode="aspectFill" />
+ </div>
+ <view class="detailBox">
+ <div class="detailCon">
+ <div class="orderRow">
+ <div class="rowTitle">姓名</div>
+ <div>{{userInfo.realName}}</div>
+ </div>
+ <div class="orderRow">
+ <div class="rowTitle">所属单位</div>
+ <div>{{userInfo.deptName}}</div>
+ </div>
+ <div class="orderRow">
+ <div class="rowTitle">手机号</div>
+ <u-input input-align="right" v-model="userInfo.phone" type="number" placeholder="请输入手机号"
+ class="input-item" />
+
+ </div>
+ <div class="orderRow">
+ <div class="rowTitle">邮箱</div>
+ <u-input input-align="right" v-model="userInfo.email" type="email" placeholder="请输入邮箱"
+ class="input-item" />
+ </div>
+ </div>
+ </view>
+ <view class="btngroup">
+ <u-button color="#AEAEAE" class="custom-style" shape="circle" @click="reset">重置</u-button>
+ <u-button color="#1D6FE9" class="custom-style" shape="circle" @click="submit">提交</u-button>
+ </view>
+ </view>
+</template>
+
+<script setup>
+ import {
+ getEnvObj,
+ getWebViewUrl
+ } from "@/utils/index.js";
+ import {
+ getUserInfo,
+ updateInfo,
+ updatePassword
+ } from '@/api/user/index.js';
+ import {
+ useUserStore
+ } from "@/store/index.js";
+ const userInfo = ref({
+ id: '',
+ avatar: '',
+ realName: '',
+ name: '',
+ phone: '',
+ email: '',
+ deptName: '',
+ });
+ // 校验手机号
+ const validatePhone = () => {
+ const phone = userInfo.value.phone
+ if (!phone) return true
+ const phoneRegex = /^1[3-9]\d{9}$/
+ if (!phoneRegex.test(phone)) {
+
+ uni.showToast({
+ title: '请输入正确的手机号码',
+ icon: 'none',
+ duration: 2000
+ });
+ return false
+ }
+ return true
+ }
+ // 校验邮箱
+ const validateEmail = () => {
+ if (!userInfo.value.email) return true
+ const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/
+ if (!emailRegex.test(userInfo.value.email)) {
+
+ uni.showToast({
+ title: '请输入正确的邮箱地址',
+ icon: 'none',
+ duration: 2000
+ });
+ return false
+ }
+ return true
+ }
+ const getUserInfoData = () => {
+ getUserInfo().then(res => {
+ const user = res.data.data;
+ userInfo.value = {
+ id: user.id,
+ avatar: user.avatar,
+ name: user.name,
+ realName: user.realName,
+ phone: user.phone,
+ email: user.email,
+ deptName: user.deptName,
+ };
+
+ });
+ };
+ const reset = () => {
+ getUserInfoData();
+ };
+
+ const {
+ VITE_API_BASE_URL
+ } = getEnvObj()
+
+ function uploadUtil(options) {
+ const {
+ formData,
+ filePath,
+ url
+ } = options;
+
+ return new Promise((resolve, reject) => {
+ let accessToken = useUserStore()?.$state?.userInfo?.access_token;
+
+ uni.uploadFile({
+ url: `${VITE_API_BASE_URL}${url}`,
+ name: 'file',
+ header: {
+ 'Blade-Auth': 'bearer ' + accessToken
+ },
+ filePath: filePath,
+ formData,
+ success: (res) => {
+ const resData = JSON.parse(res.data)
+ if (resData.code === 200 || resData.code === 0) {
+ resolve(res)
+ } else {
+ showToast(resData.message)
+
+ reject(res)
+ }
+ },
+ fail: (err) => {
+ reject(err)
+ }
+ });
+ })
+ }
+ const uploadAvatar = () => {
+ uni.chooseImage({
+ count: 1,
+ success: (res) => {
+ const tempFile = res.tempFiles[0]; // 获取文件对象
+ const filePath = tempFile.path || tempFile.tempFilePath;
+ if (!filePath) {
+ uni.showToast({
+ title: '获取文件路径失败',
+ icon: 'none'
+ });
+ return;
+ }
+ let fileName = tempFile.name;
+ if (!fileName) {
+ const pathWithoutProtocol = filePath.replace(/^file:\/\//, '');
+ fileName = pathWithoutProtocol.split('/').pop() || 'unknown.png';
+ }
+
+ // 显示加载中
+ uni.showLoading({
+ title: '上传中...'
+ });
+
+ // 上传文件
+ uploadUtil({
+ filePath: filePath,
+ formData: {
+ fileName: fileName,
+ sn: 'avatar_upload'
+ },
+ url: '/blade-resource/oss/endpoint/put-file'
+ }).then(res => {
+ const resData = JSON.parse(res.data);
+ if (resData.code === 200 || resData.code === 0) {
+ // 更新头像显示
+ userInfo.value.avatar = resData.data.link || resData.data.url;
+ uni.hideLoading();
+ uni.showToast({
+ title: '头像上传成功',
+ icon: 'success'
+ });
+ } else {
+ throw new Error(resData.message || '上传失败');
+
+ }
+ }).catch(err => {
+ uni.hideLoading();
+ uni.showToast({
+ title: err.message || '上传失败',
+ icon: 'none'
+ });
+ });
+ }
+ });
+ }
+ const submit = () => {
+ if (!validatePhone() || !validateEmail()) return
+ userInfo.value.name = userInfo.value.realName;
+ updateInfo(userInfo.value).then(res => {
+ if (res.data.code === 200) {
+ uni.showToast({
+ title: '修改信息成功',
+ icon: 'none',
+ duration: 2000
+ });
+ getUserInfoData()
+
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ });
+ getUserInfoData()
+ }
+
+ });
+
+ };
+ onShow(async () => {
+ getUserInfoData()
+ });
+</script>
+
+<style lang="scss" scoped>
+ .container {
+ width: 100%;
+ height: 100%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ }
+ .avatarBox {
+ width: 228rpx;
+ height: 228rpx;
+ margin: 76rpx 0;
+ }
+
+ .detailBox {
+ width: 702rpx;
+ min-height: 430rpx;
+ background: #FFFFFF;
+ border-radius: 12rpx;
+ box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.05);
+
+ .detailCon {
+ padding: 0 24rpx;
+ }
+
+ .orderRow {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 96rpx;
+ border-bottom: 2rpx solid #f5f5f5;
+ color: #7b7b7b;
+
+ .rowTitle {
+ font-family: Source Han Sans CN, Source Han Sans CN;
+ font-weight: 400;
+ font-size: 30rpx;
+ color: #222324;
+ white-space: nowrap;
+ }
+
+ ::v-deep .u-input {
+ border: none !important;
+ background: transparent !important;
+ padding: 0 !important;
+ }
+
+ ::v-deep .u-input__input {
+ border: none !important;
+ box-shadow: none !important;
+ background: transparent !important;
+ padding: 0 !important;
+ margin: 0 !important;
+ height: auto !important;
+ }
+ }
+ }
+
+ .btngroup {
+ display: flex;
+ position: absolute;
+ bottom: 150rpx;
+ }
+
+ :deep(.u-button:first-child) {
+ margin-right: 30rpx !important;
+ }
+
+ .custom-style {
+ width: 276rpx;
+ height: 76rpx;
+ }
+ :deep(.u-button.data-v-461e713c){
+ width: 276rpx !important;
+ height: 76rpx !important;
+ }
+</style>
\ No newline at end of file
diff --git a/uniapps/drone-app/src/subPackages/userDetail/password/index.vue b/uniapps/drone-app/src/subPackages/userDetail/password/index.vue
new file mode 100644
index 0000000..997c02b
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/userDetail/password/index.vue
@@ -0,0 +1,240 @@
+<!-- 修改密码 -->
+<template>
+ <view class="container">
+ <view class="detailBox">
+ <div class="detailCon">
+ <div class="orderRow">
+ <!-- type="password" :password-icon="passwordIcon" -->
+ <div class="rowTitle">原始密码</div>
+ <input type="password" v-model="passwordForm.oldPassword" placeholder="请输入" class="input-item" />
+ </div>
+ <div class="orderRow">
+ <div class="rowTitle">新密码</div>
+ <input type="password" v-model="passwordForm.newPassword" placeholder="请输入" class="input-item" />
+
+ </div>
+ <div class="orderRow">
+ <div class="rowTitle">确认密码</div>
+ <input type="password" v-model="passwordForm.newPassword1" placeholder="请输入" class="input-item" />
+ </div>
+ </div>
+ </view>
+ <view class="btngroup">
+ <u-button color="#AEAEAE" class="custom-style" shape="circle" @click="reset">重置</u-button>
+ <u-button color="#1D6FE9" class="custom-style" shape="circle" @click="submit">提交</u-button>
+ </view>
+ </view>
+</template>
+
+<script setup>
+ import {
+ useUserStore
+ } from "@/store/index.js";
+ import md5 from "js-md5";
+ import {
+ getUserInfo,
+ updateInfo,
+ updatePassword
+ } from '@/api/user/index.js';
+ const passwordIcon = {
+ show: 'fas fa-eye', // 显示密码时的图标
+ hide: 'fas fa-eye-slash' // 隐藏密码时的图标
+ }
+ const userStore = useUserStore();
+ const passwordForm = ref({
+ oldPassword: '',
+ newPassword: '',
+ newPassword1: '',
+ });
+ // 校验密码不能包含中文
+ const validatePasswordNoChinese = (password) => {
+ const chineseRegex = /[\u4e00-\u9fa5]/;
+ if (chineseRegex.test(password)) {
+
+ uni.showToast({
+ title: '密码不能包含中文字符',
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+ return true;
+ };
+ // 校验密码复杂度(长度≥6位,包含字母和数字)
+ const validatePasswordStrength = (password) => {
+ if (password.length < 6) {
+
+ uni.showToast({
+ title: '密码长度不能少于6位',
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+ // const hasLetter = /[a-zA-Z]/.test(password);
+ // const hasNumber = /\d/.test(password);
+ // if (!hasLetter || !hasNumber) {
+ // ElMessage.error('密码需同时包含字母和数字');
+ // return false;
+ // }
+ return true;
+ };
+ const clearForm = () => {
+ passwordForm.value = {
+ oldPassword: '',
+ newPassword: '',
+ newPassword1: '',
+ };
+ };
+ const reset = () => {
+ clearForm();
+ };
+ const submit = () => {
+ // 原始密码校验
+ if (!passwordForm.value.oldPassword) {
+
+ uni.showToast({
+ title: '请输入原始密码',
+ icon: 'none',
+ duration: 2000
+ });
+ return;
+ }
+ // 中文校验
+ if (!validatePasswordNoChinese(passwordForm.value.newPassword)) return;
+ // 新密码校验
+ if (!passwordForm.value.newPassword) {
+
+ uni.showToast({
+ title: '请输入新密码',
+ icon: 'none',
+ duration: 2000
+ });
+ return;
+ }
+ // 确认密码校验
+ if (passwordForm.value.newPassword !== passwordForm.value.newPassword1) {
+
+ uni.showToast({
+ title: '两次输入的新密码不一致',
+ icon: 'none',
+ duration: 2000
+ });
+ return;
+ }
+
+ // 复杂度校验
+ if (!validatePasswordStrength(passwordForm.value.newPassword)) return;
+ updatePassword(md5(passwordForm.value.oldPassword),
+ md5(passwordForm.value.newPassword),
+ md5(passwordForm.value.newPassword1)).then(res => {
+ if (res.data.code === 200) {
+ uni.showToast({
+ title: '修改信息成功',
+ icon: 'none',
+ duration: 2000
+ });
+ clearForm();
+ userStore.setUserInfo(null)
+ uni.removeStorageSync('rememberedUser');
+ uni.reLaunch({
+ url: '/pages/login/index'
+ })
+
+ } else {
+ uni.showToast({
+ title: res.msg,
+ icon: 'none',
+ duration: 2000
+ });
+ }
+
+ });
+
+ };
+ onShow(async () => {
+ clearForm();
+ });
+</script>
+
+<style lang="scss" scoped>
+ .container {
+ width: 100%;
+ height: 100%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ }
+
+ .detailBox {
+ margin-top: 40rpx;
+ width: 702rpx;
+
+ min-height: 326rpx;
+ background: #FFFFFF;
+ border-radius: 12rpx;
+ box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.05);
+
+ .detailCon {
+ padding: 0 24rpx;
+ }
+
+ .orderRow {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 96rpx;
+ border-bottom: 2rpx solid #f5f5f5;
+ color: #7b7b7b;
+
+
+ .rowTitle {
+ font-family: Source Han Sans CN, Source Han Sans CN;
+ font-weight: 400;
+ font-size: 30rpx;
+ color: #222324;
+ white-space: nowrap;
+ }
+
+ input.input-item {
+ text-align: right;
+ border: none !important;
+ background: transparent !important;
+ box-shadow: none !important;
+ padding: 0 !important;
+ margin: 0 !important;
+ height: auto !important;
+
+ outline: none;
+ font-size: 30rpx;
+ color: #222324;
+ font-family: Source Han Sans CN, Source Han Sans CN;
+ }
+ :deep(.uni-input-placeholder) {
+ color: #D5D5D5;
+ }
+ input.input-item::placeholder {
+ font-size: 30rpx;
+ }
+ }
+ }
+
+ .btngroup {
+ display: flex;
+ position: absolute;
+ bottom: 150rpx;
+ }
+
+ :deep(.u-button:first-child) {
+ margin-right: 30rpx !important;
+ }
+
+ .custom-style {
+ width: 276rpx;
+ height: 76rpx;
+ }
+ :deep(.u-button.data-v-461e713c){
+ width: 276rpx !important;
+ height: 76rpx !important;
+ }
+</style>
diff --git a/uniapps/drone-app/src/subPackages/workDetail/addWork/index.vue b/uniapps/drone-app/src/subPackages/workDetail/addWork/index.vue
new file mode 100644
index 0000000..6d9b4a0
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/workDetail/addWork/index.vue
@@ -0,0 +1,52 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-11-13 18:14:52
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-20 16:56:27
+ * @FilePath : \src\subPackages\workDetail\addWork\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-11-13 18:14:52
+-->
+<template>
+ <view>
+ <WebViewPlus
+ @webMessage="onPostMessage"
+ ref="sWebViewRef"
+ :src="`${viewUrl}`"
+ />
+ </view>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import WebViewPlus from "@/components/WebViewPlus.vue";
+const sWebViewRef = ref(null);
+const viewUrl = getWebViewUrl("/addWork");
+
+function onPostMessage(data) {
+ if (data.type === "submitSuccess") {
+ // #ifdef MP-WEIXIN
+ if ("fun" in data && data.fun === "add") {
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ }
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ // uni.switchTab({
+ // url: '/pages/work/index'
+ // });
+ uni.switchTab({
+ url: `/pages/work/index?addLog=111`,
+ });
+ // #endif
+ }
+}
+</script>
+
+<style scoped lang="scss"></style>
diff --git a/uniapps/drone-app/src/subPackages/workDetail/index.vue b/uniapps/drone-app/src/subPackages/workDetail/index.vue
new file mode 100644
index 0000000..8adecf1
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/workDetail/index.vue
@@ -0,0 +1,68 @@
+<!-- 工单详情 - 包含待审核、待处理、处理中、已完成 -->
+<template>
+ <div class="workDetailContainer">
+ <WebViewPlus
+ ref="sWebViewRef"
+ :src="`${viewUrl}`"
+ @webMessage="onPostMessage"
+ />
+ </div>
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import { onLoad } from "@dcloudio/uni-app";
+import { useUserStore } from "@/store/index.js";
+const userStore = useUserStore();
+const userInfo = userStore.userInfo;
+const sWebViewRef = ref(null);
+const viewUrl = ref("");
+onLoad((options) => {
+ const eventNum = options.eventNum;
+ viewUrl.value = getWebViewUrl("/workDetail", {
+ eventNum: eventNum,
+ totalNum: options.totalNum,
+ keyword: options.keyword,
+ aiType: options.aiType,
+ wLJobInfoId: options.wLJobInfoId,
+ status: options.status,
+ current: options.current,
+ });
+});
+
+function onPostMessage(data) {
+ if (data.type === "workback") {
+ // #ifdef MP-WEIXIN
+ if ("fun" in data && data.fun === "add") {
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ }
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ uni.setStorageSync("joinParams", {
+ type: "add",
+ });
+ uni.switchTab({
+ url: `/pages/work/index?addLog=111`,
+ // url: '/pages/work/index'
+ });
+ // #endif
+ } else if (data.type === "jumpMapNav") {
+ // #ifndef MP-WEIXIN
+ uni.navigateTo({
+ url: `/subPackages/workDetail/mapWork/index?currentItem=${data.eventNum}`,
+ });
+ // #endif
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+.workDetailContainer {
+ width: 100%;
+ height: 100%;
+ background-size: cover;
+}
+</style>
diff --git a/uniapps/drone-app/src/subPackages/workDetail/mapWork/index.vue b/uniapps/drone-app/src/subPackages/workDetail/mapWork/index.vue
new file mode 100644
index 0000000..f00d642
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/workDetail/mapWork/index.vue
@@ -0,0 +1,55 @@
+<!--
+ * @Author : yuan
+ * @Date : 2025-10-22 14:59:10
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-19 14:52:54
+ * @FilePath : \src\subPackages\workDetail\mapWork\index.vue
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-10-22 14:59:10
+-->
+<!-- 地图展示 -->
+<template>
+ <WebViewPlus
+ ref="sWebViewRef"
+ :src="`${viewUrl}`"
+ @webMessage="onPostMessage"
+ />
+</template>
+
+<script setup>
+import { getWebViewUrl } from "@/utils/index.js";
+import { onLoad } from "@dcloudio/uni-app";
+
+const sWebViewRef = ref(null);
+const viewUrl = ref("");
+
+onLoad((options) => {
+ const currentItem = options.currentItem;
+ viewUrl.value = getWebViewUrl("/mapWork", { currentItem: currentItem });
+});
+function onPostMessage(data) {
+ // #ifdef MP-WEIXIN
+ // #endif
+
+ // #ifndef MP-WEIXIN
+ if (data.type === "workDetailback") {
+ // uni.navigateTo({
+ // url: '/subPackages/workDetail/index'
+ // });
+ uni.navigateBack({
+ delta: 1,
+ });
+ }
+
+ if (data.type === "browser") {
+ uni.navigateTo({
+ url:
+ "/subPackages/browser/index?url=" + encodeURIComponent(data.data.url),
+ });
+ }
+ // #endif
+}
+</script>
+
+<style lang="scss" scoped></style>
diff --git a/uniapps/drone-app/src/subPackages/workDetail/photoMagnify/index.vue b/uniapps/drone-app/src/subPackages/workDetail/photoMagnify/index.vue
new file mode 100644
index 0000000..fa220aa
--- /dev/null
+++ b/uniapps/drone-app/src/subPackages/workDetail/photoMagnify/index.vue
@@ -0,0 +1,26 @@
+
+<!-- 照片放大 -->
+<template>
+ <view>
+ <WebViewPlus v-if="isApp" ref="sWebViewRef" :src="`${viewUrl}`" @webMessage="onPostMessage"/></view>
+</template>
+
+<script setup>
+ import {getWebViewUrl} from "@/utils/index.js";
+ import { onLoad } from '@dcloudio/uni-app';
+ const viewUrl = ref('')
+ onLoad( (options) => {
+ const eventNum= options.eventNum;
+ viewUrl.value = getWebViewUrl('/photoMagnify', {eventNum:eventNum})
+ });
+ const isApp = ref(false)
+ onShow(() => {
+ isApp.value = true
+ });
+
+ onHide(() => {
+ isApp.value = false
+ });
+</script>
+
+<style lang="scss" scoped></style>
diff --git a/uniapps/drone-app/src/uni.scss b/uniapps/drone-app/src/uni.scss
new file mode 100644
index 0000000..695ed14
--- /dev/null
+++ b/uniapps/drone-app/src/uni.scss
@@ -0,0 +1,55 @@
+@import 'uview-plus/theme.scss';
+@import '@/static/styles/theme.scss';
+
+/* 颜色变量 - 使用CSS变量支持主题切换 */
+
+/* 行为相关颜色 */
+$u-primary: var(--theme-primary);
+$u-primary-dark: var(--theme-primary-dark);
+$u-success: var(--theme-success);
+$u-warning: var(--theme-warning);
+$u-error: var(--theme-error);
+
+/* 文字基本颜色 */
+$u-main-color: var(--theme-main-color);
+$u-content-color: var(--theme-content-color);
+$u-tips-color: var(--theme-tips-color);
+$u-light-color: var(--theme-light-color);
+$u-disabled-color: var(--theme-disabled-color);
+
+/* 背景颜色 */
+$u-bg-color: var(--theme-bg-color);
+
+/* 边框颜色 */
+$u-border-color: var(--theme-border-color);
+
+/* 尺寸变量 */
+
+/* 文字尺寸 */
+$u-font-sm: 24rpx;
+$u-font-base: 28rpx;
+$u-font-lg: 32rpx;
+
+/* 图片尺寸 */
+$u-img-sm: 40rpx;
+$u-img-base: 52rpx;
+$u-img-lg: 80rpx;
+
+/* Border Radius */
+$u-border-radius-sm: 4rpx;
+$u-border-radius-base: 6rpx;
+$u-border-radius-lg: 12rpx;
+$u-border-radius-circle: 50%;
+
+/* 水平间距 */
+$u-spacing-row-sm: 10rpx;
+$u-spacing-row-base: 20rpx;
+$u-spacing-row-lg: 30rpx;
+
+/* 垂直间距 */
+$u-spacing-col-sm: 8rpx;
+$u-spacing-col-base: 16rpx;
+$u-spacing-col-lg: 24px;
+
+/* 透明度 */
+$u-opacity-disabled: 0.3;
diff --git a/uniapps/drone-app/src/utils/common/index.js b/uniapps/drone-app/src/utils/common/index.js
new file mode 100644
index 0000000..a2bb1d8
--- /dev/null
+++ b/uniapps/drone-app/src/utils/common/index.js
@@ -0,0 +1,93 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-10-15 15:52:12
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-12-17 14:09:14
+ * @FilePath : \src\utils\common\index.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-10-15 15:52:12
+ */
+// 小程序更新检测
+import { useUserStore } from "@/store/index.js"
+import configEnv from "@/config/env.js"
+import process from "node:process"
+
+export function mpUpdate () {
+ const updateManager = uni.getUpdateManager()
+ updateManager.onCheckForUpdate(res => {
+ // 请求完新版本信息的回调
+ console.log(res.hasUpdate)
+ })
+ updateManager.onUpdateReady(() => {
+ uni.showModal({
+ title: "更新提示",
+ content: "检测到新版本,是否下载新版本并重启小程序?",
+ success (res) {
+ if (res.confirm) {
+ // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
+ updateManager.applyUpdate()
+ }
+ }
+ })
+ })
+ updateManager.onUpdateFailed(() => {
+ // 新的版本下载失败
+ uni.showModal({
+ title: "已经有新版本了哟~",
+ content: "新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~",
+ showCancel: false
+ })
+ })
+}
+export function getStatusBarHeight () {
+ try {
+ const systemInfo = uni.getWindowInfo()
+
+ // #ifdef APP-PLUS
+ return systemInfo.statusBarHeight || 0
+ // #endif
+
+ // #ifdef MP-WEIXIN
+ return 0
+ // #endif
+
+ // #ifdef H5
+ return systemInfo.statusBarHeight || 0
+ // #endif
+ return systemInfo.statusBarHeight || 0
+ } catch (error) {
+ return 0
+ }
+}
+export function getEnvObj () {
+ return configEnv[__APP_ENV__?.ENV_NAME] || {}
+}
+
+export function getWebViewUrl (targetUrl, otherParams) {
+ const userStore = useUserStore()
+ const url = getEnvObj().VITE_APP_WEBVIEW_URL
+ const uniPlatform = __APP_ENV__.UNI_PLATFORM
+ const statusBarHeight = getStatusBarHeight()
+ // 1. 处理用户参数
+ const userParams = userStore?.userInfo ? JSON.stringify(userStore.userInfo) : '{}'
+ // 2. 构建查询参数字符串
+ let queryString = `params=${encodeURIComponent(userParams)}&topMargin=${statusBarHeight}&uniPlatform=${uniPlatform}`
+
+ // 3. 处理 otherParams 对象
+ if (otherParams && typeof otherParams === 'object') {
+ Object.keys(otherParams).forEach(key => {
+ const value = otherParams[key]
+ if (value !== undefined && value !== null) {
+ queryString += `&${key}=${encodeURIComponent(value)}`
+ }
+ })
+ }
+ // 4. 拼接完整 URL
+ return `${url}${targetUrl}?${queryString}`
+}
+
+export function getAssetsImage (targetUrl) {
+ const url = getEnvObj().VITE_APP_ASSETS_URL
+ return `${url}${targetUrl}`
+}
\ No newline at end of file
diff --git a/uniapps/drone-app/src/utils/index.js b/uniapps/drone-app/src/utils/index.js
new file mode 100644
index 0000000..4b01129
--- /dev/null
+++ b/uniapps/drone-app/src/utils/index.js
@@ -0,0 +1,14 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 10:07:13
+ * @FilePath : \src\utils\index.ts
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+export * from "./common"
+export * from "./modals"
+export * from "./request"
+export * from "./storage"
diff --git a/uniapps/drone-app/src/utils/modals/index.js b/uniapps/drone-app/src/utils/modals/index.js
new file mode 100644
index 0000000..cc76b31
--- /dev/null
+++ b/uniapps/drone-app/src/utils/modals/index.js
@@ -0,0 +1,54 @@
+/**
+ * 轻提示
+ * @param {string} content 提示内容
+ * @param {object} option 配置
+ */
+export function Toast (content, option = {}) {
+ uni.showToast({
+ title: content,
+ icon: "none",
+ mask: true,
+ duration: 1500,
+ ...option
+ })
+}
+
+/**
+ * Loading 提示框
+ * @param {string} content 提示内容
+ */
+export const Loading = {
+ show: (content = "加载中") => {
+ uni.showLoading({
+ title: content,
+ mask: true
+ })
+ },
+ hide: () => {
+ uni.hideLoading()
+ }
+}
+
+/**
+ * Dialog 提示框
+ * @param {string} content 提示内容
+ * @param {object} option 配置
+ */
+export function Dialog (content, option = {}) {
+ option.showCancel = false
+ return new Promise((resolve, reject) => {
+ uni.showModal({
+ title: "温馨提示",
+ content,
+ showCancel: false,
+ confirmColor: "#1677FF",
+ success (res) {
+ if (res.confirm) resolve(res)
+ },
+ fail () {
+ reject(new Error("Alert 调用失败 !"))
+ },
+ ...option
+ })
+ })
+}
diff --git a/uniapps/drone-app/src/utils/request/index.js b/uniapps/drone-app/src/utils/request/index.js
new file mode 100644
index 0000000..bfbfefc
--- /dev/null
+++ b/uniapps/drone-app/src/utils/request/index.js
@@ -0,0 +1,56 @@
+import Request from "uview-plus/libs/luch-request/index"
+import { requestInterceptors, responseInterceptors } from "./interceptors"
+import configEnv from "@/config/env.js";
+import {getEnvObj} from "@/utils/index.js";
+
+const http = new Request()
+
+export function request (config) {
+ return new Promise((resolve, reject) => {
+ http
+ .request(config)
+ .then(res => {
+ resolve(res)
+ })
+ .catch(err => {
+ reject(err)
+ })
+ })
+}
+
+// 引入拦截器配置
+export function setupRequest () {
+ http.setConfig(defaultConfig => {
+ /* defaultConfig 为默认全局配置 */
+ defaultConfig.baseURL = getEnvObj().VITE_API_BASE_URL
+ // #ifdef H5
+ if (import.meta.env.VITE_APP_PROXY === "true") {
+ defaultConfig.baseURL = import.meta.env.VITE_API_PREFIX
+ }
+ // #endif
+ return defaultConfig
+ })
+ requestInterceptors(http)
+ responseInterceptors(http)
+}
+
+
+
+
+export function get (url, config) {
+ return request({ ...config, url, method: "GET" })
+}
+
+export function post (url, config) {
+ return request({ ...config, url, method: "POST" })
+}
+
+export function upload (url, config) {
+ return request({ ...config, url, method: "UPLOAD" })
+}
+
+export function download (url, config) {
+ return request({ ...config, url, method: "DOWNLOAD" })
+}
+
+export default setupRequest
diff --git a/uniapps/drone-app/src/utils/request/interceptors.js b/uniapps/drone-app/src/utils/request/interceptors.js
new file mode 100644
index 0000000..3c889ae
--- /dev/null
+++ b/uniapps/drone-app/src/utils/request/interceptors.js
@@ -0,0 +1,96 @@
+import {
+ useUserStore
+} from "@/store"
+import storage from "@/utils/storage"
+import {
+ showMessage
+} from "./status"
+import website from '@/config/website'
+import {
+ Base64
+} from 'js-base64'
+
+// 防止重复提交
+const repeatSubmit = config => {
+ const requestObj = {
+ url: config.url,
+ data: typeof config.data === "object" ?
+ JSON.stringify(config.data) : config.data,
+ time: new Date().getTime()
+ }
+ const sessionObj = storage.getJSON("sessionObj")
+ if (!sessionObj) {
+ storage.setJSON("sessionObj", requestObj)
+ } else {
+ const s_url = sessionObj.url // 请求地址
+ const s_data = sessionObj.data // 请求数据
+ const s_time = sessionObj.time // 请求时间
+ const interval = 1000 // 间隔时间(ms),小于此时间视为重复提交
+ if (
+ s_data === requestObj.data &&
+ requestObj.time - s_time < interval &&
+ s_url === requestObj.url
+ ) {
+ const message = "数据正在处理,请勿重复提交"
+ console.warn(`[${s_url}]: ${message}`)
+ return Promise.reject(new Error(message))
+ } else {
+ storage.setJSON("sessionObj", requestObj)
+ }
+ }
+}
+
+// 请求拦截器
+function requestInterceptors(http) {
+
+ http.interceptors.request.use((config) => {
+ const {detail} = useUserStore().$state?.userInfo || {}
+ // 假设有token值需要在头部需要携带
+ let accessToken = useUserStore()?.$state?.userInfo?.access_token;
+ if (accessToken) {
+ config.header['Blade-Auth'] = 'bearer ' + accessToken;
+ }
+ if (detail?.areaCode) {
+ config.header['areaCode'] = detail.areaCode
+ }
+ // 安全请求header
+ config.header['Blade-Requested-With'] = 'BladeHttpRequest';
+ // 客户端认证参数
+ config.header['Authorization'] = 'Basic ' + Base64.encode(website.clientId + ':' + website.clientSecret);
+ return config
+ }, config => { // 可使用async await 做异步操作
+ return Promise.reject(config)
+ })
+}
+
+// 响应拦截器
+function responseInterceptors(http) {
+ http.interceptors.response.use((response) => {
+ let res = response
+ const status = res.data.error_code || res.data.code || res.statusCode
+ const message = res?.data?.msg || res?.data?.error_description || res?.data?.message || '系统错误'
+ if (status !== 200) {
+ uni.showToast({title: message, icon: 'none'});
+ return Promise.reject(response);
+ }
+ return response;
+ }, (response) => {
+ let res = response
+ const message = res?.data?.msg || res?.data?.error_description || res?.data?.message || '系统错误'
+ /* 对响应错误做点什么 (statusCode !== 200)*/
+ uni.showToast({title: message, icon: 'none'});
+ if (response.statusCode === 401) {
+ const pages = getCurrentPages()
+ const currentPage = pages[pages.length - 1]
+ uni.reLaunch({
+ url: `/pages/login/index?redirect=/${currentPage.route}`
+ })
+ }
+ return Promise.reject(response)
+ })
+}
+
+export {
+ requestInterceptors,
+ responseInterceptors
+}
diff --git a/uniapps/drone-app/src/utils/request/status.js b/uniapps/drone-app/src/utils/request/status.js
new file mode 100644
index 0000000..3df554e
--- /dev/null
+++ b/uniapps/drone-app/src/utils/request/status.js
@@ -0,0 +1,46 @@
+/**
+ * 根据状态码,生成对应的错误信息
+ * @param {number|string} status 状态码
+ * @returns {string} 错误信息
+ */
+export const showMessage = status => {
+ let message = ""
+ switch (status) {
+ case 400:
+ message = "请求错误(400)"
+ break
+ case 401:
+ message = "未授权,请重新登录(401)"
+ break
+ case 403:
+ message = "拒绝访问(403)"
+ break
+ case 404:
+ message = "请求出错(404)"
+ break
+ case 408:
+ message = "请求超时(408)"
+ break
+ case 500:
+ message = "服务器错误(500)"
+ break
+ case 501:
+ message = "服务未实现(501)"
+ break
+ case 502:
+ message = "网络错误(502)"
+ break
+ case 503:
+ message = "服务不可用(503)"
+ break
+ case 504:
+ message = "网络超时(504)"
+ break
+ case 505:
+ message = "HTTP版本不受支持(505)"
+ break
+ default:
+ message = `连接出错(${status})!`
+ }
+ return `${message},请检查网络或联系管理员!`
+}
diff --git a/uniapps/drone-app/src/utils/storage/index.js b/uniapps/drone-app/src/utils/storage/index.js
new file mode 100644
index 0000000..55db0bf
--- /dev/null
+++ b/uniapps/drone-app/src/utils/storage/index.js
@@ -0,0 +1,22 @@
+const storage = {
+ set (key, value) {
+ if (key !== null && value !== null) uni.setStorageSync(key, value)
+ },
+ get (key) {
+ if (key === null) return null
+
+ return uni.getStorageSync(key)
+ },
+ setJSON (key, jsonValue) {
+ if (jsonValue !== null) this.set(key, JSON.stringify(jsonValue))
+ },
+ getJSON (key) {
+ const value = this.get(key)
+ if (value) return JSON.parse(value)
+ },
+ remove (key) {
+ uni.removeStorageSync(key)
+ }
+}
+
+export default storage
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/GenerateTestUserSig.js b/uniapps/drone-app/src/utils/voiceCallByTX/GenerateTestUserSig.js
new file mode 100644
index 0000000..920e7c2
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/GenerateTestUserSig.js
@@ -0,0 +1,16 @@
+import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
+
+const SDKAPPID = 1600112974;
+const SECRETKEY = '45606bc613e715efb9ec9117fed1fef29411630018c65de7f7d3a5290e9c3b83';
+const EXPIRETIME = 604800;
+
+export function genTestUserSig(userID) {
+ const generator = new LibGenerateTestUserSig(SDKAPPID, SECRETKEY, EXPIRETIME);
+ const userSig = generator.genTestUserSig(userID);
+
+ return {
+ SDKAppID: SDKAPPID,
+ SECRETKEY,
+ userSig,
+ };
+}
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/._lib b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/._lib
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/._lib
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/PaxHeader/lib b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/PaxHeader/lib
new file mode 100644
index 0000000..7b435b5
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/PaxHeader/lib
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCloudImpl.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCloudImpl.js
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCloudImpl.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCode.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCode.js
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcCode.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcDefines.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcDefines.js
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._TrtcDefines.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._constants.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._constants.js
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._constants.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._index.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._index.js
new file mode 100644
index 0000000..18e3ffa
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/._index.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCloudImpl.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCloudImpl.js
new file mode 100644
index 0000000..7c7d184
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCloudImpl.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCode.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCode.js
new file mode 100644
index 0000000..5053c11
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcCode.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcDefines.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcDefines.js
new file mode 100644
index 0000000..2287669
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/TrtcDefines.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/constants.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/constants.js
new file mode 100644
index 0000000..7683ec0
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/constants.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/index.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/index.js
new file mode 100644
index 0000000..2305c4a
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/PaxHeader/index.js
Binary files differ
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCloudImpl.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCloudImpl.js
new file mode 100644
index 0000000..1d87a4b
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCloudImpl.js
@@ -0,0 +1,790 @@
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+import { NAME } from './constants.js';
+import { TRTCRoleType, TRTCAudioQuality, TRTCVideoRotation, TRTCVideoFillMode, TRTCVideoMirrorType, TRTCVideoStreamType, TRTCAppScene, TRTCAudioRoute, TRTCBeautyStyle, } from './TrtcDefines.js';
+import TrtcError, { TXLiteJSError, generateError_ } from './TrtcCode.js';
+const TrtcNativeTrtcCloudModule = uni.requireNativePlugin('TRTCCloudUniPlugin-TRTCCloudImpl');
+const TXAudioEffectManagerModule = uni.requireNativePlugin('TRTCCloudUniPlugin-TRTCCloudImpl-TXAudioEffectManagerModule');
+const TrtcEvent = uni.requireNativePlugin('globalEvent');
+let trtcCloud = null; // trtcCloud 单例
+export default class TrtcCloudImpl {
+ constructor() {
+ this.listenersMap_ = new Map();
+ }
+ static _createInstance() {
+ try {
+ if (trtcCloud) {
+ return trtcCloud;
+ }
+ TrtcNativeTrtcCloudModule.sharedInstance();
+ trtcCloud = new TrtcCloudImpl();
+ return trtcCloud;
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ static _getInstance() {
+ if (trtcCloud) {
+ return trtcCloud;
+ }
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_OPERATION,
+ message: 'get trtcCloud failed, please create trtcCloud first',
+ });
+ }
+ static _destroyInstance() {
+ try {
+ trtcCloud = null;
+ TrtcNativeTrtcCloudModule.destroySharedInstance();
+ }
+ catch (error) {
+ throw new TrtcError({
+ code: error.code || TXLiteJSError.UNKNOWN,
+ message: error.message,
+ name: error.name,
+ });
+ }
+ }
+ // 截图保存
+ // async saveImage_(base64Data) {
+ // return new Promise((resolve, reject) => {
+ // let bitmap = new plus.nativeObj.Bitmap();
+ // bitmap.loadBase64Data(base64Data, () => {
+ // const url = "_doc/" + new Date().getTime() + ".png"; // url为时间戳命名方式
+ // console.log('saveHeadImgFile', url);
+ // bitmap.save(url, { overwrite: true }, (i) => {
+ // uni.saveImageToPhotosAlbum({
+ // filePath: url,
+ // success: function() {
+ // uni.showToast({
+ // title: '图片保存成功',
+ // icon: 'none'
+ // })
+ // bitmap.clear();
+ // resolve({ code: 0, message: '图片保存成功' });
+ // }
+ // });
+ // }, (e) => {
+ // uni.showToast({
+ // title: '图片保存失败, 请重新截图',
+ // icon: 'none'
+ // })
+ // bitmap.clear();
+ // resolve({ code: -1, message: '图片保存失败, 请重新截图' });
+ // });
+ // });
+ // });
+ // }
+ on(event, callback) {
+ if (typeof event !== NAME.STRING || typeof callback !== NAME.FUNCTION) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the on method parameter types. event type is a ${typeof event}; callback type is a ${typeof callback}`,
+ });
+ }
+ const nativeListener = (res) => __awaiter(this, void 0, void 0, function* () {
+ const { data = [] } = res;
+ const code = data[0];
+ const message = data[1];
+ const extraInfo = data[2];
+ switch (event) {
+ case 'onEnterRoom': {
+ const result = code;
+ callback(result);
+ break;
+ }
+ case 'onExitRoom': {
+ const reason = code;
+ callback(reason);
+ break;
+ }
+ case 'onFirstVideoFrame': {
+ const userId = code;
+ const streamType = data[1];
+ const width = data[2];
+ const height = data[3];
+ callback({ userId, streamType, width, height });
+ break;
+ }
+ case 'onFirstAudioFrame': {
+ const userId = code;
+ callback(userId);
+ break;
+ }
+ case 'onMicDidReady': {
+ callback();
+ break;
+ }
+ case 'onCameraDidReady': {
+ callback();
+ break;
+ }
+ case 'onNetworkQuality': {
+ const localQuality = data[0];
+ const remoteQuality = data[1];
+ callback({ localQuality, remoteQuality });
+ break;
+ }
+ case 'onRemoteUserEnterRoom': {
+ const userId = code;
+ callback(userId);
+ break;
+ }
+ case 'onRemoteUserLeaveRoom': {
+ const userId = code;
+ const reason = message;
+ callback({ userId, reason });
+ break;
+ }
+ case 'onSendFirstLocalAudioFrame': {
+ callback();
+ break;
+ }
+ case 'onSendFirstLocalVideoFrame': {
+ const streamType = code;
+ callback(streamType);
+ break;
+ }
+ case 'onStatistics': {
+ const statics = data[0];
+ callback(statics);
+ break;
+ }
+ case 'onUserAudioAvailable': {
+ const userId = code;
+ const available = message;
+ callback({ userId, available });
+ break;
+ }
+ case 'onUserVideoAvailable': {
+ const userId = code;
+ const available = message;
+ callback({ userId, available });
+ break;
+ }
+ case 'onUserVoiceVolume': {
+ const userVolumes = data[0];
+ const totalVolume = data[1];
+ callback({ userVolumes, totalVolume });
+ break;
+ }
+ case 'onSwitchRole': {
+ callback({ code, message });
+ break;
+ }
+ case 'onScreenCaptureStarted': {
+ callback({ code, message });
+ break;
+ }
+ case 'onScreenCapturePaused': {
+ callback({ code, message });
+ break;
+ }
+ case 'onScreenCaptureResumed': {
+ callback({ code, message });
+ break;
+ }
+ case 'onScreenCaptureStopped': {
+ callback({ code, message });
+ break;
+ }
+ case 'onUserSubStreamAvailable': {
+ const userId = code;
+ const available = message;
+ callback({ userId, available });
+ break;
+ }
+ case 'onSnapshotComplete': {
+ // base64 直接保存到本地图库
+ // const { code: snapShotCode, message: msg } = await this.saveImage_(code);
+ // callback({ snapShotCode, message: msg });
+ callback({ base64Data: code, message });
+ break;
+ }
+ case 'onUserVideoSizeChanged': {
+ callback(data);
+ break;
+ }
+ case 'onStart': {
+ callback({ id: code, errCode: message });
+ break;
+ }
+ case 'onPlayProgress': {
+ callback({ id: code, curPtsMS: message, durationMS: extraInfo });
+ break;
+ }
+ case 'onComplete': {
+ callback({ id: code, errCode: message });
+ break;
+ }
+ case 'onConnectOtherRoom': {
+ // 拿不到 userid, 为了和 native 参数保持一致,所以空字符串代替
+ callback({ userId: '', errCode: code, errMsg: message });
+ break;
+ }
+ case 'onDisconnectOtherRoom': {
+ callback({ errCode: code, errMsg: message });
+ break;
+ }
+ case 'onError': {
+ console.error(`onError: ${code}, ${message}, ${extraInfo}`);
+ callback(generateError_({ message }, code, extraInfo));
+ break;
+ }
+ case 'onRecvCustomCmdMsg': {
+ const userId = code;
+ const cmdID = data[1] || 0;
+ const seq = data[2] || 0;
+ const message = data[3] || "";
+ console.error(`onRecvCustomCmdMsg: ${userId}, ${cmdID}, ${seq}, ${message}`);
+ callback({ userId, cmdID, seq, message });
+ break;
+ }
+ default: {
+ callback({ code, message, extraInfo });
+ }
+ }
+ });
+ this.listenersMap_.set(event, nativeListener); // 多次设置同一个事件时,后面的 callback 覆盖前面
+ TrtcEvent.addEventListener(event, nativeListener);
+ }
+ off(event) {
+ if (typeof event !== NAME.STRING) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the off method parameter types. event type is a ${typeof event} not a ${NAME.STRING}`,
+ });
+ }
+ try {
+ if (event === '*') {
+ this.listenersMap_.forEach((value, key) => {
+ TrtcEvent.removeEventListener(key, value);
+ });
+ this.listenersMap_.clear();
+ }
+ else {
+ TrtcEvent.removeEventListener(event, this.listenersMap_.get(event));
+ this.listenersMap_.delete(event);
+ }
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ enterRoom(params, scene) {
+ if (scene !== TRTCAppScene.TRTCAppSceneVideoCall && scene !== TRTCAppScene.TRTCAppSceneLIVE && scene !== TRTCAppScene.TRTCAppSceneAudioCall && scene !== TRTCAppScene.TRTCAppSceneVoiceChatRoom) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the enterRoom method parameters. scene is not of TRTCAppScene`,
+ });
+ }
+ try {
+ const enterRoomParams = Object.assign(Object.assign({}, params), { role: params.role || TRTCRoleType.TRTCRoleAnchor, appScene: scene });
+ TrtcNativeTrtcCloudModule.enterRoom(enterRoomParams);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ exitRoom() {
+ try {
+ TrtcNativeTrtcCloudModule.exitRoom();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ connectOtherRoom(params) {
+ try {
+ TrtcNativeTrtcCloudModule.connectOtherRoom(params);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ disconnectOtherRoom() {
+ try {
+ TrtcNativeTrtcCloudModule.disconnectOtherRoom();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ switchRole(role) {
+ if (role !== TRTCRoleType.TRTCRoleAnchor && role !== TRTCRoleType.TRTCRoleAudience) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the switchRole method parameter. role is not of TRTCRoleType`,
+ });
+ }
+ try {
+ role && TrtcNativeTrtcCloudModule.switchRole(role);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ startLocalPreview(isFrontCamera = true, viewId) {
+ if (typeof isFrontCamera !== NAME.BOOLEAN || !viewId || typeof viewId !== NAME.STRING) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the startLocalPreview method parameters`,
+ });
+ }
+ try {
+ let param = { isFrontCamera: !!isFrontCamera };
+ param = viewId ? Object.assign(Object.assign({}, param), { userId: viewId }) : param;
+ TrtcNativeTrtcCloudModule.startLocalPreview(param);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setVideoEncoderParam(param) {
+ try {
+ TrtcNativeTrtcCloudModule.setVideoEncoderParam(param);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ stopLocalPreview() {
+ try {
+ TrtcNativeTrtcCloudModule.stopLocalPreview();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ switchCamera(isFrontCamera) {
+ if (typeof isFrontCamera !== NAME.BOOLEAN) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the switchCamera method parameter`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.switchCamera(isFrontCamera);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setLocalRenderParams(params) {
+ try {
+ const { rotation = TRTCVideoRotation.TRTCVideoRotation_0, fillMode = TRTCVideoFillMode.TRTCVideoFillMode_Fill, mirrorType = TRTCVideoMirrorType.TRTCVideoMirrorType_Auto } = params;
+ TrtcNativeTrtcCloudModule.setLocalRenderParams({
+ rotation,
+ fillMode,
+ mirrorType,
+ });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ muteLocalVideo(streamType, mute) {
+ if (streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub || typeof mute !== NAME.BOOLEAN) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the muteLocalVideo method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.muteLocalVideo({ streamType, mute: !!mute });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ startRemoteView(userId, streamType, viewId) {
+ if (!userId || streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSmall && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub || !viewId) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the startRemoteView method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.startRemoteView({ userId, streamType, viewId });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ stopRemoteView(userId, streamType) {
+ if (!userId || streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSmall && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the stopRemoteView method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.stopRemoteView({ userId, streamType });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // 远端渲染设置
+ setRemoteRenderParams(userId, streamType, params) {
+ try {
+ if (!userId || (streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub)) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the snapshotVideo method parameters`,
+ });
+ }
+ const { rotation = TRTCVideoRotation.TRTCVideoRotation_0, fillMode = TRTCVideoFillMode.TRTCVideoFillMode_Fill, mirrorType = TRTCVideoMirrorType.TRTCVideoMirrorType_Auto } = params;
+ TrtcNativeTrtcCloudModule.setRemoteRenderParams({
+ userId,
+ streamType,
+ rotation,
+ fillMode,
+ mirrorType
+ });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // 设置视频编码器输出的画面方向
+ setVideoEncoderRotation(rotation) {
+ if (typeof rotation !== NAME.NUMBER) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setVideoEncoderRotation method parameter`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setVideoEncoderRotation(rotation);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // 设置编码器输出的画面镜像模式
+ setVideoEncoderMirror(mirror) {
+ if (typeof mirror !== NAME.BOOLEAN) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setVideoEncoderMirror method parameter`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setVideoEncoderMirror(mirror);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // 设置重力感应的适配模式
+ setGSensorMode(mode) {
+ if (typeof mode !== NAME.NUMBER) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setGSensorMode method parameter`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setGSensorMode(mode);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // 截图
+ snapshotVideo(userId, streamType, sourceType) {
+ if (streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the snapshotVideo method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.snapshotVideo({ userId: userId || null, streamType, sourceType });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ startLocalAudio(quality = TRTCAudioQuality.TRTCAudioQualityDefault) {
+ if (quality !== TRTCAudioQuality.TRTCAudioQualitySpeech && quality !== TRTCAudioQuality.TRTCAudioQualityDefault && quality !== TRTCAudioQuality.TRTCAudioQualityMusic) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the startLocalAudio method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.startLocalAudio(quality);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ stopLocalAudio() {
+ try {
+ TrtcNativeTrtcCloudModule.stopLocalAudio();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ muteLocalAudio(mute) {
+ if (typeof mute !== NAME.BOOLEAN) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the muteLocalAudio method parameters, mute type is a ${typeof mute} not a ${NAME.BOOLEAN}`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.muteLocalAudio(!!mute);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ muteRemoteAudio(userId, mute) {
+ if (typeof mute !== NAME.BOOLEAN || !userId) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the muteRemoteAudio method parameters`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.muteRemoteAudio({ userId, mute: !!mute });
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ muteAllRemoteAudio(mute) {
+ if (typeof mute !== NAME.BOOLEAN) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the muteAllRemoteAudio method parameters, mute type is a ${typeof mute} not a ${NAME.BOOLEAN}`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.muteAllRemoteAudio(!!mute);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setAudioRoute(route) {
+ if (route !== TRTCAudioRoute.TRTCAudioRouteSpeaker && route !== TRTCAudioRoute.TRTCAudioRouteEarpiece) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setAudioRoute method parameter, route is not of TRTCAudioRoute`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setAudioRoute(route);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ enableAudioVolumeEvaluation(interval) {
+ if (typeof interval !== NAME.NUMBER) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the enableAudioVolumeEvaluation method parameter, interval type is a ${typeof interval} not a ${NAME.NUMBER}`,
+ });
+ }
+ try {
+ interval > 0 && TrtcNativeTrtcCloudModule.enableAudioVolumeEvaluation(interval);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // ///////////////////////////////////////////////////////////////////////////////
+ //
+ // 美颜 + 水印
+ //
+ // ///////////////////////////////////////////////////////////////////////////////
+ setBeautyStyle(beautyStyle) {
+ if (beautyStyle !== TRTCBeautyStyle.TRTCBeautyStyleSmooth && beautyStyle !== TRTCBeautyStyle.TRTCBeautyStyleNature && beautyStyle !== TRTCBeautyStyle.TRTCBeautyStylePitu) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setBeautyStyle method parameter, beautyStyle is not of TRTCBeautyStyle`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setBeautyStyle(beautyStyle);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setBeautyLevel(beautyLevel) {
+ if (typeof beautyLevel !== NAME.NUMBER || (beautyLevel < 0 || beautyLevel > 9)) {
+ throw new TrtcError({
+ code: TXLiteJSError.INVALID_PARAMETER,
+ message: `${NAME.LOG_PREFIX} please check the setBeautyLevel method parameter, beautyLevel should in the range 0-9`,
+ });
+ }
+ try {
+ TrtcNativeTrtcCloudModule.setBeautyLevel(beautyLevel);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // ///////////////////////////////////////////////////////////////////////////////
+ //
+ // 背景音效
+ //
+ // ///////////////////////////////////////////////////////////////////////////////
+ startPlayMusic(musicParam) {
+ try {
+ const { id = 0 } = musicParam || {};
+ TXAudioEffectManagerModule.startPlayMusic(Object.assign(Object.assign({}, musicParam), { ID: id })); // v1.2.0 的 iOS 解析的是 ID, v1.2.1 插件进行了修复
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ stopPlayMusic(id) {
+ try {
+ TXAudioEffectManagerModule.stopPlayMusic(id);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ pausePlayMusic(id) {
+ try {
+ TXAudioEffectManagerModule.pausePlayMusic(id);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ resumePlayMusic(id) {
+ try {
+ TXAudioEffectManagerModule.resumePlayMusic(id);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ // ///////////////////////////////////////////////////////////////////////////////
+ //
+ // 屏幕分享
+ //
+ // ///////////////////////////////////////////////////////////////////////////////
+ setSubStreamEncoderParam(param) {
+ try {
+ TrtcNativeTrtcCloudModule.setSubStreamEncoderParam(param);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ startScreenCapture(streamType = TRTCVideoStreamType.TRTCVideoStreamTypeSub, encParams = {}, shareParams = {}) {
+ try {
+ let platform = uni.getSystemInfoSync().platform;
+ if ((streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeSub && streamType !== TRTCVideoStreamType.TRTCVideoStreamTypeBig)) {
+ streamType = TRTCVideoStreamType.TRTCVideoStreamTypeSub;
+ }
+ const { enableForegroundService = true, appGroup } = shareParams; // 默认开启前台服务, 避免退后台后进程被杀
+ const screenCaptureParams = Object.assign({ streamType }, encParams);
+ if (platform === NAME.ANDROID) {
+ TrtcNativeTrtcCloudModule.startScreenCapture(Object.assign(Object.assign({}, screenCaptureParams), { enableForegroundService }));
+ }
+ if (platform === NAME.IOS) {
+ if (typeof appGroup === 'string' && appGroup.length) {
+ // 开始全系统的屏幕分享(仅支持 iOS 11.0 及以上系统)
+ const params = { streamType, encParams, appGroup };
+ TrtcNativeTrtcCloudModule.startScreenCaptureByReplaykit(params);
+ }
+ else {
+ // 开始应用内的屏幕分享(仅支持 iOS 13.0 及以上系统)
+ TrtcNativeTrtcCloudModule.startScreenCaptureInApp(screenCaptureParams);
+ }
+ }
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ stopScreenCapture() {
+ try {
+ TrtcNativeTrtcCloudModule.stopScreenCapture();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ pauseScreenCapture() {
+ try {
+ TrtcNativeTrtcCloudModule.pauseScreenCapture();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ resumeScreenCapture() {
+ try {
+ TrtcNativeTrtcCloudModule.resumeScreenCapture();
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ callExperimentalAPI(params) {
+ try {
+ TrtcNativeTrtcCloudModule.callExperimentalAPI(params);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setSystemVolumeType(type) {
+ try {
+ TrtcNativeTrtcCloudModule.setSystemVolumeType(type);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ setVideoMuteImage(fps, image) {
+ const params = {
+ fps,
+ filePath: image,
+ };
+ try {
+ TrtcNativeTrtcCloudModule.setVideoMuteImage(params);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ enableEncSmallVideoStream(enable, smallVideoEncParam) {
+ const params = Object.assign({ enable }, smallVideoEncParam);
+ try {
+ TrtcNativeTrtcCloudModule.enableEncSmallVideoStream(params);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+ sendCustomCmdMsg(params) {
+ try {
+ TrtcNativeTrtcCloudModule.sendCustomCmdMsg(params);
+ }
+ catch (error) {
+ throw generateError_(error);
+ }
+ }
+}
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCode.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCode.js
new file mode 100644
index 0000000..ced05a9
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcCode.js
@@ -0,0 +1,612 @@
+import { NAME, errorCodeUrl } from './constants.js';
+/**
+ * @namespace ErrorCode
+ *
+ * @description 错误码、警告码和事件列表
+ */
+/////////////////////////////////////////////////////////////////////////////////
+//
+// (一)错误码(严重)
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * @memberof ErrorCode
+ * @typedef 错误码(严重)
+ * @description SDK 错误码(严重)对照表
+ * | 符号 | 值 | 含义 |
+ * |---|---|---|
+ * |ERR_NULL|0|无错误|
+ * |ERR_ROOM_ENTER_FAIL|-3301|进入房间失败|
+ * |ERR_ENTER_ROOM_PARAM_NULL|-3316|进房参数为空,请检查 enterRoom:appScene: 接口调用是否传入有效的 param|
+ * |ERR_SDK_APPID_INVALID|-3317|进房参数 sdkAppId 错误|
+ * |ERR_ROOM_ID_INVALID|-3318|进房参数 roomId 错误|
+ * |ERR_USER_ID_INVALID|-3319|进房参数 userID 不正确|
+ * |ERR_USER_SIG_INVALID|-3320|进房参数 userSig 不正确|
+ * |ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT|-3308|请求进房超时,请检查网络|
+ * |ERR_SERVER_INFO_SERVICE_SUSPENDED|-100013|服务不可用。请检查:套餐包剩余分钟数是否大于0,腾讯云账号是否欠费|
+ * |ERR_ROOM_REQUEST_QUIT_ROOM_TIMEOUT|-3325|请求退房超时|
+ * |ERR_CAMERA_START_FAIL|-1301|打开摄像头失败,例如在 Windows 或 Mac 设备,摄像头的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
+ * |ERR_CAMERA_NOT_AUTHORIZED|-1314|摄像头设备未授权,通常在移动设备出现,可能是权限被用户拒绝了|
+ * |ERR_CAMERA_SET_PARAM_FAIL|-1315|摄像头参数设置出错(参数不支持或其它)|
+ * |ERR_CAMERA_OCCUPY|-1316|摄像头正在被占用中,可尝试打开其他摄像头|
+ * |ERR_MIC_START_FAIL|-1302|打开麦克风失败,例如在 Windows 或 Mac 设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
+ * |ERR_MIC_NOT_AUTHORIZED|-1317|麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了|
+ * |ERR_MIC_SET_PARAM_FAIL|-1318|麦克风设置参数失败|
+ * |ERR_MIC_OCCUPY|-1319|麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败|
+ * |ERR_MIC_STOP_FAIL|-1320|停止麦克风失败|
+ * |ERR_SPEAKER_START_FAIL|-1321|打开扬声器失败,例如在 Windows 或 Mac 设备,扬声器的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
+ * |ERR_SPEAKER_SET_PARAM_FAIL|-1322|扬声器设置参数失败|
+ * |ERR_SPEAKER_STOP_FAIL|-1323|停止扬声器失败|
+ * |ERR_SCREEN_CAPTURE_START_FAIL|-1308|开始录屏失败,如果在移动设备出现,可能是权限被用户拒绝了,如果在 Windows 或 Mac 系统的设备出现,请检查录屏接口的参数是否符合要求|
+ * |ERR_SCREEN_CAPTURE_UNSURPORT|-1309|录屏失败,在 Android 平台,需要5.0以上的系统|
+ * |ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_SUB_VIDEO|-102015|没有权限上行辅路|
+ * |ERR_SERVER_CENTER_ANOTHER_USER_PUSH_SUB_VIDEO|-102016|其他用户正在上行辅路|
+ * |ERR_VIDEO_ENCODE_FAIL|-1303|视频帧编码失败,例如 iOS 设备切换到其他应用时,硬编码器可能被系统释放,再切换回来时,硬编码器重启前,可能会抛出|
+ * |ERR_UNSUPPORTED_RESOLUTION|-1305|不支持的视频分辨率|
+ * |ERR_AUDIO_ENCODE_FAIL|-1304|音频帧编码失败,例如传入自定义音频数据,SDK 无法处理|
+ * |ERR_UNSUPPORTED_SAMPLERATE|-1306|不支持的音频采样率|
+ * |ERR_PIXEL_FORMAT_UNSUPPORTED|-1327|设置的 pixel format 不支持|
+ * |ERR_BUFFER_TYPE_UNSUPPORTED|-1328|设置的 buffer type 不支持|
+ * |ERR_PUBLISH_CDN_STREAM_REQUEST_TIME_OUT|-3321|旁路转推请求超时|
+ * |ERR_CLOUD_MIX_TRANSCODING_REQUEST_TIME_OUT|-3322|云端混流请求超时|
+ * |ERR_PUBLISH_CDN_STREAM_SERVER_FAILED|-3323|旁路转推回包异常|
+ * |ERR_CLOUD_MIX_TRANSCODING_SERVER_FAILED|-3324|云端混流回包异常|
+ * |ERR_ROOM_REQUEST_START_PUBLISHING_TIMEOUT|-3333|开始向腾讯云的直播 CDN 推流信令超时|
+ * |ERR_ROOM_REQUEST_START_PUBLISHING_ERROR|-3334|开始向腾讯云的直播 CDN 推流信令异常|
+ * |ERR_ROOM_REQUEST_STOP_PUBLISHING_TIMEOUT|-3335|停止向腾讯云的直播 CDN 推流信令超时|
+ * |ERR_ROOM_REQUEST_STOP_PUBLISHING_ERROR|-3336|停止向腾讯云的直播 CDN 推流信令异常|
+ * |ERR_ROOM_REQUEST_CONN_ROOM_TIMEOUT|-3326|请求连麦超时|
+ * |ERR_ROOM_REQUEST_DISCONN_ROOM_TIMEOUT|-3327|请求退出连麦超时|
+ * |ERR_ROOM_REQUEST_CONN_ROOM_INVALID_PARAM|-3328|无效参数|
+ * |ERR_CONNECT_OTHER_ROOM_AS_AUDIENCE|-3330|当前是观众角色,不能请求或断开跨房连麦,需要先 switchRole() 到主播|
+ * |ERR_SERVER_CENTER_CONN_ROOM_NOT_SUPPORT|-102031|不支持跨房间连麦|
+ * |ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_NUM|-102032|达到跨房间连麦上限|
+ * |ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_RETRY_TIMES|-102033|跨房间连麦重试次数耗尽|
+ * |ERR_SERVER_CENTER_CONN_ROOM_REQ_TIMEOUT|-102034|跨房间连麦请求超时|
+ * |ERR_SERVER_CENTER_CONN_ROOM_REQ|-102035|跨房间连麦请求格式错误|
+ * |ERR_SERVER_CENTER_CONN_ROOM_NO_SIG|-102036|跨房间连麦无签名|
+ * |ERR_SERVER_CENTER_CONN_ROOM_DECRYPT_SIG|-102037|跨房间连麦签名解密失败|
+ * |ERR_SERVER_CENTER_CONN_ROOM_NO_KEY|-102038|未找到跨房间连麦签名解密密钥|
+ * |ERR_SERVER_CENTER_CONN_ROOM_PARSE_SIG|-102039|跨房间连麦签名解析错误|
+ * |ERR_SERVER_CENTER_CONN_ROOM_INVALID_SIG_TIME|-102040|跨房间连麦签名时间戳错误|
+ * |ERR_SERVER_CENTER_CONN_ROOM_SIG_GROUPID|-102041|跨房间连麦签名不匹配|
+ * |ERR_SERVER_CENTER_CONN_ROOM_NOT_CONNED|-102042|本房间无连麦|
+ * |ERR_SERVER_CENTER_CONN_ROOM_USER_NOT_CONNED|-102043|本用户未发起连麦|
+ * |ERR_SERVER_CENTER_CONN_ROOM_FAILED|-102044|跨房间连麦失败|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CANCEL_FAILED|-102045|取消跨房间连麦失败|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_ROOM_NOT_EXIST|-102046|被连麦房间不存在|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_REACH_MAX_ROOM|-102047|被连麦房间达到连麦上限|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_NOT_EXIST|-102048|被连麦用户不存在|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_DELETED|-102049|被连麦用户已被删除|
+ * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_FULL|-102050|被连麦用户达到资源上限|
+ * |ERR_SERVER_CENTER_CONN_ROOM_INVALID_SEQ|-102051|连麦请求序号错乱|
+ */
+export const TXLiteAVError = {
+ /** 无错误 */
+ ERR_NULL: 0,
+ /** 进入房间失败 */
+ ERR_ROOM_ENTER_FAIL: -3301,
+ /** 进房参数为空,请检查 enterRoom:appScene: 接口调用是否传入有效的 param */
+ ERR_ENTER_ROOM_PARAM_NULL: -3316,
+ /** 进房参数 sdkAppId 错误 */
+ ERR_SDK_APPID_INVALID: -3317,
+ /** 进房参数 roomId 错误 */
+ ERR_ROOM_ID_INVALID: -3318,
+ /** 进房参数 userID 不正确 */
+ ERR_USER_ID_INVALID: -3319,
+ /** 进房参数 userSig 不正确 */
+ ERR_USER_SIG_INVALID: -3320,
+ /** 请求进房超时,请检查网络 */
+ ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT: -3308,
+ /** 服务不可用。请检查:套餐包剩余分钟数是否大于0,腾讯云账号是否欠费 */
+ ERR_SERVER_INFO_SERVICE_SUSPENDED: -100013,
+ /** 请求退房超时 */
+ ERR_ROOM_REQUEST_QUIT_ROOM_TIMEOUT: -3325,
+ /** 打开摄像头失败,例如在 Windows 或 Mac 设备,摄像头的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
+ ERR_CAMERA_START_FAIL: -1301,
+ /** 摄像头设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 */
+ ERR_CAMERA_NOT_AUTHORIZED: -1314,
+ /** 摄像头参数设置出错(参数不支持或其它) */
+ ERR_CAMERA_SET_PARAM_FAIL: -1315,
+ /** 摄像头正在被占用中,可尝试打开其他摄像头 */
+ ERR_CAMERA_OCCUPY: -1316,
+ /** 打开麦克风失败,例如在 Windows 或 Mac 设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
+ ERR_MIC_START_FAIL: -1302,
+ /** 麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 */
+ ERR_MIC_NOT_AUTHORIZED: -1317,
+ /** 麦克风设置参数失败 */
+ ERR_MIC_SET_PARAM_FAIL: -1318,
+ /** 麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败 */
+ ERR_MIC_OCCUPY: -1319,
+ /** 停止麦克风失败 */
+ ERR_MIC_STOP_FAIL: -1320,
+ /** 打开扬声器失败,例如在 Windows 或 Mac 设备,扬声器的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
+ ERR_SPEAKER_START_FAIL: -1321,
+ /** 扬声器设置参数失败 */
+ ERR_SPEAKER_SET_PARAM_FAIL: -1322,
+ /** 停止扬声器失败 */
+ ERR_SPEAKER_STOP_FAIL: -1323,
+ /** 开始录屏失败,如果在移动设备出现,可能是权限被用户拒绝了,如果在 Windows 或 Mac 系统的设备出现,请检查录屏接口的参数是否符合要求 */
+ ERR_SCREEN_CAPTURE_START_FAIL: -1308,
+ /** 录屏失败,在 Android 平台,需要5.0以上的系统 */
+ ERR_SCREEN_CAPTURE_UNSURPORT: -1309,
+ /** 没有权限上行辅路 */
+ ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_SUB_VIDEO: -102015,
+ /** 其他用户正在上行辅路 */
+ ERR_SERVER_CENTER_ANOTHER_USER_PUSH_SUB_VIDEO: -102016,
+ /** 视频帧编码失败,例如 iOS 设备切换到其他应用时,硬编码器可能被系统释放,再切换回来时,硬编码器重启前,可能会抛出 */
+ ERR_VIDEO_ENCODE_FAIL: -1303,
+ /** 音频帧编码失败,例如传入自定义音频数据,SDK 无法处理 */
+ ERR_AUDIO_ENCODE_FAIL: -1304,
+ /** 不支持的视频分辨率 */
+ ERR_UNSUPPORTED_RESOLUTION: -1305,
+ /** 不支持的音频采样率 */
+ ERR_UNSUPPORTED_SAMPLERATE: -1306,
+ /** 设置的 pixel format 不支持 */
+ ERR_PIXEL_FORMAT_UNSUPPORTED: -1327,
+ /** 设置的 buffer type 不支持 */
+ ERR_BUFFER_TYPE_UNSUPPORTED: -1328,
+ /** 旁路转推请求超时 */
+ ERR_PUBLISH_CDN_STREAM_REQUEST_TIME_OUT: -3321,
+ /** 云端混流请求超时 */
+ ERR_CLOUD_MIX_TRANSCODING_REQUEST_TIME_OUT: -3322,
+ /** 旁路转推回包异常 */
+ ERR_PUBLISH_CDN_STREAM_SERVER_FAILED: -3323,
+ /** 云端混流回包异常 */
+ ERR_CLOUD_MIX_TRANSCODING_SERVER_FAILED: -3324,
+ /** 开始向腾讯云的直播 CDN 推流信令超时 */
+ ERR_ROOM_REQUEST_START_PUBLISHING_TIMEOUT: -3333,
+ /** 开始向腾讯云的直播 CDN 推流信令异常 */
+ ERR_ROOM_REQUEST_START_PUBLISHING_ERROR: -3334,
+ /** 停止向腾讯云的直播 CDN 推流信令超时 */
+ ERR_ROOM_REQUEST_STOP_PUBLISHING_TIMEOUT: -3335,
+ /** 停止向腾讯云的直播 CDN 推流信令异常 */
+ ERR_ROOM_REQUEST_STOP_PUBLISHING_ERROR: -3336,
+ /** 请求连麦超时 */
+ ERR_ROOM_REQUEST_CONN_ROOM_TIMEOUT: -3326,
+ /** 请求退出连麦超时 */
+ ERR_ROOM_REQUEST_DISCONN_ROOM_TIMEOUT: -3327,
+ /** 无效参数 */
+ ERR_ROOM_REQUEST_CONN_ROOM_INVALID_PARAM: -3328,
+ /** 当前是观众角色,不能请求或断开跨房连麦,需要先 switchRole() 到主播 */
+ ERR_CONNECT_OTHER_ROOM_AS_AUDIENCE: -3330,
+ /** 不支持跨房间连麦 */
+ ERR_SERVER_CENTER_CONN_ROOM_NOT_SUPPORT: -102031,
+ /** 达到跨房间连麦上限 */
+ ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_NUM: -102032,
+ /** 跨房间连麦重试次数耗尽 */
+ ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_RETRY_TIMES: -102033,
+ /** 跨房间连麦请求超时 */
+ ERR_SERVER_CENTER_CONN_ROOM_REQ_TIMEOUT: -102034,
+ /** 跨房间连麦请求格式错误 */
+ ERR_SERVER_CENTER_CONN_ROOM_REQ: -102035,
+ /** 跨房间连麦无签名 */
+ ERR_SERVER_CENTER_CONN_ROOM_NO_SIG: -102036,
+ /** 跨房间连麦签名解密失败 */
+ ERR_SERVER_CENTER_CONN_ROOM_DECRYPT_SIG: -102037,
+ /** 未找到跨房间连麦签名解密密钥 */
+ ERR_SERVER_CENTER_CONN_ROOM_NO_KEY: -102038,
+ /** 跨房间连麦签名解析错误 */
+ ERR_SERVER_CENTER_CONN_ROOM_PARSE_SIG: -102039,
+ /** 跨房间连麦签名时间戳错误 */
+ ERR_SERVER_CENTER_CONN_ROOM_INVALID_SIG_TIME: -102040,
+ /** 跨房间连麦签名不匹配 */
+ ERR_SERVER_CENTER_CONN_ROOM_SIG_GROUPID: -102041,
+ /** 本房间无连麦 */
+ ERR_SERVER_CENTER_CONN_ROOM_NOT_CONNED: -102042,
+ /** 本用户未发起连麦 */
+ ERR_SERVER_CENTER_CONN_ROOM_USER_NOT_CONNED: -102043,
+ /** 跨房间连麦失败 */
+ ERR_SERVER_CENTER_CONN_ROOM_FAILED: -102044,
+ /** 取消跨房间连麦失败 */
+ ERR_SERVER_CENTER_CONN_ROOM_CANCEL_FAILED: -102045,
+ /** 被连麦房间不存在 */
+ ERR_SERVER_CENTER_CONN_ROOM_CONNED_ROOM_NOT_EXIST: -102046,
+ /** 被连麦房间达到连麦上限 */
+ ERR_SERVER_CENTER_CONN_ROOM_CONNED_REACH_MAX_ROOM: -102047,
+ /** 被连麦用户不存在 */
+ ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_NOT_EXIST: -102048,
+ /** 被连麦用户已被删除 */
+ ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_DELETED: -102049,
+ /** 被连麦用户达到资源上限 */
+ ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_FULL: -102050,
+ /** 连麦请求序号错乱 */
+ ERR_SERVER_CENTER_CONN_ROOM_INVALID_SEQ: -102051,
+ /** 直播,推流出现网络断开,且经过多次重试无法恢复 */
+ ERR_RTMP_PUSH_NET_DISCONNECT: -1307,
+ /** 直播,推流地址非法,例如不是 RTMP 协议的地址 */
+ ERR_RTMP_PUSH_INVALID_ADDRESS: -1313,
+ /** 直播,连接推流服务器失败(若支持智能选路,IP 全部失败) */
+ ERR_RTMP_PUSH_NET_ALLADDRESS_FAIL: -1324,
+ /** 直播,网络不可用,请确认 WiFi、移动数据或者有线网络是否正常 */
+ ERR_RTMP_PUSH_NO_NETWORK: -1325,
+ /** 直播,服务器拒绝连接请求,可能是该推流地址已经被占用,或者 TXSecret 校验失败,或者是过期了,或者是欠费了 */
+ ERR_RTMP_PUSH_SERVER_REFUSE: -1326,
+ /** 直播,网络断连,且经多次重连抢救无效,可以放弃治疗,更多重试请自行重启播放 */
+ ERR_PLAY_LIVE_STREAM_NET_DISCONNECT: -2301,
+ /** 直播,获取加速拉流的地址失败 */
+ ERR_GET_RTMP_ACC_URL_FAIL: -2302,
+ /** 播放的文件不存在 */
+ ERR_FILE_NOT_FOUND: -2303,
+ /** H265 解码失败 */
+ ERR_HEVC_DECODE_FAIL: -2304,
+ /** 点播,音视频流解密失败 */
+ ERR_VOD_DECRYPT_FAIL: -2305,
+ /** 点播,获取点播文件信息失败 */
+ ERR_GET_VODFILE_MEDIAINFO_FAIL: -2306,
+ /** 直播,切流失败(切流可以播放不同画面大小的视频) */
+ ERR_PLAY_LIVE_STREAM_SWITCH_FAIL: -2307,
+ /** 直播,服务器拒绝连接请求 */
+ ERR_PLAY_LIVE_STREAM_SERVER_REFUSE: -2308,
+ /** 直播,RTMPACC 低延时拉流失败,且经过多次重试无法恢复 */
+ ERR_RTMP_ACC_FETCH_STREAM_FAIL: -2309,
+ /** 心跳失败,客户端定时向服务器发送数据包,告诉服务器自己活着,这个错误通常是发包超时 */
+ ERR_ROOM_HEARTBEAT_FAIL: -3302,
+ /** 拉取接口机服务器地址失败 */
+ ERR_ROOM_REQUEST_IP_FAIL: -3303,
+ /** 连接接口机服务器失败 */
+ ERR_ROOM_CONNECT_FAIL: -3304,
+ /** 请求视频位失败 */
+ ERR_ROOM_REQUEST_AVSEAT_FAIL: -3305,
+ /** 请求 token https 超时,请检查网络是否正常,或网络防火墙是否放行 https 访问 official.opensso.tencent-cloud.com:443 */
+ ERR_ROOM_REQUEST_TOKEN_HTTPS_TIMEOUT: -3306,
+ /** 请求 IP 和 sig 超时,请检查网络是否正常,或网络防火墙是否放行 UDP 访问下列 IP 和域名 query.tencent-cloud.com:8000 162.14.23.140:8000 162.14.7.49:8000 */
+ ERR_ROOM_REQUEST_IP_TIMEOUT: -3307,
+ /** 请求视频位超时 */
+ ERR_ROOM_REQUEST_VIDEO_FLAG_TIMEOUT: -3309,
+ /** 请求视频数据超时 */
+ ERR_ROOM_REQUEST_VIDEO_DATA_ROOM_TIMEOUT: -3310,
+ /** 请求修改视频能力项超时 */
+ ERR_ROOM_REQUEST_CHANGE_ABILITY_TIMEOUT: -3311,
+ /** 请求状态上报超时 */
+ ERR_ROOM_REQUEST_STATUS_REPORT_TIMEOUT: -3312,
+ /** 请求关闭视频超时 */
+ ERR_ROOM_REQUEST_CLOSE_VIDEO_TIMEOUT: -3313,
+ /** 请求接收视频项超时 */
+ ERR_ROOM_REQUEST_SET_RECEIVE_TIMEOUT: -3314,
+ /** 请求 token 无效参数,请检查 TRTCParams.userSig 是否填写正确 */
+ ERR_ROOM_REQUEST_TOKEN_INVALID_PARAMETER: -3315,
+ /** 请求 AES TOKEN 时,server 返回的内容是空的 */
+ ERR_ROOM_REQUEST_AES_TOKEN_RETURN_ERROR: -3329,
+ /** 请求接口机 IP 返回的列表为空的 */
+ ERR_ACCIP_LIST_EMPTY: -3331,
+ /** 请求发送 Json 信令超时 */
+ ERR_ROOM_REQUEST_SEND_JSON_CMD_TIMEOUT: -3332,
+ // Info 服务器(查询接口机 IP), 服务器错误码,数值范围[-100000, -110000]
+ /** server 解包错误,可能请求数据被篡改 */
+ ERR_SERVER_INFO_UNPACKING_ERROR: -100000,
+ /** TOKEN 错误 */
+ ERR_SERVER_INFO_TOKEN_ERROR: -100001,
+ /** 分配接口机错误 */
+ ERR_SERVER_INFO_ALLOCATE_ACCESS_FAILED: -100002,
+ /** 生成签名错误 */
+ ERR_SERVER_INFO_GENERATE_SIGN_FAILED: -100003,
+ /** https token 超时 */
+ ERR_SERVER_INFO_TOKEN_TIMEOUT: -100004,
+ /** 无效的命令字 */
+ ERR_SERVER_INFO_INVALID_COMMAND: -100005,
+ /** 权限位校验失败 */
+ ERR_SERVER_INFO_PRIVILEGE_FLAG_ERROR: -100006,
+ /** https 请求时,生成加密 key 错误 */
+ ERR_SERVER_INFO_GENERATE_KEN_ERROR: -100007,
+ /** https 请求时,生成 token 错误 */
+ ERR_SERVER_INFO_GENERATE_TOKEN_ERROR: -100008,
+ /** 数据库查询失败(房间相关存储信息) */
+ ERR_SERVER_INFO_DATABASE: -100009,
+ /** 房间号错误 */
+ ERR_SERVER_INFO_BAD_ROOMID: -100010,
+ /** 场景或角色错误 */
+ ERR_SERVER_INFO_BAD_SCENE_OR_ROLE: -100011,
+ /** 房间号转换出错 */
+ ERR_SERVER_INFO_ROOMID_EXCHANGE_FAILED: -100012,
+ /** 房间号非法 */
+ ERR_SERVER_INFO_STRGROUP_HAS_INVALID_CHARS: -100014,
+ /** 非法SDKAppid */
+ ERR_SERVER_INFO_LACK_SDKAPPID: -100015,
+ /** 无效请求, 旧版 0x1 要求带 Token; ECDH 要求带 ECDH Publich Key; 两个都没有就按报错 */
+ ERR_SERVER_INFO_INVALID: -100016,
+ /** 生成公钥失败 */
+ ERR_SERVER_INFO_ECDH_GET_KEY: -100017,
+ /** 获取tinyid失败 */
+ ERR_SERVER_INFO_ECDH_GET_TINYID: -100018,
+ // Access 接口机
+ /** token 过期 */
+ ERR_SERVER_ACC_TOKEN_TIMEOUT: -101000,
+ /** 签名错误 */
+ ERR_SERVER_ACC_SIGN_ERROR: -101001,
+ /** 签名超时 */
+ ERR_SERVER_ACC_SIGN_TIMEOUT: -101002,
+ /** 房间不存在 */
+ ERR_SERVER_ACC_ROOM_NOT_EXIST: -101003,
+ /** 后台房间标识 roomId 错误 */
+ ERR_SERVER_ACC_ROOMID: -101004,
+ /** 后台用户位置标识 locationId 错误 */
+ ERR_SERVER_ACC_LOCATIONID: -101005,
+ // center 服务器(信令和流控处理等任务)
+ /** 后台错误 */
+ ERR_SERVER_CENTER_SYSTEM_ERROR: -102000,
+ /** 无效的房间 Id */
+ ERR_SERVER_CENTER_INVALID_ROOMID: -102001,
+ /** 创建房间失败 */
+ ERR_SERVER_CENTER_CREATE_ROOM_FAILED: -102002,
+ /** 签名错误 */
+ ERR_SERVER_CENTER_SIGN_ERROR: -102003,
+ /** 签名过期 */
+ ERR_SERVER_CENTER_SIGN_TIMEOUT: -102004,
+ /** 房间不存在 */
+ ERR_SERVER_CENTER_ROOM_NOT_EXIST: -102005,
+ /** 房间添加用户失败 */
+ ERR_SERVER_CENTER_ADD_USER_FAILED: -102006,
+ /** 查找用户失败 */
+ ERR_SERVER_CENTER_FIND_USER_FAILED: -102007,
+ /** 频繁切换终端 */
+ ERR_SERVER_CENTER_SWITCH_TERMINATION_FREQUENTLY: -102008,
+ /** locationid 错误 */
+ ERR_SERVER_CENTER_LOCATION_NOT_EXIST: -102009,
+ /** 没有权限创建房间 */
+ ERR_SERVER_CENTER_NO_PRIVILEDGE_CREATE_ROOM: -102010,
+ /** 没有权限进入房间 */
+ ERR_SERVER_CENTER_NO_PRIVILEDGE_ENTER_ROOM: -102011,
+ /** 辅路抢视频位、申请辅路请求类型参数错误 */
+ ERR_SERVER_CENTER_INVALID_PARAMETER_SUB_VIDEO: -102012,
+ /** 没有权限上视频 */
+ ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_VIDEO: -102013,
+ /** 没有空闲路由表 */
+ ERR_SERVER_CENTER_ROUTE_TABLE_ERROR: -102014,
+ /** 当前用户没有上行辅路 */
+ ERR_SERVER_CENTER_NOT_PUSH_SUB_VIDEO: -102017,
+ /** 用户被删除状态 */
+ ERR_SERVER_CENTER_USER_WAS_DELETED: -102018,
+ /** 没有权限请求视频 */
+ ERR_SERVER_CENTER_NO_PRIVILEDGE_REQUEST_VIDEO: -102019,
+ /** 进房参数 bussInfo 错误 */
+ ERR_SERVER_CENTER_INVALID_PARAMETER: -102023,
+ /** 请求 I 帧未知 opType */
+ ERR_SERVER_CENTER_I_FRAME_UNKNOW_TYPE: -102024,
+ /** 请求 I 帧包格式错误 */
+ ERR_SERVER_CENTER_I_FRAME_INVALID_PACKET: -102025,
+ /** 请求 I 帧目标用户不存在 */
+ ERR_SERVER_CENTER_I_FRAME_DEST_USER_NOT_EXIST: -102026,
+ /** 请求 I 帧房间用户太多 */
+ ERR_SERVER_CENTER_I_FRAME_ROOM_TOO_BIG: -102027,
+ /** 请求 I 帧参数错误 */
+ ERR_SERVER_CENTER_I_FRAME_RPS_INVALID_PARAMETER: -102028,
+ /** 房间号非法 */
+ ERR_SERVER_CENTER_INVALID_ROOM_ID: -102029,
+ /** 房间号超过限制 */
+ ERR_SERVER_CENTER_ROOM_ID_TOO_LONG: -102030,
+ /** 房间满员 */
+ ERR_SERVER_CENTER_ROOM_FULL: -102052,
+ /** json串解析失败 */
+ ERR_SERVER_CENTER_DECODE_JSON_FAIL: -102053,
+ /** 未定义命令字 */
+ ERR_SERVER_CENTER_UNKNOWN_SUB_CMD: -102054,
+ /** 未定义角色 */
+ ERR_SERVER_CENTER_INVALID_ROLE: -102055,
+ /** 代理机超出限制 */
+ ERR_SERVER_CENTER_REACH_PROXY_MAX: -102056,
+ //add by sunlitwang begin
+ /** 无法保存用户自定义recordId */
+ ERR_SERVER_CENTER_RECORDID_STORE: -102057,
+ /** Protobuf序列化错误 */
+ ERR_SERVER_CENTER_PB_SERIALIZE: -102058,
+ // https://cloud.tencent.com/document/product/269/1671#.E5.B8.90.E5.8F.B7.E7.B3.BB.E7.BB.9F , 帐号系统, 主要是70000 - 79999之间.
+ // 在请求 token 过程中,出现账号错误,SSO 返回的错误码,原为正数,现将其转换为负数。
+ /** sig 过期,请尝试重新生成。如果是刚生成,就过期,请检查有效期填写的是否过小,或者填的 0 */
+ ERR_SERVER_SSO_SIG_EXPIRED: -70001,
+ /** sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_1: -70003,
+ /** sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_2: -70004,
+ /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_3: -70005,
+ /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_4: -70006,
+ /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_5: -70007,
+ /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_6: -70008,
+ /** 用业务公钥验证 sig 失败,请确认生成的 usersig 使用的私钥和 sdkAppId 是否对应 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_7: -70009,
+ /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_8: -70010,
+ /** sig 中 identifier 与请求时的 identifier 不匹配,请检查登录时填写的 identifier 与 sig 中的是否一致 */
+ ERR_SERVER_SSO_SIG_VERIFICATION_ID_NOT_MATCH: -70013,
+ /** sig 中 sdkAppId 与请求时的 sdkAppId 不匹配,请检查登录时填写的 sdkAppId 与 sig 中的是否一致 */
+ ERR_SERVER_SSO_APPID_NOT_MATCH: -70014,
+ /** 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 */
+ ERR_SERVER_SSO_VERIFICATION_EXPIRED: -70017,
+ /** 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 */
+ ERR_SERVER_SSO_VERIFICATION_FAILED: -70018,
+ /** sdkAppId 未找到,请确认是否已经在腾讯云上配置 */
+ ERR_SERVER_SSO_APPID_NOT_FOUND: -70020,
+ /** 帐号已被拉入黑名单,请联系 TLS 帐号支持 QQ 3268519604 */
+ ERR_SERVER_SSO_ACCOUNT_IN_BLACKLIST: -70051,
+ /** usersig 已经失效,请重新生成,再次尝试 */
+ ERR_SERVER_SSO_SIG_INVALID: -70052,
+ /** 安全原因被限制 */
+ ERR_SERVER_SSO_LIMITED_BY_SECURITY: -70114,
+ /** 登录状态无效,请使用 usersig 重新鉴权 */
+ ERR_SERVER_SSO_INVALID_LOGIN_STATUS: -70221,
+ /** sdkAppId 填写错误 */
+ ERR_SERVER_SSO_APPID_ERROR: -70252,
+ /** 票据校验失败,请检查各项参数是否正确 */
+ ERR_SERVER_SSO_TICKET_VERIFICATION_FAILED: -70346,
+ /** 票据因过期原因校验失败 */
+ ERR_SERVER_SSO_TICKET_EXPIRED: -70347,
+ /** 创建账号数量超过已购买预付费数量限制 */
+ ERR_SERVER_SSO_ACCOUNT_EXCEED_PURCHASES: -70398,
+ /** 服务器内部错误,请重试 */
+ ERR_SERVER_SSO_INTERNAL_ERROR: -70500,
+};
+/////////////////////////////////////////////////////////////////////////////////
+//
+// (二)错误码(警告)
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * @memberof ErrorCode
+ * @typedef 错误码(警告)
+ * @description SDK 错误码(警告)对照表
+ * | 符号 | 值 | 含义 |
+ * |---|---|---|
+ * |WARNING_HW_ENCODER_START_FAIL|1103|硬编码启动出现问题,自动切换到软编码|
+ * |WARNING_VIDEO_ENCODER_SW_TO_HW|1107|当前 CPU 使用率太高,无法满足软件编码需求,自动切换到硬件编码|
+ * |WARNING_INSUFFICIENT_CAPTURE_FPS|1108|摄像头采集帧率不足,部分自带美颜算法的 Android 手机上会出现|
+ * |WARNING_SW_ENCODER_START_FAIL|1109|软编码启动失败|
+ * |WARNING_REDUCE_CAPTURE_RESOLUTION|1110|摄像头采集分辨率被降低,以满足当前帧率和性能最优解。|
+ * |WARNING_VIDEO_FRAME_DECODE_FAIL|2101|当前视频帧解码失败|
+ * |WARNING_AUDIO_FRAME_DECODE_FAIL|2102|当前音频帧解码失败|
+ * |WARNING_VIDEO_PLAY_LAG|2105|当前视频播放出现卡顿|
+ * |WARNING_HW_DECODER_START_FAIL|2106|硬解启动失败,采用软解码|
+ * |WARNING_VIDEO_DECODER_HW_TO_SW|2108|当前流硬解第一个 I 帧失败,SDK 自动切软解|
+ * |WARNING_SW_DECODER_START_FAIL|2109|软解码器启动失败|
+ * |WARNING_VIDEO_RENDER_FAIL|2110|视频渲染失败|
+ * |WARNING_AUDIO_RECORDING_WRITE_FAIL|7001|音频录制写入文件失败|
+ * |WARNING_ROOM_DISCONNECT|5101|网络断开连接|
+ * |WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE|6001|当前是观众角色,忽略上行音视频数据|
+ */
+export const TXLiteAVWarning = {
+ /** 硬编码启动出现问题,自动切换到软编码 */
+ WARNING_HW_ENCODER_START_FAIL: 1103,
+ /** 当前 CPU 使用率太高,无法满足软件编码需求,自动切换到硬件编码 */
+ WARNING_VIDEO_ENCODER_SW_TO_HW: 1107,
+ /** 摄像头采集帧率不足,部分自带美颜算法的 Android 手机上会出现 */
+ WARNING_INSUFFICIENT_CAPTURE_FPS: 1108,
+ /** 软编码启动失败 */
+ WARNING_SW_ENCODER_START_FAIL: 1109,
+ /** 摄像头采集分辨率被降低,以满足当前帧率和性能最优解。 */
+ WARNING_REDUCE_CAPTURE_RESOLUTION: 1110,
+ /** 当前视频帧解码失败 */
+ WARNING_VIDEO_FRAME_DECODE_FAIL: 2101,
+ /** 当前音频帧解码失败 */
+ WARNING_AUDIO_FRAME_DECODE_FAIL: 2102,
+ /** 当前视频播放出现卡顿 */
+ WARNING_VIDEO_PLAY_LAG: 2105,
+ /** 硬解启动失败,采用软解码 */
+ WARNING_HW_DECODER_START_FAIL: 2106,
+ /** 当前流硬解第一个 I 帧失败,SDK 自动切软解 */
+ WARNING_VIDEO_DECODER_HW_TO_SW: 2108,
+ /** 软解码器启动失败 */
+ WARNING_SW_DECODER_START_FAIL: 2109,
+ /** 视频渲染失败 */
+ WARNING_VIDEO_RENDER_FAIL: 2110,
+ /** 音频录制写入文件失败 */
+ WARNING_AUDIO_RECORDING_WRITE_FAIL: 7001,
+ /** 网络断开连接 */
+ WARNING_ROOM_DISCONNECT: 5101,
+ /** 当前是观众角色,忽略上行音视频数据 */
+ WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE: 6001,
+ /** 网络状况不佳:上行带宽太小,上传数据受阻 */
+ WARNING_NET_BUSY: 1101,
+ /** 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) */
+ WARNING_RTMP_SERVER_RECONNECT: 1102,
+ /** 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) */
+ WARNING_LIVE_STREAM_SERVER_RECONNECT: 2103,
+ /** 网络来包不稳:可能是下行带宽不足,或由于主播端出流不均匀 */
+ WARNING_RECV_DATA_LAG: 2104,
+ /** 直播,DNS 解析失败 */
+ WARNING_RTMP_DNS_FAIL: 3001,
+ /** 直播,服务器连接失败 */
+ WARNING_RTMP_SEVER_CONN_FAIL: 3002,
+ /** 直播,与 RTMP 服务器握手失败 */
+ WARNING_RTMP_SHAKE_FAIL: 3003,
+ /** 直播,服务器主动断开 */
+ WARNING_RTMP_SERVER_BREAK_CONNECT: 3004,
+ /** 直播,RTMP 读/写失败,将会断开连接 */
+ WARNING_RTMP_READ_WRITE_FAIL: 3005,
+ /** 直播,RTMP 写失败(SDK 内部错误码,不会对外抛出) */
+ WARNING_RTMP_WRITE_FAIL: 3006,
+ /** 直播,RTMP 读失败(SDK 内部错误码,不会对外抛出) */
+ WARNING_RTMP_READ_FAIL: 3007,
+ /** 直播,超过30s 没有数据发送,主动断开连接 */
+ WARNING_RTMP_NO_DATA: 3008,
+ /** 直播,connect 服务器调用失败(SDK 内部错误码,不会对外抛出) */
+ WARNING_PLAY_LIVE_STREAM_INFO_CONNECT_FAIL: 3009,
+ /** 直播,连接失败,该流地址无视频(SDK 内部错误码,不会对外抛出) */
+ WARNING_NO_STEAM_SOURCE_FAIL: 3010,
+ /** 网络断连,已启动自动重连 */
+ WARNING_ROOM_RECONNECT: 5102,
+ /** 网络状况不佳:上行带宽太小,上传数据受阻 */
+ WARNING_ROOM_NET_BUSY: 5103,
+};
+/////////////////////////////////////////////////////////////////////////////////
+//
+// (三)JS 封装层抛出的异常(严重)
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * @namespace ErrorCode
+ * @description 错误码
+ */
+export const TXLiteJSError = {
+ /**
+ * 未知错误
+ * @default 0xFFFF
+ * @memberof module:ErrorCode
+ */
+ UNKNOWN: 0xffff,
+ /**
+ * 无效参数
+ *
+ * @default 0x1000
+ * @memberof module:ErrorCode
+ */
+ INVALID_PARAMETER: 0x1000,
+ /**
+ * 非法操作
+ *
+ * @default 0x1001
+ * @memberof module:ErrorCode
+ */
+ INVALID_OPERATION: 0x1001,
+};
+const getErrorName = function (code) {
+ for (let key in TXLiteJSError) {
+ if (TXLiteJSError[key] === code) {
+ return key;
+ }
+ }
+ return 'UNKNOWN';
+};
+/**
+ * TrtcError 错误对象<br>
+ * @extends Error
+ * @namespace ErrorCode
+ */
+class TrtcError extends Error {
+ constructor({ code = TXLiteJSError.UNKNOWN, message, extraInfo }) {
+ if (extraInfo) {
+ const tempError = {
+ errCode: code,
+ errMsg: message,
+ extraInfo: Object.assign(Object.assign({}, extraInfo), { errCodeUrl: errorCodeUrl }),
+ };
+ super(JSON.stringify(tempError));
+ }
+ else {
+ super(message +
+ ` <${getErrorName(code)} 0x${code.toString(16)}>. Refer to: ${errorCodeUrl}`);
+ }
+ this.errCode = code;
+ this.errMsg = message;
+ this.extraInfo = Object.assign(Object.assign({}, extraInfo), { errCodeUrl: errorCodeUrl });
+ }
+ /**
+ * 获取错误码<br>
+ * 详细错误码列表参见 {@link module:ErrorCode ErrorCode}
+ * @memberof TrtcError
+ */
+ getCode() {
+ return this.errCode;
+ }
+}
+export default TrtcError;
+export function generateError_(error, code = TXLiteJSError.UNKNOWN, extraInfo) {
+ return new TrtcError({
+ code: error.code || code,
+ message: `${NAME.LOG_PREFIX}${error.message}`,
+ extraInfo,
+ });
+}
+;
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines.js
new file mode 100644
index 0000000..bb39018
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines.js
@@ -0,0 +1,522 @@
+/**
+ * TRTC 关键类型定义<br>
+ * @description 分辨率、质量等级等枚举和常量值的定义
+ */
+/////////////////////////////////////////////////////////////////////////////////
+//
+// 【(一)视频相关枚举值定义】
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * 视频分辨率<br>
+ * 此处仅定义横屏分辨率(如 640 × 360),如需使用竖屏分辨率(如 360 × 640),需要同时指定 VideoResolutionMode 为 Portrait
+ * @enum {Number}
+ */
+const TRTCVideoResolution_HACK_JSDOC = {
+ /** 宽高比 1:1;分辨率 120x120;建议码率(VideoCall)80kbps; 建议码率(LIVE)120kbps */
+ TRTCVideoResolution_120_120: 1,
+ /** 宽高比 1:1 分辨率 160x160;建议码率(VideoCall)100kbps; 建议码率(LIVE)150kbps */
+ TRTCVideoResolution_160_160: 3,
+ /** 宽高比 1:1;分辨率 270x270;建议码率(VideoCall)200kbps; 建议码率(LIVE)300kbps */
+ TRTCVideoResolution_270_270: 5,
+ /** 宽高比 1:1;分辨率 480x480;建议码率(VideoCall)350kbps; 建议码率(LIVE)500kbps */
+ TRTCVideoResolution_480_480: 7,
+ /** 宽高比4:3;分辨率 160x120;建议码率(VideoCall)100kbps; 建议码率(LIVE)150kbps */
+ TRTCVideoResolution_160_120: 50,
+ /** 宽高比 4:3;分辨率 240x180;建议码率(VideoCall)150kbps; 建议码率(LIVE)250kbps */
+ TRTCVideoResolution_240_180: 52,
+ /** 宽高比 4:3;分辨率 280x210;建议码率(VideoCall)200kbps; 建议码率(LIVE)300kbps */
+ TRTCVideoResolution_280_210: 54,
+ /** 宽高比 4:3;分辨率 320x240;建议码率(VideoCall)250kbps; 建议码率(LIVE)375kbps */
+ TRTCVideoResolution_320_240: 56,
+ /** 宽高比 4:3;分辨率 400x300;建议码率(VideoCall)300kbps; 建议码率(LIVE)450kbps */
+ TRTCVideoResolution_400_300: 58,
+ /** 宽高比 4:3;分辨率 480x360;建议码率(VideoCall)400kbps; 建议码率(LIVE)600kbps */
+ TRTCVideoResolution_480_360: 60,
+ /** 宽高比 4:3;分辨率 640x480;建议码率(VideoCall)600kbps; 建议码率(LIVE)900kbps */
+ TRTCVideoResolution_640_480: 62,
+ /** 宽高比 4:3;分辨率 960x720;建议码率(VideoCall)1000kbps; 建议码率(LIVE)1500kbps */
+ TRTCVideoResolution_960_720: 64,
+ /** 宽高比 16:9;分辨率 160x90;建议码率(VideoCall)150kbps; 建议码率(LIVE)250kbps */
+ TRTCVideoResolution_160_90: 100,
+ /** 宽高比 16:9;分辨率 256x144;建议码率(VideoCall)200kbps; 建议码率(LIVE)300kbps */
+ TRTCVideoResolution_256_144: 102,
+ /** 宽高比 16:9;分辨率 320x180;建议码率(VideoCall)250kbps; 建议码率(LIVE)400kbps */
+ TRTCVideoResolution_320_180: 104,
+ /** 宽高比 16:9;分辨率 480x270;建议码率(VideoCall)350kbps; 建议码率(LIVE)550kbps */
+ TRTCVideoResolution_480_270: 106,
+ /** 宽高比 16:9;分辨率 640x360;建议码率(VideoCall)500kbps; 建议码率(LIVE)900kbps */
+ TRTCVideoResolution_640_360: 108,
+ /** 宽高比 16:9;分辨率 960x540;建议码率(VideoCall)850kbps; 建议码率(LIVE)1300kbps */
+ TRTCVideoResolution_960_540: 110,
+ /** 宽高比 16:9;分辨率 1280x720;建议码率(VideoCall)1200kbps; 建议码率(LIVE)1800kbps */
+ TRTCVideoResolution_1280_720: 112,
+ /** 宽高比 16:9;分辨率 1920x1080;建议码率(VideoCall)2000kbps; 建议码率(LIVE)3000kbps */
+ TRTCVideoResolution_1920_1080: 114,
+};
+export var TRTCVideoResolution;
+(function (TRTCVideoResolution) {
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_120_120"] = 1] = "TRTCVideoResolution_120_120";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_160_160"] = 3] = "TRTCVideoResolution_160_160";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_270_270"] = 5] = "TRTCVideoResolution_270_270";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_480_480"] = 7] = "TRTCVideoResolution_480_480";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_160_120"] = 50] = "TRTCVideoResolution_160_120";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_240_180"] = 52] = "TRTCVideoResolution_240_180";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_280_210"] = 54] = "TRTCVideoResolution_280_210";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_320_240"] = 56] = "TRTCVideoResolution_320_240";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_400_300"] = 58] = "TRTCVideoResolution_400_300";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_480_360"] = 60] = "TRTCVideoResolution_480_360";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_640_480"] = 62] = "TRTCVideoResolution_640_480";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_960_720"] = 64] = "TRTCVideoResolution_960_720";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_160_90"] = 100] = "TRTCVideoResolution_160_90";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_256_144"] = 102] = "TRTCVideoResolution_256_144";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_320_180"] = 104] = "TRTCVideoResolution_320_180";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_480_270"] = 106] = "TRTCVideoResolution_480_270";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_640_360"] = 108] = "TRTCVideoResolution_640_360";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_960_540"] = 110] = "TRTCVideoResolution_960_540";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_1280_720"] = 112] = "TRTCVideoResolution_1280_720";
+ TRTCVideoResolution[TRTCVideoResolution["TRTCVideoResolution_1920_1080"] = 114] = "TRTCVideoResolution_1920_1080";
+})(TRTCVideoResolution || (TRTCVideoResolution = {}));
+/**
+ * 视频分辨率模式<br>
+ * TRTCVideoResolution 中仅定义了横屏分辨率(如 640 × 360),如需使用竖屏分辨率(如 360 × 640),需要同时指定 TRTCVideoResolutionMode 为 Portrait
+ * @enum {Number}
+ */
+const TRTCVideoResolutionMode_HACK_JSDOC = {
+ /** 横屏分辨率 */
+ TRTCVideoResolutionModeLandscape: 0,
+ /** 竖屏分辨率 */
+ TRTCVideoResolutionModePortrait: 1,
+};
+export var TRTCVideoResolutionMode;
+(function (TRTCVideoResolutionMode) {
+ TRTCVideoResolutionMode[TRTCVideoResolutionMode["TRTCVideoResolutionModeLandscape"] = 0] = "TRTCVideoResolutionModeLandscape";
+ TRTCVideoResolutionMode[TRTCVideoResolutionMode["TRTCVideoResolutionModePortrait"] = 1] = "TRTCVideoResolutionModePortrait";
+})(TRTCVideoResolutionMode || (TRTCVideoResolutionMode = {}));
+;
+/**
+ * 视频流类型<br>
+ * TRTC 内部有三种不同的音视频流,分别是:
+ * - 高清大画面:一般用来传输摄像头的视频数据
+ * - 低清小画面:小画面和大画面的内容相互,但是分辨率和码率都比大画面低,因此清晰度也更低
+ * - 辅流画面:一般用于屏幕分享,同一时间在同一个房间中只允许一个用户发布辅流视频,其他用户必须要等该用户关闭之后才能发布自己的辅流
+ *
+ * **Note:**
+ * - 不支持单独开启低清小画面,小画面必须依附于大画面而存在,SDK 会自动设定低清小画面的分辨率和码率
+ * @enum {Number}
+ */
+const TRTCVideoStreamType_HACK_JSDOC = {
+ /** 大画面视频流 */
+ TRTCVideoStreamTypeBig: 0,
+ /** 小画面视频流 */
+ TRTCVideoStreamTypeSmall: 1,
+ /** 辅流(屏幕分享) */
+ TRTCVideoStreamTypeSub: 2,
+};
+export var TRTCVideoStreamType;
+(function (TRTCVideoStreamType) {
+ TRTCVideoStreamType[TRTCVideoStreamType["TRTCVideoStreamTypeBig"] = 0] = "TRTCVideoStreamTypeBig";
+ TRTCVideoStreamType[TRTCVideoStreamType["TRTCVideoStreamTypeSmall"] = 1] = "TRTCVideoStreamTypeSmall";
+ TRTCVideoStreamType[TRTCVideoStreamType["TRTCVideoStreamTypeSub"] = 2] = "TRTCVideoStreamTypeSub";
+})(TRTCVideoStreamType || (TRTCVideoStreamType = {}));
+/**
+ * 画面来源<br>
+ * TRTC 内部有两种不同的画面来源,分别是:
+ * - TRTCSnapshotSourceTypeStream: 视频流画面
+ * - TRTCSnapshotSourceTypeView: 视频渲染画面
+ *
+ * **Note:**
+ * - 截取视频流画面(TRTCSnapshotSourceTypeStream)一般更清晰。
+ * @enum {Number}
+ */
+const TRTCSnapshotSourceType_HACK_JSDOC = {
+ /** 视频流画面 */
+ TRTCSnapshotSourceTypeStream: 0,
+ /** 视频渲染画面 */
+ TRTCSnapshotSourceTypeView: 1,
+};
+export var TRTCSnapshotSourceType;
+(function (TRTCSnapshotSourceType) {
+ TRTCSnapshotSourceType[TRTCSnapshotSourceType["TRTCSnapshotSourceTypeStream"] = 0] = "TRTCSnapshotSourceTypeStream";
+ TRTCSnapshotSourceType[TRTCSnapshotSourceType["TRTCSnapshotSourceTypeView"] = 1] = "TRTCSnapshotSourceTypeView";
+})(TRTCSnapshotSourceType || (TRTCSnapshotSourceType = {}));
+/**
+ * 视频画面填充模式<br>
+ * 如果画面的显示分辨率不等于画面的原始分辨率,就需要您设置画面的填充模式:
+ * - TRTCVideoFillMode_Fill,图像铺满屏幕,超出显示视窗的视频部分将被截掉,所以画面显示可能不完整。
+ * - TRTCVideoFillMode_Fit,图像长边填满屏幕,短边区域会被填充黑色,但画面的内容肯定是完整的。
+ * - TRTCVideoFillMode_ScaleFill,缩放填充模式,即无论画面的宽高比,都会被拉伸或压缩以完全填充显示区域,此模式下画面宽高比可能会被改变,导致渲染画面变形
+ * @enum {Number}
+ */
+const TRTCVideoFillMode_HACK_JSDOC = {
+ /** 图像铺满屏幕,超出显示视窗的视频部分将被截掉 */
+ TRTCVideoFillMode_Fill: 0,
+ /** 图像长边填满屏幕,短边区域会被填充黑色 */
+ TRTCVideoFillMode_Fit: 1,
+ /** 缩放填充模式,即无论画面的宽高比,都会被拉伸或压缩以完全填充显示区域 */
+ TRTCVideoFillMode_ScaleFill: 2,
+};
+export var TRTCVideoFillMode;
+(function (TRTCVideoFillMode) {
+ TRTCVideoFillMode[TRTCVideoFillMode["TRTCVideoFillMode_Fill"] = 0] = "TRTCVideoFillMode_Fill";
+ TRTCVideoFillMode[TRTCVideoFillMode["TRTCVideoFillMode_Fit"] = 1] = "TRTCVideoFillMode_Fit";
+ TRTCVideoFillMode[TRTCVideoFillMode["TRTCVideoFillMode_ScaleFill"] = 2] = "TRTCVideoFillMode_ScaleFill";
+})(TRTCVideoFillMode || (TRTCVideoFillMode = {}));
+;
+/**
+ * 视频画面旋转方向<br>
+ * TRTC SDK 提供了对本地和远程画面的旋转角度设置 API,如下的旋转角度都是指顺时针方向的。
+ * @enum {Number}
+ */
+const TRTCVideoRotation_HACK_JSDOC = {
+ /** 顺时针旋转0度 */
+ TRTCVideoRotation_0: 0,
+ /** 顺时针旋转90度 */
+ TRTCVideoRotation_90: 1,
+ /** 顺时针旋转180度 */
+ TRTCVideoRotation_180: 2,
+ /** 顺时针旋转270度 */
+ TRTCVideoRotation_270: 3,
+};
+export var TRTCVideoRotation;
+(function (TRTCVideoRotation) {
+ TRTCVideoRotation[TRTCVideoRotation["TRTCVideoRotation_0"] = 0] = "TRTCVideoRotation_0";
+ TRTCVideoRotation[TRTCVideoRotation["TRTCVideoRotation_90"] = 1] = "TRTCVideoRotation_90";
+ TRTCVideoRotation[TRTCVideoRotation["TRTCVideoRotation_180"] = 2] = "TRTCVideoRotation_180";
+ TRTCVideoRotation[TRTCVideoRotation["TRTCVideoRotation_270"] = 3] = "TRTCVideoRotation_270";
+})(TRTCVideoRotation || (TRTCVideoRotation = {}));
+/**
+ * 画面渲染镜像类型<br>
+ * TRTC 的画面镜像提供下列设置模式
+ * @enum {Number}
+ */
+const TRTCVideoMirrorType_HACK_JSDOC = {
+ /** 只适用于移动端, 本地预览时,前置摄像头镜像,后置摄像头不镜像 */
+ TRTCVideoMirrorType_Auto: 0,
+ /** 所有画面均镜像 */
+ TRTCVideoMirrorType_Enable: 1,
+ /** 所有画面均不镜像 */
+ TRTCVideoMirrorType_Disable: 2
+};
+export var TRTCVideoMirrorType;
+(function (TRTCVideoMirrorType) {
+ TRTCVideoMirrorType[TRTCVideoMirrorType["TRTCVideoMirrorType_Auto"] = 0] = "TRTCVideoMirrorType_Auto";
+ TRTCVideoMirrorType[TRTCVideoMirrorType["TRTCVideoMirrorType_Enable"] = 1] = "TRTCVideoMirrorType_Enable";
+ TRTCVideoMirrorType[TRTCVideoMirrorType["TRTCVideoMirrorType_Disable"] = 2] = "TRTCVideoMirrorType_Disable";
+})(TRTCVideoMirrorType || (TRTCVideoMirrorType = {}));
+/**
+ * 美颜(磨皮)算法<br>
+ * TRTC SDK 内置了多种不同的磨皮算法,您可以选择最适合您产品定位的方案。
+ * @enum {Number}
+ */
+const TRTCBeautyStyle_HACK_JSDOC = {
+ /** 光滑,算法比较激进,磨皮效果比较明显,适用于秀场直播 */
+ TRTCBeautyStyleSmooth: 0,
+ /** 自然,算法更多地保留了面部细节,磨皮效果更加自然,适用于绝大多数直播场景 */
+ TRTCBeautyStyleNature: 1,
+ /** 优图,由优图实验室提供,磨皮效果介于光滑和自然之间,比光滑保留更多皮肤细节,比自然磨皮程度更高 */
+ TRTCBeautyStylePitu: 2,
+};
+export var TRTCBeautyStyle;
+(function (TRTCBeautyStyle) {
+ TRTCBeautyStyle[TRTCBeautyStyle["TRTCBeautyStyleSmooth"] = 0] = "TRTCBeautyStyleSmooth";
+ TRTCBeautyStyle[TRTCBeautyStyle["TRTCBeautyStyleNature"] = 1] = "TRTCBeautyStyleNature";
+ TRTCBeautyStyle[TRTCBeautyStyle["TRTCBeautyStylePitu"] = 2] = "TRTCBeautyStylePitu";
+})(TRTCBeautyStyle || (TRTCBeautyStyle = {}));
+/**
+ * 背景音效<br>
+ * @enum {Number}
+ */
+export class AudioMusicParam {
+ constructor(id, path, loopCount, publish, isShortFile, startTimeMS, endTimeMS) {
+ this.id = id;
+ this.path = path;
+ this.loopCount = loopCount;
+ this.publish = publish;
+ this.isShortFile = isShortFile;
+ this.startTimeMS = startTimeMS;
+ this.endTimeMS = endTimeMS;
+ }
+}
+/////////////////////////////////////////////////////////////////////////////////
+//
+// 【(二)网络相关枚举值定义】
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * 应用场景<br>
+ * TRTC 可用于视频会议和在线直播等多种应用场景,针对不同的应用场景,TRTC SDK 的内部会进行不同的优化配置:
+ * - TRTCAppSceneVideoCall :视频通话场景,适合[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。
+ * - TRTCAppSceneLIVE :视频互动直播,适合[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。
+ * - TRTCAppSceneAudioCall :语音通话场景,适合[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。
+ * - TRTCAppSceneVoiceChatRoom:语音互动直播,适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。
+ * @enum {Number}
+ */
+const TRTCAppScene_HACK_JSDOC = {
+ /**
+ * 视频通话场景,支持720P、1080P高清画质,单个房间最多支持300人同时在线,最高支持50人同时发言。<br>
+ * 适合:[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。<br>
+ * 注意:此场景下,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。
+ */
+ TRTCAppSceneVideoCall: 0,
+ /**
+ * 视频互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。<br>
+ * 在线直播场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。
+ */
+ TRTCAppSceneLIVE: 1,
+ /**
+ * 语音通话场景,支持 48kHz,支持双声道。单个房间最多支持300人同时在线,最高支持50人同时发言。<br>
+ * 适合:[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。
+ */
+ TRTCAppSceneAudioCall: 2,
+ /**
+ * 语音互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。<br>
+ * 适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。<br>
+ * 注意:此场景下,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。
+ */
+ TRTCAppSceneVoiceChatRoom: 3,
+};
+export var TRTCAppScene;
+(function (TRTCAppScene) {
+ TRTCAppScene[TRTCAppScene["TRTCAppSceneVideoCall"] = 0] = "TRTCAppSceneVideoCall";
+ TRTCAppScene[TRTCAppScene["TRTCAppSceneLIVE"] = 1] = "TRTCAppSceneLIVE";
+ TRTCAppScene[TRTCAppScene["TRTCAppSceneAudioCall"] = 2] = "TRTCAppSceneAudioCall";
+ TRTCAppScene[TRTCAppScene["TRTCAppSceneVoiceChatRoom"] = 3] = "TRTCAppSceneVoiceChatRoom";
+})(TRTCAppScene || (TRTCAppScene = {}));
+/**
+ * 角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)<br>
+ * 在直播场景中,多数用户只是观众,只有个别用户是主播,这种角色区分可以有利于 TRTC 进行更好的定向优化。
+ * - Anchor:主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。
+ * - Audience:观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。
+ *
+ * @enum {Number}
+ */
+const TRTCRoleType_HACK_JSDOC = {
+ /** 主播 */
+ TRTCRoleAnchor: 20,
+ /** 观众 */
+ TRTCRoleAudience: 21,
+};
+export var TRTCRoleType;
+(function (TRTCRoleType) {
+ TRTCRoleType[TRTCRoleType["TRTCRoleAnchor"] = 20] = "TRTCRoleAnchor";
+ TRTCRoleType[TRTCRoleType["TRTCRoleAudience"] = 21] = "TRTCRoleAudience";
+})(TRTCRoleType || (TRTCRoleType = {}));
+/////////////////////////////////////////////////////////////////////////////////
+//
+// 【(三)音频相关枚举值定义】
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * 音频质量<br>
+ * @enum {Number}
+ */
+const TRTCAudioQuality_HACK_JSDOC = {
+ /** 人声模式:适用于以人声沟通为主的应用场景,该模式下音频传输的抗性较强,TRTC 会通过各种人声处理技术保障在弱网络环境下的流畅度最佳 */
+ TRTCAudioQualitySpeech: 1,
+ /** 标准模式(或者默认模式):介于 Speech 和 Music 之间的档位,对音乐的还原度比人声模式要好,但传输数据量比音乐模式要低很多,对各种场景均有不错的适应性,如无特殊需求推荐选择之。 */
+ TRTCAudioQualityDefault: 2,
+ /** 音乐模式:适用于对声乐要求很苛刻的场景,该模式下音频传输的数据量很大,TRTC 会通过各项技术确保音乐信号在各频段均能获得高保真的细节还原度 */
+ TRTCAudioQualityMusic: 3
+};
+export var TRTCAudioQuality;
+(function (TRTCAudioQuality) {
+ TRTCAudioQuality[TRTCAudioQuality["TRTCAudioQualitySpeech"] = 1] = "TRTCAudioQualitySpeech";
+ TRTCAudioQuality[TRTCAudioQuality["TRTCAudioQualityDefault"] = 2] = "TRTCAudioQualityDefault";
+ TRTCAudioQuality[TRTCAudioQuality["TRTCAudioQualityMusic"] = 3] = "TRTCAudioQualityMusic";
+})(TRTCAudioQuality || (TRTCAudioQuality = {}));
+/////////////////////////////////////////////////////////////////////////////////
+//
+// 【(四)TRTC 核心类型定义】
+//
+/////////////////////////////////////////////////////////////////////////////////
+/**
+ * 进房相关参数<br>
+ * 只有该参数填写正确,才能顺利调用 enterRoom 进入 roomId 所指定的音视频房间。
+ * @param {Number} sdkAppId - 【字段含义】应用标识(必填),腾讯视频云基于 sdkAppId 完成计费统计。<br>
+ * 【推荐取值】在腾讯云 [TRTC 控制台](https://console.cloud.tencent.com/rav/) 中创建应用,之后可以在账号信息页面中得到该 ID。<br>
+ * @param {String} userId - 【字段含义】用户标识(必填)。当前用户的 userId,相当于用户名,UTF-8编码。<br>
+ * 【推荐取值】如果一个用户在您的账号系统中的 ID 为“abc”,则 userId 即可设置为“abc”。<br>
+ * @param {String} userSig - 【字段含义】用户签名(必填),当前 userId 对应的验证签名,相当于登录密码。<br>
+ * 【推荐取值】请参考 [如何计算UserSig](https://cloud.tencent.com/document/product/647/17275)。<br>
+ * @param {Number} roomId - 【字段含义】房间号码(必填),指定房间号,在同一个房间里的用户(userId)可以彼此看到对方并进行视频通话, roomId 和 strRoomId 必须填一个, 若您选用 strRoomId,则 roomId 需要填写为0。<br>
+ * 【推荐取值】您可以随意指定,但请不要重复,如果您的用户账号 ID 是数字类型的,可以直接用创建者的用户 ID 作为 roomId。<br>
+ * @param {String} strRoomId - 【字段含义】字符串房间号码(选填),roomId 和 strRoomId 必须填一个。若两者都填,则优先选择 roomId。<br>
+ * 【推荐取值】您可以随意指定,但请不要重复。<br>
+ * @param {TRTCRoleType} role - 【字段含义】直播场景下的角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom),视频通话场景下指定无效。<br>
+ * 【推荐取值】默认值:主播(TRTCRoleAnchor)<br>
+ * @param {String} privateMapKey - 【字段含义】房间签名(非必填),如果您希望某个房间只能让特定的某些 userId 进入,就需要使用 privateMapKey 进行权限保护。<br>
+ * 【推荐取值】仅建议有高级别安全需求的客户使用,参考文档:[进房权限保护](https://cloud.tencent.com/document/product/647/32240)<br>
+ * @param {String} businessInfo - 【字段含义】业务数据(非必填),某些非常用的高级特性才需要用到此字段。<br>
+ * 【推荐取值】不建议使用<br>
+ * @param {String} streamId - 【字段含义】绑定腾讯云直播 CDN 流 ID[非必填],设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。<br>
+ * 【推荐取值】限制长度为64字节,可以不填写,一种推荐的方案是使用 “sdkappid_roomid_userid_main” 作为 streamid,这样比较好辨认且不会在您的多个应用中发生冲突。<br>
+ * 【特殊说明】要使用腾讯云直播 CDN,您需要先在[控制台](https://console.cloud.tencent.com/trtc/) 中的功能配置页开启“启动自动旁路直播”开关。<br>
+ * 【参考文档】[CDN 旁路直播](https://cloud.tencent.com/document/product/647/16826)。
+ * @param {String} userDefineRecordId - 【字段含义】设置云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调。<br>
+ * 【推荐取值】限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。<br>
+ * 【参考文档】[云端录制](https://cloud.tencent.com/document/product/647/16823)。
+ */
+export class TRTCParams {
+ constructor(sdkAppId, userId, roomId, userSig, strRoomId, privateMapKey, role, businessInfo, streamId, userDefineRecordId) {
+ this.sdkAppId = sdkAppId;
+ this.userId = userId;
+ this.roomId = roomId;
+ this.userSig = userSig;
+ this.strRoomId = strRoomId;
+ this.privateMapKey = privateMapKey;
+ this.role = role;
+ this.businessInfo = businessInfo;
+ this.streamId = streamId;
+ this.userDefineRecordId = userDefineRecordId;
+ }
+}
+/**
+ * 视频编码参数<br>
+ * 该设置决定了远端用户看到的画面质量(同时也是云端录制出的视频文件的画面质量)。
+ * @param {TRTCVideoResolution} videoResolution - 【字段含义】 视频分辨率<br>
+ * 【推荐取值】 <br>
+ * - 视频通话建议选择360 × 640及以下分辨率,resMode 选择 Portrait。<br>
+ * - 手机直播建议选择 540 × 960,resMode 选择 Portrait。<br>
+ * - Window 和 iMac 建议选择 640 × 360 及以上分辨率,resMode 选择 Landscape。
+ * 【特别说明】 TRTCVideoResolution 默认只能横屏模式的分辨率,例如640 × 360。<br>
+ * 如需使用竖屏分辨率,请指定 resMode 为 Portrait,例如640 × 360结合 Portrait 则为360 × 640。<br>
+ * @param {TRTCVideoResolutionMode} resMode - 【字段含义】分辨率模式(横屏分辨率 - 竖屏分辨率)<br>
+ * 【推荐取值】手机直播建议选择 Portrait,Window 和 Mac 建议选择 Landscape。<br>
+ * 【特别说明】如果 videoResolution 指定分辨率 640 × 360,resMode 指定模式为 Portrait,则最终编码出的分辨率为360 × 640。<br>
+ * @param {Number} videoFps - 【字段含义】视频采集帧率<br>
+ * 【推荐取值】15fps 或 20fps,10fps 以下会有轻微卡顿感,5fps 以下卡顿感明显,20fps 以上的帧率则过于浪费(电影的帧率也只有 24fps)。<br>
+ * 【特别说明】很多 Android 手机的前置摄像头并不支持15fps以上的采集帧率,部分过于突出美颜功能的 Android 手机前置摄像头的采集帧率可能低于10fps。<br>
+ * @param {Number} videoBitrate - 【字段含义】视频上行码率<br>
+ * 【推荐取值】推荐设置请参考本文件前半部分 TRTCVideoResolution 定义处的注释说明<br>
+ * 【特别说明】码率太低会导致视频中有很多的马赛克<br>
+ * @param {Number} minVideoBitrate -【字段含义】最低视频码率,SDK 会在网络不佳的情况下主动降低视频码率,最低会降至 minVideoBitrate 所设定的数值。
+ * 【推荐取值】<br>
+ * - 如果您追求“允许卡顿但要保持清晰”的效果,可以设置 minVideoBitrate 为 videoBitrate 的 60%;
+ * - 如果您追求“允许模糊但要保持流畅”的效果,可以设置 minVideoBitrate 为 200kbps;
+ * - 如果您将 videoBitrate 和 minVideoBitrate 设置为同一个值,等价于关闭 SDK 的自适应调节能力;
+ * - 默认值:0,此时最低码率由 SDK 根据分辨率情况,自动设置合适的数值。<br>
+ * 【特别说明】<br>
+ * - 当您把分辨率设置的比较高时,minVideoBitrate 不适合设置的太低,否则会出现画面模糊和大范围的马赛克宏块。
+ * 比如把分辨率设置为 720p,把码率设置为 200kbps,那么编码出的画面将会出现大范围区域性马赛克。
+ * @param {Boolean} enableAdjustRes - 【字段含义】是否允许调整分辨率<br>
+ * 【推荐取值】 <br>
+ * - 手机直播建议选择 NO。<br>
+ * - 视频通话模式,若更关注流畅性,建议选择 YES,此时若遇到带宽有限的弱网,SDK 会自动降低分辨率以保障更好的流畅度(仅针对 TRTCVideoStreamTypeBig 生效)。
+ * - 默认值:NO。<br>
+ * 【特别说明】若有录制需求,选择 YES 时,请确保通话过程中,调整分辨率不会影响您的录制效果。<br>
+ */
+export class TRTCVideoEncParam {
+ constructor(videoResolution = TRTCVideoResolution.TRTCVideoResolution_640_360, resMode = TRTCVideoResolutionMode.TRTCVideoResolutionModePortrait, videoFps = 15, videoBitrate = 550, minVideoBitrate = 0, enableAdjustRes = false) {
+ this.videoResolution = videoResolution;
+ this.videoResolutionMode = resMode;
+ this.videoFps = videoFps;
+ this.videoBitrate = videoBitrate;
+ this.minVideoBitrate = minVideoBitrate;
+ this.enableAdjustRes = enableAdjustRes;
+ }
+}
+;
+/**
+ * 画面渲染参数<br>
+ * 您可以通过设置此参数来控制画面的旋转、填充、镜像模式
+ * @param {TRTCVideoRotation} rotation - 【字段含义】视频画面旋转方向
+ * @param {TRTCVideoFillMode} fillMode - 【字段含义】视频画面填充模式
+ * @param {TRTCVideoMirrorType} mirrorType - 【字段含义】画面渲染镜像类型
+ */
+export class TRTCRenderParams {
+ constructor(rotation = TRTCVideoRotation.TRTCVideoRotation_0, fillMode = TRTCVideoFillMode.TRTCVideoFillMode_Fit, mirrorType = TRTCVideoMirrorType.TRTCVideoMirrorType_Disable) {
+ this.rotation = rotation;
+ this.fillMode = fillMode;
+ this.mirrorType = mirrorType;
+ }
+}
+/**
+ * 屏幕分享参数(仅适用于 Android 平台)<br>
+ * 该设置决定了远端用户看到的画面质量(同时也是云端录制出的视频文件的画面质量)。
+ * @param {Boolean} enableForegroundService - 是否同时启用 SDK 内置的前台服务,停止屏幕分享时会停止该服务。
+ * 从 Android 10 开始,如果 APP 的 targetSdkVersion 大于等于 29 时,
+ * 需要有 mediaProjection 类型的前台服务才能成功开始,否则会报 SecurityException。您可以自己启动一个前台服务,也可以使用 SDK 内置的前台服务。当使用内置的前台服务时 ** 您需要在 manifest.json 中添加以下内容:<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />**
+ * @param {String} appGroup 默认值为空,仅开启应用内屏幕分享;如需开启应用外屏幕分享,请填写 appGroup,同时在插件中配置相关信息,详见[功能接入/ios部分](https://cloud.tencent.com/document/product/647/113834)
+ */
+export class TRTCScreenShareParams {
+ constructor(enableForegroundService, appGroup) {
+ this.enableForegroundService = enableForegroundService;
+ this.appGroup = appGroup;
+ }
+}
+;
+/**
+ * 音频路由(即声音的播放模式)<br>
+ * @enum {Number}
+ */
+const TRTCAudioRoute_HACK_JSDOC = {
+ /** 使用扬声器播放(即“免提”),扬声器位于手机底部,声音偏大,适合外放音乐 */
+ TRTCAudioRouteSpeaker: 0,
+ /** 使用听筒播放,听筒位于手机顶部,声音偏小,适合需要保护隐私的通话场景 */
+ TRTCAudioRouteEarpiece: 1,
+};
+export var TRTCAudioRoute;
+(function (TRTCAudioRoute) {
+ TRTCAudioRoute[TRTCAudioRoute["TRTCAudioRouteSpeaker"] = 0] = "TRTCAudioRouteSpeaker";
+ TRTCAudioRoute[TRTCAudioRoute["TRTCAudioRouteEarpiece"] = 1] = "TRTCAudioRouteEarpiece";
+})(TRTCAudioRoute || (TRTCAudioRoute = {}));
+/////////////////////////////////////////////////////////////////////////////////
+//
+// 【其它参数】
+//
+/////////////////////////////////////////////////////////////////////////////////
+export var TRTCShareSource;
+(function (TRTCShareSource) {
+ TRTCShareSource["InApp"] = "InApp";
+ TRTCShareSource["ByReplaykit"] = "ByReplaykit";
+})(TRTCShareSource || (TRTCShareSource = {}));
+/**
+ * 重力感应开关(仅适用于移动端)<br>
+ * @enum {Number}
+ */
+const TRTCGSensorMode_HACK_JSDOC = {
+ /** 不适配重力感应,该模式是桌面平台上的默认值,该模式下,当前用户发布出去的视频画面不受重力感应方向变化的影响。 */
+ TRTC_GSENSOR_MODE_DISABLE: 0,
+ /** 适配重力感应,该模式是移动平台上的默认值,该模式下,当前用户发布出去的视频画面会跟随设备的重力感应方向进行相应的调整,同时本地预览画面保持方向不变。
+ SDK 目前支持的一种适配模式是:当手机或 Pad 上下颠倒时,为了保证远端用户看到的画面方向正常,SDK 会自动将发布出去的画面上下旋转180度。如果您的 APP 的界面层开启了重力感应自适应,推荐使用 UIFixLayout 模式。
+ */
+ TRTC_GSENSOR_MODE_UIAUTOLAYOUT: 1,
+};
+export var TRTCGSensorMode;
+(function (TRTCGSensorMode) {
+ TRTCGSensorMode[TRTCGSensorMode["TRTC_GSENSOR_MODE_DISABLE"] = 0] = "TRTC_GSENSOR_MODE_DISABLE";
+ TRTCGSensorMode[TRTCGSensorMode["TRTC_GSENSOR_MODE_UIAUTOLAYOUT"] = 1] = "TRTC_GSENSOR_MODE_UIAUTOLAYOUT";
+})(TRTCGSensorMode || (TRTCGSensorMode = {}));
+/**
+ * 系统音量类型(仅适用于移动端)<br>
+ * - 通话音量:手机专门为接打电话所设计的音量类型,自带回声抵消(AEC)功能,并且支持通过蓝牙耳机上的麦克风进行拾音,缺点是音质比较一般。当您通过手机侧面的音量按键下调手机音量时,如果无法将其调至零(也就是无法彻底静音),说明您的手机当前处于通话音量。
+ * - 媒体音量:手机专门为音乐场景所设计的音量类型,无法使用系统的 AEC 功能,并且不支持通过蓝牙耳机的麦克风进行拾音,但具备更好的音乐播放效果。当您通过手机侧面的音量按键下调手机音量时,如果能够将手机音量调至彻底静音,说明您的手机当前处于媒体音量。
+ * @enum {Number}
+ */
+const TXSystemVolumeType_HACK_JSDOC = {
+ /**
+ * 自动切换模式:
+ * 也被称为“麦上通话,麦下媒体”,即主播上麦时使用通话音量,观众不上麦则使用媒体音量,适合在线直播场景。
+ * 如果您在 enterRoom 时选择的场景为 TRTCAppSceneLIVE 或 TRTCAppSceneVoiceChatRoom,SDK 会自动使用该模式。
+ */
+ TXSystemVolumeTypeAuto: 0,
+ /**
+ * 全程媒体音量:
+ * 通话全程使用媒体音量,并不是非常常用的音量类型,适用于对音质要求比较苛刻的音乐场景中。
+ * 如果您的用户大都使用外接设备(比如外接声卡)为主,可以使用该模式,否则请慎用。
+ */
+ TXSystemVolumeTypeMedia: 1,
+ /**
+ * 全程通话音量:
+ * 该方案的优势在于用户在上下麦时音频模块无需切换工作模式,可以做到无缝上下麦,适合于用户需要频繁上下麦的应用场景。
+ * 如果您在 enterRoom 时选择的场景为 TRTCAppSceneVideoCall 或 TRTCAppSceneAudioCall,SDK 会自动使用该模式。
+ */
+ TXSystemVolumeTypeVOIP: 2,
+};
+export var TXSystemVolumeType;
+(function (TXSystemVolumeType) {
+ TXSystemVolumeType[TXSystemVolumeType["TXSystemVolumeTypeAuto"] = 0] = "TXSystemVolumeTypeAuto";
+ TXSystemVolumeType[TXSystemVolumeType["TXSystemVolumeTypeMedia"] = 1] = "TXSystemVolumeTypeMedia";
+ TXSystemVolumeType[TXSystemVolumeType["TXSystemVolumeTypeVOIP"] = 2] = "TXSystemVolumeTypeVOIP";
+})(TXSystemVolumeType || (TXSystemVolumeType = {}));
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/constants.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/constants.js
new file mode 100644
index 0000000..fca320d
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/constants.js
@@ -0,0 +1,10 @@
+export const NAME = {
+ ANDROID: 'android',
+ IOS: 'ios',
+ STRING: 'string',
+ FUNCTION: 'function',
+ BOOLEAN: 'boolean',
+ NUMBER: 'number',
+ LOG_PREFIX: '【UniApp-JS】',
+};
+export const errorCodeUrl = 'https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/ErrorCode.html';
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/index.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/index.js
new file mode 100644
index 0000000..e0c6a1b
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/lib/index.js
@@ -0,0 +1,1086 @@
+import TrtcCloudImpl from './TrtcCloudImpl.js';
+import { TRTCVideoStreamType } from './TrtcDefines.js';
+const version = '1.4.5';
+export * from './TrtcDefines.js';
+/**
+ * TrtcCloud
+ *
+ * @class TrtcCloud
+ */
+export default class TrtcCloud {
+ /**
+ * 创建 TrtcCloud 单例
+ *
+ * @static
+ * @memberof TrtcCloud
+ * @example
+ * TrtcCloud.createInstance();
+ */
+ static createInstance() {
+ console.log('----------------------------------------------------------------');
+ console.log(` SDK ${version} `);
+ console.log('----------------------------------------------------------------');
+ return TrtcCloudImpl._createInstance();
+ }
+ /**
+ * 销毁 TrtcCloud 单例
+ *
+ * @static
+ * @memberof TrtcCloud
+ * @example
+ * TrtcCloud.destroyInstance();
+ */
+ static destroyInstance() {
+ return TrtcCloudImpl._destroyInstance();
+ }
+ /**
+ * 设置 TrtcCloud 事件监听
+ *
+ * @param {String} event 事件名称
+ * @param {Function} callback 事件回调
+ * @memberof TrtcCloud
+ *
+ * @example
+ * this.trtcCloud = TrtcCloud.createInstance(); // 创建 trtcCloud 实例
+ * this.trtcCloud.on('onEnterRoom', (res) => {});
+ */
+ on(event, callback) {
+ return TrtcCloudImpl._getInstance().on(event, callback);
+ }
+ /**
+ * 取消事件绑定<br>
+ *
+ * @param {String} event 事件名称,传入通配符 '*' 会解除所有事件绑定。
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.off('onEnterRoom');
+ *
+ * this.trtcCloud.off('*'); // 取消所有绑定的事件
+ */
+ off(event) {
+ return TrtcCloudImpl._getInstance().off(event);
+ }
+ /**
+ * 进房<br>
+ * 调用接口后,您会收到来自 TRTCCallback 中的 [onEnterRoom(result)]{@link TRTCCallback#onEnterRoom} 回调
+ * 如果加入成功,result 会是一个正数(result > 0),表示加入房间所消耗的时间,单位是毫秒(ms)。<br>
+ * 如果加入失败,result 会是一个负数(result < 0),表示进房失败的错误码。
+ *
+ * * 参数 scene 的枚举值如下:
+ * - {@link TRTCAppSceneVideoCall}:<br>
+ * 视频通话场景,支持720P、1080P高清画质,单个房间最多支持300人同时在线,最高支持50人同时发言。<br>
+ * 适合:[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。<br>
+ * - {@link TRTCAppSceneAudioCall}:<br>
+ * 语音通话场景,支持 48kHz,支持双声道。单个房间最多支持300人同时在线,最高支持50人同时发言。<br>
+ * 适合:[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。<br>
+ * - {@link TRTCAppSceneLIVE}:<br>
+ * 视频互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。<br>
+ * 适合:[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。<br>
+ * - {@link TRTCAppSceneVoiceChatRoom}:<br>
+ * 语音互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。<br>
+ * 适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。<br>
+ *
+ * **Note:**
+ * 1. 当 scene 选择为 TRTCAppSceneLIVE 或 TRTCAppSceneVoiceChatRoom 时,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。
+ * 2. 不管进房是否成功,enterRoom 都必须与 exitRoom 配对使用,在调用 `exitRoom` 前再次调用 `enterRoom` 函数会导致不可预期的错误问题。
+ *
+ * @param {TRTCParams} params - 进房参数
+ * @param {Number} params.sdkAppId - 应用标识(必填)
+ * @param {String} params.userId - 用户标识(必填)
+ * @param {String} params.userSig - 用户签名(必填)
+ * @param {Number} params.roomId - 房间号码, roomId 和 strRoomId 必须填一个, 若您选用 strRoomId,则 roomId 需要填写为0。
+ * @param {String} params.strRoomId - 字符串房间号码 [选填],在同一个房间内的用户可以看到彼此并进行视频通话, roomId 和 strRoomId 必须填一个。若两者都填,则优先选择 roomId
+ * @param {TRTCRoleType} params.role - 直播场景下的角色,默认值:主播
+ * - TRTCRoleAnchor: 主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。
+ * - TRTCRoleAudience: 观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。
+ * @param {String=} params.privateMapKey - 房间签名(非必填)
+ * @param {String=} params.businessInfo - 业务数据(非必填)
+ * @param {String=} params.streamId - 自定义 CDN 播放地址(非必填)
+ * @param {String=} params.userDefineRecordId - 设置云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调(非必填)
+ * @param {TRTCAppScene} scene 应用场景,目前支持视频通话(TRTCAppSceneVideoCall)、语音通话(TRTCAppSceneAudioCall)、在线直播(TRTCAppSceneLIVE)、语音聊天室(VTRTCAppSceneVoiceChatRoom)四种场景,
+ * 详见 [TrtcDefines] 中 TRTCAppScene 参数定义
+ *
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCAppScene } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud = TrtcCloud.createInstance(); // 创建实例,只需创建一次
+ * const params = {
+ * sdkAppId: 0,
+ * userId: 'xxx',
+ * roomId: 12345,
+ * userSig: 'xxx'
+ * };
+ * this.trtcCloud.enterRoom(params, TRTCAppScene.TRTCAppSceneVideoCall);
+ */
+ enterRoom(params, scene) {
+ return TrtcCloudImpl._getInstance().enterRoom(params, scene);
+ }
+ /**
+ * 退房<br>
+ * 执行退出房间的相关逻辑释放资源后,SDK 会通过 `onExitRoom()` 回调通知到您
+ *
+ * **Note:**
+ * 1. 如果您要再次调用 `enterRoom()` 或者切换到其它的音视频 SDK,请等待 `onExitRoom()` 回调到来后再执行相关操作,否则可能会遇到如摄像头、麦克风设备被强占等各种异常问题。
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.exitRoom();
+ */
+ exitRoom() {
+ return TrtcCloudImpl._getInstance().exitRoom();
+ }
+ /**
+ * 切换角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)
+ *
+ * 在直播场景下,一个用户可能需要在“观众”和“主播”之间来回切换。
+ * 您可以在进房前通过 TRTCParams 中的 role 字段确定角色,也可以通过 switchRole 在进房后切换角色。
+ *
+ * @param {TRTCRoleType} role - 目标角色,默认为主播
+ * - TRTCRoleAnchor: 主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。
+ * - TRTCRoleAudience: 观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。
+ *
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCRoleType } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.switchRole(TRTCRoleType.TRTCRoleAudience);
+ */
+ switchRole(role) {
+ return TrtcCloudImpl._getInstance().switchRole(role);
+ }
+ /**
+ * 请求跨房通话
+ *
+ * 默认情况下,只有同一个房间中的用户之间可以进行音视频通话,不同的房间之间的音视频流是相互隔离的。
+ * 使用该接口让身处两个不同房间中的主播进行跨房间的音视频流分享,从而让每个房间中的观众都能观看到这两个主播的音视频。
+ * 跨房通话的请求结果会通过监听 [onConnectOtherRoom](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TRTCCallback.html#event:onConnectOtherRoom) 事件通知给您。
+ *
+ * @param {Object} params - 跨房通话参数
+ * - 如果对端的房间号为数字,那么传入的参数为 roomId。
+ * - 如果对端的房间号为字符串,那么传入的参数为 strRoomId。
+ * - 针对对端的房间号类型传递对应参数,不需要两个同时传递。具体请看 example 的使用。
+ * @param {Number} params.roomId 跨房通话时对端的数字房间号 roomId(与 strRoomId 选填其中一个,不可同时传递)
+ * @param {String} params.strRoomId 跨房通话时对端的字符串房间号 strRoomId(与 roomId 选填其中一个,不可同时传递)
+ * @param {String} params.userId 跨房通话时对端的 userId(必填)
+ *
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.connectOtherRoom({"roomId": 1233, "userId": "user_11"});
+ * this.trtcCloud.connectOtherRoom({"strRoomId": "1233", "userId": "user_22"});
+ */
+ connectOtherRoom(params) {
+ return TrtcCloudImpl._getInstance().connectOtherRoom(params);
+ }
+ /**
+ * 退出跨房通话
+ *
+ * 退出跨房通话的请求结果会通过监听 [onDisconnectOtherRoom](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TRTCCallback.html#event:onDisconnectOtherRoom) 事件通知给您。
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.disconnectOtherRoom();
+ */
+ disconnectOtherRoom() {
+ return TrtcCloudImpl._getInstance().disconnectOtherRoom();
+ }
+ /**
+ * 开启本地视频的预览画面<br>
+ * 当开始渲染首帧摄像头画面时,您会收到 `onFirstVideoFrame(null)` 回调
+ *
+ * @param {Boolean} isFrontCamera 前置、后置摄像头,true:前置摄像头;false:后置摄像头,**默认为 true**
+ * @param {String=} viewId 用于承载视频画面的渲染控件,使用原生插件中的 TRTCCloudUniPlugin-TXLocalViewComponent component,需要提供 viewId 属性值,例如 viewId=userId
+ * @memberof TrtcCloud
+ * @example
+ * // 预览本地画面
+ * const viewId = this.userId;
+ * this.trtcCloud.startLocalPreview(true, viewId);
+ */
+ startLocalPreview(isFrontCamera = true, viewId) {
+ return TrtcCloudImpl._getInstance().startLocalPreview(isFrontCamera, viewId);
+ }
+ /**
+ * 设置视频编码器的编码参数
+ * - 该设置能够决定远端用户看到的画面质量,同时也能决定云端录制出的视频文件的画面质量。
+ * @param {TRTCVideoEncParam} param 用于设置视频编码器的相关参数
+ * @memberof TrtcCloud
+ * @example
+ *
+ * import { TRTCVideoResolution, TRTCVideoResolutionMode, TRTCVideoEncParam } from '@/TrtcCloud/lib/TrtcDefines';
+ * const videoResolution = TRTCVideoResolution.TRTCVideoResolution_480_360;
+ * const videoResolutionMode = TRTCVideoResolutionMode.TRTCVideoResolutionModeLandscape; // 横屏采集
+ * const videoFps = 15;
+ * const videoBitrate = 900;
+ * const minVideoBitrate = 200;
+ * const enableAdjustRes = false;
+ * // const param = new TRTCVideoEncParam(videoResolution, videoResolutionMode, videoFps, videoBitrate, minVideoBitrate, enableAdjustRes); // v1.1.0 方式
+ *
+ * const param = { // v1.2.0 以上版本支持的方式
+ * videoResolution,
+ * videoResolutionMode,
+ * videoFps,
+ * videoBitrate,
+ * minVideoBitrate,
+ * enableAdjustRes,
+ * };
+ *
+ * this.trtcCloud.setVideoEncoderParam(param);
+ */
+ setVideoEncoderParam(param) {
+ return TrtcCloudImpl._getInstance().setVideoEncoderParam(param);
+ }
+ /**
+ * 切换前置或后置摄像头
+ *
+ * @param {Boolean} isFrontCamera 前置、后置摄像头,true:前置摄像头;false:后置摄像头
+ * @memberof TrtcCloud
+ * @example
+ * // 切换前置或后置摄像头
+ * const isFrontCamera = true;
+ * this.trtcCloud.switchCamera(isFrontCamera);
+ */
+ switchCamera(isFrontCamera) {
+ return TrtcCloudImpl._getInstance().switchCamera(isFrontCamera);
+ }
+ /**
+ * 停止本地视频采集及预览
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.stopLocalPreview();
+ */
+ stopLocalPreview() {
+ return TrtcCloudImpl._getInstance().stopLocalPreview();
+ }
+ /**
+ * 设置本地画面的渲染参数,可设置的参数包括有:画面的旋转角度、填充模式以及左右镜像等。
+ * @param {TRTCRenderParams} params - 本地图像的参数
+ * @param {TRTCVideoRotation} params.rotation - 图像的顺时针旋转角度,支持90、180以及270旋转角度,默认值:TRTCVideoRotation.TRTCVideoRotation_0
+ * @param {TRTCVideoFillMode} params.fillMode - 视频画面填充模式,填充(画面可能会被拉伸裁剪)或适应(画面可能会有黑边),默认值:TRTCVideoFillMode.TRTCVideoFillMode_Fill
+ * @param {TRTCVideoMirrorType} params.mirrorType - 画面镜像模式,默认值:TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
+ *
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoRotation, TRTCVideoFillMode, TRTCVideoMirrorType } from '@/TrtcCloud/lib/TrtcDefines';
+ * const renderParams = {
+ * rotation: TRTCVideoRotation.TRTCVideoRotation_0,
+ * fillMode: TRTCVideoFillMode.TRTCVideoFillMode_Fill,
+ * mirrorType: TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
+ * };
+ * this.trtcCloud.setLocalRenderParams(renderParams);
+ */
+ setLocalRenderParams(params) {
+ return TrtcCloudImpl._getInstance().setLocalRenderParams(params);
+ }
+ /**
+ * 暂停/恢复发布本地的视频流
+ *
+ * 该接口可以暂停(或恢复)发布本地的视频画面,暂停之后,同一房间中的其他用户将无法继续看到自己画面。 该接口在指定 TRTCVideoStreamTypeBig 时等效于 start/stopLocalPreview 这两个接口,但具有更好的响应速度。 因为 start/stopLocalPreview 需要打开和关闭摄像头,而打开和关闭摄像头都是硬件设备相关的操作,非常耗时。 相比之下,muteLocalVideo 只需要在软件层面对数据流进行暂停或者放行即可,因此效率更高,也更适合需要频繁打开关闭的场景。 当暂停/恢复发布指定 TRTCVideoStreamTypeBig 后,同一房间中的其他用户将会收到 onUserVideoAvailable 回调通知。 当暂停/恢复发布指定 TRTCVideoStreamTypeSub 后,同一房间中的其他用户将会收到 onUserSubStreamAvailable 回调通知。
+ * @param {Number} streamType 要暂停/恢复的视频流类型(仅支持 TRTCVideoStreamTypeBig 和 TRTCVideoStreamTypeSub)
+ * @param {Boolean} mute - true:屏蔽;false:开启,默认值:false
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.muteLocalVideo(TRTCVideoStreamType.TRTCVideoStreamTypeBig, true);
+ */
+ muteLocalVideo(streamType, mute) {
+ return TrtcCloudImpl._getInstance().muteLocalVideo(streamType, mute);
+ }
+ /**
+ * 显示远端视频或辅流<br>
+ *
+ * @param {String} userId 指定远端用户的 userId
+ * @param {Number} streamType 指定要观看 userId 的视频流类型
+ * - 高清大画面:TRTCVideoStreamType.TRTCVideoStreamTypeBig
+ * - 低清小画面:TRTCVideoStreamType.TRTCVideoStreamTypeSmall
+ * - 辅流(屏幕分享):TRTCVideoStreamType.TRTCVideoStreamTypeSub
+ * @param {String} viewId 用于承载视频画面的渲染控件,使用原生插件中的 TRTCCloudUniPlugin-TXRemoteViewComponent component,需要提供 viewId 属性值,例如 viewId=userId
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
+ * const viewId = this.remoteUserId;
+ * this.trtcCloud.startRemoteView(userId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, viewId);
+ */
+ startRemoteView(userId, streamType, viewId) {
+ return TrtcCloudImpl._getInstance().startRemoteView(userId, streamType, viewId);
+ }
+ /**
+ * 停止显示远端视频画面,同时不再拉取该远端用户的视频数据流<br>
+ * 指定要停止观看的 userId 的视频流类型
+ *
+ * @param {String} userId 指定的远端用户 ID
+ * @param {Number} streamType
+ * - 高清大画面:TRTCVideoStreamType.TRTCVideoStreamTypeBig
+ * - 低清小画面:TRTCVideoStreamType.TRTCVideoStreamTypeSmall
+ * - 辅流(屏幕分享):TRTCVideoStreamType.TRTCVideoStreamTypeSub
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.stopRemoteView(remoteUserId, TRTCVideoStreamType.TRTCVideoStreamTypeBig);
+ */
+ stopRemoteView(userId, streamType) {
+ return TrtcCloudImpl._getInstance().stopRemoteView(userId, streamType);
+ }
+ /**
+ * 设置远端画面的渲染参数,可设置的参数包括有:画面的旋转角度、填充模式以及左右镜像等。
+ * @param {String} userId 远端用户 ID
+ * @param {Number} streamType 可以设置为主路画面(TRTCVideoStreamTypeBig)或辅路画面(TRTCVideoStreamTypeSub)
+ * @param {TRTCRenderParams} params - 图像的参数
+ * @param {TRTCVideoRotation} params.rotation - 图像的顺时针旋转角度,支持90、180以及270旋转角度,默认值:TRTCVideoRotation.TRTCVideoRotation_0
+ * @param {TRTCVideoFillMode} params.fillMode - 视频画面填充模式,填充(画面可能会被拉伸裁剪)或适应(画面可能会有黑边),默认值:TRTCVideoFillMode.TRTCVideoFillMode_Fill
+ * @param {TRTCVideoMirrorType} params.mirrorType - 画面镜像模式,默认值:TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoRotation, TRTCVideoFillMode, TRTCVideoMirrorType } from '@/TrtcCloud/lib/TrtcDefines';
+ * const renderParams = {
+ * rotation: TRTCVideoRotation.TRTCVideoRotation_0,
+ * fillMode: TRTCVideoFillMode.TRTCVideoFillMode_Fill,
+ * mirrorType: TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
+ * };
+ * this.trtcCloud.setRemoteRenderParams(userId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, renderParams);
+ */
+ setRemoteRenderParams(userId, streamType, params) { }
+ /**
+ * 设置视频编码器输出的画面方向<br>
+ * 该设置不影响本地画面的预览方向,但会影响房间中其他用户所观看到(以及云端录制文件)的画面方向。
+ * 当用户将手机或 Pad 上下颠倒时,由于摄像头的采集方向没有变,所以房间中其他用户所看到的画面会变成上下颠倒的,
+ * 在这种情况下,您可以通过调用该接口将 SDK 编码出的画面方向旋转180度,如此一来,房间中其他用户所看到的画面可保持正常的方向。
+ * 如果您希望实现上述这种友好的交互体验,我们更推荐您直接调用 setGSensorMode 实现更加智能的方向适配,无需您手动调用本接口。
+ * @param {Number} rotation 目前支持 0、90、180、270 两个旋转角度,默认值:TRTCVideoRotation_0,即不旋转。
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoRotation } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.setVideoEncoderRotation(TRTCVideoRotation.TRTCVideoRotation_90);
+ */
+ setVideoEncoderRotation(rotation) {
+ return TrtcCloudImpl._getInstance().setVideoEncoderRotation(rotation);
+ }
+ /**
+ * 设置编码器输出的画面镜像模式
+ * @param {Boolean} mirror 是否开启远端镜像,true:开启远端画面镜像;false:关闭远端画面镜像,默认值:false。
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.setVideoEncoderMirror(true);
+ */
+ setVideoEncoderMirror(mirror) {
+ return TrtcCloudImpl._getInstance().setVideoEncoderMirror(mirror);
+ }
+ /**
+ * 设置重力感应的适配模式<br>
+ * 您可以通过本接口实现如下这种友好的交互体验:
+ * 当用户将手机或 Pad 上下颠倒时,由于摄像头的采集方向没有变,所以房间中其他用户所看到的画面会变成上下颠倒的,
+ * 在这种情况下,您可以通过调用该接口让 SDK 根据设备陀螺仪的朝向自动调整本地画面和编码器输出画面的旋转方向,以使远端观众可以看到正常朝向的画面。
+ * @param {Number} mode 重力感应模式,详情请参见 TRTCGSensorMode,默认值:TRTCGSensorMode_UIAutoLayout。。
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCGSensorMode } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.setGSensorMode(TRTCGSensorMode.TRTC_GSENSOR_MODE_DISABLE);
+ */
+ setGSensorMode(mode) {
+ return TrtcCloudImpl._getInstance().setGSensorMode(mode);
+ }
+ /**
+ * 视频画面截图
+ *
+ * 您可以通过本接口截取本地的视频画面,远端用户的主路画面以及远端用户的辅路(屏幕分享)画面。
+ *
+ * @param {String | null} userId 用户 ID,如指定 null 表示截取本地的视频画面
+ * @param {Number} streamType 视频流类型,可选择截取主路画面(TRTCVideoStreamTypeBig,常用于摄像头)或辅路画面(TRTCVideoStreamTypeSub,常用于屏幕分享)
+ * @param {TRTCSnapshotSourceType} sourceType 画面来源,可选择截取视频流画面(TRTCSnapshotSourceTypeStream)或视频渲染画面(TRTCSnapshotSourceTypeView),前者一般更清晰
+ *
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.snapshotVideo(null, TRTCVideoStreamType.TRTCVideoStreamTypeBig, TRTCSnapshotSourceType.TRTCSnapshotSourceTypeStream); // 截取本地视频流画面
+ * this.trtcCloud.snapshotVideo(this.remoteUserId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, TRTCSnapshotSourceType.TRTCSnapshotSourceTypeView); // 截取远端指定用户视频渲染画面
+ */
+ snapshotVideo(userId, streamType, sourceType) {
+ return TrtcCloudImpl._getInstance().snapshotVideo(userId, streamType, sourceType);
+ }
+ /**
+ * 开启本地音频的采集和上行, 并设置音频质量<br>
+ * 该函数会启动麦克风采集,并将音频数据传输给房间里的其他用户。 SDK 不会默认开启本地音频采集和上行,您需要调用该函数开启,否则房间里的其他用户将无法听到您的声音<br>
+ * 主播端的音质越高,观众端的听感越好,但传输所依赖的带宽也就越高,在带宽有限的场景下也更容易出现卡顿
+ *
+ * @param {TRTCAudioQuality} quality 声音音质
+ * - TRTCAudioQualitySpeech,流畅:采样率:16k;单声道;音频裸码率:16kbps;适合语音通话为主的场景,比如在线会议,语音通话。
+ * - TRTCAudioQualityDefault,默认:采样率:48k;单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。
+ * - TRTCAudioQualityMusic,高音质:采样率:48k;双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如在线K歌、音乐直播等
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCAudioQuality } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.startLocalAudio(TRTCAudioQuality.TRTCAudioQualityDefault);
+ */
+ startLocalAudio(quality) {
+ return TrtcCloudImpl._getInstance().startLocalAudio(quality);
+ }
+ /**
+ * 关闭本地音频的采集和上行<br>
+ * 当关闭本地音频的采集和上行,房间里的其它成员会收到 `onUserAudioAvailable(false)` 回调通知
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.stopLocalAudio();
+ */
+ stopLocalAudio() {
+ return TrtcCloudImpl._getInstance().stopLocalAudio();
+ }
+ /**
+ * 静音本地的音频
+ *
+ * 当静音本地音频后,房间里的其它成员会收到 onUserAudioAvailable(false) 回调通知。
+ * 与 stopLocalAudio 不同之处在于,muteLocalAudio 并不会停止发送音视频数据,而是会继续发送码率极低的静音包。
+ * 在对录制质量要求很高的场景中,选择 muteLocalAudio 是更好的选择,能录制出兼容性更好的 MP4 文件。
+ * 这是由于 MP4 等视频文件格式,对于音频的连续性是要求很高的,简单粗暴地 stopLocalAudio 会导致录制出的 MP4 不易播放。
+ *
+ * @param {Boolean} mute - true:屏蔽;false:开启,默认值:false
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.muteLocalAudio(true);
+ */
+ muteLocalAudio(mute) {
+ return TrtcCloudImpl._getInstance().muteLocalAudio(mute);
+ }
+ /**
+ * 静音掉某一个用户的声音,同时不再拉取该远端用户的音频数据流
+ *
+ * @param {String} userId - 用户 ID
+ * @param {Boolean} mute - true:静音;false:非静音
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.muteRemoteAudio('denny', true);
+ */
+ muteRemoteAudio(userId, mute) {
+ return TrtcCloudImpl._getInstance().muteRemoteAudio(userId, mute);
+ }
+ /**
+ * 静音掉所有用户的声音,同时不再拉取该远端用户的音频数据流
+ *
+ * @param {Boolean} mute - true:静音;false:非静音
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.muteAllRemoteAudio(true);
+ */
+ muteAllRemoteAudio(mute) {
+ return TrtcCloudImpl._getInstance().muteAllRemoteAudio(mute);
+ }
+ /**
+ * 设置音频路由
+ *
+ * 设置“音频路由”,即设置声音是从手机的扬声器还是从听筒中播放出来,因此该接口仅适用于手机等移动端设备。 手机有两个扬声器:一个是位于手机顶部的听筒,一个是位于手机底部的立体声扬声器。
+ * 设置音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。 设置音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
+ *
+ * @param {TRTCAudioRoute} route 音频路由,即声音由哪里输出(扬声器、听筒), 默认值:TRTCAudioRoute.TRTCAudioRouteSpeaker(扬声器),
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCAudioRoute } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.setAudioRoute(TRTCAudioRoute.TRTCAudioRouteSpeaker); // TRTCAudioRoute.TRTCAudioRouteEarpiece (听筒)
+ */
+ setAudioRoute(route) {
+ return TrtcCloudImpl._getInstance().setAudioRoute(route);
+ }
+ /**
+ * 启用或关闭音量大小提示
+ *
+ * 开启此功能后,SDK 会在 onUserVoiceVolume() 中反馈对每一路声音音量大小值的评估。
+ *
+ * **Note:**
+ * - 如需打开此功能,请在 startLocalAudio 之前调用才可以生效。
+ *
+ * @param {Number} interval - 设置 onUserVoiceVolume 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.enableAudioVolumeEvaluation(300);
+ */
+ enableAudioVolumeEvaluation(interval) {
+ return TrtcCloudImpl._getInstance().enableAudioVolumeEvaluation(interval);
+ }
+ /////////////////////////////////////////////////////////////////////////////////
+ //
+ // 屏幕分享
+ //
+ /////////////////////////////////////////////////////////////////////////////////
+ /**
+ * 设置屏幕分享(即辅路)的视频编码参数
+ *
+ * 该接口可以设定远端用户所看到的屏幕分享(即辅路)的画面质量,同时也能决定云端录制出的视频文件中屏幕分享的画面质量。 请注意如下两个接口的差异:
+ * - setVideoEncoderParam 用于设置主路画面(TRTCVideoStreamTypeBig,一般用于摄像头)的视频编码参数。
+ * - setSubStreamEncoderParam 用于设置辅路画面(TRTCVideoStreamTypeSub,一般用于屏幕分享)的视频编码参数。
+ *
+ * **Note:**
+ * - 即使您使用主路传输屏幕分享(在调用 startScreenCapture 时设置 type=TRTCVideoStreamTypeBig),依然要使用 setSubStreamEncoderParam 设定屏幕分享的编码参数,而不要使用 setVideoEncoderParam
+ * @param {TRTCVideoEncParam} param 辅流编码参数,详情请参考 TRTCVideoEncParam。
+ * @memberof TrtcCloud
+ * @example
+ * const params = {
+ * videoResolution: TRTCVideoResolution.TRTCVideoResolution_640_360,
+ * videoResolutionMode: TRTCVideoResolutionMode.TRTCVideoResolutionModePortrait,
+ * videoFps: 15,
+ * videoBitrate: 900,
+ * minVideoBitrate: 200,
+ * enableAdjustRes: false,
+ * };
+ * this.trtcCloud.setSubStreamEncoderParam(params);
+ */
+ setSubStreamEncoderParam(param) {
+ return TrtcCloudImpl._getInstance().setSubStreamEncoderParam(param);
+ }
+ /**
+ * 启动屏幕分享
+ *
+ * **Note:**
+ * - 一个用户同时最多只能上传一条主路(TRTCVideoStreamTypeBig)画面和一条辅路(TRTCVideoStreamTypeSub)画面,
+ * 默认情况下,屏幕分享使用辅路画面,如果使用主路画面,建议您提前停止摄像头采集(stopLocalPreview)避免相互冲突。
+ * - **仅支持 iOS 13.0 及以上系统,进行应用内的屏幕分享;若要应用外屏幕分享,需填写 shareParams.appGroup 字段。**
+ * - **Android: UniApp 使用 SDK 内置的前台服务时,只需要将接口参数 enableForegroundService 设置为 true。**
+ * - **Android: UniApp 自己启动前台,需要在 mediaProject 类型的前台服务成功后再启动屏幕分享。**
+ *
+ * @param {Number} streamType 屏幕分享使用的线路,可以设置为主路(TRTCVideoStreamTypeBig)或者辅路(TRTCVideoStreamTypeSub),推荐使用
+ * @param {TRTCVideoEncParam} encParams 屏幕分享的画面编码参数,可以设置为 null,表示让 SDK 选择最佳的编码参数(分辨率、码率等)。即使在调用 startScreenCapture 时设置 type=TRTCVideoStreamTypeBig,依然可以使用此接口更新屏幕分享的编码参数。
+ * @param {TRTCScreenShareParams} shareParams 您可以通过其中的 enableForegroundService 参数启用 SDK 内置的前台服务; 当 appGroup 正确填写时,会开启 iOS 系统屏幕分享;如果不填写 appGroup, 则默认使用应用内屏幕分享。
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoResolution, TRTCVideoResolutionMode, TRTCVideoStreamType} from '@/TrtcCloud/lib/TrtcDefines';
+ * const encParams = {
+ * videoResolution: TRTCVideoResolution.TRTCVideoResolution_640_360,
+ * videoResolutionMode: TRTCVideoResolutionMode.TRTCVideoResolutionModePortrait,
+ * videoFps: 15,
+ * videoBitrate: 900,
+ * minVideoBitrate: 200,
+ * enableAdjustRes: false,
+ * };
+ * const shareParams = {
+ * enableForegroundService: true,
+ * appGroup: 'xxx',
+ * };
+ * this.trtcCloud.startScreenCapture(TRTCVideoStreamType.TRTCVideoStreamTypeSub, encParams, shareParams);
+ */
+ startScreenCapture(streamType = TRTCVideoStreamType.TRTCVideoStreamTypeSub, encParams = null, shareParams = {}) {
+ return TrtcCloudImpl._getInstance().startScreenCapture(streamType, encParams, shareParams);
+ }
+ /**
+ * 停止屏幕分享
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.stopScreenCapture();
+ */
+ stopScreenCapture() {
+ return TrtcCloudImpl._getInstance().stopScreenCapture();
+ }
+ /**
+ * 暂停屏幕分享
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.pauseScreenCapture();
+ */
+ pauseScreenCapture() {
+ return TrtcCloudImpl._getInstance().pauseScreenCapture();
+ }
+ /**
+ * 恢复屏幕分享
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.resumeScreenCapture();
+ */
+ resumeScreenCapture() {
+ return TrtcCloudImpl._getInstance().resumeScreenCapture();
+ }
+ /**
+ * 设置系统音量类型(仅适用于移动设备)
+ *
+ * @param {TXSystemVolumeType} type 系统音量类型
+ *
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.setSystemVolumeType(TXSystemVolumeType.TXSystemVolumeTypeAuto)
+ */
+ setSystemVolumeType(type) {
+ return TrtcCloudImpl._getInstance().setSystemVolumeType(type);
+ }
+ /**
+ * 设置本地画面被暂停期间的替代图片
+ *
+ * 当您调用 muteLocaLVideo(true)暂停本地画面时,您可以通过调用本接口设置一张替代图片,设置后,房间中的其他用户会看到这张替代图片,而不是黑屏画面。
+ *
+ * @param {Number} fps 设置替代图片帧率,最小值为5,最大值为10,默认5。
+ * @param {String} image 设置替代图片,空值代表在 muteLocalVideo 之后不再发送视频流数据,默认值为空。
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.setVideoMuteImage(6, 'xxxx');
+ */
+ setVideoMuteImage(fps, image) {
+ return TrtcCloudImpl._getInstance().setVideoMuteImage(fps, image);
+ }
+ /**
+ * 开启大小画面双路编码模式
+ *
+ * 开启双路编码模式后,当前用户的编码器会同时输出【高清大画面】和【低清小画面】两路视频流(但只有一路音频流)。
+ * 如此以来,房间中的其他用户就可以根据自身的网络情况或屏幕大小选择订阅【高清大画面】或是【低清小画面】。
+
+ * @param {Boolean} enable 是否开启小画面编码,默认值:false。
+ * @param {TRTCVideoEncParam} smallVideoEncParam 小流的视频参数。
+ *
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCVideoEncParam, TRTCVideoResolution, TRTCVideoResolutionMode } from '@/TrtcCloud/lib/TrtcDefines';
+ * this.trtcCloud.enableEncSmallVideoStream(true, {videoResolution: TRTCVideoResolution.TRTCVideoResolution_120_120, videoResolutionMode: TRTCVideoResolutionMode.TRTCVideoResolutionModeLandscape})
+ */
+ enableEncSmallVideoStream(enable, smallVideoEncParam) {
+ return TrtcCloudImpl._getInstance().enableEncSmallVideoStream(enable, smallVideoEncParam);
+ }
+ /////////////////////////////////////////////////////////////////////////////////
+ //
+ // 美颜 + 水印
+ //
+ /////////////////////////////////////////////////////////////////////////////////
+ /**
+ * 设置美颜(磨皮)算法
+ * TRTC 内置多种不同的磨皮算法,您可以选择最适合您产品定位的方案
+ *
+ * **Note:**
+ * - 设置美颜前,先调用 `setBeautyLevel` 设置美颜级别。否则美颜级别为 0 表示关闭美颜
+ *
+ * @param {TRTCBeautyStyle} beautyStyle 美颜风格,TRTCBeautyStyleSmooth:光滑;TRTCBeautyStyleNature:自然;TRTCBeautyStylePitu:优图
+ * @memberof TrtcCloud
+ * @example
+ * import { TRTCBeautyStyle } from '@/TrtcCloud/lib/TrtcDefines';
+ * const beautyLevel = 5; // 美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。
+ * this.trtcCloud.setBeautyLevel(beautyLevel);
+ * this.trtcCloud.setBeautyStyle(TRTCBeautyStyle.TRTCBeautyStyleSmooth);
+ */
+ setBeautyStyle(beautyStyle) {
+ return TrtcCloudImpl._getInstance().setBeautyStyle(beautyStyle);
+ }
+ /**
+ * 设置美颜级别
+ * @param {Number} beautyLevel 美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。
+ *
+ * @memberof TrtcCloud
+ * @example
+ * const beautyLevel = 5; // 美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。
+ * this.trtcCloud.setBeautyLevel(beautyLevel);
+ */
+ setBeautyLevel(beautyLevel) {
+ return TrtcCloudImpl._getInstance().setBeautyLevel(beautyLevel);
+ }
+ /////////////////////////////////////////////////////////////////////////////////
+ //
+ // 背景音效
+ //
+ /////////////////////////////////////////////////////////////////////////////////
+ /**
+ * 开始播放背景音乐
+ * 每个音乐都需要您指定具体的 ID,您可以通过该 ID 对音乐的开始、停止、音量等进行设置。<br>
+ * **Note:**
+ * - 如果要多次播放同一首背景音乐,请不要每次播放都分配一个新的 ID,我们推荐使用相同的 ID。
+ * - 若您希望同时播放多首不同的音乐,请为不同的音乐分配不同的 ID 进行播放。
+ * - 如果使用同一个 ID 播放不同音乐,SDK 会先停止播放旧的音乐,再播放新的音乐。
+ *
+ * **Note:**<br>
+ * 在 uni-app 中 path 如何获取。
+ * - 使用 cdn 地址,例如:`path = https://web.sdk.qcloud.com/component/TUIKit/assets/uni-app/calling-bell-1.mp3;`
+ * - 使用本地绝对路径。
+ * 1. 通过 [uni.saveFile](https://zh.uniapp.dcloud.io/api/file/file.html#savefile) 获取保存后的相对路径(建议这种路径)。
+ * 2. 将上一步的相对路径转成绝对路径,[plus.io.convertLocalFileSystemURL](https://www.html5plus.org/doc/zh_cn/io.html#plus.io.convertLocalFileSystemURL)。
+ *
+ * @param {AudioMusicParam} musicParam 音乐参数
+ * @param {Number} musicParam.id 音乐 ID
+ * @param {String} musicParam.path 音效文件的完整路径或 URL 地址。支持的音频格式包括 MP3、AAC、M4A、WAV
+ * @param {Number} musicParam.loopCount 音乐循环播放的次数。取值范围为0 - 任意正整数,默认值:0。0表示播放音乐一次;1表示播放音乐两次;以此类推
+ * @param {Boolean} musicParam.publish 是否将音乐传到远端。true:音乐在本地播放的同时,远端用户也能听到该音乐;false:主播只能在本地听到该音乐,远端观众听不到。默认值:false。
+ * @param {Boolean} musicParam.isShortFile 播放的是否为短音乐文件。true:需要重复播放的短音乐文件;false:正常的音乐文件。默认值:false
+ * @param {Number} musicParam.startTimeMS 音乐开始播放时间点,单位: 毫秒。
+ * @param {Number} musicParam.endTimeMS 音乐结束播放时间点,单位: 毫秒,0 表示播放至文件结尾。
+ * @memberof TrtcCloud
+ * @example
+ * import { AudioMusicParam } from '@/TrtcCloud/lib/TrtcDefines';
+ * const musicParam = {
+ * id: 1,
+ * path: '',
+ * loopCount: 1,
+ * publish: true,
+ * isShortFile: false,
+ * startTimeMS: 0,
+ * endTimeMS: 0,
+ * };
+ * this.trtcCloud.startPlayMusic(musicParam);
+ */
+ startPlayMusic(musicParam) {
+ return TrtcCloudImpl._getInstance().startPlayMusic(musicParam);
+ }
+ /**
+ * 停止播放背景音乐
+ * @param {Number} id 音乐 ID
+ *
+ * @memberof TrtcCloud
+ * @example
+ * const musicId = 5;
+ * this.trtcCloud.stopPlayMusic(musicId);
+ */
+ stopPlayMusic(id) {
+ return TrtcCloudImpl._getInstance().stopPlayMusic(id);
+ }
+ /**
+ * 暂停播放背景音乐
+ * @param {Number} id 音乐 ID
+ * @memberof TrtcCloud
+ * @example
+ * const musicId = 5;
+ * this.trtcCloud.pausePlayMusic(musicId);
+ */
+ pausePlayMusic(id) {
+ return TrtcCloudImpl._getInstance().pausePlayMusic(id);
+ }
+ /**
+ * 恢复播放背景音乐
+ * @param {Number} id 音乐 ID
+ * @memberof TrtcCloud
+ * @example
+ * const musicId = 5;
+ * this.trtcCloud.resumePlayMusic(musicId);
+ */
+ resumePlayMusic(id) {
+ return TrtcCloudImpl._getInstance().resumePlayMusic(id);
+ }
+ /**
+ * 调用实验性接口
+ * @param {any} params 实验性接口参数
+ * @memberof TrtcCloud
+ * @example
+ * this.trtcCloud.callExperimentalAPI(params);
+ */
+ callExperimentalAPI(params) {
+ return TrtcCloudImpl._getInstance().callExperimentalAPI(params);
+ }
+ /**
+ * 使用 UDP 通道发送自定义消息给房间内所有用户<br>
+ * 该接口可以让您借助 TRTC 的 UDP 通道,向当前房间里的其他用户广播自定义数据,以达到传输信令的目的。
+ * 房间中的其他用户可以通过 onRecvCustomCmdMsg 事件接收消息。
+ *
+ * **Note:**
+ * 1. 发送消息到房间内所有用户(暂时不支持 Web/小程序端),每秒最多能发送30条消息(与 {sendSEIMsg} 共享限制)。
+ * 2. 每个包最大为 1KB,超过则很有可能会被中间路由器或者服务器丢弃。
+ * 3. 每个客户端每秒最多能发送总计 16KB 数据(与 {sendSEIMsg} 共享限制)。
+ * 4. 请将 `reliable` 和 `ordered` 同时设置为 true 或同时设置为 false,暂不支持交叉设置。
+ * 5. 强烈建议您将不同类型的消息设定为不同的 cmdID,这样可以在要求有序的情况下减小消息时延。
+ *
+ * @param {any} params - 参数
+ * @param {Number} params.cmdID - 消息 ID,取值范围为 [1, 10]
+ * @param {String} params.data - 待发送的消息,单个消息的最大长度被限制为 1KB
+ * @param {Boolean} params.reliable - 是否可靠发送,可靠发送可以获得更高的发送成功率,但可靠发送比不可靠发送会带来更大的接收延迟
+ * @param {Number} params.ordered - 是否要求有序,即是否要求接收端的数据包顺序和发送端的数据包顺序一致(这会带来一定的接收延时)
+ * @return true:消息已经发出;false:消息发送失败。
+
+ * @memberof TrtcCloud
+ * @example
+ * const params = {
+ * cmdID: 1,
+ * data: 'hello world',
+ * reliable: true,
+ * ordered: true,
+ * };
+ * this.trtcCloud.sendCustomCmdMsg(params);
+ */
+ sendCustomCmdMsg(params) {
+ return TrtcCloudImpl._getInstance().sendCustomCmdMsg(params);
+ }
+ /////////////////////////////////////////////////////////////////////////////////
+ //
+ // 设置 TRTCCallback 回调
+ //
+ /////////////////////////////////////////////////////////////////////////////////
+ /**
+ * 设置 TrtcCloud 回调
+ *
+ * @example
+ * // 创建/使用/销毁 TrtcCloud 对象的示例代码:
+ * import TrtcCloud from '@/TrtcCloud/lib/index';
+ * this.trtcCloud = new TrtcCloud();
+ *
+ * // 添加事件监听的方法,事件关键字详见下方”通用事件回调“
+ * this.trtcCloud.on('onEnterRoom', (result) => {
+ * if (result > 0) {
+ * console.log(`enter room success, spend ${result}ms`);
+ * } else {
+ * console.log(`enter room failed, error code = ${result}`);
+ * }
+ * });
+ *
+ * @namespace TRTCCallback
+ */
+ /////////////////////////////////////////////////////////////////////////////////
+ //
+ // (一)事件回调
+ //
+ /////////////////////////////////////////////////////////////////////////////////
+ /**
+ * 错误回调,表示 SDK 不可恢复的错误,一定要监听并分情况给用户适当的界面提示<br>
+ * @event TRTCCallback#onError
+ * @param {Number} code 错误码,[详见](https://cloud.tencent.com/document/product/647/38308#.E9.94.99.E8.AF.AF.E7.A0.81.E8.A1.A8)
+ * @param {String} message 错误信息
+ * @param {Object} extraInfo 扩展信息字段,个别错误码可能会带额外的信息帮助定位问题
+ */
+ onError(code, message, extraInfo) { }
+ /**
+ * 警告回调,用于告知您一些非严重性问题,例如出现卡顿或者可恢复的解码失败<br>
+ * @event TRTCCallback#onWarning
+ * @param {Number} code 警告码,[详见](https://cloud.tencent.com/document/product/647/38308#.E8.AD.A6.E5.91.8A.E7.A0.81.E8.A1.A8)
+ * @param {String} message 警告信息
+ * @param {Object} extraInfo 扩展信息字段,个别警告码可能会带额外的信息帮助定位问题
+ */
+ onWarning(code, message, extraInfo) { }
+ /**
+ * 进房后的回调<br>
+ * 调用 `enterRoom()` 接口执行进房操作后,会收到 `onEnterRoom(result)` 回调<br>
+ * 如果加入成功,result 会是一个正数(result > 0),代表加入房间的时间消耗,单位是毫秒(ms)。<br>
+ * 如果加入失败,result 会是一个负数(result < 0),代表进房失败的错误码。
+ *
+ * @event TRTCCallback#onEnterRoom
+ * @param {Number} result 进房耗时
+ */
+ onEnterRoom(result) { }
+ /**
+ * 离开房间的事件回调<br>
+ * 调用 `exitRoom()` 接口会执行退出房间的相关逻辑,例如释放音视频设备资源和编解码器资源等。待资源释放完毕,会通过 `onExitRoom()` 回调通知到您<br>
+ *
+ * **Note:**
+ * - 如果您要再次调用 `enterRoom()` 或者切换到其他的音视频 SDK,请等待 `onExitRoom()` 回调到来之后再执行相关操作。 否则可能会遇到音频设备被占用等各种异常问题
+ *
+ * @event TRTCCallback#onExitRoom
+ * @param {Number} reason 离开房间原因,0:主动调用 exitRoom 退房;1:被服务器踢出当前房间;2:当前房间整个被解散
+ */
+ onExitRoom(reason) { }
+ /**
+ * 跨房通话事件回调<br>
+ * 调用 TRTCCloud 中的 [connectOtherRoom()](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TrtcCloud.html#connectOtherRoom) 接口会将两个不同房间中的主播拉通视频通话,也就是所谓的“主播PK”功能。
+ * 调用者会收到 onConnectOtherRoom() 事件回调来获知跨房通话是否成功, 如果成功,两个房间中的所有用户都会收到来自另一个房间中的 PK 主播的 [onUserVideoAvailable()](http://127.0.0.1:5500/UniApp-TRTC-SDK/packages/TrtcCloud/docs/zh-cn/api/TRTCCallback.html#event:onUserVideoAvailable) 回调。
+ *
+ * @event TRTCCallback#onConnectOtherRoom
+ * @param {Object} params 调用 [connectOtherRoom()](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TrtcCloud.html#connectOtherRoom) 接口返回值数据。
+ * - userId:跨房通话时对端 userId
+ * - errCode: [错误状态码](https://cloud.tencent.com/document/product/647/38308#.E8.AD.A6.E5.91.8A.E7.A0.81.E8.A1.A8),返回0表示跨房通话成功。
+ * - errMsg: 状态信息,跨房通话成功返回 OK。
+ */
+ onConnectOtherRoom(params) { }
+ /**
+ * 结束跨房通话的结果回调<br>
+ * 调用 TRTCCloud 中的 [disconnectOtherRoom()](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TrtcCloud.html#disconnectOtherRoom) 接口会将两个不同房间中的主播拉通视频通话,也就是所谓的“主播PK”功能。
+ * 调用者会收到 onDisconnectOtherRoom() 事件回调来获知结束跨房通话是否成功。
+ *
+ * @event TRTCCallback#onDisconnectOtherRoom
+ * @param {Object} params 调用 [disconnectOtherRoom()](https://web.sdk.qcloud.com/trtc/uniapp/doc/zh-cn/TrtcCloud.html#disconnectOtherRoom) 失败时返回的错误数据。
+ * - errCode: [错误状态码](https://cloud.tencent.com/document/product/647/38308#.E8.AD.A6.E5.91.8A.E7.A0.81.E8.A1.A8)。
+ * - errMsg: 错误信息。
+ */
+ onDisconnectOtherRoom(params) { }
+ /**
+ * 切换角色的事件回调<br>
+ * 调用 TRTCCloud 中的 switchRole() 接口会切换主播和观众的角色,该操作会伴随一个线路切换的过程, 待 SDK 切换完成后,会抛出 onSwitchRole() 事件回调
+ *
+ * @event TRTCCallback#onSwitchRole
+ * @param {Number} code 错误码,[详见](https://cloud.tencent.com/document/product/647/38308#.E8.AD.A6.E5.91.8A.E7.A0.81.E8.A1.A8)
+ * @param {String} message 错误信息
+ */
+ onSwitchRole(code, message) { }
+ /**
+ * 开始渲染本地或远程用户的首帧画面<br>
+ * 如果 userId 为 null,代表开始渲染本地采集的摄像头画面,需要您先调用 `startLocalPreview` 触发。 如果 userId 不为 null,代表开始渲染远程用户的首帧画面,需要您先调用 `startRemoteView` 触发<br>
+ * 只有当您调用 `startLocalPreview()、startRemoteView() 或 startRemoteSubStreamView()` 之后,才会触发该回调
+ *
+ * @event TRTCCallback#onFirstVideoFrame
+ * @param {String} userId 本地或远程用户 ID,如果 userId === null 代表本地,userId !== null 代表远程
+ * @param {Number} streamType 视频流类型:摄像头或屏幕分享
+ * @param {Number} width 画面宽度
+ * @param {Number} height 画面高度
+ */
+ onFirstVideoFrame(userId, streamType, width, height) { }
+ /**
+ * 开始播放远程用户的首帧音频(本地声音暂不通知)<br>
+ * 如果 userId 为 null,代表开始渲染本地采集的摄像头画面,需要您先调用 `startLocalPreview` 触发。 如果 userId 不为 null,代表开始渲染远程用户的首帧画面,需要您先调用 `startRemoteView` 触发<br>
+ * 只有当您调用 `startLocalPreview()、startRemoteView() 或 startRemoteSubStreamView()` 之后,才会触发该回调
+ *
+ * @event TRTCCallback#onFirstAudioFrame
+ * @param {String} userId 远程用户 ID
+ */
+ onFirstAudioFrame(userId) { }
+ /**
+ * 截图完成时回调<br>
+ * @event TRTCCallback#onSnapshotComplete
+ * @param {String} base64Data 截图对应的 base64 数据
+ * @param {String} message 错误信息
+ */
+ onSnapshotComplete(base64Data, message) { }
+ /**
+ * 麦克风准备就绪
+ */
+ onMicDidReady() { }
+ /**
+ * 摄像头准备就绪
+ */
+ onCameraDidReady() { }
+ /**
+ * 网络质量:该回调每2秒触发一次,统计当前网络的上行和下行质量<br>
+ * userId 为本地用户 ID 代表自己当前的视频质量
+ *
+ * @param {String} localQuality 上行网络质量
+ * @param {String} remoteQuality 下行网络质量
+ */
+ onNetworkQuality(localQuality, remoteList) { }
+ /**
+ * 有用户加入当前房间<br>
+ * 出于性能方面的考虑,在两种不同的应用场景下,该通知的行为会有差别:<br>
+ * 通话场景(TRTCAppScene.TRTCAppSceneVideoCall 和 TRTCAppScene.TRTCAppSceneAudioCall):该场景下用户没有角色的区别,任何用户进入房间都会触发该通知。<br>
+ * 直播场景(TRTCAppScene.TRTCAppSceneLIVE 和 TRTCAppScene.TRTCAppSceneVoiceChatRoom ):该场景不限制观众的数量,如果任何用户进出都抛出回调会引起很大的性能损耗,所以该场景下只有主播进入房间时才会触发该通知,观众进入房间不会触发该通知
+ *
+ * @event TRTCCallback#onRemoteUserEnterRoom
+ * @param {String} userId 用户标识 ID
+ */
+ onRemoteUserEnterRoom(userId) { }
+ /**
+ * 有用户离开当前房间<br>
+ * 与 onRemoteUserEnterRoom 相对应,在两种不同的应用场景下,该通知的行为会有差别:<br>
+ * 通话场景(TRTCAppScene.TRTCAppSceneVideoCall 和 TRTCAppScene.TRTCAppSceneAudioCall):该场景下用户没有角色的区别,任何用户进入房间都会触发该通知。<br>
+ * 直播场景(TRTCAppScene.TRTCAppSceneLIVE 和 TRTCAppScene.TRTCAppSceneVoiceChatRoom ):该场景不限制观众的数量,如果任何用户进出都抛出回调会引起很大的性能损耗,所以该场景下只有主播进入房间时才会触发该通知,观众进入房间不会触发该通知
+ *
+ * @event TRTCCallback#onRemoteUserLeaveRoom
+ * @param {String} userId 用户标识 ID
+ * @param {Number} reason 离开原因,0 表示用户主动退出房间,1 表示用户超时退出,2 表示被踢出房间
+ */
+ onRemoteUserLeaveRoom(userId, reason) { }
+ /**
+ * 首帧本地音频数据已经被送出<br>
+ * 在 `enterRoom()` 并 `startLocalAudio()` 成功后开始麦克风采集,并将采集到的声音进行编码。 当 SDK 成功向云端送出第一帧音频数据后,会抛出这个回调事件
+ *
+ * @event TRTCCallback#onSendFirstLocalAudioFrame
+ */
+ onSendFirstLocalAudioFrame() { }
+ /**
+ * 首帧本地视频数据已经被送出<br>
+ * SDK 会在 `enterRoom()` 并 `startLocalPreview()` 成功后开始摄像头采集,并将采集到的画面进行编码。 当 SDK 成功向云端送出第一帧视频数据后,会抛出这个回调事件
+ *
+ * @event TRTCCallback#onSendFirstLocalVideoFrame
+ * @param {Number} streamType 视频流类型,大画面、小画面或辅流画面(屏幕分享)
+ */
+ onSendFirstLocalVideoFrame(streamType) { }
+ /**
+ * 技术指标统计回调<br>
+ * 如果您是熟悉音视频领域相关术语,可以通过这个回调获取 SDK 的所有技术指标。 如果您是首次开发音视频相关项目,可以只关注 `onNetworkQuality` 回调
+ *
+ * **Note:**
+ * - 每 2 秒回调一次
+ *
+ * @param {Object} statics 状态数据
+ */
+ onStatistics(statics) { }
+ /**
+ * 远端用户是否存在可播放的音频数据<br>
+ * @event TRTCCallback#onUserAudioAvailable
+ * @param {String} userId 用户标识 ID
+ * @param {Boolean} available 声音是否开启
+ */
+ onUserAudioAvailable(userId, available) { }
+ /**
+ * 远端用户是否存在可播放的主路画面(一般用于摄像头)<br>
+ * 当您收到 `onUserVideoAvailable(userId, true)` 通知时,表示该路画面已经有可用的视频数据帧到达。 此时,您需要调用 `startRemoteView(userId)` 接口加载该用户的远程画面。 然后,您会收到名为 onFirstVideoFrame(userid) 的首帧画面渲染回调。<br>
+ * 当您收到 `onUserVideoAvailable(userId, false)` 通知时,表示该路远程画面已经被关闭,可能由于该用户调用了 `muteLocalVideo()` 或 `stopLocalPreview()`。
+ *
+ * @event TRTCCallback#onUserVideoAvailable
+ * @param {String} userId 用户标识 ID
+ * @param {Boolean} available 画面是否开启
+ */
+ onUserVideoAvailable(userId, available) { }
+ /**
+ * 用于提示音量大小的回调,包括每个 userId 的音量和远端总音量<br>
+ * SDK 可以评估每一路音频的音量大小,并每隔一段时间抛出该事件回调,您可以根据音量大小在 UI 上做出相应的提示,比如“波形图”或“音量槽”。 要完成这个功能, 您需要先调用 enableAudioVolumeEvaluation 开启这个能力并设定事件抛出的时间间隔。 需要补充说明的是,无论当前房间中是否有人说话,SDK 都会按照您设定的时间间隔定时抛出此事件回调,只不过当没有人说话时,userVolumes 为空,totalVolume 为 0。
+ *
+ * **Note:**
+ * - userVolumes 为一个数组,对于数组中的每一个元素,当 userId 为空时表示本地麦克风采集的音量大小,当 userId 不为空时代表远端用户的音量大小
+ *
+ * @event TRTCCallback#onUserVoiceVolume
+ * @param {Array} userVolumes 是一个数组,用于承载所有正在说话的用户的音量大小,取值范围 0 - 100
+ * @param {Number} totalVolume 所有远端用户的总音量大小, 取值范围 0 - 100
+ */
+ onUserVoiceVolume(userVolumes, totalVolume) { }
+ /**
+ * 屏幕分享开启的事件回调<br>
+ * 当您通过 startScreenCapture 等相关接口启动屏幕分享时,SDK 便会抛出此事件回调
+ * @event TRTCCallback#onScreenCaptureStarted
+ */
+ onScreenCaptureStarted() { }
+ /**
+ * 屏幕分享停止的事件回调<br>
+ * 当您通过 stopScreenCapture 停止屏幕分享时,SDK 便会抛出此事件回调
+ * @event TRTCCallback#onScreenCaptureStopped
+ * @param {Number} reason 停止原因,0:用户主动停止;1:屏幕窗口关闭导致停止;2:表示屏幕分享的显示屏状态变更(如接口被拔出、投影模式变更等)
+ */
+ onScreenCaptureStopped(reason) { }
+ /**
+ * 屏幕分享停止的事件回调<br>
+ * 当您通过 pauseScreenCapture 停止屏幕分享时,SDK 便会抛出此事件回调
+ * @event TRTCCallback#onScreenCapturePaused
+ * @param {Number} reason 停止原因,0:用户主动停止;1:屏幕窗口关闭导致停止;2:表示屏幕分享的显示屏状态变更(如接口被拔出、投影模式变更等)
+ */
+ onScreenCapturePaused(reason) { }
+ /**
+ * 屏幕分享恢复的事件回调<br>
+ * 当您通过 resumeScreenCapture 恢复屏幕分享时,SDK 便会抛出此事件回调
+ * @event TRTCCallback#onScreenCaptureResumed
+ */
+ onScreenCaptureResumed() { }
+ /**
+ * 某远端用户发布/取消了辅路视频画面<br>
+ * “辅路画面”一般被用于承载屏幕分享的画面。当您收到 onUserSubStreamAvailable(userId, true) 通知时,表示该路画面已经有可播放的视频帧到达。 此时,您需要调用 startRemoteView 接口订阅该用户的远程画面,订阅成功后,您会继续收到该用户的首帧画面渲染回调 onFirstVideoFrame(userId)
+ *
+ * **Note:**
+ * - 拉取 Web 端(用 [WebRTC](https://web.sdk.qcloud.com/trtc/webrtc/doc/zh-cn/index.html) 实现屏幕分享)的屏幕分享,收不到 onUserSubStreamAvailable 事件。因为 [WebRTC](https://web.sdk.qcloud.com/trtc/webrtc/doc/zh-cn/index.html) 推的屏幕分享也是主流
+ * @param {String} userId 用户 ID
+ * @param {Boolean} available 是否可用,true 表示辅流可用
+ * @event TRTCCallback#onUserSubStreamAvailable
+ */
+ onUserSubStreamAvailable(userId, available) { }
+ /**
+ * 用户视频大小发生改变回调。<br>
+ * 当您收到 onUserVideoSizeChanged(userId, streamtype, newWidth, newHeight) 通知时,表示该路画面大小发生了调整,调整的原因可能是该用户调用了 setVideoEncoderParam 或者 setSubStreamEncoderParam 重新设置了画面尺寸。
+ * @param {String} userId 用户 ID
+ * @param {Number} streamType 视频流类型,仅支持 TRTCVideoStreamTypeBig 和 TRTCVideoStreamTypeSub
+ * @param {Number} newWidth 视频流的宽度(像素)
+ * @param {Number} newHeight 视频流的高度(像素)
+ * @event TRTCCallback#onUserVideoSizeChanged
+ */
+ onUserVideoSizeChanged(userId, streamType, newWidth, newHeight) { }
+ /**
+ * 背景音乐开始播放
+ * @param {Number} id 播放的 id
+ * @param {Number} errCode 播放的状态码
+ * @event TRTCCallback#onStart
+ */
+ onStart(id, errCode) { }
+ /**
+ * 背景音乐的播放进度
+ * @param {Number} id 播放的 id
+ * @param {Number} curPtsMS 当前播放的位置
+ * @param {Number} durationMS 当前音频总时长
+ * @event TRTCCallback#onPlayProgress
+ */
+ onPlayProgress(id, curPtsMS, durationMS) { }
+ /**
+ * 背景音乐已经播放完毕
+ * @param {Number} id 播放的 id
+ * @param {Number} errCode 播放结束的状态码
+ * @event TRTCCallback#onComplete
+ */
+ onComplete(id, errCode) { }
+ /**
+ * 收到自定义消息的事件回调。
+ *
+ * 当房间中的某个用户使用 {sendCustomCmdMsg} 发送自定义 UDP 消息时,房间中的其他用户可以通过 `onRecvCustomCmdMsg` 事件回调接收到该条消息。
+ * @param {String} userId 用户标识。
+ * @param {Number} cmdID 命令 ID。
+ * @param {Number} seq 消息序号。
+ * @param {String} message 消息数据。
+ * @event TRTCCallback#onRecvCustomCmdMsg
+ */
+ onRecvCustomCmdMsg(userId, cmdID, seq, message) { }
+}
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/permission.js b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/permission.js
new file mode 100644
index 0000000..598cbdd
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/permission.js
@@ -0,0 +1,279 @@
+/**
+ * 本模块封装了Android、iOS的应用权限判断、打开应用权限设置界面、以及位置系统服务是否开启
+ */
+ var isIos
+ // #ifdef APP-PLUS
+ isIos = (plus.os.name == "iOS");
+ // #endif
+
+ // 判断推送权限是否开启
+ function judgeIosPermissionPush() {
+ var result = false;
+ var UIApplication = plus.ios.import("UIApplication");
+ var app = UIApplication.sharedApplication();
+ var enabledTypes = 0;
+ if (app.currentUserNotificationSettings) {
+ var settings = app.currentUserNotificationSettings();
+ enabledTypes = settings.plusGetAttribute("types");
+ console.log("enabledTypes1:" + enabledTypes);
+ if (enabledTypes == 0) {
+ console.log("推送权限没有开启");
+ } else {
+ result = true;
+ console.log("已经开启推送功能!")
+ }
+ plus.ios.deleteObject(settings);
+ } else {
+ enabledTypes = app.enabledRemoteNotificationTypes();
+ if (enabledTypes == 0) {
+ console.log("推送权限没有开启!");
+ } else {
+ result = true;
+ console.log("已经开启推送功能!")
+ }
+ console.log("enabledTypes2:" + enabledTypes);
+ }
+ plus.ios.deleteObject(app);
+ plus.ios.deleteObject(UIApplication);
+ return result;
+ }
+
+ // 判断定位权限是否开启
+ function judgeIosPermissionLocation() {
+ var result = false;
+ var cllocationManger = plus.ios.import("CLLocationManager");
+ var status = cllocationManger.authorizationStatus();
+ result = (status != 2)
+ console.log("定位权限开启:" + result);
+ // 以下代码判断了手机设备的定位是否关闭,推荐另行使用方法 checkSystemEnableLocation
+ /* var enable = cllocationManger.locationServicesEnabled();
+ var status = cllocationManger.authorizationStatus();
+ console.log("enable:" + enable);
+ console.log("status:" + status);
+ if (enable && status != 2) {
+ result = true;
+ console.log("手机定位服务已开启且已授予定位权限");
+ } else {
+ console.log("手机系统的定位没有打开或未给予定位权限");
+ } */
+ plus.ios.deleteObject(cllocationManger);
+ return result;
+ }
+ // 判断麦克风权限是否开启
+ function judgeIosPermissionRecord() {
+ var result = false;
+ var avaudiosession = plus.ios.import("AVAudioSession");
+ var avaudio = avaudiosession.sharedInstance();
+ var permissionStatus = avaudio.recordPermission();
+ console.log("permissionStatus:" + permissionStatus);
+ if (permissionStatus == 1684369017 || permissionStatus == 1970168948) {
+ console.log("麦克风权限没有开启");
+ } else {
+ result = true;
+ console.log("麦克风权限已经开启");
+ }
+ plus.ios.deleteObject(avaudiosession);
+ return result;
+ }
+
+ // 判断相机权限是否开启
+ function judgeIosPermissionCamera() {
+ var result = false;
+ var AVCaptureDevice = plus.ios.import("AVCaptureDevice");
+ var authStatus = AVCaptureDevice.authorizationStatusForMediaType('vide');
+ console.log("authStatus:" + authStatus);
+ if (authStatus == 3) {
+ result = true;
+ console.log("相机权限已经开启");
+ } else {
+ console.log("相机权限没有开启");
+ }
+ plus.ios.deleteObject(AVCaptureDevice);
+ return result;
+ }
+
+ // 判断相册权限是否开启
+ function judgeIosPermissionPhotoLibrary() {
+ var result = false;
+ var PHPhotoLibrary = plus.ios.import("PHPhotoLibrary");
+ var authStatus = PHPhotoLibrary.authorizationStatus();
+ console.log("authStatus:" + authStatus);
+ if (authStatus == 3) {
+ result = true;
+ console.log("相册权限已经开启");
+ } else {
+ console.log("相册权限没有开启");
+ }
+ plus.ios.deleteObject(PHPhotoLibrary);
+ return result;
+ }
+
+ // 判断通讯录权限是否开启
+ function judgeIosPermissionContact() {
+ var result = false;
+ var CNContactStore = plus.ios.import("CNContactStore");
+ var cnAuthStatus = CNContactStore.authorizationStatusForEntityType(0);
+ if (cnAuthStatus == 3) {
+ result = true;
+ console.log("通讯录权限已经开启");
+ } else {
+ console.log("通讯录权限没有开启");
+ }
+ plus.ios.deleteObject(CNContactStore);
+ return result;
+ }
+
+ // 判断日历权限是否开启
+ function judgeIosPermissionCalendar() {
+ var result = false;
+ var EKEventStore = plus.ios.import("EKEventStore");
+ var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(0);
+ if (ekAuthStatus == 3) {
+ result = true;
+ console.log("日历权限已经开启");
+ } else {
+ console.log("日历权限没有开启");
+ }
+ plus.ios.deleteObject(EKEventStore);
+ return result;
+ }
+
+ // 判断备忘录权限是否开启
+ function judgeIosPermissionMemo() {
+ var result = false;
+ var EKEventStore = plus.ios.import("EKEventStore");
+ var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(1);
+ if (ekAuthStatus == 3) {
+ result = true;
+ console.log("备忘录权限已经开启");
+ } else {
+ console.log("备忘录权限没有开启");
+ }
+ plus.ios.deleteObject(EKEventStore);
+ return result;
+ }
+
+ // Android权限查询
+ function requestAndroidPermission(permissionID) {
+ return new Promise((resolve, reject) => {
+ plus.android.requestPermissions(
+ [permissionID], // 理论上支持多个权限同时查询,但实际上本函数封装只处理了一个权限的情况。有需要的可自行扩展封装
+ function(resultObj) {
+ var result = 0;
+ for (var i = 0; i < resultObj.granted.length; i++) {
+ var grantedPermission = resultObj.granted[i];
+ console.log('已获取的权限:' + grantedPermission);
+ result = 1
+ }
+ for (var i = 0; i < resultObj.deniedPresent.length; i++) {
+ var deniedPresentPermission = resultObj.deniedPresent[i];
+ console.log('拒绝本次申请的权限:' + deniedPresentPermission);
+ result = 0
+ }
+ for (var i = 0; i < resultObj.deniedAlways.length; i++) {
+ var deniedAlwaysPermission = resultObj.deniedAlways[i];
+ console.log('永久拒绝申请的权限:' + deniedAlwaysPermission);
+ result = -1
+ }
+ resolve(result);
+ // 若所需权限被拒绝,则打开APP设置界面,可以在APP设置界面打开相应权限
+ // if (result != 1) {
+ // gotoAppPermissionSetting()
+ // }
+ },
+ function(error) {
+ console.log('申请权限错误:' + error.code + " = " + error.message);
+ resolve({
+ code: error.code,
+ message: error.message
+ });
+ }
+ );
+ });
+ }
+
+ // 使用一个方法,根据参数判断权限
+ function judgeIosPermission(permissionID) {
+ if (permissionID == "location") {
+ return judgeIosPermissionLocation()
+ } else if (permissionID == "camera") {
+ return judgeIosPermissionCamera()
+ } else if (permissionID == "photoLibrary") {
+ return judgeIosPermissionPhotoLibrary()
+ } else if (permissionID == "record") {
+ return judgeIosPermissionRecord()
+ } else if (permissionID == "push") {
+ return judgeIosPermissionPush()
+ } else if (permissionID == "contact") {
+ return judgeIosPermissionContact()
+ } else if (permissionID == "calendar") {
+ return judgeIosPermissionCalendar()
+ } else if (permissionID == "memo") {
+ return judgeIosPermissionMemo()
+ }
+ return false;
+ }
+
+ // 跳转到**应用**的权限页面
+ function gotoAppPermissionSetting() {
+ if (isIos) {
+ var UIApplication = plus.ios.import("UIApplication");
+ var application2 = UIApplication.sharedApplication();
+ var NSURL2 = plus.ios.import("NSURL");
+ // var setting2 = NSURL2.URLWithString("prefs:root=LOCATION_SERVICES");
+ var setting2 = NSURL2.URLWithString("app-settings:");
+ application2.openURL(setting2);
+
+ plus.ios.deleteObject(setting2);
+ plus.ios.deleteObject(NSURL2);
+ plus.ios.deleteObject(application2);
+ } else {
+ // console.log(plus.device.vendor);
+ var Intent = plus.android.importClass("android.content.Intent");
+ var Settings = plus.android.importClass("android.provider.Settings");
+ var Uri = plus.android.importClass("android.net.Uri");
+ var mainActivity = plus.android.runtimeMainActivity();
+ var intent = new Intent();
+ intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
+ var uri = Uri.fromParts("package", mainActivity.getPackageName(), null);
+ intent.setData(uri);
+ mainActivity.startActivity(intent);
+ }
+ }
+
+ // 检查系统的设备服务是否开启
+ // var checkSystemEnableLocation = async function () {
+ function checkSystemEnableLocation() {
+ if (isIos) {
+ var result = false;
+ var cllocationManger = plus.ios.import("CLLocationManager");
+ var result = cllocationManger.locationServicesEnabled();
+ console.log("系统定位开启:" + result);
+ plus.ios.deleteObject(cllocationManger);
+ return result;
+ } else {
+ var context = plus.android.importClass("android.content.Context");
+ var locationManager = plus.android.importClass("android.location.LocationManager");
+ var main = plus.android.runtimeMainActivity();
+ var mainSvr = main.getSystemService(context.LOCATION_SERVICE);
+ var result = mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER);
+ console.log("系统定位开启:" + result);
+ return result
+ }
+ }
+
+// module.exports = {
+// judgeIosPermission: judgeIosPermission,
+// requestAndroidPermission: requestAndroidPermission,
+// checkSystemEnableLocation: checkSystemEnableLocation,
+// gotoAppPermissionSetting: gotoAppPermissionSetting
+// }
+
+// HBuilder 选择 vue3 时, 上面的打包无法通过 import 进行引入
+export default {
+ judgeIosPermission: judgeIosPermission,
+ requestAndroidPermission: requestAndroidPermission,
+ checkSystemEnableLocation: checkSystemEnableLocation,
+ gotoAppPermissionSetting: gotoAppPermissionSetting
+};
+
\ No newline at end of file
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcLocalView.nvue b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcLocalView.nvue
new file mode 100644
index 0000000..72711d5
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcLocalView.nvue
@@ -0,0 +1,19 @@
+<template>
+ <TRTCCloudUniPlugin-TXLocalViewComponent :viewId="viewId"></TRTCCloudUniPlugin-TXLocalViewComponent>
+</template>
+
+<script>
+ export default {
+ name: 'TrtcLocalView',
+ props: {
+ viewId: {
+ type: String,
+ default: ''
+ }
+ },
+ }
+</script>
+
+<style>
+
+</style>
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcRemoteView.nvue b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcRemoteView.nvue
new file mode 100644
index 0000000..e9b3fc9
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/TrtcCloud/view/TrtcRemoteView.nvue
@@ -0,0 +1,23 @@
+<template>
+ <TRTCCloudUniPlugin-TXRemoteViewComponent :userId="userId" :viewId="viewId"></TRTCCloudUniPlugin-TXRemoteViewComponent>
+</template>
+
+<script>
+ export default {
+ name: 'TrtcRemoteView',
+ props: {
+ userId: {
+ type: String,
+ default: ''
+ },
+ viewId: {
+ type: String,
+ default: ''
+ }
+ },
+ }
+</script>
+
+<style>
+
+</style>
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/index.js b/uniapps/drone-app/src/utils/voiceCallByTX/index.js
new file mode 100644
index 0000000..4a0fa2a
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/index.js
@@ -0,0 +1,36 @@
+// #ifdef APP-PLUS
+import TrtcCloud from '@/utils/voiceCallByTX/TrtcCloud/lib/index';
+import {TRTCAppScene} from '@/utils/voiceCallByTX/TrtcCloud/lib/TrtcDefines';
+
+const trtcCloud = TrtcCloud.createInstance();
+// #endif
+
+// #ifdef H5
+import TRTC from 'trtc-sdk-v5';
+
+const trtc = TRTC.create();
+// #endif
+
+import {genTestUserSig} from "@/utils/voiceCallByTX/GenerateTestUserSig.js";
+import {sendVoiceCallApi} from "@/api/user/index.js";
+
+export function enterRoom(payload, userId) {
+ const data = JSON.parse(payload.data.data)
+ const theOtherPartyId = payload.data.caller_id
+ const {userSig, SDKAppID: sdkAppId} = genTestUserSig(userId);
+ const params = {sdkAppId, userId, roomId: data.roomId, userSig};
+// #ifdef APP-PLUS
+ trtcCloud.enterRoom(params, TRTCAppScene.TRTCAppSceneVideoCall)
+ trtcCloud.startLocalAudio();
+// #endif
+// #ifdef H5
+ trtc.enterRoom(params)
+ trtc.startLocalAudio()
+// #endif
+ // demo原因,直接接通来进行验证测试
+ sendVoiceCallApi({
+ caller_id: userId,
+ receiver_id: theOtherPartyId,
+ data: JSON.stringify({state: '接通', roomId: data.roomId}),
+ })
+}
diff --git a/uniapps/drone-app/src/utils/voiceCallByTX/lib-generate-test-usersig-es.min.js b/uniapps/drone-app/src/utils/voiceCallByTX/lib-generate-test-usersig-es.min.js
new file mode 100644
index 0000000..b01b70b
--- /dev/null
+++ b/uniapps/drone-app/src/utils/voiceCallByTX/lib-generate-test-usersig-es.min.js
@@ -0,0 +1,2 @@
+/*eslint-disable*/
+var e="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},t=[],r=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,i=!1;function o(){i=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,o=e.length;n<o;++n)t[n]=e[n],r[e.charCodeAt(n)]=n;r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63}function a(e,r,n){for(var i,o,a=[],s=r;s<n;s+=3)i=(e[s]<<16)+(e[s+1]<<8)+e[s+2],a.push(t[(o=i)>>18&63]+t[o>>12&63]+t[o>>6&63]+t[63&o]);return a.join("")}function s(e){var r;i||o();for(var n=e.length,s=n%3,h="",l=[],f=0,c=n-s;f<c;f+=16383)l.push(a(e,f,f+16383>c?c:f+16383));return 1===s?(r=e[n-1],h+=t[r>>2],h+=t[r<<4&63],h+="=="):2===s&&(r=(e[n-2]<<8)+e[n-1],h+=t[r>>10],h+=t[r>>4&63],h+=t[r<<2&63],h+="="),l.push(h),l.join("")}function h(e,t,r,n,i){var o,a,s=8*i-n-1,h=(1<<s)-1,l=h>>1,f=-7,c=r?i-1:0,u=r?-1:1,d=e[t+c];for(c+=u,o=d&(1<<-f)-1,d>>=-f,f+=s;f>0;o=256*o+e[t+c],c+=u,f-=8);for(a=o&(1<<-f)-1,o>>=-f,f+=n;f>0;a=256*a+e[t+c],c+=u,f-=8);if(0===o)o=1-l;else{if(o===h)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,n),o-=l}return(d?-1:1)*a*Math.pow(2,o-n)}function l(e,t,r,n,i,o){var a,s,h,l=8*o-i-1,f=(1<<l)-1,c=f>>1,u=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,p=n?1:-1,_=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=f):(a=Math.floor(Math.log(t)/Math.LN2),t*(h=Math.pow(2,-a))<1&&(a--,h*=2),(t+=a+c>=1?u/h:u*Math.pow(2,1-c))*h>=2&&(a++,h/=2),a+c>=f?(s=0,a=f):a+c>=1?(s=(t*h-1)*Math.pow(2,i),a+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,i),a=0));i>=8;e[r+d]=255&s,d+=p,s/=256,i-=8);for(a=a<<i|s,l+=i;l>0;e[r+d]=255&a,d+=p,a/=256,l-=8);e[r+d-p]|=128*_}var f={}.toString,c=Array.isArray||function(e){return"[object Array]"==f.call(e)};function u(){return p.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function d(e,t){if(u()<t)throw new RangeError("Invalid typed array length");return p.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=p.prototype:(null===e&&(e=new p(t)),e.length=t),e}function p(e,t,r){if(!(p.TYPED_ARRAY_SUPPORT||this instanceof p))return new p(e,t,r);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return v(this,e)}return _(this,e,t,r)}function _(e,t,r,n){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,r,n){if(t.byteLength,r<0||t.byteLength<r)throw new RangeError("'offset' is out of bounds");if(t.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");t=void 0===r&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,r):new Uint8Array(t,r,n);p.TYPED_ARRAY_SUPPORT?(e=t).__proto__=p.prototype:e=w(e,t);return e}(e,t,r,n):"string"==typeof t?function(e,t,r){"string"==typeof r&&""!==r||(r="utf8");if(!p.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var n=0|m(t,r),i=(e=d(e,n)).write(t,r);i!==n&&(e=e.slice(0,i));return e}(e,t,r):function(e,t){if(y(t)){var r=0|b(t.length);return 0===(e=d(e,r)).length?e:(t.copy(e,0,0,r),e)}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(n=t.length)!=n?d(e,0):w(e,t);if("Buffer"===t.type&&c(t.data))return w(e,t.data)}var n;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function g(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function v(e,t){if(g(t),e=d(e,t<0?0:0|b(t)),!p.TYPED_ARRAY_SUPPORT)for(var r=0;r<t;++r)e[r]=0;return e}function w(e,t){var r=t.length<0?0:0|b(t.length);e=d(e,r);for(var n=0;n<r;n+=1)e[n]=255&t[n];return e}function b(e){if(e>=u())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+u().toString(16)+" bytes");return 0|e}function y(e){return!(null==e||!e._isBuffer)}function m(e,t){if(y(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return q(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return V(e).length;default:if(n)return q(e).length;t=(""+t).toLowerCase(),n=!0}}function k(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,r);case"utf8":case"utf-8":return C(this,t,r);case"ascii":return I(this,t,r);case"latin1":case"binary":return P(this,t,r);case"base64":return M(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return U(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function E(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function S(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=p.from(t,n)),y(t))return 0===t.length?-1:x(e,t,r,n,i);if("number"==typeof t)return t&=255,p.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):x(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function x(e,t,r,n,i){var o,a=1,s=e.length,h=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;a=2,s/=2,h/=2,r/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var f=-1;for(o=r;o<s;o++)if(l(e,o)===l(t,-1===f?0:o-f)){if(-1===f&&(f=o),o-f+1===h)return f*a}else-1!==f&&(o-=o-f),f=-1}else for(r+h>s&&(r=s-h),o=r;o>=0;o--){for(var c=!0,u=0;u<h;u++)if(l(e,o+u)!==l(t,u)){c=!1;break}if(c)return o}return-1}function R(e,t,r,n){r=Number(r)||0;var i=e.length-r;n?(n=Number(n))>i&&(n=i):n=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var a=0;a<n;++a){var s=parseInt(t.substr(2*a,2),16);if(isNaN(s))return a;e[r+a]=s}return a}function A(e,t,r,n){return G(q(t,e.length-r),e,r,n)}function B(e,t,r,n){return G(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,n)}function z(e,t,r,n){return B(e,t,r,n)}function L(e,t,r,n){return G(V(t),e,r,n)}function T(e,t,r,n){return G(function(e,t){for(var r,n,i,o=[],a=0;a<e.length&&!((t-=2)<0);++a)r=e.charCodeAt(a),n=r>>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function M(e,t,r){return 0===t&&r===e.length?s(e):s(e.slice(t,r))}function C(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i<r;){var o,a,s,h,l=e[i],f=null,c=l>239?4:l>223?3:l>191?2:1;if(i+c<=r)switch(c){case 1:l<128&&(f=l);break;case 2:128==(192&(o=e[i+1]))&&(h=(31&l)<<6|63&o)>127&&(f=h);break;case 3:o=e[i+1],a=e[i+2],128==(192&o)&&128==(192&a)&&(h=(15&l)<<12|(63&o)<<6|63&a)>2047&&(h<55296||h>57343)&&(f=h);break;case 4:o=e[i+1],a=e[i+2],s=e[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(h=(15&l)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&h<1114112&&(f=h)}null===f?(f=65533,c=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=c}return function(e){var t=e.length;if(t<=D)return String.fromCharCode.apply(String,e);var r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=D));return r}(n)}p.TYPED_ARRAY_SUPPORT=void 0===e.TYPED_ARRAY_SUPPORT||e.TYPED_ARRAY_SUPPORT,p.poolSize=8192,p._augment=function(e){return e.__proto__=p.prototype,e},p.from=function(e,t,r){return _(null,e,t,r)},p.TYPED_ARRAY_SUPPORT&&(p.prototype.__proto__=Uint8Array.prototype,p.__proto__=Uint8Array),p.alloc=function(e,t,r){return function(e,t,r,n){return g(t),t<=0?d(e,t):void 0!==r?"string"==typeof n?d(e,t).fill(r,n):d(e,t).fill(r):d(e,t)}(null,e,t,r)},p.allocUnsafe=function(e){return v(null,e)},p.allocUnsafeSlow=function(e){return v(null,e)},p.isBuffer=$,p.compare=function(e,t){if(!y(e)||!y(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,n=t.length,i=0,o=Math.min(r,n);i<o;++i)if(e[i]!==t[i]){r=e[i],n=t[i];break}return r<n?-1:n<r?1:0},p.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},p.concat=function(e,t){if(!c(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return p.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var n=p.allocUnsafe(t),i=0;for(r=0;r<e.length;++r){var o=e[r];if(!y(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(n,i),i+=o.length}return n},p.byteLength=m,p.prototype._isBuffer=!0,p.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)E(this,t,t+1);return this},p.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)E(this,t,t+3),E(this,t+1,t+2);return this},p.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)E(this,t,t+7),E(this,t+1,t+6),E(this,t+2,t+5),E(this,t+3,t+4);return this},p.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?C(this,0,e):k.apply(this,arguments)},p.prototype.equals=function(e){if(!y(e))throw new TypeError("Argument must be a Buffer");return this===e||0===p.compare(this,e)},p.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),"<Buffer "+e+">"},p.prototype.compare=function(e,t,r,n,i){if(!y(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(t>>>=0),s=Math.min(o,a),h=this.slice(n,i),l=e.slice(t,r),f=0;f<s;++f)if(h[f]!==l[f]){o=h[f],a=l[f];break}return o<a?-1:a<o?1:0},p.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},p.prototype.indexOf=function(e,t,r){return S(this,e,t,r,!0)},p.prototype.lastIndexOf=function(e,t,r){return S(this,e,t,r,!1)},p.prototype.write=function(e,t,r,n){if(void 0===t)n="utf8",r=this.length,t=0;else if(void 0===r&&"string"==typeof t)n=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(r)?(r|=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return R(this,e,t,r);case"utf8":case"utf-8":return A(this,e,t,r);case"ascii":return B(this,e,t,r);case"latin1":case"binary":return z(this,e,t,r);case"base64":return L(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},p.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var D=4096;function I(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;i<r;++i)n+=String.fromCharCode(127&e[i]);return n}function P(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;i<r;++i)n+=String.fromCharCode(e[i]);return n}function O(e,t,r){var n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);for(var i="",o=t;o<r;++o)i+=X(e[o]);return i}function U(e,t,r){for(var n=e.slice(t,r),i="",o=0;o<n.length;o+=2)i+=String.fromCharCode(n[o]+256*n[o+1]);return i}function H(e,t,r){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function F(e,t,r,n,i,o){if(!y(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<o)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}function N(e,t,r,n){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-r,2);i<o;++i)e[r+i]=(t&255<<8*(n?i:1-i))>>>8*(n?i:1-i)}function Z(e,t,r,n){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-r,4);i<o;++i)e[r+i]=t>>>8*(n?i:3-i)&255}function j(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function W(e,t,r,n,i){return i||j(e,0,r,4),l(e,t,r,n,23,4),r+4}function Y(e,t,r,n,i){return i||j(e,0,r,8),l(e,t,r,n,52,8),r+8}p.prototype.slice=function(e,t){var r,n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e),p.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=p.prototype;else{var i=t-e;r=new p(i,void 0);for(var o=0;o<i;++o)r[o]=this[o+e]}return r},p.prototype.readUIntLE=function(e,t,r){e|=0,t|=0,r||H(e,t,this.length);for(var n=this[e],i=1,o=0;++o<t&&(i*=256);)n+=this[e+o]*i;return n},p.prototype.readUIntBE=function(e,t,r){e|=0,t|=0,r||H(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},p.prototype.readUInt8=function(e,t){return t||H(e,1,this.length),this[e]},p.prototype.readUInt16LE=function(e,t){return t||H(e,2,this.length),this[e]|this[e+1]<<8},p.prototype.readUInt16BE=function(e,t){return t||H(e,2,this.length),this[e]<<8|this[e+1]},p.prototype.readUInt32LE=function(e,t){return t||H(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},p.prototype.readUInt32BE=function(e,t){return t||H(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},p.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||H(e,t,this.length);for(var n=this[e],i=1,o=0;++o<t&&(i*=256);)n+=this[e+o]*i;return n>=(i*=128)&&(n-=Math.pow(2,8*t)),n},p.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||H(e,t,this.length);for(var n=t,i=1,o=this[e+--n];n>0&&(i*=256);)o+=this[e+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},p.prototype.readInt8=function(e,t){return t||H(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},p.prototype.readInt16LE=function(e,t){t||H(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt16BE=function(e,t){t||H(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},p.prototype.readInt32LE=function(e,t){return t||H(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},p.prototype.readInt32BE=function(e,t){return t||H(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},p.prototype.readFloatLE=function(e,t){return t||H(e,4,this.length),h(this,e,!0,23,4)},p.prototype.readFloatBE=function(e,t){return t||H(e,4,this.length),h(this,e,!1,23,4)},p.prototype.readDoubleLE=function(e,t){return t||H(e,8,this.length),h(this,e,!0,52,8)},p.prototype.readDoubleBE=function(e,t){return t||H(e,8,this.length),h(this,e,!1,52,8)},p.prototype.writeUIntLE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||F(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[t]=255&e;++o<r&&(i*=256);)this[t+o]=e/i&255;return t+r},p.prototype.writeUIntBE=function(e,t,r,n){(e=+e,t|=0,r|=0,n)||F(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},p.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,1,255,0),p.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},p.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,2,65535,0),p.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},p.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,2,65535,0),p.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},p.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,4,4294967295,0),p.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):Z(this,e,t,!0),t+4},p.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,4,4294967295,0),p.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):Z(this,e,t,!1),t+4},p.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);F(this,e,t,r,i-1,-i)}var o=0,a=1,s=0;for(this[t]=255&e;++o<r&&(a*=256);)e<0&&0===s&&0!==this[t+o-1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+r},p.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*r-1);F(this,e,t,r,i-1,-i)}var o=r-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+r},p.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,1,127,-128),p.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},p.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,2,32767,-32768),p.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},p.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,2,32767,-32768),p.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},p.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,4,2147483647,-2147483648),p.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):Z(this,e,t,!0),t+4},p.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||F(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),p.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):Z(this,e,t,!1),t+4},p.prototype.writeFloatLE=function(e,t,r){return W(this,e,t,!0,r)},p.prototype.writeFloatBE=function(e,t,r){return W(this,e,t,!1,r)},p.prototype.writeDoubleLE=function(e,t,r){return Y(this,e,t,!0,r)},p.prototype.writeDoubleBE=function(e,t,r){return Y(this,e,t,!1,r)},p.prototype.copy=function(e,t,r,n){if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t<n-r&&(n=e.length-t+r);var i,o=n-r;if(this===e&&r<t&&t<n)for(i=o-1;i>=0;--i)e[i+t]=this[i+r];else if(o<1e3||!p.TYPED_ARRAY_SUPPORT)for(i=0;i<o;++i)e[i+t]=this[i+r];else Uint8Array.prototype.set.call(e,this.subarray(r,r+o),t);return o},p.prototype.fill=function(e,t,r,n){if("string"==typeof e){if("string"==typeof t?(n=t,t=0,r=this.length):"string"==typeof r&&(n=r,r=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!p.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var o;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(o=t;o<r;++o)this[o]=e;else{var a=y(e)?e:q(new p(e,n).toString()),s=a.length;for(o=0;o<r-t;++o)this[o+t]=a[o%s]}return this};var K=/[^+\/0-9A-Za-z-_]/g;function X(e){return e<16?"0"+e.toString(16):e.toString(16)}function q(e,t){var r;t=t||1/0;for(var n=e.length,i=null,o=[],a=0;a<n;++a){if((r=e.charCodeAt(a))>55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function V(e){return function(e){var t,a,s,h,l,f;i||o();var c=e.length;if(c%4>0)throw new Error("Invalid string. Length must be a multiple of 4");l="="===e[c-2]?2:"="===e[c-1]?1:0,f=new n(3*c/4-l),s=l>0?c-4:c;var u=0;for(t=0,a=0;t<s;t+=4,a+=3)h=r[e.charCodeAt(t)]<<18|r[e.charCodeAt(t+1)]<<12|r[e.charCodeAt(t+2)]<<6|r[e.charCodeAt(t+3)],f[u++]=h>>16&255,f[u++]=h>>8&255,f[u++]=255&h;return 2===l?(h=r[e.charCodeAt(t)]<<2|r[e.charCodeAt(t+1)]>>4,f[u++]=255&h):1===l&&(h=r[e.charCodeAt(t)]<<10|r[e.charCodeAt(t+1)]<<4|r[e.charCodeAt(t+2)]>>2,f[u++]=h>>8&255,f[u++]=255&h),f}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(K,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function G(e,t,r,n){for(var i=0;i<n&&!(i+r>=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function $(e){return null!=e&&(!!e._isBuffer||J(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&J(e.slice(0,0))}(e))}function J(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function Q(e,t){return e(t={exports:{}},t.exports),t.exports}var ee=Q(function(e,t){var r;e.exports=(r=r||function(e,t){var r=Object.create||function(){function e(){}return function(t){var r;return e.prototype=t,r=new e,e.prototype=null,r}}(),n={},i=n.lib={},o=i.Base={extend:function(e){var t=r(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},a=i.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||h).stringify(this)},concat:function(e){var t=this.words,r=e.words,n=this.sigBytes,i=e.sigBytes;if(this.clamp(),n%4)for(var o=0;o<i;o++){var a=r[o>>>2]>>>24-o%4*8&255;t[n+o>>>2]|=a<<24-(n+o)%4*8}else for(var o=0;o<i;o+=4)t[n+o>>>2]=r[o>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,r=this.sigBytes;t[r>>>2]&=4294967295<<32-r%4*8,t.length=e.ceil(r/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var r,n=[],i=function(t){var t=t,r=987654321,n=4294967295;return function(){var i=((r=36969*(65535&r)+(r>>16)&n)<<16)+(t=18e3*(65535&t)+(t>>16)&n)&n;return i/=4294967296,(i+=.5)*(e.random()>.5?1:-1)}},o=0;o<t;o+=4){var s=i(4294967296*(r||e.random()));r=987654071*s(),n.push(4294967296*s()|0)}return new a.init(n,t)}}),s=n.enc={},h=s.Hex={stringify:function(e){for(var t=e.words,r=e.sigBytes,n=[],i=0;i<r;i++){var o=t[i>>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,r=[],n=0;n<t;n+=2)r[n>>>3]|=parseInt(e.substr(n,2),16)<<24-n%8*4;return new a.init(r,t/2)}},l=s.Latin1={stringify:function(e){for(var t=e.words,r=e.sigBytes,n=[],i=0;i<r;i++){var o=t[i>>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(e){for(var t=e.length,r=[],n=0;n<t;n++)r[n>>>2]|=(255&e.charCodeAt(n))<<24-n%4*8;return new a.init(r,t)}},f=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},c=i.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var r=this._data,n=r.words,i=r.sigBytes,o=this.blockSize,s=4*o,h=i/s,l=(h=t?e.ceil(h):e.max((0|h)-this._minBufferSize,0))*o,f=e.min(4*l,i);if(l){for(var c=0;c<l;c+=o)this._doProcessBlock(n,c);var u=n.splice(0,l);r.sigBytes-=f}return new a.init(u,f)},clone:function(){var e=o.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0}),u=(i.Hasher=c.extend({cfg:o.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){c.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){e&&this._append(e);var t=this._doFinalize();return t},blockSize:16,_createHelper:function(e){return function(t,r){return new e.init(r).finalize(t)}},_createHmacHelper:function(e){return function(t,r){return new u.HMAC.init(e,r).finalize(t)}}}),n.algo={});return n}(Math),r)}),te=(Q(function(e,t){var r,n,i,o,a,s;e.exports=(i=(n=r=ee).lib,o=i.Base,a=i.WordArray,(s=n.x64={}).Word=o.extend({init:function(e,t){this.high=e,this.low=t}}),s.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:8*e.length},toX32:function(){for(var e=this.words,t=e.length,r=[],n=0;n<t;n++){var i=e[n];r.push(i.high),r.push(i.low)}return a.create(r,this.sigBytes)},clone:function(){for(var e=o.clone.call(this),t=e.words=this.words.slice(0),r=t.length,n=0;n<r;n++)t[n]=t[n].clone();return e}}),r)}),Q(function(e,t){var r;e.exports=(r=ee,function(){if("function"==typeof ArrayBuffer){var e=r.lib.WordArray,t=e.init;(e.init=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),(e instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&e instanceof Uint8ClampedArray||e instanceof Int16Array||e instanceof Uint16Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array)&&(e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),e instanceof Uint8Array){for(var r=e.byteLength,n=[],i=0;i<r;i++)n[i>>>2]|=e[i]<<24-i%4*8;t.call(this,n,r)}else t.apply(this,arguments)}).prototype=e}}(),r.lib.WordArray)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.WordArray,n=e.enc;function i(e){return e<<8&4278255360|e>>>8&16711935}n.Utf16=n.Utf16BE={stringify:function(e){for(var t=e.words,r=e.sigBytes,n=[],i=0;i<r;i+=2){var o=t[i>>>2]>>>16-i%4*8&65535;n.push(String.fromCharCode(o))}return n.join("")},parse:function(e){for(var r=e.length,n=[],i=0;i<r;i++)n[i>>>1]|=e.charCodeAt(i)<<16-i%2*16;return t.create(n,2*r)}},n.Utf16LE={stringify:function(e){for(var t=e.words,r=e.sigBytes,n=[],o=0;o<r;o+=2){var a=i(t[o>>>2]>>>16-o%4*8&65535);n.push(String.fromCharCode(a))}return n.join("")},parse:function(e){for(var r=e.length,n=[],o=0;o<r;o++)n[o>>>1]|=i(e.charCodeAt(o)<<16-o%2*16);return t.create(n,2*r)}}}(),r.enc.Utf16)}),Q(function(e,t){var r,n,i;e.exports=(i=(n=r=ee).lib.WordArray,n.enc.Base64={stringify:function(e){var t=e.words,r=e.sigBytes,n=this._map;e.clamp();for(var i=[],o=0;o<r;o+=3)for(var a=(t[o>>>2]>>>24-o%4*8&255)<<16|(t[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|t[o+2>>>2]>>>24-(o+2)%4*8&255,s=0;s<4&&o+.75*s<r;s++)i.push(n.charAt(a>>>6*(3-s)&63));var h=n.charAt(64);if(h)for(;i.length%4;)i.push(h);return i.join("")},parse:function(e){var t=e.length,r=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var o=0;o<r.length;o++)n[r.charCodeAt(o)]=o}var a=r.charAt(64);if(a){var s=e.indexOf(a);-1!==s&&(t=s)}return function(e,t,r){for(var n=[],o=0,a=0;a<t;a++)if(a%4){var s=r[e.charCodeAt(a-1)]<<a%4*2,h=r[e.charCodeAt(a)]>>>6-a%4*2;n[o>>>2]|=(s|h)<<24-o%4*8,o++}return i.create(n,o)}(e,t,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},r.enc.Base64)}),Q(function(e,t){var r;e.exports=(r=ee,function(e){var t=r,n=t.lib,i=n.WordArray,o=n.Hasher,a=t.algo,s=[];!function(){for(var t=0;t<64;t++)s[t]=4294967296*e.abs(e.sin(t+1))|0}();var h=a.MD5=o.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var r=0;r<16;r++){var n=t+r,i=e[n];e[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o=this._hash.words,a=e[t+0],h=e[t+1],d=e[t+2],p=e[t+3],_=e[t+4],g=e[t+5],v=e[t+6],w=e[t+7],b=e[t+8],y=e[t+9],m=e[t+10],k=e[t+11],E=e[t+12],S=e[t+13],x=e[t+14],R=e[t+15],A=o[0],B=o[1],z=o[2],L=o[3];A=l(A,B,z,L,a,7,s[0]),L=l(L,A,B,z,h,12,s[1]),z=l(z,L,A,B,d,17,s[2]),B=l(B,z,L,A,p,22,s[3]),A=l(A,B,z,L,_,7,s[4]),L=l(L,A,B,z,g,12,s[5]),z=l(z,L,A,B,v,17,s[6]),B=l(B,z,L,A,w,22,s[7]),A=l(A,B,z,L,b,7,s[8]),L=l(L,A,B,z,y,12,s[9]),z=l(z,L,A,B,m,17,s[10]),B=l(B,z,L,A,k,22,s[11]),A=l(A,B,z,L,E,7,s[12]),L=l(L,A,B,z,S,12,s[13]),z=l(z,L,A,B,x,17,s[14]),A=f(A,B=l(B,z,L,A,R,22,s[15]),z,L,h,5,s[16]),L=f(L,A,B,z,v,9,s[17]),z=f(z,L,A,B,k,14,s[18]),B=f(B,z,L,A,a,20,s[19]),A=f(A,B,z,L,g,5,s[20]),L=f(L,A,B,z,m,9,s[21]),z=f(z,L,A,B,R,14,s[22]),B=f(B,z,L,A,_,20,s[23]),A=f(A,B,z,L,y,5,s[24]),L=f(L,A,B,z,x,9,s[25]),z=f(z,L,A,B,p,14,s[26]),B=f(B,z,L,A,b,20,s[27]),A=f(A,B,z,L,S,5,s[28]),L=f(L,A,B,z,d,9,s[29]),z=f(z,L,A,B,w,14,s[30]),A=c(A,B=f(B,z,L,A,E,20,s[31]),z,L,g,4,s[32]),L=c(L,A,B,z,b,11,s[33]),z=c(z,L,A,B,k,16,s[34]),B=c(B,z,L,A,x,23,s[35]),A=c(A,B,z,L,h,4,s[36]),L=c(L,A,B,z,_,11,s[37]),z=c(z,L,A,B,w,16,s[38]),B=c(B,z,L,A,m,23,s[39]),A=c(A,B,z,L,S,4,s[40]),L=c(L,A,B,z,a,11,s[41]),z=c(z,L,A,B,p,16,s[42]),B=c(B,z,L,A,v,23,s[43]),A=c(A,B,z,L,y,4,s[44]),L=c(L,A,B,z,E,11,s[45]),z=c(z,L,A,B,R,16,s[46]),A=u(A,B=c(B,z,L,A,d,23,s[47]),z,L,a,6,s[48]),L=u(L,A,B,z,w,10,s[49]),z=u(z,L,A,B,x,15,s[50]),B=u(B,z,L,A,g,21,s[51]),A=u(A,B,z,L,E,6,s[52]),L=u(L,A,B,z,p,10,s[53]),z=u(z,L,A,B,m,15,s[54]),B=u(B,z,L,A,h,21,s[55]),A=u(A,B,z,L,b,6,s[56]),L=u(L,A,B,z,R,10,s[57]),z=u(z,L,A,B,v,15,s[58]),B=u(B,z,L,A,S,21,s[59]),A=u(A,B,z,L,_,6,s[60]),L=u(L,A,B,z,k,10,s[61]),z=u(z,L,A,B,d,15,s[62]),B=u(B,z,L,A,y,21,s[63]),o[0]=o[0]+A|0,o[1]=o[1]+B|0,o[2]=o[2]+z|0,o[3]=o[3]+L|0},_doFinalize:function(){var t=this._data,r=t.words,n=8*this._nDataBytes,i=8*t.sigBytes;r[i>>>5]|=128<<24-i%32;var o=e.floor(n/4294967296),a=n;r[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),r[14+(i+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),t.sigBytes=4*(r.length+1),this._process();for(var s=this._hash,h=s.words,l=0;l<4;l++){var f=h[l];h[l]=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8)}return s},clone:function(){var e=o.clone.call(this);return e._hash=this._hash.clone(),e}});function l(e,t,r,n,i,o,a){var s=e+(t&r|~t&n)+i+a;return(s<<o|s>>>32-o)+t}function f(e,t,r,n,i,o,a){var s=e+(t&n|r&~n)+i+a;return(s<<o|s>>>32-o)+t}function c(e,t,r,n,i,o,a){var s=e+(t^r^n)+i+a;return(s<<o|s>>>32-o)+t}function u(e,t,r,n,i,o,a){var s=e+(r^(t|~n))+i+a;return(s<<o|s>>>32-o)+t}t.MD5=o._createHelper(h),t.HmacMD5=o._createHmacHelper(h)}(Math),r.MD5)}),Q(function(e,t){var r,n,i,o,a,s,h,l;e.exports=(i=(n=r=ee).lib,o=i.WordArray,a=i.Hasher,s=n.algo,h=[],l=s.SHA1=a.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],a=r[3],s=r[4],l=0;l<80;l++){if(l<16)h[l]=0|e[t+l];else{var f=h[l-3]^h[l-8]^h[l-14]^h[l-16];h[l]=f<<1|f>>>31}var c=(n<<5|n>>>27)+s+h[l];c+=l<20?1518500249+(i&o|~i&a):l<40?1859775393+(i^o^a):l<60?(i&o|i&a|o&a)-1894007588:(i^o^a)-899497514,s=a,a=o,o=i<<30|i>>>2,i=n,n=c}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+a|0,r[4]=r[4]+s|0},_doFinalize:function(){var e=this._data,t=e.words,r=8*this._nDataBytes,n=8*e.sigBytes;return t[n>>>5]|=128<<24-n%32,t[14+(n+64>>>9<<4)]=Math.floor(r/4294967296),t[15+(n+64>>>9<<4)]=r,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}}),n.SHA1=a._createHelper(l),n.HmacSHA1=a._createHmacHelper(l),r.SHA1)}),Q(function(e,t){var r;e.exports=(r=ee,function(e){var t=r,n=t.lib,i=n.WordArray,o=n.Hasher,a=t.algo,s=[],h=[];!function(){function t(t){for(var r=e.sqrt(t),n=2;n<=r;n++)if(!(t%n))return!1;return!0}function r(e){return 4294967296*(e-(0|e))|0}for(var n=2,i=0;i<64;)t(n)&&(i<8&&(s[i]=r(e.pow(n,.5))),h[i]=r(e.pow(n,1/3)),i++),n++}();var l=[],f=a.SHA256=o.extend({_doReset:function(){this._hash=new i.init(s.slice(0))},_doProcessBlock:function(e,t){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],a=r[3],s=r[4],f=r[5],c=r[6],u=r[7],d=0;d<64;d++){if(d<16)l[d]=0|e[t+d];else{var p=l[d-15],_=(p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3,g=l[d-2],v=(g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10;l[d]=_+l[d-7]+v+l[d-16]}var w=n&i^n&o^i&o,b=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),y=u+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&f^~s&c)+h[d]+l[d];u=c,c=f,f=s,s=a+y|0,a=o,o=i,i=n,n=y+(b+w)|0}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+a|0,r[4]=r[4]+s|0,r[5]=r[5]+f|0,r[6]=r[6]+c|0,r[7]=r[7]+u|0},_doFinalize:function(){var t=this._data,r=t.words,n=8*this._nDataBytes,i=8*t.sigBytes;return r[i>>>5]|=128<<24-i%32,r[14+(i+64>>>9<<4)]=e.floor(n/4294967296),r[15+(i+64>>>9<<4)]=n,t.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var e=o.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=o._createHelper(f),t.HmacSHA256=o._createHmacHelper(f)}(Math),r.SHA256)}),Q(function(e,t){var r,n,i,o,a,s;e.exports=(i=(n=r=ee).lib.WordArray,o=n.algo,a=o.SHA256,s=o.SHA224=a.extend({_doReset:function(){this._hash=new i.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var e=a._doFinalize.call(this);return e.sigBytes-=4,e}}),n.SHA224=a._createHelper(s),n.HmacSHA224=a._createHmacHelper(s),r.SHA224)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.Hasher,n=e.x64,i=n.Word,o=n.WordArray,a=e.algo;function s(){return i.create.apply(i,arguments)}var h=[s(1116352408,3609767458),s(1899447441,602891725),s(3049323471,3964484399),s(3921009573,2173295548),s(961987163,4081628472),s(1508970993,3053834265),s(2453635748,2937671579),s(2870763221,3664609560),s(3624381080,2734883394),s(310598401,1164996542),s(607225278,1323610764),s(1426881987,3590304994),s(1925078388,4068182383),s(2162078206,991336113),s(2614888103,633803317),s(3248222580,3479774868),s(3835390401,2666613458),s(4022224774,944711139),s(264347078,2341262773),s(604807628,2007800933),s(770255983,1495990901),s(1249150122,1856431235),s(1555081692,3175218132),s(1996064986,2198950837),s(2554220882,3999719339),s(2821834349,766784016),s(2952996808,2566594879),s(3210313671,3203337956),s(3336571891,1034457026),s(3584528711,2466948901),s(113926993,3758326383),s(338241895,168717936),s(666307205,1188179964),s(773529912,1546045734),s(1294757372,1522805485),s(1396182291,2643833823),s(1695183700,2343527390),s(1986661051,1014477480),s(2177026350,1206759142),s(2456956037,344077627),s(2730485921,1290863460),s(2820302411,3158454273),s(3259730800,3505952657),s(3345764771,106217008),s(3516065817,3606008344),s(3600352804,1432725776),s(4094571909,1467031594),s(275423344,851169720),s(430227734,3100823752),s(506948616,1363258195),s(659060556,3750685593),s(883997877,3785050280),s(958139571,3318307427),s(1322822218,3812723403),s(1537002063,2003034995),s(1747873779,3602036899),s(1955562222,1575990012),s(2024104815,1125592928),s(2227730452,2716904306),s(2361852424,442776044),s(2428436474,593698344),s(2756734187,3733110249),s(3204031479,2999351573),s(3329325298,3815920427),s(3391569614,3928383900),s(3515267271,566280711),s(3940187606,3454069534),s(4118630271,4000239992),s(116418474,1914138554),s(174292421,2731055270),s(289380356,3203993006),s(460393269,320620315),s(685471733,587496836),s(852142971,1086792851),s(1017036298,365543100),s(1126000580,2618297676),s(1288033470,3409855158),s(1501505948,4234509866),s(1607167915,987167468),s(1816402316,1246189591)],l=[];!function(){for(var e=0;e<80;e++)l[e]=s()}();var f=a.SHA512=t.extend({_doReset:function(){this._hash=new o.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],a=r[3],s=r[4],f=r[5],c=r[6],u=r[7],d=n.high,p=n.low,_=i.high,g=i.low,v=o.high,w=o.low,b=a.high,y=a.low,m=s.high,k=s.low,E=f.high,S=f.low,x=c.high,R=c.low,A=u.high,B=u.low,z=d,L=p,T=_,M=g,C=v,D=w,I=b,P=y,O=m,U=k,H=E,F=S,N=x,Z=R,j=A,W=B,Y=0;Y<80;Y++){var K=l[Y];if(Y<16)var X=K.high=0|e[t+2*Y],q=K.low=0|e[t+2*Y+1];else{var V=l[Y-15],G=V.high,$=V.low,J=(G>>>1|$<<31)^(G>>>8|$<<24)^G>>>7,Q=($>>>1|G<<31)^($>>>8|G<<24)^($>>>7|G<<25),ee=l[Y-2],te=ee.high,re=ee.low,ne=(te>>>19|re<<13)^(te<<3|re>>>29)^te>>>6,ie=(re>>>19|te<<13)^(re<<3|te>>>29)^(re>>>6|te<<26),oe=l[Y-7],ae=oe.high,se=oe.low,he=l[Y-16],le=he.high,fe=he.low;X=(X=(X=J+ae+((q=Q+se)>>>0<Q>>>0?1:0))+ne+((q+=ie)>>>0<ie>>>0?1:0))+le+((q+=fe)>>>0<fe>>>0?1:0),K.high=X,K.low=q}var ce,ue=O&H^~O&N,de=U&F^~U&Z,pe=z&T^z&C^T&C,_e=L&M^L&D^M&D,ge=(z>>>28|L<<4)^(z<<30|L>>>2)^(z<<25|L>>>7),ve=(L>>>28|z<<4)^(L<<30|z>>>2)^(L<<25|z>>>7),we=(O>>>14|U<<18)^(O>>>18|U<<14)^(O<<23|U>>>9),be=(U>>>14|O<<18)^(U>>>18|O<<14)^(U<<23|O>>>9),ye=h[Y],me=ye.high,ke=ye.low,Ee=j+we+((ce=W+be)>>>0<W>>>0?1:0),Se=ve+_e;j=N,W=Z,N=H,Z=F,H=O,F=U,O=I+(Ee=(Ee=(Ee=Ee+ue+((ce+=de)>>>0<de>>>0?1:0))+me+((ce+=ke)>>>0<ke>>>0?1:0))+X+((ce+=q)>>>0<q>>>0?1:0))+((U=P+ce|0)>>>0<P>>>0?1:0)|0,I=C,P=D,C=T,D=M,T=z,M=L,z=Ee+(ge+pe+(Se>>>0<ve>>>0?1:0))+((L=ce+Se|0)>>>0<ce>>>0?1:0)|0}p=n.low=p+L,n.high=d+z+(p>>>0<L>>>0?1:0),g=i.low=g+M,i.high=_+T+(g>>>0<M>>>0?1:0),w=o.low=w+D,o.high=v+C+(w>>>0<D>>>0?1:0),y=a.low=y+P,a.high=b+I+(y>>>0<P>>>0?1:0),k=s.low=k+U,s.high=m+O+(k>>>0<U>>>0?1:0),S=f.low=S+F,f.high=E+H+(S>>>0<F>>>0?1:0),R=c.low=R+Z,c.high=x+N+(R>>>0<Z>>>0?1:0),B=u.low=B+W,u.high=A+j+(B>>>0<W>>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,r=8*this._nDataBytes,n=8*e.sigBytes;return t[n>>>5]|=128<<24-n%32,t[30+(n+128>>>10<<5)]=Math.floor(r/4294967296),t[31+(n+128>>>10<<5)]=r,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=t.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32});e.SHA512=t._createHelper(f),e.HmacSHA512=t._createHmacHelper(f)}(),r.SHA512)}),Q(function(e,t){var r,n,i,o,a,s,h,l;e.exports=(i=(n=r=ee).x64,o=i.Word,a=i.WordArray,s=n.algo,h=s.SHA512,l=s.SHA384=h.extend({_doReset:function(){this._hash=new a.init([new o.init(3418070365,3238371032),new o.init(1654270250,914150663),new o.init(2438529370,812702999),new o.init(355462360,4144912697),new o.init(1731405415,4290775857),new o.init(2394180231,1750603025),new o.init(3675008525,1694076839),new o.init(1203062813,3204075428)])},_doFinalize:function(){var e=h._doFinalize.call(this);return e.sigBytes-=16,e}}),n.SHA384=h._createHelper(l),n.HmacSHA384=h._createHmacHelper(l),r.SHA384)}),Q(function(e,t){var r;e.exports=(r=ee,function(e){var t=r,n=t.lib,i=n.WordArray,o=n.Hasher,a=t.x64.Word,s=t.algo,h=[],l=[],f=[];!function(){for(var e=1,t=0,r=0;r<24;r++){h[e+5*t]=(r+1)*(r+2)/2%64;var n=(2*e+3*t)%5;e=t%5,t=n}for(e=0;e<5;e++)for(t=0;t<5;t++)l[e+5*t]=t+(2*e+3*t)%5*5;for(var i=1,o=0;o<24;o++){for(var s=0,c=0,u=0;u<7;u++){if(1&i){var d=(1<<u)-1;d<32?c^=1<<d:s^=1<<d-32}128&i?i=i<<1^113:i<<=1}f[o]=a.create(s,c)}}();var c=[];!function(){for(var e=0;e<25;e++)c[e]=a.create()}();var u=s.SHA3=o.extend({cfg:o.cfg.extend({outputLength:512}),_doReset:function(){for(var e=this._state=[],t=0;t<25;t++)e[t]=new a.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(e,t){for(var r=this._state,n=this.blockSize/2,i=0;i<n;i++){var o=e[t+2*i],a=e[t+2*i+1];o=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),a=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),(B=r[i]).high^=a,B.low^=o}for(var s=0;s<24;s++){for(var u=0;u<5;u++){for(var d=0,p=0,_=0;_<5;_++)d^=(B=r[u+5*_]).high,p^=B.low;var g=c[u];g.high=d,g.low=p}for(u=0;u<5;u++){var v=c[(u+4)%5],w=c[(u+1)%5],b=w.high,y=w.low;for(d=v.high^(b<<1|y>>>31),p=v.low^(y<<1|b>>>31),_=0;_<5;_++)(B=r[u+5*_]).high^=d,B.low^=p}for(var m=1;m<25;m++){var k=(B=r[m]).high,E=B.low,S=h[m];S<32?(d=k<<S|E>>>32-S,p=E<<S|k>>>32-S):(d=E<<S-32|k>>>64-S,p=k<<S-32|E>>>64-S);var x=c[l[m]];x.high=d,x.low=p}var R=c[0],A=r[0];for(R.high=A.high,R.low=A.low,u=0;u<5;u++)for(_=0;_<5;_++){var B=r[m=u+5*_],z=c[m],L=c[(u+1)%5+5*_],T=c[(u+2)%5+5*_];B.high=z.high^~L.high&T.high,B.low=z.low^~L.low&T.low}B=r[0];var M=f[s];B.high^=M.high,B.low^=M.low}},_doFinalize:function(){var t=this._data,r=t.words,n=(this._nDataBytes,8*t.sigBytes),o=32*this.blockSize;r[n>>>5]|=1<<24-n%32,r[(e.ceil((n+1)/o)*o>>>5)-1]|=128,t.sigBytes=4*r.length,this._process();for(var a=this._state,s=this.cfg.outputLength/8,h=s/8,l=[],f=0;f<h;f++){var c=a[f],u=c.high,d=c.low;u=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8),d=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8),l.push(d),l.push(u)}return new i.init(l,s)},clone:function(){for(var e=o.clone.call(this),t=e._state=this._state.slice(0),r=0;r<25;r++)t[r]=t[r].clone();return e}});t.SHA3=o._createHelper(u),t.HmacSHA3=o._createHmacHelper(u)}(Math),r.SHA3)}),Q(function(e,t){var r;e.exports=(r=ee,function(e){var t=r,n=t.lib,i=n.WordArray,o=n.Hasher,a=t.algo,s=i.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),h=i.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),l=i.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),f=i.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),c=i.create([0,1518500249,1859775393,2400959708,2840853838]),u=i.create([1352829926,1548603684,1836072691,2053994217,0]),d=a.RIPEMD160=o.extend({_doReset:function(){this._hash=i.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var r=0;r<16;r++){var n=t+r,i=e[n];e[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o,a,d,y,m,k,E,S,x,R,A,B=this._hash.words,z=c.words,L=u.words,T=s.words,M=h.words,C=l.words,D=f.words;for(k=o=B[0],E=a=B[1],S=d=B[2],x=y=B[3],R=m=B[4],r=0;r<80;r+=1)A=o+e[t+T[r]]|0,A+=r<16?p(a,d,y)+z[0]:r<32?_(a,d,y)+z[1]:r<48?g(a,d,y)+z[2]:r<64?v(a,d,y)+z[3]:w(a,d,y)+z[4],A=(A=b(A|=0,C[r]))+m|0,o=m,m=y,y=b(d,10),d=a,a=A,A=k+e[t+M[r]]|0,A+=r<16?w(E,S,x)+L[0]:r<32?v(E,S,x)+L[1]:r<48?g(E,S,x)+L[2]:r<64?_(E,S,x)+L[3]:p(E,S,x)+L[4],A=(A=b(A|=0,D[r]))+R|0,k=R,R=x,x=b(S,10),S=E,E=A;A=B[1]+d+x|0,B[1]=B[2]+y+R|0,B[2]=B[3]+m+k|0,B[3]=B[4]+o+E|0,B[4]=B[0]+a+S|0,B[0]=A},_doFinalize:function(){var e=this._data,t=e.words,r=8*this._nDataBytes,n=8*e.sigBytes;t[n>>>5]|=128<<24-n%32,t[14+(n+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),e.sigBytes=4*(t.length+1),this._process();for(var i=this._hash,o=i.words,a=0;a<5;a++){var s=o[a];o[a]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}return i},clone:function(){var e=o.clone.call(this);return e._hash=this._hash.clone(),e}});function p(e,t,r){return e^t^r}function _(e,t,r){return e&t|~e&r}function g(e,t,r){return(e|~t)^r}function v(e,t,r){return e&r|t&~r}function w(e,t,r){return e^(t|~r)}function b(e,t){return e<<t|e>>>32-t}t.RIPEMD160=o._createHelper(d),t.HmacRIPEMD160=o._createHmacHelper(d)}(),r.RIPEMD160)}),Q(function(e,t){var r,n,i,o,a,s;e.exports=(n=(r=ee).lib,i=n.Base,o=r.enc,a=o.Utf8,s=r.algo,void(s.HMAC=i.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=a.parse(t));var r=e.blockSize,n=4*r;t.sigBytes>n&&(t=e.finalize(t)),t.clamp();for(var i=this._oKey=t.clone(),o=this._iKey=t.clone(),s=i.words,h=o.words,l=0;l<r;l++)s[l]^=1549556828,h[l]^=909522486;i.sigBytes=o.sigBytes=n,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher,r=t.finalize(e);t.reset();var n=t.finalize(this._oKey.clone().concat(r));return n}})))}),Q(function(e,t){var r,n,i,o,a,s,h,l,f;e.exports=(i=(n=r=ee).lib,o=i.Base,a=i.WordArray,s=n.algo,h=s.SHA1,l=s.HMAC,f=s.PBKDF2=o.extend({cfg:o.extend({keySize:4,hasher:h,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var r=this.cfg,n=l.create(r.hasher,e),i=a.create(),o=a.create([1]),s=i.words,h=o.words,f=r.keySize,c=r.iterations;s.length<f;){var u=n.update(t).finalize(o);n.reset();for(var d=u.words,p=d.length,_=u,g=1;g<c;g++){_=n.finalize(_),n.reset();for(var v=_.words,w=0;w<p;w++)d[w]^=v[w]}i.concat(u),h[0]++}return i.sigBytes=4*f,i}}),n.PBKDF2=function(e,t,r){return f.create(r).compute(e,t)},r.PBKDF2)}),Q(function(e,t){var r,n,i,o,a,s,h,l;e.exports=(i=(n=r=ee).lib,o=i.Base,a=i.WordArray,s=n.algo,h=s.MD5,l=s.EvpKDF=o.extend({cfg:o.extend({keySize:4,hasher:h,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var r=this.cfg,n=r.hasher.create(),i=a.create(),o=i.words,s=r.keySize,h=r.iterations;o.length<s;){l&&n.update(l);var l=n.update(e).finalize(t);n.reset();for(var f=1;f<h;f++)l=n.finalize(l),n.reset();i.concat(l)}return i.sigBytes=4*s,i}}),n.EvpKDF=function(e,t,r){return l.create(r).compute(e,t)},r.EvpKDF)}),Q(function(e,t){var r,n,i,o,a,s,h,l,f,c,u,d,p,_,g,v,w,b,y,m,k,E,S,x;e.exports=void((r=ee).lib.Cipher||(i=r,o=i.lib,a=o.Base,s=o.WordArray,h=o.BufferedBlockAlgorithm,l=i.enc,l.Utf8,f=l.Base64,c=i.algo,u=c.EvpKDF,d=o.Cipher=h.extend({cfg:a.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,r){this.cfg=this.cfg.extend(r),this._xformMode=e,this._key=t,this.reset()},reset:function(){h.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){e&&this._append(e);var t=this._doFinalize();return t},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return"string"==typeof e?x:k}return function(t){return{encrypt:function(r,n,i){return e(n).encrypt(t,r,n,i)},decrypt:function(r,n,i){return e(n).decrypt(t,r,n,i)}}}}()}),o.StreamCipher=d.extend({_doFinalize:function(){var e=this._process(!0);return e},blockSize:1}),p=i.mode={},_=o.BlockCipherMode=a.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),g=p.CBC=function(){var e=_.extend();function t(e,t,r){var i=this._iv;if(i){var o=i;this._iv=n}else var o=this._prevBlock;for(var a=0;a<r;a++)e[t+a]^=o[a]}return e.Encryptor=e.extend({processBlock:function(e,r){var n=this._cipher,i=n.blockSize;t.call(this,e,r,i),n.encryptBlock(e,r),this._prevBlock=e.slice(r,r+i)}}),e.Decryptor=e.extend({processBlock:function(e,r){var n=this._cipher,i=n.blockSize,o=e.slice(r,r+i);n.decryptBlock(e,r),t.call(this,e,r,i),this._prevBlock=o}}),e}(),v=i.pad={},w=v.Pkcs7={pad:function(e,t){for(var r=4*t,n=r-e.sigBytes%r,i=n<<24|n<<16|n<<8|n,o=[],a=0;a<n;a+=4)o.push(i);var h=s.create(o,n);e.concat(h)},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},o.BlockCipher=d.extend({cfg:d.cfg.extend({mode:g,padding:w}),reset:function(){d.reset.call(this);var e=this.cfg,t=e.iv,r=e.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=r.createEncryptor;else{var n=r.createDecryptor;this._minBufferSize=1}this._mode&&this._mode.__creator==n?this._mode.init(this,t&&t.words):(this._mode=n.call(r,this,t&&t.words),this._mode.__creator=n)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else{var t=this._process(!0);e.unpad(t)}return t},blockSize:4}),b=o.CipherParams=a.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),y=i.format={},m=y.OpenSSL={stringify:function(e){var t=e.ciphertext,r=e.salt;if(r)var n=s.create([1398893684,1701076831]).concat(r).concat(t);else var n=t;return n.toString(f)},parse:function(e){var t=f.parse(e),r=t.words;if(1398893684==r[0]&&1701076831==r[1]){var n=s.create(r.slice(2,4));r.splice(0,4),t.sigBytes-=16}return b.create({ciphertext:t,salt:n})}},k=o.SerializableCipher=a.extend({cfg:a.extend({format:m}),encrypt:function(e,t,r,n){n=this.cfg.extend(n);var i=e.createEncryptor(r,n),o=i.finalize(t),a=i.cfg;return b.create({ciphertext:o,key:r,iv:a.iv,algorithm:e,mode:a.mode,padding:a.padding,blockSize:e.blockSize,formatter:n.format})},decrypt:function(e,t,r,n){n=this.cfg.extend(n),t=this._parse(t,n.format);var i=e.createDecryptor(r,n).finalize(t.ciphertext);return i},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),E=i.kdf={},S=E.OpenSSL={execute:function(e,t,r,n){n||(n=s.random(8));var i=u.create({keySize:t+r}).compute(e,n),o=s.create(i.words.slice(t),4*r);return i.sigBytes=4*t,b.create({key:i,iv:o,salt:n})}},x=o.PasswordBasedCipher=k.extend({cfg:k.cfg.extend({kdf:S}),encrypt:function(e,t,r,n){var i=(n=this.cfg.extend(n)).kdf.execute(r,e.keySize,e.ivSize);n.iv=i.iv;var o=k.encrypt.call(this,e,t,i.key,n);return o.mixIn(i),o},decrypt:function(e,t,r,n){n=this.cfg.extend(n),t=this._parse(t,n.format);var i=n.kdf.execute(r,e.keySize,e.ivSize,t.salt);n.iv=i.iv;var o=k.decrypt.call(this,e,t,i.key,n);return o}})))}),Q(function(e,t){var r;e.exports=((r=ee).mode.CFB=function(){var e=r.lib.BlockCipherMode.extend();function t(e,t,r,n){var i=this._iv;if(i){var o=i.slice(0);this._iv=void 0}else o=this._prevBlock;n.encryptBlock(o,0);for(var a=0;a<r;a++)e[t+a]^=o[a]}return e.Encryptor=e.extend({processBlock:function(e,r){var n=this._cipher,i=n.blockSize;t.call(this,e,r,i,n),this._prevBlock=e.slice(r,r+i)}}),e.Decryptor=e.extend({processBlock:function(e,r){var n=this._cipher,i=n.blockSize,o=e.slice(r,r+i);t.call(this,e,r,i,n),this._prevBlock=o}}),e}(),r.mode.CFB)}),Q(function(e,t){var r,n,i;e.exports=((r=ee).mode.CTR=(n=r.lib.BlockCipherMode.extend(),i=n.Encryptor=n.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize,i=this._iv,o=this._counter;i&&(o=this._counter=i.slice(0),this._iv=void 0);var a=o.slice(0);r.encryptBlock(a,0),o[n-1]=o[n-1]+1|0;for(var s=0;s<n;s++)e[t+s]^=a[s]}}),n.Decryptor=i,n),r.mode.CTR)}),Q(function(e,t){var r;e.exports=((r=ee).mode.CTRGladman=function(){var e=r.lib.BlockCipherMode.extend();function t(e){if(255==(e>>24&255)){var t=e>>16&255,r=e>>8&255,n=255&e;255===t?(t=0,255===r?(r=0,255===n?n=0:++n):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=n}else e+=1<<24;return e}var n=e.Encryptor=e.extend({processBlock:function(e,r){var n=this._cipher,i=n.blockSize,o=this._iv,a=this._counter;o&&(a=this._counter=o.slice(0),this._iv=void 0),function(e){0===(e[0]=t(e[0]))&&(e[1]=t(e[1]))}(a);var s=a.slice(0);n.encryptBlock(s,0);for(var h=0;h<i;h++)e[r+h]^=s[h]}});return e.Decryptor=n,e}(),r.mode.CTRGladman)}),Q(function(e,t){var r,n,i;e.exports=((r=ee).mode.OFB=(n=r.lib.BlockCipherMode.extend(),i=n.Encryptor=n.extend({processBlock:function(e,t){var r=this._cipher,n=r.blockSize,i=this._iv,o=this._keystream;i&&(o=this._keystream=i.slice(0),this._iv=void 0),r.encryptBlock(o,0);for(var a=0;a<n;a++)e[t+a]^=o[a]}}),n.Decryptor=i,n),r.mode.OFB)}),Q(function(e,t){var r,n;e.exports=((r=ee).mode.ECB=((n=r.lib.BlockCipherMode.extend()).Encryptor=n.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),n.Decryptor=n.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),n),r.mode.ECB)}),Q(function(e,t){var r;e.exports=((r=ee).pad.AnsiX923={pad:function(e,t){var r=e.sigBytes,n=4*t,i=n-r%n,o=r+i-1;e.clamp(),e.words[o>>>2]|=i<<24-o%4*8,e.sigBytes+=i},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},r.pad.Ansix923)}),Q(function(e,t){var r;e.exports=((r=ee).pad.Iso10126={pad:function(e,t){var n=4*t,i=n-e.sigBytes%n;e.concat(r.lib.WordArray.random(i-1)).concat(r.lib.WordArray.create([i<<24],1))},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},r.pad.Iso10126)}),Q(function(e,t){var r;e.exports=((r=ee).pad.Iso97971={pad:function(e,t){e.concat(r.lib.WordArray.create([2147483648],1)),r.pad.ZeroPadding.pad(e,t)},unpad:function(e){r.pad.ZeroPadding.unpad(e),e.sigBytes--}},r.pad.Iso97971)}),Q(function(e,t){var r;e.exports=((r=ee).pad.ZeroPadding={pad:function(e,t){var r=4*t;e.clamp(),e.sigBytes+=r-(e.sigBytes%r||r)},unpad:function(e){for(var t=e.words,r=e.sigBytes-1;!(t[r>>>2]>>>24-r%4*8&255);)r--;e.sigBytes=r+1}},r.pad.ZeroPadding)}),Q(function(e,t){var r;e.exports=((r=ee).pad.NoPadding={pad:function(){},unpad:function(){}},r.pad.NoPadding)}),Q(function(e,t){var r,n,i,o;e.exports=(i=(n=r=ee).lib.CipherParams,o=n.enc.Hex,n.format.Hex={stringify:function(e){return e.ciphertext.toString(o)},parse:function(e){var t=o.parse(e);return i.create({ciphertext:t})}},r.format.Hex)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.BlockCipher,n=e.algo,i=[],o=[],a=[],s=[],h=[],l=[],f=[],c=[],u=[],d=[];!function(){for(var e=[],t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;var r=0,n=0;for(t=0;t<256;t++){var p=n^n<<1^n<<2^n<<3^n<<4;p=p>>>8^255&p^99,i[r]=p,o[p]=r;var _=e[r],g=e[_],v=e[g],w=257*e[p]^16843008*p;a[r]=w<<24|w>>>8,s[r]=w<<16|w>>>16,h[r]=w<<8|w>>>24,l[r]=w,w=16843009*v^65537*g^257*_^16843008*r,f[p]=w<<24|w>>>8,c[p]=w<<16|w>>>16,u[p]=w<<8|w>>>24,d[p]=w,r?(r=_^e[e[e[v^_]]],n^=e[e[n]]):r=n=1}}();var p=[0,1,2,4,8,16,32,64,128,27,54],_=n.AES=t.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var e=this._keyPriorReset=this._key,t=e.words,r=e.sigBytes/4,n=4*((this._nRounds=r+6)+1),o=this._keySchedule=[],a=0;a<n;a++)if(a<r)o[a]=t[a];else{var s=o[a-1];a%r?r>6&&a%r==4&&(s=i[s>>>24]<<24|i[s>>>16&255]<<16|i[s>>>8&255]<<8|i[255&s]):(s=i[(s=s<<8|s>>>24)>>>24]<<24|i[s>>>16&255]<<16|i[s>>>8&255]<<8|i[255&s],s^=p[a/r|0]<<24),o[a]=o[a-r]^s}for(var h=this._invKeySchedule=[],l=0;l<n;l++)a=n-l,s=l%4?o[a]:o[a-4],h[l]=l<4||a<=4?s:f[i[s>>>24]]^c[i[s>>>16&255]]^u[i[s>>>8&255]]^d[i[255&s]]}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,a,s,h,l,i)},decryptBlock:function(e,t){var r=e[t+1];e[t+1]=e[t+3],e[t+3]=r,this._doCryptBlock(e,t,this._invKeySchedule,f,c,u,d,o),r=e[t+1],e[t+1]=e[t+3],e[t+3]=r},_doCryptBlock:function(e,t,r,n,i,o,a,s){for(var h=this._nRounds,l=e[t]^r[0],f=e[t+1]^r[1],c=e[t+2]^r[2],u=e[t+3]^r[3],d=4,p=1;p<h;p++){var _=n[l>>>24]^i[f>>>16&255]^o[c>>>8&255]^a[255&u]^r[d++],g=n[f>>>24]^i[c>>>16&255]^o[u>>>8&255]^a[255&l]^r[d++],v=n[c>>>24]^i[u>>>16&255]^o[l>>>8&255]^a[255&f]^r[d++],w=n[u>>>24]^i[l>>>16&255]^o[f>>>8&255]^a[255&c]^r[d++];l=_,f=g,c=v,u=w}_=(s[l>>>24]<<24|s[f>>>16&255]<<16|s[c>>>8&255]<<8|s[255&u])^r[d++],g=(s[f>>>24]<<24|s[c>>>16&255]<<16|s[u>>>8&255]<<8|s[255&l])^r[d++],v=(s[c>>>24]<<24|s[u>>>16&255]<<16|s[l>>>8&255]<<8|s[255&f])^r[d++],w=(s[u>>>24]<<24|s[l>>>16&255]<<16|s[f>>>8&255]<<8|s[255&c])^r[d++],e[t]=_,e[t+1]=g,e[t+2]=v,e[t+3]=w},keySize:8});e.AES=t._createHelper(_)}(),r.AES)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib,n=t.WordArray,i=t.BlockCipher,o=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],s=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],h=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],l=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],f=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],c=o.DES=i.extend({_doReset:function(){for(var e=this._key.words,t=[],r=0;r<56;r++){var n=a[r]-1;t[r]=e[n>>>5]>>>31-n%32&1}for(var i=this._subKeys=[],o=0;o<16;o++){var l=i[o]=[],f=h[o];for(r=0;r<24;r++)l[r/6|0]|=t[(s[r]-1+f)%28]<<31-r%6,l[4+(r/6|0)]|=t[28+(s[r+24]-1+f)%28]<<31-r%6;for(l[0]=l[0]<<1|l[0]>>>31,r=1;r<7;r++)l[r]=l[r]>>>4*(r-1)+3;l[7]=l[7]<<5|l[7]>>>27}var c=this._invSubKeys=[];for(r=0;r<16;r++)c[r]=i[15-r]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._subKeys)},decryptBlock:function(e,t){this._doCryptBlock(e,t,this._invSubKeys)},_doCryptBlock:function(e,t,r){this._lBlock=e[t],this._rBlock=e[t+1],u.call(this,4,252645135),u.call(this,16,65535),d.call(this,2,858993459),d.call(this,8,16711935),u.call(this,1,1431655765);for(var n=0;n<16;n++){for(var i=r[n],o=this._lBlock,a=this._rBlock,s=0,h=0;h<8;h++)s|=l[h][((a^i[h])&f[h])>>>0];this._lBlock=a,this._rBlock=o^s}var c=this._lBlock;this._lBlock=this._rBlock,this._rBlock=c,u.call(this,1,1431655765),d.call(this,8,16711935),d.call(this,2,858993459),u.call(this,16,65535),u.call(this,4,252645135),e[t]=this._lBlock,e[t+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function u(e,t){var r=(this._lBlock>>>e^this._rBlock)&t;this._rBlock^=r,this._lBlock^=r<<e}function d(e,t){var r=(this._rBlock>>>e^this._lBlock)&t;this._lBlock^=r,this._rBlock^=r<<e}e.DES=i._createHelper(c);var p=o.TripleDES=i.extend({_doReset:function(){var e=this._key.words;this._des1=c.createEncryptor(n.create(e.slice(0,2))),this._des2=c.createEncryptor(n.create(e.slice(2,4))),this._des3=c.createEncryptor(n.create(e.slice(4,6)))},encryptBlock:function(e,t){this._des1.encryptBlock(e,t),this._des2.decryptBlock(e,t),this._des3.encryptBlock(e,t)},decryptBlock:function(e,t){this._des3.decryptBlock(e,t),this._des2.encryptBlock(e,t),this._des1.decryptBlock(e,t)},keySize:6,ivSize:2,blockSize:2});e.TripleDES=i._createHelper(p)}(),r.TripleDES)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.StreamCipher,n=e.algo,i=n.RC4=t.extend({_doReset:function(){for(var e=this._key,t=e.words,r=e.sigBytes,n=this._S=[],i=0;i<256;i++)n[i]=i;i=0;for(var o=0;i<256;i++){var a=i%r,s=t[a>>>2]>>>24-a%4*8&255;o=(o+n[i]+s)%256;var h=n[i];n[i]=n[o],n[o]=h}this._i=this._j=0},_doProcessBlock:function(e,t){e[t]^=o.call(this)},keySize:8,ivSize:0});function o(){for(var e=this._S,t=this._i,r=this._j,n=0,i=0;i<4;i++){r=(r+e[t=(t+1)%256])%256;var o=e[t];e[t]=e[r],e[r]=o,n|=e[(e[t]+e[r])%256]<<24-8*i}return this._i=t,this._j=r,n}e.RC4=t._createHelper(i);var a=n.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var e=this.cfg.drop;e>0;e--)o.call(this)}});e.RC4Drop=t._createHelper(a)}(),r.RC4)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.StreamCipher,n=e.algo,i=[],o=[],a=[],s=n.Rabbit=t.extend({_doReset:function(){for(var e=this._key.words,t=this.cfg.iv,r=0;r<4;r++)e[r]=16711935&(e[r]<<8|e[r]>>>24)|4278255360&(e[r]<<24|e[r]>>>8);var n=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],i=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];for(this._b=0,r=0;r<4;r++)h.call(this);for(r=0;r<8;r++)i[r]^=n[r+4&7];if(t){var o=t.words,a=o[0],s=o[1],l=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),f=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=l>>>16|4294901760&f,u=f<<16|65535&l;for(i[0]^=l,i[1]^=c,i[2]^=f,i[3]^=u,i[4]^=l,i[5]^=c,i[6]^=f,i[7]^=u,r=0;r<4;r++)h.call(this)}},_doProcessBlock:function(e,t){var r=this._X;h.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),e[t+n]^=i[n]},blockSize:4,ivSize:2});function h(){for(var e=this._X,t=this._C,r=0;r<8;r++)o[r]=t[r];for(t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0<o[0]>>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0<o[1]>>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0<o[2]>>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0<o[3]>>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0<o[4]>>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0<o[5]>>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0<o[6]>>>0?1:0)|0,this._b=t[7]>>>0<o[7]>>>0?1:0,r=0;r<8;r++){var n=e[r]+t[r],i=65535&n,s=n>>>16,h=((i*i>>>17)+i*s>>>15)+s*s,l=((4294901760&n)*n|0)+((65535&n)*n|0);a[r]=h^l}e[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,e[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,e[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,e[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,e[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,e[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,e[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,e[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}e.Rabbit=t._createHelper(s)}(),r.Rabbit)}),Q(function(e,t){var r;e.exports=(r=ee,function(){var e=r,t=e.lib.StreamCipher,n=e.algo,i=[],o=[],a=[],s=n.RabbitLegacy=t.extend({_doReset:function(){var e=this._key.words,t=this.cfg.iv,r=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],n=this._C=[e[2]<<16|e[2]>>>16,4294901760&e[0]|65535&e[1],e[3]<<16|e[3]>>>16,4294901760&e[1]|65535&e[2],e[0]<<16|e[0]>>>16,4294901760&e[2]|65535&e[3],e[1]<<16|e[1]>>>16,4294901760&e[3]|65535&e[0]];this._b=0;for(var i=0;i<4;i++)h.call(this);for(i=0;i<8;i++)n[i]^=r[i+4&7];if(t){var o=t.words,a=o[0],s=o[1],l=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),f=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=l>>>16|4294901760&f,u=f<<16|65535&l;for(n[0]^=l,n[1]^=c,n[2]^=f,n[3]^=u,n[4]^=l,n[5]^=c,n[6]^=f,n[7]^=u,i=0;i<4;i++)h.call(this)}},_doProcessBlock:function(e,t){var r=this._X;h.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),e[t+n]^=i[n]},blockSize:4,ivSize:2});function h(){for(var e=this._X,t=this._C,r=0;r<8;r++)o[r]=t[r];for(t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0<o[0]>>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0<o[1]>>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0<o[2]>>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0<o[3]>>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0<o[4]>>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0<o[5]>>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0<o[6]>>>0?1:0)|0,this._b=t[7]>>>0<o[7]>>>0?1:0,r=0;r<8;r++){var n=e[r]+t[r],i=65535&n,s=n>>>16,h=((i*i>>>17)+i*s>>>15)+s*s,l=((4294901760&n)*n|0)+((65535&n)*n|0);a[r]=h^l}e[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,e[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,e[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,e[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,e[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,e[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,e[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,e[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}e.RabbitLegacy=t._createHelper(s)}(),r.RabbitLegacy)}),Q(function(e,t){e.exports=ee}));function re(){throw new Error("setTimeout has not been defined")}function ne(){throw new Error("clearTimeout has not been defined")}var ie=re,oe=ne;function ae(e){if(ie===setTimeout)return setTimeout(e,0);if((ie===re||!ie)&&setTimeout)return ie=setTimeout,setTimeout(e,0);try{return ie(e,0)}catch(t){try{return ie.call(null,e,0)}catch(t){return ie.call(this,e,0)}}}"function"==typeof e.setTimeout&&(ie=setTimeout),"function"==typeof e.clearTimeout&&(oe=clearTimeout);var se,he=[],le=!1,fe=-1;function ce(){le&&se&&(le=!1,se.length?he=se.concat(he):fe=-1,he.length&&ue())}function ue(){if(!le){var e=ae(ce);le=!0;for(var t=he.length;t;){for(se=he,he=[];++fe<t;)se&&se[fe].run();fe=-1,t=he.length}se=null,le=!1,function(e){if(oe===clearTimeout)return clearTimeout(e);if((oe===ne||!oe)&&clearTimeout)return oe=clearTimeout,clearTimeout(e);try{oe(e)}catch(t){try{return oe.call(null,e)}catch(t){return oe.call(this,e)}}}(e)}}function de(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];he.push(new pe(e,t)),1!==he.length||le||ae(ue)}function pe(e,t){this.fun=e,this.array=t}pe.prototype.run=function(){this.fun.apply(null,this.array)};var _e=e.performance||{};_e.now||_e.mozNow||_e.msNow||_e.oNow||_e.webkitNow;function ge(){}function ve(){ve.init.call(this)}function we(e){return void 0===e._maxListeners?ve.defaultMaxListeners:e._maxListeners}function be(e,t,r){if(t)e.call(r);else for(var n=e.length,i=Ae(e,n),o=0;o<n;++o)i[o].call(r)}function ye(e,t,r,n){if(t)e.call(r,n);else for(var i=e.length,o=Ae(e,i),a=0;a<i;++a)o[a].call(r,n)}function me(e,t,r,n,i){if(t)e.call(r,n,i);else for(var o=e.length,a=Ae(e,o),s=0;s<o;++s)a[s].call(r,n,i)}function ke(e,t,r,n,i,o){if(t)e.call(r,n,i,o);else for(var a=e.length,s=Ae(e,a),h=0;h<a;++h)s[h].call(r,n,i,o)}function Ee(e,t,r,n){if(t)e.apply(r,n);else for(var i=e.length,o=Ae(e,i),a=0;a<i;++a)o[a].apply(r,n)}function Se(e,t,r,n){var i,o,a,s;if("function"!=typeof r)throw new TypeError('"listener" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),a=o[t]):(o=e._events=new ge,e._eventsCount=0),a){if("function"==typeof a?a=o[t]=n?[r,a]:[a,r]:n?a.unshift(r):a.push(r),!a.warned&&(i=we(e))&&i>0&&a.length>i){a.warned=!0;var h=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");h.name="MaxListenersExceededWarning",h.emitter=e,h.type=t,h.count=a.length,s=h,"function"==typeof console.warn?console.warn(s):console.log(s)}}else a=o[t]=r,++e._eventsCount;return e}function xe(e,t,r){var n=!1;function i(){e.removeListener(t,i),n||(n=!0,r.apply(e,arguments))}return i.listener=r,i}function Re(e){var t=this._events;if(t){var r=t[e];if("function"==typeof r)return 1;if(r)return r.length}return 0}function Ae(e,t){for(var r=new Array(t);t--;)r[t]=e[t];return r}ge.prototype=Object.create(null),ve.EventEmitter=ve,ve.usingDomains=!1,ve.prototype.domain=void 0,ve.prototype._events=void 0,ve.prototype._maxListeners=void 0,ve.defaultMaxListeners=10,ve.init=function(){this.domain=null,ve.usingDomains&&(void 0).active&&(void 0).Domain,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new ge,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},ve.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},ve.prototype.getMaxListeners=function(){return we(this)},ve.prototype.emit=function(e){var t,r,n,i,o,a,s,h="error"===e;if(a=this._events)h=h&&null==a.error;else if(!h)return!1;if(s=this.domain,h){if(t=arguments[1],!s){if(t instanceof Error)throw t;var l=new Error('Uncaught, unspecified "error" event. ('+t+")");throw l.context=t,l}return t||(t=new Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=s,t.domainThrown=!1,s.emit("error",t),!1}if(!(r=a[e]))return!1;var f="function"==typeof r;switch(n=arguments.length){case 1:be(r,f,this);break;case 2:ye(r,f,this,arguments[1]);break;case 3:me(r,f,this,arguments[1],arguments[2]);break;case 4:ke(r,f,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=new Array(n-1),o=1;o<n;o++)i[o-1]=arguments[o];Ee(r,f,this,i)}return!0},ve.prototype.addListener=function(e,t){return Se(this,e,t,!1)},ve.prototype.on=ve.prototype.addListener,ve.prototype.prependListener=function(e,t){return Se(this,e,t,!0)},ve.prototype.once=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.on(e,xe(this,e,t)),this},ve.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.prependListener(e,xe(this,e,t)),this},ve.prototype.removeListener=function(e,t){var r,n,i,o,a;if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');if(!(n=this._events))return this;if(!(r=n[e]))return this;if(r===t||r.listener&&r.listener===t)0==--this._eventsCount?this._events=new ge:(delete n[e],n.removeListener&&this.emit("removeListener",e,r.listener||t));else if("function"!=typeof r){for(i=-1,o=r.length;o-- >0;)if(r[o]===t||r[o].listener&&r[o].listener===t){a=r[o].listener,i=o;break}if(i<0)return this;if(1===r.length){if(r[0]=void 0,0==--this._eventsCount)return this._events=new ge,this;delete n[e]}else!function(e,t){for(var r=t,n=r+1,i=e.length;n<i;r+=1,n+=1)e[r]=e[n];e.pop()}(r,i);n.removeListener&&this.emit("removeListener",e,a||t)}return this},ve.prototype.removeAllListeners=function(e){var t,r;if(!(r=this._events))return this;if(!r.removeListener)return 0===arguments.length?(this._events=new ge,this._eventsCount=0):r[e]&&(0==--this._eventsCount?this._events=new ge:delete r[e]),this;if(0===arguments.length){for(var n,i=Object.keys(r),o=0;o<i.length;++o)"removeListener"!==(n=i[o])&&this.removeAllListeners(n);return this.removeAllListeners("removeListener"),this._events=new ge,this._eventsCount=0,this}if("function"==typeof(t=r[e]))this.removeListener(e,t);else if(t)do{this.removeListener(e,t[t.length-1])}while(t[0]);return this},ve.prototype.listeners=function(e){var t,r=this._events;return r&&(t=r[e])?"function"==typeof t?[t.listener||t]:function(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}(t):[]},ve.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):Re.call(e,t)},ve.prototype.listenerCount=Re,ve.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};var Be="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e},ze=/%[sdj%]/g;function Le(e){if(!Ze(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(De(arguments[r]));return t.join(" ")}r=1;for(var n=arguments,i=n.length,o=String(e).replace(ze,function(e){if("%%"===e)return"%";if(r>=i)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return e}}),a=n[r];r<i;a=n[++r])Ne(a)||!Ye(a)?o+=" "+a:o+=" "+De(a);return o}function Te(t,r){if(je(e.process))return function(){return Te(t,r).apply(this,arguments)};var n=!1;return function(){return n||(console.error(r),n=!0),t.apply(this,arguments)}}var Me,Ce={};function De(e,t){var r={seen:[],stylize:Pe};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),Fe(t)?r.showHidden=t:t&&function(e,t){if(!t||!Ye(t))return e;var r=Object.keys(t),n=r.length;for(;n--;)e[r[n]]=t[r[n]]}(r,t),je(r.showHidden)&&(r.showHidden=!1),je(r.depth)&&(r.depth=2),je(r.colors)&&(r.colors=!1),je(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=Ie),Oe(r,e,r.depth)}function Ie(e,t){var r=De.styles[t];return r?"["+De.colors[r][0]+"m"+e+"["+De.colors[r][1]+"m":e}function Pe(e,t){return e}function Oe(e,t,r){if(e.customInspect&&t&&qe(t.inspect)&&t.inspect!==De&&(!t.constructor||t.constructor.prototype!==t)){var n=t.inspect(r,e);return Ze(n)||(n=Oe(e,n,r)),n}var i=function(e,t){if(je(t))return e.stylize("undefined","undefined");if(Ze(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(n=t,"number"==typeof n)return e.stylize(""+t,"number");var n;if(Fe(t))return e.stylize(""+t,"boolean");if(Ne(t))return e.stylize("null","null")}(e,t);if(i)return i;var o=Object.keys(t),a=function(e){var t={};return e.forEach(function(e,r){t[e]=!0}),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),Xe(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return Ue(t);if(0===o.length){if(qe(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(We(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(Ke(t))return e.stylize(Date.prototype.toString.call(t),"date");if(Xe(t))return Ue(t)}var h,l,f="",c=!1,u=["{","}"];(h=t,Array.isArray(h)&&(c=!0,u=["[","]"]),qe(t))&&(f=" [Function"+(t.name?": "+t.name:"")+"]");return We(t)&&(f=" "+RegExp.prototype.toString.call(t)),Ke(t)&&(f=" "+Date.prototype.toUTCString.call(t)),Xe(t)&&(f=" "+Ue(t)),0!==o.length||c&&0!=t.length?r<0?We(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),l=c?function(e,t,r,n,i){for(var o=[],a=0,s=t.length;a<s;++a)Ge(t,String(a))?o.push(He(e,t,r,n,String(a),!0)):o.push("");return i.forEach(function(i){i.match(/^\d+$/)||o.push(He(e,t,r,n,i,!0))}),o}(e,t,r,a,o):o.map(function(n){return He(e,t,r,a,n,c)}),e.seen.pop(),function(e,t,r){if(e.reduce(function(e,t){return t.indexOf("\n"),e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(l,f,u)):u[0]+f+u[1]}function Ue(e){return"["+Error.prototype.toString.call(e)+"]"}function He(e,t,r,n,i,o){var a,s,h;if((h=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=h.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):h.set&&(s=e.stylize("[Setter]","special")),Ge(n,i)||(a="["+i+"]"),s||(e.seen.indexOf(h.value)<0?(s=Ne(r)?Oe(e,h.value,null):Oe(e,h.value,r-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n")):s=e.stylize("[Circular]","special")),je(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function Fe(e){return"boolean"==typeof e}function Ne(e){return null===e}function Ze(e){return"string"==typeof e}function je(e){return void 0===e}function We(e){return Ye(e)&&"[object RegExp]"===Ve(e)}function Ye(e){return"object"==typeof e&&null!==e}function Ke(e){return Ye(e)&&"[object Date]"===Ve(e)}function Xe(e){return Ye(e)&&("[object Error]"===Ve(e)||e instanceof Error)}function qe(e){return"function"==typeof e}function Ve(e){return Object.prototype.toString.call(e)}function Ge(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function $e(){this.head=null,this.tail=null,this.length=0}De.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},De.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},$e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},$e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},$e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},$e.prototype.clear=function(){this.head=this.tail=null,this.length=0},$e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},$e.prototype.concat=function(e){if(0===this.length)return p.alloc(0);if(1===this.length)return this.head.data;for(var t=p.allocUnsafe(e>>>0),r=this.head,n=0;r;)r.data.copy(t,n),n+=r.data.length,r=r.next;return t};var Je=p.isEncoding||function(e){switch(e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function Qe(e){switch(this.encoding=(e||"utf8").toLowerCase().replace(/[-_]/,""),function(e){if(e&&!Je(e))throw new Error("Unknown encoding: "+e)}(e),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=tt;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=rt;break;default:return void(this.write=et)}this.charBuffer=new p(6),this.charReceived=0,this.charLength=0}function et(e){return e.toString(this.encoding)}function tt(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function rt(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}Qe.prototype.write=function(e){for(var t="";this.charLength;){var r=e.length>=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived<this.charLength)return"";if(e=e.slice(r,e.length),!((i=(t=this.charBuffer.slice(0,this.charLength).toString(this.encoding)).charCodeAt(t.length-1))>=55296&&i<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var n=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,n),n-=this.charReceived);var i;n=(t+=e.toString(this.encoding,0,n)).length-1;if((i=t.charCodeAt(n))>=55296&&i<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),e.copy(this.charBuffer,0,0,o),t.substring(0,n)}return t},Qe.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var r=e[e.length-t];if(1==t&&r>>5==6){this.charLength=2;break}if(t<=2&&r>>4==14){this.charLength=3;break}if(t<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=t},Qe.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var r=this.charReceived,n=this.charBuffer,i=this.encoding;t+=n.slice(0,r).toString(i)}return t},ot.ReadableState=it;var nt=function(e){je(Me)&&(Me=""),e=e.toUpperCase(),Ce[e]||(new RegExp("\\b"+e+"\\b","i").test(Me)?Ce[e]=function(){var t=Le.apply(null,arguments);console.error("%s %d: %s",e,0,t)}:Ce[e]=function(){});return Ce[e]}("stream");function it(e,t){e=e||{},this.objectMode=!!e.objectMode,t instanceof Ct&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var r=e.highWaterMark,n=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:n,this.highWaterMark=~~this.highWaterMark,this.buffer=new $e,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.ranOut=!1,this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(this.decoder=new Qe(e.encoding),this.encoding=e.encoding)}function ot(e){if(!(this instanceof ot))return new ot(e);this._readableState=new it(e,this),this.readable=!0,e&&"function"==typeof e.read&&(this._read=e.read),ve.call(this)}function at(e,t,r,n,i){var o=function(e,t){var r=null;$(t)||"string"==typeof t||null==t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));return r}(t,r);if(o)e.emit("error",o);else if(null===r)t.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,lt(e)}(e,t);else if(t.objectMode||r&&r.length>0)if(t.ended&&!i){var a=new Error("stream.push() after EOF");e.emit("error",a)}else if(t.endEmitted&&i){var s=new Error("stream.unshift() after end event");e.emit("error",s)}else{var h;!t.decoder||i||n||(r=t.decoder.write(r),h=!t.objectMode&&0===r.length),i||(t.reading=!1),h||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,i?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&<(e))),function(e,t){t.readingMore||(t.readingMore=!0,de(ct,e,t))}(e,t)}else i||(t.reading=!1);return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(t)}Be(ot,ve),ot.prototype.push=function(e,t){var r=this._readableState;return r.objectMode||"string"!=typeof e||(t=t||r.defaultEncoding)!==r.encoding&&(e=p.from(e,t),t=""),at(this,r,e,t,!1)},ot.prototype.unshift=function(e){return at(this,this._readableState,e,"",!0)},ot.prototype.isPaused=function(){return!1===this._readableState.flowing},ot.prototype.setEncoding=function(e){return this._readableState.decoder=new Qe(e),this._readableState.encoding=e,this};var st=8388608;function ht(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=st?e=st:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function lt(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(nt("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?de(ft,e):ft(e))}function ft(e){nt("emit readable"),e.emit("readable"),pt(e)}function ct(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(nt("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function ut(e){nt("readable nexttick read 0"),e.read(0)}function dt(e,t){t.reading||(nt("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),pt(e),t.flowing&&!t.reading&&e.read(0)}function pt(e){var t=e._readableState;for(nt("flow",t.flowing);t.flowing&&null!==e.read(););}function _t(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var o=r.data,a=e>o.length?o.length:e;if(a===o.length?i+=o:i+=o.slice(0,e),0===(e-=a)){a===o.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(a));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=p.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(o.copy(r,r.length-e,0,a),0===(e-=a)){a===o.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(a));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function gt(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,de(vt,t,e))}function vt(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function wt(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}function bt(){}function yt(e,t,r){this.chunk=e,this.encoding=t,this.callback=r,this.next=null}function mt(e,t){Object.defineProperty(this,"buffer",{get:Te(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")}),e=e||{},this.objectMode=!!e.objectMode,t instanceof Ct&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var r=e.highWaterMark,n=this.objectMode?16:16384;this.highWaterMark=r||0===r?r:n,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1;var i=!1===e.decodeStrings;this.decodeStrings=!i,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?de(i,n):i(n);e._writableState.errorEmitted=!0,e.emit("error",n)}(e,r,n,t,i);else{var o=Rt(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||xt(e,r),n?de(St,e,r,o,i):St(e,r,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new zt(this)}function kt(e){if(!(this instanceof kt||this instanceof Ct))return new kt(e);this._writableState=new mt(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev)),ve.call(this)}function Et(e,t,r,n,i,o,a){t.writelen=n,t.writecb=a,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function St(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),Bt(e,t)}function xt(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var a=0;r;)i[a]=r,r=r.next,a+=1;Et(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new zt(t)}else{for(;r;){var s=r.chunk,h=r.encoding,l=r.callback;if(Et(e,t,!1,t.objectMode?1:s.length,s,h,l),r=r.next,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=r,t.bufferProcessing=!1}function Rt(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function At(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function Bt(e,t){var r=Rt(t);return r&&(0===t.pendingcb?(At(e,t),t.finished=!0,e.emit("finish")):At(e,t)),r}function zt(e){var t=this;this.next=null,this.entry=null,this.finish=function(r){var n=t.entry;for(t.entry=null;n;){var i=n.callback;e.pendingcb--,i(r),n=n.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}ot.prototype.read=function(e){nt("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return nt("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?gt(this):lt(this),null;if(0===(e=ht(e,t))&&t.ended)return 0===t.length&>(this),null;var n,i=t.needReadable;return nt("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&nt("length less than watermark",i=!0),t.ended||t.reading?nt("reading or ended",i=!1):i&&(nt("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=ht(r,t))),null===(n=e>0?_t(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&>(this)),null!==n&&this.emit("data",n),n},ot.prototype._read=function(e){this.emit("error",new Error("not implemented"))},ot.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,nt("pipe count=%d opts=%j",n.pipesCount,t);var i=!t||!1!==t.end?a:l;function o(e){nt("onunpipe"),e===r&&l()}function a(){nt("onend"),e.end()}n.endEmitted?de(i):r.once("end",i),e.on("unpipe",o);var s=function(e){return function(){var t=e._readableState;nt("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&e.listeners("data").length&&(t.flowing=!0,pt(e))}}(r);e.on("drain",s);var h=!1;function l(){nt("cleanup"),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("drain",s),e.removeListener("error",u),e.removeListener("unpipe",o),r.removeListener("end",a),r.removeListener("end",l),r.removeListener("data",c),h=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||s()}var f=!1;function c(t){nt("ondata"),f=!1,!1!==e.write(t)||f||((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==wt(n.pipes,e))&&!h&&(nt("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,f=!0),r.pause())}function u(t){var r;nt("onerror",t),_(),e.removeListener("error",u),0===(r="error",e.listeners(r).length)&&e.emit("error",t)}function d(){e.removeListener("finish",p),_()}function p(){nt("onfinish"),e.removeListener("close",d),_()}function _(){nt("unpipe"),r.unpipe(e)}return r.on("data",c),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",u),e.once("close",d),e.once("finish",p),e.emit("pipe",r),n.flowing||(nt("pipe resume"),r.resume()),e},ot.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var r=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i<n;i++)r[i].emit("unpipe",this);return this}var o=wt(t.pipes,e);return-1===o?this:(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this),this)},ot.prototype.on=function(e,t){var r=ve.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var n=this._readableState;n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.emittedReadable=!1,n.reading?n.length&<(this):de(ut,this))}return r},ot.prototype.addListener=ot.prototype.on,ot.prototype.resume=function(){var e=this._readableState;return e.flowing||(nt("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,de(dt,e,t))}(this,e)),this},ot.prototype.pause=function(){return nt("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(nt("pause"),this._readableState.flowing=!1,this.emit("pause")),this},ot.prototype.wrap=function(e){var t=this._readableState,r=!1,n=this;for(var i in e.on("end",function(){if(nt("wrapped end"),t.decoder&&!t.ended){var e=t.decoder.end();e&&e.length&&n.push(e)}n.push(null)}),e.on("data",function(i){(nt("wrapped data"),t.decoder&&(i=t.decoder.write(i)),t.objectMode&&null==i)||(t.objectMode||i&&i.length)&&(n.push(i)||(r=!0,e.pause()))}),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));return function(e,t){for(var r=0,n=e.length;r<n;r++)t(e[r],r)}(["error","close","destroy","pause","resume"],function(t){e.on(t,n.emit.bind(n,t))}),n._read=function(t){nt("wrapped _read",t),r&&(r=!1,e.resume())},n},ot._fromList=_t,kt.WritableState=mt,Be(kt,ve),mt.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},kt.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},kt.prototype.write=function(e,t,r){var n=this._writableState,i=!1;return"function"==typeof t&&(r=t,t=null),p.isBuffer(e)?t="buffer":t||(t=n.defaultEncoding),"function"!=typeof r&&(r=bt),n.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),de(t,r)}(this,r):function(e,t,r,n){var i=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):p.isBuffer(r)||"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),de(n,o),i=!1),i}(this,n,e,r)&&(n.pendingcb++,i=function(e,t,r,n,i){r=function(e,t,r){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=p.from(t,r)),t}(t,r,n),p.isBuffer(r)&&(n="buffer");var o=t.objectMode?1:r.length;t.length+=o;var a=t.length<t.highWaterMark;a||(t.needDrain=!0);if(t.writing||t.corked){var s=t.lastBufferedRequest;t.lastBufferedRequest=new yt(r,n,i),s?s.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else Et(e,t,!1,o,r,n,i);return a}(this,n,e,t,r)),i},kt.prototype.cork=function(){this._writableState.corked++},kt.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||xt(this,e))},kt.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},kt.prototype._write=function(e,t,r){r(new Error("not implemented"))},kt.prototype._writev=null,kt.prototype.end=function(e,t,r){var n=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(e,t,r){t.ending=!0,Bt(e,t),r&&(t.finished?de(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r)},Be(Ct,ot);for(var Lt=Object.keys(kt.prototype),Tt=0;Tt<Lt.length;Tt++){var Mt=Lt[Tt];Ct.prototype[Mt]||(Ct.prototype[Mt]=kt.prototype[Mt])}function Ct(e){if(!(this instanceof Ct))return new Ct(e);ot.call(this,e),kt.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",Dt)}function Dt(){this.allowHalfOpen||this._writableState.ended||de(It,this)}function It(e){e.end()}function Pt(e){this.afterTransform=function(t,r){return function(e,t,r){var n=e._transformState;n.transforming=!1;var i=n.writecb;if(!i)return e.emit("error",new Error("no writecb in Transform class"));n.writechunk=null,n.writecb=null,null!=r&&e.push(r);i(t);var o=e._readableState;o.reading=!1,(o.needReadable||o.length<o.highWaterMark)&&e._read(o.highWaterMark)}(e,t,r)},this.needTransform=!1,this.transforming=!1,this.writecb=null,this.writechunk=null,this.writeencoding=null}function Ot(e){if(!(this instanceof Ot))return new Ot(e);Ct.call(this,e),this._transformState=new Pt(this);var t=this;this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.once("prefinish",function(){"function"==typeof this._flush?this._flush(function(e){Ut(t,e)}):Ut(t)})}function Ut(e,t){if(t)return e.emit("error",t);var r=e._writableState,n=e._transformState;if(r.length)throw new Error("Calling transform done when ws.length != 0");if(n.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}function Ht(e){if(!(this instanceof Ht))return new Ht(e);Ot.call(this,e)}function Ft(){ve.call(this)}Be(Ot,Ct),Ot.prototype.push=function(e,t){return this._transformState.needTransform=!1,Ct.prototype.push.call(this,e,t)},Ot.prototype._transform=function(e,t,r){throw new Error("Not implemented")},Ot.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},Ot.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},Be(Ht,Ot),Ht.prototype._transform=function(e,t,r){r(null,e)},Be(Ft,ve),Ft.Readable=ot,Ft.Writable=kt,Ft.Duplex=Ct,Ft.Transform=Ot,Ft.PassThrough=Ht,Ft.Stream=Ft,Ft.prototype.pipe=function(e,t){var r=this;function n(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function i(){r.readable&&r.resume&&r.resume()}r.on("data",n),e.on("drain",i),e._isStdio||t&&!1===t.end||(r.on("end",a),r.on("close",s));var o=!1;function a(){o||(o=!0,e.end())}function s(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function h(e){if(l(),0===ve.listenerCount(this,"error"))throw e}function l(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",a),r.removeListener("close",s),r.removeListener("error",h),e.removeListener("error",h),r.removeListener("end",l),r.removeListener("close",l),e.removeListener("close",l)}return r.on("error",h),e.on("error",h),r.on("end",l),r.on("close",l),e.on("close",l),e.emit("pipe",r),e};var Nt={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};function Zt(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function jt(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var o=0;o<n;o++)e[i+o]=t[r+o]}var Wt=Uint8Array,Yt=Uint16Array,Kt=Int32Array,Xt=4,qt=0,Vt=1,Gt=2;function $t(e){for(var t=e.length;--t>=0;)e[t]=0}var Jt=0,Qt=1,er=2,tr=29,rr=256,nr=rr+1+tr,ir=30,or=19,ar=2*nr+1,sr=15,hr=16,lr=7,fr=256,cr=16,ur=17,dr=18,pr=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],_r=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],gr=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],vr=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],wr=new Array(2*(nr+2));$t(wr);var br=new Array(2*ir);$t(br);var yr=new Array(512);$t(yr);var mr=new Array(256);$t(mr);var kr=new Array(tr);$t(kr);var Er,Sr,xr,Rr=new Array(ir);function Ar(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function Br(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function zr(e){return e<256?yr[e]:yr[256+(e>>>7)]}function Lr(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function Tr(e,t,r){e.bi_valid>hr-r?(e.bi_buf|=t<<e.bi_valid&65535,Lr(e,e.bi_buf),e.bi_buf=t>>hr-e.bi_valid,e.bi_valid+=r-hr):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function Mr(e,t,r){Tr(e,r[2*t],r[2*t+1])}function Cr(e,t){var r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}function Dr(e,t,r){var n,i,o=new Array(sr+1),a=0;for(n=1;n<=sr;n++)o[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=Cr(o[s]++,s))}}function Ir(e){var t;for(t=0;t<nr;t++)e.dyn_ltree[2*t]=0;for(t=0;t<ir;t++)e.dyn_dtree[2*t]=0;for(t=0;t<or;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*fr]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function Pr(e){e.bi_valid>8?Lr(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function Or(e,t,r,n){var i=2*t,o=2*r;return e[i]<e[o]||e[i]===e[o]&&n[t]<=n[r]}function Ur(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&Or(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!Or(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function Hr(e,t,r){var n,i,o,a,s=0;if(0!==e.last_lit)do{n=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===n?Mr(e,i,t):(Mr(e,(o=mr[i])+rr+1,t),0!==(a=pr[o])&&Tr(e,i-=kr[o],a),Mr(e,o=zr(--n),r),0!==(a=_r[o])&&Tr(e,n-=Rr[o],a))}while(s<e.last_lit);Mr(e,fr,t)}function Fr(e,t){var r,n,i,o=t.dyn_tree,a=t.stat_desc.static_tree,s=t.stat_desc.has_stree,h=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=ar,r=0;r<h;r++)0!==o[2*r]?(e.heap[++e.heap_len]=l=r,e.depth[r]=0):o[2*r+1]=0;for(;e.heap_len<2;)o[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=a[2*i+1]);for(t.max_code=l,r=e.heap_len>>1;r>=1;r--)Ur(e,o,r);i=h;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Ur(e,o,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,o[2*i]=o[2*r]+o[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,o[2*r+1]=o[2*n+1]=i,e.heap[1]=i++,Ur(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,o,a,s,h=t.dyn_tree,l=t.max_code,f=t.stat_desc.static_tree,c=t.stat_desc.has_stree,u=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,_=0;for(o=0;o<=sr;o++)e.bl_count[o]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<ar;r++)(o=h[2*h[2*(n=e.heap[r])+1]+1]+1)>p&&(o=p,_++),h[2*n+1]=o,n>l||(e.bl_count[o]++,a=0,n>=d&&(a=u[n-d]),s=h[2*n],e.opt_len+=s*(o+a),c&&(e.static_len+=s*(f[2*n+1]+a)));if(0!==_){do{for(o=p-1;0===e.bl_count[o];)o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,_-=2}while(_>0);for(o=p;0!==o;o--)for(n=e.bl_count[o];0!==n;)(i=e.heap[--r])>l||(h[2*i+1]!==o&&(e.opt_len+=(o-h[2*i+1])*h[2*i],h[2*i+1]=o),n--)}}(e,t),Dr(o,l,e.bl_count)}function Nr(e,t,r){var n,i,o=-1,a=t[1],s=0,h=7,l=4;for(0===a&&(h=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=t[2*(n+1)+1],++s<h&&i===a||(s<l?e.bl_tree[2*i]+=s:0!==i?(i!==o&&e.bl_tree[2*i]++,e.bl_tree[2*cr]++):s<=10?e.bl_tree[2*ur]++:e.bl_tree[2*dr]++,s=0,o=i,0===a?(h=138,l=3):i===a?(h=6,l=3):(h=7,l=4))}function Zr(e,t,r){var n,i,o=-1,a=t[1],s=0,h=7,l=4;for(0===a&&(h=138,l=3),n=0;n<=r;n++)if(i=a,a=t[2*(n+1)+1],!(++s<h&&i===a)){if(s<l)do{Mr(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==o&&(Mr(e,i,e.bl_tree),s--),Mr(e,cr,e.bl_tree),Tr(e,s-3,2)):s<=10?(Mr(e,ur,e.bl_tree),Tr(e,s-3,3)):(Mr(e,dr,e.bl_tree),Tr(e,s-11,7));s=0,o=i,0===a?(h=138,l=3):i===a?(h=6,l=3):(h=7,l=4)}}$t(Rr);var jr=!1;function Wr(e){jr||(!function(){var e,t,r,n,i,o=new Array(sr+1);for(r=0,n=0;n<tr-1;n++)for(kr[n]=r,e=0;e<1<<pr[n];e++)mr[r++]=n;for(mr[r-1]=n,i=0,n=0;n<16;n++)for(Rr[n]=i,e=0;e<1<<_r[n];e++)yr[i++]=n;for(i>>=7;n<ir;n++)for(Rr[n]=i<<7,e=0;e<1<<_r[n]-7;e++)yr[256+i++]=n;for(t=0;t<=sr;t++)o[t]=0;for(e=0;e<=143;)wr[2*e+1]=8,e++,o[8]++;for(;e<=255;)wr[2*e+1]=9,e++,o[9]++;for(;e<=279;)wr[2*e+1]=7,e++,o[7]++;for(;e<=287;)wr[2*e+1]=8,e++,o[8]++;for(Dr(wr,nr+1,o),e=0;e<ir;e++)br[2*e+1]=5,br[2*e]=Cr(e,5);Er=new Ar(wr,pr,rr+1,nr,sr),Sr=new Ar(br,_r,0,ir,sr),xr=new Ar(new Array(0),gr,0,or,lr)}(),jr=!0),e.l_desc=new Br(e.dyn_ltree,Er),e.d_desc=new Br(e.dyn_dtree,Sr),e.bl_desc=new Br(e.bl_tree,xr),e.bi_buf=0,e.bi_valid=0,Ir(e)}function Yr(e,t,r,n){Tr(e,(Jt<<1)+(n?1:0),3),function(e,t,r,n){Pr(e),n&&(Lr(e,r),Lr(e,~r)),jt(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r,!0)}function Kr(e){Tr(e,Qt<<1,3),Mr(e,fr,wr),function(e){16===e.bi_valid?(Lr(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}function Xr(e,t,r,n){var i,o,a=0;e.level>0?(e.strm.data_type===Gt&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return qt;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return Vt;for(t=32;t<rr;t++)if(0!==e.dyn_ltree[2*t])return Vt;return qt}(e)),Fr(e,e.l_desc),Fr(e,e.d_desc),a=function(e){var t;for(Nr(e,e.dyn_ltree,e.l_desc.max_code),Nr(e,e.dyn_dtree,e.d_desc.max_code),Fr(e,e.bl_desc),t=or-1;t>=3&&0===e.bl_tree[2*vr[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=i&&(i=o)):i=o=r+5,r+4<=i&&-1!==t?Yr(e,t,r,n):e.strategy===Xt||o===i?(Tr(e,(Qt<<1)+(n?1:0),3),Hr(e,wr,br)):(Tr(e,(er<<1)+(n?1:0),3),function(e,t,r,n){var i;for(Tr(e,t-257,5),Tr(e,r-1,5),Tr(e,n-4,4),i=0;i<n;i++)Tr(e,e.bl_tree[2*vr[i]+1],3);Zr(e,e.dyn_ltree,t-1),Zr(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),Hr(e,e.dyn_ltree,e.dyn_dtree)),Ir(e),n&&Pr(e)}function qr(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(mr[r]+rr+1)]++,e.dyn_dtree[2*zr(t)]++),e.last_lit===e.lit_bufsize-1}function Vr(e,t,r,n){for(var i=65535&e|0,o=e>>>16&65535|0,a=0;0!==r;){r-=a=r>2e3?2e3:r;do{o=o+(i=i+t[n++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}var Gr=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();function $r(e,t,r,n){var i=Gr,o=n+r;e^=-1;for(var a=n;a<o;a++)e=e>>>8^i[255&(e^t[a])];return-1^e}var Jr,Qr=0,en=1,tn=3,rn=4,nn=5,on=0,an=1,sn=-2,hn=-3,ln=-5,fn=-1,cn=1,un=2,dn=3,pn=4,_n=2,gn=8,vn=9,wn=286,bn=30,yn=19,mn=2*wn+1,kn=15,En=3,Sn=258,xn=Sn+En+1,Rn=32,An=42,Bn=69,zn=73,Ln=91,Tn=103,Mn=113,Cn=666,Dn=1,In=2,Pn=3,On=4,Un=3;function Hn(e,t){return e.msg=Nt[t],t}function Fn(e){return(e<<1)-(e>4?9:0)}function Nn(e){for(var t=e.length;--t>=0;)e[t]=0}function Zn(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(jt(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function jn(e,t){Xr(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Zn(e.strm)}function Wn(e,t){e.pending_buf[e.pending++]=t}function Yn(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function Kn(e,t){var r,n,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,h=e.strstart>e.w_size-xn?e.strstart-(e.w_size-xn):0,l=e.window,f=e.w_mask,c=e.prev,u=e.strstart+Sn,d=l[o+a-1],p=l[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(r=t)+a]===p&&l[r+a-1]===d&&l[r]===l[o]&&l[++r]===l[o+1]){o+=2,r++;do{}while(l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&o<u);if(n=Sn-(u-o),o=u-Sn,n>a){if(e.match_start=t,a=n,n>=s)break;d=l[o+a-1],p=l[o+a]}}}while((t=c[t&f])>h&&0!=--i);return a<=e.lookahead?a:e.lookahead}function Xn(e){var t,r,n,i,o,a,s,h,l,f,c=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=c+(c-xn)){jt(e.window,e.window,c,c,0),e.match_start-=c,e.strstart-=c,e.block_start-=c,t=r=e.hash_size;do{n=e.head[--t],e.head[t]=n>=c?n-c:0}while(--r);t=r=c;do{n=e.prev[--t],e.prev[t]=n>=c?n-c:0}while(--r);i+=c}if(0===e.strm.avail_in)break;if(a=e.strm,s=e.window,h=e.strstart+e.lookahead,l=i,f=void 0,(f=a.avail_in)>l&&(f=l),r=0===f?0:(a.avail_in-=f,jt(s,a.input,a.next_in,f,h),1===a.state.wrap?a.adler=Vr(a.adler,s,f,h):2===a.state.wrap&&(a.adler=$r(a.adler,s,f,h)),a.next_in+=f,a.total_in+=f,f),e.lookahead+=r,e.lookahead+e.insert>=En)for(o=e.strstart-e.insert,e.ins_h=e.window[o],e.ins_h=(e.ins_h<<e.hash_shift^e.window[o+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[o+En-1])&e.hash_mask,e.prev[o&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=o,o++,e.insert--,!(e.lookahead+e.insert<En)););}while(e.lookahead<xn&&0!==e.strm.avail_in)}function qn(e,t){for(var r,n;;){if(e.lookahead<xn){if(Xn(e),e.lookahead<xn&&t===Qr)return Dn;if(0===e.lookahead)break}if(r=0,e.lookahead>=En&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+En-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-xn&&(e.match_length=Kn(e,r)),e.match_length>=En)if(n=qr(e,e.strstart-e.match_start,e.match_length-En),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=En){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+En-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=qr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(jn(e,!1),0===e.strm.avail_out))return Dn}return e.insert=e.strstart<En-1?e.strstart:En-1,t===rn?(jn(e,!0),0===e.strm.avail_out?Pn:On):e.last_lit&&(jn(e,!1),0===e.strm.avail_out)?Dn:In}function Vn(e,t){for(var r,n,i;;){if(e.lookahead<xn){if(Xn(e),e.lookahead<xn&&t===Qr)return Dn;if(0===e.lookahead)break}if(r=0,e.lookahead>=En&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+En-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=En-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-xn&&(e.match_length=Kn(e,r),e.match_length<=5&&(e.strategy===cn||e.match_length===En&&e.strstart-e.match_start>4096)&&(e.match_length=En-1)),e.prev_length>=En&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-En,n=qr(e,e.strstart-1-e.prev_match,e.prev_length-En),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+En-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=En-1,e.strstart++,n&&(jn(e,!1),0===e.strm.avail_out))return Dn}else if(e.match_available){if((n=qr(e,0,e.window[e.strstart-1]))&&jn(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return Dn}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=qr(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<En-1?e.strstart:En-1,t===rn?(jn(e,!0),0===e.strm.avail_out?Pn:On):e.last_lit&&(jn(e,!1),0===e.strm.avail_out)?Dn:In}function Gn(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function $n(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=gn,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Yt(2*mn),this.dyn_dtree=new Yt(2*(2*bn+1)),this.bl_tree=new Yt(2*(2*yn+1)),Nn(this.dyn_ltree),Nn(this.dyn_dtree),Nn(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Yt(kn+1),this.heap=new Yt(2*wn+1),Nn(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Yt(2*wn+1),Nn(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function Jn(e){var t,r=function(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=_n,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?An:Mn,e.adler=2===t.wrap?0:1,t.last_flush=Qr,Wr(t),on):Hn(e,sn)}(e);return r===on&&((t=e.state).window_size=2*t.w_size,Nn(t.head),t.max_lazy_match=Jr[t.level].max_lazy,t.good_match=Jr[t.level].good_length,t.nice_match=Jr[t.level].nice_length,t.max_chain_length=Jr[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=En-1,t.match_available=0,t.ins_h=0),r}function Qn(e,t){var r,n,i,o;if(!e||!e.state||t>nn||t<0)return e?Hn(e,sn):sn;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||n.status===Cn&&t!==rn)return Hn(e,0===e.avail_out?ln:sn);if(n.strm=e,r=n.last_flush,n.last_flush=t,n.status===An)if(2===n.wrap)e.adler=0,Wn(n,31),Wn(n,139),Wn(n,8),n.gzhead?(Wn(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),Wn(n,255&n.gzhead.time),Wn(n,n.gzhead.time>>8&255),Wn(n,n.gzhead.time>>16&255),Wn(n,n.gzhead.time>>24&255),Wn(n,9===n.level?2:n.strategy>=un||n.level<2?4:0),Wn(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(Wn(n,255&n.gzhead.extra.length),Wn(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=$r(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=Bn):(Wn(n,0),Wn(n,0),Wn(n,0),Wn(n,0),Wn(n,0),Wn(n,9===n.level?2:n.strategy>=un||n.level<2?4:0),Wn(n,Un),n.status=Mn);else{var a=gn+(n.w_bits-8<<4)<<8;a|=(n.strategy>=un||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(a|=Rn),a+=31-a%31,n.status=Mn,Yn(n,a),0!==n.strstart&&(Yn(n,e.adler>>>16),Yn(n,65535&e.adler)),e.adler=1}if(n.status===Bn)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),Zn(e),i=n.pending,n.pending!==n.pending_buf_size));)Wn(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=zn)}else n.status=zn;if(n.status===zn)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),Zn(e),i=n.pending,n.pending===n.pending_buf_size)){o=1;break}o=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,Wn(n,o)}while(0!==o);n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),0===o&&(n.gzindex=0,n.status=Ln)}else n.status=Ln;if(n.status===Ln)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),Zn(e),i=n.pending,n.pending===n.pending_buf_size)){o=1;break}o=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,Wn(n,o)}while(0!==o);n.gzhead.hcrc&&n.pending>i&&(e.adler=$r(e.adler,n.pending_buf,n.pending-i,i)),0===o&&(n.status=Tn)}else n.status=Tn;if(n.status===Tn&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&Zn(e),n.pending+2<=n.pending_buf_size&&(Wn(n,255&e.adler),Wn(n,e.adler>>8&255),e.adler=0,n.status=Mn)):n.status=Mn),0!==n.pending){if(Zn(e),0===e.avail_out)return n.last_flush=-1,on}else if(0===e.avail_in&&Fn(t)<=Fn(r)&&t!==rn)return Hn(e,ln);if(n.status===Cn&&0!==e.avail_in)return Hn(e,ln);if(0!==e.avail_in||0!==n.lookahead||t!==Qr&&n.status!==Cn){var s=n.strategy===un?function(e,t){for(var r;;){if(0===e.lookahead&&(Xn(e),0===e.lookahead)){if(t===Qr)return Dn;break}if(e.match_length=0,r=qr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(jn(e,!1),0===e.strm.avail_out))return Dn}return e.insert=0,t===rn?(jn(e,!0),0===e.strm.avail_out?Pn:On):e.last_lit&&(jn(e,!1),0===e.strm.avail_out)?Dn:In}(n,t):n.strategy===dn?function(e,t){for(var r,n,i,o,a=e.window;;){if(e.lookahead<=Sn){if(Xn(e),e.lookahead<=Sn&&t===Qr)return Dn;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=En&&e.strstart>0&&(n=a[i=e.strstart-1])===a[++i]&&n===a[++i]&&n===a[++i]){o=e.strstart+Sn;do{}while(n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&i<o);e.match_length=Sn-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=En?(r=qr(e,1,e.match_length-En),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=qr(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(jn(e,!1),0===e.strm.avail_out))return Dn}return e.insert=0,t===rn?(jn(e,!0),0===e.strm.avail_out?Pn:On):e.last_lit&&(jn(e,!1),0===e.strm.avail_out)?Dn:In}(n,t):Jr[n.level].func(n,t);if(s!==Pn&&s!==On||(n.status=Cn),s===Dn||s===Pn)return 0===e.avail_out&&(n.last_flush=-1),on;if(s===In&&(t===en?Kr(n):t!==nn&&(Yr(n,0,0,!1),t===tn&&(Nn(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),Zn(e),0===e.avail_out))return n.last_flush=-1,on}return t!==rn?on:n.wrap<=0?an:(2===n.wrap?(Wn(n,255&e.adler),Wn(n,e.adler>>8&255),Wn(n,e.adler>>16&255),Wn(n,e.adler>>24&255),Wn(n,255&e.total_in),Wn(n,e.total_in>>8&255),Wn(n,e.total_in>>16&255),Wn(n,e.total_in>>24&255)):(Yn(n,e.adler>>>16),Yn(n,65535&e.adler)),Zn(e),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?on:an)}Jr=[new Gn(0,0,0,0,function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(Xn(e),0===e.lookahead&&t===Qr)return Dn;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,jn(e,!1),0===e.strm.avail_out))return Dn;if(e.strstart-e.block_start>=e.w_size-xn&&(jn(e,!1),0===e.strm.avail_out))return Dn}return e.insert=0,t===rn?(jn(e,!0),0===e.strm.avail_out?Pn:On):(e.strstart>e.block_start&&(jn(e,!1),e.strm.avail_out),Dn)}),new Gn(4,4,8,4,qn),new Gn(4,5,16,8,qn),new Gn(4,6,32,32,qn),new Gn(4,4,16,16,Vn),new Gn(8,16,32,32,Vn),new Gn(8,16,128,128,Vn),new Gn(8,32,128,256,Vn),new Gn(32,128,258,1024,Vn),new Gn(32,258,258,4096,Vn)];var ei=30,ti=12;function ri(e,t){var r,n,i,o,a,s,h,l,f,c,u,d,p,_,g,v,w,b,y,m,k,E,S,x,R;r=e.state,n=e.next_in,x=e.input,i=n+(e.avail_in-5),o=e.next_out,R=e.output,a=o-(t-e.avail_out),s=o+(e.avail_out-257),h=r.dmax,l=r.wsize,f=r.whave,c=r.wnext,u=r.window,d=r.hold,p=r.bits,_=r.lencode,g=r.distcode,v=(1<<r.lenbits)-1,w=(1<<r.distbits)-1;e:do{p<15&&(d+=x[n++]<<p,p+=8,d+=x[n++]<<p,p+=8),b=_[d&v];t:for(;;){if(d>>>=y=b>>>24,p-=y,0===(y=b>>>16&255))R[o++]=65535&b;else{if(!(16&y)){if(0==(64&y)){b=_[(65535&b)+(d&(1<<y)-1)];continue t}if(32&y){r.mode=ti;break e}e.msg="invalid literal/length code",r.mode=ei;break e}m=65535&b,(y&=15)&&(p<y&&(d+=x[n++]<<p,p+=8),m+=d&(1<<y)-1,d>>>=y,p-=y),p<15&&(d+=x[n++]<<p,p+=8,d+=x[n++]<<p,p+=8),b=g[d&w];r:for(;;){if(d>>>=y=b>>>24,p-=y,!(16&(y=b>>>16&255))){if(0==(64&y)){b=g[(65535&b)+(d&(1<<y)-1)];continue r}e.msg="invalid distance code",r.mode=ei;break e}if(k=65535&b,p<(y&=15)&&(d+=x[n++]<<p,(p+=8)<y&&(d+=x[n++]<<p,p+=8)),(k+=d&(1<<y)-1)>h){e.msg="invalid distance too far back",r.mode=ei;break e}if(d>>>=y,p-=y,k>(y=o-a)){if((y=k-y)>f&&r.sane){e.msg="invalid distance too far back",r.mode=ei;break e}if(E=0,S=u,0===c){if(E+=l-y,y<m){m-=y;do{R[o++]=u[E++]}while(--y);E=o-k,S=R}}else if(c<y){if(E+=l+c-y,(y-=c)<m){m-=y;do{R[o++]=u[E++]}while(--y);if(E=0,c<m){m-=y=c;do{R[o++]=u[E++]}while(--y);E=o-k,S=R}}}else if(E+=c-y,y<m){m-=y;do{R[o++]=u[E++]}while(--y);E=o-k,S=R}for(;m>2;)R[o++]=S[E++],R[o++]=S[E++],R[o++]=S[E++],m-=3;m&&(R[o++]=S[E++],m>1&&(R[o++]=S[E++]))}else{E=o-k;do{R[o++]=R[E++],R[o++]=R[E++],R[o++]=R[E++],m-=3}while(m>2);m&&(R[o++]=R[E++],m>1&&(R[o++]=R[E++]))}break}}break}}while(n<i&&o<s);n-=m=p>>3,d&=(1<<(p-=m<<3))-1,e.next_in=n,e.next_out=o,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=o<s?s-o+257:257-(o-s),r.hold=d,r.bits=p}var ni=15,ii=852,oi=592,ai=0,si=1,hi=2,li=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],fi=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],ci=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],ui=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];function di(e,t,r,n,i,o,a,s){var h,l,f,c,u,d,p,_,g,v=s.bits,w=0,b=0,y=0,m=0,k=0,E=0,S=0,x=0,R=0,A=0,B=null,z=0,L=new Yt(ni+1),T=new Yt(ni+1),M=null,C=0;for(w=0;w<=ni;w++)L[w]=0;for(b=0;b<n;b++)L[t[r+b]]++;for(k=v,m=ni;m>=1&&0===L[m];m--);if(k>m&&(k=m),0===m)return i[o++]=20971520,i[o++]=20971520,s.bits=1,0;for(y=1;y<m&&0===L[y];y++);for(k<y&&(k=y),x=1,w=1;w<=ni;w++)if(x<<=1,(x-=L[w])<0)return-1;if(x>0&&(e===ai||1!==m))return-1;for(T[1]=0,w=1;w<ni;w++)T[w+1]=T[w]+L[w];for(b=0;b<n;b++)0!==t[r+b]&&(a[T[t[r+b]]++]=b);if(e===ai?(B=M=a,d=19):e===si?(B=li,z-=257,M=fi,C-=257,d=256):(B=ci,M=ui,d=-1),A=0,b=0,w=y,u=o,E=k,S=0,f=-1,c=(R=1<<k)-1,e===si&&R>ii||e===hi&&R>oi)return 1;for(;;){p=w-S,a[b]<d?(_=0,g=a[b]):a[b]>d?(_=M[C+a[b]],g=B[z+a[b]]):(_=96,g=0),h=1<<w-S,y=l=1<<E;do{i[u+(A>>S)+(l-=h)]=p<<24|_<<16|g|0}while(0!==l);for(h=1<<w-1;A&h;)h>>=1;if(0!==h?(A&=h-1,A+=h):A=0,b++,0==--L[w]){if(w===m)break;w=t[r+a[b]]}if(w>k&&(A&c)!==f){for(0===S&&(S=k),u+=y,x=1<<(E=w-S);E+S<m&&!((x-=L[E+S])<=0);)E++,x<<=1;if(R+=1<<E,e===si&&R>ii||e===hi&&R>oi)return 1;i[f=A&c]=k<<24|E<<16|u-o|0}}return 0!==A&&(i[u+A]=w-S<<24|64<<16|0),s.bits=k,0}var pi=0,_i=1,gi=2,vi=4,wi=5,bi=6,yi=0,mi=1,ki=2,Ei=-2,Si=-3,xi=-4,Ri=-5,Ai=8,Bi=1,zi=2,Li=3,Ti=4,Mi=5,Ci=6,Di=7,Ii=8,Pi=9,Oi=10,Ui=11,Hi=12,Fi=13,Ni=14,Zi=15,ji=16,Wi=17,Yi=18,Ki=19,Xi=20,qi=21,Vi=22,Gi=23,$i=24,Ji=25,Qi=26,eo=27,to=28,ro=29,no=30,io=31,oo=32,ao=852,so=592;function ho(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function lo(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Yt(320),this.work=new Yt(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function fo(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,function(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=Bi,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Kt(ao),t.distcode=t.distdyn=new Kt(so),t.sane=1,t.back=-1,yi):Ei}(e)):Ei}function co(e,t){var r,n;return e?(n=new lo,e.state=n,n.window=null,(r=function(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?Ei:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,fo(e))):Ei}(e,t))!==yi&&(e.state=null),r):Ei}var uo,po,_o=!0;function go(e){if(_o){var t;for(uo=new Kt(512),po=new Kt(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(di(_i,e.lens,0,288,uo,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;di(gi,e.lens,0,32,po,0,e.work,{bits:5}),_o=!1}e.lencode=uo,e.lenbits=9,e.distcode=po,e.distbits=5}function vo(e,t){var r,n,i,o,a,s,h,l,f,c,u,d,p,_,g,v,w,b,y,m,k,E,S,x,R=0,A=new Wt(4),B=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return Ei;(r=e.state).mode===Hi&&(r.mode=Fi),a=e.next_out,i=e.output,h=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,f=r.bits,c=s,u=h,E=yi;e:for(;;)switch(r.mode){case Bi:if(0===r.wrap){r.mode=Fi;break}for(;f<16;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(2&r.wrap&&35615===l){r.check=0,A[0]=255&l,A[1]=l>>>8&255,r.check=$r(r.check,A,2,0),l=0,f=0,r.mode=zi;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&l)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=no;break}if((15&l)!==Ai){e.msg="unknown compression method",r.mode=no;break}if(f-=4,k=8+(15&(l>>>=4)),0===r.wbits)r.wbits=k;else if(k>r.wbits){e.msg="invalid window size",r.mode=no;break}r.dmax=1<<k,e.adler=r.check=1,r.mode=512&l?Oi:Hi,l=0,f=0;break;case zi:for(;f<16;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(r.flags=l,(255&r.flags)!==Ai){e.msg="unknown compression method",r.mode=no;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=no;break}r.head&&(r.head.text=l>>8&1),512&r.flags&&(A[0]=255&l,A[1]=l>>>8&255,r.check=$r(r.check,A,2,0)),l=0,f=0,r.mode=Li;case Li:for(;f<32;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.head&&(r.head.time=l),512&r.flags&&(A[0]=255&l,A[1]=l>>>8&255,A[2]=l>>>16&255,A[3]=l>>>24&255,r.check=$r(r.check,A,4,0)),l=0,f=0,r.mode=Ti;case Ti:for(;f<16;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.head&&(r.head.xflags=255&l,r.head.os=l>>8),512&r.flags&&(A[0]=255&l,A[1]=l>>>8&255,r.check=$r(r.check,A,2,0)),l=0,f=0,r.mode=Mi;case Mi:if(1024&r.flags){for(;f<16;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.length=l,r.head&&(r.head.extra_len=l),512&r.flags&&(A[0]=255&l,A[1]=l>>>8&255,r.check=$r(r.check,A,2,0)),l=0,f=0}else r.head&&(r.head.extra=null);r.mode=Ci;case Ci:if(1024&r.flags&&((d=r.length)>s&&(d=s),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),jt(r.head.extra,n,o,d,k)),512&r.flags&&(r.check=$r(r.check,n,d,o)),s-=d,o+=d,r.length-=d),r.length))break e;r.length=0,r.mode=Di;case Di:if(2048&r.flags){if(0===s)break e;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k))}while(k&&d<s);if(512&r.flags&&(r.check=$r(r.check,n,d,o)),s-=d,o+=d,k)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=Ii;case Ii:if(4096&r.flags){if(0===s)break e;d=0;do{k=n[o+d++],r.head&&k&&r.length<65536&&(r.head.comment+=String.fromCharCode(k))}while(k&&d<s);if(512&r.flags&&(r.check=$r(r.check,n,d,o)),s-=d,o+=d,k)break e}else r.head&&(r.head.comment=null);r.mode=Pi;case Pi:if(512&r.flags){for(;f<16;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(l!==(65535&r.check)){e.msg="header crc mismatch",r.mode=no;break}l=0,f=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Hi;break;case Oi:for(;f<32;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}e.adler=r.check=ho(l),l=0,f=0,r.mode=Ui;case Ui:if(0===r.havedict)return e.next_out=a,e.avail_out=h,e.next_in=o,e.avail_in=s,r.hold=l,r.bits=f,ki;e.adler=r.check=1,r.mode=Hi;case Hi:if(t===wi||t===bi)break e;case Fi:if(r.last){l>>>=7&f,f-=7&f,r.mode=eo;break}for(;f<3;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}switch(r.last=1&l,f-=1,3&(l>>>=1)){case 0:r.mode=Ni;break;case 1:if(go(r),r.mode=Xi,t===bi){l>>>=2,f-=2;break e}break;case 2:r.mode=Wi;break;case 3:e.msg="invalid block type",r.mode=no}l>>>=2,f-=2;break;case Ni:for(l>>>=7&f,f-=7&f;f<32;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if((65535&l)!=(l>>>16^65535)){e.msg="invalid stored block lengths",r.mode=no;break}if(r.length=65535&l,l=0,f=0,r.mode=Zi,t===bi)break e;case Zi:r.mode=ji;case ji:if(d=r.length){if(d>s&&(d=s),d>h&&(d=h),0===d)break e;jt(i,n,o,d,a),s-=d,o+=d,h-=d,a+=d,r.length-=d;break}r.mode=Hi;break;case Wi:for(;f<14;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(r.nlen=257+(31&l),l>>>=5,f-=5,r.ndist=1+(31&l),l>>>=5,f-=5,r.ncode=4+(15&l),l>>>=4,f-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=no;break}r.have=0,r.mode=Yi;case Yi:for(;r.have<r.ncode;){for(;f<3;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.lens[B[r.have++]]=7&l,l>>>=3,f-=3}for(;r.have<19;)r.lens[B[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},E=di(pi,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,E){e.msg="invalid code lengths set",r.mode=no;break}r.have=0,r.mode=Ki;case Ki:for(;r.have<r.nlen+r.ndist;){for(;v=(R=r.lencode[l&(1<<r.lenbits)-1])>>>16&255,w=65535&R,!((g=R>>>24)<=f);){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(w<16)l>>>=g,f-=g,r.lens[r.have++]=w;else{if(16===w){for(x=g+2;f<x;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(l>>>=g,f-=g,0===r.have){e.msg="invalid bit length repeat",r.mode=no;break}k=r.lens[r.have-1],d=3+(3&l),l>>>=2,f-=2}else if(17===w){for(x=g+3;f<x;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}f-=g,k=0,d=3+(7&(l>>>=g)),l>>>=3,f-=3}else{for(x=g+7;f<x;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}f-=g,k=0,d=11+(127&(l>>>=g)),l>>>=7,f-=7}if(r.have+d>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=no;break}for(;d--;)r.lens[r.have++]=k}}if(r.mode===no)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=no;break}if(r.lenbits=9,S={bits:r.lenbits},E=di(_i,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,E){e.msg="invalid literal/lengths set",r.mode=no;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},E=di(gi,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,E){e.msg="invalid distances set",r.mode=no;break}if(r.mode=Xi,t===bi)break e;case Xi:r.mode=qi;case qi:if(s>=6&&h>=258){e.next_out=a,e.avail_out=h,e.next_in=o,e.avail_in=s,r.hold=l,r.bits=f,ri(e,u),a=e.next_out,i=e.output,h=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,f=r.bits,r.mode===Hi&&(r.back=-1);break}for(r.back=0;v=(R=r.lencode[l&(1<<r.lenbits)-1])>>>16&255,w=65535&R,!((g=R>>>24)<=f);){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(v&&0==(240&v)){for(b=g,y=v,m=w;v=(R=r.lencode[m+((l&(1<<b+y)-1)>>b)])>>>16&255,w=65535&R,!(b+(g=R>>>24)<=f);){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}l>>>=b,f-=b,r.back+=b}if(l>>>=g,f-=g,r.back+=g,r.length=w,0===v){r.mode=Qi;break}if(32&v){r.back=-1,r.mode=Hi;break}if(64&v){e.msg="invalid literal/length code",r.mode=no;break}r.extra=15&v,r.mode=Vi;case Vi:if(r.extra){for(x=r.extra;f<x;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.length+=l&(1<<r.extra)-1,l>>>=r.extra,f-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Gi;case Gi:for(;v=(R=r.distcode[l&(1<<r.distbits)-1])>>>16&255,w=65535&R,!((g=R>>>24)<=f);){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(0==(240&v)){for(b=g,y=v,m=w;v=(R=r.distcode[m+((l&(1<<b+y)-1)>>b)])>>>16&255,w=65535&R,!(b+(g=R>>>24)<=f);){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}l>>>=b,f-=b,r.back+=b}if(l>>>=g,f-=g,r.back+=g,64&v){e.msg="invalid distance code",r.mode=no;break}r.offset=w,r.extra=15&v,r.mode=$i;case $i:if(r.extra){for(x=r.extra;f<x;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}r.offset+=l&(1<<r.extra)-1,l>>>=r.extra,f-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=no;break}r.mode=Ji;case Ji:if(0===h)break e;if(d=u-h,r.offset>d){if((d=r.offset-d)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=no;break}d>r.wnext?(d-=r.wnext,p=r.wsize-d):p=r.wnext-d,d>r.length&&(d=r.length),_=r.window}else _=i,p=a-r.offset,d=r.length;d>h&&(d=h),h-=d,r.length-=d;do{i[a++]=_[p++]}while(--d);0===r.length&&(r.mode=qi);break;case Qi:if(0===h)break e;i[a++]=r.length,h--,r.mode=qi;break;case eo:if(r.wrap){for(;f<32;){if(0===s)break e;s--,l|=n[o++]<<f,f+=8}if(u-=h,e.total_out+=u,r.total+=u,u&&(e.adler=r.check=r.flags?$r(r.check,i,u,a-u):Vr(r.check,i,u,a-u)),u=h,(r.flags?l:ho(l))!==r.check){e.msg="incorrect data check",r.mode=no;break}l=0,f=0}r.mode=to;case to:if(r.wrap&&r.flags){for(;f<32;){if(0===s)break e;s--,l+=n[o++]<<f,f+=8}if(l!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=no;break}l=0,f=0}r.mode=ro;case ro:E=mi;break e;case no:E=Si;break e;case io:return xi;case oo:default:return Ei}return e.next_out=a,e.avail_out=h,e.next_in=o,e.avail_in=s,r.hold=l,r.bits=f,(r.wsize||u!==e.avail_out&&r.mode<no&&(r.mode<eo||t!==vi))&&function(e,t,r,n){var i,o=e.state;null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new Wt(o.wsize)),n>=o.wsize?(jt(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((i=o.wsize-o.wnext)>n&&(i=n),jt(o.window,t,r-n,i,o.wnext),(n-=i)?(jt(o.window,t,r-n,n,0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=i)))}(e,e.output,e.next_out,u-e.avail_out),c-=e.avail_in,u-=e.avail_out,e.total_in+=c,e.total_out+=u,r.total+=u,r.wrap&&u&&(e.adler=r.check=r.flags?$r(r.check,i,u,e.next_out-u):Vr(r.check,i,u,e.next_out-u)),e.data_type=r.bits+(r.last?64:0)+(r.mode===Hi?128:0)+(r.mode===Xi||r.mode===Zi?256:0),(0===c&&0===u||t===vi)&&E===yi&&(E=Ri),E}var wo,bo=1,yo=7;function mo(e){if(e<bo||e>yo)throw new TypeError("Bad argument");this.mode=e,this.init_done=!1,this.write_in_progress=!1,this.pending_close=!1,this.windowBits=0,this.level=0,this.memLevel=0,this.strategy=0,this.dictionary=null}function ko(e,t){for(var r=0;r<e.length;r++)this[t+r]=e[r]}mo.prototype.init=function(e,t,r,n,i){var o;switch(this.windowBits=e,this.level=t,this.memLevel=r,this.strategy=n,3!==this.mode&&4!==this.mode||(this.windowBits+=16),this.mode===yo&&(this.windowBits+=32),5!==this.mode&&6!==this.mode||(this.windowBits=-this.windowBits),this.strm=new Zt,this.mode){case bo:case 3:case 5:o=function(e,t,r,n,i,o){if(!e)return sn;var a=1;if(t===fn&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),i<1||i>vn||r!==gn||n<8||n>15||t<0||t>9||o<0||o>pn)return Hn(e,sn);8===n&&(n=9);var s=new $n;return e.state=s,s.strm=e,s.wrap=a,s.gzhead=null,s.w_bits=n,s.w_size=1<<s.w_bits,s.w_mask=s.w_size-1,s.hash_bits=i+7,s.hash_size=1<<s.hash_bits,s.hash_mask=s.hash_size-1,s.hash_shift=~~((s.hash_bits+En-1)/En),s.window=new Wt(2*s.w_size),s.head=new Yt(s.hash_size),s.prev=new Yt(s.w_size),s.lit_bufsize=1<<i+6,s.pending_buf_size=4*s.lit_bufsize,s.pending_buf=new Wt(s.pending_buf_size),s.d_buf=1*s.lit_bufsize,s.l_buf=3*s.lit_bufsize,s.level=t,s.strategy=o,s.method=r,Jn(e)}(this.strm,this.level,8,this.windowBits,this.memLevel,this.strategy);break;case 2:case 4:case 6:case yo:o=co(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}0===o?(this.write_in_progress=!1,this.init_done=!0):this._error(o)},mo.prototype.params=function(){throw new Error("deflateParams Not supported")},mo.prototype._writeCheck=function(){if(!this.init_done)throw new Error("write before init");if(0===this.mode)throw new Error("already finalized");if(this.write_in_progress)throw new Error("write already in progress");if(this.pending_close)throw new Error("close is pending")},mo.prototype.write=function(e,t,r,n,i,o,a){this._writeCheck(),this.write_in_progress=!0;var s=this;return de(function(){s.write_in_progress=!1;var h=s._write(e,t,r,n,i,o,a);s.callback(h[0],h[1]),s.pending_close&&s.close()}),this},mo.prototype.writeSync=function(e,t,r,n,i,o,a){return this._writeCheck(),this._write(e,t,r,n,i,o,a)},mo.prototype._write=function(e,t,r,n,i,o,a){if(this.write_in_progress=!0,0!==e&&1!==e&&2!==e&&3!==e&&4!==e&&5!==e)throw new Error("Invalid flush value");null==t&&(t=new p(0),n=0,r=0),i._set?i.set=i._set:i.set=ko;var s,h=this.strm;switch(h.avail_in=n,h.input=t,h.next_in=r,h.avail_out=a,h.output=i,h.next_out=o,this.mode){case bo:case 3:case 5:s=Qn(h,e);break;case yo:case 2:case 4:case 6:s=vo(h,e);break;default:throw new Error("Unknown mode "+this.mode)}return 1!==s&&0!==s&&this._error(s),this.write_in_progress=!1,[h.avail_in,h.avail_out]},mo.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,this.mode===bo||3===this.mode||5===this.mode?function(e){var t;e&&e.state&&((t=e.state.status)!==An&&t!==Bn&&t!==zn&&t!==Ln&&t!==Tn&&t!==Mn&&t!==Cn?Hn(e,sn):(e.state=null,t===Mn&&Hn(e,hn)))}(this.strm):function(e){if(!e||!e.state)return Ei;var t=e.state;t.window&&(t.window=null),e.state=null}(this.strm),this.mode=0)},mo.prototype.reset=function(){switch(this.mode){case bo:case 5:wo=Jn(this.strm);break;case 2:case 6:wo=fo(this.strm)}0!==wo&&this._error(wo)},mo.prototype._error=function(e){this.onerror(Nt[e]+": "+this.strm.msg,e),this.write_in_progress=!1,this.pending_close&&this.close()};var Eo=Object.freeze({NONE:0,DEFLATE:bo,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:yo,Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8,Zlib:mo});var So={};Object.keys(Eo).forEach(function(e){So[e]=Eo[e]}),So.Z_MIN_WINDOWBITS=8,So.Z_MAX_WINDOWBITS=15,So.Z_DEFAULT_WINDOWBITS=15,So.Z_MIN_CHUNK=64,So.Z_MAX_CHUNK=1/0,So.Z_DEFAULT_CHUNK=16384,So.Z_MIN_MEMLEVEL=1,So.Z_MAX_MEMLEVEL=9,So.Z_DEFAULT_MEMLEVEL=8,So.Z_MIN_LEVEL=-1,So.Z_MAX_LEVEL=9,So.Z_DEFAULT_LEVEL=So.Z_DEFAULT_COMPRESSION;var xo={Z_OK:So.Z_OK,Z_STREAM_END:So.Z_STREAM_END,Z_NEED_DICT:So.Z_NEED_DICT,Z_ERRNO:So.Z_ERRNO,Z_STREAM_ERROR:So.Z_STREAM_ERROR,Z_DATA_ERROR:So.Z_DATA_ERROR,Z_MEM_ERROR:So.Z_MEM_ERROR,Z_BUF_ERROR:So.Z_BUF_ERROR,Z_VERSION_ERROR:So.Z_VERSION_ERROR};function Ro(e,t,r){var n=[],i=0;function o(){for(var t;null!==(t=e.read());)n.push(t),i+=t.length;e.once("readable",o)}function a(){var t=p.concat(n,i);n=[],r(null,t),e.close()}e.on("error",function(t){e.removeListener("end",a),e.removeListener("readable",o),r(t)}),e.on("end",a),e.end(t),o()}function Ao(e,t){if("string"==typeof t&&(t=new p(t)),!$(t))throw new TypeError("Not a string or buffer");var r=So.Z_FINISH;return e._processChunk(t,r)}function Bo(e){if(!(this instanceof Bo))return new Bo(e);Io.call(this,e,So.DEFLATE)}function zo(e){if(!(this instanceof zo))return new zo(e);Io.call(this,e,So.INFLATE)}function Lo(e){if(!(this instanceof Lo))return new Lo(e);Io.call(this,e,So.GZIP)}function To(e){if(!(this instanceof To))return new To(e);Io.call(this,e,So.GUNZIP)}function Mo(e){if(!(this instanceof Mo))return new Mo(e);Io.call(this,e,So.DEFLATERAW)}function Co(e){if(!(this instanceof Co))return new Co(e);Io.call(this,e,So.INFLATERAW)}function Do(e){if(!(this instanceof Do))return new Do(e);Io.call(this,e,So.UNZIP)}function Io(e,t){if(this._opts=e=e||{},this._chunkSize=e.chunkSize||So.Z_DEFAULT_CHUNK,Ot.call(this,e),e.flush&&e.flush!==So.Z_NO_FLUSH&&e.flush!==So.Z_PARTIAL_FLUSH&&e.flush!==So.Z_SYNC_FLUSH&&e.flush!==So.Z_FULL_FLUSH&&e.flush!==So.Z_FINISH&&e.flush!==So.Z_BLOCK)throw new Error("Invalid flush flag: "+e.flush);if(this._flushFlag=e.flush||So.Z_NO_FLUSH,e.chunkSize&&(e.chunkSize<So.Z_MIN_CHUNK||e.chunkSize>So.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBits<So.Z_MIN_WINDOWBITS||e.windowBits>So.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.level<So.Z_MIN_LEVEL||e.level>So.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevel<So.Z_MIN_MEMLEVEL||e.memLevel>So.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=So.Z_FILTERED&&e.strategy!=So.Z_HUFFMAN_ONLY&&e.strategy!=So.Z_RLE&&e.strategy!=So.Z_FIXED&&e.strategy!=So.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!$(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._binding=new So.Zlib(t);var r=this;this._hadError=!1,this._binding.onerror=function(e,t){r._binding=null,r._hadError=!0;var n=new Error(e);n.errno=t,n.code=So.codes[t],r.emit("error",n)};var n=So.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(n=e.level);var i=So.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(i=e.strategy),this._binding.init(e.windowBits||So.Z_DEFAULT_WINDOWBITS,n,e.memLevel||So.Z_DEFAULT_MEMLEVEL,i,e.dictionary),this._buffer=new p(this._chunkSize),this._offset=0,this._closed=!1,this._level=n,this._strategy=i,this.once("end",this.close)}Object.keys(xo).forEach(function(e){xo[xo[e]]=e}),Be(Io,Ot),Io.prototype.params=function(e,t,r){if(e<So.Z_MIN_LEVEL||e>So.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(t!=So.Z_FILTERED&&t!=So.Z_HUFFMAN_ONLY&&t!=So.Z_RLE&&t!=So.Z_FIXED&&t!=So.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+t);if(this._level!==e||this._strategy!==t){var n=this;this.flush(So.Z_SYNC_FLUSH,function(){n._binding.params(e,t),n._hadError||(n._level=e,n._strategy=t,r&&r())})}else de(r)},Io.prototype.reset=function(){return this._binding.reset()},Io.prototype._flush=function(e){this._transform(new p(0),"",e)},Io.prototype.flush=function(e,t){var r=this._writableState;if(("function"==typeof e||void 0===e&&!t)&&(t=e,e=So.Z_FULL_FLUSH),r.ended)t&&de(t);else if(r.ending)t&&this.once("end",t);else if(r.needDrain){var n=this;this.once("drain",function(){n.flush(t)})}else this._flushFlag=e,this.write(new p(0),"",t)},Io.prototype.close=function(e){if(e&&de(e),!this._closed){this._closed=!0,this._binding.close();var t=this;de(function(){t.emit("close")})}},Io.prototype._transform=function(e,t,r){var n,i=this._writableState,o=(i.ending||i.ended)&&(!e||i.length===e.length);if(null===!e&&!$(e))return r(new Error("invalid input"));o?n=So.Z_FINISH:(n=this._flushFlag,e.length>=i.length&&(this._flushFlag=this._opts.flush||So.Z_NO_FLUSH)),this._processChunk(e,n,r)},Io.prototype._processChunk=function(e,t,r){var n=e&&e.length,i=this._chunkSize-this._offset,o=0,a=this,s="function"==typeof r;if(!s){var h,l=[],f=0;this.on("error",function(e){h=e});do{var c=this._binding.writeSync(t,e,o,n,this._buffer,this._offset,i)}while(!this._hadError&&_(c[0],c[1]));if(this._hadError)throw h;var u=p.concat(l,f);return this.close(),u}var d=this._binding.write(t,e,o,n,this._buffer,this._offset,i);function _(h,c){if(!a._hadError){var u=i-c;if(function(e,t){if(!e)throw new Error(t)}(u>=0,"have should not go down"),u>0){var d=a._buffer.slice(a._offset,a._offset+u);a._offset+=u,s?a.push(d):(l.push(d),f+=d.length)}if((0===c||a._offset>=a._chunkSize)&&(i=a._chunkSize,a._offset=0,a._buffer=new p(a._chunkSize)),0===c){if(o+=n-h,n=h,!s)return!0;var g=a._binding.write(t,e,o,n,a._buffer,a._offset,a._chunkSize);return g.callback=_,void(g.buffer=e)}if(!s)return!1;r()}}d.buffer=e,d.callback=_},Be(Bo,Io),Be(zo,Io),Be(Lo,Io),Be(To,Io),Be(Mo,Io),Be(Co,Io),Be(Do,Io);var Po={codes:xo,createDeflate:function(e){return new Bo(e)},createInflate:function(e){return new zo(e)},createDeflateRaw:function(e){return new Mo(e)},createInflateRaw:function(e){return new Co(e)},createGzip:function(e){return new Lo(e)},createGunzip:function(e){return new To(e)},createUnzip:function(e){return new Do(e)},deflate:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new Bo(t),e,r)},deflateSync:function(e,t){return Ao(new Bo(t),e)},gzip:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new Lo(t),e,r)},gzipSync:function(e,t){return Ao(new Lo(t),e)},deflateRaw:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new Mo(t),e,r)},deflateRawSync:function(e,t){return Ao(new Mo(t),e)},unzip:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new Do(t),e,r)},unzipSync:function(e,t){return Ao(new Do(t),e)},inflate:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new zo(t),e,r)},inflateSync:function(e,t){return Ao(new zo(t),e)},gunzip:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new To(t),e,r)},gunzipSync:function(e,t){return Ao(new To(t),e)},inflateRaw:function(e,t,r){return"function"==typeof t&&(r=t,t={}),Ro(new Co(t),e,r)},inflateRawSync:function(e,t){return Ao(new Co(t),e)},Deflate:Bo,Inflate:zo,Gzip:Lo,Gunzip:To,DeflateRaw:Mo,InflateRaw:Co,Unzip:Do,Zlib:Io};export default class{constructor(e,t,r){this.SDKAPPID=e,this.EXPIRETIME=r,this.PRIVATEKEY=t}genTestUserSig(e){return this._isNumber(this.SDKAPPID)?this._isString(this.PRIVATEKEY)?this._isString(e)?this._isNumber(this.EXPIRETIME)?(console.log("sdkAppID="+this.SDKAPPID+" key="+this.PRIVATEKEY+" userID="+e+" expire="+this.EXPIRETIME),this.genSigWithUserbuf(e,this.EXPIRETIME,null)):(console.error("expireTime must be a number"),""):(console.error("userID must be a string"),""):(console.error("privateKey must be a string"),""):(console.error("sdkAppID must be a number"),"")}newBuffer(e,t){return p.from?p.from(e,t):new p(e,t)}unescape(e){return e.replace(/_/g,"=").replace(/\-/g,"/").replace(/\*/g,"+")}escape(e){return e.replace(/\+/g,"*").replace(/\//g,"-").replace(/=/g,"_")}encode(e){return this.escape(this.newBuffer(e).toString("base64"))}decode(e){return this.newBuffer(this.unescape(e),"base64")}base64encode(e){return this.newBuffer(e).toString("base64")}base64decode(e){return this.newBuffer(e,"base64").toString()}_hmacsha256(e,t,r,n){let i="TLS.identifier:"+e+"\n";i+="TLS.sdkappid:"+this.SDKAPPID+"\n",i+="TLS.time:"+t+"\n",i+="TLS.expire:"+r+"\n",null!=n&&(i+="TLS.userbuf:"+n+"\n");let o=te.HmacSHA256(i,this.PRIVATEKEY);return te.enc.Base64.stringify(o)}_utc(){return Math.round(Date.now()/1e3)}_isNumber(e){return null!==e&&("number"==typeof e&&!isNaN(e-0)||"object"==typeof e&&e.constructor===Number)}_isString(e){return"string"==typeof e}genSigWithUserbuf(e,t,r){let n=this._utc(),i={"TLS.ver":"2.0","TLS.identifier":e,"TLS.sdkappid":this.SDKAPPID,"TLS.time":n,"TLS.expire":t},o="";if(null!=r){let a=this.base64encode(r);i["TLS.userbuf"]=a,o=this._hmacsha256(e,n,t,a)}else o=this._hmacsha256(e,n,t,null);i["TLS.sig"]=o;let a=JSON.stringify(i),s=Po.deflateSync(this.newBuffer(a)).toString("base64"),h=this.escape(s);return console.log("ret="+h),h}validate(e){let t=this.decode(e),r=Po.inflateSync(t);console.log("validate ret="+r)}}
diff --git a/uniapps/drone-app/stylelint.config.js b/uniapps/drone-app/stylelint.config.js
new file mode 100644
index 0000000..5b20d69
--- /dev/null
+++ b/uniapps/drone-app/stylelint.config.js
@@ -0,0 +1,58 @@
+export default {
+ extends: [
+ 'stylelint-config-standard',
+ 'stylelint-config-standard-vue',
+ 'stylelint-config-recess-order',
+ ],
+ ignoreFiles: [
+ 'dist/**',
+ 'src/uni_modules/**',
+ 'node_modules/**',
+ 'src/static/styles/theme.scss', // 忽略主题文件,因为包含 CSS 自定义属性
+ ],
+ rules: {
+ // 禁止空代码
+ 'no-empty-source': null,
+ // 禁止在覆盖高特异性选择器之后出现低特异性选择器
+ 'no-descending-specificity': null,
+ // 不允许未知单位
+ 'unit-no-unknown': [true, { ignoreUnits: ['rpx'] }],
+ // 禁止空注释
+ 'comment-no-empty': true,
+ // @import 规则必须始终使用字符串表示法。
+ 'import-notation': 'string',
+ // 未知的 @ 规则
+ 'at-rule-no-unknown': [
+ true,
+ {
+ ignoreAtRules: [
+ 'plugin',
+ 'apply',
+ 'screen',
+ 'function',
+ 'if',
+ 'each',
+ 'include',
+ 'mixin',
+ 'extend',
+ 'content',
+ 'use',
+ ],
+ },
+ ],
+ 'selector-pseudo-element-no-unknown': [
+ true,
+ {
+ ignorePseudoElements: ['v-deep'],
+ },
+ ],
+ 'selector-pseudo-class-no-unknown': [
+ true,
+ {
+ ignorePseudoClasses: ['deep'],
+ },
+ ],
+ 'selector-type-no-unknown': [true, { ignoreTypes: ['page', 'radio', 'checkbox', 'scroll-view'] }],
+ 'at-rule-no-deprecated': null,
+ },
+};
diff --git a/uniapps/drone-app/uno.config.js b/uniapps/drone-app/uno.config.js
new file mode 100644
index 0000000..9dfc861
--- /dev/null
+++ b/uniapps/drone-app/uno.config.js
@@ -0,0 +1,83 @@
+/*
+ * @Author : yuan
+ * @Date : 2025-09-28 09:31:16
+ * @LastEditors : yuan
+ * @LastEditTime : 2025-09-28 09:38:38
+ * @FilePath : \uno.config.js
+ * @Description :
+ * Copyright 2025 OBKoro1, All Rights Reserved.
+ * 2025-09-28 09:31:16
+ */
+import {
+ defineConfig,
+ presetIcons,
+ transformerDirectives,
+ transformerVariantGroup
+} from "unocss"
+import { presetWeapp } from "unocss-preset-weapp"
+import {
+ extractorAttributify,
+ transformerClass
+} from "unocss-preset-weapp/transformer"
+
+const {
+ presetWeappAttributify,
+ transformerAttributify
+} = extractorAttributify()
+
+export default defineConfig({
+ presets: [
+ // https://github.com/MellowCo/unocss-preset-weapp
+ presetWeapp(),
+ presetWeappAttributify(),
+ // https://unocss.dev/presets/icons
+ presetIcons({
+ scale: 1.2,
+ warn: true,
+ extraProperties: {
+ display: "inline-block",
+ "vertical-align": "middle"
+ }
+ })
+ ],
+ /**
+ * 自定义快捷语句
+ * @see https://github.com/unocss/unocss#shortcuts
+ */
+ shortcuts: {
+ "border-base": "border border-gray-500_10",
+ center: "flex justify-center items-center"
+ },
+ theme: {
+ colors: {
+ // 主题颜色
+ primary: "var(--theme-primary)",
+ success: "var(--theme-success)",
+ warning: "var(--theme-warning)",
+ error: "var(--theme-error)",
+ // 文字颜色
+ "text-main": "var(--theme-main-color)",
+ "text-content": "var(--theme-content-color)",
+ "text-tips": "var(--theme-tips-color)",
+ "text-light": "var(--theme-light-color)",
+ "text-disabled": "var(--theme-disabled-color)",
+ // 背景颜色
+ "bg-main": "var(--theme-bg-color)",
+ "bg-secondary": "var(--theme-bg-color-secondary)",
+ // 边框颜色
+ "border-main": "var(--theme-border-color)"
+ }
+ },
+ transformers: [
+ // 启用 @apply 功能
+ transformerDirectives({
+ enforce: "pre"
+ }),
+ // https://unocss.dev/transformers/variant-group
+ // 启用 () 分组功能
+ transformerVariantGroup(),
+ transformerAttributify(),
+ // https://github.com/MellowCo/unocss-preset-weapp/tree/main/src/transformer/transformerClass
+ transformerClass()
+ ]
+})
diff --git a/uniapps/drone-app/vite.config.js b/uniapps/drone-app/vite.config.js
new file mode 100644
index 0000000..8d7f591
--- /dev/null
+++ b/uniapps/drone-app/vite.config.js
@@ -0,0 +1,61 @@
+import process from "node:process"
+import { fileURLToPath, URL } from "node:url"
+import { defineConfig, loadEnv } from "vite"
+import { createViteProxy } from "./build/config/index"
+import createVitePlugins from "./build/plugins/index"
+import configEnv from "./src/config/env.js";
+
+// https://vitejs.dev/config/
+export default defineConfig(({ command, mode }) => {
+ // mode: 区分生产环境还是开发环境
+ console.log("command, mode -> ", command, mode)
+
+ const { UNI_PLATFORM,UNI_CUSTOM_DEFINE } = process.env
+ const ENV_NAME = UNI_CUSTOM_DEFINE && JSON.parse(UNI_CUSTOM_DEFINE)?.ENV_NAME
+ const __APP_ENV__ = {
+ UNI_PLATFORM: UNI_PLATFORM,
+ ENV_NAME: ENV_NAME || 'development'
+ }
+ console.log("平台 -> ", __APP_ENV__.UNI_PLATFORM) // 得到 mp-weixin, h5, app 等
+ console.log("环境 -> ", __APP_ENV__.ENV_NAME) // 得到 development,test 等
+
+ const env = loadEnv(mode, fileURLToPath(new URL("./env", import.meta.url)))
+ // console.log("环境变量 env -> ", env)
+ const isBuild = process.env.NODE_ENV === "production"
+ return {
+ define: {
+ __APP_ENV__,
+ },
+ // 自定义env目录
+ envDir: "./env",
+ resolve: {
+ // https://cn.vitejs.dev/config/#resolve-alias
+ alias: {
+ // 设置别名
+ "@": fileURLToPath(new URL("./src", import.meta.url))
+ }
+ },
+ // vite 相关配置
+ server: {
+ port: Number.parseInt(env.VITE_APP_PORT, 10),
+ hmr: true,
+ host: true,
+ open: true,
+ proxy: createViteProxy(env,__APP_ENV__.ENV_NAME)
+ },
+ // 设置scss的api类型为modern-compiler
+ css: {
+ preprocessorOptions: {
+ scss: {
+ api: "modern-compiler",
+ // 消除一些不必要的警告
+ silenceDeprecations: ["legacy-js-api"]
+ }
+ }
+ },
+ plugins: createVitePlugins(isBuild),
+ esbuild: {
+ drop: JSON.parse(env.VITE_DROP_CONSOLE) ? ["console", "debugger"] : []
+ }
+ }
+})
--
Gitblit v1.9.3