From ad2c4fa47a088bb37716d9555478f2e5130ceb5f Mon Sep 17 00:00:00 2001 From: sans Date: Wed, 11 Mar 2026 10:53:53 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E9=A6=96=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .browserslistrc | 3 + .editorconfig | 16 + .env.development | 3 + .env.production | 3 + .eslintrc.js | 26 + .gitignore | 23 + .prettierrc | 22 + README.md | 50 + babel.config.js | 3 + index.html | 20 + package-lock.json | 15896 ++++++++++++++++ package.json | 72 + public/1.png | Bin 0 -> 299702 bytes public/favicon.ico | Bin 0 -> 84598 bytes public/region.csv | 3361 ++++ public/wechat.jpg | Bin 0 -> 27504 bytes src/App.vue | 55 + src/assets/css/app.less | 567 + src/assets/css/header.less | 101 + src/assets/css/setting.less | 161 + src/assets/icons/iconfont/iconfont.js | 1 + src/assets/icons/svg/button.svg | 1 + src/assets/icons/svg/cascader.svg | 1 + src/assets/icons/svg/checkbox.svg | 1 + src/assets/icons/svg/color.svg | 1 + src/assets/icons/svg/component.svg | 1 + src/assets/icons/svg/date-range.svg | 1 + src/assets/icons/svg/date.svg | 1 + src/assets/icons/svg/earth.svg | 1 + src/assets/icons/svg/extfullscreen.svg | 1 + src/assets/icons/svg/fanyiline.svg | 1 + src/assets/icons/svg/fullscreen2.svg | 1 + src/assets/icons/svg/gitee.svg | 1 + src/assets/icons/svg/indent.svg | 1 + src/assets/icons/svg/input.svg | 1 + src/assets/icons/svg/morevertical.svg | 1 + src/assets/icons/svg/number.svg | 1 + src/assets/icons/svg/outdent.svg | 1 + src/assets/icons/svg/password.svg | 1 + src/assets/icons/svg/radio.svg | 1 + src/assets/icons/svg/rate.svg | 1 + src/assets/icons/svg/rich-text.svg | 1 + src/assets/icons/svg/row.svg | 1 + src/assets/icons/svg/select.svg | 1 + src/assets/icons/svg/slider.svg | 1 + src/assets/icons/svg/switch.svg | 1 + src/assets/icons/svg/table.svg | 1 + src/assets/icons/svg/textarea.svg | 1 + src/assets/icons/svg/time-range.svg | 1 + src/assets/icons/svg/time.svg | 1 + src/assets/icons/svg/tuichuquanping.svg | 1 + src/assets/icons/svg/upload.svg | 1 + src/assets/images/logo.png | Bin 0 -> 2004 bytes src/assets/images/user.png | Bin 0 -> 10885 bytes src/assets/theme/base.less | 32 + src/assets/theme/index.less | 935 + src/assets/theme/mobile.less | 97 + src/components/base/svg-icon/index.ts | 4 + src/components/base/svg-icon/index.vue | 38 + src/components/ren-dept-tree/index.ts | 5 + .../ren-dept-tree/src/ren-dept-tree.vue | 113 + src/components/ren-radio-group/index.ts | 4 + .../ren-radio-group/src/ren-radio-group.vue | 24 + src/components/ren-region-tree/index.ts | 5 + .../ren-region-tree/src/ren-region-tree.vue | 131 + src/components/ren-select/index.ts | 4 + src/components/ren-select/src/ren-select.vue | 25 + src/components/wang-editor/index.vue | 82 + src/constants/app.ts | 41 + src/constants/cacheKey.ts | 13 + src/constants/config.ts | 16 + src/constants/enum.ts | 143 + src/hooks/useView.ts | 246 + src/layout/fullscreen-layout.vue | 20 + src/layout/header/base-header.vue | 63 + src/layout/header/breadcrumb.vue | 34 + src/layout/header/collapse-sidebar-btn.vue | 39 + src/layout/header/expand.vue | 83 + src/layout/header/header-mix-nav-menus.vue | 64 + src/layout/header/logo.vue | 35 + src/layout/index.vue | 80 + src/layout/layout.vue | 3 + src/layout/sidebar/base-sidebar.vue | 162 + src/layout/sidebar/mobile-sidebar.vue | 39 + src/layout/sidebar/sidebar-menus-items.vue | 51 + src/layout/view/base-view.vue | 47 + src/layout/view/tabs.vue | 155 + src/main.ts | 34 + src/router/base.ts | 52 + src/router/index.ts | 187 + src/service/baseService.ts | 77 + src/store/index.ts | 83 + src/types/env.d.ts | 6 + src/types/index.d.ts | 3 + src/types/interface.ts | 176 + src/types/shims.d.ts | 29 + src/utils/cache.ts | 71 + src/utils/emits.ts | 6 + src/utils/http.ts | 90 + src/utils/router.ts | 181 + src/utils/theme.ts | 173 + src/utils/utils.ts | 252 + .../weatherdailydata-add-or-update.vue | 158 + .../dailyweather/weatherdailydata-import.vue | 91 + src/views/dailyweather/weatherdailydata.vue | 227 + src/views/error.vue | 58 + src/views/home.vue | 521 + src/views/iframe.vue | 53 + src/views/job/schedule-add-or-update.vue | 100 + src/views/job/schedule-log.vue | 61 + src/views/job/schedule.vue | 182 + src/views/login.vue | 267 + src/views/oss/oss-config.vue | 200 + src/views/oss/oss-upload.vue | 65 + src/views/oss/oss.vue | 68 + src/views/region/region.vue | 108 + .../station/weatherstation-add-or-update.vue | 257 + src/views/station/weatherstation.vue | 113 + src/views/sys/dept-add-or-update.vue | 146 + src/views/sys/dept.vue | 40 + src/views/sys/dict-data-add-or-update.vue | 92 + src/views/sys/dict-data.vue | 71 + src/views/sys/dict-type-add-or-update.vue | 90 + src/views/sys/dict-type.vue | 84 + src/views/sys/log-error.vue | 60 + src/views/sys/log-login.vue | 58 + src/views/sys/log-operation.vue | 56 + src/views/sys/menu-add-or-update.vue | 236 + src/views/sys/menu.vue | 66 + src/views/sys/params-add-or-update.vue | 85 + src/views/sys/params.vue | 56 + src/views/sys/role-add-or-update.vue | 130 + src/views/sys/role.vue | 56 + src/views/sys/user-add-or-update.vue | 180 + src/views/sys/user-update-password.vue | 73 + src/views/sys/user.vue | 82 + src/views/tools/color.vue | 110 + tsconfig.json | 29 + vite.config.ts | 65 + 139 files changed, 29061 insertions(+) create mode 100644 .browserslistrc create mode 100644 .editorconfig create mode 100644 .env.development create mode 100644 .env.production create mode 100644 .eslintrc.js create mode 100644 .gitignore create mode 100644 .prettierrc create mode 100644 README.md create mode 100644 babel.config.js create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/1.png create mode 100644 public/favicon.ico create mode 100644 public/region.csv create mode 100644 public/wechat.jpg create mode 100644 src/App.vue create mode 100644 src/assets/css/app.less create mode 100644 src/assets/css/header.less create mode 100644 src/assets/css/setting.less create mode 100644 src/assets/icons/iconfont/iconfont.js create mode 100644 src/assets/icons/svg/button.svg create mode 100644 src/assets/icons/svg/cascader.svg create mode 100644 src/assets/icons/svg/checkbox.svg create mode 100644 src/assets/icons/svg/color.svg create mode 100644 src/assets/icons/svg/component.svg create mode 100644 src/assets/icons/svg/date-range.svg create mode 100644 src/assets/icons/svg/date.svg create mode 100644 src/assets/icons/svg/earth.svg create mode 100644 src/assets/icons/svg/extfullscreen.svg create mode 100644 src/assets/icons/svg/fanyiline.svg create mode 100644 src/assets/icons/svg/fullscreen2.svg create mode 100644 src/assets/icons/svg/gitee.svg create mode 100644 src/assets/icons/svg/indent.svg create mode 100644 src/assets/icons/svg/input.svg create mode 100644 src/assets/icons/svg/morevertical.svg create mode 100644 src/assets/icons/svg/number.svg create mode 100644 src/assets/icons/svg/outdent.svg create mode 100644 src/assets/icons/svg/password.svg create mode 100644 src/assets/icons/svg/radio.svg create mode 100644 src/assets/icons/svg/rate.svg create mode 100644 src/assets/icons/svg/rich-text.svg create mode 100644 src/assets/icons/svg/row.svg create mode 100644 src/assets/icons/svg/select.svg create mode 100644 src/assets/icons/svg/slider.svg create mode 100644 src/assets/icons/svg/switch.svg create mode 100644 src/assets/icons/svg/table.svg create mode 100644 src/assets/icons/svg/textarea.svg create mode 100644 src/assets/icons/svg/time-range.svg create mode 100644 src/assets/icons/svg/time.svg create mode 100644 src/assets/icons/svg/tuichuquanping.svg create mode 100644 src/assets/icons/svg/upload.svg create mode 100644 src/assets/images/logo.png create mode 100644 src/assets/images/user.png create mode 100644 src/assets/theme/base.less create mode 100644 src/assets/theme/index.less create mode 100644 src/assets/theme/mobile.less create mode 100644 src/components/base/svg-icon/index.ts create mode 100644 src/components/base/svg-icon/index.vue create mode 100644 src/components/ren-dept-tree/index.ts create mode 100644 src/components/ren-dept-tree/src/ren-dept-tree.vue create mode 100644 src/components/ren-radio-group/index.ts create mode 100644 src/components/ren-radio-group/src/ren-radio-group.vue create mode 100644 src/components/ren-region-tree/index.ts create mode 100644 src/components/ren-region-tree/src/ren-region-tree.vue create mode 100644 src/components/ren-select/index.ts create mode 100644 src/components/ren-select/src/ren-select.vue create mode 100644 src/components/wang-editor/index.vue create mode 100644 src/constants/app.ts create mode 100644 src/constants/cacheKey.ts create mode 100644 src/constants/config.ts create mode 100644 src/constants/enum.ts create mode 100644 src/hooks/useView.ts create mode 100644 src/layout/fullscreen-layout.vue create mode 100644 src/layout/header/base-header.vue create mode 100644 src/layout/header/breadcrumb.vue create mode 100644 src/layout/header/collapse-sidebar-btn.vue create mode 100644 src/layout/header/expand.vue create mode 100644 src/layout/header/header-mix-nav-menus.vue create mode 100644 src/layout/header/logo.vue create mode 100644 src/layout/index.vue create mode 100644 src/layout/layout.vue create mode 100644 src/layout/sidebar/base-sidebar.vue create mode 100644 src/layout/sidebar/mobile-sidebar.vue create mode 100644 src/layout/sidebar/sidebar-menus-items.vue create mode 100644 src/layout/view/base-view.vue create mode 100644 src/layout/view/tabs.vue create mode 100644 src/main.ts create mode 100644 src/router/base.ts create mode 100644 src/router/index.ts create mode 100644 src/service/baseService.ts create mode 100644 src/store/index.ts create mode 100644 src/types/env.d.ts create mode 100644 src/types/index.d.ts create mode 100644 src/types/interface.ts create mode 100644 src/types/shims.d.ts create mode 100644 src/utils/cache.ts create mode 100644 src/utils/emits.ts create mode 100644 src/utils/http.ts create mode 100644 src/utils/router.ts create mode 100644 src/utils/theme.ts create mode 100644 src/utils/utils.ts create mode 100644 src/views/dailyweather/weatherdailydata-add-or-update.vue create mode 100644 src/views/dailyweather/weatherdailydata-import.vue create mode 100644 src/views/dailyweather/weatherdailydata.vue create mode 100644 src/views/error.vue create mode 100644 src/views/home.vue create mode 100644 src/views/iframe.vue create mode 100644 src/views/job/schedule-add-or-update.vue create mode 100644 src/views/job/schedule-log.vue create mode 100644 src/views/job/schedule.vue create mode 100644 src/views/login.vue create mode 100644 src/views/oss/oss-config.vue create mode 100644 src/views/oss/oss-upload.vue create mode 100644 src/views/oss/oss.vue create mode 100644 src/views/region/region.vue create mode 100644 src/views/station/weatherstation-add-or-update.vue create mode 100644 src/views/station/weatherstation.vue create mode 100644 src/views/sys/dept-add-or-update.vue create mode 100644 src/views/sys/dept.vue create mode 100644 src/views/sys/dict-data-add-or-update.vue create mode 100644 src/views/sys/dict-data.vue create mode 100644 src/views/sys/dict-type-add-or-update.vue create mode 100644 src/views/sys/dict-type.vue create mode 100644 src/views/sys/log-error.vue create mode 100644 src/views/sys/log-login.vue create mode 100644 src/views/sys/log-operation.vue create mode 100644 src/views/sys/menu-add-or-update.vue create mode 100644 src/views/sys/menu.vue create mode 100644 src/views/sys/params-add-or-update.vue create mode 100644 src/views/sys/params.vue create mode 100644 src/views/sys/role-add-or-update.vue create mode 100644 src/views/sys/role.vue create mode 100644 src/views/sys/user-add-or-update.vue create mode 100644 src/views/sys/user-update-password.vue create mode 100644 src/views/sys/user.vue create mode 100644 src/views/tools/color.vue create mode 100644 tsconfig.json create mode 100644 vite.config.ts diff --git a/.browserslistrc b/.browserslistrc new file mode 100644 index 0000000..214388f --- /dev/null +++ b/.browserslistrc @@ -0,0 +1,3 @@ +> 1% +last 2 versions +not dead diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..7e3649a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,16 @@ +# http://editorconfig.org +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false + +[Makefile] +indent_style = tab diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..1041591 --- /dev/null +++ b/.env.development @@ -0,0 +1,3 @@ +NODE_ENV=development +VITE_APP_API=http://192.168.2.186:8080/system-admin + diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..7fb0692 --- /dev/null +++ b/.env.production @@ -0,0 +1,3 @@ +NODE_ENV=production +VITE_APP_API=http://192.168.2.186:8080/system-admin + diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..cd60136 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,26 @@ +module.exports = { + root: true, + env: { + node: true, + "vue/setup-compiler-macros": true + }, + extends: [ + "plugin:vue/vue3-essential", + "eslint:recommended", + "@vue/typescript/recommended", + "@vue/prettier" + ], + parserOptions: { + ecmaVersion: 2020, + ecmaFeatures: { + jsx: true + } + }, + rules: { + "no-console": "off", + "no-debugger": "off", + "@typescript-eslint/no-explicit-any": ["off"], + "@typescript-eslint/no-var-requires": 0, + "vue/multi-word-component-names": "off" + } +}; diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..403adbc --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ +.DS_Store +node_modules +/dist + + +# local env files +.env.local +.env.*.local + +# Log files +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..27a5980 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,22 @@ +{ + "singleQuote": false, + "semi": true, + "trailingComma": "none", + "printWidth": 100, + "arrowParens": "always", + "tabWidth": 2, + "endOfLine": "auto", + "overrides": [ + { + "files": ".prettierrc", + "options": { "parser": "json" } + }, + { + "files": "*.vue", + "options": { + "parser": "vue", + "printWidth": 300 + } + } + ] +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..5bbfac6 --- /dev/null +++ b/README.md @@ -0,0 +1,50 @@ +## renren-ui +- renren-ui是基于Vue3、TypeScript、Element Plus、Vue Router、Pinia、Axios、Vite等开发,实现 【[renren-security](https://gitee.com/renrenio/renren-security)】 后台管理前端功能,提供一套更优的前端解决方案 +- 前后端分离,通过token进行数据交互,可独立部署 +- 动态菜单,通过菜单管理统一管理访问路由 +- 后端地址:https://gitee.com/renrenio/renren-security +- 演示地址:http://demo.open.renren.io/renren-security (账号密码:admin/admin) + +
+ +![输入图片说明](public/1.png) + +## 安装 + +您需要提前在本地安装[Node.js](https://nodejs.org/en/),版本号为:[18、20],再使用[Git](https://git-scm.com/)克隆项目或者直接下载项目后,然后通过`终端命令行`执行以下命令。 + +```bash +# 切换到项目根目录 + +# 安装插件 +npm install + +# 启动项目 +npm run dev +``` + +> 如网络不稳定,安装时出错或进度过慢!请移步 [cnpm](https://npmmirror.com/) 淘宝镜像进行安装。 + +启动完成后,会自动打开浏览器访问 [http://localhost:8001](http://localhost:8001),如您看到下面的页面代表`前端项目`运行成功!因为前后端分离项目,需保证`前端项目`和`后台项目`分别独立正常运行。 + +请留意下面的页面,其中`验证码`未能正常显示,控制台有`API请求`报错信息!这时需检查`后台项目`是否正常运行。 + + + +## 如何交流、反馈、参与贡献? +- 开发文档:https://www.renren.io/guide/security +- 官方社区:https://www.renren.io/community +- [人人开源](https://www.renren.io):https://www.renren.io +- 如需关注项目最新动态,请Watch、Star项目,同时也是对项目最好的支持 +- 技术讨论、二次开发等咨询、问题和建议,请移步到官方社区,我会在第一时间进行解答和回复! +- 微信扫码并关注【人人开源】,获得项目最新动态及更新提醒
+ +
+ +## 微信交流群 +我们提供了微信交流群,扫码下面的二维码,关注【人人开源】公众号,回复【加群】,即可根据提示加入微信群! +

+![输入图片说明](public/wechat.jpg) + +
+
diff --git a/babel.config.js b/babel.config.js new file mode 100644 index 0000000..162a3ea --- /dev/null +++ b/babel.config.js @@ -0,0 +1,3 @@ +module.exports = { + presets: ["@vue/cli-plugin-babel/preset"], +}; diff --git a/index.html b/index.html new file mode 100644 index 0000000..9d67175 --- /dev/null +++ b/index.html @@ -0,0 +1,20 @@ + + + + + + + 气象数据 - 管理系统 + + + +
+ + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..ab2d8f2 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,15896 @@ +{ + "name": "weather-data-ui", + "version": "5.5.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "weather-data-ui", + "version": "5.5.0", + "dependencies": { + "@element-plus/icons-vue": "2.3.1", + "@vueuse/core": "9.1.1", + "@wangeditor/editor": "5.1.1", + "@wangeditor/editor-for-vue": "^5.1.12", + "axios": "1.11.0", + "classnames": "^2.3.1", + "core-js": "^3.14.0", + "echarts": "^5.2.2", + "element-plus": "2.10.5", + "html2canvas": "^1.4.1", + "js-cookie": "^3.0.5", + "jspdf": "^4.2.0", + "lodash": "^4.17.21", + "mitt": "^2.1.0", + "nprogress": "^0.2.0", + "pinia": "2.3.1", + "qs": "^6.10.1", + "vue": "^3.5.18", + "vue-echarts": "^6.0.0", + "vue-router": "4.2.5" + }, + "devDependencies": { + "@types/js-cookie": "^3.0.6", + "@types/lodash": "^4.14.172", + "@types/nprogress": "^0.2.0", + "@types/papaparse": "^5.5.2", + "@types/qs": "^6.9.6", + "@types/sortablejs": "^1.10.6", + "@typescript-eslint/eslint-plugin": "^5.23.0", + "@typescript-eslint/parser": "^5.23.0", + "@vitejs/plugin-vue": "5.1.5", + "@vue/compiler-sfc": "^3.5.18", + "@vue/eslint-config-prettier": "^7.0.0", + "@vue/eslint-config-typescript": "^10.0.0", + "eslint": "^8.13.0", + "eslint-plugin-vue": "^8.6.0", + "less": "^4.1.1", + "less-loader": "^10.0.0", + "lint-staged": "^11.0.0", + "papaparse": "^5.5.3", + "prettier": "^2.6.2", + "sass": "^1.50.1", + "typescript": "^5.7.2", + "vite": "5.4.19", + "vite-plugin-html": "^3.2.2", + "vite-plugin-svg-icons": "2.0.1", + "vite-tsconfig-paths": "3.4.0", + "vue-tsc": "2.1.10" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.0", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", + "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.2", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz", + "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@cush/relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cush/relative/-/relative-1.0.0.tgz", + "integrity": "sha512-RpfLEtTlyIxeNPGKcokS+p3BZII/Q3bYxryFRglh5H3A3T8q9fsLYm72VYAMEOOIBLEa8o93kFLiBDUWKrwXZA==", + "dev": true + }, + "node_modules/@element-plus/icons-vue": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz", + "integrity": "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==", + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.1.tgz", + "integrity": "sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.49.0.tgz", + "integrity": "sha512-1S8uAY/MTJqVx0SC4epBq+N2yhuwtNwLbJYNZyhL2pO1ZVKn5HFXav5T41Ryzy9K9V7ZId2JB2oy/W4aCd9/2w==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", + "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", + "dependencies": { + "@floating-ui/utils": "^0.1.3" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", + "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "dependencies": { + "@floating-ui/core": "^1.4.2", + "@floating-ui/utils": "^0.1.3" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.3.tgz", + "integrity": "sha512-uvnFKtPgzLnpzzTRfhDlvXX0kLYi9lDRQbcDmT8iXl71Rx+uwSuaUIQl3DNC7w5OweAQ7XQMDObML+KaYDQfng==" + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "name": "@sxzz/popperjs-es", + "version": "2.11.7", + "resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", + "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "dependencies": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.2.tgz", + "integrity": "sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.2.tgz", + "integrity": "sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.2.tgz", + "integrity": "sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.2.tgz", + "integrity": "sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.2.tgz", + "integrity": "sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.2.tgz", + "integrity": "sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.2.tgz", + "integrity": "sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.2.tgz", + "integrity": "sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.2.tgz", + "integrity": "sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.2.tgz", + "integrity": "sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.2.tgz", + "integrity": "sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.2.tgz", + "integrity": "sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.2.tgz", + "integrity": "sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.2.tgz", + "integrity": "sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.2.tgz", + "integrity": "sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.2.tgz", + "integrity": "sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.2.tgz", + "integrity": "sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.2.tgz", + "integrity": "sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.2.tgz", + "integrity": "sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.2.tgz", + "integrity": "sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@transloadit/prettier-bytes": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz", + "integrity": "sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA==" + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/eslint": { + "version": "8.44.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.2.tgz", + "integrity": "sha512-sdPRb9K6iL5XZOmBubg8yiFp5yS/JdUDQsq5e6h95km91MCYMuvp7mh1fjPEYUhvHepKpZOjnEaMBR4PxjWDzg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/event-emitter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@types/event-emitter/-/event-emitter-0.3.3.tgz", + "integrity": "sha512-UfnOK1pIxO7P+EgPRZXD9jMpimd8QEFcEZ5R67R1UhGbv4zghU5+NE7U8M8G9H5Jc8FI51rqDWQs6FtUfq2e/Q==" + }, + "node_modules/@types/js-cookie": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-3.0.6.tgz", + "integrity": "sha512-wkw9yd1kEXOPnvEeEV1Go1MmxtBJL0RR79aOTAApecWFVu7w0NNXNqhcWgvw2YgZDYadliXkl14pa3WXw5jlCQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/lodash": { + "version": "4.14.198", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.198.tgz", + "integrity": "sha512-trNJ/vtMZYMLhfN45uLq4ShQSw0/S7xCTLLVM+WM1rmFpba/VS42jVUgaO3w/NOLiWR/09lnYk0yMaA/atdIsg==" + }, + "node_modules/@types/lodash-es": { + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.9.tgz", + "integrity": "sha512-ZTcmhiI3NNU7dEvWLZJkzG6ao49zOIjEgIE0RgV7wbPxU0f2xT3VSAHw2gmst8swH6V0YkLRGp4qPlX/6I90MQ==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/node": { + "version": "20.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.2.tgz", + "integrity": "sha512-Y+/1vGBHV/cYk6OI1Na/LHzwnlNCAfU3ZNGrc1LdRe/LAIbdDPTTv/HU3M7yXN448aTVDq3eKRm2cg7iKLb8gw==", + "dev": true + }, + "node_modules/@types/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@types/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-1cYJrqq9GezNFPsWTZpFut/d4CjpZqA0vhqDUPFWYKF1oIyBz5qnoYMzR+0C/T96t3ebLAC1SSnwrVOm5/j74A==", + "dev": true + }, + "node_modules/@types/pako": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/pako/-/pako-2.0.4.tgz", + "integrity": "sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==", + "license": "MIT" + }, + "node_modules/@types/papaparse": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@types/papaparse/-/papaparse-5.5.2.tgz", + "integrity": "sha512-gFnFp/JMzLHCwRf7tQHrNnfhN4eYBVYYI897CGX4MY1tzY9l2aLkVyx2IlKZ/SAqDbB3I1AOZW5gTMGGsqWliA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.8", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.8.tgz", + "integrity": "sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg==", + "dev": true + }, + "node_modules/@types/raf": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", + "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", + "license": "MIT", + "optional": true + }, + "node_modules/@types/semver": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.2.tgz", + "integrity": "sha512-7aqorHYgdNO4DM36stTiGO3DvKoex9TQRwsJU6vMaFGyqpBA1MNZkz+PG3gaNUPpTAOYhT1WR7M1JyA3fbS9Cw==", + "dev": true + }, + "node_modules/@types/sortablejs": { + "version": "1.15.8", + "resolved": "https://registry.npmjs.org/@types/sortablejs/-/sortablejs-1.15.8.tgz", + "integrity": "sha512-b79830lW+RZfwaztgs1aVPgbasJ8e7AXtZYHTELNXZPsERt4ymJdjV4OccDbHQAvHrCcFpbF78jkm0R6h/pZVg==", + "dev": true + }, + "node_modules/@types/svgo": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/@types/svgo/-/svgo-2.6.4.tgz", + "integrity": "sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.15", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.15.tgz", + "integrity": "sha512-w7hEHXnPMEZ+4nGKl/KDRVpxkwYxYExuHOYXyzIzCDzEZ9ZCGMAewulr9IqJu2LR4N37fcnb1XVeuZ09qgOxhA==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@uppy/companion-client": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@uppy/companion-client/-/companion-client-2.2.2.tgz", + "integrity": "sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og==", + "dependencies": { + "@uppy/utils": "^4.1.2", + "namespace-emitter": "^2.0.1" + } + }, + "node_modules/@uppy/core": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@uppy/core/-/core-2.3.4.tgz", + "integrity": "sha512-iWAqppC8FD8mMVqewavCz+TNaet6HPXitmGXpGGREGrakZ4FeuWytVdrelydzTdXx6vVKkOmI2FLztGg73sENQ==", + "dependencies": { + "@transloadit/prettier-bytes": "0.0.7", + "@uppy/store-default": "^2.1.1", + "@uppy/utils": "^4.1.3", + "lodash.throttle": "^4.1.1", + "mime-match": "^1.0.2", + "namespace-emitter": "^2.0.1", + "nanoid": "^3.1.25", + "preact": "^10.5.13" + } + }, + "node_modules/@uppy/store-default": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@uppy/store-default/-/store-default-2.1.1.tgz", + "integrity": "sha512-xnpTxvot2SeAwGwbvmJ899ASk5tYXhmZzD/aCFsXePh/v8rNvR2pKlcQUH7cF/y4baUGq3FHO/daKCok/mpKqQ==" + }, + "node_modules/@uppy/utils": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@uppy/utils/-/utils-4.1.3.tgz", + "integrity": "sha512-nTuMvwWYobnJcytDO3t+D6IkVq/Qs4Xv3vyoEZ+Iaf8gegZP+rEyoaFT2CK5XLRMienPyqRqNbIfRuFaOWSIFw==", + "dependencies": { + "lodash.throttle": "^4.1.1" + } + }, + "node_modules/@uppy/xhr-upload": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@uppy/xhr-upload/-/xhr-upload-2.1.3.tgz", + "integrity": "sha512-YWOQ6myBVPs+mhNjfdWsQyMRWUlrDLMoaG7nvf/G6Y3GKZf8AyjFDjvvJ49XWQ+DaZOftGkHmF1uh/DBeGivJQ==", + "dependencies": { + "@uppy/companion-client": "^2.2.2", + "@uppy/utils": "^4.1.2", + "nanoid": "^3.1.25" + }, + "peerDependencies": { + "@uppy/core": "^2.3.3" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.1.5", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-5.1.5.tgz", + "integrity": "sha512-dlnib73G05CDBAUR/YpuZcQQ47fpjihnnNouAAqN62z+oqSsWJ+kh52GRzIxpkgFG3q11eXK7Di7RMmoCwISZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-2.4.22.tgz", + "integrity": "sha512-gp4M7Di5KgNyIyO903wTClYBavRt6UyFNpc5LWfyZr1lBsTUY+QrVZfmbNF2aCyfklBOVk9YC4p+zkwoyT7ECg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.22" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-2.4.22.tgz", + "integrity": "sha512-L2nVr/1vei0xKRgO2tYVXtJYd09HTRjaZi418e85Q+QdbbqA8h7bBjfNyPPSsjnrOO4l4kaAo78c8SQUAdHvgA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-2.4.22.tgz", + "integrity": "sha512-6ZczlJW1/GWTrNnkmZxJp4qyBt/SGVlcTuCWpI5zLrdPdCZsj66Aff9ZsfFaT3TyjG8zVYgBMYPuCm/eRkpcpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.22", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.18.tgz", + "integrity": "sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.0", + "@vue/shared": "3.5.18", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-core/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.18.tgz", + "integrity": "sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.18.tgz", + "integrity": "sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.0", + "@vue/compiler-core": "3.5.18", + "@vue/compiler-dom": "3.5.18", + "@vue/compiler-ssr": "3.5.18", + "@vue/shared": "3.5.18", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.17", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.18.tgz", + "integrity": "sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "node_modules/@vue/compiler-vue2": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", + "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/@vue/eslint-config-prettier": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-prettier/-/eslint-config-prettier-7.1.0.tgz", + "integrity": "sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==", + "dev": true, + "dependencies": { + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^4.0.0" + }, + "peerDependencies": { + "eslint": ">= 7.28.0", + "prettier": ">= 2.0.0" + } + }, + "node_modules/@vue/eslint-config-typescript": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-10.0.0.tgz", + "integrity": "sha512-F94cL8ug3FaYXlCfU5/wiGjk1qeadmoBpRGAOBq+qre3Smdupa59dd6ZJrsfRODpsMPyTG7330juMDsUvpZ3Rw==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "vue-eslint-parser": "^8.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0", + "eslint-plugin-vue": "^8.0.1" + } + }, + "node_modules/@vue/language-core": { + "version": "2.1.10", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.1.10.tgz", + "integrity": "sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~2.4.8", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^0.2.0", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.18.tgz", + "integrity": "sha512-x0vPO5Imw+3sChLM5Y+B6G1zPjwdOri9e8V21NnTnlEvkxatHEH5B5KEAJcjuzQ7BsjGrKtfzuQ5eQwXh8HXBg==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.18" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.18.tgz", + "integrity": "sha512-DUpHa1HpeOQEt6+3nheUfqVXRog2kivkXHUhoqJiKR33SO4x+a5uNOMkV487WPerQkL0vUuRvq/7JhRgLW3S+w==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.18.tgz", + "integrity": "sha512-YwDj71iV05j4RnzZnZtGaXwPoUWeRsqinblgVJwR8XTXYZ9D5PbahHQgsbmzUvCWNF6x7siQ89HgnX5eWkr3mw==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.18", + "@vue/runtime-core": "3.5.18", + "@vue/shared": "3.5.18", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.18.tgz", + "integrity": "sha512-PvIHLUoWgSbDG7zLHqSqaCoZvHi6NNmfVFOqO+OnwvqMz/tqQr3FuGWS8ufluNddk7ZLBJYMrjcw1c6XzR12mA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.18", + "@vue/shared": "3.5.18" + }, + "peerDependencies": { + "vue": "3.5.18" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.18.tgz", + "integrity": "sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==", + "license": "MIT" + }, + "node_modules/@vueuse/core": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.1.1.tgz", + "integrity": "sha512-QfuaNWRDMQcCUwXylCyYhPC3ScS9Tiiz4J0chdwr3vOemBwRToSywq8MP+ZegKYFnbETzRY8G/5zC+ca30wrRQ==", + "dependencies": { + "@types/web-bluetooth": "^0.0.15", + "@vueuse/metadata": "9.1.1", + "@vueuse/shared": "9.1.1", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/metadata": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.1.1.tgz", + "integrity": "sha512-XZ2KtSW+85LLHB/IdGILPAtbIVHasPsAW7aqz3BRMzJdAQWRiM/FGa1OKBwLbXtUw/AmjKYFlZJo7eOFIBXRog==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.1.1.tgz", + "integrity": "sha512-c+IfcOYmHiHqoEa3ED1Tbpue5GHmoUmTp8PtO4YbczthtY155Rt6DmWhjxMLXBF1Bcidagxljmp/7xtAzEHXLw==", + "dependencies": { + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@wangeditor/basic-modules": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz", + "integrity": "sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==", + "dependencies": { + "is-url": "^1.2.4" + }, + "peerDependencies": { + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "lodash.throttle": "^4.1.1", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/code-highlight": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz", + "integrity": "sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==", + "dependencies": { + "prismjs": "^1.23.0" + }, + "peerDependencies": { + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/core": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@wangeditor/core/-/core-1.1.19.tgz", + "integrity": "sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==", + "dependencies": { + "@types/event-emitter": "^0.3.3", + "event-emitter": "^0.3.5", + "html-void-elements": "^2.0.0", + "i18next": "^20.4.0", + "scroll-into-view-if-needed": "^2.2.28", + "slate-history": "^0.66.0" + }, + "peerDependencies": { + "@uppy/core": "^2.1.1", + "@uppy/xhr-upload": "^2.0.3", + "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.isequal": "^4.5.0", + "lodash.throttle": "^4.1.1", + "lodash.toarray": "^4.4.0", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/editor": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@wangeditor/editor/-/editor-5.1.1.tgz", + "integrity": "sha512-BtccuHFm0QvYunIhIu7tllQWkwppkmEkD3OJ5Mn+F0REPQ/Z3HiEXbtlss2t9c/kHO4CtiFwv2XD/k/VEg7taA==", + "dependencies": { + "@uppy/core": "^2.1.1", + "@uppy/xhr-upload": "^2.0.3", + "@wangeditor/basic-modules": "^1.1.1", + "@wangeditor/code-highlight": "^1.0.2", + "@wangeditor/core": "^1.1.1", + "@wangeditor/list-module": "^1.0.2", + "@wangeditor/table-module": "^1.1.0", + "@wangeditor/upload-image-module": "^1.0.1", + "@wangeditor/video-module": "^1.1.0", + "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.isequal": "^4.5.0", + "lodash.throttle": "^4.1.1", + "lodash.toarray": "^4.4.0", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/editor-for-vue": { + "version": "5.1.12", + "resolved": "https://registry.npmjs.org/@wangeditor/editor-for-vue/-/editor-for-vue-5.1.12.tgz", + "integrity": "sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==", + "peerDependencies": { + "@wangeditor/editor": ">=5.1.0", + "vue": "^3.0.5" + } + }, + "node_modules/@wangeditor/list-module": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@wangeditor/list-module/-/list-module-1.0.5.tgz", + "integrity": "sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ==", + "peerDependencies": { + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/table-module": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@wangeditor/table-module/-/table-module-1.1.4.tgz", + "integrity": "sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w==", + "peerDependencies": { + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "lodash.isequal": "^4.5.0", + "lodash.throttle": "^4.1.1", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/upload-image-module": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz", + "integrity": "sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA==", + "peerDependencies": { + "@uppy/core": "^2.0.3", + "@uppy/xhr-upload": "^2.0.3", + "@wangeditor/basic-modules": "1.x", + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "lodash.foreach": "^4.5.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@wangeditor/video-module": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@wangeditor/video-module/-/video-module-1.1.4.tgz", + "integrity": "sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg==", + "peerDependencies": { + "@uppy/core": "^2.1.4", + "@uppy/xhr-upload": "^2.0.7", + "@wangeditor/core": "1.x", + "dom7": "^3.0.0", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/alien-signals": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/alien-signals/-/alien-signals-0.2.2.tgz", + "integrity": "sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==", + "dev": true, + "license": "MIT" + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/axios": { + "version": "1.11.0", + "resolved": "https://registry.npmmirror.com/axios/-/axios-1.11.0.tgz", + "integrity": "sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.4", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cache-base/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001534", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", + "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true + }, + "node_modules/canvg": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.11.tgz", + "integrity": "sha512-5ON+q7jCTgMp9cjpu4Jo6XbvfYwSB2Ow3kzHKfIyJfaCAOHLbdKPQqGKgfED/R5B+3TFFfe8pegYA+b423SRyA==", + "license": "MIT", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "node_modules/clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "dev": true, + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "node_modules/compute-scroll-into-view": { + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", + "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js": { + "version": "3.32.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.2.tgz", + "integrity": "sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "license": "MIT", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/css-select/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/css-select/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/dom7": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-3.0.0.tgz", + "integrity": "sha512-oNlcUdHsC4zb7Msx7JN3K0Nro1dzJ48knvBOnDPKJ2GV9wl1i5vydJZUSyOfrkKFDZEud/jBsTk92S/VGSAe/g==", + "dependencies": { + "ssr-window": "^3.0.0-alpha.1" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/dompurify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.1.tgz", + "integrity": "sha512-qkdCKzLNtrgPFP1Vo+98FRzJnBRGe4ffyCea9IwHB1fyxPOeNTHpLKYGd4Uk9xvNoH0ZoOjwZxNptyMwqrId1Q==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optional": true, + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, + "node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/echarts": { + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.4.3.tgz", + "integrity": "sha512-mYKxLxhzy6zyTi/FaEbJMOZU1ULGEQHaeIeuMR5L+JnJTpz+YR03mnnpBhbR4+UYJAgiXgpyTVLffPAjOTLkZA==", + "dependencies": { + "tslib": "2.3.0", + "zrender": "5.4.4" + } + }, + "node_modules/ejs": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz", + "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==", + "dev": true, + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.523.tgz", + "integrity": "sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg==", + "dev": true, + "peer": true + }, + "node_modules/element-plus": { + "version": "2.10.5", + "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.10.5.tgz", + "integrity": "sha512-O9wTDu3Tm51ACVByWrThtBhH4Ygefg1HGY5pyAaxnoIrj8uMN0GtZ4IREwR3Yw/6sM2HyxjrsGI/D46iUVP97A==", + "license": "MIT", + "dependencies": { + "@ctrl/tinycolor": "^3.4.1", + "@element-plus/icons-vue": "^2.3.1", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", + "@types/lodash": "^4.14.182", + "@types/lodash-es": "^4.17.6", + "@vueuse/core": "^9.1.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.13", + "escape-html": "^1.0.3", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "lodash-unified": "^1.0.2", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "dev": true, + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.1.tgz", + "integrity": "sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==", + "dev": true, + "peer": true + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.49.0.tgz", + "integrity": "sha512-jw03ENfm6VJI0jA9U+8H5zfl5b+FvuU3YYvZRdZHOlU2ggJkxrlkJH4HcDrZpj6YwD8kuYqvQM8LyesoazrSOQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.49.0", + "@humanwhocodes/config-array": "^0.11.11", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-vue": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-8.7.1.tgz", + "integrity": "sha512-28sbtm4l4cOzoO1LtzQPxfxhQABararUb1JtqusQqObJpWX2e/gmVyeYVfepizPFne0Q5cILkYGiBoV36L12Wg==", + "dev": true, + "dependencies": { + "eslint-utils": "^3.0.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.0.1", + "postcss-selector-parser": "^6.0.9", + "semver": "^7.3.5", + "vue-eslint-parser": "^8.0.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "dev": true, + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-png": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/fast-png/-/fast-png-6.4.0.tgz", + "integrity": "sha512-kAqZq1TlgBjZcLr5mcN6NP5Rv4V2f22z00c3g8vRrwkcqjerx7BEhPbOnWCPqaHUl2XWQBJQvOT/FQhdMT7X/Q==", + "license": "MIT", + "dependencies": { + "@types/pako": "^2.0.3", + "iobuffer": "^5.3.2", + "pako": "^2.1.0" + } + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==", + "license": "MIT" + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "dev": true, + "dependencies": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "dev": true, + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-regex": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/glob-regex/-/glob-regex-0.3.2.tgz", + "integrity": "sha512-m5blUd3/OqDTWwzBBtWBPrGlAzatRywHameHeekAZyZrskYouOGdNB8T/q6JucucvJXtOuyHIn0/Yia7iDasDw==", + "dev": true + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "dev": true, + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-value/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dev": true, + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "license": "MIT", + "dependencies": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/i18next": { + "version": "20.6.1", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-20.6.1.tgz", + "integrity": "sha512-yCMYTMEJ9ihCwEQQ3phLo7I/Pwycf8uAx+sRHwwk5U9Aui/IZYgQRyMqXafQOw5QQ7DM1Z+WyEXWIqSuJHhG2A==", + "dependencies": { + "@babel/runtime": "^7.12.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/immutable": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", + "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/iobuffer": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/iobuffer/-/iobuffer-5.4.0.tgz", + "integrity": "sha512-DRebOWuqDvxunfkNJAlc3IzWIPD5xVxwUNbHr7xKB8E6aLJxIPfNX3CoMJghcFjpv6RWQsrcJbghtEwSPoJqMA==", + "license": "MIT" + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-descriptor/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hotkey": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.2.0.tgz", + "integrity": "sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==" + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jake": { + "version": "10.8.7", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz", + "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==", + "dev": true, + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jspdf": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-4.2.0.tgz", + "integrity": "sha512-hR/hnRevAXXlrjeqU5oahOE+Ln9ORJUB5brLHHqH67A+RBQZuFr5GkbI9XQI8OUFSEezKegsi45QRpc4bGj75Q==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.6", + "fast-png": "^6.2.0", + "fflate": "^0.8.1" + }, + "optionalDependencies": { + "canvg": "^3.0.11", + "core-js": "^3.6.0", + "dompurify": "^3.3.1", + "html2canvas": "^1.0.0-rc.5" + } + }, + "node_modules/keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/less": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/lint-staged": { + "version": "11.2.6", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-11.2.6.tgz", + "integrity": "sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg==", + "dev": true, + "dependencies": { + "cli-truncate": "2.1.0", + "colorette": "^1.4.0", + "commander": "^8.2.0", + "cosmiconfig": "^7.0.1", + "debug": "^4.3.2", + "enquirer": "^2.3.6", + "execa": "^5.1.1", + "listr2": "^3.12.2", + "micromatch": "^4.0.4", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "3.3.0", + "supports-color": "8.1.1" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "peerDependencies": { + "@types/lodash-es": "*", + "lodash": "*", + "lodash-es": "*" + } + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" + }, + "node_modules/lodash.toarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", + "integrity": "sha512-QyffEA3i5dma5q2490+SgCvDN0pXLmRGSyAANuVi0HQ01Pkfr9fuoKQW8wm1wGBnJITs/mS7wQvS6VshUEBFCw==" + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "dev": true, + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "node_modules/merge-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-options/-/merge-options-1.0.1.tgz", + "integrity": "sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==", + "dev": true, + "dependencies": { + "is-plain-obj": "^1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mime-match/-/mime-match-1.0.2.tgz", + "integrity": "sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==", + "dependencies": { + "wildcard": "^1.1.0" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mitt": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-2.1.0.tgz", + "integrity": "sha512-ILj2TpLiysu2wkBbWjAmww7TkZb65aiQO+DkVdUTBpBXq+MHYiETENkKFMtsJZX1Lf4pe4QOrTSjIfUwN5lRdg==" + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/namespace-emitter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/namespace-emitter/-/namespace-emitter-2.0.1.tgz", + "integrity": "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g==" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", + "dev": true, + "optional": true, + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "peer": true + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-html-parser": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-5.4.2.tgz", + "integrity": "sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==", + "dev": true, + "dependencies": { + "css-select": "^4.2.1", + "he": "1.2.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true, + "peer": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "dev": true, + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "dev": true, + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-visit/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", + "license": "(MIT AND Zlib)" + }, + "node_modules/papaparse": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.5.3.tgz", + "integrity": "sha512-5QvjGxYVjxO59MGU2lHVYpRWBBtKHnlIAcSe1uNFCkkptUh63NFRj0FJQm7nR67puEruUci/ZkjmEFrjCAyP4A==", + "dev": true, + "license": "MIT" + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-0.2.0.tgz", + "integrity": "sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==", + "dev": true + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "license": "MIT", + "optional": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.4.4", + "vue": "^2.7.0 || ^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-prefix-selector": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/postcss-prefix-selector/-/postcss-prefix-selector-1.16.0.tgz", + "integrity": "sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==", + "dev": true, + "peerDependencies": { + "postcss": ">4 <9" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/posthtml": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.9.2.tgz", + "integrity": "sha512-spBB5sgC4cv2YcW03f/IAUN1pgDJWNWD8FzkyY4mArLUMJW+KlQhlmUdKAHQuPfb00Jl5xIfImeOsf6YL8QK7Q==", + "dev": true, + "dependencies": { + "posthtml-parser": "^0.2.0", + "posthtml-render": "^1.0.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/posthtml-parser": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.2.1.tgz", + "integrity": "sha512-nPC53YMqJnc/+1x4fRYFfm81KV2V+G9NZY+hTohpYg64Ay7NemWWcV4UWuy/SgMupqQ3kJ88M/iRfZmSnxT+pw==", + "dev": true, + "dependencies": { + "htmlparser2": "^3.8.3", + "isobject": "^2.1.0" + } + }, + "node_modules/posthtml-rename-id": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/posthtml-rename-id/-/posthtml-rename-id-1.0.12.tgz", + "integrity": "sha512-UKXf9OF/no8WZo9edRzvuMenb6AD5hDLzIepJW+a4oJT+T/Lx7vfMYWT4aWlGNQh0WMhnUx1ipN9OkZ9q+ddEw==", + "dev": true, + "dependencies": { + "escape-string-regexp": "1.0.5" + } + }, + "node_modules/posthtml-rename-id/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/posthtml-render": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-1.4.0.tgz", + "integrity": "sha512-W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/posthtml-svg-mode": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/posthtml-svg-mode/-/posthtml-svg-mode-1.0.3.tgz", + "integrity": "sha512-hEqw9NHZ9YgJ2/0G7CECOeuLQKZi8HjWLkBaSVtOWjygQ9ZD8P7tqeowYs7WrFdKsWEKG7o+IlsPY8jrr0CJpQ==", + "dev": true, + "dependencies": { + "merge-options": "1.0.1", + "posthtml": "^0.9.2", + "posthtml-parser": "^0.2.1", + "posthtml-render": "^1.0.6" + } + }, + "node_modules/preact": { + "version": "10.17.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.17.1.tgz", + "integrity": "sha512-X9BODrvQ4Ekwv9GURm9AKAGaomqXmip7NQTZgY7gcNmr7XE83adOMJvd3N42id1tMFU7ojiynRsYnY6/BRFxLA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", + "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "license": "MIT", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/recrawl-sync": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recrawl-sync/-/recrawl-sync-2.2.3.tgz", + "integrity": "sha512-vSaTR9t+cpxlskkdUFrsEpnf67kSmPk66yAGT1fZPrDudxQjoMzPgQhSMImQ0pAw5k0NPirefQfhopSjhdUtpQ==", + "dev": true, + "dependencies": { + "@cush/relative": "^1.0.0", + "glob-regex": "^0.3.0", + "slash": "^3.0.0", + "sucrase": "^3.20.3", + "tslib": "^1.9.3" + } + }, + "node_modules/recrawl-sync/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT", + "optional": true + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/resize-detector": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/resize-detector/-/resize-detector-0.3.0.tgz", + "integrity": "sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ==" + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", + "dev": true + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "license": "MIT OR SEE LICENSE IN FEEL-FREE.md", + "optional": true, + "engines": { + "node": ">= 0.8.15" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.46.2.tgz", + "integrity": "sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.46.2", + "@rollup/rollup-android-arm64": "4.46.2", + "@rollup/rollup-darwin-arm64": "4.46.2", + "@rollup/rollup-darwin-x64": "4.46.2", + "@rollup/rollup-freebsd-arm64": "4.46.2", + "@rollup/rollup-freebsd-x64": "4.46.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.46.2", + "@rollup/rollup-linux-arm-musleabihf": "4.46.2", + "@rollup/rollup-linux-arm64-gnu": "4.46.2", + "@rollup/rollup-linux-arm64-musl": "4.46.2", + "@rollup/rollup-linux-loongarch64-gnu": "4.46.2", + "@rollup/rollup-linux-ppc64-gnu": "4.46.2", + "@rollup/rollup-linux-riscv64-gnu": "4.46.2", + "@rollup/rollup-linux-riscv64-musl": "4.46.2", + "@rollup/rollup-linux-s390x-gnu": "4.46.2", + "@rollup/rollup-linux-x64-gnu": "4.46.2", + "@rollup/rollup-linux-x64-musl": "4.46.2", + "@rollup/rollup-win32-arm64-msvc": "4.46.2", + "@rollup/rollup-win32-ia32-msvc": "4.46.2", + "@rollup/rollup-win32-x64-msvc": "4.46.2", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "dev": true, + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "node_modules/sass": { + "version": "1.67.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.67.0.tgz", + "integrity": "sha512-SVrO9ZeX/QQyEGtuZYCVxoeAL5vGlYjJ9p4i4HFuekWl8y/LtJ7tJc10Z+ck1c8xOuoBm2MYzcLfTAffD0pl/A==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scroll-into-view-if-needed": { + "version": "2.2.31", + "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz", + "integrity": "sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==", + "dependencies": { + "compute-scroll-into-view": "^1.0.20" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slate": { + "version": "0.72.8", + "resolved": "https://registry.npmjs.org/slate/-/slate-0.72.8.tgz", + "integrity": "sha512-/nJwTswQgnRurpK+bGJFH1oM7naD5qDmHd89JyiKNT2oOKD8marW0QSBtuFnwEbL5aGCS8AmrhXQgNOsn4osAw==", + "dependencies": { + "immer": "^9.0.6", + "is-plain-object": "^5.0.0", + "tiny-warning": "^1.0.3" + } + }, + "node_modules/slate-history": { + "version": "0.66.0", + "resolved": "https://registry.npmjs.org/slate-history/-/slate-history-0.66.0.tgz", + "integrity": "sha512-6MWpxGQZiMvSINlCbMW43E2YBSVMCMCIwQfBzGssjWw4kb0qfvj0pIdblWNRQZD0hR6WHP+dHHgGSeVdMWzfng==", + "dependencies": { + "is-plain-object": "^5.0.0" + }, + "peerDependencies": { + "slate": ">=0.65.3" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snabbdom": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/snabbdom/-/snabbdom-3.5.1.tgz", + "integrity": "sha512-wHMNIOjkm/YNE5EM3RCbr/+DVgPg6AqQAX1eOxO46zYNvCXjKP5Y865tqQj3EXnaMBjkxmQA5jFuDpDK/dbfiA==", + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dev": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated", + "dev": true + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssr-window": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-3.0.0.tgz", + "integrity": "sha512-q+8UfWDg9Itrg0yWK7oe5p/XRCJpJF9OBtXfOPgSJl+u3Xd5KI328RUEvUqSMVM9CiQUEf1QdBzJMkYGErj9QA==" + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", + "dev": true + }, + "node_modules/stackblur-canvas": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz", + "integrity": "sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "dev": true, + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sucrase": { + "version": "3.34.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", + "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "7.1.6", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/svg-baker": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/svg-baker/-/svg-baker-1.7.0.tgz", + "integrity": "sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==", + "dev": true, + "dependencies": { + "bluebird": "^3.5.0", + "clone": "^2.1.1", + "he": "^1.1.1", + "image-size": "^0.5.1", + "loader-utils": "^1.1.0", + "merge-options": "1.0.1", + "micromatch": "3.1.0", + "postcss": "^5.2.17", + "postcss-prefix-selector": "^1.6.0", + "posthtml-rename-id": "^1.0", + "posthtml-svg-mode": "^1.0.3", + "query-string": "^4.3.2", + "traverse": "^0.6.6" + } + }, + "node_modules/svg-baker/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/chalk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svg-baker/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svg-baker/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/micromatch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.0.tgz", + "integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.2.2", + "define-property": "^1.0.0", + "extend-shallow": "^2.0.1", + "extglob": "^2.0.2", + "fragment-cache": "^0.2.1", + "kind-of": "^5.0.2", + "nanomatch": "^1.2.1", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/svg-baker/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svg-baker/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.19.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.4.tgz", + "integrity": "sha512-6p1DjHeuluwxDXcuT9VR8p64klWJKo1ILiy19s6C9+0Bh2+NWTX6nD9EPppiER4ICkHDVB1RkVpin/YW2nQn/g==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.8" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "license": "MIT", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/to-regex/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/traverse": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", + "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/tsconfig-paths": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", + "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.9.2", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.2.tgz", + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "dev": true, + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "dev": true, + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", + "dev": true + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "license": "MIT", + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "5.4.19", + "resolved": "https://registry.npmmirror.com/vite/-/vite-5.4.19.tgz", + "integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-html": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/vite-plugin-html/-/vite-plugin-html-3.2.2.tgz", + "integrity": "sha512-vb9C9kcdzcIo/Oc3CLZVS03dL5pDlOFuhGlZYDCJ840BhWl/0nGeZWf3Qy7NlOayscY4Cm/QRgULCQkEZige5Q==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^4.2.0", + "colorette": "^2.0.16", + "connect-history-api-fallback": "^1.6.0", + "consola": "^2.15.3", + "dotenv": "^16.0.0", + "dotenv-expand": "^8.0.2", + "ejs": "^3.1.6", + "fast-glob": "^3.2.11", + "fs-extra": "^10.0.1", + "html-minifier-terser": "^6.1.0", + "node-html-parser": "^5.3.3", + "pathe": "^0.2.0" + }, + "peerDependencies": { + "vite": ">=2.0.0" + } + }, + "node_modules/vite-plugin-html/node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/vite-plugin-svg-icons": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/vite-plugin-svg-icons/-/vite-plugin-svg-icons-2.0.1.tgz", + "integrity": "sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==", + "dev": true, + "dependencies": { + "@types/svgo": "^2.6.1", + "cors": "^2.8.5", + "debug": "^4.3.3", + "etag": "^1.8.1", + "fs-extra": "^10.0.0", + "pathe": "^0.2.0", + "svg-baker": "1.7.0", + "svgo": "^2.8.0" + }, + "peerDependencies": { + "vite": ">=2.0.0" + } + }, + "node_modules/vite-tsconfig-paths": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-3.4.0.tgz", + "integrity": "sha512-os+oAdJxkZvNLmisVQ76eDdCWC3aH4bKTy3EXI5oJi//zQ0G+qJfUeFR6Need4iyzL/Xus9R7AECF/YfGS0ZEw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "recrawl-sync": "^2.0.3", + "tsconfig-paths": "^3.9.0" + }, + "peerDependencies": { + "vite": ">2.0.0-0" + } + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/vue": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.18.tgz", + "integrity": "sha512-7W4Y4ZbMiQ3SEo+m9lnoNpV9xG7QVMLa+/0RFwwiAVkeYoyGXqWE85jabU4pllJNUzqfLShJ5YLptewhCWUgNA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.18", + "@vue/compiler-sfc": "3.5.18", + "@vue/runtime-dom": "3.5.18", + "@vue/server-renderer": "3.5.18", + "@vue/shared": "3.5.18" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-echarts": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/vue-echarts/-/vue-echarts-6.6.1.tgz", + "integrity": "sha512-EpreTzlNeJ+eaUn0AhXEmKJk98xJGecgTqAdyZovoXWnhTxnlW2HuBM0ei3y8rLw1JCUabf8/sYvxjlr8SzBKQ==", + "hasInstallScript": true, + "dependencies": { + "resize-detector": "^0.3.0", + "vue-demi": "^0.13.11" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.5", + "echarts": "^5.4.1", + "vue": "^2.6.12 || ^3.1.1" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-echarts/node_modules/vue-demi": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz", + "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-eslint-parser": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz", + "integrity": "sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==", + "dev": true, + "dependencies": { + "debug": "^4.3.2", + "eslint-scope": "^7.0.0", + "eslint-visitor-keys": "^3.1.0", + "espree": "^9.0.0", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/vue-eslint-parser/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/vue-router": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.2.5.tgz", + "integrity": "sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==", + "dependencies": { + "@vue/devtools-api": "^6.5.0" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "2.1.10", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.1.10.tgz", + "integrity": "sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "~2.4.8", + "@vue/language-core": "2.1.10", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wildcard": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-1.1.2.tgz", + "integrity": "sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng==" + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zrender": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.4.4.tgz", + "integrity": "sha512-0VxCNJ7AGOMCWeHVyTrGzUgrK4asT4ml9PEkeGirAkKNYXYzoPJCLvmyfdoOXcjTHPs10OZVMfD1Rwg16AZyYw==", + "dependencies": { + "tslib": "2.3.0" + } + } + }, + "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, + "@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "requires": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==" + }, + "@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==" + }, + "@babel/highlight": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.28.0", + "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "requires": { + "@babel/types": "^7.28.0" + } + }, + "@babel/runtime": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", + "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==" + }, + "@babel/types": { + "version": "7.28.2", + "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", + "requires": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + } + }, + "@ctrl/tinycolor": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz", + "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==" + }, + "@cush/relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@cush/relative/-/relative-1.0.0.tgz", + "integrity": "sha512-RpfLEtTlyIxeNPGKcokS+p3BZII/Q3bYxryFRglh5H3A3T8q9fsLYm72VYAMEOOIBLEa8o93kFLiBDUWKrwXZA==", + "dev": true + }, + "@element-plus/icons-vue": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz", + "integrity": "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==", + "requires": {} + }, + "@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "dev": true, + "optional": true + }, + "@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.3.0" + } + }, + "@eslint-community/regexpp": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.1.tgz", + "integrity": "sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==", + "dev": true + }, + "@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + } + }, + "@eslint/js": { + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.49.0.tgz", + "integrity": "sha512-1S8uAY/MTJqVx0SC4epBq+N2yhuwtNwLbJYNZyhL2pO1ZVKn5HFXav5T41Ryzy9K9V7ZId2JB2oy/W4aCd9/2w==", + "dev": true + }, + "@floating-ui/core": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", + "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", + "requires": { + "@floating-ui/utils": "^0.1.3" + } + }, + "@floating-ui/dom": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", + "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "requires": { + "@floating-ui/core": "^1.4.2", + "@floating-ui/utils": "^0.1.3" + } + }, + "@floating-ui/utils": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.3.tgz", + "integrity": "sha512-uvnFKtPgzLnpzzTRfhDlvXX0kLYi9lDRQbcDmT8iXl71Rx+uwSuaUIQl3DNC7w5OweAQ7XQMDObML+KaYDQfng==" + }, + "@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@popperjs/core": { + "version": "npm:@sxzz/popperjs-es@2.11.7", + "resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz", + "integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==" + }, + "@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "dev": true, + "requires": { + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" + } + }, + "@rollup/rollup-android-arm-eabi": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.2.tgz", + "integrity": "sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-android-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.2.tgz", + "integrity": "sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-darwin-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.2.tgz", + "integrity": "sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-darwin-x64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.2.tgz", + "integrity": "sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-arm64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.2.tgz", + "integrity": "sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-x64": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.2.tgz", + "integrity": "sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.2.tgz", + "integrity": "sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-arm-musleabihf": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.2.tgz", + "integrity": "sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-arm64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.2.tgz", + "integrity": "sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-arm64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.2.tgz", + "integrity": "sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.2.tgz", + "integrity": "sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-ppc64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.2.tgz", + "integrity": "sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-riscv64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.2.tgz", + "integrity": "sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-riscv64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.2.tgz", + "integrity": "sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-s390x-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.2.tgz", + "integrity": "sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-x64-gnu": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.2.tgz", + "integrity": "sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-x64-musl": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.2.tgz", + "integrity": "sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-win32-arm64-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.2.tgz", + "integrity": "sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g==", + "dev": true, + "optional": true + }, + "@rollup/rollup-win32-ia32-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.2.tgz", + "integrity": "sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-win32-x64-msvc": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.2.tgz", + "integrity": "sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg==", + "dev": true, + "optional": true + }, + "@transloadit/prettier-bytes": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz", + "integrity": "sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA==" + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true + }, + "@types/eslint": { + "version": "8.44.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.2.tgz", + "integrity": "sha512-sdPRb9K6iL5XZOmBubg8yiFp5yS/JdUDQsq5e6h95km91MCYMuvp7mh1fjPEYUhvHepKpZOjnEaMBR4PxjWDzg==", + "dev": true, + "peer": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "peer": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true + }, + "@types/event-emitter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@types/event-emitter/-/event-emitter-0.3.3.tgz", + "integrity": "sha512-UfnOK1pIxO7P+EgPRZXD9jMpimd8QEFcEZ5R67R1UhGbv4zghU5+NE7U8M8G9H5Jc8FI51rqDWQs6FtUfq2e/Q==" + }, + "@types/js-cookie": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-3.0.6.tgz", + "integrity": "sha512-wkw9yd1kEXOPnvEeEV1Go1MmxtBJL0RR79aOTAApecWFVu7w0NNXNqhcWgvw2YgZDYadliXkl14pa3WXw5jlCQ==", + "dev": true + }, + "@types/json-schema": { + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "@types/lodash": { + "version": "4.14.198", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.198.tgz", + "integrity": "sha512-trNJ/vtMZYMLhfN45uLq4ShQSw0/S7xCTLLVM+WM1rmFpba/VS42jVUgaO3w/NOLiWR/09lnYk0yMaA/atdIsg==" + }, + "@types/lodash-es": { + "version": "4.17.9", + "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.9.tgz", + "integrity": "sha512-ZTcmhiI3NNU7dEvWLZJkzG6ao49zOIjEgIE0RgV7wbPxU0f2xT3VSAHw2gmst8swH6V0YkLRGp4qPlX/6I90MQ==", + "requires": { + "@types/lodash": "*" + } + }, + "@types/node": { + "version": "20.6.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.2.tgz", + "integrity": "sha512-Y+/1vGBHV/cYk6OI1Na/LHzwnlNCAfU3ZNGrc1LdRe/LAIbdDPTTv/HU3M7yXN448aTVDq3eKRm2cg7iKLb8gw==", + "dev": true + }, + "@types/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@types/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-1cYJrqq9GezNFPsWTZpFut/d4CjpZqA0vhqDUPFWYKF1oIyBz5qnoYMzR+0C/T96t3ebLAC1SSnwrVOm5/j74A==", + "dev": true + }, + "@types/pako": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/pako/-/pako-2.0.4.tgz", + "integrity": "sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==" + }, + "@types/papaparse": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@types/papaparse/-/papaparse-5.5.2.tgz", + "integrity": "sha512-gFnFp/JMzLHCwRf7tQHrNnfhN4eYBVYYI897CGX4MY1tzY9l2aLkVyx2IlKZ/SAqDbB3I1AOZW5gTMGGsqWliA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "@types/qs": { + "version": "6.9.8", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.8.tgz", + "integrity": "sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg==", + "dev": true + }, + "@types/raf": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", + "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", + "optional": true + }, + "@types/semver": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.2.tgz", + "integrity": "sha512-7aqorHYgdNO4DM36stTiGO3DvKoex9TQRwsJU6vMaFGyqpBA1MNZkz+PG3gaNUPpTAOYhT1WR7M1JyA3fbS9Cw==", + "dev": true + }, + "@types/sortablejs": { + "version": "1.15.8", + "resolved": "https://registry.npmjs.org/@types/sortablejs/-/sortablejs-1.15.8.tgz", + "integrity": "sha512-b79830lW+RZfwaztgs1aVPgbasJ8e7AXtZYHTELNXZPsERt4ymJdjV4OccDbHQAvHrCcFpbF78jkm0R6h/pZVg==", + "dev": true + }, + "@types/svgo": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/@types/svgo/-/svgo-2.6.4.tgz", + "integrity": "sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "optional": true + }, + "@types/web-bluetooth": { + "version": "0.0.15", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.15.tgz", + "integrity": "sha512-w7hEHXnPMEZ+4nGKl/KDRVpxkwYxYExuHOYXyzIzCDzEZ9ZCGMAewulr9IqJu2LR4N37fcnb1XVeuZ09qgOxhA==" + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "dev": true, + "requires": { + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + } + }, + "@uppy/companion-client": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@uppy/companion-client/-/companion-client-2.2.2.tgz", + "integrity": "sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og==", + "requires": { + "@uppy/utils": "^4.1.2", + "namespace-emitter": "^2.0.1" + } + }, + "@uppy/core": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@uppy/core/-/core-2.3.4.tgz", + "integrity": "sha512-iWAqppC8FD8mMVqewavCz+TNaet6HPXitmGXpGGREGrakZ4FeuWytVdrelydzTdXx6vVKkOmI2FLztGg73sENQ==", + "requires": { + "@transloadit/prettier-bytes": "0.0.7", + "@uppy/store-default": "^2.1.1", + "@uppy/utils": "^4.1.3", + "lodash.throttle": "^4.1.1", + "mime-match": "^1.0.2", + "namespace-emitter": "^2.0.1", + "nanoid": "^3.1.25", + "preact": "^10.5.13" + } + }, + "@uppy/store-default": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@uppy/store-default/-/store-default-2.1.1.tgz", + "integrity": "sha512-xnpTxvot2SeAwGwbvmJ899ASk5tYXhmZzD/aCFsXePh/v8rNvR2pKlcQUH7cF/y4baUGq3FHO/daKCok/mpKqQ==" + }, + "@uppy/utils": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@uppy/utils/-/utils-4.1.3.tgz", + "integrity": "sha512-nTuMvwWYobnJcytDO3t+D6IkVq/Qs4Xv3vyoEZ+Iaf8gegZP+rEyoaFT2CK5XLRMienPyqRqNbIfRuFaOWSIFw==", + "requires": { + "lodash.throttle": "^4.1.1" + } + }, + "@uppy/xhr-upload": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@uppy/xhr-upload/-/xhr-upload-2.1.3.tgz", + "integrity": "sha512-YWOQ6myBVPs+mhNjfdWsQyMRWUlrDLMoaG7nvf/G6Y3GKZf8AyjFDjvvJ49XWQ+DaZOftGkHmF1uh/DBeGivJQ==", + "requires": { + "@uppy/companion-client": "^2.2.2", + "@uppy/utils": "^4.1.2", + "nanoid": "^3.1.25" + } + }, + "@vitejs/plugin-vue": { + "version": "5.1.5", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-5.1.5.tgz", + "integrity": "sha512-dlnib73G05CDBAUR/YpuZcQQ47fpjihnnNouAAqN62z+oqSsWJ+kh52GRzIxpkgFG3q11eXK7Di7RMmoCwISZA==", + "dev": true, + "requires": {} + }, + "@volar/language-core": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-2.4.22.tgz", + "integrity": "sha512-gp4M7Di5KgNyIyO903wTClYBavRt6UyFNpc5LWfyZr1lBsTUY+QrVZfmbNF2aCyfklBOVk9YC4p+zkwoyT7ECg==", + "dev": true, + "requires": { + "@volar/source-map": "2.4.22" + } + }, + "@volar/source-map": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-2.4.22.tgz", + "integrity": "sha512-L2nVr/1vei0xKRgO2tYVXtJYd09HTRjaZi418e85Q+QdbbqA8h7bBjfNyPPSsjnrOO4l4kaAo78c8SQUAdHvgA==", + "dev": true + }, + "@volar/typescript": { + "version": "2.4.22", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-2.4.22.tgz", + "integrity": "sha512-6ZczlJW1/GWTrNnkmZxJp4qyBt/SGVlcTuCWpI5zLrdPdCZsj66Aff9ZsfFaT3TyjG8zVYgBMYPuCm/eRkpcpQ==", + "dev": true, + "requires": { + "@volar/language-core": "2.4.22", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "@vue/compiler-core": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.18.tgz", + "integrity": "sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==", + "requires": { + "@babel/parser": "^7.28.0", + "@vue/shared": "3.5.18", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + }, + "dependencies": { + "entities": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + } + } + }, + "@vue/compiler-dom": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.18.tgz", + "integrity": "sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==", + "requires": { + "@vue/compiler-core": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "@vue/compiler-sfc": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.18.tgz", + "integrity": "sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==", + "requires": { + "@babel/parser": "^7.28.0", + "@vue/compiler-core": "3.5.18", + "@vue/compiler-dom": "3.5.18", + "@vue/compiler-ssr": "3.5.18", + "@vue/shared": "3.5.18", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.17", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "@vue/compiler-ssr": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.18.tgz", + "integrity": "sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==", + "requires": { + "@vue/compiler-dom": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "@vue/compiler-vue2": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", + "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", + "dev": true, + "requires": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==" + }, + "@vue/eslint-config-prettier": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-prettier/-/eslint-config-prettier-7.1.0.tgz", + "integrity": "sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==", + "dev": true, + "requires": { + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^4.0.0" + } + }, + "@vue/eslint-config-typescript": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-10.0.0.tgz", + "integrity": "sha512-F94cL8ug3FaYXlCfU5/wiGjk1qeadmoBpRGAOBq+qre3Smdupa59dd6ZJrsfRODpsMPyTG7330juMDsUvpZ3Rw==", + "dev": true, + "requires": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "vue-eslint-parser": "^8.0.0" + } + }, + "@vue/language-core": { + "version": "2.1.10", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.1.10.tgz", + "integrity": "sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==", + "dev": true, + "requires": { + "@volar/language-core": "~2.4.8", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^0.2.0", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "@vue/reactivity": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.18.tgz", + "integrity": "sha512-x0vPO5Imw+3sChLM5Y+B6G1zPjwdOri9e8V21NnTnlEvkxatHEH5B5KEAJcjuzQ7BsjGrKtfzuQ5eQwXh8HXBg==", + "requires": { + "@vue/shared": "3.5.18" + } + }, + "@vue/runtime-core": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.18.tgz", + "integrity": "sha512-DUpHa1HpeOQEt6+3nheUfqVXRog2kivkXHUhoqJiKR33SO4x+a5uNOMkV487WPerQkL0vUuRvq/7JhRgLW3S+w==", + "requires": { + "@vue/reactivity": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "@vue/runtime-dom": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.18.tgz", + "integrity": "sha512-YwDj71iV05j4RnzZnZtGaXwPoUWeRsqinblgVJwR8XTXYZ9D5PbahHQgsbmzUvCWNF6x7siQ89HgnX5eWkr3mw==", + "requires": { + "@vue/reactivity": "3.5.18", + "@vue/runtime-core": "3.5.18", + "@vue/shared": "3.5.18", + "csstype": "^3.1.3" + } + }, + "@vue/server-renderer": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.18.tgz", + "integrity": "sha512-PvIHLUoWgSbDG7zLHqSqaCoZvHi6NNmfVFOqO+OnwvqMz/tqQr3FuGWS8ufluNddk7ZLBJYMrjcw1c6XzR12mA==", + "requires": { + "@vue/compiler-ssr": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "@vue/shared": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.18.tgz", + "integrity": "sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==" + }, + "@vueuse/core": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.1.1.tgz", + "integrity": "sha512-QfuaNWRDMQcCUwXylCyYhPC3ScS9Tiiz4J0chdwr3vOemBwRToSywq8MP+ZegKYFnbETzRY8G/5zC+ca30wrRQ==", + "requires": { + "@types/web-bluetooth": "^0.0.15", + "@vueuse/metadata": "9.1.1", + "@vueuse/shared": "9.1.1", + "vue-demi": "*" + } + }, + "@vueuse/metadata": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.1.1.tgz", + "integrity": "sha512-XZ2KtSW+85LLHB/IdGILPAtbIVHasPsAW7aqz3BRMzJdAQWRiM/FGa1OKBwLbXtUw/AmjKYFlZJo7eOFIBXRog==" + }, + "@vueuse/shared": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.1.1.tgz", + "integrity": "sha512-c+IfcOYmHiHqoEa3ED1Tbpue5GHmoUmTp8PtO4YbczthtY155Rt6DmWhjxMLXBF1Bcidagxljmp/7xtAzEHXLw==", + "requires": { + "vue-demi": "*" + } + }, + "@wangeditor/basic-modules": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz", + "integrity": "sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==", + "requires": { + "is-url": "^1.2.4" + } + }, + "@wangeditor/code-highlight": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz", + "integrity": "sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==", + "requires": { + "prismjs": "^1.23.0" + } + }, + "@wangeditor/core": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@wangeditor/core/-/core-1.1.19.tgz", + "integrity": "sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==", + "requires": { + "@types/event-emitter": "^0.3.3", + "event-emitter": "^0.3.5", + "html-void-elements": "^2.0.0", + "i18next": "^20.4.0", + "scroll-into-view-if-needed": "^2.2.28", + "slate-history": "^0.66.0" + } + }, + "@wangeditor/editor": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@wangeditor/editor/-/editor-5.1.1.tgz", + "integrity": "sha512-BtccuHFm0QvYunIhIu7tllQWkwppkmEkD3OJ5Mn+F0REPQ/Z3HiEXbtlss2t9c/kHO4CtiFwv2XD/k/VEg7taA==", + "requires": { + "@uppy/core": "^2.1.1", + "@uppy/xhr-upload": "^2.0.3", + "@wangeditor/basic-modules": "^1.1.1", + "@wangeditor/code-highlight": "^1.0.2", + "@wangeditor/core": "^1.1.1", + "@wangeditor/list-module": "^1.0.2", + "@wangeditor/table-module": "^1.1.0", + "@wangeditor/upload-image-module": "^1.0.1", + "@wangeditor/video-module": "^1.1.0", + "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.isequal": "^4.5.0", + "lodash.throttle": "^4.1.1", + "lodash.toarray": "^4.4.0", + "nanoid": "^3.2.0", + "slate": "^0.72.0", + "snabbdom": "^3.1.0" + } + }, + "@wangeditor/editor-for-vue": { + "version": "5.1.12", + "resolved": "https://registry.npmjs.org/@wangeditor/editor-for-vue/-/editor-for-vue-5.1.12.tgz", + "integrity": "sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==", + "requires": {} + }, + "@wangeditor/list-module": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@wangeditor/list-module/-/list-module-1.0.5.tgz", + "integrity": "sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ==", + "requires": {} + }, + "@wangeditor/table-module": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@wangeditor/table-module/-/table-module-1.1.4.tgz", + "integrity": "sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w==", + "requires": {} + }, + "@wangeditor/upload-image-module": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz", + "integrity": "sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA==", + "requires": {} + }, + "@wangeditor/video-module": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@wangeditor/video-module/-/video-module-1.1.4.tgz", + "integrity": "sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg==", + "requires": {} + }, + "@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "peer": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "dev": true, + "peer": true + }, + "@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "peer": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "peer": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "dev": true, + "peer": true, + "requires": { + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true + }, + "acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peer": true, + "requires": {} + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peer": true, + "requires": {} + }, + "alien-signals": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/alien-signals/-/alien-signals-0.2.2.tgz", + "integrity": "sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==", + "dev": true + }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + } + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "dev": true + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "dev": true + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "axios": { + "version": "1.11.0", + "resolved": "https://registry.npmmirror.com/axios/-/axios-1.11.0.tgz", + "integrity": "sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA==", + "requires": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.4", + "proxy-from-env": "^1.1.0" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==" + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "peer": true, + "requires": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "requires": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "caniuse-lite": { + "version": "1.0.30001534", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001534.tgz", + "integrity": "sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==", + "dev": true, + "peer": true + }, + "canvg": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.11.tgz", + "integrity": "sha512-5ON+q7jCTgMp9cjpu4Jo6XbvfYwSB2Ow3kzHKfIyJfaCAOHLbdKPQqGKgfED/R5B+3TFFfe8pegYA+b423SRyA==", + "optional": true, + "requires": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "peer": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "compute-scroll-into-view": { + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", + "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true + }, + "consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", + "dev": true + }, + "copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "requires": { + "is-what": "^3.14.1" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", + "dev": true + }, + "core-js": { + "version": "3.32.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.2.tgz", + "integrity": "sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==" + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "requires": { + "utrie": "^1.0.2" + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "dependencies": { + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "requires": { + "css-tree": "^1.1.2" + } + }, + "csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + }, + "de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + }, + "dom7": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-3.0.0.tgz", + "integrity": "sha512-oNlcUdHsC4zb7Msx7JN3K0Nro1dzJ48knvBOnDPKJ2GV9wl1i5vydJZUSyOfrkKFDZEud/jBsTk92S/VGSAe/g==", + "requires": { + "ssr-window": "^3.0.0-alpha.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "dompurify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.1.tgz", + "integrity": "sha512-qkdCKzLNtrgPFP1Vo+98FRzJnBRGe4ffyCea9IwHB1fyxPOeNTHpLKYGd4Uk9xvNoH0ZoOjwZxNptyMwqrId1Q==", + "optional": true, + "requires": { + "@types/trusted-types": "^2.0.7" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true + }, + "dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==", + "dev": true + }, + "dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "requires": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + } + }, + "echarts": { + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.4.3.tgz", + "integrity": "sha512-mYKxLxhzy6zyTi/FaEbJMOZU1ULGEQHaeIeuMR5L+JnJTpz+YR03mnnpBhbR4+UYJAgiXgpyTVLffPAjOTLkZA==", + "requires": { + "tslib": "2.3.0", + "zrender": "5.4.4" + } + }, + "ejs": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz", + "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==", + "dev": true, + "requires": { + "jake": "^10.8.5" + } + }, + "electron-to-chromium": { + "version": "1.4.523", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.523.tgz", + "integrity": "sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg==", + "dev": true, + "peer": true + }, + "element-plus": { + "version": "2.10.5", + "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.10.5.tgz", + "integrity": "sha512-O9wTDu3Tm51ACVByWrThtBhH4Ygefg1HGY5pyAaxnoIrj8uMN0GtZ4IREwR3Yw/6sM2HyxjrsGI/D46iUVP97A==", + "requires": { + "@ctrl/tinycolor": "^3.4.1", + "@element-plus/icons-vue": "^2.3.1", + "@floating-ui/dom": "^1.0.1", + "@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", + "@types/lodash": "^4.14.182", + "@types/lodash-es": "^4.17.6", + "@vueuse/core": "^9.1.0", + "async-validator": "^4.2.5", + "dayjs": "^1.11.13", + "escape-html": "^1.0.3", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "lodash-unified": "^1.0.2", + "memoize-one": "^6.0.0", + "normalize-wheel-es": "^1.2.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" + }, + "es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" + }, + "es-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.1.tgz", + "integrity": "sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==", + "dev": true, + "peer": true + }, + "es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "requires": { + "es-errors": "^1.3.0" + } + }, + "es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "requires": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + } + }, + "es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "requires": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "requires": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "peer": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "8.49.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.49.0.tgz", + "integrity": "sha512-jw03ENfm6VJI0jA9U+8H5zfl5b+FvuU3YYvZRdZHOlU2ggJkxrlkJH4HcDrZpj6YwD8kuYqvQM8LyesoazrSOQ==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.49.0", + "@humanwhocodes/config-array": "^0.11.11", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "dev": true, + "requires": {} + }, + "eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "eslint-plugin-vue": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-8.7.1.tgz", + "integrity": "sha512-28sbtm4l4cOzoO1LtzQPxfxhQABararUb1JtqusQqObJpWX2e/gmVyeYVfepizPFne0Q5cILkYGiBoV36L12Wg==", + "dev": true, + "requires": { + "eslint-utils": "^3.0.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.0.1", + "postcss-selector-parser": "^6.0.9", + "semver": "^7.3.5", + "vue-eslint-parser": "^8.0.1" + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + }, + "espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "requires": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + } + }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "peer": true + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "requires": { + "type": "^2.7.2" + }, + "dependencies": { + "type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + } + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fast-png": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/fast-png/-/fast-png-6.4.0.tgz", + "integrity": "sha512-kAqZq1TlgBjZcLr5mcN6NP5Rv4V2f22z00c3g8vRrwkcqjerx7BEhPbOnWCPqaHUl2XWQBJQvOT/FQhdMT7X/Q==", + "requires": { + "@types/pako": "^2.0.3", + "iobuffer": "^5.3.2", + "pako": "^2.1.0" + } + }, + "fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==" + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "requires": { + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "dev": true, + "requires": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true + }, + "follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "dev": true + }, + "form-data": { + "version": "4.0.4", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" + }, + "get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "requires": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "requires": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", + "dev": true + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "glob-regex": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/glob-regex/-/glob-regex-0.3.2.tgz", + "integrity": "sha512-m5blUd3/OqDTWwzBBtWBPrGlAzatRywHameHeekAZyZrskYouOGdNB8T/q6JucucvJXtOuyHIn0/Yia7iDasDw==", + "dev": true + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + } + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" + }, + "has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "requires": { + "has-symbols": "^1.0.3" + } + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "requires": { + "function-bind": "^1.1.2" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dev": true, + "requires": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + } + }, + "html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==" + }, + "html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "requires": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + } + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "i18next": { + "version": "20.6.1", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-20.6.1.tgz", + "integrity": "sha512-yCMYTMEJ9ihCwEQQ3phLo7I/Pwycf8uAx+sRHwwk5U9Aui/IZYgQRyMqXafQOw5QQ7DM1Z+WyEXWIqSuJHhG2A==", + "requires": { + "@babel/runtime": "^7.12.0" + } + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true + }, + "immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==" + }, + "immutable": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", + "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "iobuffer": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/iobuffer/-/iobuffer-5.4.0.tgz", + "integrity": "sha512-DRebOWuqDvxunfkNJAlc3IzWIPD5xVxwUNbHr7xKB8E6aLJxIPfNX3CoMJghcFjpv6RWQsrcJbghtEwSPoJqMA==" + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hotkey": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.2.0.tgz", + "integrity": "sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "dev": true + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==" + }, + "is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "jake": { + "version": "10.8.7", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz", + "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==", + "dev": true, + "requires": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, + "js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jspdf": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-4.2.0.tgz", + "integrity": "sha512-hR/hnRevAXXlrjeqU5oahOE+Ln9ORJUB5brLHHqH67A+RBQZuFr5GkbI9XQI8OUFSEezKegsi45QRpc4bGj75Q==", + "requires": { + "@babel/runtime": "^7.28.6", + "canvg": "^3.0.11", + "core-js": "^3.6.0", + "dompurify": "^3.3.1", + "fast-png": "^6.2.0", + "fflate": "^0.8.1", + "html2canvas": "^1.0.0-rc.5" + } + }, + "keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "requires": { + "json-buffer": "3.0.1" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + }, + "klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true + }, + "less": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", + "dev": true, + "requires": { + "copy-anything": "^2.0.1", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^2.3.0" + } + }, + "less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "requires": { + "klona": "^2.0.4" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "lint-staged": { + "version": "11.2.6", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-11.2.6.tgz", + "integrity": "sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg==", + "dev": true, + "requires": { + "cli-truncate": "2.1.0", + "colorette": "^1.4.0", + "commander": "^8.2.0", + "cosmiconfig": "^7.0.1", + "debug": "^4.3.2", + "enquirer": "^2.3.6", + "execa": "^5.1.1", + "listr2": "^3.12.2", + "micromatch": "^4.0.4", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "3.3.0", + "supports-color": "8.1.1" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + } + } + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "lodash-unified": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/lodash-unified/-/lodash-unified-1.0.3.tgz", + "integrity": "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==", + "requires": {} + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==" + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" + }, + "lodash.toarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", + "integrity": "sha512-QyffEA3i5dma5q2490+SgCvDN0pXLmRGSyAANuVi0HQ01Pkfr9fuoKQW8wm1wGBnJITs/mS7wQvS6VshUEBFCw==" + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "requires": { + "tslib": "^2.0.3" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "requires": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true + } + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, + "merge-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-options/-/merge-options-1.0.1.tgz", + "integrity": "sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==", + "dev": true, + "requires": { + "is-plain-obj": "^1.1" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mime-match/-/mime-match-1.0.2.tgz", + "integrity": "sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==", + "requires": { + "wildcard": "^1.1.0" + } + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true + }, + "mitt": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-2.1.0.tgz", + "integrity": "sha512-ILj2TpLiysu2wkBbWjAmww7TkZb65aiQO+DkVdUTBpBXq+MHYiETENkKFMtsJZX1Lf4pe4QOrTSjIfUwN5lRdg==" + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "namespace-emitter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/namespace-emitter/-/namespace-emitter-2.0.1.tgz", + "integrity": "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g==" + }, + "nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==" + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "peer": true + }, + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-html-parser": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/node-html-parser/-/node-html-parser-5.4.2.tgz", + "integrity": "sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==", + "dev": true, + "requires": { + "css-select": "^4.2.1", + "he": "1.2.0" + } + }, + "node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true, + "peer": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-wheel-es": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", + "integrity": "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==" + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + }, + "papaparse": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.5.3.tgz", + "integrity": "sha512-5QvjGxYVjxO59MGU2lHVYpRWBBtKHnlIAcSe1uNFCkkptUh63NFRj0FJQm7nR67puEruUci/ZkjmEFrjCAyP4A==", + "dev": true + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", + "dev": true + }, + "path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pathe": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-0.2.0.tgz", + "integrity": "sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "optional": true + }, + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true + }, + "pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "requires": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + } + }, + "pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true + }, + "please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "requires": { + "semver-compare": "^1.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", + "dev": true + }, + "postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "requires": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + } + }, + "postcss-prefix-selector": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/postcss-prefix-selector/-/postcss-prefix-selector-1.16.0.tgz", + "integrity": "sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==", + "dev": true, + "requires": {} + }, + "postcss-selector-parser": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "posthtml": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.9.2.tgz", + "integrity": "sha512-spBB5sgC4cv2YcW03f/IAUN1pgDJWNWD8FzkyY4mArLUMJW+KlQhlmUdKAHQuPfb00Jl5xIfImeOsf6YL8QK7Q==", + "dev": true, + "requires": { + "posthtml-parser": "^0.2.0", + "posthtml-render": "^1.0.5" + } + }, + "posthtml-parser": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.2.1.tgz", + "integrity": "sha512-nPC53YMqJnc/+1x4fRYFfm81KV2V+G9NZY+hTohpYg64Ay7NemWWcV4UWuy/SgMupqQ3kJ88M/iRfZmSnxT+pw==", + "dev": true, + "requires": { + "htmlparser2": "^3.8.3", + "isobject": "^2.1.0" + } + }, + "posthtml-rename-id": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/posthtml-rename-id/-/posthtml-rename-id-1.0.12.tgz", + "integrity": "sha512-UKXf9OF/no8WZo9edRzvuMenb6AD5hDLzIepJW+a4oJT+T/Lx7vfMYWT4aWlGNQh0WMhnUx1ipN9OkZ9q+ddEw==", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "posthtml-render": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-1.4.0.tgz", + "integrity": "sha512-W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==", + "dev": true + }, + "posthtml-svg-mode": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/posthtml-svg-mode/-/posthtml-svg-mode-1.0.3.tgz", + "integrity": "sha512-hEqw9NHZ9YgJ2/0G7CECOeuLQKZi8HjWLkBaSVtOWjygQ9ZD8P7tqeowYs7WrFdKsWEKG7o+IlsPY8jrr0CJpQ==", + "dev": true, + "requires": { + "merge-options": "1.0.1", + "posthtml": "^0.9.2", + "posthtml-parser": "^0.2.1", + "posthtml-render": "^1.0.6" + } + }, + "preact": { + "version": "10.17.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.17.1.tgz", + "integrity": "sha512-X9BODrvQ4Ekwv9GURm9AKAGaomqXmip7NQTZgY7gcNmr7XE83adOMJvd3N42id1tMFU7ojiynRsYnY6/BRFxLA==" + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true + }, + "qs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", + "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "dev": true, + "requires": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "optional": true, + "requires": { + "performance-now": "^2.1.0" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "peer": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "recrawl-sync": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recrawl-sync/-/recrawl-sync-2.2.3.tgz", + "integrity": "sha512-vSaTR9t+cpxlskkdUFrsEpnf67kSmPk66yAGT1fZPrDudxQjoMzPgQhSMImQ0pAw5k0NPirefQfhopSjhdUtpQ==", + "dev": true, + "requires": { + "@cush/relative": "^1.0.0", + "glob-regex": "^0.3.0", + "slash": "^3.0.0", + "sucrase": "^3.20.3", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "optional": true + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "dev": true + }, + "repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "dev": true + }, + "resize-detector": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/resize-detector/-/resize-detector-0.3.0.tgz", + "integrity": "sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ==" + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "optional": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rollup": { + "version": "4.46.2", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.46.2.tgz", + "integrity": "sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==", + "dev": true, + "requires": { + "@rollup/rollup-android-arm-eabi": "4.46.2", + "@rollup/rollup-android-arm64": "4.46.2", + "@rollup/rollup-darwin-arm64": "4.46.2", + "@rollup/rollup-darwin-x64": "4.46.2", + "@rollup/rollup-freebsd-arm64": "4.46.2", + "@rollup/rollup-freebsd-x64": "4.46.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.46.2", + "@rollup/rollup-linux-arm-musleabihf": "4.46.2", + "@rollup/rollup-linux-arm64-gnu": "4.46.2", + "@rollup/rollup-linux-arm64-musl": "4.46.2", + "@rollup/rollup-linux-loongarch64-gnu": "4.46.2", + "@rollup/rollup-linux-ppc64-gnu": "4.46.2", + "@rollup/rollup-linux-riscv64-gnu": "4.46.2", + "@rollup/rollup-linux-riscv64-musl": "4.46.2", + "@rollup/rollup-linux-s390x-gnu": "4.46.2", + "@rollup/rollup-linux-x64-gnu": "4.46.2", + "@rollup/rollup-linux-x64-musl": "4.46.2", + "@rollup/rollup-win32-arm64-msvc": "4.46.2", + "@rollup/rollup-win32-ia32-msvc": "4.46.2", + "@rollup/rollup-win32-x64-msvc": "4.46.2", + "@types/estree": "1.0.8", + "fsevents": "~2.3.2" + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "sass": { + "version": "1.67.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.67.0.tgz", + "integrity": "sha512-SVrO9ZeX/QQyEGtuZYCVxoeAL5vGlYjJ9p4i4HFuekWl8y/LtJ7tJc10Z+ck1c8xOuoBm2MYzcLfTAffD0pl/A==", + "dev": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, + "schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "scroll-into-view-if-needed": { + "version": "2.2.31", + "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz", + "integrity": "sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==", + "requires": { + "compute-scroll-into-view": "^1.0.20" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "dev": true + }, + "serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, + "peer": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slate": { + "version": "0.72.8", + "resolved": "https://registry.npmjs.org/slate/-/slate-0.72.8.tgz", + "integrity": "sha512-/nJwTswQgnRurpK+bGJFH1oM7naD5qDmHd89JyiKNT2oOKD8marW0QSBtuFnwEbL5aGCS8AmrhXQgNOsn4osAw==", + "requires": { + "immer": "^9.0.6", + "is-plain-object": "^5.0.0", + "tiny-warning": "^1.0.3" + } + }, + "slate-history": { + "version": "0.66.0", + "resolved": "https://registry.npmjs.org/slate-history/-/slate-history-0.66.0.tgz", + "integrity": "sha512-6MWpxGQZiMvSINlCbMW43E2YBSVMCMCIwQfBzGssjWw4kb0qfvj0pIdblWNRQZD0hR6WHP+dHHgGSeVdMWzfng==", + "requires": { + "is-plain-object": "^5.0.0" + } + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "snabbdom": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/snabbdom/-/snabbdom-3.5.1.tgz", + "integrity": "sha512-wHMNIOjkm/YNE5EM3RCbr/+DVgPg6AqQAX1eOxO46zYNvCXjKP5Y865tqQj3EXnaMBjkxmQA5jFuDpDK/dbfiA==" + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==" + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "ssr-window": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-3.0.0.tgz", + "integrity": "sha512-q+8UfWDg9Itrg0yWK7oe5p/XRCJpJF9OBtXfOPgSJl+u3Xd5KI328RUEvUqSMVM9CiQUEf1QdBzJMkYGErj9QA==" + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "stackblur-canvas": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz", + "integrity": "sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ==", + "optional": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + } + } + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "sucrase": { + "version": "3.34.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", + "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "7.1.6", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "dependencies": { + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "svg-baker": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/svg-baker/-/svg-baker-1.7.0.tgz", + "integrity": "sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==", + "dev": true, + "requires": { + "bluebird": "^3.5.0", + "clone": "^2.1.1", + "he": "^1.1.1", + "image-size": "^0.5.1", + "loader-utils": "^1.1.0", + "merge-options": "1.0.1", + "micromatch": "3.1.0", + "postcss": "^5.2.17", + "postcss-prefix-selector": "^1.6.0", + "posthtml-rename-id": "^1.0", + "posthtml-svg-mode": "^1.0.3", + "query-string": "^4.3.2", + "traverse": "^0.6.6" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "dev": true + } + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + }, + "micromatch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.0.tgz", + "integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.2.2", + "define-property": "^1.0.0", + "extend-shallow": "^2.0.1", + "extglob": "^2.0.2", + "fragment-cache": "^0.2.1", + "kind-of": "^5.0.2", + "nanomatch": "^1.2.1", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "optional": true + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "dependencies": { + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + } + } + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "peer": true + }, + "terser": { + "version": "5.19.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.4.tgz", + "integrity": "sha512-6p1DjHeuluwxDXcuT9VR8p64klWJKo1ILiy19s6C9+0Bh2+NWTX6nD9EPppiER4ICkHDVB1RkVpin/YW2nQn/g==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "dev": true, + "peer": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.8" + } + }, + "text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "requires": { + "utrie": "^1.0.2" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "traverse": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", + "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==", + "dev": true + }, + "ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "tsconfig-paths": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", + "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "typescript": { + "version": "5.9.2", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.2.tgz", + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "devOptional": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true + } + } + }, + "update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "peer": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "requires": { + "base64-arraybuffer": "^1.0.2" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true + }, + "vite": { + "version": "5.4.19", + "resolved": "https://registry.npmmirror.com/vite/-/vite-5.4.19.tgz", + "integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==", + "dev": true, + "requires": { + "esbuild": "^0.21.3", + "fsevents": "~2.3.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + } + }, + "vite-plugin-html": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/vite-plugin-html/-/vite-plugin-html-3.2.2.tgz", + "integrity": "sha512-vb9C9kcdzcIo/Oc3CLZVS03dL5pDlOFuhGlZYDCJ840BhWl/0nGeZWf3Qy7NlOayscY4Cm/QRgULCQkEZige5Q==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^4.2.0", + "colorette": "^2.0.16", + "connect-history-api-fallback": "^1.6.0", + "consola": "^2.15.3", + "dotenv": "^16.0.0", + "dotenv-expand": "^8.0.2", + "ejs": "^3.1.6", + "fast-glob": "^3.2.11", + "fs-extra": "^10.0.1", + "html-minifier-terser": "^6.1.0", + "node-html-parser": "^5.3.3", + "pathe": "^0.2.0" + }, + "dependencies": { + "colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + } + } + }, + "vite-plugin-svg-icons": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/vite-plugin-svg-icons/-/vite-plugin-svg-icons-2.0.1.tgz", + "integrity": "sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==", + "dev": true, + "requires": { + "@types/svgo": "^2.6.1", + "cors": "^2.8.5", + "debug": "^4.3.3", + "etag": "^1.8.1", + "fs-extra": "^10.0.0", + "pathe": "^0.2.0", + "svg-baker": "1.7.0", + "svgo": "^2.8.0" + } + }, + "vite-tsconfig-paths": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-3.4.0.tgz", + "integrity": "sha512-os+oAdJxkZvNLmisVQ76eDdCWC3aH4bKTy3EXI5oJi//zQ0G+qJfUeFR6Need4iyzL/Xus9R7AECF/YfGS0ZEw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "recrawl-sync": "^2.0.3", + "tsconfig-paths": "^3.9.0" + } + }, + "vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true + }, + "vue": { + "version": "3.5.18", + "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.18.tgz", + "integrity": "sha512-7W4Y4ZbMiQ3SEo+m9lnoNpV9xG7QVMLa+/0RFwwiAVkeYoyGXqWE85jabU4pllJNUzqfLShJ5YLptewhCWUgNA==", + "requires": { + "@vue/compiler-dom": "3.5.18", + "@vue/compiler-sfc": "3.5.18", + "@vue/runtime-dom": "3.5.18", + "@vue/server-renderer": "3.5.18", + "@vue/shared": "3.5.18" + } + }, + "vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "requires": {} + }, + "vue-echarts": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/vue-echarts/-/vue-echarts-6.6.1.tgz", + "integrity": "sha512-EpreTzlNeJ+eaUn0AhXEmKJk98xJGecgTqAdyZovoXWnhTxnlW2HuBM0ei3y8rLw1JCUabf8/sYvxjlr8SzBKQ==", + "requires": { + "resize-detector": "^0.3.0", + "vue-demi": "^0.13.11" + }, + "dependencies": { + "vue-demi": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz", + "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", + "requires": {} + } + } + }, + "vue-eslint-parser": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz", + "integrity": "sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==", + "dev": true, + "requires": { + "debug": "^4.3.2", + "eslint-scope": "^7.0.0", + "eslint-visitor-keys": "^3.1.0", + "espree": "^9.0.0", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.5" + }, + "dependencies": { + "eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "vue-router": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.2.5.tgz", + "integrity": "sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==", + "requires": { + "@vue/devtools-api": "^6.5.0" + } + }, + "vue-tsc": { + "version": "2.1.10", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.1.10.tgz", + "integrity": "sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==", + "dev": true, + "requires": { + "@volar/typescript": "~2.4.8", + "@vue/language-core": "2.1.10", + "semver": "^7.5.4" + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "peer": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "peer": true, + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + } + }, + "webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "peer": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wildcard": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-1.1.2.tgz", + "integrity": "sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng==" + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, + "zrender": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.4.4.tgz", + "integrity": "sha512-0VxCNJ7AGOMCWeHVyTrGzUgrK4asT4ml9PEkeGirAkKNYXYzoPJCLvmyfdoOXcjTHPs10OZVMfD1Rwg16AZyYw==", + "requires": { + "tslib": "2.3.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..156c2f5 --- /dev/null +++ b/package.json @@ -0,0 +1,72 @@ +{ + "name": "weather-data-ui", + "version": "5.5.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "npm run build:prod", + "build:prod": "vite build --mode production", + "serve": "npm run build && vite preview", + "lint": "eslint \"src/**/*.{vue,ts}\" --fix" + }, + "gitHooks": { + "pre-commit": "lint-staged" + }, + "lint-staged": { + "src/**/*.{ts,vue}": [ + "eslint --fix", + "git add" + ] + }, + "dependencies": { + "@element-plus/icons-vue": "2.3.1", + "@vueuse/core": "9.1.1", + "@wangeditor/editor": "5.1.1", + "@wangeditor/editor-for-vue": "^5.1.12", + "axios": "1.11.0", + "classnames": "^2.3.1", + "core-js": "^3.14.0", + "echarts": "^5.2.2", + "element-plus": "2.10.5", + "html2canvas": "^1.4.1", + "js-cookie": "^3.0.5", + "jspdf": "^4.2.0", + "lodash": "^4.17.21", + "mitt": "^2.1.0", + "nprogress": "^0.2.0", + "pinia": "2.3.1", + "qs": "^6.10.1", + "vue": "^3.5.18", + "vue-echarts": "^6.0.0", + "vue-router": "4.2.5" + }, + "devDependencies": { + "@types/js-cookie": "^3.0.6", + "@types/lodash": "^4.14.172", + "@types/nprogress": "^0.2.0", + "@types/papaparse": "^5.5.2", + "@types/qs": "^6.9.6", + "@types/sortablejs": "^1.10.6", + "@typescript-eslint/eslint-plugin": "^5.23.0", + "@typescript-eslint/parser": "^5.23.0", + "@vitejs/plugin-vue": "5.1.5", + "@vue/compiler-sfc": "^3.5.18", + "@vue/eslint-config-prettier": "^7.0.0", + "@vue/eslint-config-typescript": "^10.0.0", + "eslint": "^8.13.0", + "eslint-plugin-vue": "^8.6.0", + "less": "^4.1.1", + "less-loader": "^10.0.0", + "lint-staged": "^11.0.0", + "papaparse": "^5.5.3", + "prettier": "^2.6.2", + "sass": "^1.50.1", + "typescript": "^5.7.2", + "vite": "5.4.19", + "vite-plugin-html": "^3.2.2", + "vite-plugin-svg-icons": "2.0.1", + "vite-tsconfig-paths": "3.4.0", + "vue-tsc": "2.1.10" + } +} diff --git a/public/1.png b/public/1.png new file mode 100644 index 0000000000000000000000000000000000000000..4c65c74764b0ca9e7ff481a1e74eb28cc5b65a32 GIT binary patch literal 299702 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 E4@RL;GXMYp literal 0 HcmV?d00001 diff --git a/public/region.csv b/public/region.csv new file mode 100644 index 0000000..8d2d7d2 --- /dev/null +++ b/public/region.csv @@ -0,0 +1,3361 @@ +id,name,type,parentId,log,lat +1,中国,1,0,116.413384,39.910925 +110000,北京,2,1,116.4133836971231,39.910924547299565 +120000,天津,2,1,117.2080927529767,39.09110259843554 +130000,河北省,2,1,114.53659630531568,38.04320164520046 +140000,山西省,2,1,112.56937550968271,37.87982942385603 +150000,内蒙古自治区,2,1,111.77260583081977,40.823156232446166 +210000,辽宁省,2,1,123.43559785683209,41.84146525120185 +220000,吉林省,2,1,125.33257987514821,43.90171443544392 +230000,黑龙江省,2,1,126.66965282041836,45.74792983743469 +310000,上海,2,1,121.48053886017651,31.235929042252014 +320000,江苏省,2,1,118.76955164466914,32.066776944293416 +330000,浙江省,2,1,120.15953308739246,30.271548393336545 +340000,安徽省,2,1,117.3305404177196,31.73429415631746 +350000,福建省,2,1,119.30244747703945,26.106339415901047 +360000,江西省,2,1,115.91542320365122,28.68169051676075 +370000,山东省,2,1,117.02744162847857,36.674856650404905 +410000,河南省,2,1,113.75938408486323,34.771712921931496 +420000,湖北省,2,1,114.34844073658718,30.551600064658352 +430000,湖南省,2,1,112.98960254334654,28.118269998009367 +440000,广东省,2,1,113.27242891272826,23.13794855653905 +450000,广西壮族自治区,2,1,108.3345212294372,22.821268997908664 +460000,海南省,2,1,110.35553651088428,20.025801964462914 +500000,重庆,2,1,106.55843415537664,29.568996245338923 +510000,四川省,2,1,104.07346654728391,30.577543147015334 +520000,贵州省,2,1,106.71447593088575,26.604029544994923 +530000,云南省,2,1,102.71641607523223,25.051562267344867 +540000,西藏自治区,2,1,116.39206412262423,39.95250894023601 +610000,陕西省,2,1,108.96039314875111,34.27580800602361 +620000,甘肃省,2,1,103.83247812812213,36.06546488736762 +630000,青海省,2,1,101.78646183586761,36.62715857923451 +640000,宁夏回族自治区,2,1,106.26560480701352,38.47687796791088 +650000,新疆维吾尔自治区,2,1,87.63347320573824,43.79923810128996 +110100,北京市,3,110000,116.4133836971231,39.910924547299565 +120100,天津市,3,120000,117.2080927529767,39.09110259843554 +130100,石家庄市,3,130000,114.52153190157445,38.0483119268727 +130200,唐山市,3,130000,118.18645947203979,39.63658372414733 +130300,秦皇岛市,3,130000,119.5259671942601,39.89472719832739 +130400,邯郸市,3,130000,114.5456282282352,36.631262731204046 +130500,邢台市,3,130000,114.51146225612979,37.07668595096609 +130600,保定市,3,130000,115.47146383768579,38.87998776845534 +130700,张家口市,3,130000,114.89257223145165,40.7732372026915 +130800,承德市,3,130000,117.96939750996681,40.95785601233803 +130900,沧州市,3,130000,116.84558075595014,38.310215141107044 +131000,廊坊市,3,130000,116.69058173342549,39.54336666275853 +131100,衡水市,3,130000,115.6754061376161,37.745191408077424 +140100,太原市,3,140000,112.55639149167204,37.87698902884778 +140200,大同市,3,140000,113.37336244450448,40.102783001859564 +140300,阳泉市,3,140000,113.58761666287546,37.862360847859385 +140400,长治市,3,140000,113.12255886984902,36.2012683721548 +140500,晋城市,3,140000,112.85857823132879,35.49628458647257 +140600,朔州市,3,140000,112.4393709396677,39.337108370541735 +140700,晋中市,3,140000,112.75959475565928,37.69283940975972 +140800,运城市,3,140000,111.01338945447925,35.03270691290923 +140900,忻州市,3,140000,112.74062416023847,38.42238338517772 +141000,临汾市,3,140000,111.52553022403073,36.093741895419726 +141100,吕梁市,3,140000,111.15044967529185,37.524497749577115 +150100,呼和浩特市,3,150000,111.75550856170946,40.84842299711348 +150200,包头市,3,150000,109.95979863201062,40.62714122474678 +150300,乌海市,3,150000,106.80039104999656,39.6620063648907 +150400,赤峰市,3,150000,118.8955203975195,42.2616861034116 +150500,通辽市,3,150000,122.25052178737633,43.657980083916655 +150600,鄂尔多斯市,3,150000,109.78744317923602,39.61448231394889 +150700,呼伦贝尔市,3,150000,119.78486907317954,49.172732795190655 +150800,巴彦淖尔市,3,150000,107.39439808372491,40.7493594895728 +150900,乌兰察布市,3,150000,113.13946767446333,41.00074832767381 +152200,兴安盟,3,150000,122.04436452582519,46.08846371321896 +152500,锡林郭勒盟,3,150000,116.05439144074573,43.93942266533856 +152900,阿拉善盟,3,150000,105.73537746449358,38.858275883056955 +210100,沈阳市,3,210000,123.47109664482264,41.68383006919066 +210200,大连市,3,210000,121.62163148459285,38.9189536667856 +210300,鞍山市,3,210000,123.00137251399407,41.11505359694933 +210400,抚顺市,3,210000,123.9643746156145,41.88596959305694 +210500,本溪市,3,210000,123.69250712420832,41.49291646055291 +210600,丹东市,3,210000,124.36154728159079,40.00640870559368 +210700,锦州市,3,210000,121.13259630055518,41.10093149946208 +210800,营口市,3,210000,122.22579880279181,40.63070304275062 +210900,阜新市,3,210000,121.67640799865809,42.02802190131842 +211000,辽阳市,3,210000,123.24336640651318,41.27416129045421 +211100,盘锦市,3,210000,122.1771181899173,40.72579099974712 +211200,铁岭市,3,210000,123.73537237670288,42.22922560804787 +211300,朝阳市,3,210000,120.45749949793277,41.57982086475567 +211400,葫芦岛市,3,210000,120.8433983399283,40.71736443636189 +220100,长春市,3,220000,125.3306020759069,43.82195350104314 +220200,吉林市,3,220000,126.55563450495482,43.84356783457924 +220300,四平市,3,220000,124.35648155715893,43.171993571561 +220400,辽源市,3,220000,125.15042516688747,42.89405500574631 +220500,通化市,3,220000,125.94660627598029,41.733815801613424 +220600,白山市,3,220000,126.42108639550088,41.94988401959104 +220700,松原市,3,220000,124.83148187569292,45.14740419341382 +220800,白城市,3,220000,122.8455906084976,45.62550435999602 +222400,延边朝鲜族自治州,3,220000,129.4773763202274,42.91574303372181 +230100,哈尔滨市,3,230000,126.54161509031663,45.808825827952184 +230200,齐齐哈尔市,3,230000,123.92457086841536,47.3599771860153 +230300,鸡西市,3,230000,130.97561865876668,45.300872317823895 +230400,鹤岗市,3,230000,130.3044328986694,47.35605615768509 +230500,双鸭山市,3,230000,131.14797357255904,46.68238905377044 +230600,大庆市,3,230000,125.10865763402039,46.59363317672175 +230700,伊春市,3,230000,128.84754638019822,47.733318457230936 +230800,佳木斯市,3,230000,130.327359092573,46.80568999085779 +230900,七台河市,3,230000,131.01154459102744,45.77630032154785 +231000,牡丹江市,3,230000,129.6395397783469,44.55624570898632 +231100,黑河市,3,230000,127.53548988621854,50.25127231175015 +231200,绥化市,3,230000,126.97535687530133,46.6600321798244 +232700,大兴安岭地区,3,230000,124.15292785448057,50.42002595502784 +310100,上海市,3,310000,121.48053886017651,31.235929042252014 +320100,南京市,3,320000,118.80242172124585,32.06465288561847 +320200,无锡市,3,320000,120.31858328810601,31.498809732685714 +320300,徐州市,3,320000,117.29057543439453,34.21266655011306 +320400,常州市,3,320000,119.98148471327892,31.815795653327836 +320500,苏州市,3,320000,120.59241222959322,31.303564074441766 +320600,南通市,3,320000,120.90159173866185,31.98654943120089 +320700,连云港市,3,320000,119.22862133316607,34.60224952526725 +320800,淮安市,3,320000,119.11976413248364,33.55666778025387 +320900,盐城市,3,320000,120.167544265761,33.355100917626196 +321000,扬州市,3,320000,119.41941890822997,32.40067693609037 +321100,镇江市,3,320000,119.43048944567383,32.19471592052375 +321200,泰州市,3,320000,119.9295663378548,32.4606750493083 +321300,宿迁市,3,320000,118.28157403570837,33.96774971569008 +330100,杭州市,3,330000,120.21551180372168,30.25308298169347 +330200,宁波市,3,330000,121.63084278185603,29.866068124069646 +330300,温州市,3,330000,120.70647689035565,28.00108540447221 +330400,嘉兴市,3,330000,120.76355182586005,30.750974830920143 +330500,湖州市,3,330000,120.09451660915789,30.898963937294184 +330600,绍兴市,3,330000,120.59002264710614,30.057657361054257 +330700,金华市,3,330000,119.65343619052916,29.084639385513697 +330800,衢州市,3,330000,118.86659674035565,28.975545802265025 +330900,舟山市,3,330000,122.21355631852045,29.99091168016034 +331000,台州市,3,330000,121.42743470427969,28.66219405599615 +331100,丽水市,3,330000,119.9295730584414,28.473278180563412 +340100,合肥市,3,340000,117.23344266497664,31.826577833686887 +340200,芜湖市,3,340000,118.43943137653523,31.358536655799266 +340300,蚌埠市,3,340000,117.39551332813694,32.921523704350825 +340400,淮南市,3,340000,117.00638885071616,32.63184739905333 +340500,马鞍山市,3,340000,118.5135795794315,31.676265597609103 +340600,淮北市,3,340000,116.8045372670298,33.96165630027632 +340700,铜陵市,3,340000,117.81847679445747,30.95123323991339 +340800,安庆市,3,340000,117.1212827542562,30.53922247681024 +341000,黄山市,3,340000,118.14760982483591,30.27865098018807 +341100,滁州市,3,340000,118.33940613596579,32.26127087204081 +341200,阜阳市,3,340000,115.82043612491321,32.89606099485221 +341300,宿州市,3,340000,116.97054394561262,33.65209532645213 +341500,六安市,3,340000,116.52640966418569,31.741450815322555 +341600,亳州市,3,340000,115.7844632112745,33.850642695788835 +341700,池州市,3,340000,117.50208200570214,30.68054196371511 +341800,宣城市,3,340000,118.76553424276743,30.94660154529291 +350100,福州市,3,350000,119.30346983854001,26.080429420698078 +350200,厦门市,3,350000,118.09643549976651,24.485406605176305 +350300,莆田市,3,350000,119.0145209781265,25.45986545592271 +350400,三明市,3,350000,117.64552116782143,26.269736515991838 +350500,泉州市,3,350000,118.68244626680422,24.879952330498313 +350600,漳州市,3,350000,117.65357645298785,24.51892979117087 +350700,南平市,3,350000,118.08735102597767,27.389104987898513 +350800,龙岩市,3,350000,117.02344756677536,25.081219844871676 +350900,宁德市,3,350000,119.55451074542829,26.672241711408567 +360100,南昌市,3,360000,115.86458944231661,28.68945529506072 +360200,景德镇市,3,360000,117.18457644638579,29.274247711040953 +360300,萍乡市,3,360000,113.89369655407103,27.664752547951164 +360400,九江市,3,360000,115.96066124030492,29.666660847999456 +360500,新余市,3,360000,114.9235346513963,27.823578697788587 +360600,鹰潭市,3,360000,117.0755754270272,28.265787063191418 +360700,赣州市,3,360000,114.9405033729825,25.835176103497655 +360800,吉安市,3,360000,115.00051072001253,27.119726826070448 +360900,宜春市,3,360000,114.4235636759064,27.820856421848216 +361000,抚州市,3,360000,116.36453876864373,27.954892253419565 +361100,上饶市,3,360000,117.94945960312224,28.460625921851733 +370100,济南市,3,370000,117.12639941261048,36.65655420178723 +370200,青岛市,3,370000,120.38945519114627,36.072227496663224 +370300,淄博市,3,370000,118.06145253489896,36.81908568332188 +370400,枣庄市,3,370000,117.33054194483897,34.815994048435115 +370500,东营市,3,370000,118.58846268606544,37.45484732016579 +370600,烟台市,3,370000,121.45441541730195,37.470038383730525 +370700,潍坊市,3,370000,119.16837791142822,36.71265155126753 +370800,济宁市,3,370000,116.59361234853988,35.420177394529645 +370900,泰安市,3,370000,117.0944948347959,36.2058580448846 +371000,威海市,3,370000,122.12754097831325,37.5164305480148 +371100,日照市,3,370000,119.53341540456555,35.42283899843767 +371300,临沂市,3,370000,118.36353300501388,35.11067124236514 +371400,德州市,3,370000,116.36555674397471,37.441308454576266 +371500,聊城市,3,370000,115.99158784830443,36.46275818769411 +371600,滨州市,3,370000,117.9774040171467,37.3881961960769 +371700,菏泽市,3,370000,115.48754503343376,35.23940742476551 +410100,郑州市,3,410000,113.63141920733915,34.75343885045448 +410200,开封市,3,410000,114.32076511162192,34.80401391129182 +410300,洛阳市,3,410000,112.4594212983115,34.62426277921943 +410400,平顶山市,3,410000,113.19952856052156,33.772050748691015 +410500,安阳市,3,410000,114.39950042177432,36.10594098401491 +410600,鹤壁市,3,410000,114.30359364247649,35.7523574114 +410700,新乡市,3,410000,113.81159378076424,35.19656440899276 +410800,焦作市,3,410000,113.24854783457334,35.22096325403899 +410900,濮阳市,3,410000,115.03559747034215,35.76759302890629 +411000,许昌市,3,410000,113.85847553685502,34.04143161161871 +411100,漯河市,3,410000,114.02342077764726,33.5877107071022 +411200,三门峡市,3,410000,111.2065332238741,34.778327249459984 +411300,南阳市,3,410000,112.53450131351325,32.99656220465144 +411400,商丘市,3,410000,115.66244933826238,34.4202016658586 +411500,信阳市,3,410000,114.09748283304512,32.15301454753105 +411600,周口市,3,410000,114.7079826661061,33.643083575264406 +411700,驻马店市,3,410000,114.02847078173271,33.01784241674367 +419000,省直辖县级行政区划,3,410000,113.75938408486323,34.771712921931496 +420100,武汉市,3,420000,114.31158155473231,30.598466736400987 +420200,黄石市,3,420000,115.04553290894361,30.205207848941598 +420300,十堰市,3,420000,110.80452956069568,32.63506185840116 +420500,宜昌市,3,420000,111.29254921035434,30.697446484492378 +420600,襄阳市,3,420000,112.12853720100244,32.014796804669224 +420700,鄂州市,3,420000,114.90160738827099,30.39657217331699 +420800,荆门市,3,420000,112.20639298023002,31.041732575569622 +420900,孝感市,3,420000,113.96346265773938,30.924526261070227 +421000,荆州市,3,420000,112.24552262926137,30.340842107742912 +421100,黄冈市,3,420000,114.87849048410779,30.4593588576181 +421200,咸宁市,3,420000,114.32851909026844,29.847055947646492 +421300,随州市,3,420000,113.38945001822157,31.6965167723283 +422800,恩施土家族苗族自治州,3,420000,109.49459261857503,30.277939575301094 +429000,省直辖县级行政区划,3,420000,114.34844073658718,30.551600064658352 +430100,长沙市,3,430000,112.94547319535287,28.23488939994364 +430200,株洲市,3,430000,113.14047079776427,27.833567639016444 +430300,湘潭市,3,430000,112.95046418076468,27.835702227135585 +430400,衡阳市,3,430000,112.57844721325992,26.899576139189122 +430500,邵阳市,3,430000,111.474432885931,27.245270272808565 +430600,岳阳市,3,430000,113.13548942422142,29.3631782939259 +430700,常德市,3,430000,111.70545217995837,29.037749999406877 +430800,张家界市,3,430000,110.48553254695402,29.122815562551878 +430900,益阳市,3,430000,112.36151595471031,28.559711178489888 +431000,郴州市,3,430000,113.02146049909462,25.776683273601865 +431100,永州市,3,430000,111.61945505792227,26.425864117900094 +431200,怀化市,3,430000,110.00851426537254,27.575160902978517 +431300,娄底市,3,430000,112.00150349288418,27.703208596991583 +433100,湘西土家族苗族自治州,3,430000,109.74557664946683,28.317369104701186 +440100,广州市,3,440000,113.27143134445974,23.135336306695006 +440200,韶关市,3,440000,113.60352734562261,24.815881278583017 +440300,深圳市,3,440000,114.06455183658751,22.548456637984177 +440400,珠海市,3,440000,113.58255478654918,22.27656465424921 +440500,汕头市,3,440000,116.68852864054833,23.35909171772515 +440600,佛山市,3,440000,113.12851219549718,23.02775875078891 +440700,江门市,3,440000,113.08855619524043,22.584603880965 +440800,湛江市,3,440000,110.36555441392824,21.276723439012073 +440900,茂名市,3,440000,110.931542579969,21.669064031332095 +441200,肇庆市,3,440000,112.47148894063035,23.052888771125616 +441300,惠州市,3,440000,114.4235580165817,23.116358854725593 +441400,梅州市,3,440000,116.12953737612247,24.294177532206206 +441500,汕尾市,3,440000,115.38155260365083,22.79126303654673 +441600,河源市,3,440000,114.70744627290641,23.749684370959752 +441700,阳江市,3,440000,111.98848929181268,21.864339726138933 +441800,清远市,3,440000,113.06246832527266,23.688230292088083 +441900,东莞市,3,440000,113.75842045787648,23.02730841164339 +442000,中山市,3,440000,113.39942236263188,22.5223146707905 +445100,潮州市,3,440000,116.62947017362819,23.662623192615886 +445200,揭阳市,3,440000,116.37851218033846,23.555740488275585 +445300,云浮市,3,440000,112.05151269959146,22.920911970342857 +450100,南宁市,3,450000,108.37345082581861,22.822606601187154 +450200,柳州市,3,450000,109.43442194634564,24.331961386852413 +450300,桂林市,3,450000,110.18619487315159,25.24169878354397 +450400,梧州市,3,450000,111.28551681182014,23.48274528113516 +450500,北海市,3,450000,109.126533212566,21.48683649576942 +450600,防城港市,3,450000,108.360418838298,21.6930052899694 +450700,钦州市,3,450000,108.66058016842224,21.986593539484296 +450800,贵港市,3,450000,109.60552031033306,23.117448382037534 +450900,玉林市,3,450000,110.1884531233724,22.659830509953142 +451000,百色市,3,450000,106.62458932565383,23.908185934295958 +451100,贺州市,3,450000,111.57352631416218,24.409450902865487 +451200,河池市,3,450000,108.64310866524227,24.491714255143005 +451300,来宾市,3,450000,109.22745819590091,23.75654676260728 +451400,崇左市,3,450000,107.3715202061015,22.383117234663302 +460100,海口市,3,460000,110.2067198964201,20.052113086180366 +460200,三亚市,3,460000,109.51855670139908,18.258736291747855 +460300,三沙市,3,460000,112.34048204137058,16.838953334409123 +460400,儋州市,3,460000,109.58745583568611,19.527146110044196 +469000,省直辖县级行政区划,3,460000,110.35553651088428,20.025801964462914 +500100,重庆市,3,500000,106.55843415537664,29.568996245338923 +510100,成都市,3,510000,104.07274727406208,30.578993724029967 +510300,自贡市,3,510000,104.78444884671711,29.345584921327575 +510400,攀枝花市,3,510000,101.72554117091441,26.58803317333301 +510500,泸州市,3,510000,105.4485240693266,28.87766830360723 +510600,德阳市,3,510000,104.40441936496448,31.133115003656755 +510700,绵阳市,3,510000,104.6855618607612,31.473663048745863 +510800,广元市,3,510000,105.85042318166482,32.44161630531542 +510900,遂宁市,3,510000,105.5994215306444,30.53909767110912 +511000,内江市,3,510000,105.06458802499718,29.58588653832045 +511100,乐山市,3,510000,103.7725376036347,29.55794071745811 +511300,南充市,3,510000,106.11750261487227,30.843782508337036 +511400,眉山市,3,510000,103.85656331579456,30.082526119421058 +511500,宜宾市,3,510000,104.6494037048691,28.75800702855183 +511600,广安市,3,510000,106.63955268233484,30.461746110678995 +511700,达州市,3,510000,107.47459385897544,31.214307723927455 +511800,雅安市,3,510000,103.04954262360451,30.01679254570607 +511900,巴中市,3,510000,106.7515853031645,31.872888585956545 +512000,资阳市,3,510000,104.6344353416441,30.13495655925314 +513200,阿坝藏族羌族自治州,3,510000,102.23141546175019,31.905511577266523 +513300,甘孜藏族自治州,3,510000,101.96854674579022,30.05527884351838 +513400,凉山彝族自治州,3,510000,102.2735026809702,27.88775230036972 +520100,贵阳市,3,520000,106.63657676352776,26.653324822309752 +520200,六盘水市,3,520000,104.8375546023468,26.598833108257494 +520300,遵义市,3,520000,107.03792295677086,27.728325334416603 +520400,安顺市,3,520000,105.95441712388904,26.25925237871499 +520500,毕节市,3,520000,105.2985887950112,27.29021508342595 +520600,铜仁市,3,520000,109.19643889817665,27.73778645640524 +522300,黔西南布依族苗族自治州,3,520000,104.91249214626991,25.09396734941651 +522600,黔东南苗族侗族自治州,3,520000,107.9894462407788,26.58970296982603 +522700,黔南布依族苗族自治州,3,520000,107.5284027057371,26.260616196073833 +530100,昆明市,3,530000,102.83944512326053,24.886272111644136 +530300,曲靖市,3,530000,103.80243482794681,25.496406931543667 +530400,玉溪市,3,530000,102.55356029311,24.35771094244625 +530500,保山市,3,530000,99.16801175601306,25.11785803166449 +530600,昭通市,3,530000,103.72351177196889,27.34408386024681 +530700,丽江市,3,530000,100.23246452903453,26.860657438064884 +530800,普洱市,3,530000,100.97256981472799,22.830979186010275 +530900,临沧市,3,530000,100.09544042014869,23.89046855627851 +532300,楚雄彝族自治州,3,530000,101.53441248050268,25.051773565340376 +532500,红河哈尼族彝族自治州,3,530000,103.38154905257933,23.36999624760546 +532600,文山壮族苗族自治州,3,530000,104.22256899109433,23.40599429361173 +532800,西双版纳傣族自治州,3,530000,100.80344682455637,22.013601254764165 +532900,大理白族自治州,3,530000,100.27458284048366,25.6121284181925 +533100,德宏傣族景颇族自治州,3,530000,98.59135935611411,24.438010702758117 +533300,怒江傈僳族自治州,3,530000,98.8632883813579,25.823707417657754 +533400,迪庆藏族自治州,3,530000,99.70952999013957,27.82518468364326 +540100,拉萨市,3,540000,91.17845425628477,29.65948787983075 +540200,日喀则市,3,540000,88.89370303482552,29.275657822511512 +540300,昌都市,3,540000,97.17733324895293,31.148661810810207 +540400,林芝市,3,540000,94.36805828713257,29.654042176951524 +540500,山南市,3,540000,91.77867513851903,29.243026939249226 +540600,那曲市,3,540000,92.0573384981749,31.482438388454657 +542500,阿里地区,3,540000,80.11277692192645,32.50686601763335 +610100,西安市,3,610000,108.94646555063274,34.34726881662395 +610200,铜川市,3,610000,108.95240424835922,34.902637080502906 +610300,宝鸡市,3,610000,107.2445753670404,34.36891564286998 +610400,咸阳市,3,610000,108.71542245143303,34.335476293368586 +610500,渭南市,3,610000,109.51658960525897,34.50571551675255 +610600,延安市,3,610000,109.50118366576285,36.656089661066176 +610700,汉中市,3,610000,107.02943020926463,33.073799907833795 +610800,榆林市,3,610000,109.74161603381395,38.290883835484046 +610900,安康市,3,610000,109.03560108265746,32.69051277057377 +611000,商洛市,3,610000,109.92441788136406,33.87863385220776 +620100,兰州市,3,620000,103.84052119633628,36.067234693545565 +620200,嘉峪关市,3,620000,98.29620384300111,39.77796014739059 +620300,金昌市,3,620000,102.19460568669837,38.52582009209263 +620400,白银市,3,620000,104.1444508283435,36.55082533041454 +620500,天水市,3,620000,105.73141674566955,34.58741188165064 +620600,武威市,3,620000,102.64455434036918,37.93437780815811 +620700,张掖市,3,620000,100.45641147405634,38.932066007004934 +620800,平凉市,3,620000,106.67144234827796,35.549232050463516 +620900,酒泉市,3,620000,98.50068521606795,39.73846908071564 +621000,庆阳市,3,620000,107.6493856959542,35.71521598356201 +621100,定西市,3,620000,104.63242008306302,35.586832926561875 +621200,陇南市,3,620000,104.9668643447692,33.37603215910919 +622900,临夏回族自治州,3,620000,103.21639056529743,35.60756218350311 +623000,甘南藏族自治州,3,620000,102.91758468825803,34.98913990996821 +630100,西宁市,3,630000,101.78445017050855,36.62338469651661 +630200,海东市,3,630000,102.41503557578936,36.48017021268231 +632200,海北藏族自治州,3,630000,100.90743432145598,36.96066282412982 +632300,黄南藏族自治州,3,630000,102.02242827807585,35.525804586515534 +632500,海南藏族自治州,3,630000,100.62662114445924,36.2921024798988 +632600,果洛藏族自治州,3,630000,100.25159197879555,34.4771938664709 +632700,玉树藏族自治州,3,630000,97.01318076277326,33.01097958514274 +632800,海西蒙古族藏族自治州,3,630000,97.37629911601906,37.38275046252745 +640100,银川市,3,640000,106.23849358740017,38.492460055509596 +640200,石嘴山市,3,640000,106.3906004255049,38.98968283991508 +640300,吴忠市,3,640000,106.20537126663626,38.00371291345338 +640400,固原市,3,640000,106.24857742607188,36.02161725801098 +640500,中卫市,3,640000,105.20357090088713,37.50570141870293 +650100,乌鲁木齐市,3,650000,87.62443993536046,43.830763204290484 +650200,克拉玛依市,3,650000,84.87429458457947,45.60847146791606 +650400,吐鲁番市,3,650000,89.1972972460079,42.95698484877124 +650500,哈密市,3,650000,93.52121554028504,42.82582436811265 +652300,昌吉回族自治州,3,650000,87.3150016244744,44.01685415991987 +652700,博尔塔拉蒙古自治州,3,650000,82.07291475827434,44.9121964134647 +652800,巴音郭楞蒙古自治州,3,650000,86.1517138653326,41.7702873304504 +652900,阿克苏地区,3,650000,80.26694348473501,41.17502986007749 +653000,克孜勒苏柯尔克孜自治州,3,650000,76.17430867621205,39.72047120487073 +653100,喀什地区,3,650000,75.99639055639747,39.47609674864479 +653200,和田地区,3,650000,79.9285070635119,37.12044646304192 +654000,伊犁哈萨克自治州,3,650000,81.3305377475322,43.92272313749215 +654200,塔城地区,3,650000,82.9872355184064,46.750948254373434 +654300,阿勒泰地区,3,650000,88.14792620373527,47.85072787010195 +659000,自治区直辖县级行政区划,3,650000,87.63347320573824,43.79923810128996 +110101,东城区,4,110100,116.4224009776628,39.93482727239599 +110102,西城区,4,110100,116.37251358116619,39.91812360584148 +110105,朝阳区,4,110100,116.44955872950158,39.926374523079886 +110106,丰台区,4,110100,116.29240188731139,39.8649371975573 +110107,石景山区,4,110100,116.22961266775826,39.911353808778294 +110108,海淀区,4,110100,116.3054340544974,39.96548984110075 +110109,门头沟区,4,110100,116.10760355576534,39.94614672003409 +110111,房山区,4,110100,116.14944375184247,39.75432583977336 +110112,通州区,4,110100,116.66341535785384,39.916017122432365 +110113,顺义区,4,110100,116.66142426369096,40.13635076223076 +110114,昌平区,4,110100,116.23761791731043,40.22641337159427 +110115,大兴区,4,110100,116.348625212231,39.73255523655448 +110116,怀柔区,4,110100,116.63838587142932,40.32261840426579 +110117,平谷区,4,110100,117.12737910459967,40.146950735799116 +110118,密云区,4,110100,116.84954704426833,40.38217565813752 +110119,延庆区,4,110100,115.98163156901515,40.46216897375426 +120101,和平区,4,120100,117.22146699490091,39.12339025327971 +120102,河东区,4,120100,117.25841295306803,39.134487325955114 +120103,河西区,4,120100,117.2294162800198,39.115718082215515 +120104,南开区,4,120100,117.15651537432414,39.14410527976771 +120105,河北区,4,120100,117.20359278135501,39.15348514470478 +120106,红桥区,4,120100,117.15751788327329,39.17328564656417 +120110,东丽区,4,120100,117.32056850791443,39.09233234281453 +120111,西青区,4,120100,117.01441017993696,39.14872660896657 +120112,津南区,4,120100,117.36338677903083,38.94414856811469 +120113,北辰区,4,120100,117.14140273157703,39.2303439099184 +120114,武清区,4,120100,117.05059715977872,39.389871228788344 +120115,宝坻区,4,120100,117.31660069247685,39.723194482933174 +120116,滨海新区,4,120100,117.71739882966088,39.00941577364663 +120117,宁河区,4,120100,117.83239334341803,39.33695643122726 +120118,静海区,4,120100,116.98046860454797,38.95337068917225 +120119,蓟州区,4,120100,117.41457869478904,40.051508786394855 +130102,长安区,4,130100,114.54561160958328,38.04325613649811 +130104,桥西区,4,130100,114.45660004371892,38.03115465457638 +130105,新华区,4,130100,114.46943844640641,38.057119539195526 +130107,井陉矿区,4,130100,114.06863186515059,38.07056583451666 +130108,裕华区,4,130100,114.53758291425729,38.012087686284076 +130109,藁城区,4,130100,114.8533779044236,38.02781655532087 +130110,鹿泉区,4,130100,114.3205975776443,38.091749457589636 +130111,栾城区,4,130100,114.65457561879083,37.9058163641652 +130121,井陉县,4,130100,114.15146299927575,38.03838621492678 +130123,正定县,4,130100,114.57748106365241,38.15171372795392 +130125,行唐县,4,130100,114.55960676027597,38.444238747675655 +130126,灵寿县,4,130100,114.38947775770787,38.31462937004633 +130127,高邑县,4,130100,114.61841307285897,37.62187956155255 +130128,深泽县,4,130100,115.20740369912795,38.19045120306884 +130129,赞皇县,4,130100,114.39246354556191,37.671667061291416 +130130,无极县,4,130100,114.98243934348369,38.18543617027971 +130131,平山县,4,130100,114.20233197420312,38.25366251987636 +130132,元氏县,4,130100,114.53256551866185,37.7723385538555 +130133,赵县,4,130100,114.78259655057873,37.76185852288779 +130171,石家庄高新技术产业开发区,4,130100,114.6280539570837,38.0427493019111 +130172,石家庄循环化工园区,4,130100,114.70121932392148,38.00283737438911 +130181,辛集市,4,130100,115.22445084279079,37.949309043172505 +130183,晋州市,4,130100,115.05052901469845,38.039491309735894 +130184,新乐市,4,130100,114.69053218326928,38.34929264795945 +130202,路南区,4,130200,118.16060668861537,39.63104285357227 +130203,路北区,4,130200,118.20639924927531,39.63066079909864 +130204,古冶区,4,130200,118.4534009255209,39.73973591476624 +130205,开平区,4,130200,118.2686076244857,39.67714363586181 +130207,丰南区,4,130200,118.09036557570423,39.58154048510918 +130208,丰润区,4,130200,118.16854133135446,39.83835343085074 +130209,曹妃甸区,4,130200,118.4664598622111,39.27928399633476 +130224,滦南县,4,130200,118.68995575783818,39.52665245913953 +130225,乐亭县,4,130200,118.91938406305317,39.43193132009613 +130227,迁西县,4,130200,118.32038397780872,40.147837151362445 +130229,玉田县,4,130200,117.74543440564399,39.90659234818871 +130271,河北唐山芦台经济开发区,4,130200,118.18645947203979,39.63658372414733 +130272,唐山市汉沽管理区,4,130200,117.88752657460128,39.368259917564714 +130273,唐山高新技术产业开发区,4,130200,118.18463222880195,39.68228686844219 +130274,河北唐山海港经济开发区,4,130200,119.57119651736528,39.95330464249715 +130281,遵化市,4,130200,117.97237521307129,40.195533204032955 +130283,迁安市,4,130200,118.70645736056483,40.00418392493125 +130284,滦州市,4,130200,118.71048006246906,39.7471157654891 +130302,海港区,4,130300,119.57119651736528,39.95330464249715 +130303,山海关区,4,130300,119.78243521396982,39.984445641831485 +130304,北戴河区,4,130300,119.491526071177,39.841005667935896 +130306,抚宁区,4,130300,119.25154914401945,39.88141356935017 +130321,青龙满族自治县,4,130300,118.95648129586817,40.41279370231334 +130322,昌黎县,4,130300,119.20609416657015,39.706762290841475 +130324,卢龙县,4,130300,118.89948911126258,39.897958466103006 +130371,秦皇岛市经济技术开发区,4,130300,119.5259671942601,39.89472719832739 +130372,北戴河新区,4,130300,119.43359596578844,39.8655130940727 +130402,邯山区,4,130400,114.53761938546099,36.600119770111704 +130403,丛台区,4,130400,114.49943259789293,36.64267256598247 +130404,复兴区,4,130400,114.4685856849858,36.64537606676819 +130406,峰峰矿区,4,130400,114.21948332130513,36.42565361439937 +130407,肥乡区,4,130400,114.80654708225521,36.553825253669615 +130408,永年区,4,130400,114.550625142465,36.74756938957492 +130423,临漳县,4,130400,114.59217770111785,36.329381126857 +130424,成安县,4,130400,114.67657655801901,36.4497962089534 +130425,大名县,4,130400,115.15461253007031,36.29128846623129 +130426,涉县,4,130400,113.69758434882932,36.590691663211175 +130427,磁县,4,130400,114.38043173139184,36.38035894094747 +130430,邱县,4,130400,115.19339516368314,36.81736241714275 +130431,鸡泽县,4,130400,114.89658577063967,36.91639820641365 +130432,广平县,4,130400,114.9544149064889,36.4897799956119 +130433,馆陶县,4,130400,115.28853676634758,36.55395672865321 +130434,魏县,4,130400,114.94545044631319,36.366156454371385 +130435,曲周县,4,130400,114.96340442938836,36.77154483133649 +130471,邯郸经济技术开发区,4,130400,114.5456282282352,36.631262731204046 +130473,邯郸冀南新区,4,130400,114.471408789712,36.47073031587578 +130481,武安市,4,130400,114.21051607638233,36.70248828627979 +130502,襄都区,4,130500,114.51347113674177,37.073749959650705 +130503,信都区,4,130500,114.47478129808812,37.10004656137518 +130505,任泽区,4,130500,114.67860600982715,37.12672678352311 +130506,南和区,4,130500,114.6905477239546,37.010997970560375 +130522,临城县,4,130500,114.5054433397213,37.450788548442155 +130523,内丘县,4,130500,114.51849293403419,37.292857912046905 +130524,柏乡县,4,130500,114.6994973620894,37.488758727151506 +130525,隆尧县,4,130500,114.77661608164605,37.355908006295365 +130528,宁晋县,4,130500,114.94596948723685,37.63074152974115 +130529,巨鹿县,4,130500,115.0435873588701,37.227088328938194 +130530,新河县,4,130500,115.24854716945154,37.53459060153626 +130531,广宗县,4,130500,115.14960474634384,37.08045712216151 +130532,平乡县,4,130500,115.03658174368942,37.0690963930439 +130533,威县,4,130500,115.2736176186073,36.98158160866276 +130534,清河县,4,130500,115.67439356764524,37.04637540161698 +130535,临西县,4,130500,115.50762943785641,36.87675996654004 +130571,河北邢台经济开发区,4,130500,114.51146225612979,37.07668595096609 +130581,南宫市,4,130500,115.41452905480229,37.36406940272302 +130582,沙河市,4,130500,114.50947385688346,36.8611273411454 +130602,竞秀区,4,130600,115.46543414161117,38.88378796169117 +130606,莲池区,4,130600,115.53548768833184,38.86067580704093 +130607,满城区,4,130600,115.32837508859573,38.95544120868623 +130608,清苑区,4,130600,115.49660588179071,38.77100177474947 +130609,徐水区,4,130600,115.66247952132751,39.0247125838342 +130623,涞水县,4,130600,115.7205430250843,39.40033419848886 +130624,阜平县,4,130600,114.20156347383934,38.85535144479584 +130626,定兴县,4,130600,115.81441011189118,39.26942352852659 +130627,唐县,4,130600,114.98944711459758,38.7540199251248 +130628,高阳县,4,130600,115.78544721513012,38.70625773408686 +130629,容城县,4,130600,115.86863129349015,39.04855943541596 +130630,涞源县,4,130600,114.70047561678977,39.36627169152419 +130631,望都县,4,130600,115.16158760286363,38.70015764554925 +130632,安新县,4,130600,115.94242628265987,38.94173429859305 +130633,易县,4,130600,115.50360664612163,39.35505446998136 +130634,曲阳县,4,130600,114.75145481380322,38.62838410412241 +130635,蠡县,4,130600,115.59044548044898,38.494200963237745 +130636,顺平县,4,130600,115.141597430689,38.84326137036368 +130637,博野县,4,130600,115.47046698806136,38.463408004951994 +130638,雄县,4,130600,116.1146014455186,39.00018011949929 +130671,保定高新技术产业开发区,4,130600,116.04868647075793,39.492189845770596 +130672,保定白沟新城,4,130600,116.06875507635863,39.15100554249527 +130681,涿州市,4,130600,115.98161971138242,39.49106583200048 +130682,定州市,4,130600,114.99649620776492,38.522198840134 +130683,安国市,4,130600,115.33340802487648,38.424828318687446 +130684,高碑店市,4,130600,115.88056905507335,39.33233544746168 +130702,桥东区,4,130700,114.90060577762738,40.79426843742311 +130703,桥西区,4,130700,114.8765160984274,40.825605695041084 +130705,宣化区,4,130700,115.10544440679553,40.614591888266105 +130706,下花园区,4,130700,115.29351688226434,40.5081451826724 +130708,万全区,4,130700,114.74742582376042,40.77314964899669 +130709,崇礼区,4,130700,115.28954933631843,40.98047788586999 +130722,张北县,4,130700,114.7263751121007,41.164943620014895 +130723,康保县,4,130700,114.60635583664293,41.858636884497415 +130724,沽源县,4,130700,115.69540744877906,41.676015876096564 +130725,尚义县,4,130700,113.97580941782127,41.08221563982466 +130726,蔚县,4,130700,114.59540055179599,39.84708863636645 +130727,阳原县,4,130700,114.15752413604322,40.10958838873102 +130728,怀安县,4,130700,114.39246911505609,40.68036934311551 +130730,怀来县,4,130700,115.52455288485054,40.42028989038194 +130731,涿鹿县,4,130700,115.21138346202879,40.385834075002876 +130732,赤城县,4,130700,115.83850589956863,40.918761216841006 +130771,张家口经济开发区,4,130700,114.89257223145165,40.7732372026915 +130772,张家口市察北管理区,4,130700,114.95235760720996,41.41103022011367 +130773,张家口市塞北管理区,4,130700,115.82171342551784,41.8764862132115 +130802,双桥区,4,130800,117.94942790898834,40.98082447740105 +130803,双滦区,4,130800,117.80657828882504,40.964729148178336 +130804,鹰手营子矿区,4,130800,117.66560909158578,40.55204323362298 +130821,承德县,4,130800,118.1804557369944,40.77436719493557 +130822,兴隆县,4,130800,117.50742737263927,40.42345402963516 +130824,滦平县,4,130800,117.33949787111233,40.947560962909996 +130825,隆化县,4,130800,117.74545102429592,41.31989880502099 +130826,丰宁满族自治县,4,130800,116.65239270009364,41.21533638000358 +130827,宽城满族自治县,4,130800,118.49159436054974,40.61715150781358 +130828,围场满族蒙古族自治县,4,130800,117.76656434784968,41.9443237736111 +130871,承德高新技术产业开发区,4,130800,118.1804557369944,40.77436719493557 +130881,平泉市,4,130800,118.70742672204064,41.02375562592939 +130902,新华区,4,130900,116.87243317374606,38.32036671947827 +130903,运河区,4,130900,116.84954048663813,38.28917947575794 +130921,沧县,4,130900,116.88439779466401,38.29945274340688 +130922,青县,4,130900,116.81057477836235,38.588464758639795 +130923,东光县,4,130900,116.54340955697872,37.894513906653266 +130924,海兴县,4,130900,117.50441804918084,38.14940251651842 +130925,盐山县,4,130900,117.23741362448348,38.06431839955863 +130926,肃宁县,4,130900,115.8365176799834,38.428905919717586 +130927,南皮县,4,130900,116.71560115882829,38.045187886965145 +130928,吴桥县,4,130900,116.39739206243448,37.63390875555352 +130929,献县,4,130900,116.12956002887077,38.19598143800661 +130930,孟村回族自治县,4,130900,117.11043607454543,38.059839127888104 +130971,河北沧州经济开发区,4,130900,116.84558075595014,38.310215141107044 +130972,沧州高新技术产业开发区,4,130900,116.1335600036456,38.7543479376887 +130973,沧州渤海新区,4,130900,117.76415203823319,38.282320846617175 +130981,泊头市,4,130900,116.5846280358124,38.08925691544578 +130982,任丘市,4,130900,116.09127820057975,38.69203213176629 +130983,黄骅市,4,130900,117.33648109171817,38.37749390073505 +130984,河间市,4,130900,116.10562809211834,38.45135651510629 +131002,安次区,4,131000,116.70963326617274,39.526159764040514 +131003,广阳区,4,131000,116.71761426147614,39.52861144733396 +131022,固安县,4,131000,116.30542004093144,39.44448485530404 +131023,永清县,4,131000,116.5054292898474,39.3278529985738 +131024,香河县,4,131000,117.01240210779996,39.76793918854631 +131025,大城县,4,131000,116.66040917846469,38.71085864002598 +131026,文安县,4,131000,116.46460947899904,38.878950493070235 +131028,大厂回族自治县,4,131000,116.99640912565307,39.89220839408563 +131071,廊坊经济技术开发区,4,131000,116.69058173342549,39.54336666275853 +131081,霸州市,4,131000,116.39839726630014,39.13092059698142 +131082,三河市,4,131000,117.0845878724791,39.98809955244307 +131102,桃城区,4,131100,115.68139532011222,37.741636751694145 +131103,冀州区,4,131100,115.58542988146456,37.55708602583317 +131121,枣强县,4,131100,115.7305629044037,37.51936368976413 +131122,武邑县,4,131100,115.89451363116582,37.807764276867424 +131123,武强县,4,131100,115.98961391177681,38.04685680523654 +131124,饶阳县,4,131100,115.73257160535455,38.24103752542849 +131125,安平县,4,131100,115.5255492853222,38.24050692219121 +131126,故城县,4,131100,115.97260216135105,37.35334755247688 +131127,景县,4,131100,116.27741078529978,37.69881455139486 +131128,阜城县,4,131100,116.18242153524983,37.86873245790551 +131171,河北衡水高新技术产业开发区,4,131100,115.59730943285074,38.251782020654495 +131172,衡水滨湖新区,4,131100,115.6754061376161,37.745191408077424 +131182,深州市,4,131100,115.56636927583166,38.00694123492171 +140105,小店区,4,140100,112.57239624162112,37.742322528644706 +140106,迎泽区,4,140100,112.56938467239891,37.8695324842251 +140107,杏花岭区,4,140100,112.57638301130496,37.90018624684476 +140108,尖草坪区,4,140100,112.49360496703545,37.94594335454805 +140109,万柏林区,4,140100,112.52257675702106,37.8649744104023 +140110,晋源区,4,140100,112.48456424072192,37.72116885784946 +140121,清徐县,4,140100,112.36455763137184,37.613066838238375 +140122,阳曲县,4,140100,112.67940895159992,38.06462081944815 +140123,娄烦县,4,140100,111.80359063362269,38.073195368895746 +140171,山西转型综合改革示范区,4,140100,112.6746217917067,38.03796048534677 +140181,古交市,4,140100,112.18245286889747,37.912999960962374 +140212,新荣区,4,140200,113.14644373539272,40.261971219328466 +140213,平城区,4,140200,113.30442522204106,40.08199837502475 +140214,云冈区,4,140200,113.16240150396362,39.99683881127932 +140215,云州区,4,140200,113.61847103171833,40.046229886508016 +140221,阳高县,4,140200,113.75541420332299,40.36739184247229 +140222,天镇县,4,140200,114.0974775330426,40.42641219869095 +140223,广灵县,4,140200,114.2885863709657,39.76600421713898 +140224,灵丘县,4,140200,114.24136819946143,39.448825128052334 +140225,浑源县,4,140200,113.69872950869346,39.71172415388494 +140226,左云县,4,140200,112.7094632895556,40.01962344901451 +140271,山西大同经济开发区,4,140200,113.40172733928755,40.076817022196806 +140302,城区,4,140300,113.60656821421946,37.85343342071212 +140303,矿区,4,140300,113.5615212471328,37.874409150947606 +140311,郊区,4,140300,113.60060283681935,37.95035289294265 +140321,平定县,4,140300,113.66442115516472,37.792796383591316 +140322,盂县,4,140300,113.4184204607489,38.091979630200996 +140403,潞州区,4,140400,113.12952091721245,36.209472481338004 +140404,上党区,4,140400,113.05741608985974,36.05928647929114 +140405,屯留区,4,140400,112.898474763774,36.321630843108416 +140406,潞城区,4,140400,113.23557845894248,36.339691267612324 +140423,襄垣县,4,140400,113.05741258646825,36.54168582115512 +140425,平顺县,4,140400,113.44251696707077,36.205989459384334 +140426,黎城县,4,140400,113.39343247603895,36.50866990144076 +140427,壶关县,4,140400,113.21357985530864,36.121334604236964 +140428,长子县,4,140400,112.88456585041024,36.128001557793574 +140429,武乡县,4,140400,112.8706056438019,36.84316794930056 +140430,沁县,4,140400,112.70545801477827,36.7621899385521 +140431,沁源县,4,140400,112.34445202693917,36.506103350913286 +140471,山西长治高新技术产业园区,4,140400,113.13026947519391,36.22274120113376 +140502,城区,4,140500,112.85958379451667,35.50727892458355 +140521,沁水县,4,140500,112.19342620968516,35.69636446245674 +140522,阳城县,4,140500,112.42145378711842,35.492181320425026 +140524,陵川县,4,140500,113.28740655466288,35.781743639537595 +140525,泽州县,4,140500,112.7944012195933,35.59976972948786 +140581,高平市,4,140500,112.93041239923134,35.80433679857751 +140602,朔城区,4,140600,112.43837642563759,39.325302712534004 +140603,平鲁区,4,140600,112.29552500886327,39.517389104237175 +140621,山阴县,4,140600,112.82243194472665,39.53403049801094 +140622,应县,4,140600,113.19749353921925,39.56007785237528 +140623,右玉县,4,140600,112.47350008124718,39.99485955543098 +140671,山西朔州经济开发区,4,140600,112.4393709396677,39.337108370541735 +140681,怀仁市,4,140600,113.1066084673833,39.83375688952166 +140702,榆次区,4,140700,112.71450350211099,37.703940486801216 +140703,太谷区,4,140700,112.55738411926058,37.42739557731329 +140721,榆社县,4,140700,112.98159856583429,37.07636966870016 +140722,左权县,4,140700,113.38545184005775,37.088555147170815 +140723,和顺县,4,140700,113.57660568308691,37.33480773868841 +140724,昔阳县,4,140700,113.71361290387442,37.61788404299596 +140725,寿阳县,4,140700,113.18341017492547,37.9013076069566 +140727,祁县,4,140700,112.34244242768281,37.36413128347519 +140728,平遥县,4,140700,112.182455563814,37.195600690703 +140729,灵石县,4,140700,111.78561787596237,36.85336750127023 +140781,介休市,4,140700,111.92356319719394,37.03268640360337 +140802,盐湖区,4,140800,111.00437711461986,35.0214253278287 +140821,临猗县,4,140800,110.78040700351404,35.149542242621784 +140822,万荣县,4,140800,110.84457611016106,35.42110880053557 +140823,闻喜县,4,140800,111.23141035768413,35.36293119638129 +140824,稷山县,4,140800,110.98941457872347,35.61040356961574 +140825,新绛县,4,140800,111.23140649497044,35.62263010308172 +140826,绛县,4,140800,111.57548652055998,35.49727637389565 +140827,垣曲县,4,140800,111.67660670571551,35.30301451741769 +140828,夏县,4,140800,111.22643149939508,35.14746177980724 +140829,平陆县,4,140800,111.22348047596425,34.84292515458109 +140830,芮城县,4,140800,110.70061151319877,34.69938811056296 +140881,永济市,4,140800,110.45457767130965,34.87282971471371 +140882,河津市,4,140800,110.71857214373472,35.60192657532228 +140902,忻府区,4,140900,112.75261366421904,38.409879817619995 +140921,定襄县,4,140900,112.96352861151779,38.4799743058469 +140922,五台县,4,140900,113.26145109491867,38.73418159056545 +140923,代县,4,140900,112.96655194854216,39.07272834638067 +140924,繁峙县,4,140900,113.27140827251347,39.19523743073412 +140925,宁武县,4,140900,112.32639824212184,39.02434238143123 +140926,静乐县,4,140900,111.94543190585105,38.36514708843798 +140927,神池县,4,140900,112.21738276000855,39.09687582486334 +140928,五寨县,4,140900,111.85340993856165,38.917019909691845 +140929,岢岚县,4,140900,111.57947778177136,38.710151038936225 +140930,河曲县,4,140900,111.14444863516302,39.39070248871515 +140931,保德县,4,140900,111.09254175804939,39.02833693239553 +140932,偏关县,4,140900,111.51447352049172,39.44223009038652 +140971,五台山风景名胜区,4,140900,113.59570814975659,38.976197885134965 +140981,原平市,4,140900,112.71748713403183,38.73647589760487 +141002,尧都区,4,141000,111.58643021726583,36.084562230191636 +141021,曲沃县,4,141000,111.48239637818867,35.64732733598219 +141022,翼城县,4,141000,111.72537553219112,35.744429075038624 +141023,襄汾县,4,141000,111.44854005199257,35.88206267067628 +141024,洪洞县,4,141000,111.68158942671826,36.25946707937692 +141025,古县,4,141000,111.92657314946622,36.272338064826975 +141026,安泽县,4,141000,112.25661283959589,36.1535143805225 +141027,浮山县,4,141000,111.8553849530559,35.97439275394264 +141028,吉县,4,141000,110.68854637189425,36.10399906202126 +141029,乡宁县,4,141000,110.85349790082506,35.9764416654741 +141030,大宁县,4,141000,110.75938440881679,36.47130568709722 +141031,隰县,4,141000,110.9475912707899,36.69906138322701 +141032,永和县,4,141000,110.63841589392663,36.765908673932856 +141033,蒲县,4,141000,111.10247405258157,36.41800542917659 +141034,汾西县,4,141000,111.56954629571415,36.65878226423185 +141081,侯马市,4,141000,111.37839658489034,35.625364816257864 +141082,霍州市,4,141000,111.76150942217721,36.574606950709004 +141102,离石区,4,141100,111.15749077354018,37.52357747590664 +141121,文水县,4,141100,112.03559869260123,37.44430008265076 +141122,交城县,4,141100,112.16256770863693,37.55777223625885 +141123,兴县,4,141100,111.1343921049788,38.468803780990854 +141124,临县,4,141100,110.99841488128904,37.95721067232133 +141125,柳林县,4,141100,110.89538983929958,37.43549296493386 +141126,石楼县,4,141100,110.84159553247896,37.00447050301227 +141127,岚县,4,141100,111.67859223038421,38.285028788850155 +141128,方山县,4,141100,111.25037044293047,37.90102023915963 +141129,中阳县,4,141100,111.18562956482637,37.362872792380124 +141130,交口县,4,141100,111.18762820475553,36.98787266655283 +141181,孝义市,4,141100,111.78560601832963,37.15106331910215 +141182,汾阳市,4,141100,111.79459661919569,37.271291794517566 +150102,新城区,4,150100,111.67162012199908,40.86387702118283 +150103,回民区,4,150100,111.6304701838758,40.81450636294379 +150104,玉泉区,4,150100,111.68157514366065,40.75805896863502 +150105,赛罕区,4,150100,111.70842064450414,40.79839423697477 +150121,土默特左旗,4,150100,111.16958672672367,40.7352937117589 +150122,托克托县,4,150100,111.20057494308753,40.28314672900654 +150123,和林格尔县,4,150100,111.8284302182624,40.384797744251024 +150124,清水河县,4,150100,111.653576488034,39.92633385438891 +150125,武川县,4,150100,111.45749705623255,41.10241872379268 +150172,呼和浩特经济技术开发区,4,150100,111.75550856170946,40.84842299711348 +150202,东河区,4,150200,110.05039480879458,40.58222803832416 +150203,昆都仑区,4,150200,109.84553830334677,40.647644106920914 +150204,青山区,4,150200,109.90741601229894,40.64947306878302 +150205,石拐区,4,150200,110.06767685934828,40.68299911773543 +150206,白云鄂博矿区,4,150200,109.9796257617352,41.77499523418191 +150207,九原区,4,150200,109.96958800613616,40.61339658944351 +150221,土默特右旗,4,150200,110.53038926651871,40.57512742910827 +150222,固阳县,4,150200,110.06643261638642,41.040162852726006 +150223,达尔罕茂明安联合旗,4,150200,110.43952090316525,41.7045485510015 +150271,包头稀土高新技术产业开发区,4,150200,109.84586483739965,40.63692070771989 +150302,海勃湾区,4,150300,106.82943856713665,39.69690799353465 +150303,海南区,4,150300,106.89847100998414,39.44682751508743 +150304,乌达区,4,150300,106.73260635350245,39.511468916129324 +150402,红山区,4,150400,118.96356353650884,42.27047843525001 +150403,元宝山区,4,150400,119.29540450884711,42.045124715637876 +150404,松山区,4,150400,118.92278271211961,42.305953486360366 +150421,阿鲁科尔沁旗,4,150400,120.07261385472195,43.877953412182414 +150422,巴林左旗,4,150400,119.38644328075584,43.97638259461 +150423,巴林右旗,4,150400,118.6703942570529,43.540131553107535 +150424,林西县,4,150400,118.06246142181722,43.6242102592906 +150425,克什克腾旗,4,150400,117.55162041050815,43.27075759189642 +150426,翁牛特旗,4,150400,119.01250888001714,42.94201926223575 +150428,喀喇沁旗,4,150400,118.71047368449993,41.93221433564327 +150429,宁城县,4,150400,119.35060897565731,41.60024514826854 +150430,敖汉旗,4,150400,119.92757793860845,42.29650708524341 +150502,科尔沁区,4,150500,122.2624570337041,43.62871248882857 +150521,科尔沁左翼中旗,4,150500,123.3185885336466,44.13229422830756 +150522,科尔沁左翼后旗,4,150500,122.36356257647982,42.93956249402025 +150523,开鲁县,4,150500,121.32538568842634,43.60636943136172 +150524,库伦旗,4,150500,121.81740576201258,42.741211100234985 +150525,奈曼旗,4,150500,120.66464641293936,42.871846546660144 +150526,扎鲁特旗,4,150500,120.9186258568948,44.562213133098936 +150571,通辽经济技术开发区,4,150500,122.25052178737633,43.657980083916655 +150581,霍林郭勒市,4,150500,119.67046591393887,45.53751332060997 +150602,东胜区,4,150600,109.96956006883481,39.82798698444443 +150603,康巴什区,4,150600,109.8696273537329,39.61637814676571 +150621,达拉特旗,4,150600,110.04036612608118,40.41890715439107 +150622,准格尔旗,4,150600,111.24639840545701,39.87054026503683 +150623,鄂托克前旗,4,150600,107.48458472302686,38.18821674128391 +150624,鄂托克旗,4,150600,107.98244495022512,39.09529341360767 +150625,杭锦旗,4,150600,108.74241293878582,39.83881576881519 +150626,乌审旗,4,150600,108.82443496913814,38.610026521176685 +150627,伊金霍洛旗,4,150600,109.75459043995566,39.570092815192666 +150702,海拉尔区,4,150700,119.74246537005571,49.21821579936311 +150703,扎赉诺尔区,4,150700,117.69453227349118,49.46777018362822 +150721,阿荣旗,4,150700,123.46544000531033,48.13197124504232 +150722,莫力达瓦达斡尔族自治旗,4,150700,124.52547661897245,48.48346382602108 +150723,鄂伦春自治旗,4,150700,123.73234507741994,50.59794792806367 +150724,鄂温克族自治旗,4,150700,119.76135125526704,49.15304476395036 +150725,陈巴尔虎旗,4,150700,119.43046248676728,49.33491428888495 +150726,新巴尔虎左旗,4,150700,118.27660837276184,48.22378676003717 +150727,新巴尔虎右旗,4,150700,116.83063240352327,48.6770535990886 +150781,满洲里市,4,150700,117.38543585768029,49.604098854866066 +150782,牙克石市,4,150700,120.718346837101,49.292023693206346 +150783,扎兰屯市,4,150700,122.74445371485892,48.01995552010966 +150784,额尔古纳市,4,150700,120.18663369726426,50.24813175863642 +150785,根河市,4,150700,121.52758526593915,50.78614043431789 +150802,临河区,4,150800,107.3695337956837,40.75668072584017 +150821,五原县,4,150800,108.27349135409987,41.09445482147854 +150822,磴口县,4,150800,107.01452247000432,40.3364701771031 +150823,乌拉特前旗,4,150800,108.6586151381014,40.74210351292801 +150824,乌拉特中旗,4,150800,108.51951244005076,41.59334626374648 +150825,乌拉特后旗,4,150800,107.0815461220704,41.08942226925757 +150826,杭锦后旗,4,150800,107.15737244948984,40.89217941982269 +150902,集宁区,4,150900,113.12058699942406,41.04114617178671 +150921,卓资县,4,150900,112.58440955069771,40.900291837833585 +150922,化德县,4,150900,114.01640878449749,41.909602587109205 +150923,商都县,4,150900,113.58463922926263,41.56756663722376 +150924,兴和县,4,150900,113.84057886567139,40.879341798932664 +150925,凉城县,4,150900,112.51060018863981,40.53716312519976 +150926,察哈尔右翼前旗,4,150900,113.22160531673478,40.791267302592765 +150927,察哈尔右翼中旗,4,150900,112.64258040196295,41.28327294329096 +150928,察哈尔右翼后旗,4,150900,113.19853090242218,41.441770999655446 +150929,四子王旗,4,150900,111.71241927182069,41.53935334991468 +150981,丰镇市,4,150900,113.1166012178763,40.44180480884355 +152201,乌兰浩特市,4,152200,122.099622351983,46.07865434358189 +152202,阿尔山市,4,152200,119.95065315165802,47.18305415374976 +152221,科尔沁右翼前旗,4,152200,121.95909027020402,46.085685629589435 +152222,科尔沁右翼中旗,4,152200,121.48354781458434,45.06647099342768 +152223,扎赉特旗,4,152200,122.90644442882986,46.72918953935754 +152224,突泉县,4,152200,121.60054536996837,45.387830342585495 +152501,二连浩特市,4,152500,111.95836319332828,43.648800184052014 +152502,锡林浩特市,4,152500,116.09361388473624,43.938333801360066 +152522,阿巴嘎旗,4,152500,114.95736709771691,44.028101587022626 +152523,苏尼特左旗,4,152500,113.67347993741899,43.865553657792 +152524,苏尼特右旗,4,152500,112.64856904547575,42.74736892246295 +152525,东乌珠穆沁旗,4,152500,116.97850435996324,45.51574330531203 +152526,西乌珠穆沁旗,4,152500,117.61637700895868,44.593802912006616 +152527,太仆寺旗,4,152500,115.29053531644618,41.88229174604251 +152528,镶黄旗,4,152500,113.85450538582315,42.237661285279046 +152529,正镶白旗,4,152500,115.03662171828462,42.29260542924877 +152530,正蓝旗,4,152500,115.99860388382902,42.24711884418806 +152531,多伦县,4,152500,116.49250878203628,42.20892086421072 +152571,乌拉盖管委会,4,152500,118.84516802834598,45.71697993140981 +152921,阿拉善左旗,4,152900,105.67259866528437,38.83909413743562 +152922,阿拉善右旗,4,152900,101.67346389593693,39.2222409698549 +152923,额济纳旗,4,152900,101.0624033405766,41.96029761181317 +152971,内蒙古阿拉善高新技术产业开发区,4,152900,105.73193210354063,38.85451828713345 +210102,和平区,4,210100,123.42664426615303,41.79523605290212 +210103,沈河区,4,210100,123.46546103537524,41.80227413880463 +210104,大东区,4,210100,123.47640473208111,41.811425174494424 +210105,皇姑区,4,210100,123.43162078884775,41.82604212027671 +210106,铁西区,4,210100,123.3834359507842,41.809037832216724 +210111,苏家屯区,4,210100,123.35043463177249,41.671253644959464 +210112,浑南区,4,210100,123.4559899308919,41.720915668888956 +210113,沈北新区,4,210100,123.59077483367827,41.91986419893953 +210114,于洪区,4,210100,123.3146330249945,41.79966825561503 +210115,辽中区,4,210100,122.77237835983205,41.523149081842455 +210123,康平县,4,210100,123.33751124938374,42.7499254957194 +210124,法库县,4,210100,123.41462107571583,42.50960654990291 +210181,新民市,4,210100,122.84252865405615,41.99151329160601 +210202,中山区,4,210200,121.65154739366945,38.92451111549568 +210203,西岗区,4,210200,121.61862512554262,38.92047268927287 +210204,沙河口区,4,210200,121.59450670056631,38.913544290955585 +210211,甘井子区,4,210200,121.53151895549547,38.95800216293212 +210212,旅顺口区,4,210200,121.26859688018821,38.85683222285901 +210213,金州区,4,210200,121.78943558267059,39.05643299166072 +210214,普兰店区,4,210200,121.94645983496748,39.398089145183164 +210224,长海县,4,210200,122.59462651636738,39.27827021716725 +210281,瓦房店市,4,210200,121.98563754334361,39.63274074738802 +210283,庄河市,4,210200,122.97449548262718,39.686956078878055 +210302,铁东区,4,210300,122.99739966804565,41.09633187050633 +210303,铁西区,4,210300,122.97549026614892,41.125475259583 +210304,立山区,4,210300,123.03548413861611,41.156116121101775 +210311,千山区,4,210300,122.9675742183339,41.08093860893513 +210321,台安县,4,210300,122.44255004098889,41.41859037109879 +210323,岫岩满族自治县,4,210300,123.28754677827435,40.295892396362035 +210381,海城市,4,210300,122.69156940124043,40.887633947096894 +210402,新抚区,4,210400,123.91958231813992,41.86780585859302 +210403,东洲区,4,210400,124.04554972353199,41.859190936633894 +210404,望花区,4,210400,123.79060415200058,41.85903036274879 +210411,顺城区,4,210400,123.95141404337762,41.889163788466874 +210421,抚顺县,4,210400,123.92159012078525,41.887037475382286 +210422,新宾满族自治县,4,210400,125.04635620406488,41.73996877507051 +210423,清原满族自治县,4,210400,124.9303602593252,42.10676099263425 +210502,平山区,4,210500,123.77461422409242,41.301604181773875 +210503,溪湖区,4,210500,123.77461054103982,41.33480293136358 +210504,明山区,4,210500,123.82347449806893,41.31493936887711 +210505,南芬区,4,210500,123.75146713686405,41.107095723220134 +210521,本溪满族自治县,4,210500,124.12758486914475,41.30790288135311 +210522,桓仁满族自治县,4,210500,125.36754435102144,41.27292530103041 +210602,元宝区,4,210600,124.40258403321981,40.14225146313862 +210603,振兴区,4,210600,124.32597752746494,40.0613050927599 +210604,振安区,4,210600,124.43438692285066,40.16469702566065 +210624,宽甸满族自治县,4,210600,124.79042662867784,40.737553200489806 +210681,东港市,4,210600,124.15961035888098,39.8677161872864 +210682,凤城市,4,210600,124.07242172438802,40.45918048245619 +210702,古塔区,4,210700,121.13458496929316,41.12290092589807 +210703,凌河区,4,210700,121.15759003442041,41.12069061447238 +210711,太和区,4,210700,121.11045324939532,41.11510930713197 +210726,黑山县,4,210700,122.13292578086227,41.65949725103619 +210727,义县,4,210700,121.24556854894828,41.53893886227117 +210781,凌海市,4,210700,121.36253879584407,41.16648762858835 +210782,北镇市,4,210700,121.78344729847997,41.59442809680251 +210802,站前区,4,210800,122.26543743172509,40.678764125936254 +210803,西市区,4,210800,122.2135823868394,40.67211092631112 +210804,鲅鱼圈区,4,210800,122.12757349697273,40.2323398507732 +210811,老边区,4,210800,122.38643918391912,40.686383619802896 +210881,盖州市,4,210800,122.35559128287593,40.40616745726758 +210882,大石桥市,4,210800,122.51537953139649,40.65080216481545 +210902,海州区,4,210900,121.66943571061184,42.02373478938535 +210903,新邱区,4,210900,121.79936338567522,42.09393451476494 +210904,太平区,4,210900,121.68538413680544,42.01696785414082 +210905,清河门区,4,210900,121.42247894964176,41.78931855100901 +210911,细河区,4,210900,121.68639230507928,42.031871245879636 +210921,阜新蒙古族自治县,4,210900,121.76357399585217,42.0713681538371 +210922,彰武县,4,210900,122.54544932020693,42.392706534363775 +211002,白塔区,4,211000,123.18115668384452,41.27604732000065 +211003,文圣区,4,211000,123.2380035226186,41.28999873572254 +211004,宏伟区,4,211000,123.20358018598459,41.223368108444966 +211005,弓长岭区,4,211000,123.42661543054616,41.15732704272181 +211011,太子河区,4,211000,123.18845658391027,41.259253903616404 +211021,辽阳县,4,211000,123.11242122079864,41.21167877180807 +211081,灯塔市,4,211000,123.34546215145255,41.432474125925786 +211102,双台子区,4,211100,122.04639299922216,41.20607161751199 +211103,兴隆台区,4,211100,122.0764985405919,41.16449943242538 +211104,大洼区,4,211100,122.08855478867187,41.00817878895967 +211122,盘山县,4,211100,122.00356035521759,41.24826368258211 +211202,银州区,4,211200,123.8483863963022,42.29257368144229 +211204,清河区,4,211200,124.16556298034286,42.552494793453334 +211221,铁岭县,4,211200,123.73537237670288,42.22922560804787 +211223,西丰县,4,211200,124.73361509331029,42.744014442436104 +211224,昌图县,4,211200,124.11750067115085,42.79217837184396 +211281,调兵山市,4,211200,123.57350868313209,42.473738012058256 +211282,开原市,4,211200,124.04456886374565,42.552079074778554 +211302,双塔区,4,211300,120.46048690273676,41.57177950085604 +211303,龙城区,4,211300,120.44356686930357,41.59846852304986 +211321,朝阳县,4,211300,120.39618969772403,41.50374544264061 +211322,建平县,4,211300,119.64938035776511,41.409455511027 +211324,喀喇沁左翼蒙古族自治县,4,211300,119.74741405501892,41.13368911982847 +211381,北票市,4,211300,120.77762773421811,41.80648256894959 +211382,凌源市,4,211300,119.4073580787919,41.25165129714849 +211402,连山区,4,211400,120.87648167423309,40.78089380844243 +211403,龙港区,4,211400,120.90062076023611,40.74105660124102 +211404,南票区,4,211400,120.75649312082375,41.11309759582292 +211421,绥中县,4,211400,120.35042453538213,40.33184347539701 +211422,建昌县,4,211400,119.84359526665007,40.83037995380867 +211481,兴城市,4,211400,120.76455846701454,40.616555664043666 +220102,南关区,4,220100,125.35660981703178,43.869873025193 +220103,宽城区,4,220100,125.33462450831948,43.94950223980449 +220104,朝阳区,4,220100,125.295401255854,43.84064147496199 +220105,二道区,4,220100,125.38046755374909,43.87127652427073 +220106,绿园区,4,220100,125.26244260635403,43.8868104039365 +220112,双阳区,4,220100,125.67144793216886,43.5310913091188 +220113,九台区,4,220100,125.84556442306521,44.1577918538605 +220122,农安县,4,220100,125.1914841066626,44.43890395126124 +220171,长春经济技术开发区,4,220100,125.3306020759069,43.82195350104314 +220172,长春净月高新技术产业开发区,4,220100,125.38298514477134,43.819820598443876 +220173,长春高新技术产业开发区,4,220100,125.26525331446418,43.7951600089171 +220174,长春汽车经济技术开发区,4,220100,125.19717127884626,43.833414131707165 +220182,榆树市,4,220100,126.53960936347069,44.84543972769254 +220183,德惠市,4,220100,125.73451517727733,44.52716106660816 +220184,公主岭市,4,220100,124.82944866070906,43.510832663153074 +220202,昌邑区,4,220200,126.58144866124232,43.88799247473632 +220203,龙潭区,4,220200,126.56854459242203,43.91634255363016 +220204,船营区,4,220200,126.54764973676829,43.83992740229002 +220211,丰满区,4,220200,126.5685704636207,43.8271515768356 +220221,永吉县,4,220200,126.50441572986186,43.67872067698947 +220271,吉林经济开发区,4,220200,126.47560698232631,43.99627811207065 +220272,吉林高新技术产业开发区,4,220200,126.60786099916889,43.79867813092839 +220273,吉林中国新加坡食品区,4,220200,125.99819973430147,43.731832341627886 +220281,蛟河市,4,220200,127.3514801867702,43.73000387050733 +220282,桦甸市,4,220200,126.75248423373108,42.977982779881444 +220283,舒兰市,4,220200,126.97137703226396,44.412270028323626 +220284,磐石市,4,220200,126.0666162988913,42.95181750011373 +220302,铁西区,4,220300,124.35246676034319,43.15257539180282 +220303,铁东区,4,220300,124.41648270590073,43.16799399318514 +220322,梨树县,4,220300,124.34240124710388,43.313345515552975 +220323,伊通满族自治县,4,220300,125.31148460753519,43.35110366682136 +220382,双辽市,4,220300,123.50943776127731,43.524527382171485 +220402,龙山区,4,220400,125.14345242968848,42.90763401213302 +220403,西安区,4,220400,125.15537330312809,42.933308420624584 +220421,东丰县,4,220400,125.5373779009073,42.68331077855281 +220422,东辽县,4,220400,124.99758944369195,42.931879101775785 +220502,东昌区,4,220500,125.9335945901599,41.70840538484 +220503,二道江区,4,220500,126.04959170269673,41.779966174493126 +220521,通化县,4,220500,125.76539191392739,41.68568223806826 +220523,辉南县,4,220500,126.05358125712766,42.690699881881976 +220524,柳河县,4,220500,125.75142398189165,42.29087121505593 +220581,梅河口市,4,220500,125.71760780995182,42.54488389028409 +220582,集安市,4,220500,126.19957737200077,41.131299724033404 +220602,浑江区,4,220600,126.42361952720847,41.950423728219754 +220605,江源区,4,220600,126.59739097895843,42.06293937208094 +220621,抚松县,4,220600,127.45537119527128,42.22733527255311 +220622,靖宇县,4,220600,126.81949899257262,42.3947657345783 +220623,长白朝鲜族自治县,4,220600,128.20758420219488,41.425895812593765 +220681,临江市,4,220600,126.92458151350212,41.817678643991684 +220702,宁江区,4,220700,124.823422548149,45.17803943866726 +220721,前郭尔罗斯蒙古族自治县,4,220700,124.83045556164775,45.12341609292575 +220722,长岭县,4,220700,123.9743741033988,44.28163828005157 +220723,乾安县,4,220700,124.04756380460357,45.008434321605144 +220771,吉林松原经济开发区,4,220700,124.80730344390841,45.12910425365103 +220781,扶余市,4,220700,126.05660621110196,44.99416842115065 +220802,洮北区,4,220800,122.85750977515681,45.62752468651366 +220821,镇赉县,4,220800,123.2065757556511,45.8531166353894 +220822,通榆县,4,220800,123.09452077673187,44.81896373588188 +220871,吉林白城经济开发区,4,220800,122.83430546586732,45.61417762714594 +220881,洮南市,4,220800,122.79446768260222,45.34113187256745 +220882,大安市,4,220800,124.29850428102031,45.51304514962824 +222401,延吉市,4,222400,129.52052013726063,42.91271700987995 +222402,图们市,4,222400,129.85038151374656,42.97428349907469 +222403,敦化市,4,222400,128.23861239315394,43.37829127451678 +222404,珲春市,4,222400,130.37261321858327,42.86851511519159 +222405,龙井市,4,222400,129.43263477701413,42.7715348683491 +222406,和龙市,4,222400,129.01738712621045,42.55232256843248 +222424,汪清县,4,222400,129.7776087962472,43.3184508338646 +222426,安图县,4,222400,128.90544846813714,43.117916954911934 +230102,道里区,4,230100,126.62343158836877,45.76184447881502 +230103,南岗区,4,230100,126.67563849952303,45.76586616375799 +230104,道外区,4,230100,126.65560404088663,45.7977762204344 +230108,平房区,4,230100,126.64354707416219,45.60386229555506 +230109,松北区,4,230100,126.51648256824997,45.80859256142944 +230110,香坊区,4,230100,126.6696243441337,45.71361964538922 +230111,呼兰区,4,230100,126.59439898309995,45.8952097808631 +230112,阿城区,4,230100,126.96435649551775,45.55427530435246 +230113,双城区,4,230100,126.31962313777296,45.38811152239434 +230123,依兰县,4,230100,129.57451969721257,46.331260289051535 +230124,方正县,4,230100,128.83563368133866,45.857758440062085 +230125,宾县,4,230100,127.47349701449961,45.752465386741754 +230126,巴彦县,4,230100,127.41054798639587,46.09128265781541 +230127,木兰县,4,230100,128.05035620452108,45.95687131944761 +230128,通河县,4,230100,128.7524162758437,45.99639259092071 +230129,延寿县,4,230100,128.33860582402286,45.457641195714054 +230183,尚志市,4,230100,128.0154882066594,45.215473941866705 +230184,五常市,4,230100,127.17352882965176,44.937842855773596 +230202,龙沙区,4,230200,123.96437622285154,47.32357697742935 +230203,建华区,4,230200,123.96135010108006,47.360554871046276 +230204,铁锋区,4,230200,123.98441571199879,47.34701886377169 +230205,昂昂溪区,4,230200,123.82940626912925,47.16133224362644 +230206,富拉尔基区,4,230200,123.6365098032401,47.21550408279093 +230207,碾子山区,4,230200,122.89436680107868,47.52323629813318 +230208,梅里斯达斡尔族区,4,230200,123.7595409174125,47.315549574077295 +230221,龙江县,4,230200,123.2115389834243,47.343605740150764 +230223,依安县,4,230200,125.31248216609961,47.89948365136766 +230224,泰来县,4,230200,123.42362630924546,46.39782928518008 +230225,甘南县,4,230200,123.51248588181808,47.92688406951045 +230227,富裕县,4,230200,124.48054247905756,47.780228063275445 +230229,克山县,4,230200,125.8813783269278,48.04317236073717 +230230,克东县,4,230200,126.25538674804284,48.048244160483 +230231,拜泉县,4,230200,126.10542147027297,47.60186730195864 +230281,讷河市,4,230200,124.88916782164422,48.472528044036935 +230302,鸡冠区,4,230300,130.98763160852113,45.309806344311816 +230303,恒山区,4,230300,130.91138523344475,45.21697188315374 +230304,滴道区,4,230300,130.85058046059333,45.35443361721627 +230305,梨树区,4,230300,130.7033960671907,45.09824178098074 +230306,城子河区,4,230300,131.01846864006785,45.3444351939177 +230307,麻山区,4,230300,130.48453641612977,45.217934996767426 +230321,鸡东县,4,230300,131.1305584829592,45.26618456082589 +230381,虎林市,4,230300,132.94346566318296,45.76894691288418 +230382,密山市,4,230300,131.85353110655427,45.53564080974782 +230402,向阳区,4,230400,130.30046804763998,47.34858088906713 +230403,工农区,4,230400,130.28161728617408,47.32443029945841 +230404,南山区,4,230400,130.293540315547,47.321245938809454 +230405,兴安区,4,230400,130.24554573859015,47.25871626948282 +230406,东山区,4,230400,130.32336109407026,47.34498713557338 +230407,兴山区,4,230400,130.30998909790975,47.364002475767066 +230421,萝北县,4,230400,130.83549503650306,47.58342219702872 +230422,绥滨县,4,230400,131.85948651276323,47.295265458073345 +230502,尖山区,4,230500,131.16534177061126,46.65258592381225 +230503,岭东区,4,230500,131.17154699558256,46.59901433202066 +230505,四方台区,4,230500,131.34565737800256,46.60201228508263 +230506,宝山区,4,230500,131.40737518857432,46.58359834024085 +230521,集贤县,4,230500,131.1474344994225,46.73451778855666 +230522,友谊县,4,230500,131.81459486269898,46.772973223021964 +230523,宝清县,4,230500,132.20359411633407,46.33265182357228 +230524,饶河县,4,230500,134.02046893233435,46.80418274416246 +230602,萨尔图区,4,230600,125.13351006442905,46.638936435554 +230603,龙凤区,4,230600,125.14047256094527,46.567678067125456 +230604,让胡路区,4,230600,124.8775988144728,46.65807845860904 +230605,红岗区,4,230600,124.89747741710322,46.404313108627896 +230606,大同区,4,230600,124.81937675979314,46.04558395131147 +230621,肇州县,4,230600,125.27536822480188,45.70510798687091 +230622,肇源县,4,230600,125.0845726260089,45.52415291420557 +230623,林甸县,4,230600,124.86965042765937,47.17723439524254 +230624,杜尔伯特蒙古族自治县,4,230600,124.44935879141454,46.86876775845202 +230671,大庆高新技术产业开发区,4,230600,125.15713199595014,46.58732742739897 +230717,伊美区,4,230700,128.91384276412384,47.73401777009156 +230718,乌翠区,4,230700,128.6764562805639,47.73279646635351 +230719,友好区,4,230700,128.84344327995083,47.84696631717601 +230722,嘉荫县,4,230700,130.41055547771902,48.894983469563904 +230723,汤旺县,4,230700,129.57744808334456,48.45869972002078 +230724,丰林县,4,230700,129.54024772505676,48.29613124411147 +230725,大箐山县,4,230700,129.02742523145056,47.03457195113671 +230726,南岔县,4,230700,129.2895717996127,47.1437499135947 +230751,金林区,4,230700,129.43561265010112,47.41871371228183 +230781,铁力市,4,230700,128.0383649039294,46.992948620259035 +230803,向阳区,4,230800,130.37261186145227,46.81351181678074 +230804,前进区,4,230800,130.3816482758994,46.8196265084816 +230805,东风区,4,230800,130.41056077772154,46.828385151991114 +230811,郊区,4,230800,130.3333780988121,46.81616811282895 +230822,桦南县,4,230800,130.56038502152637,46.245077476879636 +230826,桦川县,4,230800,130.72554944886406,47.028816852925594 +230828,汤原县,4,230800,129.91164504154594,46.73532672046088 +230881,同江市,4,230800,132.51750949205328,47.64798067666648 +230882,富锦市,4,230800,132.04453879527813,47.25593257184771 +230883,抚远市,4,230800,134.31448962575448,48.37094469627278 +230902,新兴区,4,230900,130.93837086994796,45.8223103285433 +230903,桃山区,4,230900,131.02644424553824,45.77179991569574 +230904,茄子河区,4,230900,131.0744805937013,45.791238180151915 +230921,勃利县,4,230900,130.59853255314385,45.76096431316663 +231002,东安区,4,231000,129.63347765344335,44.58746037757089 +231003,阳明区,4,231000,129.64252736281196,44.60177502651452 +231004,爱民区,4,231000,129.59836369953325,44.60235033944156 +231005,西安区,4,231000,129.62241286515473,44.583861081841675 +231025,林口县,4,231000,130.28874767599012,45.285460406594 +231071,牡丹江经济技术开发区,4,231000,129.5676521612665,44.59490766807041 +231081,绥芬河市,4,231000,131.15739222566847,44.41815437238761 +231083,海林市,4,231000,129.38742683358007,44.599871973195235 +231084,宁安市,4,231000,129.4893679801412,44.34698357750037 +231085,穆棱市,4,231000,130.53055850351956,44.92478458958822 +231086,东宁市,4,231000,131.1315435744494,44.096101486248074 +231102,爱辉区,4,231100,127.50663227086308,50.25770961645177 +231123,逊克县,4,231100,128.48558459529426,49.569491435700485 +231124,孙吴县,4,231100,127.3423877083676,49.43145060685943 +231181,北安市,4,231100,126.49737974225795,48.247419532218935 +231182,五大连池市,4,231100,126.21155518831091,48.52260955176269 +231183,嫩江市,4,231100,125.22763469542623,49.19132018475566 +231202,北林区,4,231200,126.99144894054609,46.643492672111265 +231221,望奎县,4,231200,126.4923848941308,46.83916760174942 +231222,兰西县,4,231200,126.29461952254698,46.258095172244815 +231223,青冈县,4,231200,126.10048887471764,46.710684983049774 +231224,庆安县,4,231200,127.51461218819992,46.885744465244535 +231225,明水县,4,231200,125.9124826941943,47.179483374940986 +231226,绥棱县,4,231200,127.12051514062621,47.24251579385352 +231281,安达市,4,231200,125.31412471772461,46.45796584496876 +231282,肇东市,4,231200,125.96853740717,46.05693828930348 +231283,海伦市,4,231200,126.9365085755555,47.456903841096434 +232701,漠河市,4,232700,122.54542083420051,52.97830367837742 +232721,呼玛县,4,232700,126.65964991907305,51.730946747239756 +232722,塔河县,4,232700,124.71651251448932,52.34030508111336 +232761,加格达奇区,4,232700,124.14621481740444,50.414872526010036 +232762,松岭区,4,232700,124.30733758859164,50.800887045269604 +232763,新林区,4,232700,124.40689328487163,51.67938320752853 +232764,呼中区,4,232700,123.59270016216261,52.039874278585124 +310101,黄浦区,4,310100,121.49158559252436,31.23724715206362 +310104,徐汇区,4,310100,121.44339635276381,31.194556772822725 +310105,长宁区,4,310100,121.43045437545099,31.226847968225428 +310106,静安区,4,310100,121.45343177276851,31.233844930401652 +310107,普陀区,4,310100,121.40356934916508,31.254973368279597 +310109,虹口区,4,310100,121.51158645453457,31.269746698931357 +310110,杨浦区,4,310100,121.53251993732523,31.265524144657057 +310112,闵行区,4,310100,121.38861193361008,31.118842580087428 +310113,宝山区,4,310100,121.4965630135246,31.41027947347614 +310114,嘉定区,4,310100,121.27259505835202,31.3801553396772 +310115,浦东新区,4,310100,121.55045460683195,31.227348292436346 +310116,金山区,4,310100,121.34848004512126,30.747852376570318 +310117,松江区,4,310100,121.23447959624146,31.037135176464492 +310118,青浦区,4,310100,121.13055310467274,31.155454317980737 +310120,奉贤区,4,310100,121.48050373643107,30.923720110285377 +310151,崇明区,4,310100,121.40355686271847,31.62856998440405 +320102,玄武区,4,320100,118.80441263574761,32.05475668294885 +320104,秦淮区,4,320100,118.80040736097028,32.04513860640491 +320105,建邺区,4,320100,118.73856944695221,32.009369695446466 +320106,鼓楼区,4,320100,118.7765189920351,32.07240516055662 +320111,浦口区,4,320100,118.63460405875492,32.06467927792303 +320113,栖霞区,4,320100,118.91542298490691,32.10260020782976 +320114,雨花台区,4,320100,118.78544536405718,31.997858805465647 +320115,江宁区,4,320100,118.84656705909214,31.958526869176943 +320116,六合区,4,320100,118.82747132971379,32.328666041019886 +320117,溧水区,4,320100,119.0344039090257,31.65728369631429 +320118,高淳区,4,320100,118.89849765147122,31.33363912390532 +320205,锡山区,4,320200,120.36342571102806,31.594761632814496 +320206,惠山区,4,320200,120.30459559334903,31.686741337274505 +320211,滨湖区,4,320200,120.29154752615551,31.534639699974193 +320213,梁溪区,4,320200,120.30959951436182,31.571645024134835 +320214,新吴区,4,320200,120.37094012644957,31.497166254894108 +320281,江阴市,4,320200,120.29156800752115,31.926044909769043 +320282,宜兴市,4,320200,119.83160603216115,31.342956624267874 +320302,鼓楼区,4,320300,117.19257874732773,34.29376008422141 +320303,云龙区,4,320300,117.25842391239526,34.25908669103099 +320305,贾汪区,4,320300,117.46943039702548,34.44162040061657 +320311,泉山区,4,320300,117.20059046467956,34.24994287160608 +320312,铜山区,4,320300,117.17556960198795,34.1861004498853 +320321,丰县,4,320300,116.66473730424232,34.70217569492315 +320322,沛县,4,320300,116.94258562390337,34.76515195541547 +320324,睢宁县,4,320300,117.94743277245068,33.91878941781798 +320371,徐州经济技术开发区,4,320300,117.29057543439453,34.21266655011306 +320381,新沂市,4,320300,118.36153652101795,34.37561095463685 +320382,邳州市,4,320300,118.0191233013022,34.34464551932591 +320402,天宁区,4,320400,119.98046316025298,31.785570271252627 +320404,钟楼区,4,320400,119.90846271600053,31.807646657753722 +320411,新北区,4,320400,119.96745722358787,31.869392242078284 +320412,武进区,4,320400,119.94861167229404,31.70644661174212 +320413,金坛区,4,320400,119.6045709026553,31.728893030010145 +320481,溧阳市,4,320400,119.49150603896412,31.42210229215941 +320505,虎丘区,4,320500,120.57847178570609,31.301932876554098 +320506,吴中区,4,320500,120.63850751921002,31.268261445846264 +320507,相城区,4,320500,120.6485659358358,31.37468992149277 +320508,姑苏区,4,320500,120.62345497310153,31.341831300992645 +320509,吴江区,4,320500,120.65156717454464,31.144644190472693 +320571,苏州工业园区,4,320500,120.7298897133152,31.3304431437088 +320581,常熟市,4,320500,120.75949588665195,31.65953827674108 +320582,张家港市,4,320500,120.56155363871446,31.88114053634028 +320583,昆山市,4,320500,120.98745249794995,31.390863425081864 +320585,太仓市,4,320500,121.13559529350024,31.464599352977785 +320612,通州区,4,320600,121.08142549497644,32.07035573967588 +320613,崇川区,4,320600,120.86342022228744,32.01592302963055 +320614,海门区,4,320600,121.18843649817478,31.87361172603022 +320623,如东县,4,320600,121.19243791023843,32.33587288615511 +320671,南通经济技术开发区,4,320600,120.90159173866185,31.98654943120089 +320681,启东市,4,320600,121.66347374677267,31.81423284964318 +320682,如皋市,4,320600,120.57946558109177,32.37785148610902 +320685,海安市,4,320600,120.47443309577918,32.53919574424043 +320703,连云区,4,320700,119.34658780087244,34.76533714403042 +320706,海州区,4,320700,119.16940808818707,34.5774561185969 +320707,赣榆区,4,320700,119.17943461496724,34.84768246084617 +320722,东海县,4,320700,118.75956509248417,34.54791862736427 +320723,灌云县,4,320700,119.24653354503504,34.28861606025826 +320724,灌南县,4,320700,119.32253818609821,34.09259130777028 +320771,连云港经济技术开发区,4,320700,119.15923334099774,34.59867053182873 +320772,连云港高新技术产业开发区,4,320700,119.2131791919579,34.54980052304405 +320803,淮安区,4,320800,119.14746320322271,33.508999838207515 +320804,淮阴区,4,320800,119.0414217411613,33.63815042476756 +320812,清江浦区,4,320800,119.03241362333779,33.55856224006592 +320813,洪泽区,4,320800,118.87958364929754,33.299624681470235 +320826,涟水县,4,320800,119.26644843920793,33.78707870790034 +320830,盱眙县,4,320800,118.55144127023549,33.018254741659845 +320831,金湖县,4,320800,119.02646908662551,33.03128382675661 +320871,淮安经济技术开发区,4,320800,119.11976413248364,33.55666778025387 +320902,亭湖区,4,320900,120.20457816803754,33.39589348690703 +320903,盐都区,4,320900,120.16050325734324,33.34402031559912 +320904,大丰区,4,320900,120.50743881648788,33.20475984971028 +320921,响水县,4,320900,119.58460112201573,34.20474300276 +320922,滨海县,4,320900,119.82762105908833,33.99564654746655 +320923,阜宁县,4,320900,119.80958074885365,33.765078727087015 +320924,射阳县,4,320900,120.33281720840326,33.77229082446471 +320925,建湖县,4,320900,119.80553127744521,33.469832978385014 +320971,盐城经济技术开发区,4,320900,120.167544265761,33.355100917626196 +320981,东台市,4,320900,120.32653706475246,32.872716312488244 +321002,广陵区,4,321000,119.43850484607827,32.40066115971978 +321003,邗江区,4,321000,119.40438513670664,32.382751355260424 +321012,江都区,4,321000,119.5766029690771,32.44029450624287 +321023,宝应县,4,321000,119.36555570137673,33.24720546114832 +321071,扬州经济技术开发区,4,321000,119.41941890822997,32.40067693609037 +321081,仪征市,4,321000,119.19146705795117,32.27809048316069 +321084,高邮市,4,321000,119.46561561653884,32.787147020528316 +321102,京口区,4,321100,119.47560369584319,32.20378548352827 +321111,润州区,4,321100,119.4184404738685,32.2014948431523 +321112,丹徒区,4,321100,119.44050079109088,32.137920395650404 +321171,镇江新区,4,321100,119.52265397404766,32.169142010412685 +321181,丹阳市,4,321100,119.61250060471407,32.01592027416992 +321182,扬中市,4,321100,119.80351961208618,32.24296719412154 +321183,句容市,4,321100,119.17543320290359,31.950923490521372 +321202,海陵区,4,321200,119.92552495119595,32.49673154922654 +321203,高港区,4,321200,119.88842098108961,32.32486247444036 +321204,姜堰区,4,321200,120.13339832586847,32.515233674758576 +321271,泰州医药高新技术产业开发区,4,321200,119.92251517858477,32.399039227268936 +321281,兴化市,4,321200,119.85751406137442,32.917824213889254 +321282,靖江市,4,321200,120.28353203592053,31.988170075210594 +321283,泰兴市,4,321200,120.05859939046078,32.17747402371212 +321302,宿城区,4,321300,118.24956705106565,33.96867763073053 +321311,宿豫区,4,321300,118.33640094471272,33.95480439632684 +321322,沭阳县,4,321300,118.81041906570952,34.11745420947911 +321323,泗阳县,4,321300,118.70946596537884,33.728328313046696 +321324,泗洪县,4,321300,118.22241594668768,33.46573259459488 +321371,宿迁经济技术开发区,4,321300,118.28157403570837,33.96774971569008 +330102,上城区,4,330100,120.20428990179938,30.232618187567876 +330105,拱墅区,4,330100,120.14803289042315,30.325204543491335 +330106,西湖区,4,330100,120.13643801205312,30.265916325588922 +330108,滨江区,4,330100,120.21847118139375,30.214332950144062 +330109,萧山区,4,330100,120.2704705839749,30.18751122221409 +330110,余杭区,4,330100,119.98588694926113,30.280405065311427 +330111,富阳区,4,330100,119.96655568417805,30.05472296730377 +330112,临安区,4,330100,119.73151737122271,30.239805598053564 +330113,临平区,4,330100,120.30659216717552,30.424739268745142 +330114,钱塘区,4,330100,120.50047946404098,30.32932321778379 +330122,桐庐县,4,330100,119.69759877582668,29.79858479014279 +330127,淳安县,4,330100,119.04839230601344,29.61495036603392 +330182,建德市,4,330100,119.28739807500521,29.48115402696838 +330203,海曙区,4,330200,121.55740307253974,29.86572070836559 +330205,江北区,4,330200,121.56042128922172,29.89294837947611 +330206,北仑区,4,330200,121.85057621461253,29.90465935993949 +330211,镇海区,4,330200,121.6030464246394,29.970937896482987 +330212,鄞州区,4,330200,121.55542706991011,29.824206349995904 +330213,奉化区,4,330200,121.41352776719268,29.661146412779814 +330225,象山县,4,330200,121.87556392982258,29.482270653805347 +330226,宁海县,4,330200,121.43643177294247,29.294317441105566 +330281,余姚市,4,330200,121.16058507482123,30.042734639570824 +330282,慈溪市,4,330200,121.27259613631863,30.175256610720446 +330302,鹿城区,4,330300,120.6615864979342,28.020351607763462 +330303,龙湾区,4,330300,120.81946755397436,27.938652244915872 +330304,瓯海区,4,330300,120.62144724335346,27.972857351642503 +330305,洞头区,4,330300,121.16354856758629,27.841870324586573 +330324,永嘉县,4,330300,120.68852407508358,28.15645033220569 +330326,平阳县,4,330300,120.57251537444397,27.667724401092695 +330327,苍南县,4,330300,120.4335951222883,27.523066788446513 +330328,文成县,4,330300,120.09748845651636,27.79321715229029 +330329,泰顺县,4,330300,119.72353725758818,27.562170559597206 +330371,温州经济技术开发区,4,330300,120.70647689035565,28.00108540447221 +330381,瑞安市,4,330300,120.66158218606775,27.783950736231652 +330382,乐清市,4,330300,120.9925018561657,28.118179995228274 +330383,龙港市,4,330300,120.55951671405778,27.58413250136789 +330402,南湖区,4,330400,120.7896100517546,30.751546813315446 +330411,秀洲区,4,330400,120.71543705562627,30.770207214173517 +330421,嘉善县,4,330400,120.93251060584033,30.83712219382042 +330424,海盐县,4,330400,120.95244526273444,30.531872894537752 +330481,海宁市,4,330400,120.68656506738283,30.51792376977565 +330482,平湖市,4,330400,121.02257525525401,30.682240998057836 +330483,桐乡市,4,330400,120.57154315530762,30.63631118771037 +330502,吴兴区,4,330500,120.19160466020135,30.86295545498643 +330503,南浔区,4,330500,120.42460139422415,30.855242982242903 +330521,德清县,4,330500,119.98346466845346,30.548628239138925 +330522,长兴县,4,330500,119.91749832197264,31.0325793268347 +330523,安吉县,4,330500,119.68656337875633,30.644424794113846 +330602,越城区,4,330600,120.58843667180591,29.99530996279798 +330603,柯桥区,4,330600,120.50195187660239,30.089303044573988 +330604,上虞区,4,330600,120.87450989363869,30.038242967062466 +330624,新昌县,4,330600,120.91056965639144,29.505541075309846 +330681,诸暨市,4,330600,120.25340833196779,29.714934649194955 +330683,嵊州市,4,330600,120.83743725739004,29.567326991294273 +330702,婺城区,4,330700,119.57859260936237,29.09177543818595 +330703,金东区,4,330700,119.69958241405315,29.104765016117913 +330723,武义县,4,330700,119.82256555866991,28.898243786650067 +330726,浦江县,4,330700,119.89843608269538,29.458692851854586 +330727,磐安县,4,330700,120.45651305177348,29.060103175107464 +330781,兰溪市,4,330700,119.4665987055372,29.214044345079238 +330782,义乌市,4,330700,120.08158099305928,29.31114987541007 +330783,东阳市,4,330700,120.2484219279141,29.295861065150863 +330784,永康市,4,330700,120.0545507107813,28.894203967254516 +330802,柯城区,4,330800,118.87758391504455,28.97420365112754 +330803,衢江区,4,330800,118.96553907360011,28.98623790796884 +330822,常山县,4,330800,118.51755663117751,28.906997949113464 +330824,开化县,4,330800,118.42145932131277,29.143187521186665 +330825,龙游县,4,330800,119.17841825565665,29.034486553294915 +330881,江山市,4,330800,118.63358329792732,28.74286848011839 +330902,定海区,4,330900,122.11360080391776,30.025462378363247 +330903,普陀区,4,330900,122.33154416585897,29.97683569653626 +330921,岱山县,4,330900,122.23260481448817,30.269655894034567 +330922,嵊泗县,4,330900,122.45758776505647,30.73127394902446 +331002,椒江区,4,331000,121.4494079756909,28.67925822490251 +331003,黄岩区,4,331000,121.2685660511622,28.655333607550652 +331004,路桥区,4,331000,121.34433093445972,28.584387739790962 +331022,三门县,4,331000,121.40255379759475,29.110355206288737 +331023,天台县,4,331000,121.01355337629343,29.149514378149117 +331024,仙居县,4,331000,120.73543520574904,28.85322569325804 +331081,温岭市,4,331000,121.39258889457587,28.377655489850408 +331082,临海市,4,331000,121.15158529413057,28.8640493290829 +331083,玉环市,4,331000,121.23851297084417,28.14186298682908 +331102,莲都区,4,331100,119.9195191333465,28.45174513504599 +331121,青田县,4,331100,120.29657334899679,28.145487556330146 +331122,缙云县,4,331100,120.0974783056641,28.665214747164 +331123,遂昌县,4,331100,119.28243538621696,28.598454676709746 +331124,松阳县,4,331100,119.48854377015539,28.45505640427278 +331125,云和县,4,331100,119.57959736407496,28.121469507453906 +331126,庆元县,4,331100,119.06948685497508,27.625431778353544 +331127,景宁畲族自治县,4,331100,119.64243033108566,27.979553966950995 +331181,龙泉市,4,331100,119.14844476520678,28.080508725251303 +340102,瑶海区,4,340100,117.3155870445394,31.86378694165692 +340103,庐阳区,4,340100,117.27145913381999,31.884886695554332 +340104,蜀山区,4,340100,117.26646078230138,31.857378217104248 +340111,包河区,4,340100,117.316576258567,31.799293467782277 +340121,长丰县,4,340100,117.17356009256213,32.483722623763164 +340122,肥东县,4,340100,117.47540062527533,31.89389035448661 +340123,肥西县,4,340100,117.16455781372443,31.712962132716886 +340124,庐江县,4,340100,117.29357730191721,31.261327637478026 +340171,合肥高新技术产业开发区,4,340100,117.21254879745895,31.821431972580424 +340172,合肥经济技术开发区,4,340100,117.23344266497664,31.826577833686887 +340173,合肥新站高新技术产业开发区,4,340100,117.38391027518675,31.946315551121675 +340181,巢湖市,4,340100,117.89557620044565,31.629002428816317 +340202,镜湖区,4,340200,118.39260630352213,31.345866595568836 +340207,鸠江区,4,340200,118.39758848554156,31.37580451951749 +340209,弋江区,4,340200,118.37957970583027,31.317566272497334 +340210,湾沚区,4,340200,118.58244251202923,31.141239223464176 +340212,繁昌区,4,340200,118.20542431830533,31.107958593586286 +340223,南陵县,4,340200,118.34041816695333,30.920260298683342 +340271,芜湖经济技术开发区,4,340200,118.43943137653523,31.358536655799266 +340272,安徽芜湖三山经济开发区,4,340200,118.24351274142005,31.232719449012286 +340281,无为市,4,340200,117.90857854388872,31.308844155979028 +340302,龙子湖区,4,340300,117.39951276392846,32.94864426292913 +340303,蚌山区,4,340300,117.37944120527462,32.92337877039503 +340304,禹会区,4,340300,117.3484523600969,32.935309988858336 +340311,淮上区,4,340300,117.36638271773715,32.97054701188452 +340321,怀远县,4,340300,117.21150631391461,32.97600372662439 +340322,五河县,4,340300,117.88756088987175,33.13270946286574 +340323,固镇县,4,340300,117.32354764830771,33.323274297744135 +340371,蚌埠市高新技术开发区,4,340300,117.39551332813694,32.921523704350825 +340372,蚌埠市经济开发区,4,340300,117.39551332813694,32.921523704350825 +340402,大通区,4,340400,117.05958317928668,32.637269959538344 +340403,田家庵区,4,340400,117.02344533675632,32.653323007095956 +340404,谢家集区,4,340400,116.8654388772148,32.60625458819586 +340405,八公山区,4,340400,116.84056434849077,32.637137318436714 +340406,潘集区,4,340400,116.84158096083641,32.77795549110771 +340421,凤台县,4,340400,116.71757320891433,32.715103905085066 +340422,寿县,4,340400,116.80556277259998,32.56154615120071 +340503,花山区,4,340500,118.49960562874881,31.725472572000722 +340504,雨山区,4,340500,118.50559705700871,31.687745482903562 +340506,博望区,4,340500,118.8247752453867,31.55751002841838 +340521,当涂县,4,340500,118.50460469891183,31.576649154711316 +340522,含山县,4,340500,118.10746203633957,31.74086220873552 +340523,和县,4,340500,118.35951254887343,31.748243815854266 +340602,杜集区,4,340600,116.83461226601221,33.99728543639093 +340603,相山区,4,340600,116.80052112275578,33.96582716177039 +340604,烈山区,4,340600,116.81959906568504,33.90157406183185 +340621,濉溪县,4,340600,116.7723894280831,33.92162919482287 +340705,铜官区,4,340700,117.8626132390792,30.942478976022816 +340706,义安区,4,340700,117.94404104033666,30.956809322839803 +340711,郊区,4,340700,117.77446871769308,30.82743389804557 +340722,枞阳县,4,340700,117.25641197754456,30.711926985192772 +340802,迎江区,4,340800,117.0975144887677,30.517523291407603 +340803,大观区,4,340800,117.04053820416964,30.518231924650795 +340811,宜秀区,4,340800,116.9934411242481,30.619675877795817 +340822,怀宁县,4,340800,116.83659258050895,30.739399674606553 +340825,太湖县,4,340800,116.31547630162399,30.460113290447975 +340826,宿松县,4,340800,116.1355236994904,30.159786861375334 +340827,望江县,4,340800,116.71325900687212,30.1339222330446 +340828,岳西县,4,340800,116.36655539021015,30.855227714002314 +340871,安徽安庆经济开发区,4,340800,117.17152911363462,30.545283950841945 +340881,桐城市,4,340800,116.94365406847695,31.041099454452777 +340882,潜山市,4,340800,116.58761103891939,30.636755682399183 +341002,屯溪区,4,341000,118.32141818076884,29.7021439085461 +341003,黄山区,4,341000,118.14760982483591,30.27865098018807 +341004,徽州区,4,341000,118.34343582847224,29.834221385317097 +341021,歙县,4,341000,118.42146012978772,29.866287675757313 +341022,休宁县,4,341000,118.19992137244842,29.790843839009916 +341023,黟县,4,341000,117.94447724144334,29.93104733070446 +341024,祁门县,4,341000,117.72339257753917,29.860343948080427 +341102,琅琊区,4,341100,118.31244134015057,32.30086749259927 +341103,南谯区,4,341100,118.42348205203612,32.20613189926425 +341122,来安县,4,341100,118.44241249320064,32.458449762426696 +341124,全椒县,4,341100,118.28058428269748,32.091939797603374 +341125,定远县,4,341100,117.70447068625293,32.53704661348729 +341126,凤阳县,4,341100,117.5385853687445,32.88097672525767 +341171,中新苏滁高新技术产业开发区,4,341100,118.39167026918072,32.28363554928384 +341172,滁州经济技术开发区,4,341100,118.33940613596579,32.26127087204081 +341181,天长市,4,341100,119.01138527948528,32.67341003277047 +341182,明光市,4,341100,117.99550981385306,32.78302282341776 +341202,颍州区,4,341200,115.81341119616408,32.88962541654979 +341203,颍东区,4,341200,115.86361668264179,32.9173622401719 +341204,颍泉区,4,341200,115.81542555643966,32.931313576024976 +341221,临泉县,4,341200,115.26761550051185,33.04595952836284 +341222,太和县,4,341200,115.62861546970402,33.16595985009563 +341225,阜南县,4,341200,115.60254592516004,32.66409738512507 +341226,颍上县,4,341200,116.26347689904284,32.659028468804394 +341271,阜阳合肥现代产业园区,4,341200,115.90409298146314,32.81971454805982 +341272,阜阳经济技术开发区,4,341200,115.82043612491321,32.89606099485221 +341282,界首市,4,341200,115.38060984722048,33.26277523623148 +341302,埇桥区,4,341300,116.98348044326181,33.646130650445464 +341321,砀山县,4,341300,116.3725240015101,34.44842817139671 +341322,萧县,4,341300,116.94323923099243,34.226833736436404 +341323,灵璧县,4,341300,117.56455699798788,33.547892231948374 +341324,泗县,4,341300,117.9165899917489,33.48869463013435 +341371,宿州马鞍山现代产业园区,4,341300,117.93414719328032,33.474639800332106 +341372,宿州经济技术开发区,4,341300,116.97054394561262,33.65209532645213 +341502,金安区,4,341500,116.54543837997299,31.756287719901362 +341503,裕安区,4,341500,116.4865497826053,31.743625870830318 +341504,叶集区,4,341500,115.94747592742311,31.835263142250263 +341522,霍邱县,4,341500,116.28439133775672,32.3593435909225 +341523,舒城县,4,341500,116.95560171142074,31.467692010555787 +341524,金寨县,4,341500,115.94044120714393,31.73346173438129 +341525,霍山县,4,341500,116.35428238101063,31.41558470831777 +341602,谯城区,4,341600,115.78547191853164,33.882663087443404 +341621,涡阳县,4,341600,116.22160903515599,33.4985668350044 +341622,蒙城县,4,341600,116.57158940082672,33.27165823967443 +341623,利辛县,4,341600,116.21559991027756,33.15038605541897 +341702,贵池区,4,341700,117.57449037048667,30.693857943819243 +341721,东至县,4,341700,117.03448128943805,30.116534528265298 +341722,石台县,4,341700,117.49239440959089,30.216530337189035 +341723,青阳县,4,341700,117.85343129913953,30.645634346235052 +341802,宣州区,4,341800,118.76254944304942,30.952158157984414 +341821,郎溪县,4,341800,119.1907390711659,31.14937463882846 +341823,泾县,4,341800,118.42643469241686,30.694672488541514 +341824,绩溪县,4,341800,118.58544384056862,30.073292199532997 +341825,旌德县,4,341800,118.54646735262673,30.292481093722333 +341871,宣城市经济开发区,4,341800,118.76553424276743,30.94660154529291 +341881,宁国市,4,341800,118.98960981494011,30.639352229689443 +341882,广德市,4,341800,119.42747581034895,30.883667102643013 +350102,鼓楼区,4,350100,119.31049162321753,26.08811403755549 +350103,台江区,4,350100,119.32052821101611,26.05852815064472 +350104,仓山区,4,350100,119.28043216493037,26.05284169192682 +350105,马尾区,4,350100,119.44551915827756,26.004533771062754 +350111,晋安区,4,350100,119.334579415968,26.08721390443357 +350112,长乐区,4,350100,119.60065292657747,25.894000583371668 +350121,闽侯县,4,350100,119.13848201812112,26.156035214577336 +350122,连江县,4,350100,119.54647881620511,26.203583291029112 +350123,罗源县,4,350100,119.55648045991936,26.495495660323886 +350124,闽清县,4,350100,118.86957650956182,26.226847540201835 +350125,永泰县,4,350100,118.93843072857337,25.872787263195903 +350128,平潭县,4,350100,119.79650131413707,25.504700273944916 +350181,福清市,4,350100,119.39046524748903,25.72634329903456 +350203,思明区,4,350200,118.08840797224036,24.45194839567105 +350205,海沧区,4,350200,118.03956171184593,24.49032581859842 +350206,湖里区,4,350200,118.15358812171732,24.517573138111896 +350211,集美区,4,350200,118.10343491663684,24.582019062249607 +350212,同安区,4,350200,118.15856347661324,24.729113975346568 +350213,翔安区,4,350200,118.25457589660734,24.624216383592774 +350302,城厢区,4,350300,119.00153633130627,25.424343792481636 +350303,涵江区,4,350300,119.12256736821995,25.464464388124497 +350304,荔城区,4,350300,119.01948169064262,25.43975447880629 +350305,秀屿区,4,350300,119.1115713003065,25.32365439756104 +350322,仙游县,4,350300,118.69845425064784,25.36829149810406 +350404,三元区,4,350400,117.65255022877358,26.277335878354766 +350405,沙县区,4,350400,117.79856107580882,26.40281344434632 +350421,明溪县,4,350400,117.20851763567705,26.361853685276866 +350423,清流县,4,350400,116.82359318579535,26.183357353210287 +350424,宁化县,4,350400,116.66042551200016,26.267956490540477 +350425,大田县,4,350400,117.85343999668406,25.698932641878844 +350426,尤溪县,4,350400,118.19743971364737,26.176218039460192 +350428,将乐县,4,350400,117.47740904083985,26.735209519833294 +350429,泰宁县,4,350400,117.18259586239803,26.90566003228466 +350430,建宁县,4,350400,116.85250622659105,26.83682465534918 +350481,永安市,4,350400,117.37144258732353,25.948143989823954 +350502,鲤城区,4,350500,118.59348105353358,24.913354167053917 +350503,丰泽区,4,350500,118.6195801523202,24.894969993261856 +350504,洛江区,4,350500,118.67741629493332,24.946213653759614 +350505,泉港区,4,350500,118.92243298541256,25.139650393953733 +350521,惠安县,4,350500,118.80341550029883,25.03694981503913 +350524,安溪县,4,350500,118.19242537229232,25.06175955338205 +350525,永春县,4,350500,118.30048613527391,25.327974202083116 +350526,德化县,4,350500,118.247550069555,25.49730859417917 +350527,金门县,4,350500,118.33041515960107,24.440444541055168 +350581,石狮市,4,350500,118.65451902647484,24.737665160882703 +350582,晋江市,4,350500,118.55843052000408,24.787824575144548 +350583,南安市,4,350500,118.39257197205464,24.966362350467605 +350602,芗城区,4,350600,117.66058952410192,24.516268416111405 +350603,龙文区,4,350600,117.71645469459625,24.50950968094453 +350604,龙海区,4,350600,117.82445086941169,24.452939738546615 +350605,长泰区,4,350600,117.76555257036392,24.631243628383107 +350622,云霄县,4,350600,117.34644831448325,23.964072828247573 +350623,漳浦县,4,350600,117.62044335256876,24.123461614811962 +350624,诏安县,4,350600,117.18255858271938,23.717053963784434 +350626,东山县,4,350600,117.43656030456756,23.706894688691293 +350627,南靖县,4,350600,117.36344641065965,24.520851732069875 +350628,平和县,4,350600,117.32255159131472,24.368365040125912 +350629,华安县,4,350600,117.54058560970802,25.010067731399424 +350702,延平区,4,350700,118.18845055007307,26.643807791057217 +350703,建阳区,4,350700,118.12752522464272,27.337502466187814 +350721,顺昌县,4,350700,117.81651928091397,26.799104367214422 +350722,浦城县,4,350700,118.54743912327928,27.923390046145474 +350723,光泽县,4,350700,117.34048158962685,27.547272859205247 +350724,松溪县,4,350700,118.79145438277632,27.532554907166524 +350725,政和县,4,350700,118.86358723723711,27.37174919823424 +350781,邵武市,4,350700,117.49941950209916,27.346469966260766 +350782,武夷山市,4,350700,118.04157715008745,27.762553910259268 +350783,建瓯市,4,350700,118.31146073368568,27.028955089428838 +350802,新罗区,4,350800,117.04354293051858,25.10407762963451 +350803,永定区,4,350800,116.73850038791583,24.73010753217897 +350821,长汀县,4,350800,116.36356796987941,25.83918461828047 +350823,上杭县,4,350800,116.42644288775742,25.055570401525458 +350824,武平县,4,350800,116.10758916743498,25.100855173343017 +350825,连城县,4,350800,116.76044617117844,25.71633738185191 +350881,漳平市,4,350800,117.426556325259,25.295743499251625 +350902,蕉城区,4,350900,119.53344242698753,26.666738555955426 +350921,霞浦县,4,350900,120.01142710563632,26.891348873766713 +350922,古田县,4,350900,118.75257823557276,26.583261752072914 +350923,屏南县,4,350900,118.99259621521281,26.914264918059377 +350924,寿宁县,4,350900,119.51142504877579,27.46664965996927 +350925,周宁县,4,350900,119.3455671296402,27.11023928044784 +350926,柘荣县,4,350900,119.9074566869625,27.239961876352396 +350981,福安市,4,350900,119.65440636047963,27.094323508059915 +350982,福鼎市,4,350900,120.22345190932259,27.33052497252825 +360102,东湖区,4,360100,115.9054660260597,28.691259179775223 +360103,西湖区,4,360100,115.88353569365187,28.661976709900657 +360104,青云谱区,4,360100,115.93141618579283,28.62723573648408 +360111,青山湖区,4,360100,115.96855240505471,28.68759600617345 +360112,新建区,4,360100,115.82145092530017,28.698748625155122 +360113,红谷滩区,4,360100,115.864845639048,28.70407384192211 +360121,南昌县,4,360100,115.95046017276752,28.551604186108275 +360123,安义县,4,360100,115.55544146387352,28.85079427375071 +360124,进贤县,4,360100,116.24853779343151,28.382758944473657 +360202,昌江区,4,360200,117.19057910346257,29.27885446446956 +360203,珠山区,4,360200,117.20954826158831,29.30577822037362 +360222,浮梁县,4,360200,117.22146608078525,29.35778823752936 +360281,乐平市,4,360200,117.15851067473356,28.984363669039215 +360302,安源区,4,360300,113.87743991926233,27.621307703861603 +360313,湘东区,4,360300,113.74049971211109,27.645875074875434 +360321,莲花县,4,360300,113.96854067422115,27.133462711027768 +360322,上栗县,4,360300,113.80153822403567,27.886415692068386 +360323,芦溪县,4,360300,114.03651940468296,27.636604718699513 +360402,濂溪区,4,360400,115.9955985873402,29.67749487742969 +360403,浔阳区,4,360400,116.00787357280777,29.71133710851471 +360404,柴桑区,4,360400,115.91740154187518,29.614804909378574 +360423,武宁县,4,360400,115.10744177398514,29.262352150699854 +360424,修水县,4,360400,114.55356797638683,29.03117586795911 +360425,永修县,4,360400,115.8385189096452,29.01801638667067 +360426,德安县,4,360400,115.76257795846777,29.319172496311634 +360428,都昌县,4,360400,116.21055204664913,29.278965044766643 +360429,湖口县,4,360400,116.25847134558812,29.737131514561977 +360430,彭泽县,4,360400,116.55550980643851,29.90212200490592 +360481,瑞昌市,4,360400,115.6874296720721,29.681951286531458 +360482,共青城市,4,360400,115.82142002359062,29.248741173715608 +360483,庐山市,4,360400,116.05142593917256,29.4545391657173 +360502,渝水区,4,360500,114.95142389340262,27.80683965044363 +360521,分宜县,4,360500,114.69847247035635,27.820731344374416 +360602,月湖区,4,360600,117.04354760170725,28.24507833155475 +360603,余江区,4,360600,116.82459362864147,28.215353761359427 +360681,贵溪市,4,360600,117.25139869833444,28.29873507210513 +360702,章贡区,4,360700,114.92755088549953,25.823747013882084 +360703,南康区,4,360700,114.77153821508895,25.667052930560434 +360704,赣县区,4,360700,115.01857016414861,25.86638461662099 +360722,信丰县,4,360700,114.92952113897391,25.391975120013715 +360723,大余县,4,360700,114.36840663964537,25.40763729836687 +360724,上犹县,4,360700,114.55854863128526,25.790518799476178 +360725,崇义县,4,360700,114.3145724480779,25.687687192664324 +360726,安远县,4,360700,115.40055913128577,25.14274343173196 +360728,定南县,4,360700,115.03456377510408,24.789783831845877 +360729,全南县,4,360700,114.53658236665703,24.748206354966594 +360730,宁都县,4,360700,116.0154944374297,26.475979503340323 +360731,于都县,4,360700,115.4214992615303,25.95789394275063 +360732,兴国县,4,360700,115.36955169119426,26.34388258824273 +360733,会昌县,4,360700,115.81573240225609,25.59353145244788 +360734,寻乌县,4,360700,115.65351531535123,24.969446546780166 +360735,石城县,4,360700,116.35259426977315,26.31897234678407 +360781,瑞金市,4,360700,116.0334206628587,25.891666273953316 +360783,龙南市,4,360700,114.796554137092,24.91659946115653 +360802,吉州区,4,360800,115.00153936965165,27.149314993877184 +360803,青原区,4,360800,115.02156071302089,27.087662535191164 +360821,吉安县,4,360800,114.91459130140301,27.044989078994433 +360822,吉水县,4,360800,115.14256983128013,27.235259745038604 +360823,峡江县,4,360800,115.32240322821313,27.58823461761528 +360824,新干县,4,360800,115.39359474833033,27.746080951712873 +360825,永丰县,4,360800,115.44740243988527,27.324342103714045 +360826,泰和县,4,360800,114.91559111543528,26.795697341164775 +360827,遂川县,4,360800,114.52756212171211,26.319517284145913 +360828,万安县,4,360800,114.79257715893954,26.464072836340645 +360829,安福县,4,360800,114.62647813460515,27.399076477104835 +360830,永新县,4,360800,114.24941493589976,26.951537256563174 +360881,井冈山市,4,360800,114.29555585942124,26.753709741565643 +360902,袁州区,4,360900,114.43456118110868,27.802582705304406 +360921,奉新县,4,360900,115.40655109852699,28.69402895145841 +360922,万载县,4,360900,114.45253654384906,28.112133306115535 +360923,上高县,4,360900,114.93154115857352,28.23881549025242 +360924,宜丰县,4,360900,114.80951713474946,28.400373307264914 +360925,靖安县,4,360900,115.36955312848308,28.867081916185878 +360926,铜鼓县,4,360900,114.36099040901854,28.519663279865313 +360981,丰城市,4,360900,115.7774784214485,28.166614024368958 +360982,樟树市,4,360900,115.55241893532511,28.062153117647533 +360983,高安市,4,360900,115.36708781884231,28.446870774522154 +361002,临川区,4,361000,116.31848983160644,27.9404589928642 +361003,东乡区,4,361000,116.60954171504868,28.25397739799852 +361021,南城县,4,361000,116.64339884970856,27.576240966559514 +361022,黎川县,4,361000,116.9145070033776,27.28834023483109 +361023,南丰县,4,361000,116.53140350859456,27.224733524876402 +361024,崇仁县,4,361000,116.08354898487654,27.759079756014405 +361025,乐安县,4,361000,115.83749627865299,27.43407986449759 +361026,宜黄县,4,361000,116.24254169398493,27.56056346070013 +361027,金溪县,4,361000,116.76040404065004,27.925329188976068 +361028,资溪县,4,361000,117.06657027361484,27.71184578573218 +361030,广昌县,4,361000,116.34256064638275,26.848454446680922 +361102,信州区,4,361100,117.97341184157126,28.437628310999735 +361103,广丰区,4,361100,118.19742022041781,28.442615061204748 +361104,广信区,4,361100,117.91558441252161,28.454186874770276 +361123,玉山县,4,361100,118.2515628900973,28.687749687317275 +361124,铅山县,4,361100,117.71642163695348,28.321504694791088 +361125,横峰县,4,361100,117.60239738301532,28.413440462383896 +361126,弋阳县,4,361100,117.4555063762417,28.384082001230794 +361127,余干县,4,361100,116.70160096198632,28.707866244418767 +361128,鄱阳县,4,361100,116.71056614080348,29.011452830922217 +361129,万年县,4,361100,117.06459894217386,28.700054054128923 +361130,婺源县,4,361100,117.86844502242613,29.254039048096878 +361181,德兴市,4,361100,117.60103079084345,28.936828306307252 +370102,历下区,4,370100,117.08256731389552,36.67216295004278 +370103,市中区,4,370100,117.00439910401157,36.65755167364164 +370104,槐荫区,4,370100,116.90745837507174,36.65756173442624 +370105,天桥区,4,370100,116.99339917338078,36.68406787435328 +370112,历城区,4,370100,117.07158975107194,36.68565553471069 +370113,长清区,4,370100,116.75838709094633,36.5602158799097 +370114,章丘区,4,370100,117.53256537436938,36.685532751420155 +370115,济阳区,4,370100,117.18062113319276,36.98397051831499 +370116,莱芜区,4,370100,117.66659067001653,36.20884142681693 +370117,钢城区,4,370100,117.81749566517946,36.06471880702823 +370124,平阴县,4,370100,116.46261667805571,36.29486132106647 +370126,商河县,4,370100,117.16352979289881,37.31497071555638 +370171,济南高新技术产业开发区,4,370100,117.72295368144293,36.204308647509116 +370202,市南区,4,370200,120.41858472357943,36.08146564023402 +370203,市北区,4,370200,120.3814044873353,36.09344959486011 +370211,黄岛区,4,370200,120.20454654768359,35.966382870945466 +370212,崂山区,4,370200,120.47539724708304,36.113499423970545 +370213,李沧区,4,370200,120.43960282674914,36.15102466778407 +370214,城阳区,4,370200,120.40252679394416,36.31288619735009 +370215,即墨区,4,370200,120.45353617402276,36.39474917032192 +370271,青岛高新技术产业开发区,4,370200,120.53727342891582,36.52014109352917 +370281,胶州市,4,370200,120.03953537126692,36.27034908804922 +370283,平度市,4,370200,119.976700697455,36.75993613014904 +370285,莱西市,4,370200,120.52455620764162,36.89395629802583 +370302,淄川区,4,370300,117.9734118576298,36.649834806021666 +370303,张店区,4,370300,118.02459110728033,36.81194195214412 +370304,博山区,4,370300,117.86846875371543,36.500847855130566 +370305,临淄区,4,370300,118.31539460934518,36.8322936351522 +370306,周村区,4,370300,117.87648217784775,36.808994352212316 +370321,桓台县,4,370300,118.10443420778763,36.965607980118264 +370322,高青县,4,370300,117.8333943252478,37.17726865433254 +370323,沂源县,4,370300,118.1774894423699,36.19091698584845 +370402,市中区,4,370400,117.56256581399447,34.86996272506961 +370403,薛城区,4,370400,117.2694576193132,34.801124568638926 +370404,峄城区,4,370400,117.59639060966718,34.77859987301135 +370405,台儿庄区,4,370400,117.74042545412036,34.568763215632615 +370406,山亭区,4,370400,117.4674431655763,35.10569198076537 +370481,滕州市,4,370400,117.17256521920983,35.120034809573916 +370502,东营区,4,370500,118.58846268606544,37.45484732016579 +370503,河口区,4,370500,118.53250516974624,37.891120201055706 +370505,垦利区,4,370500,118.58143173866941,37.57855513380944 +370522,利津县,4,370500,118.26161799914311,37.49586029903058 +370523,广饶县,4,370500,118.4260019786527,37.060488846616934 +370571,东营经济技术开发区,4,370500,118.58846268606544,37.45484732016579 +370572,东营港经济开发区,4,370500,118.68138493513693,37.43964182632334 +370602,芝罘区,4,370600,121.40654004548657,37.546312866890936 +370611,福山区,4,370600,121.27460474743894,37.50366822845149 +370612,牟平区,4,370600,121.60654911474143,37.392915451795815 +370613,莱山区,4,370600,121.4513806717976,37.51764858410898 +370614,蓬莱区,4,370600,120.83553511247726,37.801948046001705 +370671,烟台高新技术产业开发区,4,370600,120.45149531373463,37.72034680082678 +370672,烟台经济技术开发区,4,370600,121.45441541730195,37.470038383730525 +370681,龙口市,4,370600,120.48536852807433,37.65255512549617 +370682,莱阳市,4,370600,120.718414309578,36.9846355683041 +370683,莱州市,4,370600,119.94859307736998,37.18263660907421 +370685,招远市,4,370600,120.44060165264568,37.36113714256612 +370686,栖霞市,4,370600,120.85641658337892,37.341418164799684 +370687,海阳市,4,370600,121.1804581977879,36.693269738228416 +370702,潍城区,4,370700,119.03142854151555,36.73285441557026 +370703,寒亭区,4,370700,119.22661514747064,36.78074378620103 +370704,坊子区,4,370700,119.17240097265466,36.66074159970123 +370705,奎文区,4,370700,119.13947052994769,36.71275201404622 +370724,临朐县,4,370700,118.54944999641151,36.519129501827656 +370725,昌乐县,4,370700,118.83648798143965,36.71299619084501 +370772,潍坊滨海经济技术开发区,4,370700,119.82762105908833,33.99564654746655 +370781,青州市,4,370700,118.48653672086745,36.690416508705376 +370782,诸城市,4,370700,119.41640221866636,36.00200885807568 +370783,寿光市,4,370700,118.7974153748082,36.86192174647094 +370784,安丘市,4,370700,119.2256075181801,36.483842195596104 +370785,高密市,4,370700,119.76241099601636,36.388956706464846 +370786,昌邑市,4,370700,119.40440597739446,36.8651610726221 +370811,任城区,4,370800,116.55446985373976,35.4937306402599 +370812,兖州区,4,370800,116.7901151517282,35.557952373283435 +370826,微山县,4,370800,117.13541381857256,34.813315104239 +370827,鱼台县,4,370800,116.65739284822328,35.017887717822525 +370828,金乡县,4,370800,116.31852982171351,35.072569118665015 +370829,嘉祥县,4,370800,116.34861308510659,35.41325504410229 +370830,汶上县,4,370800,116.50544105764958,35.71705539262766 +370831,泗水县,4,370800,117.2574285898902,35.67060048122767 +370832,梁山县,4,370800,116.10262029577927,35.80806388661061 +370871,济宁高新技术产业开发区,4,370800,116.28456740563666,35.10228695736774 +370881,曲阜市,4,370800,116.99341597169382,35.587372286487756 +370883,邹城市,4,370800,117.01440416129005,35.40752093244999 +370902,泰山区,4,370900,117.14141108581828,36.199444601195346 +370911,岱岳区,4,370900,117.0485564791517,36.19329124229092 +370921,宁阳县,4,370900,116.81257853863292,35.76453909734402 +370923,东平县,4,370900,116.47759421565412,35.94190801501926 +370982,新泰市,4,370900,117.77460624826666,35.9146198665876 +370983,肥城市,4,370900,116.77540081764421,36.18881122431525 +371002,环翠区,4,371000,122.12953818095359,37.50796807121946 +371003,文登区,4,371000,122.06442836877653,37.20011332831649 +371071,威海火炬高技术产业开发区,4,371000,121.91899064060844,37.38168562729052 +371072,威海经济技术开发区,4,371000,122.12754097831325,37.5164305480148 +371073,威海临港经济技术开发区,4,371000,122.12754097831325,37.5164305480148 +371082,荣成市,4,371000,122.49250463073764,37.171317939253235 +371083,乳山市,4,371000,121.54642858119733,36.92517735787775 +371102,东港区,4,371100,119.46862431118342,35.43104900394244 +371103,岚山区,4,371100,119.32553044175195,35.127432330051725 +371121,五莲县,4,371100,119.21558036258607,35.75569710410426 +371122,莒县,4,371100,118.87571222204119,35.59687205195049 +371171,日照经济技术开发区,4,371100,119.53341540456555,35.42283899843767 +371302,兰山区,4,371300,118.3544997346361,35.05734022980591 +371311,罗庄区,4,371300,118.29151252854857,35.00250373343294 +371312,河东区,4,371300,118.40954744713478,35.0956755368236 +371321,沂南县,4,371300,118.47149154086414,35.55609766694983 +371322,郯城县,4,371300,118.37358710977321,34.61922593247125 +371323,沂水县,4,371300,118.63461726384591,35.79618058471814 +371324,兰陵县,4,371300,118.0774094949949,34.86361638543997 +371325,费县,4,371300,117.98442508318213,35.27230412851695 +371326,平邑县,4,371300,117.62126289262746,35.52306049300892 +371327,莒南县,4,371300,118.84154077027218,35.18081163178793 +371328,蒙阴县,4,371300,117.95141460145422,35.71634716623248 +371329,临沭县,4,371300,118.65749450009906,34.92601859149122 +371371,临沂高新技术产业开发区,4,371300,118.2707453221078,34.99297736938245 +371402,德城区,4,371400,116.30544896636886,37.45699328302057 +371403,陵城区,4,371400,116.5894000143425,37.34713243458088 +371422,宁津县,4,371400,116.80653761373941,37.658018745854946 +371423,庆云县,4,371400,117.39145244824853,37.78158531885699 +371424,临邑县,4,371400,116.87340370301902,37.19616936672706 +371425,齐河县,4,371400,116.76938747072987,36.78994480666954 +371426,平原县,4,371400,116.4405047082665,37.171221463311625 +371427,夏津县,4,371400,116.00853411225853,36.954154863323446 +371428,武城县,4,371400,116.07550629141886,37.21922208028849 +371471,德州经济技术开发区,4,371400,116.36555674397471,37.441308454576266 +371472,德州运河经济开发区,4,371400,116.26715357366464,37.45611392200421 +371481,乐陵市,4,371400,117.23840643173311,37.73592450080975 +371482,禹城市,4,371400,116.64437110138118,36.94024200876569 +371502,东昌府区,4,371500,116.01305797880677,36.41851831835199 +371503,茌平区,4,371500,116.26145544215375,36.5867850688424 +371521,阳谷县,4,371500,115.79839557041204,36.12081551468669 +371522,莘县,4,371500,115.67739687245674,36.23990712054613 +371524,东阿县,4,371500,116.25449294563757,36.340957707760644 +371525,冠县,4,371500,115.44939579503601,36.49024322539373 +371526,高唐县,4,371500,116.23560427567926,36.85159108409526 +371581,临清市,4,371500,115.71146960045022,36.8442891866943 +371602,滨城区,4,371600,118.026603850606,37.436843207743635 +371603,沾化区,4,371600,118.10545441335532,37.705298106724484 +371621,惠民县,4,371600,117.5165096904979,37.49580310894013 +371622,阳信县,4,371600,117.58443703790701,37.64733803495721 +371623,无棣县,4,371600,117.63245748606224,37.777567312085814 +371625,博兴县,4,371600,118.1174926953251,37.160477277651474 +371681,邹平市,4,371600,117.74947848721935,36.8700322166973 +371702,牡丹区,4,371700,115.42344303020836,35.25701817606895 +371703,定陶区,4,371700,115.57943737523806,35.07727517975711 +371721,曹县,4,371700,115.54845724362382,34.83180934841467 +371722,单县,4,371700,116.11158367798839,34.78465843369218 +371723,成武县,4,371700,115.8965190083863,34.95860565495999 +371724,巨野县,4,371700,116.10159901224499,35.40206238060898 +371725,郓城县,4,371700,115.94539329592878,35.58147559928302 +371726,鄄城县,4,371700,115.51660692346202,35.56920425988141 +371728,东明县,4,371700,115.11402511085738,35.28172493679994 +371771,菏泽经济技术开发区,4,371700,115.48754503343376,35.23940742476551 +371772,菏泽高新技术开发区,4,371700,115.4174733409418,35.228681819480876 +410102,中原区,4,410100,113.61947551693957,34.754450781329176 +410103,二七区,4,410100,113.64640959070636,34.73104512139391 +410104,管城回族区,4,410100,113.68352469980101,34.75967387469872 +410105,金水区,4,410100,113.66644773239523,34.80607044566173 +410106,上街区,4,410100,113.3154972866043,34.808818610238696 +410108,惠济区,4,410100,113.62345527984044,34.873519885775636 +410122,中牟县,4,410100,113.98248490572702,34.72501084892361 +410171,郑州经济技术开发区,4,410100,113.63141920733915,34.75343885045448 +410172,郑州高新技术产业开发区,4,410100,114.01603248431934,34.69631551477937 +410173,郑州航空港经济综合实验区,4,410100,113.82650313697445,34.46635166250824 +410181,巩义市,4,410100,113.02843100495258,34.754096888696935 +410182,荥阳市,4,410100,113.38942279956461,34.79381050034602 +410183,新密市,4,410100,113.39739094909922,34.54589798344474 +410184,新郑市,4,410100,113.74643447195358,34.40176637910559 +410185,登封市,4,410100,113.05642283345736,34.45969746171987 +410202,龙亭区,4,410200,114.36141316645679,34.82203561250629 +410203,顺河回族区,4,410200,114.36739165911733,34.80224135555935 +410204,鼓楼区,4,410200,114.3544048563596,34.79487425191384 +410205,禹王台区,4,410200,114.35439775974605,34.78347210591688 +410212,祥符区,4,410200,114.4475325479012,34.76273957222411 +410221,杞县,4,410200,114.7895921047377,34.55485678068698 +410222,通许县,4,410200,114.47343590592583,34.48677180265463 +410223,尉氏县,4,410200,114.1995611508576,34.41722801035352 +410225,兰考县,4,410200,114.82523551991535,34.8622109159391 +410302,老城区,4,410300,112.4765035657198,34.68960106349699 +410303,西工区,4,410300,112.43439953731436,34.66676784751269 +410304,瀍河回族区,4,410300,112.50660380708702,34.6854624213354 +410305,涧西区,4,410300,112.40255200189966,34.66346897430892 +410307,偃师区,4,410300,112.79642141885469,34.733796624012776 +410308,孟津区,4,410300,112.45141766570924,34.83173157028531 +410311,洛龙区,4,410300,112.47046928828706,34.62470471302437 +410323,新安县,4,410300,112.14060970841214,34.73438332734371 +410324,栾川县,4,410300,111.62242666650891,33.791822464323104 +410325,嵩县,4,410300,112.09240816186609,34.14072155640602 +410326,汝阳县,4,410300,112.47950327730925,34.15984336489338 +410327,宜阳县,4,410300,112.17946537426293,34.54104694255354 +410328,洛宁县,4,410300,111.65958740952347,34.39498456021476 +410329,伊川县,4,410300,112.43240745501544,34.42764579642734 +410371,洛阳高新技术产业开发区,4,410300,112.38490101727301,34.61429297993309 +410402,新华区,4,410400,113.30043988964603,33.74365715164552 +410403,卫东区,4,410400,113.3416111176099,33.74037565140009 +410404,石龙区,4,410400,112.90545522640038,33.90475426839687 +410411,湛河区,4,410400,113.25051467448745,33.685790171047444 +410421,宝丰县,4,410400,113.06144723583577,33.874745598630774 +410422,叶县,4,410400,113.36358241275624,33.632491674058336 +410423,鲁山县,4,410400,112.91443396963372,33.74487886345235 +410425,郏县,4,410400,113.21960622765287,33.977486289176724 +410471,平顶山高新技术产业开发区,4,410400,113.39403784412212,33.738544518581435 +410472,平顶山市城乡一体化示范区,4,410400,113.34115396993587,33.74360063982602 +410481,舞钢市,4,410400,113.53141031593,33.2994311053011 +410482,汝州市,4,410400,112.85054971566392,34.17276778855066 +410502,文峰区,4,410500,114.36337398772396,36.09683274813585 +410503,北关区,4,410500,114.36238189911874,36.11313160776512 +410505,殷都区,4,410500,114.30959755718298,36.11575825553694 +410506,龙安区,4,410500,114.30759316809856,36.08275278362011 +410522,安阳县,4,410500,114.47673376511405,36.088623815857204 +410523,汤阴县,4,410500,114.36340938096104,35.92764374022512 +410526,滑县,4,410500,114.52555316618987,35.58104540055751 +410527,内黄县,4,410500,114.90758875550918,35.97694966806135 +410571,安阳高新技术产业开发区,4,410500,114.47673376511405,36.088623815857204 +410581,林州市,4,410500,113.82559018908465,36.08885320844752 +410602,鹤山区,4,410600,114.16955478241616,35.960280248227214 +410603,山城区,4,410600,114.19062058560844,35.90336961329157 +410611,淇滨区,4,410600,114.30559120443904,35.74695254628867 +410621,浚县,4,410600,114.55760785085516,35.68191730591282 +410622,淇县,4,410600,114.21548972449943,35.62727702033594 +410671,鹤壁经济技术开发区,4,410600,114.30359364247649,35.7523574114 +410702,红旗区,4,410700,113.88141583415499,35.310135512691105 +410703,卫滨区,4,410700,113.87243879770213,35.308459209602056 +410704,凤泉区,4,410700,113.91251023023013,35.37782018500511 +410711,牧野区,4,410700,113.91551290622778,35.32102348649875 +410721,新乡县,4,410700,113.81159378076424,35.19656440899276 +410724,获嘉县,4,410700,113.66341666994346,35.2658092841611 +410725,原阳县,4,410700,113.94662374129375,35.07116386446907 +410726,延津县,4,410700,114.2115117582096,35.14780651050911 +410727,封丘县,4,410700,114.42560616803036,35.0468575316508 +410771,新乡高新技术产业开发区,4,410700,113.96856602117211,35.22459259872548 +410772,新乡经济技术开发区,4,410700,113.81159378076424,35.19656440899276 +410773,新乡市平原城乡一体化示范区,4,410700,113.85567614739429,35.26108975818203 +410781,卫辉市,4,410700,114.07160094452217,35.40406888214502 +410782,辉县市,4,410700,113.81157302990697,35.467957818375645 +410783,长垣市,4,410700,114.67560989145973,35.20719822456536 +410802,解放区,4,410800,113.23757179886913,35.24630980763301 +410803,中站区,4,410800,113.18944759642748,35.24261710359088 +410804,马村区,4,410800,113.32854400633956,35.26189444172316 +410811,山阳区,4,410800,113.26048370971498,35.22027235297734 +410821,修武县,4,410800,113.45458192871418,35.22932348259429 +410822,博爱县,4,410800,113.07047799095812,35.177308063756 +410823,武陟县,4,410800,113.4083958204103,35.105838449216684 +410825,温县,4,410800,113.08656906806671,34.94613549224693 +410871,焦作城乡一体化示范区,4,410800,113.25975302801317,35.18163386137683 +410882,沁阳市,4,410800,112.95751688155336,35.09378573234604 +410883,孟州市,4,410800,112.79739491253585,34.91359781788649 +410902,华龙区,4,410900,115.08041294409888,35.78363288453635 +410922,清丰县,4,410900,115.11047186341266,35.89130816827738 +410923,南乐县,4,410900,115.21138615694532,36.076030832875425 +410926,范县,4,410900,115.51058621044251,35.85765508771859 +410927,台前县,4,410900,115.87856816938043,35.97501271252134 +410928,濮阳县,4,410900,115.03558408559006,35.717888889374784 +410971,河南濮阳工业园区,4,410900,115.03558408559006,35.717888889374784 +410972,濮阳经济技术开发区,4,410900,115.03558408559006,35.717888889374784 +411002,魏都区,4,411000,113.83754070660609,34.05325075250396 +411003,建安区,4,411000,113.82947787567075,34.13052547643305 +411024,鄢陵县,4,411000,114.18463769125088,34.108881697659704 +411025,襄城县,4,411000,113.51342013114277,33.85791182158849 +411071,许昌经济技术开发区,4,411000,113.85847553685502,34.04143161161871 +411081,禹州市,4,411000,113.49522360557991,34.14826652246125 +411082,长葛市,4,411000,113.82065759352936,34.201538754321476 +411102,源汇区,4,411100,113.99041352981918,33.57842326244745 +411103,郾城区,4,411100,114.0133938915449,33.59341588086467 +411104,召陵区,4,411100,114.1004665547965,33.592467538560506 +411121,舞阳县,4,411100,113.61549000488345,33.443577799934204 +411122,临颍县,4,411100,113.93757834379157,33.83269194792997 +411171,漯河经济技术开发区,4,411100,114.02342077764726,33.5877107071022 +411202,湖滨区,4,411200,111.19557389665238,34.77599679244391 +411203,陕州区,4,411200,111.10945065249427,34.7269148015266 +411221,渑池县,4,411200,111.76854234584539,34.77319704298588 +411224,卢氏县,4,411200,111.0545640061735,34.059924845298816 +411271,河南三门峡经济开发区,4,411200,111.2065332238741,34.778327249459984 +411281,义马市,4,411200,111.88051478020587,34.75302800947253 +411282,灵宝市,4,411200,110.90040831286163,34.52314262416382 +411302,宛城区,4,411300,112.546454166629,33.00987004062646 +411303,卧龙区,4,411300,112.54146183375731,32.99248379752679 +411321,南召县,4,411300,112.43542522254566,33.49618580462491 +411322,方城县,4,411300,113.01850275279521,33.26053945583183 +411323,西峡县,4,411300,111.48039809758171,33.31331611529193 +411324,镇平县,4,411300,112.24154448331042,33.0397185292249 +411325,内乡县,4,411300,111.8554252869733,33.05120310547566 +411326,淅川县,4,411300,111.49743203615358,33.14418526002652 +411327,社旗县,4,411300,112.95449345469842,33.06223668593527 +411328,唐河县,4,411300,112.81342436588645,32.687720660005475 +411329,新野县,4,411300,112.36654962384021,32.52663177881783 +411330,桐柏县,4,411300,113.43447273105946,32.38513075495586 +411371,南阳高新技术产业开发区,4,411300,112.53450131351325,32.99656220465144 +411372,南阳市城乡一体化示范区,4,411300,112.62690182674454,33.010139348108154 +411381,邓州市,4,411300,112.09342010302309,32.69391743997009 +411402,梁园区,4,411400,115.6206020455717,34.44947124629416 +411403,睢阳区,4,411400,115.65947594702435,34.39415192047936 +411421,民权县,4,411400,115.15457605886661,34.652478726537026 +411422,睢县,4,411400,115.0784108906088,34.451616965408846 +411423,宁陵县,4,411400,115.32041843737164,34.46663402766001 +411424,柘城县,4,411400,115.31243456749063,34.09736021241513 +411425,虞城县,4,411400,115.83447295698157,34.405331502097134 +411426,夏邑县,4,411400,116.1375123682284,34.2435234723781 +411471,豫东综合物流产业聚集区,4,411400,115.1660630507449,34.62998842655314 +411472,河南商丘经济开发区,4,411400,115.66244933826238,34.4202016658586 +411481,永城市,4,411400,116.45556614759954,33.93480147585089 +411502,浉河区,4,411500,114.06558130946927,32.12255415688444 +411503,平桥区,4,411500,114.1324074241537,32.10732538610979 +411521,罗山县,4,411500,114.51952993791492,32.20915045183822 +411522,光山县,4,411500,114.92553303688484,32.01590687956846 +411523,新县,4,411500,114.8855247552342,31.649738468474663 +411524,商城县,4,411500,115.41351334076217,31.804345366902695 +411525,固始县,4,411500,115.66048788818134,32.17417437962212 +411526,潢川县,4,411500,115.05847075405106,32.137530716413536 +411527,淮滨县,4,411500,115.42643896891468,32.479469756662695 +411528,息县,4,411500,114.74745313224791,32.34895551171522 +411571,信阳高新技术产业开发区,4,411500,114.20389412748497,32.14698970876222 +411602,川汇区,4,411600,114.6576017405623,33.65299710281438 +411603,淮阳区,4,411600,114.89258615518705,33.737347183458404 +411621,扶沟县,4,411600,114.4015098413696,34.065906253969246 +411622,西华县,4,411600,114.53559667094417,33.77321533492214 +411623,商水县,4,411600,114.61841594743659,33.54887747535332 +411624,沈丘县,4,411600,115.10545545595329,33.41569109405895 +411625,郸城县,4,411600,115.18347760136133,33.65082795504896 +411627,太康县,4,411600,114.84438388999658,34.07003838224778 +411628,鹿邑县,4,411600,115.49058525860173,33.8671732903174 +411671,河南周口经济开发区,4,411600,114.7079826661061,33.643083575264406 +411681,项城市,4,411600,114.88151400079326,33.473007441429914 +411702,驿城区,4,411700,114.00038696674372,32.979519871981815 +411721,西平县,4,411700,114.02747357278608,33.39386099752538 +411722,上蔡县,4,411700,114.27048686239792,33.268511215884224 +411723,平舆县,4,411700,114.62542865923078,32.96798240043784 +411724,正阳县,4,411700,114.39949655906064,32.6116410772727 +411725,确山县,4,411700,114.0324950107563,32.80817569298386 +411726,泌阳县,4,411700,113.33355798837405,32.729730650434554 +411727,汝南县,4,411700,114.36940889397054,33.01314088199241 +411728,遂平县,4,411700,114.01944146389916,33.151971399578684 +411729,新蔡县,4,411700,114.97184912999602,32.75131512419268 +411771,河南驻马店经济开发区,4,411700,114.07340797588604,33.005106536804576 +419001,济源市,4,419000,113.75938408486323,34.771712921931496 +420102,江岸区,4,420100,114.31657918760652,30.605402797562395 +420103,江汉区,4,420100,114.27750613182234,30.6072822768268 +420104,硚口区,4,420100,114.2214603120715,30.587584340775596 +420105,汉阳区,4,420100,114.22544555463595,30.56005202744345 +420106,武昌区,4,420100,114.32254851755089,30.559566983522483 +420107,青山区,4,420100,114.39149265696673,30.64659307554314 +420111,洪山区,4,420100,114.35045554601551,30.50633395680806 +420112,东西湖区,4,420100,114.14345873785965,30.625919818109203 +420113,汉南区,4,420100,114.09151485055902,30.314809120144606 +420114,蔡甸区,4,420100,114.03547963081321,30.588113621855484 +420115,江夏区,4,420100,114.32855126446022,30.38156421818202 +420116,黄陂区,4,420100,114.38245399675588,30.88753376783457 +420117,新洲区,4,420100,114.80754339289633,30.847243870522625 +420202,黄石港区,4,420200,115.07241748607679,30.229052639992027 +420203,西塞山区,4,420200,115.11648143744387,30.21069518411846 +420204,下陆区,4,420200,114.96741590247372,30.180046155273466 +420205,铁山区,4,420200,114.90757141821284,30.212250832586538 +420222,阳新县,4,420200,115.22142677197253,29.836541808086142 +420281,大冶市,4,420200,114.98643626401979,30.10166780010339 +420302,茅箭区,4,420300,110.81958031019317,32.597286519103754 +420303,张湾区,4,420300,110.77542410285021,32.65839954547973 +420304,郧阳区,4,420300,110.81857654361632,32.84059241303827 +420322,郧西县,4,420300,110.43247261847287,32.99916700753649 +420323,竹山县,4,420300,110.23558156764314,32.2303040603762 +420324,竹溪县,4,420300,109.72154249888798,32.32412004885334 +420325,房县,4,420300,110.73359136270881,32.04666554526334 +420381,丹江口市,4,420300,111.5195320584795,32.54625268850125 +420502,西陵区,4,420500,111.29255972052881,30.716749346598352 +420503,伍家岗区,4,420500,111.3674222559666,30.650737335260395 +420504,点军区,4,420500,111.27447135094933,30.699329513880368 +420505,猇亭区,4,420500,111.44157378259324,30.53646598270678 +420506,夷陵区,4,420500,111.33252973436471,30.774833327298143 +420525,远安县,4,420500,111.64653035927485,31.06662784157842 +420526,兴山县,4,420500,110.75344607041252,31.35446351771565 +420527,秭归县,4,420500,110.98444937467816,30.83193164321606 +420528,长阳土家族自治县,4,420500,111.21350712887026,30.478645783055725 +420529,五峰土家族自治县,4,420500,111.05258063743803,30.171156151026448 +420581,宜都市,4,420500,111.456515837124,30.38440427431352 +420582,当阳市,4,420500,111.79456850223322,30.82698905028075 +420583,枝江市,4,420500,111.766539753372,30.431730676997983 +420602,襄城区,4,420600,112.14057206941128,32.01617461814126 +420606,樊城区,4,420600,112.14259891613344,32.05057237469156 +420607,襄州区,4,420600,112.21843413677742,32.093375783399296 +420624,南漳县,4,420600,111.84538618391599,31.78112970677853 +420625,谷城县,4,420600,111.65957564172129,32.268983068947186 +420626,保康县,4,420600,111.26744121202825,31.883847150262206 +420682,老河口市,4,420600,111.6815563690755,32.39245958527059 +420683,枣阳市,4,420600,112.77847075950989,32.13472991431875 +420684,宜城市,4,420600,112.2646114416873,31.725469730972 +420702,梁子湖区,4,420700,114.69150657525594,30.105906774051476 +420703,华容区,4,420700,114.73642634228239,30.540599527838044 +420704,鄂城区,4,420700,114.89859968176249,30.406389456291524 +420802,东宝区,4,420800,112.20838820659824,31.0584292713654 +420804,掇刀区,4,420800,112.21442769420291,30.979910859803837 +420822,沙洋县,4,420800,112.59548493899133,30.715314748830732 +420881,钟祥市,4,420800,112.59447102156223,31.174029854963006 +420882,京山市,4,420800,113.12654806495773,31.02433060119255 +420902,孝南区,4,420900,113.91748989699413,30.922977925048983 +420921,孝昌县,4,420900,114.00440859068135,31.264540493061723 +420922,大悟县,4,420900,114.1334125381888,31.567219806641464 +420923,云梦县,4,420900,113.7594122018257,31.027218220752015 +420981,应城市,4,420900,113.5795673963533,30.933976509913286 +420982,安陆市,4,420900,113.69558292415309,31.261414994285975 +420984,汉川市,4,420900,113.845549010397,30.666913578820797 +421002,沙市区,4,421000,112.25861327613607,30.33169887683693 +421003,荆州区,4,421000,112.19641397381135,30.358989490775382 +421022,公安县,4,421000,112.23650157583852,30.064400686806085 +421024,江陵县,4,421000,112.43145201727503,30.048042984592485 +421071,荆州经济技术开发区,4,421000,112.19641397381135,30.358989490775382 +421081,石首市,4,421000,112.43141984370993,29.72703397740694 +421083,洪湖市,4,421000,113.48255290195605,29.83277032976022 +421087,松滋市,4,421000,111.773580312637,30.17534223514285 +421088,监利市,4,421000,112.91142023009189,29.845735162836444 +421102,黄州区,4,421100,114.88653238452474,30.440224145145685 +421121,团风县,4,421100,114.8785243502255,30.64936776721529 +421122,红安县,4,421100,114.62442561129834,31.294296714037316 +421123,罗田县,4,421100,115.40554716749966,30.7889104956853 +421124,英山县,4,421100,115.6874216026259,30.74135008408465 +421125,浠水县,4,421100,115.2715690328918,30.457460842265274 +421126,蕲春县,4,421100,115.4423985340966,30.23253549973421 +421127,黄梅县,4,421100,115.95046198476884,30.076605056821283 +421171,龙感湖管理区,4,421100,115.99947208069793,29.882105387880724 +421181,麻城市,4,421100,115.01656174777186,31.176995837411464 +421182,武穴市,4,421100,115.56739216105213,29.850441430483002 +421202,咸安区,4,421200,114.30456990605815,29.85815391515437 +421221,嘉鱼县,4,421200,113.94557046335528,29.976353520898183 +421222,通城县,4,421200,113.82356790903289,29.250857930222462 +421223,崇阳县,4,421200,114.04656290943393,29.561333782271227 +421224,通山县,4,421200,114.48939330026687,29.61263433805842 +421281,赤壁市,4,421200,113.90643686179263,29.73066599752579 +421303,曾都区,4,421300,113.37751333460498,31.722122861270798 +421321,随县,4,421300,113.30645835690179,31.85997167825831 +421381,广水市,4,421300,113.83259337884046,31.6224760380074 +422801,恩施市,4,422800,109.4865502690053,30.30103714374126 +422802,利川市,4,422800,108.94248057755993,30.297203443679802 +422822,建始县,4,422800,109.72855610898769,30.60790702631939 +422823,巴东县,4,422800,110.34757529184422,31.048064248959722 +422825,宣恩县,4,422800,109.49756797282649,29.992603922080246 +422826,咸丰县,4,422800,109.14660773562142,29.671077652357877 +422827,来凤县,4,422800,109.413494841531,29.499443572607333 +422828,鹤峰县,4,422800,110.04042423300965,29.89611648340303 +429004,仙桃市,4,429000,114.34844073658718,30.551600064658352 +429005,潜江市,4,429000,112.9031928439735,30.426674439938697 +429006,天门市,4,429000,113.16166740870086,30.64162852018465 +429021,神农架林区,4,429000,114.34844073658718,30.551600064658352 +430102,芙蓉区,4,430100,113.03940774487253,28.191913247304726 +430103,天心区,4,430100,112.99659225851735,28.11821121744063 +430104,岳麓区,4,430100,112.93744764409885,28.241488836472605 +430105,开福区,4,430100,112.99258491763867,28.261378687684147 +430111,雨花区,4,430100,113.04242155985752,28.142232711654117 +430112,望城区,4,430100,112.8244661431963,28.367403020376223 +430121,长沙县,4,430100,113.08755916595523,28.251818487944462 +430181,浏阳市,4,430100,113.64939823850789,28.169832216070507 +430182,宁乡市,4,430100,112.55840691564445,28.284104536209348 +430202,荷塘区,4,430200,113.18045222006695,27.862155809140553 +430203,芦淞区,4,430200,113.15841867235604,27.791508825947016 +430204,石峰区,4,430200,113.12456791566528,27.880705165594822 +430211,天元区,4,430200,113.08954055841794,27.8330835194845 +430212,渌口区,4,430200,113.15042671772805,27.704322804857117 +430223,攸县,4,430200,113.3515783416946,27.00577156521266 +430224,茶陵县,4,430200,113.54547165714293,26.78358911035979 +430225,炎陵县,4,430200,113.77941879831802,26.496060691598743 +430271,云龙示范区,4,430200,113.22514480561516,27.992201061274876 +430281,醴陵市,4,430200,113.50348315083997,27.65232514995133 +430302,雨湖区,4,430300,112.91344959206882,27.862466785110627 +430304,岳塘区,4,430300,113.00207291026247,27.85115809718239 +430321,湘潭县,4,430300,112.95750536884121,27.784982534656113 +430371,湖南湘潭高新技术产业园区,4,430300,112.95750536884121,27.784982534656113 +430372,湘潭昭山示范区,4,430300,113.03400713214832,27.95800191177791 +430373,湘潭九华示范区,4,430300,112.95840169807876,27.942423674931927 +430381,湘乡市,4,430300,112.54149155340549,27.740190553343652 +430382,韶山市,4,430300,112.53349932928586,27.92104374963106 +430405,珠晖区,4,430400,112.62659414281505,26.90026536194552 +430406,雁峰区,4,430400,112.62041110599193,26.846539399699935 +430407,石鼓区,4,430400,112.62877486927036,26.96931305821596 +430408,蒸湘区,4,430400,112.5734440108932,26.917719877876692 +430412,南岳区,4,430400,112.74557434825013,27.23836047456236 +430421,衡阳县,4,430400,112.37755268433024,26.975294950860984 +430422,衡南县,4,430400,112.68440252778792,26.74453195677219 +430423,衡山县,4,430400,112.87556328770634,27.23599602965559 +430424,衡东县,4,430400,112.95949529520625,27.087042820264845 +430426,祁东县,4,430400,112.09644737847452,26.805995255190922 +430471,衡阳综合保税区,4,430400,112.37755268433024,26.975294950860984 +430472,湖南衡阳高新技术产业园区,4,430400,112.57885764904731,26.898781719511856 +430473,湖南衡阳松木经济开发区,4,430400,112.35108806503173,27.281594640810766 +430481,耒阳市,4,430400,112.86659721058366,26.428065593927606 +430482,常宁市,4,430400,112.40556050266383,26.42672043225662 +430502,双清区,4,430500,111.50344150643294,27.239108783296654 +430503,大祥区,4,430500,111.44552828920708,27.22701396869384 +430511,北塔区,4,430500,111.45849694618926,27.251536276173585 +430522,新邵县,4,430500,111.46444938798804,27.327131739160276 +430523,邵阳县,4,430500,111.28050768063707,26.996528332196284 +430524,隆回县,4,430500,111.03950668527776,27.119946440018886 +430525,洞口县,4,430500,110.58257909625085,27.06597543779858 +430527,绥宁县,4,430500,110.16241987037962,26.588422719333217 +430528,新宁县,4,430500,110.86349072743869,26.439723697953905 +430529,城步苗族自治县,4,430500,110.32853713031585,26.396203220077773 +430581,武冈市,4,430500,110.6384076158804,26.732898572991598 +430582,邵东市,4,430500,111.75049070295837,27.264507471565526 +430602,岳阳楼区,4,430600,113.13648070435137,29.377995036881128 +430603,云溪区,4,430600,113.27840659691188,29.479907141132852 +430611,君山区,4,430600,113.01251714910133,29.467129185831674 +430621,岳阳县,4,430600,113.12254448250472,29.150269316045275 +430623,华容县,4,430600,112.54746151216173,29.536286434381537 +430624,湘阴县,4,430600,112.88952187736018,28.676676377581405 +430626,平江县,4,430600,113.58760362283579,28.70756424811539 +430671,岳阳市屈原管理区,4,430600,112.91418198055085,28.860717002082563 +430681,汨罗市,4,430600,113.07349286947077,28.81245469481151 +430682,临湘市,4,430600,113.45656151000003,29.482801373395436 +430702,武陵区,4,430700,111.6895448961624,29.06078347657812 +430703,鼎城区,4,430700,111.6875220918157,29.024443397066236 +430721,安乡县,4,430700,112.17750615580171,29.417320432220166 +430722,汉寿县,4,430700,111.97641193355722,28.91228760308519 +430723,澧县,4,430700,111.7655335473624,29.638946004609103 +430724,临澧县,4,430700,111.65358500796546,29.446543990119117 +430725,桃源县,4,430700,111.49540733144599,28.908694006999355 +430726,石门县,4,430700,111.386451407024,29.590365966649998 +430771,常德市西洞庭管理区,4,430700,111.98817165098446,29.214091001390837 +430781,津市市,4,430700,111.88451734601949,29.611258543006777 +430802,永定区,4,430800,110.54443192396839,29.126190558381275 +430811,武陵源区,4,430800,110.55749894540386,29.35168113667119 +430821,慈利县,4,430800,111.14547125235251,29.43598672596915 +430822,桑植县,4,430800,110.17041335212696,29.405923219415055 +430902,资阳区,4,430900,112.33043548238085,28.59723454973666 +430903,赫山区,4,430900,112.38059794000806,28.584983567572916 +430921,南县,4,430900,112.40254156733745,29.36706985336325 +430922,桃江县,4,430900,112.16254146397702,28.523870869897745 +430923,安化县,4,430900,111.21949270431685,28.380053748765423 +430971,益阳市大通湖管理区,4,430900,112.56403273355993,29.23652255562655 +430972,湖南益阳高新技术产业园区,4,430900,112.36169911920373,28.818587615911984 +430981,沅江市,4,430900,112.36053222034666,28.8502335885833 +431002,北湖区,4,431000,113.017410129382,25.790537261261562 +431003,苏仙区,4,431000,113.04842340845934,25.806737374103573 +431021,桂阳县,4,431000,112.7405603662173,25.759775327893205 +431022,宜章县,4,431000,112.95547924076412,25.405713969356206 +431023,永兴县,4,431000,113.1225331638553,26.132968478532568 +431024,嘉禾县,4,431000,112.37558377831412,25.593421718267894 +431025,临武县,4,431000,112.57041115183141,25.282527010968707 +431026,汝城县,4,431000,113.69154466691944,25.556056733977883 +431027,桂东县,4,431000,113.9515936017977,26.083173927327394 +431028,安仁县,4,431000,113.27542359380587,26.71568278850785 +431081,资兴市,4,431000,113.24255612232601,25.981873602722327 +431102,零陵区,4,431100,111.63750237493397,26.227682089778906 +431103,冷水滩区,4,431100,111.59842608526284,26.467705510832307 +431122,东安县,4,431100,111.32354235353662,26.398288039365276 +431123,双牌县,4,431100,111.66759381289727,25.967169239802526 +431124,道县,4,431100,111.60740437934045,25.53252996282964 +431125,江永县,4,431100,111.3504366323604,25.27972066791849 +431126,宁远县,4,431100,111.95245340696962,25.577051937460364 +431127,蓝山县,4,431100,112.2034349358637,25.37593472464048 +431128,新田县,4,431100,112.21040920017975,25.909825802753833 +431129,江华瑶族自治县,4,431100,111.58545203844761,25.19134892401461 +431171,永州经济技术开发区,4,431100,111.61945505792227,26.425864117900094 +431173,永州市回龙圩管理区,4,431100,111.35226818746409,25.17396711072476 +431181,祁阳市,4,431100,111.84742029287784,26.586434994948338 +431202,鹤城区,4,431200,110.04639994092115,27.585225763163724 +431221,中方县,4,431200,109.95146189431664,27.446081174059824 +431222,沅陵县,4,431200,110.40043076601941,28.45901810262646 +431223,辰溪县,4,431200,110.19048661755465,28.012605313812955 +431224,溆浦县,4,431200,110.60155112895423,27.913963373885736 +431225,会同县,4,431200,109.74158556791785,26.893383817273584 +431226,麻阳苗族自治县,4,431200,109.80943628984454,27.871930162950118 +431227,新晃侗族自治县,4,431200,109.18147151143545,27.358782968573223 +431228,芷江侗族自治县,4,431200,109.69140226960282,27.449513277764982 +431229,靖州苗族侗族自治县,4,431200,109.702451607033,26.58132135106617 +431230,通道侗族自治县,4,431200,109.79044548255604,26.16421986471205 +431271,怀化市洪江管理区,4,431200,109.84350982630171,27.21507709393158 +431281,洪江市,4,431200,109.84350982630171,27.21507709393158 +431302,娄星区,4,431300,112.008558425035,27.73560484210878 +431321,双峰县,4,431300,112.18146049665532,27.4629826585733 +431322,新化县,4,431300,111.33451533499847,27.7326667510658 +431381,冷水江市,4,431300,111.44153972291355,27.692058848957522 +431382,涟源市,4,431300,111.67056199396235,27.69816753225533 +433101,吉首市,4,433100,109.70444880967267,28.267493127592708 +433122,泸溪县,4,433100,110.22659921768825,28.22187309756933 +433123,凤凰县,4,433100,109.60552668830216,27.95384780972621 +433124,花垣县,4,433100,109.48856183127808,28.5779099343968 +433125,保靖县,4,433100,109.66647357306476,28.705968872486093 +433126,古丈县,4,433100,109.95750740056623,28.623083527843185 +433127,永顺县,4,433100,109.86358578664593,28.98577448568191 +433130,龙山县,4,433100,109.4504157369622,29.464121765857005 +440103,荔湾区,4,440100,113.250502263373,23.13179113497485 +440104,越秀区,4,440100,113.27342648099675,23.13526012014849 +440105,海珠区,4,440100,113.32353998097368,23.08898129664783 +440106,天河区,4,440100,113.36850942427998,23.13035783510465 +440111,白云区,4,440100,113.27943309061779,23.16431683445584 +440112,黄埔区,4,440100,113.48707083968644,23.187491541424553 +440113,番禺区,4,440100,113.39046958043075,22.94383073151757 +440114,花都区,4,440100,113.22657580629208,23.411161504875746 +440115,南沙区,4,440100,113.5314355437236,22.807929296528254 +440117,从化区,4,440100,113.59358543922477,23.5539859225784 +440118,增城区,4,440100,113.81754566889597,23.266592400631392 +440203,武江区,4,440200,113.59455578883632,24.798486030733113 +440204,浈江区,4,440200,113.6174774013741,24.810413749784487 +440205,曲江区,4,440200,113.61150106464875,24.688407846380294 +440222,始兴县,4,440200,114.06856735204634,24.958558154345624 +440224,仁化县,4,440200,113.75544293443409,25.092287524427956 +440229,翁源县,4,440200,114.13642723668924,24.356594490867355 +440232,乳源瑶族自治县,4,440200,113.28243136491744,24.782333322942147 +440233,新丰县,4,440200,114.21351173078048,24.065546505163553 +440281,乐昌市,4,440200,113.35457868209694,25.135591561194918 +440282,南雄市,4,440200,114.31857889065107,25.123526537362086 +440303,罗湖区,4,440300,114.13743190157126,22.55448487585574 +440304,福田区,4,440300,114.06149095039383,22.528501131330707 +440305,南山区,4,440300,113.93653916925258,22.538500195784383 +440306,宝安区,4,440300,113.89042744066019,22.560032908924555 +440307,龙岗区,4,440300,114.25445487896184,22.72601655078104 +440308,盐田区,4,440300,114.24343015510262,22.563437914836104 +440309,龙华区,4,440300,114.05115334041898,22.702687338231396 +440310,坪山区,4,440300,114.35719731400391,22.71537636510112 +440311,光明区,4,440300,113.94256006193123,22.754465883635365 +440402,香洲区,4,440400,113.55047243408478,22.27300386179866 +440403,斗门区,4,440400,113.3034672545293,22.215515662229034 +440404,金湾区,4,440400,113.36951705357019,22.152576780675133 +440507,龙湖区,4,440500,116.7235246469334,23.37777578062844 +440511,金平区,4,440500,116.70955006744148,23.371750385773453 +440512,濠江区,4,440500,116.73351658894812,23.291546359756765 +440513,潮阳区,4,440500,116.60851450269834,23.27085495694311 +440514,潮南区,4,440500,116.43949131426885,23.25634143267327 +440515,澄海区,4,440500,116.76242504838574,23.472341401523146 +440523,南澳县,4,440500,117.03049603112653,23.42781204594636 +440604,禅城区,4,440600,113.12950518240757,23.015374368816396 +440605,南海区,4,440600,113.14944567828094,23.03501144600308 +440606,顺德区,4,440600,113.30045343954433,22.81045342679539 +440607,三水区,4,440600,112.90347085514507,23.16192049398403 +440608,高明区,4,440600,112.89947240749092,22.90634960163004 +440703,蓬江区,4,440700,113.08454642893685,22.601065786023433 +440704,江海区,4,440700,113.11755718014552,22.56611545182351 +440705,新会区,4,440700,113.03845482238786,22.465113060519734 +440781,台山市,4,440700,112.80044482505359,22.257923470251228 +440783,开平市,4,440700,112.70446429490508,22.382499490200658 +440784,鹤山市,4,440700,112.97052666652624,22.77116943137714 +440785,恩平市,4,440700,112.3114375784788,22.189035201534217 +440802,赤坎区,4,440800,110.372532540958,21.272134812703147 +440803,霞山区,4,440800,110.40442535095987,21.19822718530276 +440804,坡头区,4,440800,110.46256709710735,21.2503767385989 +440811,麻章区,4,440800,110.34057918516478,21.26918876656652 +440823,遂溪县,4,440800,110.25651530641605,21.3831029620292 +440825,徐闻县,4,440800,110.18247274427223,20.33172368670216 +440881,廉江市,4,440800,110.29244770646442,21.615816495304664 +440882,雷州市,4,440800,110.10258050647992,20.919880592716495 +440883,吴川市,4,440800,110.78645034014797,21.447262768557348 +440902,茂南区,4,440900,110.92554576187803,21.647152082303503 +440904,电白区,4,440900,111.02047123220541,21.52035118819837 +440981,高州市,4,440900,110.85947386452162,21.924048896771122 +440982,化州市,4,440900,110.64643101120122,21.670231093869553 +440983,信宜市,4,440900,110.95358169717407,22.36009314172976 +441202,端州区,4,441200,112.49156022978593,23.057563726175687 +441203,鼎湖区,4,441200,112.57443448254817,23.164308112715716 +441204,高要区,4,441200,112.46444604577336,23.03189554686566 +441223,广宁县,4,441200,112.4474238750093,23.64103572633298 +441224,怀集县,4,441200,112.17391841342658,23.926565780867453 +441225,封开县,4,441200,111.51852585255149,23.429768921261136 +441226,德庆县,4,441200,111.79155377492526,23.15137330611021 +441284,四会市,4,441200,112.74057914080245,23.33238100517465 +441302,惠城区,4,441300,114.38949004961869,23.08972597254434 +441303,惠阳区,4,441300,114.46346443037433,22.7947208785705 +441322,博罗县,4,441300,114.29657265142765,23.178805592432578 +441323,惠东县,4,441300,114.72642585137605,22.991443112002415 +441324,龙门县,4,441300,114.26143022124452,23.733838340061837 +441402,梅江区,4,441400,116.1235359766734,24.315878769037926 +441403,梅县区,4,441400,116.08856170928166,24.270999314695175 +441422,大埔县,4,441400,116.70155892128847,24.353459468581786 +441423,丰顺县,4,441400,116.18845382094152,23.745738303254953 +441424,五华县,4,441400,115.78248548652893,23.938408899570756 +441426,平远县,4,441400,115.89747694600936,24.572414126136522 +441427,蕉岭县,4,441400,116.17743924793456,24.664992548661576 +441481,兴宁市,4,441400,115.73757946359162,24.14229377932197 +441502,城区,4,441500,115.37153074806264,22.784551839489296 +441521,海丰县,4,441500,115.32944477561186,22.972744260965804 +441523,陆河县,4,441500,115.6664827147057,23.307677076489913 +441581,陆丰市,4,441500,115.65849031092495,22.923635773560758 +441602,源城区,4,441600,114.70843899032516,23.740298338346726 +441621,紫金县,4,441600,115.19044771833511,23.641430253188638 +441622,龙川县,4,441600,115.2665554848457,24.105850721954667 +441623,连平县,4,441600,114.49544419634952,24.375808067413903 +441624,和平县,4,441600,114.94544881430497,24.44825276768894 +441625,东源县,4,441600,114.75350832520412,23.79425787311432 +441702,江城区,4,441700,111.96145451800717,21.868127886755477 +441704,阳东区,4,441700,112.01234990309973,21.87541671131781 +441721,阳西县,4,441700,111.62448107724893,21.758700627504624 +441781,阳春市,4,441700,111.79753613029754,22.176014807320136 +441802,清城区,4,441800,113.06947663536754,23.704022037924876 +441803,清新区,4,441800,112.9915577951189,23.75427033709297 +441821,佛冈县,4,441800,113.53844124873252,23.885475421110662 +441823,阳山县,4,441800,112.64751954084923,24.470943635879568 +441825,连山壮族瑶族自治县,4,441800,112.10042570408524,24.576845604092956 +441826,连南瑶族自治县,4,441800,112.29351728186617,24.731548581479572 +441881,英德市,4,441800,113.42144297474346,24.191939355216665 +441882,连州市,4,441800,112.38357258887281,24.78646685504731 +445102,湘桥区,4,445100,116.63446160819274,23.680686981566488 +445103,潮安区,4,445100,116.68452606068884,23.468357129830867 +445122,饶平县,4,445100,117.01044917588082,23.670347111195284 +445202,榕城区,4,445200,116.37351589492418,23.53074641796635 +445203,揭东区,4,445200,116.4184557839792,23.572485187047057 +445222,揭西县,4,445200,115.84856088727683,23.43729970820865 +445224,惠来县,4,445200,116.30144448456024,23.039645374524625 +445281,普宁市,4,445200,116.1724489811672,23.30363452186039 +445302,云城区,4,445300,112.05052923471945,22.93389780297112 +445303,云安区,4,445300,112.00956308991704,23.076892611910726 +445321,新兴县,4,445300,112.23149683218897,22.701890082605544 +445322,郁南县,4,445300,111.54155382446162,23.240174042652985 +445381,罗定市,4,445300,111.57648048166133,22.774296060762723 +450102,兴宁区,4,450100,108.37544497421953,22.86029095125464 +450103,青秀区,4,450100,108.5014386100909,22.792227439630846 +450105,江南区,4,450100,108.27949435764451,22.78704575358756 +450107,西乡塘区,4,450100,108.31957243762004,22.839651509338932 +450108,良庆区,4,450100,108.39987897391343,22.759847029612576 +450109,邕宁区,4,450100,108.49342024528094,22.764600449550194 +450110,武鸣区,4,450100,108.28151653317735,23.16451560691069 +450123,隆安县,4,450100,107.70257390338148,23.1715852498276 +450124,马山县,4,450100,108.18356215633243,23.713877725360007 +450125,上林县,4,450100,108.61145148077557,23.438518877662855 +450126,宾阳县,4,450100,108.81650237946799,23.223700543766824 +450181,横州市,4,450100,109.26756780639981,22.68557260883826 +450202,城中区,4,450200,109.41748215019682,24.32131406989099 +450203,鱼峰区,4,450200,109.44941628225213,24.318521699514562 +450204,柳南区,4,450200,109.39155193284601,24.341578870911754 +450205,柳北区,4,450200,109.40853179342056,24.367867017647864 +450206,柳江区,4,450200,109.33244423878395,24.260814965350463 +450222,柳城县,4,450200,109.25156152933667,24.65637039148558 +450223,鹿寨县,4,450200,109.7575544754718,24.478622266897954 +450224,融安县,4,450200,109.4045632593399,25.2305114471283 +450225,融水苗族自治县,4,450200,109.26256083114997,25.07207650410932 +450226,三江侗族自治县,4,450200,109.6145474722304,25.78883038778805 +450302,秀峰区,4,450300,110.27043670622179,25.279618485669605 +450303,叠彩区,4,450300,110.30846314624377,25.32023327484348 +450304,象山区,4,450300,110.2874226752738,25.26793001021147 +450305,七星区,4,450300,110.32453805384785,25.258567087500396 +450311,雁山区,4,450300,110.31547927159657,25.06621354391673 +450312,临桂区,4,450300,110.21858669186409,25.2443019992707 +450321,阳朔县,4,450300,110.50347503171274,24.7845191914325 +450323,灵川县,4,450300,110.33253719491991,25.41554953076031 +450324,全州县,4,450300,111.07956895507631,25.93434302736133 +450325,兴安县,4,450300,110.6785163280738,25.617567220036516 +450326,永福县,4,450300,109.98959083099726,24.98557797308376 +450327,灌阳县,4,450300,111.16755205093322,25.4951207520505 +450328,龙胜各族自治县,4,450300,110.01749399673898,25.804116784253843 +450329,资源县,4,450300,110.65843911010187,26.048569077338414 +450330,平乐县,4,450300,110.64944626347499,24.639632128059755 +450332,恭城瑶族自治县,4,450300,110.83455963070226,24.837194365911333 +450381,荔浦市,4,450300,110.4014367783597,24.494121641923368 +450403,万秀区,4,450400,111.32751969101128,23.478845767295883 +450405,长洲区,4,450400,111.2814991404281,23.49150958440631 +450406,龙圩区,4,450400,111.2534482932606,23.421414485718135 +450421,苍梧县,4,450400,111.55554663955536,23.845998205466344 +450422,藤县,4,450400,110.92149925487912,23.381009915550127 +450423,蒙山县,4,450400,110.53141700425248,24.20001744593537 +450481,岑溪市,4,450400,111.00143182658881,22.92462127871964 +450502,海城区,4,450500,109.12452136754654,21.481065838235963 +450503,银海区,4,450500,109.14654476440518,21.454768668894744 +450512,铁山港区,4,450500,109.42847264861612,21.535295042849512 +450521,合浦县,4,450500,109.21343861130296,21.66700573564183 +450602,港口区,4,450600,108.38648254384755,21.649565586624067 +450603,防城区,4,450600,108.36044848237981,21.775411305197203 +450621,上思县,4,450600,107.99044264125014,22.159914083110326 +450681,东兴市,4,450600,107.97748898597,21.553615433580305 +450702,钦南区,4,450700,108.66454861267236,21.945972440988985 +450703,钦北区,4,450700,108.63851257493252,22.020367050196267 +450721,灵山县,4,450700,109.29747796631128,22.42241332670075 +450722,浦北县,4,450700,109.56342292940231,22.27782232693711 +450802,港北区,4,450800,109.57843298565523,23.117563632763698 +450803,港南区,4,450800,109.60655345149974,23.081239578360368 +450804,覃塘区,4,450800,109.45942672936037,23.13325108921251 +450821,平南县,4,450800,110.39845197864268,23.545506098828316 +450881,桂平市,4,450800,110.08552599671751,23.40004888369942 +450902,玉州区,4,450900,110.15743140022326,22.634492736172014 +450903,福绵区,4,450900,110.08853765576929,22.56370541224873 +450921,容县,4,450900,110.56453016228923,22.863665599934787 +450922,陆川县,4,450900,110.27045619945135,22.32722152776934 +450923,博白县,4,450900,109.98255305648165,22.278674815493492 +450924,兴业县,4,450900,109.881551807009,22.742267653422893 +450981,北流市,4,450900,110.36057016580777,22.713958021611358 +451002,右江区,4,451000,106.6255891396861,23.907084503108653 +451003,田阳区,4,451000,106.92141255250411,23.74200572247847 +451022,田东县,4,451000,107.13249943540772,23.603129804014763 +451024,德保县,4,451000,106.62158260728236,23.328994351285857 +451026,那坡县,4,451000,105.83942261016988,23.39379383129231 +451027,凌云县,4,451000,106.56841567704747,24.354015240603566 +451028,乐业县,4,451000,106.56342972214655,24.783216467052593 +451029,田林县,4,451000,106.23449791231099,24.300534611050978 +451030,西林县,4,451000,105.10049410469409,24.495667790361946 +451031,隆林各族自治县,4,451000,105.35045947039562,24.776813610296077 +451081,靖西市,4,451000,106.42445269708266,23.140125669019067 +451082,平果市,4,451000,107.59657106849201,23.33492274259196 +451102,八步区,4,451100,111.55856737149277,24.41753104091857 +451103,平桂区,4,451100,111.47841426578044,24.462001422772527 +451121,昭平县,4,451100,110.81757491927796,24.17510605063606 +451122,钟山县,4,451100,111.3095857401549,24.53167310793877 +451123,富川瑶族自治县,4,451100,111.28451124863261,24.820159951323383 +451202,金城江区,4,451200,108.04350707482638,24.69567938223939 +451203,宜州区,4,451200,108.61785936346779,24.506710338420095 +451221,南丹县,4,451200,107.54748028933784,24.98184977548506 +451222,天峨县,4,451200,107.17845647579135,25.005664155231774 +451223,凤山县,4,451200,107.04841983631258,24.553217796777115 +451224,东兰县,4,451200,107.38050415950381,24.516871463380625 +451225,罗城仫佬族自治县,4,451200,108.91157445325456,24.783084996429107 +451226,环江毛南族自治县,4,451200,108.2644430691687,24.832087938550632 +451227,巴马瑶族自治县,4,451200,107.26648125302391,24.147264804270304 +451228,都安瑶族自治县,4,451200,108.11145804764794,23.9373312619231 +451229,大化瑶族自治县,4,451200,108.00441075294238,23.74281822296297 +451302,兴宾区,4,451300,109.24149907033942,23.733211038144013 +451321,忻城县,4,451300,108.67256239612422,24.071888636575988 +451322,象州县,4,451300,109.71146215027841,23.979680993270705 +451323,武宣县,4,451300,109.66944220328261,23.600404197633267 +451324,金秀瑶族自治县,4,451300,110.19550625891219,24.13631948648557 +451381,合山市,4,451300,108.8925657696864,23.812260071049884 +451402,江州区,4,451400,107.3595332173803,22.411245728018145 +451421,扶绥县,4,451400,107.91046515426495,22.64109713634538 +451422,宁明县,4,451400,107.0835238190199,22.145884844183623 +451423,龙州县,4,451400,106.86058190847446,22.348298905766136 +451424,大新县,4,451400,107.20755690311638,22.836229044405744 +451425,天等县,4,451400,107.1494726485215,23.087505812090356 +451481,凭祥市,4,451400,106.77352361813976,22.100152592954007 +460105,秀英区,4,460100,110.30043588820925,20.01364238516145 +460106,龙华区,4,460100,110.33554112854428,20.036320733520892 +460107,琼山区,4,460100,110.36052605900726,20.00915064449064 +460108,美兰区,4,460100,110.373498399042,20.034646217625145 +460202,海棠区,4,460200,109.74231364453345,18.38990415799685 +460203,吉阳区,4,460200,109.52055165827497,18.25705766726178 +460204,天涯区,4,460200,109.46246255283033,18.306919633503327 +460205,崖州区,4,460200,109.17839786930352,18.36345920201216 +460321,西沙群岛,4,460300,111.78649137422545,16.509800953233466 +460322,南沙群岛,4,460300,112.34048204137058,16.838953334409123 +460323,中沙群岛的岛礁及其海域,4,460300,112.34048204137058,16.838953334409123 +469001,五指山市,4,469000,110.35553651088428,20.025801964462914 +469002,琼海市,4,469000,110.4899334354765,19.247978472596312 +469005,文昌市,4,469000,110.76042616004085,19.619303118384774 +469006,万宁市,4,469000,110.35553651088428,20.025801964462914 +469007,东方市,4,469000,108.64868831025453,19.10469043386384 +469021,定安县,4,469000,110.35553651088428,20.025801964462914 +469022,屯昌县,4,469000,110.35553651088428,20.025801964462914 +469023,澄迈县,4,469000,110.35553651088428,20.025801964462914 +469024,临高县,4,469000,110.35553651088428,20.025801964462914 +469025,白沙黎族自治县,4,469000,110.35553651088428,20.025801964462914 +469026,昌江黎族自治县,4,469000,109.06216791601689,19.30410091265651 +469027,乐东黎族自治县,4,469000,110.35553651088428,20.025801964462914 +469028,陵水黎族自治县,4,469000,110.35553651088428,20.025801964462914 +469029,保亭黎族苗族自治县,4,469000,109.58323604555439,19.409900835650884 +469030,琼中黎族苗族自治县,4,469000,109.58323604555439,19.409900835650884 +500101,万州区,4,500100,108.41555837050288,30.813621636707666 +500102,涪陵区,4,500100,107.39641979754104,29.70927819797873 +500103,渝中区,4,500100,106.57544006681098,29.559090182993803 +500104,大渡口区,4,500100,106.48853359010742,29.490107128556012 +500105,江北区,4,500100,106.5804150623847,29.612832314080265 +500106,沙坪坝区,4,500100,106.46446511092543,29.547192516541124 +500107,九龙坡区,4,500100,106.51755873943073,29.50792771555286 +500108,南岸区,4,500100,106.66842977859555,29.50268309883491 +500109,北碚区,4,500100,106.40228116964546,29.811156512938553 +500110,綦江区,4,500100,106.65748419545173,29.034113748311206 +500111,大足区,4,500100,105.72840462545042,29.713113506076837 +500112,渝北区,4,500100,106.6375590606026,29.723927343006626 +500113,巴南区,4,500100,106.54745425696237,29.408474739770405 +500114,黔江区,4,500100,108.77759119834955,29.53881256766016 +500115,长寿区,4,500100,107.08753107006804,29.863520067323154 +500116,江津区,4,500100,106.26559760837834,29.295884374464997 +500117,合川区,4,500100,106.28254108757974,29.978181239534244 +500118,永川区,4,500100,105.93349936145171,29.362046335949085 +500119,南川区,4,500100,107.10558512437106,29.16347859960621 +500120,璧山区,4,500100,106.23347456267436,29.598346607316348 +500151,铜梁区,4,500100,106.0634494941099,29.850508778722265 +500152,潼南区,4,500100,105.84739903616547,30.19731423966403 +500153,荣昌区,4,500100,105.60141979927967,29.41130739668994 +500154,开州区,4,500100,108.39949765612053,31.16664411319345 +500155,梁平区,4,500100,107.77609725763075,30.66055325502347 +500156,武隆区,4,500100,107.76642518951796,29.33202687074895 +500229,城口县,4,500100,108.67161164255864,31.953390746292587 +500230,丰都县,4,500100,107.73748061819887,29.86941278921405 +500231,垫江县,4,500100,107.33956587471806,30.333293968500094 +500233,忠县,4,500100,108.04453753385525,30.305268389356584 +500235,云阳县,4,500100,108.70344750000172,30.93661127197471 +500236,奉节县,4,500100,109.47047275630993,31.024601766549154 +500237,巫山县,4,500100,109.8855455070308,31.080518811735914 +500238,巫溪县,4,500100,109.57640255899645,31.404880009858267 +500240,石柱土家族自治县,4,500100,108.12041416638326,30.006108697868918 +500241,秀山土家族苗族自治县,4,500100,109.01357389980959,28.45344786428608 +500242,酉阳土家族苗族自治县,4,500100,108.77458600709745,28.8470402586741 +500243,彭水苗族土家族自治县,4,500100,108.17257803588225,29.29946229044254 +510104,锦江区,4,510100,104.08956175659785,30.661904490317255 +510105,青羊区,4,510100,104.06744547494219,30.680037807006812 +510106,金牛区,4,510100,104.05740358713781,30.697356042874134 +510107,武侯区,4,510100,104.04942447827598,30.648712685321083 +510108,成华区,4,510100,104.10859155035178,30.665589283983017 +510112,龙泉驿区,4,510100,104.28139696435632,30.56269784099964 +510113,青白江区,4,510100,104.25751245813483,30.884421372736316 +510114,新都区,4,510100,104.1653928450365,30.82940746819094 +510115,温江区,4,510100,103.86357306318057,30.68848683662664 +510116,双流区,4,510100,103.93039154226817,30.580399352821136 +510117,郫都区,4,510100,103.90544568808663,30.79953765357336 +510118,新津区,4,510100,103.81743303794937,30.416363953297463 +510121,金堂县,4,510100,104.41844263261966,30.868358423946407 +510129,大邑县,4,510100,103.52752981766662,30.59315540240197 +510131,蒲江县,4,510100,103.51257132414501,30.202500428139256 +510181,都江堰市,4,510100,103.65353360443186,30.994256893542204 +510182,彭州市,4,510100,103.96556137078096,30.995564002628758 +510183,邛崃市,4,510100,103.47048112964444,30.41639860085413 +510184,崇州市,4,510100,103.67943336923445,30.63659589137926 +510185,简阳市,4,510100,104.55349406265084,30.41745149135266 +510302,自流井区,4,510300,104.78344732590438,29.343498562347857 +510303,贡井区,4,510300,104.72155659154275,29.35147626952156 +510304,大安区,4,510300,104.78041635328415,29.369928541322043 +510311,沿滩区,4,510300,104.8804090751611,29.278797205251124 +510321,荣县,4,510300,104.42387467445577,29.450986724011596 +510322,富顺县,4,510300,104.98149440602947,29.186886257830583 +510402,东区,4,510400,101.71059687062481,26.552106477635352 +510403,西区,4,510400,101.63741344787044,26.603867626836042 +510411,仁和区,4,510400,101.7444499629099,26.504019493295285 +510421,米易县,4,510400,102.1175384292266,26.902517448404254 +510422,盐边县,4,510400,101.86049854831414,26.688767481963932 +510502,江阳区,4,510500,105.44157316095377,28.884498343782106 +510503,纳溪区,4,510500,105.37800502071394,28.779001444761114 +510504,龙马潭区,4,510500,105.44459416238283,28.91908396336834 +510521,泸县,4,510500,105.38830966287658,29.157827612736778 +510522,合江县,4,510500,105.8373682752998,28.818006422269857 +510524,叙永县,4,510500,105.45117496888565,28.161785996115697 +510525,古蔺县,4,510500,105.81914219549165,28.044757961922556 +510603,旌阳区,4,510600,104.42343882820505,31.148596291553144 +510604,罗江区,4,510600,104.51741416082588,31.324178639826055 +510623,中江县,4,510600,104.6855301505767,31.038953695301622 +510681,广汉市,4,510600,104.28842189310545,30.9824152397429 +510682,什邡市,4,510600,104.17442710355034,31.13288904823836 +510683,绵竹市,4,510600,104.22760930499648,31.343592258210748 +510703,涪城区,4,510700,104.7634203349053,31.46131438857991 +510704,游仙区,4,510700,104.77242899171212,31.479904474057665 +510705,安州区,4,510700,104.57355502129967,31.540750527876018 +510722,三台县,4,510700,105.10148979832758,31.101585571237983 +510723,盐亭县,4,510700,105.39550321547124,31.214318764837078 +510725,梓潼县,4,510700,105.17756684281485,31.648313467681294 +510726,北川羌族自治县,4,510700,104.36158555316277,31.963084103414715 +510727,平武县,4,510700,104.53542150324834,32.41468197769553 +510781,江油市,4,510700,104.75241160088052,31.784128193388135 +510802,利州区,4,510800,105.85242622329098,32.440207812726065 +510811,昭化区,4,510800,105.9694189278245,32.32961849015881 +510812,朝天区,4,510800,105.89658880860304,32.64972624030801 +510821,旺苍县,4,510800,106.29649124536307,32.23509738307936 +510822,青川县,4,510800,105.24540705458948,32.58161685729994 +510823,剑阁县,4,510800,105.53157601886727,32.29347851677268 +510824,苍溪县,4,510800,105.94148261460028,31.73868440061661 +510903,船山区,4,510900,105.57452283750214,30.531470607828908 +510904,安居区,4,510900,105.46246730988199,30.3614964697459 +510921,蓬溪县,4,510900,105.71344605411188,30.76375144179148 +510923,大英县,4,510900,105.24340392313277,30.600810129920717 +510981,射洪市,4,510900,105.39450950991609,30.877138522336935 +511002,市中区,4,511000,105.07457421785665,29.592710148735634 +511011,东兴区,4,511000,105.08254748773004,29.59848572858322 +511024,威远县,4,511000,104.67449822860426,29.533634931412458 +511025,资中县,4,511000,104.85849482242187,29.770234032564836 +511071,内江经济开发区,4,511000,105.06458802499718,29.58588653832045 +511083,隆昌市,4,511000,105.29429094213069,29.345238365347296 +511102,市中区,4,511100,103.76755865551674,29.561363941632962 +511111,沙湾区,4,511100,103.55643566073162,29.419272499245103 +511112,五通桥区,4,511100,103.82445508073617,29.413185014439133 +511113,金口河区,4,511100,103.08509799370174,29.250801285423922 +511123,犍为县,4,511100,103.95550653594924,29.214219463759488 +511124,井研县,4,511100,104.07651071352818,29.65730305907957 +511126,夹江县,4,511100,103.57841009994,29.743846302985492 +511129,沐川县,4,511100,103.90846703742643,28.962888278215505 +511132,峨边彝族自治县,4,511100,103.26857725337631,29.236089109562577 +511133,马边彝族自治县,4,511100,103.55245419105162,28.841736014812202 +511181,峨眉山市,4,511100,103.49154557410374,29.60697552746157 +511302,顺庆区,4,511300,106.09841065837705,30.802753098595275 +511303,高坪区,4,511300,106.12554047291444,30.787254931591587 +511304,嘉陵区,4,511300,106.078432972649,30.76489556013861 +511321,南部县,4,511300,106.04357826970909,31.353705301525753 +511322,营山县,4,511300,106.57240802851658,31.083002970198866 +511323,蓬安县,4,511300,106.41848194209304,31.034630778270895 +511324,仪陇县,4,511300,106.30943016843716,31.277597359981243 +511325,西充县,4,511300,105.90761137653269,31.000688020791618 +511381,阆中市,4,511300,106.01156526641945,31.564074553640427 +511402,东坡区,4,511400,103.83852480217091,30.04827213443505 +511403,彭山区,4,511400,103.87955823006952,30.198854416859795 +511421,仁寿县,4,511400,104.14047690442844,30.001663984300848 +511423,洪雅县,4,511400,103.37960224487875,29.91061583746853 +511424,丹棱县,4,511400,103.51958331729479,30.020362794871584 +511425,青神县,4,511400,103.85355883179157,29.837054743717477 +511502,翠屏区,4,511500,104.6264379855308,28.77205177302718 +511503,南溪区,4,511500,104.97651330197829,28.8515036480266 +511504,叙州区,4,511500,104.53944275624289,28.69624639475244 +511523,江安县,4,511500,105.07359488518999,28.72960972185531 +511524,长宁县,4,511500,104.92756445509465,28.588133452698838 +511525,高县,4,511500,104.52441132031883,28.44251080410157 +511526,珙县,4,511500,104.71557459549268,28.44431976524751 +511527,筠连县,4,511500,104.5174064237849,28.170174457647605 +511528,兴文县,4,511500,105.24240230063606,28.309904884116502 +511529,屏山县,4,511500,104.35267533908066,28.83427496647727 +511602,广安区,4,511600,106.64853115607652,30.479768100141722 +511603,前锋区,4,511600,106.90447959587928,30.506435157767033 +511621,岳池县,4,511600,106.44641061972047,30.544119864579894 +511622,武胜县,4,511600,106.3024617431046,30.35549566037789 +511623,邻水县,4,511600,106.93640258895681,30.34107251833194 +511681,华蓥市,4,511600,106.7894618160094,30.396307084289287 +511702,通川区,4,511700,107.51144711201394,31.22093180410479 +511703,达川区,4,511700,107.51841059666617,31.20239336055401 +511722,宣汉县,4,511700,107.73353356629586,31.35975482366174 +511723,开江县,4,511700,107.87542487414112,31.089372149065603 +511724,大竹县,4,511700,107.21157970735341,30.74207661790974 +511725,渠县,4,511700,106.97958296702429,30.84229928348102 +511771,达州经济开发区,4,511700,107.50353699301529,31.142384580155753 +511781,万源市,4,511700,108.04154069684341,32.08742084778871 +511802,雨城区,4,511800,103.0395752053269,30.011061644393436 +511803,名山区,4,511800,103.11548579380317,30.075913663381538 +511822,荥经县,4,511800,102.85343551292941,29.799193512656352 +511823,汉源县,4,511800,102.65857589024432,29.350217385987463 +511824,石棉县,4,511800,102.36640453847592,29.234304877589505 +511825,天全县,4,511800,102.76453022767083,30.072472953275035 +511826,芦山县,4,511800,102.93452771831228,30.14987318956309 +511827,宝兴县,4,511800,102.82148423429224,30.37408211244484 +511902,巴州区,4,511900,106.77551310771157,31.857685602645372 +511903,恩阳区,4,511900,106.6355819024891,31.80261404417579 +511921,通江县,4,511900,107.25151684320765,31.9177143468814 +511922,南江县,4,511900,106.83448345088068,32.35253165416549 +511923,平昌县,4,511900,107.11059310022719,31.56618581009506 +511971,巴中经济开发区,4,511900,106.7515853031645,31.872888585956545 +512002,雁江区,4,512000,104.68307571043178,30.11336313878708 +512021,安岳县,4,512000,105.34245423273225,30.103392734493756 +512022,乐至县,4,512000,105.02747697007167,30.28234834600031 +513201,马尔康市,4,513200,102.21350208208408,31.911747955647705 +513221,汶川县,4,513200,103.5965178842219,31.48300532046848 +513222,理县,4,513200,103.17351138906746,31.442550437563135 +513223,茂县,4,513200,103.85958979688823,31.686809397063193 +513224,松潘县,4,513200,103.61057968918345,32.66179655985326 +513225,九寨沟县,4,513200,104.24954673402509,33.257591509496066 +513226,金川县,4,513200,102.0706104212229,31.482005950337257 +513227,小金县,4,513200,102.369426359284,31.002208697061754 +513228,黑水县,4,513200,102.99651735613097,32.067805449367526 +513230,壤塘县,4,513200,100.98558348726313,32.271093316268534 +513231,阿坝县,4,513200,101.71360970816114,32.9082209186247 +513232,若尔盖县,4,513200,102.97439065413141,33.584376654702446 +513233,红原县,4,513200,102.55061520946042,32.7966052787623 +513301,康定市,4,513300,101.96355522139348,30.004407384261924 +513322,泸定县,4,513300,102.24143209630797,29.92040166495139 +513323,丹巴县,4,513300,101.89643706758775,30.88476979933027 +513324,九龙县,4,513300,101.5134156671805,29.006431902924817 +513325,雅江县,4,513300,101.02050035294431,30.037568967863947 +513326,道孚县,4,513300,101.13154034618545,30.985326277401796 +513327,炉霍县,4,513300,100.68239693357377,31.397991882881524 +513328,甘孜县,4,513300,99.99921035085072,31.628956694034013 +513329,新龙县,4,513300,100.31839824092819,30.94546952526588 +513330,德格县,4,513300,98.5874016113543,31.812106494712996 +513331,白玉县,4,513300,98.8311002182397,31.21531444878755 +513332,石渠县,4,513300,98.10948062240828,32.98400342047804 +513333,色达县,4,513300,100.33941364918138,32.27433041322677 +513334,理塘县,4,513300,100.27557457997872,30.000030621750792 +513335,巴塘县,4,513300,99.11672669581999,30.01166170737641 +513336,乡城县,4,513300,99.80505957092221,28.936733475223633 +513337,稻城县,4,513300,100.30446155970226,29.04312155812638 +513338,得荣县,4,513300,99.29298419818103,28.718780051460737 +513401,西昌市,4,513400,102.27148382916775,27.900580896263623 +513402,会理市,4,513400,102.25143634510819,26.661199778427346 +513422,木里藏族自治县,4,513400,101.28639697674048,27.934598559239884 +513423,盐源县,4,513400,101.5154291291499,27.4281548677411 +513424,德昌县,4,513400,102.18259551084873,27.408504192993636 +513426,会东县,4,513400,102.58446218230412,26.640823775829343 +513427,宁南县,4,513400,102.75809340850662,27.067256035480593 +513428,普格县,4,513400,102.5465967186295,27.38199621380657 +513429,布拖县,4,513400,102.81847849300347,27.712128733800274 +513430,金阳县,4,513400,103.25454895521494,27.702144511749296 +513431,昭觉县,4,513400,102.84942278221764,28.02050626800562 +513432,喜德县,4,513400,102.41956715684437,28.312709832521158 +513433,冕宁县,4,513400,102.18357457402372,28.55529444536005 +513434,越西县,4,513400,102.51447448140046,28.645827564326137 +513435,甘洛县,4,513400,102.77859651312069,28.96482319050036 +513436,美姑县,4,513400,103.13858579866466,28.33401962389037 +513437,雷波县,4,513400,103.57842869486406,28.268950617624277 +520102,南明区,4,520100,106.72052763544337,26.574336181539334 +520103,云岩区,4,520100,106.73053475882122,26.61038107642634 +520111,花溪区,4,520100,106.67644077730033,26.415879456429906 +520112,乌当区,4,520100,106.7575580343162,26.636529135598032 +520113,白云区,4,520100,106.62959683988699,26.68358849912381 +520115,观山湖区,4,520100,106.60477908407937,26.622071267910325 +520121,开阳县,4,520100,106.97155955927653,27.06367357395087 +520122,息烽县,4,520100,106.74756178043502,27.096475267062225 +520123,修文县,4,520100,106.59849220313932,26.844862447593908 +520181,清镇市,4,520100,106.47752261032251,26.56198789847887 +520201,钟山区,4,520200,104.85052981695918,26.580704079622272 +520203,六枝特区,4,520200,105.48342934685516,26.21921429063836 +520204,水城区,4,520200,104.96456610819116,26.553719763691845 +520281,盘州市,4,520200,104.47858183931757,25.715651258076416 +520302,红花岗区,4,520300,106.90049658667778,27.65087026073177 +520303,汇川区,4,520300,106.94045752761485,27.756343380086907 +520304,播州区,4,520300,106.83650354793187,27.542500878000244 +520322,桐梓县,4,520300,106.83248902060909,28.139468384162452 +520323,绥阳县,4,520300,107.19749228818591,27.953080005876046 +520324,正安县,4,520300,107.46057489060091,28.559091728779737 +520325,道真仡佬族苗族自治县,4,520300,107.61948378780525,28.868649814380205 +520326,务川仡佬族苗族自治县,4,520300,107.90545629257353,28.569077110561935 +520327,凤冈县,4,520300,107.72354763025206,27.960695338964733 +520328,湄潭县,4,520300,107.47259853018687,27.754498364959613 +520329,余庆县,4,520300,107.91146020727803,27.221379027996527 +520330,习水县,4,520300,106.20342803998653,28.339117886481347 +520381,赤水市,4,520300,105.70348859502005,28.596118908732613 +520382,仁怀市,4,520300,106.4075265551776,27.797752158542853 +520402,西秀区,4,520400,105.97240632053426,26.251497663244066 +520403,平坝区,4,520400,106.26358378708674,26.411186471257356 +520422,普定县,4,520400,105.74848570613602,26.308233451347096 +520423,镇宁布依族苗族自治县,4,520400,105.77658344485114,26.063829083031695 +520424,关岭布依族苗族自治县,4,520400,105.62547597167618,25.949877045969167 +520425,紫云苗族布依族自治县,4,520400,106.09041375093291,25.75740872895845 +520502,七星关区,4,520500,105.31158071810607,27.3040952234272 +520521,大方县,4,520500,105.61845131242103,27.147060750626153 +520523,金沙县,4,520500,106.22644163900851,27.465354872613517 +520524,织金县,4,520500,105.77758954702198,26.669221885658793 +520525,纳雍县,4,520500,105.38948662275538,26.78371722913166 +520526,威宁彝族回族苗族自治县,4,520500,104.25948063397878,26.879247190553315 +520527,赫章县,4,520500,104.710322921822,27.118776098434942 +520581,黔西市,4,520500,106.03857397725803,27.014344747084042 +520602,碧江区,4,520600,109.27083368591082,27.82091959949515 +520603,万山区,4,520600,109.1603115658327,27.677051194280583 +520621,江口县,4,520600,108.84540005923948,27.70592169504263 +520622,玉屏侗族自治县,4,520600,108.91257750118668,27.241523186548513 +520623,石阡县,4,520600,108.23046385479006,27.51972205975809 +520624,思南县,4,520600,108.25941731933368,27.944547877976884 +520625,印江土家族苗族自治县,4,520600,108.41659167842938,27.99982325199269 +520626,德江县,4,520600,108.126411061501,28.27042327849442 +520627,沿河土家族自治县,4,520600,108.5104775397904,28.570101680094822 +520628,松桃苗族自治县,4,520600,109.20940351278404,28.16042017901075 +522301,兴义市,4,522300,104.9024609483044,25.09811331029694 +522302,兴仁市,4,522300,105.19256772451989,25.44089875357608 +522323,普安县,4,522300,104.95954583801976,25.789951769128603 +522324,晴隆县,4,522300,105.22548361466674,25.841047900453187 +522325,贞丰县,4,522300,105.65655958807493,25.39212396534147 +522326,望谟县,4,522300,106.10644455173647,25.18435492391975 +522327,册亨县,4,522300,105.8181439984093,24.989631435366643 +522328,安龙县,4,522300,105.44954274777457,25.10399043123158 +522601,凯里市,4,522600,107.98746889069089,26.573079425675388 +522622,黄平县,4,522600,107.92354780621629,26.911288643100754 +522623,施秉县,4,522600,108.13043978205083,27.03982205173296 +522624,三穗县,4,522600,108.68154500206829,26.95866646524615 +522625,镇远县,4,522600,108.43658077263082,27.054820913900503 +522626,岑巩县,4,522600,108.82248096195714,27.17990241739444 +522627,天柱县,4,522600,109.21444570160986,26.915804084011683 +522628,锦屏县,4,522600,109.2074384694816,26.682631631864552 +522629,剑河县,4,522600,108.44751710322788,26.73404755888132 +522630,台江县,4,522600,108.32855163000316,26.672372539642534 +522631,黎平县,4,522600,109.14356697147115,26.236874050191798 +522632,榕江县,4,522600,108.5275536987156,25.937725373250203 +522633,从江县,4,522600,108.91156142782468,25.75988132789156 +522634,雷山县,4,522600,108.08452891457038,26.384205121689497 +522635,麻江县,4,522600,107.59555140190797,26.496807595584382 +522636,丹寨县,4,522600,107.7955134897186,26.20442116986921 +522701,都匀市,4,522700,107.52540443143744,26.266117957788534 +522702,福泉市,4,522700,107.52643281158493,26.69252570078387 +522722,荔波县,4,522700,107.89340938687485,25.41709756627289 +522723,贵定县,4,522700,107.2405543594035,26.590659655038948 +522725,瓮安县,4,522700,107.47755223592003,27.084125602602416 +522726,独山县,4,522700,107.5514977810688,25.828287807074048 +522727,平塘县,4,522700,107.32956664388286,25.828201706901762 +522728,罗甸县,4,522700,106.75854805681841,25.4308376829725 +522729,长顺县,4,522700,106.45842122162574,26.02845454571356 +522730,龙里县,4,522700,106.98658596468972,26.459080630641683 +522731,惠水县,4,522700,106.6634526270886,26.138209889396155 +522732,三都水族自治县,4,522700,107.87642925680865,25.989479499372695 +530102,五华区,4,530100,102.71342328059617,25.04983496198145 +530103,盘龙区,4,530100,102.75852621210119,25.122372279829598 +530111,官渡区,4,530100,102.7504817066009,25.02119642385923 +530112,西山区,4,530100,102.67155712350362,25.043198760946844 +530113,东川区,4,530100,103.19445186746451,26.08905423762305 +530114,呈贡区,4,530100,102.82747259725804,24.89187121094651 +530115,晋宁区,4,530100,102.60241805181495,24.676098812517463 +530124,富民县,4,530100,102.50447319700842,25.228085092194785 +530125,宜良县,4,530100,103.14755798426482,24.925286989651802 +530126,石林彝族自治县,4,530100,103.2965081767583,24.77770196131961 +530127,嵩明县,4,530100,103.04356394015612,25.344409459134855 +530128,禄劝彝族苗族自治县,4,530100,102.47742324183979,25.5576718002404 +530129,寻甸回族彝族自治县,4,530100,103.26357387134848,25.563893580433085 +530181,安宁市,4,530100,102.48440918412749,24.92560172634403 +530302,麒麟区,4,530300,103.81143036949021,25.502101828436917 +530303,沾益区,4,530300,103.82848532840536,25.606630798868494 +530304,马龙区,4,530300,103.58544688631953,25.43396637481632 +530322,陆良县,4,530300,103.67343249743186,25.03563947043886 +530323,师宗县,4,530300,103.99155634452771,24.82799496950119 +530324,罗平县,4,530300,104.31551019438137,24.89051972489473 +530325,富源县,4,530300,104.2614742433964,25.68027950213305 +530326,会泽县,4,530300,103.3034872919241,26.424215045560672 +530381,宣威市,4,530300,104.11157606909859,26.225598378323756 +530402,红塔区,4,530400,102.55156461758968,24.359801443672627 +530403,江川区,4,530400,102.7605270079629,24.29343870098364 +530423,通海县,4,530400,102.73242289127867,24.117891201573585 +530424,华宁县,4,530400,102.9354918585251,24.19858102716324 +530425,易门县,4,530400,102.16953549619623,24.677404477592024 +530426,峨山彝族自治县,4,530400,102.4125645060742,24.174774239092528 +530427,新平彝族傣族自治县,4,530400,101.9964277126142,24.07626270527773 +530428,元江哈尼族彝族傣族自治县,4,530400,102.00441463673134,23.603000905474538 +530481,澄江市,4,530400,102.91455487234985,24.67941490881611 +530502,隆阳区,4,530500,99.17207083928912,25.126888322190116 +530521,施甸县,4,530500,99.19546936222197,24.728835000146223 +530523,龙陵县,4,530500,98.6957499122748,24.592546947017 +530524,昌宁县,4,530500,99.61161657602588,24.833984919852785 +530581,腾冲市,4,530500,98.49759503548854,25.026616860345513 +530602,昭阳区,4,530600,103.71347042315112,27.32614420605265 +530621,鲁甸县,4,530600,103.56441216450484,27.193107219132514 +530622,巧家县,4,530600,102.93651934036706,26.914705038576646 +530623,盐津县,4,530600,104.24157884245965,28.114384038516498 +530624,大关县,4,530600,103.89751489665241,27.754021401911025 +530625,永善县,4,530600,103.6445690431003,28.234722481383123 +530626,绥江县,4,530600,103.96455238260118,28.604277931727403 +530627,镇雄县,4,530600,104.88040422431135,27.447794634649174 +530628,彝良县,4,530600,104.0544430302079,27.63169016554663 +530629,威信县,4,530600,105.05557676310737,27.85253746404035 +530681,水富市,4,530600,104.42243298394331,28.636106975261676 +530702,古城区,4,530700,100.2324803392115,26.883161684001312 +530721,玉龙纳西族自治县,4,530700,100.24352734104735,26.827391803624646 +530722,永胜县,4,530700,100.75758141133471,26.68995024541884 +530723,华坪县,4,530700,101.27243012267594,26.635223014622333 +530724,宁蒗彝族自治县,4,530700,100.85859038623477,27.287727826051697 +530802,思茅区,4,530800,100.98355510297533,22.79249798435956 +530821,宁洱哈尼族彝族自治县,4,530800,101.05244246946019,23.054590179481025 +530822,墨江哈尼族自治县,4,530800,101.6985835615522,23.43772577225623 +530823,景东彝族自治县,4,530800,100.83848864452241,24.451863775494918 +530824,景谷傣族彝族自治县,4,530800,100.70945658009512,23.503204071241473 +530825,镇沅彝族哈尼族拉祜族自治县,4,530800,101.11556882305037,24.010330833613203 +530826,江城哈尼族彝族自治县,4,530800,101.86847918429268,22.59168385943026 +530827,孟连傣族拉祜族佤族自治县,4,530800,99.59096282557785,22.33530761555575 +530828,澜沧拉祜族自治县,4,530800,99.93858828323933,22.561831918086543 +530829,西盟佤族自治县,4,530800,99.59662215028884,22.650656010974465 +530902,临翔区,4,530900,100.08844253039773,23.901401938645204 +530921,凤庆县,4,530900,99.93498922221478,24.586472458273995 +530922,云县,4,530900,100.12953102441054,24.442807275329113 +530923,永德县,4,530900,99.26507564260625,24.024871282776907 +530924,镇康县,4,530900,98.8318712241234,23.76831548009615 +530925,双江拉祜族佤族布朗族傣族自治县,4,530900,99.83413098297927,23.47983650461355 +530926,耿马傣族佤族自治县,4,530900,99.40394217609244,23.543490995100633 +530927,沧源佤族自治县,4,530900,99.25272169608435,23.152878733913262 +532301,楚雄市,4,532300,101.55247228396097,25.03886038832341 +532302,禄丰市,4,532300,102.0855313547639,25.155830804806403 +532322,双柏县,4,532300,101.64840700052847,24.694898530382282 +532323,牟定县,4,532300,101.5534809912178,25.318845903713523 +532324,南华县,4,532300,101.28042055018456,25.19858707115555 +532325,姚安县,4,532300,101.2485272011994,25.509775443472748 +532326,大姚县,4,532300,101.33056746712646,25.727600600572302 +532327,永仁县,4,532300,101.6728172849569,26.055544738018423 +532328,元谋县,4,532300,101.8804452424955,25.710895319939038 +532329,武定县,4,532300,102.4105318203669,25.536089587806806 +532501,个旧市,4,532500,103.1665186084882,23.364941534583274 +532502,开远市,4,532500,103.27355323708609,23.71990779691196 +532503,蒙自市,4,532500,103.37154588174573,23.402079885197992 +532504,弥勒市,4,532500,103.42148906299802,24.41798222535674 +532523,屏边苗族自治县,4,532500,103.69343183231612,22.989989585512753 +532524,建水县,4,532500,102.8334395916061,23.640938563461493 +532525,石屏县,4,532500,102.50244661977858,23.712004452448983 +532527,泸西县,4,532500,103.772523140916,24.53803716745029 +532528,元阳县,4,532500,102.84143280386179,23.22619805192609 +532529,红河县,4,532500,102.42755057757,23.37448873836479 +532530,金平苗族瑶族傣族自治县,4,532500,103.23246860578698,22.785560606183154 +532531,绿春县,4,532500,102.39849398755386,23.000164936586465 +532532,河口瑶族自治县,4,532500,103.94544362779924,22.535465602947458 +532601,文山市,4,532600,104.23854382746465,23.391944131908 +532622,砚山县,4,532600,104.34355089069662,23.611486576699626 +532623,西畴县,4,532600,104.6785254220347,23.443271275282765 +532624,麻栗坡县,4,532600,104.70954948077816,23.13158558355966 +532625,马关县,4,532600,104.4004149769177,23.01899357716598 +532626,丘北县,4,532600,104.17344174073646,24.056993896217723 +532627,广南县,4,532600,105.06158238459233,24.05219851092113 +532628,富宁县,4,532600,105.63749017905431,23.631380409520464 +532801,景洪市,4,532800,100.80644312258391,22.01700442311881 +532822,勐海县,4,532800,100.45944593979591,21.96343359668147 +532823,勐腊县,4,532800,101.57152830822949,21.465280880861858 +532901,大理市,4,532900,100.30807238852897,25.68461354603664 +532922,漾濞彝族自治县,4,532900,99.96441375816771,25.676295762972003 +532923,祥云县,4,532900,100.55744657937458,25.489872506241518 +532924,宾川县,4,532900,100.57845668761831,25.83524902819825 +532925,弥渡县,4,532900,100.49758601546485,25.349336028746187 +532926,南涧彝族自治县,4,532900,100.51554862226698,25.049426762093695 +532927,巍山彝族回族自治县,4,532900,100.31346033514549,25.23343872979941 +532928,永平县,4,532900,99.54749489993098,25.470206483299727 +532929,云龙县,4,532900,99.37741602286651,25.891945073901653 +532930,洱源县,4,532900,99.96920972145332,26.12009334188815 +532931,剑川县,4,532900,99.91209123511192,26.542516534180685 +532932,鹤庆县,4,532900,100.18249206302262,26.566197313344603 +533102,瑞丽市,4,533100,97.8624855842082,24.02281689310535 +533103,芒市,4,533100,98.5945541796593,24.43942669860196 +533122,梁河县,4,533100,98.3031336316359,24.81078445825741 +533123,盈江县,4,533100,97.94993481710071,24.69745454196624 +533124,陇川县,4,533100,97.79853036412425,24.189467890548563 +533301,泸水市,4,533300,98.86458616332774,25.829026769971726 +533323,福贡县,4,533300,98.87564942449333,26.908055208498066 +533324,贡山独龙族怒族自治县,4,533300,98.6723994486867,27.74706787527189 +533325,兰坪白族普米族自治县,4,533300,99.42328466998799,26.459207904687954 +533401,香格里拉市,4,533400,99.70744457389884,27.835760125320558 +533422,德钦县,4,533400,98.92445265605383,28.470086006822044 +533423,维西傈僳族自治县,4,533400,99.29346568993421,27.18317020402177 +540102,城关区,4,540100,91.14510035237143,29.65833125291544 +540103,堆龙德庆区,4,540100,91.00996313420868,29.651625675009356 +540104,达孜区,4,540100,91.3563181183878,29.675409063815298 +540121,林周县,4,540100,91.26950057392972,29.898733205887016 +540122,当雄县,4,540100,91.1074517468307,30.47922172694214 +540123,尼木县,4,540100,90.17118006624334,29.437518981254573 +540124,曲水县,4,540100,90.74995866545315,29.35898705833658 +540127,墨竹工卡县,4,540100,91.73726639859201,29.839752605055274 +540171,格尔木藏青工业园区,4,540100,95.10401466750308,36.345319917201465 +540172,拉萨经济技术开发区,4,540100,91.17845425628477,29.65948787983075 +540173,西藏文化旅游创意园区,4,540100,91.14172999992964,29.622843014443266 +540174,达孜工业园区,4,540100,91.3563181183878,29.675409063815298 +540202,桑珠孜区,4,540200,88.90295171886154,29.25558281419752 +540221,南木林县,4,540200,89.1057042130769,29.68793803655162 +540222,江孜县,4,540200,89.61201219495427,28.9176346842389 +540223,定日县,4,540200,87.1295977393142,28.66395198328889 +540224,萨迦县,4,540200,88.02826948815172,28.904931512620273 +540225,拉孜县,4,540200,87.64364731807402,29.08750967999499 +540226,昂仁县,4,540200,87.24242733675504,29.30106048401354 +540227,谢通门县,4,540200,88.26820679995701,29.438142414131967 +540228,白朗县,4,540200,89.26874199189538,29.1118589519179 +540229,仁布县,4,540200,89.8486249678988,29.236788327037022 +540230,康马县,4,540200,89.68824491576126,28.561443952501328 +540231,定结县,4,540200,87.7723767433751,28.36991076939328 +540232,仲巴县,4,540200,84.0381168769166,29.775982232026415 +540233,亚东县,4,540200,88.91344078314533,27.491108780091498 +540234,吉隆县,4,540200,85.30407376898663,28.85850166495536 +540235,聂拉木县,4,540200,85.98877040304578,28.16083936054344 +540236,萨嘎县,4,540200,85.23982570130651,29.334659688784015 +540237,岗巴县,4,540200,88.52652928147621,28.28036304225986 +540302,卡若区,4,540300,97.18665433641611,31.144248893946763 +540321,江达县,4,540300,98.22459452096771,31.50520701797964 +540322,贡觉县,4,540300,98.27733412728907,30.86596695841197 +540323,类乌齐县,4,540300,96.6067171923989,31.217793112280912 +540324,丁青县,4,540300,95.60264384421787,31.41840296461374 +540325,察雅县,4,540300,97.57512367962845,30.659864699370576 +540326,八宿县,4,540300,96.92436044615198,30.05902899139862 +540327,左贡县,4,540300,97.84736683298861,29.676848537197444 +540328,芒康县,4,540300,98.59968548039171,29.685776117713207 +540329,洛隆县,4,540300,95.83130661347725,30.747126507478114 +540330,边坝县,4,540300,94.71437114915865,30.939624927346678 +540402,巴宜区,4,540400,94.36754427671993,29.64164454637214 +540421,工布江达县,4,540400,93.25241979667781,29.891367616240817 +540422,米林县,4,540400,94.36805828713257,29.654042176951524 +540423,墨脱县,4,540400,95.3394952975097,29.33093770187824 +540424,波密县,4,540400,95.77390012164511,29.865060090548965 +540425,察隅县,4,540400,97.47326974924565,28.667444137201056 +540426,朗县,4,540400,93.08136823440746,29.05190241908559 +540502,乃东区,4,540500,91.77868196564091,29.234229154984693 +540521,扎囊县,4,540500,91.34362712763867,29.25116431579497 +540522,贡嘎县,4,540500,90.9905823724984,29.295585920340546 +540523,桑日县,4,540500,92.02409400037496,29.265575286354103 +540524,琼结县,4,540500,91.69010077797564,29.03086558193296 +540525,曲松县,4,540500,92.21017466297504,29.06842481562376 +540526,措美县,4,540500,91.43991757318803,28.44425799016076 +540527,洛扎县,4,540500,90.86645200191522,28.391634617397948 +540528,加查县,4,540500,92.6004488814891,29.14608747478364 +540529,隆子县,4,540500,92.46896552098697,28.41401899841851 +540530,错那县,4,540500,91.77867513851903,29.243026939249226 +540531,浪卡子县,4,540500,90.4046468834624,28.97399201780357 +540602,色尼区,4,540600,92.0598468366504,31.476117292678243 +540621,嘉黎县,4,540600,93.23873151503976,30.64706245559664 +540622,比如县,4,540600,93.68596593861217,31.48635726205027 +540623,聂荣县,4,540600,92.30865446629325,32.11370748311539 +540624,安多县,4,540600,91.6888906779995,32.271268023108426 +540625,申扎县,4,540600,88.7164811082338,30.936393285832022 +540626,索县,4,540600,93.79217295837906,31.892424309226545 +540627,班戈县,4,540600,90.01670772711378,31.39872762296325 +540628,巴青县,4,540600,94.0598815647657,31.924549424275728 +540629,尼玛县,4,540600,87.24329241086829,31.790953326637915 +540630,双湖县,4,540600,88.84342793612339,33.193503165808735 +542521,普兰县,4,542500,81.18309473197418,30.30016259107777 +542522,札达县,4,542500,79.80932321217843,31.48534307001444 +542523,噶尔县,4,542500,80.10287714605373,32.49715682360169 +542524,日土县,4,542500,79.73910913826312,33.3871860438718 +542525,革吉县,4,542500,81.15166436963831,32.39335602004398 +542526,改则县,4,542500,84.06911336253982,32.30835664324378 +542527,措勤县,4,542500,85.16595220548083,31.02266637927343 +610102,新城区,4,610100,108.96739103850439,34.272724469532555 +610103,碑林区,4,610100,108.94697426104305,34.26304713496852 +610104,莲湖区,4,610100,108.9504264491179,34.27101720305327 +610111,灞桥区,4,610100,109.07141535554312,34.27912767495051 +610112,未央区,4,610100,108.95340118781418,34.299148106588945 +610113,雁塔区,4,610100,108.95144045637755,34.220635239985896 +610114,阎良区,4,610100,109.23246311821923,34.66836327469908 +610115,临潼区,4,610100,109.22043579557668,34.372747432848406 +610116,长安区,4,610100,108.91358047235403,34.163290267304646 +610117,高陵区,4,610100,109.09438691387484,34.541093106058156 +610118,鄠邑区,4,610100,108.61142023270983,34.11502071159901 +610122,蓝田县,4,610100,109.32938812681262,34.157620654732256 +610124,周至县,4,610100,108.22842183954491,34.16938526961624 +610202,王益区,4,610200,109.08141735858288,35.075322096471105 +610203,印台区,4,610200,109.10643408906915,35.120859282944565 +610204,耀州区,4,610200,108.98643790006298,34.9159603091095 +610222,宜君县,4,610200,109.12353674801253,35.40458219421935 +610302,渭滨区,4,610300,107.15641916768266,34.37748113268169 +610303,金台区,4,610300,107.15342367812907,34.38235108469557 +610304,陈仓区,4,610300,107.37543692051194,34.356306807227824 +610305,凤翔区,4,610300,107.40737949664961,34.52761627989884 +610323,岐山县,4,610300,107.62744727878952,34.44977696238733 +610324,扶风县,4,610300,107.90645306510017,34.381463351226095 +610326,眉县,4,610300,107.75639813644135,34.28037586308579 +610327,陇县,4,610300,106.87058365441018,34.8987802531072 +610328,千阳县,4,610300,107.13946616643724,34.64854460079412 +610329,麟游县,4,610300,107.79951410600374,34.683748667164004 +610330,凤县,4,610300,106.52255782186808,33.916583016343495 +610331,太白县,4,610300,107.32552913248024,34.0642484411527 +610402,秦都区,4,610400,108.71243199239031,34.33514511609957 +610403,杨陵区,4,610400,108.09151531880505,34.27801250765433 +610404,渭城区,4,610400,108.7434505714804,34.36811022936848 +610422,三原县,4,610400,108.94744650024964,34.623078955251955 +610423,泾阳县,4,610400,108.84937884704755,34.53331653276832 +610424,乾县,4,610400,108.24537762553739,34.53401826614159 +610425,礼泉县,4,610400,108.4316154916632,34.48739076850446 +610426,永寿县,4,610400,108.14846878644317,34.69803553561666 +610428,长武县,4,610400,107.80556078005252,35.21165733871549 +610429,旬邑县,4,610400,108.3404670366517,35.11796391971861 +610430,淳化县,4,610400,108.58744176373197,34.80477691129529 +610431,武功县,4,610400,108.20655106478513,34.26613766763324 +610481,兴平市,4,610400,108.49639400876816,34.30547652029205 +610482,彬州市,4,610400,108.08456557822713,35.04961057182844 +610502,临渭区,4,610500,109.51678687314894,34.505524685120854 +610503,华州区,4,610500,109.77847737160204,34.51873074009985 +610522,潼关县,4,610500,110.25250761972325,34.55032684853216 +610523,大荔县,4,610500,109.94845330291125,34.801832760483684 +610524,合阳县,4,610500,110.15539621273652,35.243872196865574 +610525,澄城县,4,610500,109.93843360325295,35.19657281555104 +610526,蒲城县,4,610500,109.59249651068265,34.96127412878287 +610527,白水县,4,610500,109.59752055373886,35.18328751461316 +610528,富平县,4,610500,109.18643744727943,34.75726044025601 +610581,韩城市,4,610500,110.44955264011737,35.482086787313165 +610582,华阴市,4,610500,110.09860075703762,34.57180015875299 +610602,宝塔区,4,610600,109.49591097174147,36.591115019566836 +610603,安塞区,4,610600,109.33541943983717,36.87009825930708 +610621,延长县,4,610600,110.01847172588649,36.58532880170461 +610622,延川县,4,610600,110.20054028664882,36.884136960992926 +610625,志丹县,4,610600,108.7755774799087,36.82802113586365 +610626,吴起县,4,610600,108.18258966361198,36.93257609948267 +610627,甘泉县,4,610600,109.35752350453788,36.28268861905286 +610628,富县,4,610600,109.38659653355447,35.99336797796858 +610629,洛川县,4,610600,109.43840396824812,35.768300429420684 +610630,宜川县,4,610600,110.17541306458482,36.056397437854244 +610631,黄龙县,4,610600,109.84654907670661,35.59023376806876 +610632,黄陵县,4,610600,109.26960598495414,35.58507634896885 +610681,子长市,4,610600,109.6813898595419,37.14881691836743 +610702,汉台区,4,610700,107.03840167622332,33.07419109309879 +610703,南郑区,4,610700,106.94243318333695,33.00561459973419 +610722,城固县,4,610700,107.34061258029828,33.162399385178446 +610723,洋县,4,610700,107.55246428058284,33.22886258931486 +610724,西乡县,4,610700,107.77339281906241,32.98939744189546 +610725,勉县,4,610700,106.67942594866734,33.15980474695513 +610726,宁强县,4,610700,106.26458864382062,32.835380199208785 +610727,略阳县,4,610700,106.16354400615846,33.333193777733165 +610728,镇巴县,4,610700,107.90144564069591,32.54283336566986 +610729,留坝县,4,610700,106.92741441351562,33.6238252167372 +610730,佛坪县,4,610700,107.99742428443454,33.530693101587694 +610802,榆阳区,4,610800,109.72755916953271,38.28241962673043 +610803,横山区,4,610800,109.3004913453371,37.96857339416575 +610822,府谷县,4,610800,111.0736281151979,39.033795629849784 +610824,靖边县,4,610800,108.80060049853356,37.60506319395491 +610825,定边县,4,610800,107.60756957446472,37.60045986534103 +610826,绥德县,4,610800,110.26942648535928,37.50890728893263 +610827,米脂县,4,610800,110.19045141746625,37.761397514329296 +610828,佳县,4,610800,110.4974774187358,38.025611678571785 +610829,吴堡县,4,610800,110.74645500778112,37.45826987407814 +610830,清涧县,4,610800,110.12755916227111,37.09485288782833 +610831,子洲县,4,610800,110.04239845246695,37.617025887547484 +610881,神木市,4,610800,110.50542966826288,38.848544495220935 +610902,汉滨区,4,610900,109.03359606475921,32.7011961057378 +610921,汉阴县,4,610900,108.5155069856123,32.899120857292424 +610922,石泉县,4,610900,108.2544267959227,33.04460211026271 +610923,宁陕县,4,610900,108.32056400011153,33.31655548650337 +610924,紫阳县,4,610900,108.54159431660538,32.525785619364406 +610925,岚皋县,4,610900,108.90861535813927,32.312880776500705 +610926,平利县,4,610900,109.36854670128137,32.39480412318467 +610927,镇坪县,4,610900,109.53349679292336,31.889643295790933 +610929,白河县,4,610900,110.11958688053117,32.814846485284406 +610981,旬阳市,4,610900,109.36840728426623,32.83757290532981 +611002,商州区,4,611000,109.94747163464996,33.86885529307985 +611021,洛南县,4,611000,110.15442748007456,34.097070538846296 +611022,丹凤县,4,611000,110.33356028859974,33.701537322920714 +611023,商南县,4,611000,110.88840847836768,33.5375334767074 +611024,山阳县,4,611000,109.88854863218121,33.53796838276926 +611025,镇安县,4,611000,109.15957460913961,33.42904465014651 +611026,柞水县,4,611000,109.12050227199981,33.69202624194488 +620102,城关区,4,620100,103.83147490052859,36.0631814753695 +620103,七里河区,4,620100,103.79241388203823,36.07212925843043 +620104,西固区,4,620100,103.63458007681574,36.094109365756935 +620105,安宁区,4,620100,103.72553503682038,36.10975375497273 +620111,红古区,4,620100,102.86542781272101,36.35186342317893 +620121,永登县,4,620100,103.26662443822926,36.7420952134404 +620122,皋兰县,4,620100,103.95346415996974,36.33814214867315 +620123,榆中县,4,620100,104.11956587927553,35.848851048242274 +620171,兰州新区,4,620100,103.64026814730491,36.489538296783536 +620201,嘉峪关市,4,620200,98.29620384300111,39.77796014739059 +620302,金川区,4,620300,102.20058588613941,38.52577224559433 +620321,永昌县,4,620300,101.97946358316133,38.252940956889034 +620402,白银区,4,620400,104.15541276065119,36.54146356806949 +620403,平川区,4,620400,104.83161394006756,36.73349875186937 +620421,靖远县,4,620400,104.682515077963,36.577096288836835 +620422,会宁县,4,620400,105.0596069327387,35.69850805309429 +620423,景泰县,4,620400,104.069444384363,37.18740626009718 +620502,秦州区,4,620500,105.73041549434814,34.587315743120705 +620503,麦积区,4,620500,105.89559698948948,34.57633686144821 +620521,清水县,4,620500,106.14359506620673,34.753882906362854 +620522,秦安县,4,620500,105.68157480343173,34.86487611156845 +620523,甘谷县,4,620500,105.34247534291173,34.738300137397694 +620524,武山县,4,620500,104.89742838308665,34.72766910163516 +620525,张家川回族自治县,4,620500,106.21139036270586,34.99490501301995 +620602,凉州区,4,620600,102.64857479650965,37.934121948376344 +620621,民勤县,4,620600,103.10040027988245,38.630624826433106 +620622,古浪县,4,620600,102.90362978165219,37.47580190660082 +620623,天祝藏族自治县,4,620600,103.14862131965808,36.97759617654046 +620702,甘州区,4,620700,100.48455772127826,38.9347814717853 +620721,肃南裕固族自治县,4,620700,99.62190541800803,38.84310020502293 +620722,民乐县,4,620700,100.8194290374239,38.436842233981295 +620723,临泽县,4,620700,100.17055476077383,39.15851444472609 +620724,高台县,4,620700,99.82575950433726,39.38364604680699 +620725,山丹县,4,620700,101.09561558172206,38.79045266330607 +620802,崆峒区,4,620800,106.68141452757479,35.54881489223205 +620821,泾川县,4,620800,107.37451813363634,35.33866859782093 +620822,灵台县,4,620800,107.62746120252491,35.07158181695951 +620823,崇信县,4,620800,107.04141513188709,35.308615839828015 +620825,庄浪县,4,620800,106.04258582178167,35.20819212580443 +620826,静宁县,4,620800,105.73841580322,35.52825718913639 +620881,华亭市,4,620800,106.6594859917707,35.22355076289732 +620902,肃州区,4,620900,98.51432185303162,39.75124550996345 +620921,金塔县,4,620900,98.9083682361721,39.99002925409325 +620922,瓜州县,4,620900,95.78873636451216,40.526105978950454 +620923,肃北蒙古族自治县,4,620900,94.8836923954122,39.518329738436066 +620924,阿克塞哈萨克族自治县,4,620900,94.34676019039637,39.640045316916535 +620981,玉门市,4,620900,97.05171169118218,40.29762002088378 +620982,敦煌市,4,620900,94.66852702576244,40.14786748424431 +621002,西峰区,4,621000,107.65739112516746,35.73686447597771 +621021,庆城县,4,621000,107.88840619723527,36.021726360644436 +621022,环县,4,621000,107.31446964419415,36.57442710890686 +621023,华池县,4,621000,107.9963895263176,36.46757512988424 +621024,合水县,4,621000,108.02644718800366,35.825262216399665 +621025,正宁县,4,621000,108.36637461671222,35.49821878089757 +621026,宁县,4,621000,107.934570925868,35.5079329745365 +621027,镇原县,4,621000,107.20757586986487,35.68323058631626 +621102,安定区,4,621100,104.61650040264573,35.58560001672479 +621121,通渭县,4,621100,105.24840362210966,35.217216821266426 +621122,陇西县,4,621100,104.64138059069448,35.01019716231762 +621123,渭源县,4,621100,104.22158401061884,35.1423919580207 +621124,临洮县,4,621100,103.8656010776999,35.400587040257776 +621125,漳县,4,621100,104.478595325501,34.85424998177814 +621126,岷县,4,621100,104.04339603982906,34.444407640650375 +621202,武都区,4,621200,104.9325933607497,33.39807218808857 +621221,成县,4,621200,105.74847790289836,33.75663518735122 +621222,文县,4,621200,104.68955842197508,32.94960128076792 +621223,宕昌县,4,621200,104.39938579986988,34.05348629135883 +621224,康县,4,621200,105.61539187549245,33.33537640199648 +621225,西和县,4,621200,105.30761048911957,34.016787358436645 +621226,礼县,4,621200,105.18359096939531,34.194685061207444 +621227,徽县,4,621200,106.0944178700463,33.77519418708969 +621228,两当县,4,621200,106.31141946598899,33.91512283517304 +622901,临夏市,4,622900,103.24954917760394,35.60989877268906 +622921,临夏县,4,622900,103.24954917760394,35.60989877268906 +622922,康乐县,4,622900,103.71547554222798,35.37610976070173 +622923,永靖县,4,622900,103.29250749454934,35.963330304471256 +622924,广河县,4,622900,103.58240999618769,35.49410136169551 +622925,和政县,4,622900,103.35752370329226,35.43058990416631 +622926,东乡族自治县,4,622900,103.3956132043736,35.66932972862377 +622927,积石山保安族东乡族撒拉族自治县,4,622900,102.88251807504834,35.72349932363978 +623001,合作市,4,623000,102.91757157299759,35.00593542819599 +623021,临潭县,4,623000,103.36053329624235,34.69863941152157 +623022,卓尼县,4,623000,103.51361578396147,34.59491643280379 +623023,舟曲县,4,623000,104.37748996238638,33.790814973644174 +623024,迭部县,4,623000,103.22844034557771,34.06202005409746 +623025,玛曲县,4,623000,102.07860004025919,34.003358168342224 +623026,碌曲县,4,623000,102.49442413370862,34.59708727156553 +623027,夏河县,4,623000,102.52857708038411,35.20832432554126 +630102,城东区,4,630100,101.8095690383313,36.605707645661155 +630103,城中区,4,630100,101.79048354963578,36.628800570588666 +630104,城西区,4,630100,101.77241422413312,36.63449697952408 +630105,城北区,4,630100,101.77240488175582,36.656293630836586 +630106,湟中区,4,630100,101.57861675781865,36.50662754628146 +630121,大通回族土族自治县,4,630100,101.69256375752063,36.93266646340686 +630123,湟源县,4,630100,101.2624486115435,36.68858751490262 +630202,乐都区,4,630200,102.40856633882869,36.48782005152185 +630203,平安区,4,630200,102.11442787755806,36.506553573162044 +630222,民和回族土族自治县,4,630200,102.8363896379582,36.3255614018714 +630223,互助土族自治县,4,630200,101.96456904899203,36.85002161382641 +630224,化隆回族自治县,4,630200,102.27044827344754,36.10098825089297 +630225,循化撒拉族自治县,4,630200,102.49538532060429,35.85666722386152 +632221,门源回族自治县,4,632200,101.62843803902976,37.382180626313485 +632222,祁连县,4,632200,100.25962157242704,38.18292487156922 +632223,海晏县,4,632200,101.00058554860196,36.90237602251455 +632224,刚察县,4,632200,100.15360607139486,37.3273200722536 +632301,同仁市,4,632300,102.02543778119538,35.52186515052424 +632322,尖扎县,4,632300,102.04699585580715,35.94912858699931 +632323,泽库县,4,632300,101.47359451318887,35.042014495100005 +632324,河南蒙古族自治县,4,632300,101.62247338027404,34.740396071091155 +632521,共和县,4,632500,100.62662348005355,36.28870331786534 +632522,同德县,4,632500,100.58542386563559,35.25985777581735 +632523,贵德县,4,632500,101.43953310384482,36.046158080751304 +632524,兴海县,4,632500,99.994380072293,35.594629879948684 +632525,贵南县,4,632500,100.7535932147337,35.59241545461141 +632621,玛沁县,4,632600,100.24556434882359,34.48356948600165 +632622,班玛县,4,632600,100.74360459644603,32.93850392746955 +632623,甘德县,4,632600,99.90751069557831,33.975003677602174 +632624,达日县,4,632600,99.65801011306507,33.754937373991375 +632625,久治县,4,632600,101.4885322558532,33.43477349940803 +632626,玛多县,4,632600,98.21588383209857,34.92074864618621 +632701,玉树市,4,632700,97.01537640110074,32.99955565088557 +632722,杂多县,4,632700,95.30696487882817,32.89924067586018 +632723,称多县,4,632700,97.11500000927667,33.37422569894356 +632724,治多县,4,632700,95.61979357436996,33.85795326771854 +632725,囊谦县,4,632700,96.48691827128273,32.209194368698284 +632726,曲麻莱县,4,632700,95.80375001399207,34.13229866699674 +632801,格尔木市,4,632800,94.93331021042529,36.41237104695386 +632802,德令哈市,4,632800,97.36747029997534,37.37534590746335 +632803,茫崖市,4,632800,90.87951750333991,38.261902814972395 +632821,乌兰县,4,632800,98.48673569929515,36.9357478590324 +632822,都兰县,4,632800,98.10270479377708,36.307611028682054 +632823,天峻县,4,632800,99.02924296796702,37.306903395111 +632857,大柴旦行政委员会,4,632800,95.37176252984051,37.85802020600905 +640104,兴庆区,4,640100,106.2954937669248,38.47957892945585 +640105,西夏区,4,640100,106.15658124015063,38.496817469603855 +640106,金凤区,4,640100,106.2462873758353,38.480384721034255 +640121,永宁县,4,640100,106.2596045753596,38.28300154152117 +640122,贺兰县,4,640100,106.35651826530358,38.56040668957878 +640181,灵武市,4,640100,106.34644035544825,38.108658666793254 +640202,大武口区,4,640200,106.37461049759675,39.02484775662651 +640205,惠农区,4,640200,106.78843002230066,39.24538810836003 +640221,平罗县,4,640200,106.53651847762919,38.91960682591035 +640302,利通区,4,640300,106.21940702073802,37.99074608085695 +640303,红寺堡区,4,640300,106.06842117807918,37.43188245444605 +640323,盐池县,4,640300,107.4133795486424,37.78929564990927 +640324,同心县,4,640300,105.92059907759594,36.98626962916477 +640381,青铜峡市,4,640300,106.0853703166109,38.027412223967175 +640402,原州区,4,640400,106.29451461391893,36.009367675762505 +640422,西吉县,4,640400,105.73538590856539,35.97007642089009 +640423,隆德县,4,640400,106.11849829669953,35.63176231509369 +640424,泾源县,4,640400,106.3373934308267,35.50436163767883 +640425,彭阳县,4,640400,106.63839027500494,35.865933846389694 +640502,沙坡头区,4,640500,105.18030290173714,37.522707205021746 +640521,中宁县,4,640500,105.69153719119848,37.497420805578884 +640522,海原县,4,640500,105.65055514637504,36.570781489719 +650102,天山区,4,650100,87.63840777756565,43.80027135831345 +650103,沙依巴克区,4,650100,87.60467002769686,43.807262352761235 +650104,新市区,4,650100,87.57590844120058,43.86139400274798 +650105,水磨沟区,4,650100,87.64889666219182,43.838251163831174 +650106,头屯河区,4,650100,87.43450670985825,43.882653022601524 +650107,达坂城区,4,650100,88.31739765660721,43.36994274633969 +650109,米东区,4,650100,87.66213427184795,43.97924742639792 +650121,乌鲁木齐县,4,650100,87.41602874517912,43.47708606579323 +650202,独山子区,4,650200,84.89361328334303,44.33440739236509 +650203,克拉玛依区,4,650200,84.87429458457947,45.60847146791606 +650204,白碱滩区,4,650200,85.13951012368591,45.69395162976408 +650205,乌尔禾区,4,650200,85.70030482644177,46.095295184689334 +650402,高昌区,4,650400,89.19245888270062,42.94854869168373 +650421,鄯善县,4,650400,90.22009388610284,42.874759228479064 +650422,托克逊县,4,650400,88.66016435954114,42.79854583102295 +650502,伊州区,4,650500,93.52132046236862,42.832824924720725 +650521,巴里坤哈萨克自治县,4,650500,93.0229309535639,43.60568877078736 +650522,伊吾县,4,650500,94.70382567128537,43.260676527466494 +652301,昌吉市,4,652300,87.27386462195048,44.020126845938606 +652302,阜康市,4,652300,87.99367790506243,44.16313732134573 +652323,呼图壁县,4,652300,86.90514380673059,44.1976545961318 +652324,玛纳斯县,4,652300,86.2206434521992,44.31006285879989 +652325,奇台县,4,652300,89.6010808117238,44.026897819017556 +652327,吉木萨尔县,4,652300,89.1871228581408,44.005717795203225 +652328,木垒哈萨克自治县,4,652300,90.29251473733397,43.840308302806726 +652701,博乐市,4,652700,82.05797225459081,44.86000978463866 +652702,阿拉山口市,4,652700,82.56072527243815,45.17967007992087 +652722,精河县,4,652700,82.90065531620479,44.60664594349165 +652723,温泉县,4,652700,81.03114554648644,44.97485663870472 +652801,库尔勒市,4,652800,86.18149430993829,41.7323732214122 +652822,轮台县,4,652800,84.25821215205379,41.7838130005149 +652823,尉犁县,4,652800,86.26603653639884,41.350122782053845 +652824,若羌县,4,652800,88.17532444189617,39.028991037175174 +652825,且末县,4,652800,85.53599038573108,38.15138769412976 +652826,焉耆回族自治县,4,652800,86.58122202627663,42.06485085872785 +652827,和静县,4,652800,86.39039822069184,42.32936503587904 +652828,和硕县,4,652800,86.88368903725248,42.28806506242823 +652829,博湖县,4,652800,86.63846914998597,41.98643035682914 +652871,库尔勒经济技术开发区,4,652800,86.18149430993829,41.7323732214122 +652901,阿克苏市,4,652900,80.26992675733364,41.17385992695259 +652902,库车市,4,652900,82.96845878728406,41.723447514832976 +652922,温宿县,4,652900,80.24556435258084,41.28256724988662 +652924,沙雅县,4,652900,82.78882373614826,41.227749329027176 +652925,新和县,4,652900,82.61582303052585,41.55399962847732 +652926,拜城县,4,652900,81.85851627203844,41.80070660198409 +652927,乌什县,4,652900,79.23086899089708,41.22087110699948 +652928,阿瓦提县,4,652900,80.38184924590777,40.64935880291086 +652929,柯坪县,4,652900,79.05321353561362,40.51405552096561 +653001,阿图什市,4,653000,76.17930145823651,39.71946167197035 +653022,阿克陶县,4,653000,75.95372526670941,39.15388851764215 +653023,阿合奇县,4,653000,78.54216474624008,41.145652575078415 +653024,乌恰县,4,653000,75.26533363236989,39.72512359095323 +653101,喀什市,4,653100,76.00031273791514,39.47364953291228 +653121,疏附县,4,653100,75.8691686673607,39.381291555212066 +653122,疏勒县,4,653100,76.05661439507521,39.40670910873236 +653123,英吉沙县,4,653100,76.1820754256513,38.93567086352142 +653124,泽普县,4,653100,77.26655942376085,38.19072551633278 +653125,莎车县,4,653100,77.25243671368574,38.42015675241895 +653126,叶城县,4,653100,77.42009762186518,37.88916684442745 +653127,麦盖提县,4,653100,77.61600386036432,38.9044962236489 +653128,岳普湖县,4,653100,76.7841477157399,39.23938733394502 +653129,伽师县,4,653100,76.73038556825654,39.49385160586808 +653130,巴楚县,4,653100,78.55448806054815,39.80533455752104 +653131,塔什库尔干塔吉克自治县,4,653100,75.23080474483845,37.77904564076277 +653201,和田市,4,653200,79.92021246975499,37.11833554446567 +653221,和田县,4,653200,79.92021246975499,37.11833554446567 +653222,墨玉县,4,653200,79.73547926535839,37.28299344690681 +653223,皮山县,4,653200,78.2920693956487,37.58408593820352 +653224,洛浦县,4,653200,80.19538761187944,37.079611030987515 +653225,策勒县,4,653200,80.81320126874158,37.00412235937149 +653226,于田县,4,653200,81.68378291474839,36.862954136110474 +653227,民丰县,4,653200,82.70271342758947,37.07025696823114 +654002,伊宁市,4,654000,81.28424240527833,43.915299436243146 +654003,奎屯市,4,654000,84.90944924168677,44.43205721000423 +654004,霍尔果斯市,4,654000,80.42712977242704,44.235308556092576 +654021,伊宁县,4,654000,81.28424240527833,43.915299436243146 +654022,察布查尔锡伯自治县,4,654000,81.1579245709068,43.846690330451665 +654023,霍城县,4,654000,80.8852811232011,44.062249507398526 +654024,巩留县,4,654000,82.23822560940913,43.48848555953649 +654025,新源县,4,654000,83.26702230149687,43.43592700218544 +654026,昭苏县,4,654000,81.13737753914653,43.163496741508915 +654027,特克斯县,4,654000,81.84258724924386,43.224248213467376 +654028,尼勒克县,4,654000,82.51800753168041,43.80459483623821 +654201,塔城市,4,654200,82.99355716377181,46.75738336508287 +654202,乌苏市,4,654200,84.72008814696387,44.42404803445163 +654203,沙湾市,4,654200,85.62614468603468,44.33194946174084 +654221,额敏县,4,654200,83.63337445478265,46.53188486130856 +654224,托里县,4,654200,83.6129094383153,45.94274280504971 +654225,裕民县,4,654200,82.98943870250018,46.20745354692848 +654226,和布克赛尔蒙古自治县,4,654200,85.73500888354788,46.79868511263733 +654301,阿勒泰市,4,654300,88.13922656402383,47.83275264847511 +654321,布尔津县,4,654300,86.88136017027281,47.70795172388758 +654322,富蕴县,4,654300,89.53195340805546,46.99995105305454 +654323,福海县,4,654300,87.4931572463246,47.118140737535164 +654324,哈巴河县,4,654300,86.42481768466426,48.066148902457634 +654325,青河县,4,654300,90.38944440719293,46.680193967050094 +654326,吉木乃县,4,654300,85.88081824070636,47.44901841325684 +659001,石河子市,4,659000,86.0469283242047,44.33018996590372 +659002,阿拉尔市,4,659000,87.63347320573824,43.79923810128996 +659003,图木舒克市,4,659000,87.63347320573824,43.79923810128996 +659004,五家渠市,4,659000,87.63347320573824,43.79923810128996 +659005,北屯市,4,659000,87.63347320573824,43.79923810128996 +659006,铁门关市,4,659000,85.50783659274288,41.832991672901606 +659007,双河市,4,659000,87.63347320573824,43.79923810128996 +659008,可克达拉市,4,659000,80.63063298062404,44.13312614502095 +659009,昆玉市,4,659000,79.29803197014775,37.21673395016932 +659010,胡杨河市,4,659000,85.17237948161842,45.13902092011518 +659011,新星市,4,659000,79.24087350919226,41.219769286602805 diff --git a/public/wechat.jpg b/public/wechat.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b3181ca01aad1b193d4c078d24f23a067b77cf44 GIT binary patch literal 27504 zcmd753tUY3|37{ba*0qO#aOoxT0%uT$9`N|w;i==>PDeBmBQpmrk8JcI?#6#H4c<({84w-Me+~ z-lJ!qUOjsD?%BP2ufDx{n_E~~TAG^m>)+R+e;*4=3-m>djN$im?9{bWr>+(~y7#bX z_YZwC*1L;Q2cr(gMnkX;y^V}}8|l+A7JSZ5M$8Ya@dx}H9XoY4>C&}ZclZ}#dtn`n zjEy^VG)A8q{_Ozx=UB(yo%(z;{`=163s;*A@v)e&`^cYNhW;li#d6Vef z{rqy4qv6MnpNRP5Q@JGXiwYjd|a9tfbb~Ns2 zg09P`gD?Cv?%lD|H{(0^`F^3vY9I3<6Lxp8_|K6)qf)vKby%ddT(jkQx4y$BmJU~; zOJlC=|8`+}{?(N=U)Y!HD!@#Qjo{%K_r`Ec=XN1@Bz7Tu;<{aZgXcXzg)JZDFl#0@ z*5c&l^Bsc!GwlNN%SS4wb)PwWEM~EACT6i{UC6Tz&u3a-3ulg4Z?yi>#i4In{9gE# z3&Ge(_&LgK$cf)SpErACR`^m~Lscr>)lsV4K!KG^B`v~GXiN_}toc!oJ)ft?vN}iTu}7~+VRhFYLlclcj%4?^Nk5B--;E2<>4mp~q52ksIxUq<120{=w{4LVE;tybSli4u=S%9UC(&D@p>*_7F^Y19Vh6qQ~7%ASB{Q6-_uR~ zS(ivp(OT+m2)30-JNs2=tl<*#gxQ|DBdg&Wm#)atV=lKH&LoEVdxVtyiiz{OX^r&Q zo{M_yv05-+kKN_brxbSO%Q4**_~o1QE3P@YPC_k~mBNiI9XKFY9a*Tyo{jZRtg@A# z<2FztZ?0-B1zA>h;IFlgUr%%aJkWC zJyt!*&n#8CFUgjADSP0MlGNiR9w(T6)t~f?u0fxu%%59v{CMX+jxM)zzI7h#{=rpl zug3=D51OpU_8-<`hkW%|*T_8LHt~LxS`r;_QGu(2oKco$!?? zx+1-*aJno$C~1PgS}DCtWsEhca zJ-TaSWe+$hNfTb;QHitvs^@NmyC%x688X|gBIsn#MKfH+XZ-5lae)a*q&+7$NE=3p z>ZiTXWAy`)^cb9;MZ#C;TTWNG(tY9BmJXpG(%Bl5hE6xd;S~Ymr+RE*A8*NVR&mZ` zRmd5gu`)sZnX*(}%v{b36j;jwZ&2ZjYM8T2n4Bz6Z+Tr-!@7MGI?=C0ro_4`Ifq(W zjNYG}8m}Bp=P~1MC05yG*Wj;aXnfvh)Lib|Dhx*qGK$JSQaP}wQ>MQX>OiIUs8 zqjho>r@THwt->FVj<&fJ>I`*mixGTYYKOhT$%$p|q{nVErSo;eb@&RddMw-__D-3g&4R|*h3W&+VgPP ze8()!VkqQVDCB+Sh+Gy-u(@>559(3L9=l_D?7#*33Gvy@jP5dtL(e*ImL>kjm;Fi| zz6y_Lkzl;;k{*l8Obat7QfKN8y$c|99X{qhu1S>G=>({lihP|4b0#=Y;>HV%}=WgI$6EQWI6C`4K%Gt}p#ZbuM z)4bEL;Q+pc$2Nca@dhZ&ZSEd?t)AmTD^TWaifc zcBmfPSS>ic^t>Khp}tfkvhywKUli&SUd~m@>>F;1>NgT~n}yeM;l#v?AF|A~{dD1p zTV?j0KN5Mx!(Ot})N`dV51~(R3*iV2yY^_yQK#}B9gaNeyvrHS>r0}V{jpD z&Z1@uAL_Ah#kX~*<$7$r9{a1hs;ENa!565?iCDOGUbK~1CJsunAyRL_+Zm?mCnr_V zu=WPZlYGy5S?IBkNm=lUDm0l>w`TmxhMED-{^cK;+A&d~f6&QHDM>Ubi+E^nuHB$2 zj)a$RBT>j6_9{^vyQ;qT_wW6EhRv>?aV@axfSwjSE0?3|jiq|5Bw{G-ATB*ee6)qn zlzm^fNOzA|Ev7b`QUCFg@u}%#=>QF1n<^|)i|z!7=+h5l`1!h;ggEC)VLxFC(IKfj zRXI-;5h&>S8^6znBtGgtRTb6RN9SzohoAkue3(zx8Q##2#$238S;92&7mGN@UEPgZSsHej6&toY(ONdv zLF19OLsXcQ>!}X<1$D_FD9^_;22FJNHs@QvVGB&$HKz1iQV9=Bd777kEC0}AsdLr# z^@jou$fZ1ut8RRRu(8ElV*zn9 z5Bh|+=Av~}&II8#G$aVKrBH^`ly|jG(8h*FE~j5N&<^575I%hbM}EBW?UD1PvwXrI zkJvRul)sbi3e%Qpt|~VT@2$s5;jpE;>JF(z)CnRLS97Q4#GWv#B{v4#t?>|4-YWKo0M}Dz$;W>xhA4#QF z+HirW-=@dvEQO16nF_AyEa*m!g%4VpvC35G{2V@~?tna=EU2rg7kcWTQO%wDP1X;x z<4!rQg9l*ccxk<;b_R?)@Vh^a=1@YuZXvF{ug5gOiDI~Q8hcb2B@fM2tTbGCWFRwT zeyCg0G-Y1>GG*4F4x&s*V?hJ)V%boRDffA5eE(|%Dgy6kB#Nfit}dI zU=JW;SUQU|_~1R<^w<%YvRn5%@o}OwgQ#6WRKp4VRDhReaBElKhQGl+LXY4UN=n=_ zMEO%QSM^ZxLVL!P&7UjBJ)`MIB$}}m<;1zAmS0BNQLrR9^w(qi8e7Q4Rv$@x4PPzF z9ec9$&jBJIn2N9qm5<7 zvXUiGcy_NEL2cE=xlGl?s=3rjT{yb2+fc8F|4UxKLa5A;*M#&kF5xL$m6_^rx{%cq z?Ja0pI-=HNpSxe@+UC@_h-+0N6 zc9>|59{YonCw!_V?hr5ieLvOcqT-YMs>KC|m;%&elqxq}+Ejp?nNN5Et{7K~Z6C)5 zqY5-XzdAnP`Qf|@tHFbs4quBQsw_TPlFu(A6t=oJp^YDp?qe_K4pr!}4{EgYz4zx< zmcy60q`8+->~lmUl@^4T@U#;}$s%)s6AknFUSH}2a_x^S}MP%nyR*^6s4jN zkrkR#yZELNJp!(4+?Q(tZr0@|J@*=W1HTu0Vwvc-+}^g24p>M3dj1I1xiprtnxGy@ zsrh8-N+NZG9-EM>c2`H{(U0lfdW^;XjlE8fMf;0B=6dTA6>o(!e9X>7+H65Lm1CMn zK~kT#)vnx14$c`3LB_j3ys{G_MqL(4X=);+xu{Y3NE z-5~Z1r=swE9mB2>8||s#_S%V&nOt)LtONU?);7%p@K<^aoxwLF@i)4w&IHtfscle zbBL1tXN8k_^m$lL&{VyUeAhrX4do|}8GUW1NoFbMa0?EVhRLCab#Gi#2hs(GHI*4) zm^IZL1{hXxhOf^V8{t*@6=6)2UZOksoi5E(OSMBAAACeU`}Mne$AujF`VLrYPo+O+mEG8`k<5d>{Fq4ENT3^*;oBa50P{i$pk})t&9+k6yc* zmLWTCmEqcP030nFG>pU>TGOSr-=lU(@JN93(9cn3bFk(0dQ4qQT`VK^z&q+2D)1~R z;%KbXPx11Ek9Vs5BCEC88bD``FYCF;)#hr(7H2H?omrcrE0)HKQ>)Ci>(SN$@YDwp zn&oNOI_&SvgbiO>m<8z64H*6ImGAf2{kX#}d@v3T^G->LV4jRl{x1+*!*z8(J$87L zXaFpvv-H@*1Spd)<#-J$B)w9y`{<9ww9PweECRA3Zk0R+&wg5e>g3h*Kr|$nFA;Dl&5iLTLU1 ze9nN-R6J}1XzWIt4)gY3edd=f(_k)?Qo|jYJ8;ZUJG!%ALpnl0m-W;I>N>oE#XKpu z^%yNAbPsSo9!hp1yjTPM98=CY(;3R*(*}TRDF7JE{5i(7!hYzvr7|ZQ%q|%(&E?*C z53Q)%Gml$D{AUS0TWmyKR>r5p^q1&+m2%8j&O<1O)K0Nvl>naB+S#K8DhC*$5A1i! zF&i9=>2$gWLcs7!NPyKu3^nh#3QCe~WT@1V5lIh2eWRCVZ6FO}YwM><* zzC?*MKj^VFL~4f0Q9F#Am*ks=KO2h>H3oiyNzk<}=5V5i?RV~SOO9;I5x$#@wM}CcxN7*cWv&4}gMM}z4LDD0T*#IK&LfjjUTRh0 zOPM%@-{HeKG#7S0T>8NAX)|DMhhD8_;P)5IP953K_xXi(q3!{@lc1mKO=OAG%CF>a zfD8oU*kyn_!UY@|cD3fAapNuR*=0!5V%-CRkMHIVAl6nf57KFhBxsWTZQY4%%@7)1 zF*5!*?f(nF!EdY6oRZ(|p2mVHFYP(8;fV*`mp5>{Zuez`;0j4Pg=+z)?xOlfrDI5< zC#r2!xSPheph_sQXxbP@pHH0?xX&tsGwhW14K#N*;VUj|r6jc+S4L@JLPU*A&4uTK z;6Yo3kk@b!u&)!t$pk7f(=~h}6N_z)?uOpn5IvKeti`lX(jq z#jD0JCE5xLSOa01H4KU4DSjE384`bqjnZ)P6`uDG)V+zCIbriDcsp!(-aUW%otQ)X zBHmYQ*t4yhvEzUQ#dhv`X3f5Pob7iK*6itNHawHxX9{j=cF@HDx*$Mcijp7b@+$)f z7`Pq=5Ma2T7F~h;lCpxeW4!J(9w$i?p`8P^1%&mnKUU^c3lP>PZU$Y(e+BDvhc28l z3dWoLc+4^irW&R)g#sQ!FqH{?86i`d)Uu~xRUT9C=JaGEOuKdK{;$~NOkJdzNg0o& z#uyCi0lJ$JY+Hnv!R=Iq%WU@(Fmv;nnY)t9k4@4z7L4_bJy16}I@{sXDIg4b$+rJ! z(FgyD?u<}w9DsYc%zKSx1|j#)#@%c}?$f^@_k(T3sM0{?8-TB^YOFNy-r-E8Q2}J; zTZbymHPd11ofe*1TRr>Y|F?DE9tRC8nZTlb3(#C3OswxVVp_u#^fGX_${|dHAxg~k zpAASIS;AM$Ri>$rqRnUD)-pcz0~sX#Sz z45|iS7uy=4piq35!ZY1+35stAnC=ej zx60`G{g7Q#$ima=_b_WegIU0q9tjhF*#0EAi{rWRz+$m@fU)%6RH!BdpA@0QV!R{* zuU>=Rq))bbEOP37ZHKqM-c@IENx?Yg`}S3iJBbLzlJ&*bF9lLWHlbd8G*MiWZS0)= zsN#fEPG<}Tw%-7P#&?U9FSs2N=PN6qclDMUZl6RhLg4h3NSHbwz%whX+waIb^NSXP z!QJ1=08pHOf4DujfNUo^O&Z3;_b^3wcW6eAci|fePZB=MQxRHpW$;wRZYcwm?OC- z>6`JJ3NsXG3Qqe-&!1sEYDoZ0>!I6Ec=M^vENcD%?Kimc0FgQgz}aA3f&yO;;Ow`D z)=7s-rzUuavLtBz6LAgXK=g|wc#B%XY+2GaLmlRi;ATg907oVUxS7~&sFZ3kbuxg# zRlLTu##LA(S>9cb)h;DV*8-hkrkSe25lm3!01${&M*qh7Hm^Frt^W`Yux<%NMd!c`EOnmsPj&5rZd9QOW7$IbcGvaLMemA2)gDr{g2;WY!c5EwlGWfWo5qbdZ-z*wFNixh*(a0}VF zji^lVDoJd;=wspbr-|Ng`_ZhEp?K+RqC6MQ$KrBsv{c~=E6y_n2n7;WE-+|y4ND{X z=l~F!sp)hxtUxI78v6=QiVYqWzUhq$ey}G_brhW4l|mr;=E0Ch!V)_l6I=&* z#Zx_Y%~p>^05Ip{e!Q_9uah8H@Gw)3``~geD#tOX97op|Z+iut1aK~yrxQM%QDj;@ z(&#aI;5J5q;eb;(C@@BlgV`hLV$ne1M5>>gk{_b|b&{yZ$5rkHH^}HQpe$g{gifJhzErGi7AG70NC$7Lp*$e{cHgxRTVG`r=o8NMr^c4dH|P`4VT8jKt(g%6dx{ujE-{Vu)dcH? zDb1h+ux>XaK%^buw}laO|1^Z(ULZ;*z^Os_tz{E_>oHCzU9Zk4u9wwv7-(pOtpOVP z?T&aC4pd@v6)YKUh)5hmKm$OusV+io_F02~R1Nnuec>m-&F}|jHp{G>v05&*I*jti zwQKq4jlM;ePSj&3y)o^ymI+u-FzQA?I)iE<8B!1 zGTzRv(8yV`q6qk;sue`4C!9^&Jo3G{niUfuQm{T3uhb;MGO@YpoQqg}0WA#xH)>JQ zA<)_oN^A}|O%E3-!NMTw8~7Ukb+Z*1 zw_BZa-Yl=%$P2repa1!_>vx^Te)9p2CV+^blTdOqm!pkC7I@Jw9D#_S@gab_opCf$ zVqtn<)Q~~_Wlm0mgUj&}AQ`IH5atA;RwC!lsTLtTdk)da@-+`RF@)iz`r3?B&t-1V zO(Ja$gU1Fc6X>SFD4XtMhJMd0K&!54Mt{M+uv#3*7?v{O-zt12mEgA}3c!3#p_q1! z*Dm}*UIqgr#*mlaHiNRjuC(OAuxfEWU;Q(6R?|@kx2UI)Y9O+TFPwBQGg7Vtx29o~QxEl9$JFuDB|F#m_^u?%M- z)f~WvO4^)Lf0BqLV%eE$&gUvhUA?--kzqWS-jxE*jE|<@N^j?C$3tJYMepZ4qI5W7 zo|Dql{1_cD&)KA}NOAZRe zOGO8P(7i*H+Rz0WckNufl%;VGe^)fuq(K@BxYCNGzcb`pL&BR5_GI+j33Rv z!^w`wskwC_P{%KTWw>!bon`_oI{NM*O7`$Gz#JGeQ@eH-gOPa1TooRGkx&K!O{4)M zSqi&oD#Az>H_Njol{igJ$dyW=!}U2Pd?5l>^ow9&1N3KJlVIWMFRcX&M~&VWxN7^5 z>f^5_P4!wKGAjJ=>-@p44-#_63>azTl5p@Z-@!!mjQ}I@pSg5bXJuyE`K45Z?C$)H zgF8K$eCoH2QTU>}6UGm8Elz>4^jG#p-8ntxy@D(dmqesX`YfduP(!NH9>qO7{)#Sm z@?uu{4`$(mUOd>}!*Aj6Kca?3IS)H?R2VDsP*ru7^}ik`_~dme@j*tf!-cOJ3f11> zrDA!hlAA{Ml)LzEzEQAVx;{T(OUEsf0>Mbo(LCOmk*~! zOFy+;UX91W%r?Y@ReLmEtKkMIh&X-uS6#UL&hw<_(GBmqybI5{dt&QxE91_K*n5(G z&~Di3s(#IV$2~~gI8Ig+XgN3W4U?&@njf^5s(xwLB?l)@=@b{EUegeK+`}wZ=RQ6ppRQW0C)Vx!ZW7fOG-Cep*dTQ8#t^M-_ zul{~=>DzCD-u6qc;jR)sT3%FCv1{90yORa$$M8E89;nEgwP23f=6qZ^bXBOy1ix$N zau!Badfs~y75gBhls~jxRY-X_30=hnBXyXCWd zj-+%3JPE1nJW5D~N2AIvQ(1h{pt4&A%Uvo`*)7=`am1vX&zW;ZlNuIk7Qpo^AxlrQ zrvOwhLEtE$bx{TmiTZ(^UE%*G3eb8vfCWv8i*llo>od(|mbn&U1HPf>H!gIo#0K@X z-viVLyjoI!`URo9PL}?R`T=Yk3QqI3n%^3;lO$V$8pJ`w9tDMv6M3I1*I z!%MCM+06_EAYrg;lv3%gs+-tVjcr6LG7SfsX!J8(BO`)tvn$@n)WKbD;zZ=2GFT!_ z9G~DKGs)6ptHpU7RjByC*`GaKxw5^^nH(i6*)UbeF6K0bL1z1OhCRtHHrvWvD#?CuU zC;%EeZ`^J@c0#+!`x&;DIHGhieuuAJ5hdf?)?-lGp12`w&$WP%Wir^FRJRVWy`L4E z0^DKXovHf+)2vR8PH`f3`TGy;K*=3{~)dY7eoC$+OckU@5WaL&#yOMY$ zCbjZ&NUoTr8iBC(Vo-lb0o7&Hf@9=gXpJ(UAaSjTXV^h+y-3ny0G)2c_v3K~5J_!K zIRZ>GPdLnvfllq!0k6>tu+8$7H0gfuNViRstH~T#0Vbq(08$Xm$}1@k%^X%RLTMeK z$s^SxptLVPA#@9&v_T+xyh5ve;zQO}z)0S-$2-5(J^1bT^jKnd-O zT5}Z9>egrHAXpV{{oAVgt+7#{P_t#IY}j1N_#vXs%r|E?mk5m=qOzII#qx&q-u)A3 zbE%HZ37ooR!lgc-;Zn?I;KxIBN9wf9HiblE^FYRx z{zf5#+J*tB58}zH{Bl@5hyM`%E@)ZKsu?z;GPd}2%-zMJMg!FL2(XkBTjAsx1SZDS z#-+ZB531af_}#xrkYd<)77!|+dj%XGflbGeV#F$Em8(ls#;@OEmY+>P)v-|fqwWqH zR2?PK3=U9N9!hCC38IeY!W1tLwJ4?_dz)F+%{9Sm3nzgb$tmZp&DFu8e|byIHEsqq z=`C`d3-K6EK^6@l|KmwY6S&jplOTP`=@MxQ37=#jl9#}ZMxP`A$x9w?bF8{`fsvPp zYwl&pO-Et@ZcI5wkn4*BrKpHCZ8l65)2u+N4M68fXtimS1W?BGz^#mhfcXH>zyUe` z3`g`OJ%6h#Qx~wpOuP5>8+TYvJH~=E_Gd~3(zYd_dcJ-`9F_x|w%PO=dKf(k=e)Ax zrwniz^o?r&q02@7qIHRh!Nt>i8|{hN<@0-hSDyzFYM%0j`>Ij*RZA`{8E8FiU*u7L z_TR^@W)4)}daq7x$UVIOua9p+de`_(8TY`?twuWqrm#%b{s!MPR^QCOKHNW4oHnKd zfAl8*+iPWBy?1R52{jp*AetinfvUf>@ms;P#5dzkj=M2w&$t`>)$g7EEa-p*EZ!bi z|9R5;&ufkz-Z1jI-SN;6kDyZ_{)^S!KIggYyrs3*h0^1x>uHYC{8Q?P0h|rK?=tO= z)qj8XsNJZNb6qCAUtG(T6EM8+g2>8hT!*;}-RRE`tUj(~Rb@XH?IA6aM*5wW;i0ki z{i)1Fbe?L^1`n+}TE$8|nu-&Pp2Hqa>qvP|qD zK?@42AZ|=}fT9FiqZlj`w$K{8!%h>t{mWGJ*#zJwsJUk~a~QB`pARryfU3h1Bc(;C z2uasgw>AR|W?^mh{Uo3>?UYmc8LG;7c$Yg;O;v>{ny9J}F`t;CdDZ(*UG0rUsAvY! zu1-aP`#YLJ&-;qhT`EP=jRR$T#YpzZu!BhH0iFgje@$}0okF^wN3inVKHJ!BG zsOPeqoQzcyl+JIE6@UXkVe=&ow0m5p_5na2|Y;T&geEOsFW&lioMORZ{(AoZ1T@Aeia84VTM^U@y zmEmgJW_c+O1S>GhMyJs69xZS%PP+jI@o^Hdcm1j70FD~iyEqres{lm)FTib0?mbP~QA(<>&T zX~NM}>ms7ZXVSeylsi{>ig=Q(yAFdZ9!*3-0gVqg15^}z6b}nY->KV=!J``B3(c~y zY3_SZwg>9XMYb0MTfH=M9`Orev8J(N@#qQ=GOm;EUS$PBMwtH5NK-(T@zfj!t%MtL zt+<8i9qd;JDu~x`=d#71*}L9eLV=s}024yHOsm`aWr^2DA{p+%KOi`w~ z^0a9DtIcjF-);G}Ye_G=clRl6B^C7<$ICb}x6isCBa*phvHXLl3YKp8{p_y5?_P$? z?BKf&fB9fXzlWTG8`##$Gu)n9mgDKjY5A{WEnSM{zU|;N^gE&m`_;K*1QjkO_kW|* z_FI!Sd**1hdi{`^m{*Tn$8iK_29#H3ExtIX=fwD(V@7TVlcdYrIRp5PL`;p}S*{hRn zrIt6R9P@H}cT4_8@|ibtN}gcmxOr|H7Z%K2ITio$KnUohqx6_I=p58CF-&ovjkpsj zQM#L7|)!uK$dM6}js_?L75quq(Kg|nqIYD_7)b>oRM}!u5vnZkz>h;M8jl0HPA@b5=@G6Ayhw$xr1zNK9aKgGz zj++NT8R&RfcSSgYei2x9kP1VT^8Q1*6Jt#B7}<_O$Zt3Z7;n?U@wa`uW`$=C(!1j0 zxHnOF3~~L+y`V;e7n{)*qmmfUXp5l&yzJT}F4o?F_y3~sCHdJ6uQn)N{JEKUK{$wn zM@$4~8`Igq87gUV&iS|gjPJmzNl$48uKzc-EL=CrN5Rc{h(_c#URJC@Om{z-TXGKn z=m;(<%W?uicS!S&+$uw1A^|`GY2JaI8UuetFw*QXtX7)$03fGuW%X8>hh`RBeLA~4 z(0yjwR60{l-U*1LT?Ao34vf`fZ@dd*$}`?eK5*K_fPDPBv6~{pu$}7PD=RiSaP0u) zy{p^D9zncyFz8f2ij0|M_KpZBt*;3Vh?aVTfaN4c0RJLt)X!f4{XBa(z|9YZ48nVn z{sR!+g71)syx}^{ItvSHV}br3ya2r2sxcLyc7(G!)V(a8F$^^`xFSGGHU}6CLxA=c zWCQH;;R~?xn(*cVt^#s?Xn~D#{%{3Z1Dq?8^Aj!P{5FxuDhL8d9Qiz&6p%P$6hwZ= z?R}9^@Op@gw=?KOe*OLyI7xhvve+O8^hy9_F&JJLFIp>T7d4q?FIrn@H@ue93}Smx zmCYdbP!LQ2h)n>94L+#l*$BjDzx7W@`jGS1=gclMvS#1ozwMHly@4@kAsR37SH_^l z(0B+4dUO=jR=b;AltS%A>jjdX03o#xb9k=&^a8(gekz zyh5pq&<>QnXu!He1D;am^xW)#L2&+GXlEl$D6xTafOUsR2|MUc_Dq}!Z@T5J@Qr=c zoZD{;{fF;fo&Nk!7dx8}nN9BFSh*+~*O~*+tqaw<-Q3tqFhA@eZIwHgoqgSJJHKc5 zZTAYSvwXg}Czw#>v**%;gbvP~HfvWY4)^Ya{CjJn9!vJ2Ela^7T9#m+SWn7LeLd?$lb)|iQ}s*bb`kZZTqRvyWZ+2AIUKH z?`%U!&nwSjw7&8AZy$E=tHrkyN5q?T;rM#-0b)Qb-q+8ybmirje%w@ijel&yl_#!l zr(`+Vdw*paKPo@dVRrK3#a6Wwv`KM;;_qC&9L67&<lVFXAe;p2NiWH-CGQQ zeqyVTZqT>_9{C}0#blj`QGYxn3c^bGS_du?;~Tsn&=ruQQe&GhsG9O-6!LAe9~4q`q~aM-`cA6cE6UHN$Jv6q#hV7O?+e3|EsyA>X@;Dn`c+*8$@>pF<)nRL+?nCIz$8!01*X9 zEn)v@IOp7mCJENN-fh(|tFCIsYT=Cqg3Fw#4S6CZtX`<%4JW;t_^qNKsCZTP$0yjx zhC%b|3~%^sEpmy3wQz~pf7K;oRKLtH0svC~ltA>E2O#xGqr@n)nderZmDcu#;uEEl z^L(vRGNlGKtd$?E-d(d*n8sB;OiRHLw+zf(SNlSukz1C-@K(@FF0&Uu#fZgB5(Y}c zIB1ZTiI@XEf_3r<0xVc}Wvk4R~kVnem_X{To)`BbZ8)*;i zB(+$v62b-Ik-_Ii+->^(n`P?)UV@8#h>iE-)IHNok}cdniWE>4t!?2n+R|2VMvwxk z%^9f*Z#*M;`86I}DqfSGWI-61D7Z@7G`urC!S6KPt14&^m<-gn4(UYO5KOmnE&~{z z=vUMuom1_cA-DNlwIxT5N2!pvoSW(w6Z8wcOk84_T&yevpmP zgE124(bg~7Md}1Y{Kryc=AQ$JB7;kRbO=u#0Tl7QOs&fw)G%QVSLI{2hc41R0J}38 zr4z&BT?fOZ)b@!~JvXd&XPmq~>fROrhP8cU;O#Dr&;i8z`GYU_IJdQTSNzNjSec7} zc=ywGRZ3FG5H#!Wom%F~P|_eD;1zK}0MTzz(R5Aa(#!kmru&#{LwyoVOuMjt$GZ#r zLd*mw^fSP?j`L8;1d1=nmIT9Q9t0@vl9poX%dFd^c9RGZEbFVNyX1cn2|>B}r%32Y zD{vj=IfaOtAErRiy4(+0EASc%4KJVl92~f+8tns-SG*ou7QY>IJ5yJ%fGdZ^7_sLE z;9Xc_bc2Ni`z{V|5p;UHJ!B^{0zB56#i^UZFY7wR@WXp167hlz|+B z)`Z?{SA|Rzwu+gk#NrlssRx{_#&>m1>eocN7#sWp?0x`SixsP7qRxJf^XW&3CWL&9 zlL#{(GZyaCEJj)RBMOd5iqHk(n?UbJ3?RMCjQv33HEupPZAS#eJgl8~s6V2$;nbBi zi-Y#e6vlue8**e0vpc?YVSF&)zeb8|I7ncF$Z9h--P+~iE3=m$Rz|9K)0yn=U}dXP zL%hq__`1nS?x$nmUN0QtEjcFI>68gJkaCW~T{B(#J@m@&sEg2O2l@+al{IN1PdfX> zfYbu2P

t^;I%ptIg4*50S@{cuqyTcVVm>To_$8azN0$`ngFuh&_-dx&qlO7)>Q2gnRs_2B%$K108`8| z2>x)j31p%po)WvIv8?o}`~=WeT1tXkVPHxW!BIHByvV=U-5}3}{ulm9HuYXkXJ>9Z z>?7hAVeO^UFrk-V5p|i-$~PwbG$Fe~kX9Z6yT<_^{ysHCW_xtLP>(ULDUOn>{;|n5 z<>41T&)}LuVnzbFrmlanT9*@F@$WJYZ*= z6U`&_LfIr=%po`iC>AR0Ekh*0F*%3BSkv-^BMk-<yEc=hZTwtPt7IJv}g?C3;C)g|;M$(KMsN!Bh+7Yag>4 zgWS5MrkK-lx z63zAybx`37yJ>GA_^jkQmtnydXaTa^=VK6`GcY;hC^f+3EtL28G+_!iUIglMX|%85 zA{hBO6p}_|7WZw-u#@U8=gnT6YLa(Nf59YQB?FV*l3pb@!aCX>IW=wfm9x~KYabA^ z-Z&gY$*V<_hZzV%naLD1Ufd|+iLD%8r@;&G4~YqN0T&r7Y?c&B663iBQ!1#EX%Nya zqET?vhViNyf?3G3FnuPR+~(vTRPtIR|7byX&E%!D3}bl>nI&VG2m!_f>Gd%T1(2|! z`~Vbc*3{ZFnp)_Zpp!=CTtkS(oA$oe+Fi_%Xp=m$s~_Dhgpf_4M|jYGiW)ZE5re>N zAMA&PEY%UI@-&eO5YJwF+EXlt;V~{itTU$Bf)9z%4Que%af;J^MR(g*k%&25i=@7O zD4}Q)-kHjt$0QU1iw4OHu#qE`e|nb8Y`~!Yy#6kIMj9*Q)#bW-MCl#8v@3+N*uvCB z%}OdVsQe=hD*y3KDt`cGKt#7^kzrU?O1@|uVYY76IC@`3O0X6hM+DZBo>lv~F)IY) z@SZLX0OfvoL&o-~*L*$SL!e_)oEVEUcm%CvyOG7&km7_gljfilrzZ1Wf23&b2KI^m z%ob#F*l^a+76i(P#w`dA+np7Y>jxplgZ4W28ljwSUw>0n*OBo%bDJ>0u>Xz$j%bAe znrQK<^c4}klF&Wmj{eHqk_GQ^_e91^t8{F#bRoN$Jn1=OrS$>x;DkoAg;~d7OyiC# z8(0k&N##xQle6xk?oU0otJobxwCXy4GA;gns}KiH;YE5f~4jPnaOfI zCoUjdZkQ~qre^1>6JWCR<=4l=`l#FM={au(bc`q1FYUDsKo6Q~U7>_sgcXIwP!TKO zyMwqHEsaZ&c^g`EQQeQ*Wg+h%m!Y2ny}k(n1Wx52w$LovS@?=Xlec|y@K$Sh5}b8k zAk=qAiPR{gw*9}$sBr>4nR_k3x#RUl?K@iS6yA>YjE)3JZ!*)kpi};X zQ<(G;JjBGy^-Vk$9?JrjM@k`Gx)tTqg5~l2I?ID&N#Nr`cWs>%c2svZ8v7y2;SqGn zPB$Sar@l>=-fJ*Ew@eJ2#v=1C4QB1ocK8Qe3_{VC8F=T-pm`yJ(GhYZS{nBe!AO?D z`U}tgYsUS0ZVRC{IOyAq2mgZe#e~yng96qU-p-~q*%sDhOGbhXr@e&+8fK}!j0555fWg#Z1DwxHy@&%&Y!jiVaf5y2E)#3! z3HAb9H)Z8Blh;3?r5yd-TheDox8>7c>~b+F3sZamT@)D_i|TNu36e#jItOnHx9=d*!$Ab_H;f7o@LwdM zBDHc_`tZTYBz|AK#Dl8 z(xWu9*#rIcOpn@)AOwR152ExCi8%YlkTN!O>2F1?Ldw)(Nb}FW_7pY-x|l>m+hH71 z4HB(OBsK%l&R~elM6rX0P=ecEeC=YG*3o=}gS$8e<{MX}()gbyb9j|oWcW;ndppjM8KMWlY-{!=?VC$KHF=uVEpZ;k6Al-;mUAa!y#r?kEQai`G+bGLLv&aMI5iCBw0+>`Wz1=l!JHPOsqo#jwU*QB zfF3{I5D8a0{!2V5xJ^7IXp|)eHoEc9CU0=#A!Fb&UTb5ZjyBUe?~K&0vZt2eb;fiK zLhF-7j!!g%##$gQE2`cFQFg$O{L2WU9paXQ00;?DV#q`G2oEu6=|5L&mzjl#siUBWMn%dHC~))=IJ$2%X34m8@Hz(hhzqq40~Q*` zwn5_Lp%?0L{?mQ0A&b)=H6Li%joFfG+lQ$JmUAIY$)Pb!=^xWMW723I&Xo)R+h*E# zuLQaQ;tL?xDs13}b3K%NL#&k{z5sc^&0&XhX?_XU{%)rNlUKLHKu6^o+)OZ?L)-JL zVn!Zr+mVN8Y*768O>@{>R?d3k29W(gPBQ$w^xdcpkfDNFciXhGT1`9M*Z)ja zxh6uc&lb7Bn2_lX8&Z;~lbO0*6AihzZPJlnSI1fyX>^T?SBr$Itj7BO-vTM&MQPzV zeP%LBvqM-+3>0>w->@0`{#G4Io-ibm-EKnMn)Rhln7h1_@N0kvO3iE|hMvay>D)|| zZ6iY901~+wO0*thRBmQS`8S49xj~NaiO!&MlZ^2>(-X5)lT3HDH7;8w(d|MpqGDmY z;$B$CxwpBB3RSMm9qb0&&Xgn*F9geVQW0Y&@A4H`FaU%+otA+Gz*hLwU;$_ZD-9L^ zgotq%3ji<+(E)FHzRt;+$+&WE7-UrM=hne!_;O{D@ReW->f-cMQC?sf4jr$x*bv-! zEyRY9_QV7W^rs6DtJRn*FrGTX#57cL3;HcVIl`|PsDJ67^KTcXi-wpg9%uLAT!TRu zYl_im8W19i2R z0nWW)U!JJ(Ro7`Bvh&rP7~N?aPt;=|%J_u8Ruqx%b6#f_kO-PLc_tT#f#y-L zjPxyn=D#FDCXLqZ(_^v~T-d>z1AlVcqS9y&Z;47#L=xCi_mLKf98fXs;2AQN z03AfT?9O*HkUi5u+8?`_A8)S0*p9Sg9Od#n1P8H;7 z13baRe)+;w8p*_dF?rfd>=%=#4Y6O|3OzP?`z;*hel3Em5)tHnHAR)oMWXj3DD0(A z>$5;!Ko~R{5$9?)37iqu&Vp^!Ym~fz!ZjV$5{P|*`sZfpd{{eEr%V##a@Gem%8e}t!}V~Way>M8IiDN?clC5{M+mN0 zU0r*d3V?=f_M+Tf0HU>TFh1XtqwWVGe|!isKvYpbbGjGV=zy`86J7=f%pb?6pQl}_j zxF}d)14IT3>|Y6UbXVFr<9sDVW>MP>*%0p5a)E(ey~W>pm2>|ON!FMS0O~y#w`#fx z<}sAQ8OY=3vkpP@zb4~F^+{Ee&Zo&YN z2sf$ce)(?@oM@lO8x!I%_>UtXD$t5}%K>*)#I}Y=1GNu3&t6clZHAqxNz!aUf?}Xm z`!z#B`=pR6?K>uEqac(c2YLsaEs<7_-WhYn$XHfzsLWR}0?F2k z5e|f8>&UERAg)o^!Vt(4xTwj`C>|gFyIGc`eZmjcHKg0K^kTAVQS1kkz71d#$o9bI zwl@&T_L$_4Boz6-S(9cRlk=?*>Rg-YbR_)B&jkE;A>eo2715_Y{cT)37b#X;6(VMl z1RS1u*j4p=4QVA1ZPEO&sVLYtps?-VL{*mY53m50IAZV}f8DZZjPeO$8N1IZ7#iG( zCjSGsK*UEk=YCD1C>jD%%b+l>)!fbbv~~ABL$;;CeAbk0$(YZWY)kb%gZa!5NQ%s7 zD%(fk;@Xma)TovN0kRGdjZ)$slmv9s=CGbfXJRl^A|Lh4*2=mp5`uCWWu5sZ$`F74 z6=cB>e~v^MZF+_V_LZ*lH47mu_cG4pS7)ML#m)Pl9=$Q+-A0K093~2-Ih6ps+vL|% z2{_l8c0KxnFRX2~|Z+xC@j; z__x1E-m7D5x9`lYtb?@+C11aUhEu=>h+*EECdchDs3kjKSa?~o686nTch9+HYkS+j0zNZ+% R9$C;tkpBPV&$vGS{{bw9N@4&2 literal 0 HcmV?d00001 diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..6eb867e --- /dev/null +++ b/src/App.vue @@ -0,0 +1,55 @@ + + diff --git a/src/assets/css/app.less b/src/assets/css/app.less new file mode 100644 index 0000000..dec6de5 --- /dev/null +++ b/src/assets/css/app.less @@ -0,0 +1,567 @@ +@import "../theme/base.less"; + +*, +:after, +:before { + box-sizing: border-box; +} +html, +body { + margin: 0; + padding: 0; + color: #595959; + font-size: 14px; + font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", + "微软雅黑", Arial, sans-serif; + color: #595959; + background: #f0f2f5; + + //字体 + .text { + &-2 { + color: #8c8c8c; + } + } + .text-center { + text-align: center; + } + + a { + color: @--color-primary; + text-decoration: none; + &:focus, + &:hover { + color: @--color-primary; + } + } +} + +.iconfont { + cursor: pointer; + font-style: normal; + font-weight: 400; + font-variant: normal; + text-transform: none; + line-height: 1; + vertical-align: text-bottom; + display: inline-block; + fill: currentColor; + width: 17px; + height: 17px; +} +.icon-svg { + width: 1em; + height: 1em; + fill: currentColor; + vertical-align: middle; +} + +.el-badge__content { + height: 16px; + line-height: 16px; + padding: 0 5px; + border: none; + background: #ff4d4f !important; +} + +.ele-badge-static { + line-height: 0; +} + +.ele-badge-static .el-badge__content { + position: static; + transform: none; +} + +//alert +.ele-alert-border.is-light.el-alert--warning { + border: 1px solid #faad144d !important; +} + +.el-alert--warning.is-light { + background-color: #fff7e8 !important; + color: #faad14 !important; +} +.ele-alert-border.is-light .el-alert__title { + color: #262626 !important; + font-size: 14px !important; +} +.el-alert__content { + padding: 0; +} +//menu +.el-menu-item a, +.el-menu-item span, +.el-sub-menu > .el-sub-menu__title a, +.el-sub-menu > .el-sub-menu__title span { + color: @dark-text; + text-decoration: none; + margin-left: 5px; + display: inline-flex; + width: 100%; +} +.rr-sidebar-menu.el-menu--horizontal > .el-menu-item { + padding: 0 12px; + height: 50px; + line-height: 50px; +} +.rr-sidebar-menu-pop-dark, +.rr-sidebar-menu-pop-light { + box-shadow: none !important; + border-width: 0 !important; +} +.el-sub-menu__icon-arrow { + font-weight: bold; +} + +//pop +.el-popper.is-dark a { + color: #fff; + text-decoration: none; +} +.el-popover.el-popper { + max-height: 300px; + overflow: auto; +} + +//表格 +.el-table thead { + color: #303133 !important; + th { + background-color: #f5f7fa !important; + } +} +.el-table__fixed-right::before { + background: transparent !important; //element-plus表格高度动态计算bug,强制下划线不显示颜色 +} + +.el-form--inline .el-form-item{ + margin-right: 16px !important; +} + +//分页 +.el-pagination { + margin-top: 15px !important; + justify-content: right; +} + +//tinymce +.tox-tinymce-aux { + z-index: 3000 !important; +} + +//弹窗popover +.popover-pop { + padding: 10px 0 5px 5px !important; + &-body { + max-height: 255px; + overflow: auto; + } +} + +//弹窗 +.rr-dialog { + min-width: 600px; +} + +.rr { + display: flex; + flex-direction: column; + width: 100vw; + height: 100vh; + overflow: hidden; + + &-loading { + z-index: 9999; + } + + //全屏页面渲染 + &-fullscreen { + width: 100vw; + + &.new-pop-window > div { + padding: 15px; + margin: 15px; + background: #fff; + border-radius: 4px; + } + } + + &-error { + display: flex; + justify-content: center; + align-items: center; + position: absolute; + top: 0; + left: 0; + width: 100vw; + height: 100vh; + background: #fff; + z-index: 1200; + } + + &-drawer { + .el-drawer__header { + color: #595959; + font-size: 15px; + margin-bottom: 0; + padding: 13px 16px; + border-bottom: 1px solid #f4f4f4; + } + .el-drawer__body { + padding: 15px; + overflow: auto; + } + } + + //顶部 + &-header { + background: #fff; + padding: 0 !important; + position: fixed; + top: 0; + left: 0; + width: 100%; + z-index: 200; + &-ctx { + display: flex; + height: 50px; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08); + &-logo { + display: flex; + color: #ffffffe6; + background-color: #191a23; + font-size: 19px; + font-weight: 500; + letter-spacing: 1.5px; + width: 230px; + height: 50px; + overflow: hidden; + white-space: nowrap; + justify-content: center; + font-family: Avenir, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, + Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, + Noto Color Emoji; + align-items: center; + position: relative; + transition: width 0.3s; + padding: 0 15px; + + &-img { + width: 32px; + height: 32px; + display: inline-block; + flex-shrink: 0; + &-wrap { + display: flex; + &.enabled-logo { + &-false { + display: none; + } + } + } + } + &-line { + display: inline-block; + width: 10px; + height: 1px; + } + &-text { + display: inline-block; + line-height: 1; + overflow: hidden; + text-transform: uppercase; + font-weight: 700; + font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, + "微软雅黑", Arial, sans-serif; + } + } + } + } + &-body { + flex: 1; + display: flex; + overflow: hidden; + } + //左侧侧边栏 + &-sidebar { + margin-top: 50px; + width: 230px !important; + min-height: calc(100vh - 50px); + overflow-x: hidden !important; + transition: width 0.3s; + z-index: 120; + scrollbar-width: none; + + &-menu { + transition: width 0.3s; + overflow: hidden; + &.el-menu--horizontal { + border-bottom: none !important; + } + .el-menu-item { + transition: none !important; + } + } + + &::-webkit-scrollbar { + display: none; + } + + .el-menu { + width: 230px !important; + border-right: 0 !important; + &-item { + height: 45px; + line-height: 45px; + margin: 2px 0; + } + &-item, + .el-sub-menu__title { + background: transparent !important; + &:focus { + background: transparent !important; + } + } + &-item, + .el-sub-menu__title, + &-item-group__title { + font-size: 14px; + } + .el-sub-menu { + .el-sub-menu__title { + i { + color: inherit !important; + } + } + } + + .el-menu-item, + .el-sub-menu .el-sub-menu__title { + margin: 0; + height: 48px; + line-height: 48px; + } + .el-sub-menu { + .el-menu-item { + height: 45px; + line-height: 45px; + margin: 2px 0; + } + } + + .el-menu-item [class^="el-icon"], + .el-sub-menu > .el-sub-menu__title [class^="el-icon"] { + font-size: 17px; + margin-right: 0; + width: auto; + } + + .el-menu-item a, + .el-menu-item span, + .el-sub-menu > .el-sub-menu__title a, + .el-sub-menu > .el-sub-menu__title span { + margin-left: 10px; + > a { + margin-left: 0; + } + } + } + } + //页面内容区域外层 + &-view { + flex: 1; + display: flex !important; + flex-direction: column; + padding: 0 !important; + border-top: 1px solid #f4f4f4 !important; + &-container { + margin-top: 50px; + } + &-wrap { + display: flex; + flex-direction: column; + } + &-ctx { + margin-top: 39px; + padding: 15px !important; + flex: 1; + //页面内容区域 + &-card { + min-height: calc(100% - 5px); + border-width: 0 !important; + } + } + //页面内容顶部tab标签栏 + &-tab { + background: #fff; + width: 100%; + height: 39px; + box-sizing: border-box; + position: relative; + overflow: hidden; + + &__header { + &:hover { + background: inherit !important; + } + } + + &-wrap { + position: fixed; + top: 50px; + left: 230px; + right: 0; + display: flex; + background: #fff; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08); + z-index: 100; + transition: left 0.3s; + } + + &-ops { + width: 40px; + flex-shrink: 0; + background: #fff; + display: flex !important; + align-items: center; + justify-content: center; + border-left: 1px solid #f4f4f4; + cursor: pointer; + text-align: center; + color: #8c8c8c !important; + font-weight: 400 !important; + font-size: 16px !important; + margin-right: 5px; //element-plus el-dropdown自动定位bug bottom-end指令不生效,临时采用偏移5px + } + + .el-tabs__active-bar { + height: 0; + } + + .el-tabs__nav { + &-prev, + &-next { + .el-icon { + display: none; + } + } + .el-tabs__item { + padding: 0 15px !important; + border-right: 1px solid #f4f4f4; + user-select: none; + color: #8c8c8c; + &:hover { + color: #262626; + background-color: rgba(0, 0, 0, 0.02); + } + .is-icon-close { + transition: none !important; + &:hover { + color: #fff; + background-color: #ff4d4f; + } + } + &::before { + content: ""; + width: 9px; + height: 9px; + margin-right: 8px; + display: inline-block; + background-color: #ddd; + border-radius: 50%; + } + + &.is-active { + color: @primary-bg-light; + background-color: @primary-bg-light !important; + &:before { + background-color: @primary-bg-light; + } + } + &:nth-child(2) { + &::before { + content: none; + } + } + } + } + + .el-tabs__nav-wrap { + padding: 0px 39px 0 40px !important; + &::before, + &::after { + width: 40px; + height: 40px; + line-height: 44px; + text-align: center; + box-sizing: border-box; + font-size: 16px; + color: #8c8c8c; + transition: background-color 0.2s; + position: absolute; + top: 0; + left: 0; + font-family: element-icons !important; + font-style: normal; + font-weight: 400; + font-variant: normal; + text-transform: none; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + cursor: not-allowed; + } + &::before { + content: url('data:image/svg+xml;charset=utf-8,'); + border-right: 1px solid #f4f4f4; + } + &::after { + content: url('data:image/svg+xml;charset=utf-8,'); + right: 0; + left: auto; + bottom: auto; + height: auto; + background-color: transparent; + border-left: 1px solid #f4f4f4; + } + } + + .el-tabs__nav-next, + .el-tabs__nav-prev { + width: 40px; + height: 40px; + line-height: 40px; + text-align: center; + box-sizing: border-box; + font-size: 16px; + color: #8c8c8c; + transition: background-color 0.2s; + z-index: 10; + + i { + vertical-align: middle; + margin-top: -4px; + } + + &:hover { + background: rgba(0, 0, 0, 0.02); + } + } + + .el-tabs__nav-prev { + border-right: 1px solid #f4f4f4; + } + } + } +} +.ql-toolbar.ql-snow{ + width: 100% !important; +} + +.el-form--inline { + .el-form-item { + & > .el-input, .el-cascader, .el-select, .el-date-editor, .el-autocomplete { + min-width: 200px; + } + } +} diff --git a/src/assets/css/header.less b/src/assets/css/header.less new file mode 100644 index 0000000..cf6cc8d --- /dev/null +++ b/src/assets/css/header.less @@ -0,0 +1,101 @@ +.rr-header-ctx { + [class^="el-icon"] { + font-size: 18px; + width: auto; + margin-right: 0; + } + .rr-header-right { + display: flex; + flex: 1; + justify-content: space-between; + overflow: hidden; + align-items: center; + > div { + height: 100%; + } + &-items { + display: flex; + padding: 0 8px 0 0; + + > div { + padding: 0 12px; + height: 50px; + line-height: 56px; + cursor: pointer; + } + &-icon { + height: 50px; + line-height: 56px; + display: inline-block; + } + .el-badge { + line-height: normal; + } + .el-dropdown { + vertical-align: inherit; + .el-icon { + .icon { + vertical-align: bottom; + } + } + } + } + &-left { + display: flex; + overflow: hidden; + align-items: center; + flex: 1; + box-sizing: border-box; + + &-br { + padding: 0 10px; + overflow-x: auto; + overflow-y: hidden; + flex: 1; + .el-breadcrumb { + white-space: nowrap; + } + .el-breadcrumb__inner, + .el-breadcrumb__inner a, + .el-breadcrumb__item:last-child .el-breadcrumb__inner, + .el-breadcrumb__item:last-child .el-breadcrumb__inner:hover, + .el-breadcrumb__item:last-child .el-breadcrumb__inner a, + .el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover { + color: #8c8c8c; + } + .el-breadcrumb__item { + float: none !important; + display: inline-block; + } + .el-breadcrumb__inner.is-link { + color: #595959; + font-weight: 500; + } + } + } + + .el-space__item { + &:last-child { + flex-shrink: 0; + } + } + + .rr-sidebar-menu.el-menu--horizontal { + display: flex; + span { + width: inherit; + } + .el-sub-menu { + .el-sub-menu__icon-arrow { + margin-left: 3px; + margin-top: 0; + } + .el-sub-menu__title { + padding: 0 10px 0 12px; + height: 50px; + line-height: 50px; + } + } + } + } +} diff --git a/src/assets/css/setting.less b/src/assets/css/setting.less new file mode 100644 index 0000000..f3758db --- /dev/null +++ b/src/assets/css/setting.less @@ -0,0 +1,161 @@ +.rr-setting { + padding: 20px; + .el-divider { + margin: 20px 0; + } + &-wrap { + .el-drawer__header { + color: #595959; + font-size: 15px; + margin-bottom: 0; + padding: 13px 16px; + border-bottom: 1px solid #f4f4f4; + } + .el-drawer__body { + overflow: auto; + padding: 0; + } + } + &-title { + font-size: 13px; + } + // 主题 + .rr-theme { + .card { + width: 50px; + height: 35px; + border-radius: 3px; + margin: 0 20px 20px 0; + background-color: #f5f7fa; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); + display: inline-block; + vertical-align: top; + position: relative; + cursor: pointer; + //侧边栏 + &.side { + &::before { + content: ""; + width: 15px; + height: 100%; + background-color: #fff; + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + display: inline-block; + vertical-align: top; + } + &.dark { + &::before { + background-color: #2e3549; + } + } + } + //顶栏 + &.header { + &::before { + content: ""; + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + display: inline-block; + vertical-align: top; + width: 100%; + height: 10px; + background-color: #fff; + border-bottom-left-radius: 0; + border-top-right-radius: 3px; + } + &.light { + &::before { + width: 100%; + height: 10px; + background-color: #fff; + border-bottom-left-radius: 0; + border-top-right-radius: 3px; + } + } + &.dark { + &::before { + background-color: #2e3549; + } + } + &.primary { + &::before { + background-color: #409eff; + } + } + } + + &.mix { + background-color: #2e3549; + &.dark { + &::before { + background-color: #f0f2f5; + width: 35px; + height: 25px; + position: absolute; + bottom: 0; + right: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border-bottom-right-radius: 3px; + } + } + } + + &.side, + &.header, + &.mix { + &.active { + &::after { + content: ""; + width: 6px; + height: 6px; + border-radius: 50%; + background-color: #1ea4ff; + position: absolute; + left: 50%; + bottom: -15px; + margin-left: -3px; + } + } + } + } + //主色调 + .color { + width: 20px; + height: 20px; + margin: 8px 8px 0 0; + border-radius: 2px; + display: inline-block; + box-shadow: 0 1px 3px rgba(0 0 0, 0.1); + vertical-align: top; + position: relative; + cursor: pointer; + &.active { + &::after { + content: url('data:image/svg+xml;charset=utf-8,'); + font-family: element-icons !important; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + position: absolute; + top: 50%; + left: 50%; + margin: -7px 0 0 -7px; + font-size: 14px; + color: #fff; + } + } + } + } + .rr-theme, + .rr-other { + width: 100%; + > .el-space__item { + width: 100%; + } + } + .rr-switch { + justify-content: space-between; + width: 100%; + } +} diff --git a/src/assets/icons/iconfont/iconfont.js b/src/assets/icons/iconfont/iconfont.js new file mode 100644 index 0000000..78f1f33 --- /dev/null +++ b/src/assets/icons/iconfont/iconfont.js @@ -0,0 +1 @@ +!function(c){var h,l,v,o,a,i,t='',z=(z=document.getElementsByTagName("script"))[z.length-1].getAttribute("data-injectcss");if(z&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(c){console&&console.log(c)}}function s(){a||(a=!0,v())}h=function(){var c,h,l;(l=document.createElement("div")).innerHTML=t,t=null,(h=l.getElementsByTagName("svg")[0])&&(h.setAttribute("aria-hidden","true"),h.style.position="absolute",h.style.width=0,h.style.height=0,h.style.overflow="hidden",c=h,(l=document.body).firstChild?(h=l.firstChild).parentNode.insertBefore(c,h):l.appendChild(c))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(l=function(){document.removeEventListener("DOMContentLoaded",l,!1),h()},document.addEventListener("DOMContentLoaded",l,!1)):document.attachEvent&&(v=h,o=c.document,a=!1,(i=function(){try{o.documentElement.doScroll("left")}catch(c){return void setTimeout(i,50)}s()})(),o.onreadystatechange=function(){"complete"==o.readyState&&(o.onreadystatechange=null,s())})}(window); \ No newline at end of file diff --git a/src/assets/icons/svg/button.svg b/src/assets/icons/svg/button.svg new file mode 100644 index 0000000..055dca8 --- /dev/null +++ b/src/assets/icons/svg/button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/cascader.svg b/src/assets/icons/svg/cascader.svg new file mode 100644 index 0000000..e256024 --- /dev/null +++ b/src/assets/icons/svg/cascader.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/checkbox.svg b/src/assets/icons/svg/checkbox.svg new file mode 100644 index 0000000..013fd3a --- /dev/null +++ b/src/assets/icons/svg/checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/color.svg b/src/assets/icons/svg/color.svg new file mode 100644 index 0000000..44a81aa --- /dev/null +++ b/src/assets/icons/svg/color.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/component.svg b/src/assets/icons/svg/component.svg new file mode 100644 index 0000000..29c3458 --- /dev/null +++ b/src/assets/icons/svg/component.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/date-range.svg b/src/assets/icons/svg/date-range.svg new file mode 100644 index 0000000..fda571e --- /dev/null +++ b/src/assets/icons/svg/date-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/date.svg b/src/assets/icons/svg/date.svg new file mode 100644 index 0000000..52dc73e --- /dev/null +++ b/src/assets/icons/svg/date.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/earth.svg b/src/assets/icons/svg/earth.svg new file mode 100644 index 0000000..7ed194f --- /dev/null +++ b/src/assets/icons/svg/earth.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/extfullscreen.svg b/src/assets/icons/svg/extfullscreen.svg new file mode 100644 index 0000000..7952086 --- /dev/null +++ b/src/assets/icons/svg/extfullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/fanyiline.svg b/src/assets/icons/svg/fanyiline.svg new file mode 100644 index 0000000..3c27794 --- /dev/null +++ b/src/assets/icons/svg/fanyiline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/fullscreen2.svg b/src/assets/icons/svg/fullscreen2.svg new file mode 100644 index 0000000..fb14cb7 --- /dev/null +++ b/src/assets/icons/svg/fullscreen2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/gitee.svg b/src/assets/icons/svg/gitee.svg new file mode 100644 index 0000000..85e2079 --- /dev/null +++ b/src/assets/icons/svg/gitee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/indent.svg b/src/assets/icons/svg/indent.svg new file mode 100644 index 0000000..c636af5 --- /dev/null +++ b/src/assets/icons/svg/indent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/input.svg b/src/assets/icons/svg/input.svg new file mode 100644 index 0000000..ab91381 --- /dev/null +++ b/src/assets/icons/svg/input.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/morevertical.svg b/src/assets/icons/svg/morevertical.svg new file mode 100644 index 0000000..cb53c75 --- /dev/null +++ b/src/assets/icons/svg/morevertical.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/number.svg b/src/assets/icons/svg/number.svg new file mode 100644 index 0000000..ad5ce9a --- /dev/null +++ b/src/assets/icons/svg/number.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/outdent.svg b/src/assets/icons/svg/outdent.svg new file mode 100644 index 0000000..6123c75 --- /dev/null +++ b/src/assets/icons/svg/outdent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/password.svg b/src/assets/icons/svg/password.svg new file mode 100644 index 0000000..6c64def --- /dev/null +++ b/src/assets/icons/svg/password.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/radio.svg b/src/assets/icons/svg/radio.svg new file mode 100644 index 0000000..0cde345 --- /dev/null +++ b/src/assets/icons/svg/radio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/rate.svg b/src/assets/icons/svg/rate.svg new file mode 100644 index 0000000..aa3b14d --- /dev/null +++ b/src/assets/icons/svg/rate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/rich-text.svg b/src/assets/icons/svg/rich-text.svg new file mode 100644 index 0000000..76c45bf --- /dev/null +++ b/src/assets/icons/svg/rich-text.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/row.svg b/src/assets/icons/svg/row.svg new file mode 100644 index 0000000..0780992 --- /dev/null +++ b/src/assets/icons/svg/row.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/select.svg b/src/assets/icons/svg/select.svg new file mode 100644 index 0000000..d628382 --- /dev/null +++ b/src/assets/icons/svg/select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/slider.svg b/src/assets/icons/svg/slider.svg new file mode 100644 index 0000000..fbe4f39 --- /dev/null +++ b/src/assets/icons/svg/slider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/switch.svg b/src/assets/icons/svg/switch.svg new file mode 100644 index 0000000..0ba61e3 --- /dev/null +++ b/src/assets/icons/svg/switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/table.svg b/src/assets/icons/svg/table.svg new file mode 100644 index 0000000..e806845 --- /dev/null +++ b/src/assets/icons/svg/table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/textarea.svg b/src/assets/icons/svg/textarea.svg new file mode 100644 index 0000000..2709f29 --- /dev/null +++ b/src/assets/icons/svg/textarea.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/time-range.svg b/src/assets/icons/svg/time-range.svg new file mode 100644 index 0000000..13c1202 --- /dev/null +++ b/src/assets/icons/svg/time-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/time.svg b/src/assets/icons/svg/time.svg new file mode 100644 index 0000000..b376e32 --- /dev/null +++ b/src/assets/icons/svg/time.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/tuichuquanping.svg b/src/assets/icons/svg/tuichuquanping.svg new file mode 100644 index 0000000..812822f --- /dev/null +++ b/src/assets/icons/svg/tuichuquanping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/upload.svg b/src/assets/icons/svg/upload.svg new file mode 100644 index 0000000..bae49c0 --- /dev/null +++ b/src/assets/icons/svg/upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/logo.png b/src/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..30a7fa5622d455d54af9aba1353ee57ef0e8728a GIT binary patch literal 2004 zcmZuyeK=HU8$UChI1|G#zCY?4zu+5ud^2cN~)2|)87e&5SDUnYr zV%mQALEgkz#-P*~5@ph#(Z&qaL&kS8M|Z)VtTJ4Iy0G zZv`Ws{Fb8@CQN}VJ`kc$gty<7RtqWRM+B~;C+bfV;fezXslha+AS+5(a|Oa)KYRr1 zlPEMZ|57=fDX3O;G_B?EP!VG_yF-V7hZ8s{zb-8g7jBc^?;Mm@#Ms4Of-sLi*{3h{ z%yIJeswyZn`+I}RmW8Jm&Ok&FjMQ<=6pBh8HV@V2m%UmPJB;;Bq4Tpufq;`I}5nc$olb?D-W$UKUwp)SwblvQ^iiO zIXT@3r9>}L_ZgFi?ky?l4FXwGZOuH1G6e>n0~7wl%r|sN&^GN8=ON6`?WtQP2=h~B zhX}uASDH^@gZw#1WiMhpG-WdUzB3W#z*D|k00x%_Wp1?EN;JdKfzR9nvd@=w@1>w@ z^7iSQdIVhS;FgK;c=dqf<+U8kwwyZI%Gh*+UT{D>CU|DlytZ!VcI*)MF&@eig!(TI z0+bBRl0Ea_|IIa(HlV~m!C_hZVdUrZ8cpr6l;nQ(58I!ydBuWcIp;kJ)h(b_t{M_14}i+52krRft&7t71_g zjA-tpyy-G!3Vgr+!yJSPs{~iXJ>l{p?7~>N>otHaw6@3ZQ|9kSgf$`LtrB6{RHNAO zbR7LobM)JVM4w3f_(K}SRdC8+v&Y0T?M`!Y!uzHCuH@gfQ$NRJS+ZJh08D#NSe+ID z&ofoXtdXvjbLgDa)ov8U(z+aA{$#>Dc?LhQt+QfUKHkTI@^!lSawt}up8(eY#U7+?&qZeQ!sndQyoq#Xo zHgKp2g+{n!_7Q+Sz!fo4AxyLAzlUA-{cJnIp)dM81MvUm{3G|>AOSk(;{FlE&thZY z5%AgBOV(0whwWiQ##spSEVmyd6YyAS1NQgfbrNIMS-`)$_jxyvj&W7*(2Edep!O_O z7xZ_gwO8?RA{=J-Lg$c$;|9!?KDzb@fOFW~F9g&XApLTHLBP*syTp_N>ckRfEm?u$ zBvPHOxhN5!3&^#77XZ+G$`qKh#kcyT#vmBorqn4wPb0sjI2Rr&WkrnI!-!S-g;uEs zLTAU5^z8oWL><(nc;c~t7_k`6?-?7pdulm($bc_ax2|g6{Gxduy@2a@rSD>~;wv5T z?8^kk^><-*tKmZiy(=!O9%xZaa5pTh zJ#5WcOZa|$D6)R2)lk{ey1Kpn!{mGaCHr^jnzX5+6J`R?Tic%$Oapp1XFM<34jARs zpC18K<$Sqzm=LIf`;dPofMlxoDf24*M*CGbL?wE0^!-7VG{2XrO}G1XCf8NU#zdWW zif+dTUR=*Lm#iigFpFG)1Y6m-i$SGNo>xoAxe!N1B@u_>V%>PCaeCx}6r@*l-q@Im zvU|r2Q)~(NOh|BVGO@n^Wm_LMpeX~vEUFB#1`X+!r!>q8G~$ok?c0L)!68YmhWzz3}R(vUo$aEXck|EJbT3bw_0Dd}c zHM2t>{@+I6ZFFL6Va3k<*h~w5`Yl~04N-K&+I@_kA6Kj>!m+jFs6VId<;#&Dxs9_y zl+@0C#gg_!@XK(_LoMQ?TqD&S5a^ySxdC+dPL^lk|CwGWJNE_In*>IIW}eM&fYSQ2 z5!GkFpdh)5z6OG=8sGSZQ&A+aIigp2zYj@$N~uXCZ~ZQdm?yz$iW8X4N`DRI4Uo03m=r=edIRi09F~W3jZ+~0A3VrFBLDyZ literal 0 HcmV?d00001 diff --git a/src/assets/images/user.png b/src/assets/images/user.png new file mode 100644 index 0000000000000000000000000000000000000000..eada854e242f2f05a29197696b77996457311e61 GIT binary patch literal 10885 zcmV;0Dtgt4P)l0j{2t!=+*KkfH-DQf*%ZSAg~ zZIvXr))fn`h$IjKVJDDfh5!Kq31m-Z?rito_y62Lkc1?&-MMq;X6AW(XcdW0{tZ%38q-Mt zE(Woah+F{De|X|=0G&kO0)S>ha9M z%?^qDkqEMyL@Wh>(j~d3+C+9H*0v`J(g(r?d%g2P6u(OnF#u-AItcNUPXJ{IPznt5 zg?*Cot9aU?M%_t*oQz6AHFp^zEFi=MKr~g2!HT&}hGi1hwlIhLcUwK4{V4H|+-58H_11BCDZ0%pVjOU;WUpkqkz8WHo_V0pOL zJV6SpyxAg(4>EU)aGDlqH=4C4I+WL0L| z3@$AQ=n{!uXGP()#gkL_XwiGk5oB4V`+Sy_NC6K3fI*8vQ=w0O1b9sl==J+1Tehpv zzKBiI3_)J2Xdj{1r#wa^J{~a|$&OJYfXKWM2>4!nV9L;zsD-IOfF=l1=+%R07j}E%%pu`AaNI^CC0!XiKlOOFOK=7hH$E@1DD^(JtaGy7uc;Sx#_&x28jHGAZB0!&_j(sHW zT=nI3sg59p4&O}#5;;IR>YDrv9t3I;*hlhgDIcrJWmOSmnS*#lyWSoN4p3hz`yfs<~x<}P!WRUJ3PNapx-LtP*TU>KmZZ`l9z4% zuULB3K`E(akR$L*yUi>es+0W_6M~#L&mn%9Oj(ybUP*y{A%G|X!F;>Tv_@`#VnUDt zhkI4>u#?=OO3E7$0fg;nHqFl)kIix-B|AZq$7JOUPf}Jm2q5CJylj)K8Njj<U}l?w!KM{7v3e-Z)N5kR;*+FHO-5k#u8Zq`{!l7*yY4{cJQ39Cz`7A zQ4yrj>3Nojo|3_rq=+N}F+l(kpUcZOJsqj=hzZhlc@1Dm@_vr+q1Tb$ZK96mRA_HE z3$0wL*y6W9htR>KH;QgQ4hb}l^f4Cnv#E@Swdj31tD#vpW;CZC5tn19;d`j69)1Fv z6X_*B5fh}Kn)@Jmvs3VapeJu(J;!`&Bq&5gkghucfeIo~I2ihj77kQQNwhv+@ zAMjru?(Mr_6Qt1T{ax~^bD<-M%3g?b|luhS>QKE92#p+k!mK%$s65 z6pF}@36fv!ehLwv4MnKd+T;W_Z=B&@J(>kRrVqX(Qn}FVpB8KUysUNmhKxn#Cd1h| zvDT$V`9$>ek{ru(q1YA@L8O!tt3GuH5lsw5sFvEy@qJX3$?u-4gijO@zY*F3S1FRF>N zAIKwoBe-})2-2;;$&^)GG-}Cg0d+oHSJ{F$}?vEq0svqG0WU5@fKYvrh{Y zuRqUUba^n~V)1>T+1G?(eC~rs1lR7NSMRJCcGcina)po%ACw^Z)$T74@!D7n2(`() z)c;9QR$!+h&l_j>F4AVc*&p;5E!LRTrk-C^mUe4=Fo?Btz2p%FF#0l#KHy@Xot2f|>EmMn1)9;QO7D^5P0=#0$0O!{S zB*qYLfS{9a@q0id)nw)lB9aWaao8_G{#bh0G$JjnQtQ~?!bMxd!EISk;kDtgaFW*s#D%kj5Z?#Ep3yu0Gwy%V z1FTV-d3Xo{3jE}}+#$~1koGx)6jpPO6TvKo9(_%+ptLPI| zzs^6NlC^s6m>*oDc(4>why=gN%Q3$Y5<&7E+$IE=t&nYss+sIBDV-TuqmBn+f-QWL zFJUqiHmBYE)q&Jm^A!!4LdpoBY>CZ$aZrL3I9&4pn6DMGOHnmu=sbQS_g6PVvCYa2 z)hV$vutW5UGed13?{*@xn?IcJtW_kO9B*4&n!mmJu-dhA0xn+@ZxR7$5( zdJtf1p3U52$=ibMbBFu4RXXs;eb1xIXO-k#MT&pBKI5}5#{K;I zNc*d~AImb6?wx3?>9(;4K?)t72MFk2YIYzJ+oZ}P)BI~y@z$z~A02$P=o1opU!f#p z@rEO&oXaAKhno8!;1BX_rq}u;NP)v$2!M;#>_8;8-NyZXmw~wHk@S_j4~eu%X!fgS zsTZk#Zr$+GRpb9#9d838b)wIHwA^m9%SWF6IG<>%Qb^{v4Z{BLM?m+d;~r`0 z)Te1;Mm%lS_-UTa+*O0&)I)lqgZq#GZjN*?stMp40k5^pC@M?8T~mjv5a6RcoB5U=1SxR1TLCcSs^V%SL~on!;-0TzNZG;* zed1!sSdZz8&RB{BcKxmeNKEJiKmql8KgfJ0+FHUY8&1?_w^@dtBFM7c+*ynPLaH>U zGEe$7XC!~9`dVLp+}HX9%wZ_I>A>4|grG3LKt!0Hmq>Dj$X@r4LBv-g0Y|NU?%-b7qa$y8*Z3*pi*e)~L7#!d=Iv{Q z!(Yr(E0)3R;&j6{uN?na+$*vKvooyk8G6V*$?|_E2;$`a1f-n=MIHIMJGkG*_kK3bQZZ`L(^M`v{y7E!(!&a*3K}C|>$?-4?^?5K=7aEOd$#!(Czn|6&j9c` ztvEMII8=3wH$Q%PR|H-r{bnbnWQBK@n*=vs^-3xEI}`3;(weakR%@#mHhpflS*|}x z5Kc2nqY%StWKJSP(x1!`HlX#CJ;_ zL$1(L>d8L4%{&p`BVswHhYueT_4fFV@83n^`Re#QH0nogz)^WolaoKPW(_r#CCqcl zVaxQQ()2sxgL#aGqB+~7!{tt2u1G@Hwz^h6-{<~PmP&2P9~ssS+lU$W%a->gcJ3<| z4t?r}fJ+tG00WH=>8iIc$Nn^--^TU!k3n`a<~!UA5%6QJkVEq0PVP7RSrSeqoGId) z%;Y%TX7R}CbwcB|YyfezBECeRM5++K;_Rowd*+HjkCI&o=q4w0pwp?i5Jq}cml&Lj>5WpK);NU(2fSY6qm`a4ilpv^cGQ+>yNhX^r4q=^uoC0Ef z@g}i(`*7mpmtLbaf&jqBSm1E4mJ+j6GPY$gBW47VmQ-oCWCLqeZ90f}d~+!^Zb}gY z%Acat9zp19X$IK{01012;B;omO%OueUbM_?z@b;D@(og7zbayD#Wu06(hcszX~cV{ z$nwh*M2PkX0-LbV>Df(0@y&XbIeK@~ieiS_ZKEjn4G`IbWSLrvsdFy|MwcS9nTm-c zfBSK2t2`*QRuOm`#{&sxoK1T4FT;Kw6w_kyZUY!(8PL2faXf(jtYKgnlZlKWzUlI^ zA`+S~4748=J;xitd%RQdH1dEt1SSO;)_}z5S=5;rK)nuFgN_-RJ>zt#1W^B0oAq1F zLsO~tR?QMYd;nljyQSgSch@ktg9WmM(V4Z#S9uD8rt*Sh1td<5n1w_7!aIeMiTqyYdll|yq~s%KpqE2!g|gBT1(HHvKH z*>zvKOj^VIn3Rj<00ikFOEaJIjJ}fT#(<_$uhkx$9p01;6<&SR=U`OjCxKI%LCOF? zQwQ!xutLrCsh)|d0$bz8tn4r!Y8RQaHRk4K=^5lJ07|$s(7^(+XqbxwfI;^rDi|&? z`o8JSHtWb3$&RB~TrDlJGSRii{)DnpW)+nN2G?&b$CK;hiS<01K+! zuL0uy3GYlV2QISszRuPMG?inf))?*a>c83PO}R>~_C;(L(d*JP$R7aU(TIhpv|}18 zR9%$S4lc*2Tz+bxPDLn`YT01-YdJ%juV5dNaHawYW5PxTg!VtGv^&?$jiI696Cx}vW- zjoQSR;OEj?ti=FS7!D|j(l%2c*mk+ar=o*RiGp0{cCL4)Y&#gxYZPP5!@_F!jfA)& zbVw4b7 z3s4u(6&1NPy1bGOGK<2Mn17&k82VFMV*#KVWRB4Zd*)d^nmQ1s23#c@*0@Z2>UmbP z*pk6Fyt{by0RWhw7U1Q!V_~X$o0TPvu9M|PD>Qi=F`GYXH)|?Ish8)qcAGh?n;=r@ z(S@NwlX$JN41CpPW^Zy&M8?o<;{5(2FIPlpLQMMkQCqUBGU-Ddvwp7bt)IJvbzpv{zl z(?U5V#lK^w$v;!e(T$aFySynSyS;kN&mMqKWY0EVDdG6-45G1{ZU-79-%Isu7|sgX zIvyG;R-BYOSe8~@?w-8iwg*A-t6X+unEV*ytP1f)q?Uz4xCR}P>h9Q31wg%w;0Y^N zbeKnb2}h{WKDlioQCzYl*ILk%AWqi|BxZ-)%G4@vtd8G(rPV8K1X&_koIr*SYN*JIP9m(n^!6UKDt1sE@P0{{y$7xX5ZRS&t z9;g0sf*|gX08mqRg#;S{b1j~d@p@rU4S-;nbbntLU`vYJ+JB|n6A${>ZnNCn{kI+j zDXjJ^BBVD$1yC#PuC=(!)AgjWs({f&r!j!#U%D-W4ihB2H!sKZW}gIEzN^6^8i%-| zgEldH-!z1)wlHGycrF0AMW*`W4)dVIg7J1(7f&DU?vo%VmRX+90O-2J9Oltked`eS z79&F!Mkgh)dwWIP@q0{{%B78Nm!yLKwbIsh_;|=27 zkxNM2o^^ia?IO-RD1GmGV}t`nponv9?naiuLS*0&kg--6LMDW*Gn2|^_t&Di&Dy#R<5Jn8^3b#b@u|s4we&aHp z?Gl-BiDGlC>_mj0BWTb3RT`(tHHqRGA3>kM88lSFs zlgFqjpQ4FRfc)qDAZOSaM?U%_NOGBVCe%`D%51aGV__(vkD0nf++4<`mT%Z=wn zkP@~ubpviFfCXzKWdmPe@|T}&;K#E-s=la40IWIW*VS$F7^V%DY}{b+>-BxJj)57A zCYkH{>eufQ>%=mP`y&ASB20yYra1x#Q;mU*HiO@6WaxY~Iqns4yTfnb_IUM|5CE$t z+f-)DpX@gCBmLPlAVJ=6_@@iNccuL%KLaB$UKiLo#mIN2>&0n6G&C-FA+|RLnDPp* zF13!=Coc~QAqXt!X54Et?23pWCuR|MApkB8L07T~09cUfryBjv35GzL9zm+b73*Jb zAwW=7>(@8$@fxz-gkzF{2o(WZZns(T25LRv3?g-0R_(cpL0S{4%4EB55ip?GFW>LJU!9*F(!etl{KO1N;vPN%BH_IIa!lVuMG&cT zp_5xl1Pj79A=#rh0tN>BV+`W)(J9a|N-wq!*Fyt{WEO$UL}ZcLBchuDZScbH5Z=iLcF*=iaHO4~Awt=u-rd>C^_ z->9m6k6<`d9{YIfUiSoO7jkC>Ypd<=(P=gtXWV`kdP4CtWP)@pv#Q-s0OD^#5v-*) zNFqN?ccEvv{GeF);g5LPnPe z_RDG`(UbNZ%k!bi42vMIRnQ2X-n$NnGI(1@-LBG4U@tyw58X;5H5}3BHPMCiQ0jup-$b^gRIi|P5iBH%B zIYAQcO+dIO97T!JHiKPPGK$@t&S1b6%;q*XSG%_Sk6l;SF^sd+H%4pZ^&f|3?jU5^1Ze#AxV@0{~-uGKVpWVpeI zroGG4(DZJ}O;vR*n=e0I&V z)3L^yYiGRFeBs0g6*=d70 zZ*LK%BygQ9Tw}MHu8tJ@C<)@42f%zCsq%RC%hazZ8pc#bd|}Y0>i3K4TOC3B8}+Fb z3ue9QoqG12vR*^I=g_;`R&9OI=nZrReWQ5p=nIRdWnCNb`SUh0x9DJCVNhS=8PEQ8 zi&xui)`*jBqaw)3rIxhJl9pQu@i8&=H51qm+6;^-x(tesCU-6KPp==>y@y6(N}GKsCetXe@KHoY`uCm zWzT|({yQR4_V$qg+7AY9InXX>{nl_ zlq9R{w%`Y$Ld8!uf=CLNJ3Dhl(rpKzu$KX$8XQhL6LY*KTmQQ350y=whbq_aSuWcJ zpkqhOT7UPP6**SZn66pL<*9FcyJTVY(Uz@Y?ad5;jr*oco{Y(>W@q638jmu`)_2hIy zc~V>12_gwCsOBC6gcrg!M$Y!rjK8nxoq;Qt{8sl-XHogGus0Wj=^t(#vtDY`>I!dH zKbYKD6NFG#Q||rmxXvO3^ur}K%fCXwBAhlcAxIZVoSrY^^*mzJFDo%J$6}Ur=km7J zt={o+RMkm(1xc8ebDNCXF$$Pef#ExcUgN$?3np!%OM0uj(Su0{djkr{UTdPWzY>vBOF$H@{fP3;wWQ^$szQESWd`!HCxCYj(X_(!n)_-B-sNDsQ;x zv9N6oXCR&4)+?rOa0DKRX)H*jXO`qzmPTr0sQnZnNUTXRiru(jjIJoA0qG6sSKD9S zX1B?dCwmG?rN2Qw6 z&XQs5K_}OIxTI?Naj)MUQVP8s*}UP}O~4+g^gWcygH_fguae|YoFJ0ILWk#50_t&D zd${1A-hPtdtzt7CQtY9yTX)UTveMlLR|l=mH+F<=?QGj^S4QJwe|^gw@2@@D;s`4H zyv%D#Cyt#R)K(;Gz z)UD4xy^zFZlkeU=YUnv3y-p5GSs0C@$@+~aIpR)`6Eg`H(UIMF&mP_5V^{5$>*^Z! z4AJRQe6zD}9XZT0TGn$HVT{ABrfu$qePzxMngrgLGA?~;$Mgx;M)lS#T>X8u_tS`t zRsJ7^TzaTmM!d^H0Ri+idwjp_<6ss2)^4->KlwDt zCrNcP$my;vtLAQH5SDj8m*}DW;N+B7BFku%53{7CC=jR){BW;NOq`mt22G3Cz$a9^T;oV2s+T*We% z*Y{s@a$Z!tPC+#ICmcb#o!wdc^i2Tt6aj=)$T=FYl6}KR00DLY;Bzx3Jo|C@z2n~_ zVF@BZx0aUbhSu`WBI5tVAIhW!y%8Xy-?mTCJ$)rEVU9pEPD$1;f0 zbpXSFU|84x0fzz5$$xkKP5QK*_z&9v=)}MA#NR}sCLrc0f>@7w-BFi|t538u7BPfe bcG3SIarqiwX literal 0 HcmV?d00001 diff --git a/src/assets/theme/base.less b/src/assets/theme/base.less new file mode 100644 index 0000000..83e8220 --- /dev/null +++ b/src/assets/theme/base.less @@ -0,0 +1,32 @@ +//定义基础色 + +//主色 + +body { + --color-primary: #409eff; + --color-primary-light: rgb(64 158 255 / 8%); +} + +@--color-primary:~ 'var(--color-primary)'; +@--color-primary-light:~ 'var(--color-primary-light)'; + +@text: #595959; +@text-2: #8c8c8c; + +//导航菜单 +@dark-text: rgb(255 255 255 / 66%); +@dark-text-active: #eee; +@dark-bg: #263238; +@dark-bg-active: @--color-primary; + +@light-text: @text; +@light-text-active: @--color-primary; +@light-bg: #fff; +@light-bg-active: @--color-primary-light; + +@primary-text: rgb(255 255 255 / 66%); +@primary-text-2: rgb(255 255 255 / 65%); +@primary-text-active: #fff; +@primary-bg: @--color-primary; +@primary-bg-light: @--color-primary-light; +@primary-bg-active: @--color-primary-light; diff --git a/src/assets/theme/index.less b/src/assets/theme/index.less new file mode 100644 index 0000000..1f9645d --- /dev/null +++ b/src/assets/theme/index.less @@ -0,0 +1,935 @@ +@import "./base.less"; + +//主题样式 + +//================= +.el-menu--vertical.rr-sidebar-menu-pop-light, +.el-menu--vertical.rr-sidebar-menu-pop-dark { + border-radius: 4px !important; + box-shadow: none !important; + .el-menu.el-menu--popup { + min-width: 160px; + border-radius: 4px !important; + } + .el-menu-item, + .el-sub-menu__title { + height: 45px; + line-height: 45px; + } + .is-active { + &.el-menu-item { + border: 0 !important; + } + } +} +//深色侧边栏 +.ui-sidebar-dark .rr-sidebar, +.rr-sidebar-menu-pop-dark { + background: @dark-bg !important; + box-shadow: 0 4px 4px rgba(0, 21, 41, 0.35); + .el-menu { + background: @dark-bg !important; + .el-menu-item, + .el-sub-menu__title { + &:hover { + i, + a { + color: @dark-text-active !important; + } + } + i, + a { + color: @dark-text !important; + } + &:not(.is-active):hover { + background: inherit !important; + } + } + .is-active { + &.el-menu-item { + border-right: none !important; + background: @dark-bg-active !important; + } + &.el-menu-item, + > .el-sub-menu__title:first-child { + i, + a { + color: @dark-text-active !important; + } + } + } + } +} +//浅色侧边栏 +.ui-sidebar-light .rr-sidebar, +.rr-sidebar-menu-pop-light { + background: @light-bg !important; + box-shadow: 0 4px 4px rgba(0, 21, 41, 0.25); + .el-menu { + background: @light-bg !important; + .el-menu-item, + .el-sub-menu__title { + &:hover { + i, + a { + color: @light-text-active !important; + } + } + i, + a { + color: @light-text !important; + } + &:not(.is-active):hover { + background: inherit !important; + } + } + .is-active { + &.el-menu-item { + border-right: 2px solid @light-text-active !important; + background: @light-bg-active !important; + } + &.el-menu-item, + > .el-sub-menu__title:first-child { + i, + a { + color: @light-text-active !important; + } + } + } + } +} + +//================================ +.el-menu--horizontal.rr-sidebar-menu-pop-light, +.el-menu--horizontal.rr-sidebar-menu-pop-dark { + border-radius: 4px !important; + box-shadow: none !important; + background-color: @light-bg !important; + border: none !important; + margin-top: -5px; + margin-left: 0; + .el-popper { + border: 0 !important; + } + .el-menu--horizontal { + margin-left: -5px; + } + + .el-menu.el-menu--popup { + min-width: 160px; + box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2) !important; + } + + .el-menu-item, + .el-sub-menu__title { + height: 45px; + line-height: 45px; + } + .is-active { + &.el-menu-item { + border: 0 !important; + } + } +} +//浅色顶栏 +.ui-topHeader-light { + .rr-header-ctx { + box-shadow: 0 1px 1px #f1f1f1; + &-logo { + background: @light-bg !important; + color: #000000bf; + } + } + &.ui-sidebar-dark { + .rr-header-ctx { + box-shadow: 0 1px 3px rgb(0 0 0 / 8%); + } + } + .rr-header-right { + background: @light-bg !important; + .rr-header-right-items { + * { + color: @light-text !important; + } + > div { + &:hover { + color: #262626 !important; + background: rgba(0, 0, 0, 0.1) !important; + } + } + .el-badge__content { + color: #fff !important; + } + } + .rr-sidebar-menu { + &.el-menu { + background: @light-bg !important; + .el-menu-item, + .el-sub-menu__title { + &:hover { + background: rgba(0, 0, 0, 0.1) !important; + i, + a { + color: @light-text-active !important; + } + } + i, + a { + color: @light-text !important; + } + + i:not(.el-sub-menu__icon-arrow) { + width: 17px !important; + height: 17px !important; + margin-right: 0 !important; + margin-top: -4px; + line-height: 17px; + } + span { + margin-right: 0; + } + } + .is-active { + &.el-menu-item { + border-bottom: 2px solid @light-text-active !important; + background: @light-bg !important; + } + &.el-menu-item, + .el-sub-menu__title { + i, + a { + color: @light-text-active !important; + } + &:hover { + background: rgba(0, 0, 0, 0.1) !important; + } + } + &.isLink { + border-bottom: 0 !important; + i, + a { + color: @light-text !important; + } + } + } + } + } + } +} +//深色顶栏 +.ui-topHeader-dark { + .rr-header-ctx { + &-logo { + background: @dark-bg !important; + } + } + .rr-header-right { + background: @dark-bg !important; + .rr-header-right-items { + * { + color: @dark-text !important; + &:hover { + color: @dark-text-active !important; + } + } + .el-badge__content { + color: #fff !important; + } + } + .rr-sidebar-menu { + &.el-menu { + background: @dark-bg !important; + .el-menu-item, + .el-sub-menu__title { + &:hover { + background: @dark-bg !important; + i, + a { + color: @dark-text-active !important; + } + } + i, + a { + color: @dark-text !important; + } + &:not(.is-active):hover { + background: inherit !important; + } + i:not(.el-sub-menu__icon-arrow) { + width: 17px !important; + height: 17px !important; + margin-right: 0 !important; + margin-top: -4px; + line-height: 17px; + } + span { + margin-right: 0; + } + } + .is-active { + &.el-menu-item { + border-bottom: 2px solid @dark-text-active !important; + background: @dark-bg !important; + } + &.el-menu-item, + .el-sub-menu__title { + border-bottom: 2px solid @dark-text-active !important; + i, + a { + color: @dark-text-active !important; + } + } + &.isLink { + border-bottom: 0 !important; + i, + a { + color: @dark-text !important; + } + } + } + } + } + } +} +//主题色 +.ui-topHeader-primary { + .rr-header-ctx { + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important; + position: relative; + z-index: 102; + } + .rr-header-ctx-logo { + background: @primary-bg !important; + } + .rr-header-right { + background: @primary-bg !important; + .rr-header-right-items, + .rr-header-right-left-br { + div, + span, + svg, + i { + color: @primary-text !important; + &:hover { + color: @primary-text-active !important; + } + } + > div:not(.el-breadcrumb) { + &:hover { + color: #262626 !important; + background: rgba(0, 0, 0, 0.1) !important; + } + } + .el-badge__content { + color: #fff !important; + } + .el-breadcrumb { + .el-breadcrumb__item { + &:not(:first-child) { + * { + color: @primary-text-2 !important; + font-weight: 400 !important; + } + } + } + } + } + .rr-sidebar-menu { + &.el-menu { + background: @primary-bg !important; + .el-menu-item, + .el-sub-menu__title { + &:hover, + &:focus { + background: rgba(0, 0, 0, 0.1) !important; + i, + a { + color: @primary-text-active !important; + } + } + i, + a { + color: @primary-text !important; + } + i:not(.el-sub-menu__icon-arrow) { + width: 17px !important; + height: 17px !important; + margin-right: 0 !important; + margin-top: -4px; + line-height: 17px; + } + span { + margin-right: 0; + } + } + .is-active { + &.el-menu-item { + border-bottom: 2px solid @primary-text-active !important; + } + &.el-menu-item, + .el-sub-menu__title { + border-bottom: 2px solid @primary-text-active !important; + i, + a { + color: @primary-text-active !important; + } + &:hover { + background: rgba(0, 0, 0, 0.1) !important; + } + } + &.isLink { + border-bottom: 0 !important; + i, + a { + color: @primary-text !important; + } + } + } + } + } + } +} + +//============= +//导航模式 +.ui-navLayout-left { + &.ui-sidebar-light { + .rr-sidebar { + box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.08); + z-index: 101; + } + } +} + +.ui-navLayout-top { + &.ui-topHeader-light { + .rr-header-right { + border-bottom: none !important; + } + } + .rr-header-ctx-logo { + max-width: inherit !important; + &-text { + max-width: inherit !important; + overflow: inherit !important; + } + } + .rr-view-tab-wrap { + left: 0 !important; + } +} + +.ui-navLayout-mix { + .rr-header-ctx-logo { + max-width: inherit !important; + &-text { + max-width: inherit !important; + overflow: inherit !important; + } + } + &.ui-sidebar-light { + .rr-sidebar { + box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.08); + z-index: 101; + } + } + .rr-sidebar { + box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.08); + z-index: 101; + } + .rr-header-right-left-br { + padding: 0 !important; + } +} + +//======== +//内容不铺满 +.ui-contentFull-false { + .rr-view-ctx { + width: 1200px !important; + margin-left: auto; + margin-right: auto; + } +} + +//======= +//tab标签栏开关 +.ui-openTabsPage { + &-false { + .rr-view-ctx { + margin-top: 0; + } + } +} + +//======= +//logo自动 +//导航模式在顶部时logo自动要取消 +.ui-logoAuto-true, +.ui-navLayout-top { + .rr-header-ctx-logo { + width: inherit !important; + padding: 0 15px 0 20px; + box-shadow: none !important; + } + &.ui-topHeader-primary .rr-header-ctx-logo { + background: @primary-bg !important; + color: #ffffffd9 !important; + } + &.ui-topHeader-dark .rr-header-ctx-logo { + background: @dark-bg !important; + color: #ffffffd9 !important; + } + &.ui-topHeader-light .rr-header-ctx-logo { + background: @light-bg !important; + color: #000000bf; + box-shadow: 1px 0 3px rgba(0, 0, 0, 0.08); + } +} + +//侧边栏多彩图标 +.ui-colorIcon-true { + .rr-sidebar { + .el-menu { + .el-sub-menu__title, + .el-menu-item, + .isLink { + margin-left: -5px !important; + } + li { + [class^="el-icon"] { + &:first-child { + flex-shrink: 0; + width: 28px; + height: 28px; + line-height: 28px; + font-size: 14px; + background-color: rgb(97, 178, 252); + border-radius: 50%; + text-align: center; + color: rgb(255, 255, 255) !important; + + .iconfont { + width: 14px; + height: 14px; + } + } + } + &:nth-child(2n) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(125, 215, 51); + } + } + } + &:nth-child(3) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(50, 162, 212); + } + } + } + &:nth-child(4) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(115, 131, 207); + } + } + } + &:nth-child(5) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(245, 104, 111); + } + } + } + &:nth-child(6) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(43, 204, 206); + } + } + } + &:nth-child(7) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(125, 215, 51); + } + } + } + &:nth-child(8) { + [class^="el-icon"] { + &:first-child { + background-color: rgb(250, 173, 20); + } + } + } + } + //-- + .el-sub-menu { + .el-menu { + li, + .el-sub-menu__title { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + width: 8px; + height: 8px; + line-height: 8px; + font-size: 30px; + overflow: hidden; + border-radius: 50%; + margin: 0 0 0 10px; + background: @dark-text !important; + color: @dark-text !important; + &:before { + content: ""; + margin-left: -11px; + font-family: element-icons !important; + } + } + } + } + } + } + .el-menu-item, + .el-sub-menu.is-active .el-sub-menu__title { + i:first-child { + color: #fff !important; + } + } + } + } + &.ui-sidebar-light { + .rr-sidebar { + .el-sub-menu .el-menu { + .el-sub-menu { + .el-sub-menu__title { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + color: @light-text !important; + opacity: 0.25; + } + } + &:hover { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + color: @light-text-active !important; + opacity: 0.25; + } + } + } + } + &.is-active .el-sub-menu__title [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + color: @light-text-active !important; + opacity: 1; + } + } + } + .el-menu-item { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + background: @light-text !important; + color: @light-text !important; + opacity: 0.25; + } + } + &.is-active, + &:hover { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + background: @light-text-active !important; + color: @light-text-active !important; + opacity: 1; + } + } + } + &:hover:not(.is-active) { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + opacity: 0.2; + } + } + } + } + } + } + } + &.ui-sidebar-dark { + .rr-sidebar { + .el-sub-menu { + .el-sub-menu.is-opened { + &.is-active { + .el-sub-menu__title { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + background: @dark-text-active !important; + color: @dark-text-active !important; + opacity: 1; + } + } + } + } + } + .el-menu .el-menu-item, + .el-sub-menu.is-opened .el-sub-menu__title { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + background: @dark-text !important; + color: @dark-text !important; + opacity: 0.85; + } + } + &.is-active, + &:hover { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + background: @dark-text-active !important; + color: @dark-text-active !important; + opacity: 1; + } + } + } + &:hover:not(.is-active) { + [class^="el-icon"] { + &:first-child:not(.el-sub-menu__icon-arrow) { + opacity: 1; + } + } + } + } + } + } + } +} + +//侧边栏收缩状态 +.rr.ui-sidebarCollapse { + &-true { + .rr-view-tab-wrap { + left: 60px; + } + .rr-header-ctx-logo-line { + width: 0; + } + .enabled-logo-false { + display: flex; + } + &.ui-logoAuto { + &-false { + .rr-header-ctx-logo { + width: 60px !important; + &-text { + display: none; + } + } + } + &-true { + .enabled-logo-false { + display: none; + } + .rr-header-ctx-logo-line { + width: 10px; + } + } + } + &.ui-navLayout-top { + //导航模式为顶部时自动展开logo状态 + .rr-header-ctx-logo { + width: inherit !important; + padding: 0 15px 0 20px; + box-shadow: none !important; + &-text { + display: block; + } + } + .enabled-logo-false { + display: none; + } + } + .rr-sidebar:not(.rr-sidebar-mobile) { + width: 60px !important; + .el-menu { + width: 60px !important; + } + // 收起效果 + .rr-sidebar-menu { + .el-menu-item, + .el-sub-menu__title, + .el-sub-menu { + a, + .el-menu { + display: none; + } + } + } + } + } + &-false { + .rr-header-ctx-logo { + &-text { + display: block; + overflow: hidden; + } + } + } +} + +//tabStyle +.ui-tabStyle-default { + .rr-view-tab { + .el-tabs__item { + border-right: none !important; + padding: 0 15px 0 !important; + &.is-active { + color: @--color-primary !important; + } + &:before { + content: none; + } + &:after { + content: ""; + height: 3px; + width: 0; + background-color: @--color-primary !important; + position: absolute; + bottom: 0; + left: 0; + } + &.is-active:after, + &:hover:after { + width: 100%; + } + } + .el-tabs__nav-wrap { + &:before, + &:after, + .el-tabs__nav-next, + .el-tabs__nav-prev { + height: 40px; + line-height: 44px; + } + } + } +} +.ui-tabStyle-dot { + .rr-view-tab-wrap { + .rr-view-tab { + .el-tabs__item { + &.is-active { + color: @--color-primary !important; + &:before { + background-color: @--color-primary !important; + } + } + } + } + } +} +.ui-tabStyle-card { + .rr-view-tab-wrap { + background: transparent !important; + box-shadow: none !important; + padding-top: 10px; + .rr-view-tab { + height: 30px; + background: transparent !important; + &-ops { + border-radius: 4px; + height: 30px; + line-height: 30px; + width: 30px; + background-color: #fff; + margin-right: 10px; + .el-icon--right { + margin-left: 0; + } + } + .el-tabs__item { + margin-left: 8px; + padding: 0 15px 0 !important; + border-radius: 4px; + height: 30px; + line-height: 30px; + background-color: #fff; + &:nth-child(2) { + margin-left: 0; + padding: 0 15px !important; + } + &.is-active { + background-color: @--color-primary !important; + color: #fff; + } + &:before { + content: none; + } + &:after { + content: none; + } + } + .el-tabs__nav-wrap { + &:before, + &:after, + .el-tabs__nav-next, + .el-tabs__nav-prev { + height: 30px; + line-height: 30px; + background: #eff2f5 !important; + } + .el-tabs__nav-next, + .el-tabs__nav-prev { + &:hover { + background: transparent !important; + } + } + } + } + } +} + +//外链 +.rr-sidebar-menu.el-menu .el-menu-item.is-active.isLink { + background: inherit !important; +} + +//不同语言下的差异 +[lang="en-US"] { + .rr-header-ctx-logo-text { + letter-spacing: 0px !important; + } +} + +@media screen and (min-width: 768px) { + :not(html):not(body)::-webkit-scrollbar { + width: 8px; + height: 8px; + background: transparent; + } + + :not(html):not(body)::-webkit-scrollbar-track { + background: transparent; + } + + :not(html):not(body)::-webkit-scrollbar-thumb { + border-radius: 4px; + background-color: hsla(0, 0%, 54.9%, 0.3); + } + + :not(html):not(body)::-webkit-scrollbar-thumb:hover { + background-color: hsla(0, 0%, 54.9%, 0.5); + } + + .ele-scrollbar-mini::-webkit-scrollbar { + width: 6px; + height: 6px; + } + + .ele-scrollbar-mini::-webkit-scrollbar-thumb { + border-radius: 3px; + } + + .ele-scrollbar-hide::-webkit-scrollbar { + width: 0; + height: 0; + } +} diff --git a/src/assets/theme/mobile.less b/src/assets/theme/mobile.less new file mode 100644 index 0000000..980eb5a --- /dev/null +++ b/src/assets/theme/mobile.less @@ -0,0 +1,97 @@ +@import "./base.less"; + +@media only screen and (max-width: 768px) { + .rr-header-action { + display: flex !important; + } + .show-xs-only { + display: block !important; + } +} +@media only screen and (min-width: 768px) { +} +@media only screen and (min-width: 768px) and (max-width: 992px) { +} +@media only screen and (max-width: 992px) { +} +@media only screen and (min-width: 992px) { +} +@media only screen and (min-width: 992px) and (max-width: 1200px) { +} +@media only screen and (max-width: 1200px) { +} +@media only screen and (min-width: 1200px) { +} +@media only screen and (min-width: 1200px) and (max-width: 1920px) { +} +@media only screen and (max-width: 1920px) { +} +@media only screen and (min-width: 1920px) { +} + +// +.ui-mobile { + .rr-view-tab-wrap { + left: 0 !important; + transition: left 0s !important; + } + .rr-header-ctx-logo-img-wrap { + display: none !important; + } +} + +.rr-sidebar-mobile { + z-index: 9999 !important; + &-inner { + margin: 0; + padding: 0; + scrollbar-width: none; + &::-webkit-scrollbar { + display: none; + } + } +} +.ui-sidebar-light .rr-sidebar-mobile { + .el-drawer__body, + .rr-header-ctx-logo-mobile { + background: @light-bg !important; + } + .rr-header-ctx-logo-mobile { + color: @light-text !important; + } +} +.ui-sidebar-dark .rr-sidebar-mobile { + .el-drawer__body, + .rr-header-ctx-logo-mobile { + background: @dark-bg !important; + } + .rr-header-ctx-logo-mobile { + color: @dark-text !important; + } +} +.ui-sidebarCollapse-true, +.ui-sidebarCollapse-false { + .rr-sidebar-mobile { + width: initial !important; + .el-menu.rr-sidebar-menu { + width: 230px !important; + .el-menu-item, + .el-sub-menu__title { + a { + display: inline-block !important; + } + } + } + .rr-header-ctx-logo.rr-header-ctx-logo-mobile { + width: auto !important; + .rr-header-ctx-logo-text { + display: inline-block !important; + } + } + + .el-drawer, + .el-drawer__body { + box-shadow: none !important; + } + } +} diff --git a/src/components/base/svg-icon/index.ts b/src/components/base/svg-icon/index.ts new file mode 100644 index 0000000..29739eb --- /dev/null +++ b/src/components/base/svg-icon/index.ts @@ -0,0 +1,4 @@ +import { withInstall } from "@/utils/utils"; +import SvgIcon from "./index.vue"; + +export default withInstall(SvgIcon); diff --git a/src/components/base/svg-icon/index.vue b/src/components/base/svg-icon/index.vue new file mode 100644 index 0000000..b48dd1c --- /dev/null +++ b/src/components/base/svg-icon/index.vue @@ -0,0 +1,38 @@ + + diff --git a/src/components/ren-dept-tree/index.ts b/src/components/ren-dept-tree/index.ts new file mode 100644 index 0000000..91593ef --- /dev/null +++ b/src/components/ren-dept-tree/index.ts @@ -0,0 +1,5 @@ +import { withInstall } from "@/utils/utils"; +import RenDeptTree from "./src/ren-dept-tree.vue"; + +RenDeptTree.name = "RenDeptTree"; +export default withInstall(RenDeptTree); diff --git a/src/components/ren-dept-tree/src/ren-dept-tree.vue b/src/components/ren-dept-tree/src/ren-dept-tree.vue new file mode 100644 index 0000000..f93a2f1 --- /dev/null +++ b/src/components/ren-dept-tree/src/ren-dept-tree.vue @@ -0,0 +1,113 @@ + + diff --git a/src/components/ren-radio-group/index.ts b/src/components/ren-radio-group/index.ts new file mode 100644 index 0000000..d9bcc95 --- /dev/null +++ b/src/components/ren-radio-group/index.ts @@ -0,0 +1,4 @@ +import { withInstall } from "@/utils/utils"; +import RenRadioGroup from "./src/ren-radio-group.vue"; + +export default withInstall(RenRadioGroup); diff --git a/src/components/ren-radio-group/src/ren-radio-group.vue b/src/components/ren-radio-group/src/ren-radio-group.vue new file mode 100644 index 0000000..4de2d8c --- /dev/null +++ b/src/components/ren-radio-group/src/ren-radio-group.vue @@ -0,0 +1,24 @@ + + diff --git a/src/components/ren-region-tree/index.ts b/src/components/ren-region-tree/index.ts new file mode 100644 index 0000000..4255fbb --- /dev/null +++ b/src/components/ren-region-tree/index.ts @@ -0,0 +1,5 @@ +import { withInstall } from "@/utils/utils"; +import RenRegionTree from "./src/ren-region-tree.vue"; + +RenRegionTree.name = "RenRegionTree"; +export default withInstall(RenRegionTree); diff --git a/src/components/ren-region-tree/src/ren-region-tree.vue b/src/components/ren-region-tree/src/ren-region-tree.vue new file mode 100644 index 0000000..9eebee5 --- /dev/null +++ b/src/components/ren-region-tree/src/ren-region-tree.vue @@ -0,0 +1,131 @@ + + + + + diff --git a/src/components/ren-select/index.ts b/src/components/ren-select/index.ts new file mode 100644 index 0000000..47267ab --- /dev/null +++ b/src/components/ren-select/index.ts @@ -0,0 +1,4 @@ +import { withInstall } from "@/utils/utils"; +import RenSelect from "./src/ren-select.vue"; + +export default withInstall(RenSelect); diff --git a/src/components/ren-select/src/ren-select.vue b/src/components/ren-select/src/ren-select.vue new file mode 100644 index 0000000..de3ab9c --- /dev/null +++ b/src/components/ren-select/src/ren-select.vue @@ -0,0 +1,25 @@ + + diff --git a/src/components/wang-editor/index.vue b/src/components/wang-editor/index.vue new file mode 100644 index 0000000..fa881cb --- /dev/null +++ b/src/components/wang-editor/index.vue @@ -0,0 +1,82 @@ + + + diff --git a/src/constants/app.ts b/src/constants/app.ts new file mode 100644 index 0000000..13a3574 --- /dev/null +++ b/src/constants/app.ts @@ -0,0 +1,41 @@ +import { getValueByKeys } from "@/utils/utils"; +import appPack from "../../package.json"; +/** + * app系统配置 + */ +export default { + /** + * 系统版本号,自动读取package.json中的version字段 + */ + version: appPack.version, + + /** + * 系统默认语言 + */ + defaultLang: "zh-CN", + + /** + * api请求地址,这里读取env环境变量中的VITE_APP_API,优先使用全局变量window.SITE_CONFIG.apiURL钩子,支持在index.html中配置 + */ + api: getValueByKeys(window, "SITE_CONFIG.apiURL") || import.meta.env.VITE_APP_API, + + /** + * 启用logo图标,logo尺寸32*32,存放路径@/assets/images/logo.png + */ + enabledLogo: false, + + /** + * 开启页面缓存 + */ + enabledKeepAlive: true, + + /** + * 网络请求超时时间,单位毫秒 + */ + requestTimeout: 30000, + + /** + * 全屏渲染的页面 + */ + fullscreenPages: ["/login"] +}; diff --git a/src/constants/cacheKey.ts b/src/constants/cacheKey.ts new file mode 100644 index 0000000..6af413d --- /dev/null +++ b/src/constants/cacheKey.ts @@ -0,0 +1,13 @@ +/** + * token值 + */ +export const CacheToken = "CacheToken"; + +/** + * 语言 + */ +export const CacheLang = "CacheLang"; +/** + * 主题 + */ +export const CacheTheme = "CacheTheme"; diff --git a/src/constants/config.ts b/src/constants/config.ts new file mode 100644 index 0000000..2a0997f --- /dev/null +++ b/src/constants/config.ts @@ -0,0 +1,16 @@ +/** + * 主题设置默认值 + */ +export const themeSetting = { + sidebar: "dark", + topHeader: "primary", + themeColor: "#2d88ac", + navLayout: "left", + contentFull: true, + logoAuto: false, + colorIcon: false, + sidebarUniOpened: true, + openTabsPage: true, + tabStyle: "default", + sidebarCollapse: false +}; diff --git a/src/constants/enum.ts b/src/constants/enum.ts new file mode 100644 index 0000000..c573672 --- /dev/null +++ b/src/constants/enum.ts @@ -0,0 +1,143 @@ +/** + * 页面渲染布局 + */ +export enum EPageLayoutEnum { + "page", + "fullscreen" +} + +/** + * 导航模式 + */ +export enum ESidebarLayoutEnum { + /** + * 左侧导航 + */ + Left = "left", + /** + * 顶部导航 + */ + Top = "top", + /** + * 混合导航 + */ + Mix = "mix" +} + +/** + * 主题设置 + */ +export enum EThemeSetting { + /** + * 侧边栏风格 + */ + Sidebar = "sidebar", + /** + * 顶部风格 + */ + TopHeader = "topHeader", + /** + * 主题色 + */ + ThemeColor = "themeColor", + //--- + /** + * 布局模式 + */ + NavLayout = "navLayout", + /** + * 内容是否铺满 + */ + ContentFull = "contentFull", + //--- + /** + * logo宽度自动 + */ + LogoAuto = "logoAuto", + /** + * 多彩图标 + */ + ColorIcon = "colorIcon", + /** + * 侧边栏排他展开 + */ + SidebarUniOpened = "sidebarUniOpened", + /** + * 开启tab标签页 + */ + OpenTabsPage = "openTabsPage", + /** + * tab标签风格 + */ + TabStyle = "tabStyle", + //--- + /** + * 侧边栏展开收起 + */ + SidebarCollapse = "sidebarCollapse" +} + +/** + * 系统框架事件枚举 + */ +export enum EMitt { + /** + * 全局加载 + */ + OnLoading = "onLoading", + /** + * 切换左侧侧边栏 + */ + OnSwitchLeftSidebar = "onSwitchLeftSidebar", + /** + * 推送菜单到tab标签页 + */ + OnPushMenuToTabs = "onPushMenuToTabs", + /** + * 设置主题 + */ + OnSetTheme = "onSetTheme", + /** + * 设置侧边栏排他展开 + */ + OnSetThemeNotUniqueOpened = "onSetTheme_not_uniqueOpened", + /** + * 设置开启标签页 + */ + OnSetThemeTabsPage = "onSetTheme_tabsPage", + /** + * 设置导航模式 + */ + OnSetNavLayout = "onSetNavLayout", + /** + * 刷新tab标签页 + */ + OnReloadTabPage = "onReloadTabPage", + + // + /** + * 移动端打开侧边栏 + */ + OnMobileOpenSidebar = "onMobileOpenSidebar", + + // + /** + * 混合导航选中顶部主菜单 + */ + OnSelectHeaderNavMenusByMixNav = "onSelectHeaderNavMenusByMixNav", + + /** + * 关闭当前tab页 + */ + OnCloseCurrTab = "onCloseCurrTab" +} + +/** + * 主题是key + */ +export enum EThemeColor { + /** + * 主题色 + */ + ThemeColor = "--color-primary" +} diff --git a/src/hooks/useView.ts b/src/hooks/useView.ts new file mode 100644 index 0000000..5bdf91d --- /dev/null +++ b/src/hooks/useView.ts @@ -0,0 +1,246 @@ +import app from "@/constants/app"; +import { EMitt, EThemeSetting } from "@/constants/enum"; +import { IObject, IViewHooks, IViewHooksOptions } from "@/types/interface"; +import { registerDynamicToRouterAndNext } from "@/router"; +import baseService from "@/service/baseService"; +import { getToken } from "@/utils/cache"; +import emits from "@/utils/emits"; +import { getThemeConfigCacheByKey } from "@/utils/theme"; +import { checkPermission, getDictLabel } from "@/utils/utils"; +import qs from "qs"; +import { onActivated, onMounted } from "vue"; +import { useRouter, useRoute } from "vue-router"; +import { useAppStore } from "@/store"; +import { ElMessage, ElMessageBox } from "element-plus"; + +/** + * 通用视图业务逻辑(列表/增删改查基本业务) + * @param props 自定义通用业务state + * @returns 返回响应式自定义state和通用方法 + */ +const useView = (props: IViewHooksOptions | IObject): IViewHooks => { + const router = useRouter(); + const route = useRoute(); + const store = useAppStore(); + const defaultOptions: IViewHooksOptions = { + createdIsNeed: true, + activatedIsNeed: false, + getDataListURL: "", + getDataListIsPage: false, + deleteURL: "", + deleteIsBatch: false, + deleteIsBatchKey: "id", + exportURL: "", + dataForm: {}, + dataList: [], + order: "", + orderField: "", + page: 1, + limit: 10, + total: 0, + dataListLoading: false, + dataListSelections: [], + elTable: {} + }; + const mergeDefaultStateToPageState = (options: IObject, props: IObject): IViewHooksOptions => { + for (const key in options) { + if (!Object.getOwnPropertyDescriptor(props, key)) { + props[key] = options[key]; + } + } + return props; + }; + const state = mergeDefaultStateToPageState(defaultOptions, props); + onMounted(() => { + if (state.createdIsNeed && !state.activatedIsNeed) { + viewFns.query(); + } + }); + onActivated(() => { + if (store.state.closedTabs.includes(store.state.activeTabName)) { + //如果当前打开的tab页面是之前已经关闭过的会存在keep-alive缓存 + //这里采用临时刷新页面解决方案 + //待vue官方开放缓存策略后再行实现 https://github.com/vuejs/vue-next/pull/4339 https://github.com/vuejs/rfcs/pull/284 + + const closedTabs = store.state.closedTabs; + store.updateState({ + closedTabs: closedTabs.filter((x: string) => x !== store.state.activeTabName) + }); + emits.emit(EMitt.OnReloadTabPage); + } + + if (state.activatedIsNeed) { + viewFns.query(); + } + }); + + // + const rejectFns = { + hasPermission(key: string) { + return checkPermission(store.state.permissions as string[], key); + }, + getDictLabel(dictType: string, dictValue: number) { + return getDictLabel(store.state.dicts, dictType, dictValue); + } + }; + + // + const viewFns = { + // 获取数据列表 + query() { + if (!state.getDataListURL) { + return; + } + state.dataListLoading = true; + baseService + .get(state.getDataListURL, { + order: state.order, + orderField: state.orderField, + page: state.getDataListIsPage ? state.page : null, + limit: state.getDataListIsPage ? state.limit : null, + ...state.dataForm + }) + .then((res) => { + state.dataListLoading = false; + state.dataList = state.getDataListIsPage ? res.data.list : res.data; + state.total = state.getDataListIsPage ? res.data.total : 0; + }) + .catch(() => { + state.dataListLoading = false; + }); + }, + // 多选 + dataListSelectionChangeHandle(val: IObject[]) { + state.dataListSelections = val; + }, + // 排序 + dataListSortChangeHandle(data: IObject) { + if (!data.order || !data.prop) { + state.order = ""; + state.orderField = ""; + return false; + } + state.order = data.order.replace(/ending$/, ""); + state.orderField = data.prop.replace(/([A-Z])/g, "_$1").toLowerCase(); + viewFns.query(); + }, + // 分页, 每页条数 + pageSizeChangeHandle(val: number) { + state.page = 1; + state.limit = val; + viewFns.query(); + }, + // 分页, 当前页 + pageCurrentChangeHandle(val: number) { + state.page = val; + viewFns.query(); + }, + //搜索 + getDataList() { + state.page = 1; + viewFns.query(); + }, + // 删除 + deleteHandle(id?: string): Promise { + return new Promise((resolve, reject) => { + if ( + state.deleteIsBatch && + !id && + state.dataListSelections && + state.dataListSelections.length <= 0 + ) { + ElMessage.warning({ + message: "请选择操作项", + duration: 500 + }); + return; + } + ElMessageBox.confirm("确定进行[删除]操作?", "提示", { + confirmButtonText: "确定", + cancelButtonText: "取消", + type: "warning" + }) + .then(() => { + baseService + .delete( + `${state.deleteURL}${state.deleteIsBatch ? "" : "/" + id}`, + state.deleteIsBatch + ? id + ? [id] + : state.dataListSelections + ? state.dataListSelections.map( + (item: IObject) => state.deleteIsBatchKey && item[state.deleteIsBatchKey] + ) + : {} + : {} + ) + .then((res) => { + ElMessage.success({ + message: "成功", + duration: 500, + onClose: () => { + viewFns.query(); + resolve(true); + } + }); + }); + }) + .catch(() => { + // + }); + }); + }, + // 导出 + exportHandle() { + window.location.href = `${app.api}${state.exportURL}?${qs.stringify({ + ...state.dataForm, + token: getToken() + })}`; + // baseService.download(state.exportURL, { ...state.dataForm, token: getToken() }); + }, + //关闭当前窗口 + closeCurrentTab() { + if (getThemeConfigCacheByKey(EThemeSetting.OpenTabsPage)) { + emits.emit(EMitt.OnCloseCurrTab); + } else { + router.replace("/home"); + } + }, + // 处理流程路由 + handleFlowRoute(data: IObject) { + const routeParams = { + path: `/flow/task-form`, + query: { + taskId: data.taskId, + processInstanceId: data.processInstanceId, + processDefinitionId: data.processDefinitionId, + showType: "taskHandle", + _mt: `${route.meta.title} - ${data.processDefinitionName}` + } + }; + registerDynamicToRouterAndNext(routeParams); + }, + // 查看流程详情 + flowDetailRoute(data: IObject) { + const routeParams = { + path: `/flow/task-form`, + query: { + taskId: data.taskId, + processInstanceId: data.processInstanceId, + processDefinitionId: data.processDefinitionId, + showType: "detail", + _mt: `${route.meta.title} - ${data.processDefinitionName}` + } + }; + registerDynamicToRouterAndNext(routeParams); + } + }; + + // + return { + ...viewFns, + ...rejectFns + }; +}; + +export default useView; diff --git a/src/layout/fullscreen-layout.vue b/src/layout/fullscreen-layout.vue new file mode 100644 index 0000000..6b7c810 --- /dev/null +++ b/src/layout/fullscreen-layout.vue @@ -0,0 +1,20 @@ + + diff --git a/src/layout/header/base-header.vue b/src/layout/header/base-header.vue new file mode 100644 index 0000000..621adad --- /dev/null +++ b/src/layout/header/base-header.vue @@ -0,0 +1,63 @@ + + diff --git a/src/layout/header/breadcrumb.vue b/src/layout/header/breadcrumb.vue new file mode 100644 index 0000000..f8588d0 --- /dev/null +++ b/src/layout/header/breadcrumb.vue @@ -0,0 +1,34 @@ + + diff --git a/src/layout/header/collapse-sidebar-btn.vue b/src/layout/header/collapse-sidebar-btn.vue new file mode 100644 index 0000000..7b20d96 --- /dev/null +++ b/src/layout/header/collapse-sidebar-btn.vue @@ -0,0 +1,39 @@ + + diff --git a/src/layout/header/expand.vue b/src/layout/header/expand.vue new file mode 100644 index 0000000..d3a766a --- /dev/null +++ b/src/layout/header/expand.vue @@ -0,0 +1,83 @@ + + diff --git a/src/layout/header/header-mix-nav-menus.vue b/src/layout/header/header-mix-nav-menus.vue new file mode 100644 index 0000000..a2fca61 --- /dev/null +++ b/src/layout/header/header-mix-nav-menus.vue @@ -0,0 +1,64 @@ + + diff --git a/src/layout/header/logo.vue b/src/layout/header/logo.vue new file mode 100644 index 0000000..7d6bf39 --- /dev/null +++ b/src/layout/header/logo.vue @@ -0,0 +1,35 @@ + + + diff --git a/src/layout/index.vue b/src/layout/index.vue new file mode 100644 index 0000000..08b4666 --- /dev/null +++ b/src/layout/index.vue @@ -0,0 +1,80 @@ + + diff --git a/src/layout/layout.vue b/src/layout/layout.vue new file mode 100644 index 0000000..a44ab87 --- /dev/null +++ b/src/layout/layout.vue @@ -0,0 +1,3 @@ + diff --git a/src/layout/sidebar/base-sidebar.vue b/src/layout/sidebar/base-sidebar.vue new file mode 100644 index 0000000..a926fb3 --- /dev/null +++ b/src/layout/sidebar/base-sidebar.vue @@ -0,0 +1,162 @@ + + + diff --git a/src/layout/sidebar/mobile-sidebar.vue b/src/layout/sidebar/mobile-sidebar.vue new file mode 100644 index 0000000..ecd49e1 --- /dev/null +++ b/src/layout/sidebar/mobile-sidebar.vue @@ -0,0 +1,39 @@ + + + diff --git a/src/layout/sidebar/sidebar-menus-items.vue b/src/layout/sidebar/sidebar-menus-items.vue new file mode 100644 index 0000000..03cdf33 --- /dev/null +++ b/src/layout/sidebar/sidebar-menus-items.vue @@ -0,0 +1,51 @@ + + diff --git a/src/layout/view/base-view.vue b/src/layout/view/base-view.vue new file mode 100644 index 0000000..bb1165b --- /dev/null +++ b/src/layout/view/base-view.vue @@ -0,0 +1,47 @@ + + + diff --git a/src/layout/view/tabs.vue b/src/layout/view/tabs.vue new file mode 100644 index 0000000..9dfbc6c --- /dev/null +++ b/src/layout/view/tabs.vue @@ -0,0 +1,155 @@ + + diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..9bed344 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,34 @@ +import "@/assets/icons/iconfont/iconfont.js"; +import RenDeptTree from "@/components/ren-dept-tree"; +import RenRadioGroup from "@/components/ren-radio-group"; +import RenRegionTree from "@/components/ren-region-tree"; +import RenSelect from "@/components/ren-select"; +import ElementPlus from "element-plus"; +import "element-plus/theme-chalk/display.css"; +import "element-plus/theme-chalk/index.css"; +import locale from "element-plus/es/locale/lang/zh-cn"; +import { createApp } from "vue"; +import { createPinia } from "pinia"; +import App from "./App.vue"; +import router from "./router"; +import * as ElementPlusIcons from "@element-plus/icons-vue"; + +import axios from "axios"; +import "virtual:svg-icons-register"; + +const app = createApp(App); +Object.keys(ElementPlusIcons).forEach((iconName) => { + app.component(iconName, ElementPlusIcons[iconName as keyof typeof ElementPlusIcons]); +}); + +app + .use(createPinia()) + .use(router) + .use(RenRadioGroup) + .use(RenSelect) + .use(RenDeptTree) + .use(RenRegionTree) + .use(ElementPlus, { size: "default", locale: locale }) + .mount("#app"); + +window.axios = axios; diff --git a/src/router/base.ts b/src/router/base.ts new file mode 100644 index 0000000..eb99326 --- /dev/null +++ b/src/router/base.ts @@ -0,0 +1,52 @@ +import Layout from "@/layout/layout.vue"; +import Error from "@/views/error.vue"; +import { RouteRecordRaw } from "vue-router"; +import Login from "@/views/login.vue"; +import Iframe from "@/views/iframe.vue"; + +/** + * 框架基础路由 + */ +const routes: Array = [ + { + path: "/", + component: Layout, + redirect: "/home", + meta: { title: "工作台", icon: "icon-desktop" }, + children: [ + { + path: "/home", + component: () => import("@/views/home.vue"), + meta: { title: "主页", icon: "icon-home" } + } + ] + }, + { + path: "/login", + component: Login, + meta: { title: "登录", isNavigationMenu: false } + }, + { + path: "/user/password", + component: () => import("@/views/sys/user-update-password.vue"), + meta: { title: "修改密码", requiresAuth: true, isNavigationMenu: false } + }, + { + path: "/iframe/:id?", + component: Iframe, + meta: { title: "iframe", isNavigationMenu: false } + }, + { + path: "/error", + name: "error", + component: Error, + meta: { title: "错误页面", isNavigationMenu: false } + }, + { + path: "/:path(.*)*", + redirect: { path: "/error", query: { to: 404 }, replace: true }, + meta: { isNavigationMenu: false } + } +]; + +export default routes; diff --git a/src/router/index.ts b/src/router/index.ts new file mode 100644 index 0000000..2bd326b --- /dev/null +++ b/src/router/index.ts @@ -0,0 +1,187 @@ +import { IObject } from "@/types/interface"; +import { useAppStore } from "@/store"; +import { getToken } from "@/utils/cache"; +import { getBaseRouteToMeta, registerToRouter } from "@/utils/router"; +import NProgress from "nprogress"; +import "nprogress/nprogress.css"; +import { + createRouter, + createWebHashHistory, + RouteLocationNormalized, + RouteRecordRaw +} from "vue-router"; +import baseRoutes from "./base"; +import emits from "@/utils/emits"; +import { EMitt } from "@/constants/enum"; + +interface dynamicRouteParams { + path: string; + query?: IObject; + mete?: IObject; +} + +NProgress.configure({ showSpinner: false }); + +const router = createRouter({ + history: createWebHashHistory(), //createWebHashHistory() hash模式 + routes: baseRoutes +}); + +// 路由加载前 +router.beforeEach((to, from, next) => { + //外链 + if (to.meta.isNewPage) { + if (to.query.pop !== "true") { + next(undefined); + return false; + } + } + + const store = useAppStore(); + + //token + const token = getToken(); + const isPop = to.query.pop === "true"; //新窗口打开内页 + NProgress.start(); + if (to.path !== "/login") { + if (store.state.routes.length) { + if (to.name === "error") { + const isMatched = autoRegisterDynamicToRouterAndNext(to); + if (!isMatched) { + store.updateState({ appIsRender: true, appIsReady: true }); + next(); + } + } else { + if (!to.query.pop) { + const routeMeta: IObject = store.state.routeToMeta[to.path]; + emits.emit(EMitt.OnPushMenuToTabs, { + label: to.query._mt || routeMeta.title || to.path, + value: to.fullPath, + mete: routeMeta + }); + } + store.updateState({ appIsRender: true, appIsReady: true }); + next(); + } + } else { + if (token) { + store.initApp().then((res: Array) => { + const mergeRoute = baseRoutes.concat(res); + router.options.routes = mergeRoute; + registerToRouter(router, mergeRoute); + if (!to.matched.length) { + registerDynamicToRouterAndNext({ path: to.path, query: to.query }); + } + store.updateState({ + appIsReady: true, + routes: mergeRoute, + routeToMeta: { ...store.state.routeToMeta, ...getBaseRouteToMeta(baseRoutes) } + }); + setTimeout(() => { + store.updateState({ appIsRender: true, appIsLogin: true }); + }, 600); + next({ ...to, replace: true }); + }); + } else { + if (isPop) { + if (!to.matched.length) { + registerDynamicToRouterAndNext({ path: to.path, query: to.query }); + store.updateState({ appIsRender: true, appIsReady: true }); + next(to.fullPath); + } else { + store.updateState({ appIsRender: true, appIsReady: true }); + if (to.meta.requiresAuth) { + next("/login"); + } else { + next(); + } + } + } else { + next("/login"); + } + } + } + } else { + store.updateState({ appIsReady: true, appIsRender: true }); + next(); + } +}); + +// 路由加载后 +router.afterEach(() => { + NProgress.done(); +}); + +/** + * 获取系统视图路径映射 + * @returns + */ +export const getSysRouteMap = (): IObject => { + return import.meta.glob("/src/views/**/*.vue"); +}; + +/** + * 根据路由path转换为系统视图组件路径 + * @param path + * @returns + */ +export const toSysViewComponentPath = (path: string): string => { + path = path.replace("_", "-"); + return `/src/views${path}.vue`; +}; +/** + * 自动注册路由 + * @param to + * @returns + */ +const autoRegisterDynamicToRouterAndNext = (to: RouteLocationNormalized): boolean => { + if (to.redirectedFrom) { + const path = to.redirectedFrom.path; + const component = matchedSysRouteComponent(path); + if (component) { + registerToRouter(router, [ + { + path: path, + name: path, + component, + redirect: "" + } + ]); + router.push(to.redirectedFrom); + return true; + } + } + return false; +}; + +/** + * 寻找视图组件 + * @param path + * @returns + */ +const matchedSysRouteComponent = (path: string): any => { + const sysRouteMap = getSysRouteMap(); + const component = sysRouteMap[toSysViewComponentPath(path)]; + if (!component) { + console.error("实时注册动态路由失败,未找到组件路径", path); + } + return component; +}; + +/** + * 实时注册动态路由并直接跳转过去 + * @param route + */ +export const registerDynamicToRouterAndNext = (route: dynamicRouteParams): void => { + const component = matchedSysRouteComponent(route.path); + const newRoute: RouteRecordRaw = { + path: route.path, + name: route.path, + component, + redirect: !component ? { path: "/error", query: { to: 404 }, replace: true } : "" + }; + registerToRouter(router, [newRoute]); + router.push(route); +}; + +export default router; diff --git a/src/service/baseService.ts b/src/service/baseService.ts new file mode 100644 index 0000000..f0174b8 --- /dev/null +++ b/src/service/baseService.ts @@ -0,0 +1,77 @@ +import { IHttpResponse, IObject } from "@/types/interface"; +import http from "../utils/http"; + +/** + * 常用CRUD + */ +export default { + /** + * 删除 + * @param path + * @param params + * @returns + */ + delete(path: string, params: IObject): Promise { + return http({ + url: path, + data: params, + method: "DELETE" + }); + }, + get(path: string, params?: IObject, headers?: IObject): Promise { + return new Promise((resolve, reject) => { + http({ + url: path, + params, + headers, + method: "GET" + }) + .then(resolve) + .catch((error) => { + if (error !== "-999") { + reject(error); + } + }); + }); + }, + put(path: string, params?: IObject, headers?: IObject): Promise { + return http({ + url: path, + data: params, + headers: { + "Content-Type": "application/json;charset=UTF-8", + ...headers + }, + method: "PUT" + }); + }, + /** + * 通用post方法 + * @param path + * @param body + * @returns + */ + post(path: string, body?: IObject, headers?: IObject): Promise { + return http({ + url: path, + method: "post", + headers: { + "Content-Type": "application/json;charset=UTF-8", + ...headers + }, + data: body + }); + }, + // 在 baseService.ts 中添加 + upload(path: string, formData: FormData, headers?: IObject): Promise { + return http({ + url: path, + method: "post", + // 关键:不要在这里设置 Content-Type,让浏览器/Axios 自动处理 + headers: { + ...headers + }, + data: formData + }); + } +}; diff --git a/src/store/index.ts b/src/store/index.ts new file mode 100644 index 0000000..8f9e50f --- /dev/null +++ b/src/store/index.ts @@ -0,0 +1,83 @@ +import { CacheToken } from "@/constants/cacheKey"; +import { IObject } from "@/types/interface"; +import { getSysRouteMap } from "@/router"; +import baseService from "@/service/baseService"; +import { removeCache } from "@/utils/cache"; +import { mergeServerRoute } from "@/utils/router"; +import { defineStore } from "pinia"; + +export const useAppStore = defineStore("useAppStore", { + state: () => ({ + state: { + appIsLogin: false, //是否登录 + appIsReady: false, //app数据是否就绪 + appIsRender: false, //app是否开始渲染内容 + permissions: [], //权限集合 + user: { + createDate: "", + deptId: "", + deptName: "", + email: "", + gender: 0, + headUrl: "", + id: "", + mobile: "", + postIdList: "", + realName: "", + roleIdList: "", + status: 0, + superAdmin: 0, + username: "" + }, //用户信息 + dicts: [], //字典 + routes: [], //最终的路由集合 + menus: [], //菜单集合 + routeToMeta: {}, //url对应标题meta信息 + tabs: [], //tab标签页集合 + activeTabName: "", //tab当前焦点页 + closedTabs: [] //存储已经关闭过的tab + } as IObject + }), + actions: { + updateState(data: IObject) { + Object.keys(data).forEach((x: string) => { + this.state[x] = data[x]; + }); + }, + initApp() { + return Promise.all([ + baseService.get("/sys/menu/nav"), //加载菜单 + baseService.get("/sys/menu/permissions"), //加载权限 + baseService.get("/sys/user/info"), //加载用户信息 + baseService.get("/sys/dict/type/all") //加载字典 + ]).then(([menus, permissions, user, dicts]) => { + if (user.code !== 0) { + console.error("初始化用户数据错误", user.msg); + } + const [routes, routeToMeta] = mergeServerRoute(menus.data || [], getSysRouteMap()); + this.updateState({ + permissions: permissions.data || [], + user: user.data || {}, + dicts: dicts.data || [], + routeToMeta: routeToMeta || {}, + menus: [] + }); + return routes; + }); + }, + //退出 + logout() { + removeCache(CacheToken, true); + this.updateState({ + appIsLogin: false, + permissions: [], + user: {}, + dicts: [], + menus: [], + routes: [], + tabs: [], + activeTabName: "" + }); + } + } +}); diff --git a/src/types/env.d.ts b/src/types/env.d.ts new file mode 100644 index 0000000..e43a9b0 --- /dev/null +++ b/src/types/env.d.ts @@ -0,0 +1,6 @@ +interface ImportMetaEnv { + /** + * api接口环境 + */ + VITE_APP_API: string; +} diff --git a/src/types/index.d.ts b/src/types/index.d.ts new file mode 100644 index 0000000..e453670 --- /dev/null +++ b/src/types/index.d.ts @@ -0,0 +1,3 @@ +declare interface Window { + axios: any; +} diff --git a/src/types/interface.ts b/src/types/interface.ts new file mode 100644 index 0000000..69a1847 --- /dev/null +++ b/src/types/interface.ts @@ -0,0 +1,176 @@ +export interface IFunction { + (x?: any): T; +} + +export interface IObject { + [key: string]: T; +} + +export interface IHttpResponse { + code: number; + msg: string; + data: any; +} + +/** + * 菜单 + */ +export interface IServerMenus { + createDate: string; + icon: string | boolean; + id: string; + name: string; + parentName: string; + permissions: string; + pid: string; + sort: number; + type: number; + url: string; + openStyle: number; + redirect?: string; + children?: IServerMenus[]; +} + +export interface ICacheOptions { + /** + * 是否取值后立即删除缓存 + */ + isDelete?: boolean; + /** + * 是否采用JSON格式化缓存值 + */ + isParse?: boolean; + /** + * 是否采用会话缓存介质 + */ + isSessionStorage?: boolean; +} + +export interface IViewHooksOptions { + // 设置属性 + /** + * 此页面是否在创建时,调用查询数据列表接口? + */ + createdIsNeed?: boolean; + /** + * 此页面是否在激活(进入)时,调用查询数据列表接口? + */ + activatedIsNeed?: boolean; + /** + * 数据列表接口,API地址 + */ + getDataListURL?: string; + /** + * 数据列表接口,是否需要分页? + */ + getDataListIsPage?: boolean; + /** + * 删除接口,API地址 + */ + deleteURL?: ""; + /** + * 删除接口,是否需要批量? + */ + deleteIsBatch?: boolean; + /** + * 删除接口,批量状态下由那个key进行标记操作?比如:pid,uid... + */ + deleteIsBatchKey?: string; + /** + * 导出接口,API地址 + */ + exportURL?: string; + + /** + * 查询条件 + */ + dataForm?: IObject; + /** + * 数据列表 + */ + dataList?: IObject[]; + /** + * 排序,asc/desc + */ + order?: string; + /** + * 排序,字段 + */ + orderField?: string; + /** + * 当前页码 + */ + page?: number; + /** + * 每页数 + */ + limit?: number; + /** + * 总条数 + */ + total?: number; + /** + * 数据列表,loading状态 + */ + dataListLoading?: boolean; + /** + * 数据列表,多选项 + */ + dataListSelections?: IObject[]; + elTable?: IObject; +} + +export interface IViewHooks extends IViewHooksOptions, IObject { + /** + * 检查权限 + */ + hasPermission: (key: string) => boolean; + /** + * 获取字典名称 + */ + getDictLabel: (dictType: string, dictValue: number) => string | number; + /** + * 查询列表记录 + */ + query: () => void; + /** + * 列表多选事件 + */ + dataListSelectionChangeHandle: (list: IObject[]) => void; + /** + * 列表排序事件 + */ + dataListSortChangeHandle: (sort: IObject) => void; + /** + * 列表切换每页显示数量事件 + */ + pageSizeChangeHandle: (pageSize: number) => void; + /** + * 列表分页事件 + */ + pageCurrentChangeHandle: (pageIndex: number) => void; + /** + * 列表搜索事件 + */ + getDataList: () => void; + /** + * 列表删除事件 + */ + deleteHandle: (id?: string) => Promise; + /** + * 列表导出事件 + */ + exportHandle: () => void; + /** + * 关闭当前tab页 + */ + closeCurrentTab: () => void; + /** + * 处理流程 + */ + handleFlowRoute: (e: IObject) => void; + /** + * 查看流程详情 + */ + flowDetailRoute: (e: IObject) => void; +} diff --git a/src/types/shims.d.ts b/src/types/shims.d.ts new file mode 100644 index 0000000..8ef6f4c --- /dev/null +++ b/src/types/shims.d.ts @@ -0,0 +1,29 @@ +/* eslint-disable */ +declare module "*.vue" { + import type { DefineComponent } from "vue"; + const component: DefineComponent<{}, {}, any>; + export default component; +} + +declare module "*.svg"; +declare module "*.png"; +declare module "*.jpg"; +declare module "*.jpeg"; +declare module "*.gif"; +declare module "*.bmp"; +declare module "*.tiff"; +declare module "*.gif"; + +declare module "*.less"; + +declare global { + interface ImportMeta { + env: Record; + globEager(globPath: string): Record; + } +} + +declare module "virtual:*" { + const result: any; + export default result; +} diff --git a/src/utils/cache.ts b/src/utils/cache.ts new file mode 100644 index 0000000..3a51355 --- /dev/null +++ b/src/utils/cache.ts @@ -0,0 +1,71 @@ +import { CacheToken } from "@/constants/cacheKey"; +import { ICacheOptions } from "@/types/interface"; +import { isNullOrUndefined } from "./utils"; + +const fix = "v1@"; + +/** + * 存储介质适配器 + * @param isSessionStorage + * @returns + */ +const cacheAdapter = (isSessionStorage?: boolean) => { + return isSessionStorage ? sessionStorage : localStorage; +}; + +/** + * 取缓存值 + * @param {*} key + * @param {*} options + */ +export const getCache = (key: string, options?: ICacheOptions, defaultValue?: unknown): any => { + key = fix + key; + options = { isParse: true, isDelete: false, ...options }; + try { + const value = cacheAdapter(options.isSessionStorage).getItem(key); + if (options.isDelete) { + cacheAdapter(options.isSessionStorage).removeItem(key); + } + return isNullOrUndefined(value) + ? defaultValue + : options.isParse + ? value + ? JSON.parse(value) + : defaultValue + : value; + } catch (error) { + console.error("getCache", error); + return defaultValue; + } +}; + +/** + * 设置缓存值 + * @param {*} key + * @param {*} value + */ +export const setCache = ( + key: string, + value: string | Record | Array[], + isSessionStorage?: boolean +): void => { + key = fix + key; + cacheAdapter(isSessionStorage).setItem( + key, + typeof value === "object" ? JSON.stringify(value) : value + ); +}; + +/** + * 清除缓存 + * @param key + * @param isSessionStorage + */ +export const removeCache = (key: string, isSessionStorage?: boolean): void => { + key = fix + key; + cacheAdapter(isSessionStorage).removeItem(key); +}; + +export const getToken = (): string => { + return getCache(CacheToken, { isSessionStorage: true }, {})["token"]; +}; diff --git a/src/utils/emits.ts b/src/utils/emits.ts new file mode 100644 index 0000000..03e47cf --- /dev/null +++ b/src/utils/emits.ts @@ -0,0 +1,6 @@ +import mitt, { Emitter } from "mitt"; + +/** + * 事件总线 + */ +export default mitt() as Emitter; diff --git a/src/utils/http.ts b/src/utils/http.ts new file mode 100644 index 0000000..7571701 --- /dev/null +++ b/src/utils/http.ts @@ -0,0 +1,90 @@ +import app from "@/constants/app"; +import { IHttpResponse, IObject } from "@/types/interface"; +import router from "@/router"; +import axios, { AxiosRequestConfig } from "axios"; +import qs from "qs"; +import { getToken } from "./cache"; +import { getValueByKeys } from "./utils"; +import { ElMessage } from "element-plus"; + +const http = axios.create({ + baseURL: app.api, + timeout: app.requestTimeout +}); + +http.interceptors.request.use( + function (config: any) { + config.headers["X-Requested-With"] = "XMLHttpRequest"; + config.headers["Request-Start"] = new Date().getTime(); + const token = getToken(); + if (token) { + config.headers["token"] = token; + } + if (config.method?.toUpperCase() === "GET") { + config.params = { ...config.params, _t: new Date().getTime() }; + } + if (Object.values(config.headers).includes("application/x-www-form-urlencoded")) { + config.data = qs.stringify(config.data); + } + return config; + }, + function (error) { + return Promise.reject(error); + } +); +http.interceptors.response.use( + (response) => { + // 响应成功 + if (response.data.code === 0) { + return response; + } + + // 错误提示 + ElMessage.error(response.data.msg); + + if (response.data.code === 401) { + //自定义业务状态码 + redirectLogin(); + } + + return Promise.reject(new Error(response.data.msg || "Error")); + }, + (error) => { + const status = getValueByKeys(error, "response.status", 500); + const httpCodeLabel: IObject = { + 400: "请求参数错误", + 401: "未授权,请登录", + 403: "拒绝访问", + 404: `请求地址出错: ${getValueByKeys(error, "response.config.url", "")}`, + 408: "请求超时", + 500: "API接口报500错误", + 501: "服务未实现", + 502: "网关错误", + 503: "服务不可用", + 504: "网关超时", + 505: "HTTP版本不受支持" + }; + if (error && error.response) { + console.error("请求错误", error.response.data); + } + if (status === 401) { + redirectLogin(); + } + return Promise.reject(new Error(httpCodeLabel[status] || "接口错误")); + } +); + +const redirectLogin = () => { + router.replace("/login"); + return; +}; + +export default (o: AxiosRequestConfig): Promise => { + return new Promise((resolve, reject) => { + http(o) + .then((res) => { + return resolve(res.data); + }) + .catch(reject); + }); +}; diff --git a/src/utils/router.ts b/src/utils/router.ts new file mode 100644 index 0000000..9d595a2 --- /dev/null +++ b/src/utils/router.ts @@ -0,0 +1,181 @@ +import app from "@/constants/app"; +import Layout from "@/layout/layout.vue"; +import { toSysViewComponentPath } from "@/router"; +import { IObject, IServerMenus } from "@/types/interface"; +import Iframe from "@/views/iframe.vue"; +import { Router, RouteRecordNormalized, RouteRecordRaw } from "vue-router"; +import { getValueByKeys, isExternalLink } from "./utils"; + +/** + * 合并本地路由和服务端菜单,追加isIframe和isNewPage参数到meta中 + * @param serverRoutes + * @param sysRouteMap + * @returns + */ +export const mergeServerRoute = ( + serverRoutes: IServerMenus[], + sysRouteMap: IObject, + matched: IObject[] = [] +): [RouteRecordRaw[], IObject] => { + const rs: RouteRecordRaw[] = []; + let routeToMeta: IObject = {}; + serverRoutes.forEach((x: IServerMenus) => { + const [path, meta] = mergeRouteToOpenStyle(x.url, x); + const viewComponent = sysRouteMap[toSysViewComponentPath(path)]; + const isNotMatchComponent = + !viewComponent && !meta.isIframe && !meta.isNewPage && !(x.children && x.children.length); + const r: RouteRecordRaw = { + path, + name: path, + component: meta.isIframe ? Iframe : x.children && x.children.length ? Layout : viewComponent + }; + r.meta = { + title: x.name, + icon: x.icon, + openStyle: x.openStyle, + id: x.id, + url: x.url, + matched: [...matched, { path, title: x.name }], + ...meta + }; + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + r.redirect = + x.redirect || + (isNotMatchComponent ? { path: "/error", query: { to: 404 }, replace: true } : ""); + if (path) { + routeToMeta[path] = r.meta; + } + if (x.children && x.children.length) { + const childrenRoutes = mergeServerRoute( + x.children, + sysRouteMap, + getValueByKeys(r.meta, "matched", []) + ); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + r.children = childrenRoutes[0]; + routeToMeta = { ...routeToMeta, ...childrenRoutes[1] }; + } + rs.push(r); + }); + return [rs, routeToMeta]; +}; + +/** + * 重置路由 + * @param router + * @param routes + */ +export const resetRoute = (router: Router, routes: RouteRecordRaw[]): void => { + routes.forEach((route: any) => { + const { name } = route; + router.hasRoute(name) && router.removeRoute(name); + }); +}; + +/** + * 路由转换成对象格式 + * @param routes + * @returns + */ +export const routesToObject = (routes: any[]): IObject => { + const rs: IObject = {}; + const loop = (ms: any[]) => { + ms.forEach((x: RouteRecordNormalized): void => { + rs[x.path] = x; + if (x.children && x.children.length) { + loop(x.children); + } + }); + }; + loop(routes); + return rs; +}; + +/** + * 转化为有效的导航路由 + * @param routes + * @returns + */ +export const toValidRoutes = (routes: RouteRecordRaw[]): RouteRecordRaw[] => { + const rs: RouteRecordRaw[] = []; + routes.forEach((x: RouteRecordRaw) => { + if (x.meta && x.meta.isNavigationMenu !== false) { + if (x.children && x.children.length) { + x.children = toValidRoutes(x.children); + } + rs.push(x); + } + }); + return rs; +}; + +/** + * 注册路由,keep-alive不支持多级路由,这里将多级路由转化为1级路由 + * @param router + * @param rs + */ +export const registerToRouter = (router: Router, rs: RouteRecordRaw[]): void => { + rs.forEach((x: RouteRecordRaw) => { + if (!router.hasRoute(x.path)) { + if (x.children && x.children.length) { + router.addRoute({ ...x, children: [] }); + registerToRouter(router, x.children); + } else { + router.addRoute(x); + } + } + }); +}; + +export const mergeRouteToOpenStyle = (url: string, item: IServerMenus): [string, IObject] => { + url = url || `/iframe/${item.id}`; + let meta: IObject = {}; + const toRoutePath = (url: string): string => { + return (url = !/^\//g.test(url) ? "/" + url : url); + }; + //生成变量路由数据 + const renderVariableHook = (url: string): string => { + return url.replace("{{ApiUrl}}", app.api); + }; + if (item.openStyle === 1) { + //外部 + if (isExternalLink(url)) { + url = renderVariableHook(url); + meta = { url, isNewPage: true }; + url = `/webview/${item.id}`; //虚拟无效地址 + } else { + url = toRoutePath(url); + meta = { url: `/#${url}?pop=true`, isNewPage: true }; + } + } else { + //内部 + if (isExternalLink(url)) { + url = renderVariableHook(url); + meta = { url, isIframe: true }; + url = `/iframe/${item.id}`; + } else { + url = toRoutePath(url); + } + } + return [url, meta]; +}; + +/** + * + * @param routes 获取基础路由url和meta数据 + * @returns + */ +export const getBaseRouteToMeta = (routes: RouteRecordRaw[]): IObject => { + let routeToMeta: IObject = {}; + routes.forEach((x) => { + if (x.path && x.meta) { + routeToMeta[x.path] = { ...x.meta, openStyle: 0, id: x.path, url: x.path }; + } + if (x.children && x.children.length) { + routeToMeta = { ...routeToMeta, ...getBaseRouteToMeta(x.children) }; + } + }); + return routeToMeta; +}; diff --git a/src/utils/theme.ts b/src/utils/theme.ts new file mode 100644 index 0000000..a7d135f --- /dev/null +++ b/src/utils/theme.ts @@ -0,0 +1,173 @@ +import { CacheTheme } from "@/constants/cacheKey"; +import { themeSetting } from "@/constants/config"; +import { EMitt, EThemeSetting } from "@/constants/enum"; +import { IFunction, IObject } from "@/types/interface"; +import { getCache, setCache } from "./cache"; +import emits from "./emits"; +import chalkCss from "element-plus/theme-chalk/index.css?inline"; + +/** + * 取主题设置缓存 + * @returns + */ +export const getThemeConfigCache = (): IObject => { + const cache = getCache(CacheTheme, {}, {}); + return { ...themeSetting, ...cache }; +}; + +/** + * 取主题设置缓存 + * @param key + * @param config + * @returns + */ +export const getThemeConfigCacheByKey = ( + key: EThemeSetting, + config?: IObject +): string | boolean | number => { + config = config || getCache(CacheTheme, {}, {}); + return config ? config[key] ?? themeSetting[key] : themeSetting[key]; +}; + +/** + * 生成主题设置样式名称 + * @param config + * @returns + */ +export const getThemeConfigToClass = (config: IObject = {}): IObject => { + const cl: IObject = {}; + Object.keys(config).forEach((x) => { + cl[x] = `ui-${x}-${config[x]}`; + }); + return cl; +}; + +/** + * 主题设置到缓存 + * @param key + * @param value + */ +export const setThemeConfigToCache = ( + key: EThemeSetting, + value: string | boolean | number +): void => { + const theme = getCache(CacheTheme, {}, {}); + setCache(CacheTheme, { ...theme, [key]: value }); +}; + +/** + * 设置主题色 + * @param key + * @param value + */ +export const setThemeColor = (key: string, value: string): void => { + const elm = window.document.querySelector("body"); + if (elm) { + elm.style.setProperty(key, value); + elm.style.setProperty(key + "-light", value + "14"); + } +}; + +/** + * 生成主题色 + * @param theme + * @returns + */ +export const getThemeCluster = (theme: string): string[] => { + const tintColor = (color: string, tint: number) => { + let red: any = parseInt(color.slice(0, 2), 16); + let green: any = parseInt(color.slice(2, 4), 16); + let blue: any = parseInt(color.slice(4, 6), 16); + + if (tint === 0) { + // when primary color is in its rgb space + return [red, green, blue].join(","); + } else { + red += Math.round(tint * (255 - red)); + green += Math.round(tint * (255 - green)); + blue += Math.round(tint * (255 - blue)); + + red = red.toString(16); + green = green.toString(16); + blue = blue.toString(16); + + return `#${red}${green}${blue}`; + } + }; + + const shadeColor = (color: string, shade: number): string => { + let red: any = parseInt(color.slice(0, 2), 16); + let green: any = parseInt(color.slice(2, 4), 16); + let blue: any = parseInt(color.slice(4, 6), 16); + + red = Math.round((1 - shade) * red); + green = Math.round((1 - shade) * green); + blue = Math.round((1 - shade) * blue); + + red = red.toString(16); + green = green.toString(16); + blue = blue.toString(16); + + return `#${red}${green}${blue}`; + }; + + const clusters = [theme]; + for (let i = 0; i <= 9; i++) { + clusters.push(tintColor(theme, Number((i / 10).toFixed(2)))); + } + clusters.push(shadeColor(theme, 0.1)); + return clusters; +}; + +/** + * 获取主题css + * @param url + * @param callback + * @param variable + */ +export const getCSSString = (callback: IFunction, variable?: string): void => { + if (variable) { + (window as any)[variable] = chalkCss; + } + callback(chalkCss); +}; + +export const updateStyle = (style: string, oldCluster: string[], newCluster: string[]): string => { + let newStyle = style; + oldCluster.forEach((color, index) => { + newStyle = newStyle.replace(new RegExp(color, "ig"), newCluster[index]); + }); + return newStyle; +}; + +/** + * 更新主题色 + * @param themeColor + * @param val + * @returns + */ +export const updateTheme = (val: string): void => { + emits.emit(EMitt.OnLoading, true); + const head = document.getElementsByTagName("head")[0]; + const themeCluster = getThemeCluster(val.replace("#", "")); + const getHandler = (variable: string, id: string) => { + return () => { + const originalCluster = getThemeCluster("#409eff".replace("#", "")); + const newStyle = updateStyle((window as any)[variable], originalCluster, themeCluster); + let styleTag = document.getElementById(id); + if (!styleTag) { + styleTag = document.createElement("style"); + styleTag.setAttribute("id", id); + head.appendChild(styleTag); + } + styleTag.innerText = newStyle; + emits.emit(EMitt.OnLoading, false); + }; + }; + const chalkHandler = getHandler("__chalk", "chalk-style"); + if (!(window as any)["__chalk"]) { + getCSSString(chalkHandler, "__chalk"); + } else { + chalkHandler(); + } +}; diff --git a/src/utils/utils.ts b/src/utils/utils.ts new file mode 100644 index 0000000..e673f12 --- /dev/null +++ b/src/utils/utils.ts @@ -0,0 +1,252 @@ +import { IFunction, IObject } from "@/types/interface"; +import { debounce, DebouncedFunc, DebounceSettings } from "lodash"; +import type { App, Plugin } from "vue"; + +/** + * 获取对象下的字段值 + * @param record {} + * @param key 'a.b.c' + * @param defaultValue + * @returns + */ +export const getValueByKeys = (record: IObject = {}, key: string, defaultValue?: unknown): any => { + const keys = key.split("."); + for (let i = 0; i < keys.length; i++) { + record = record[keys[i]] || (i === keys.length - 1 ? defaultValue : {}); + } + return record || defaultValue; +}; + +/** + * 数组转对象 + * @param {*} rs 集合 + * @param {*} key 需要转换目标key的名称 + */ +export const arrayToObject = ( + rs: any[] = [], + key: string | IFunction, + render?: IFunction +): IObject => { + const o: IObject = {}; + rs.forEach((x) => { + o[typeof key === "function" ? key(x) : x[key]] = render ? render(x) : x; + }); + return o; +}; + +/** + * 数组转换格式 + * @param rs + * @param render + * @returns + */ +export const arrayToKeyValueArray = (rs: any[] = [], render?: IFunction): any[] => { + return rs.map((x) => (render ? render(x) : typeof x === "object" ? x : { label: x, value: x })); +}; + +/** + * 是否只null和undefined值 + * @param vl + * @returns + */ +export const isNullOrUndefined = (vl: unknown): boolean => { + return vl === null || typeof vl === "undefined"; +}; + +/** + * 是否外链 + * @param path + * @returns + */ +export const isExternalLink = (path: string): boolean => { + return /^(https?:|\/\/|mailto:|tel:|^{{\s?ApiUrl\s?}})/.test(path); +}; + +/** + * 复制 + * @param value + */ +export const copyToClipboard = (value: string): void => { + const transfer = document.createElement("textarea"); + document.body.appendChild(transfer); + transfer.value = value; + transfer.focus(); + transfer.select(); + if (document.execCommand("copy")) { + document.execCommand("copy"); + } + transfer.blur(); + document.body.removeChild(transfer); +}; + +/** + * 检查是否有权限 + * @param permission + * @param key + * @returns + */ +export const checkPermission = (permission: string[], key: string): boolean => { + return permission.includes(key); +}; + +/** + * 获取uuid + */ +export const getUuid = (): string => { + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) { + const r = (Math.random() * 16) | 0, + v = c == "x" ? r : (r & 0x3) | 0x8; + return v.toString(16); + }); +}; + +/** + * 邮箱 + * @param {*} s + */ +export const isEmail = (s: string): boolean => { + return /^([a-zA-Z0-9._-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s); +}; + +/** + * 手机号码 + * @param {*} s + */ +export const isMobile = (s: string): boolean => { + return /^1[0-9]{10}$/.test(s); +}; + +/** + * 电话号码 + * @param {*} s + */ +export const isPhone = (s: string): boolean => { + return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s); +}; + +/** + * URL地址 + * @param {*} s + */ +export const isURL = (s: string): boolean => { + return /^http[s]?:\/\/.*/.test(s); +}; + +/** + * 正整数 + * @param {*} s + */ +export const isNumber = (s: string): boolean => { + return /^\+?[1-9][0-9]*$/.test(s); +}; + +/** + * 获取字典数据列表 + * @param dictType 字典类型 + */ +export const getDictDataList = (list: IObject[], dictType?: string): IObject[] => { + const type = list.find((element: IObject) => element.dictType === dictType); + if (type) { + return type.dataList; + } else { + return []; + } +}; + +/** + * 获取字典名称 + * @param dictType 字典类型 + * @param dictValue 字典值 + */ +export const getDictLabel = ( + list: IObject[], + dictType: string, + dictValue: number +): string | number => { + const type = list.find((element: IObject) => element.dictType === dictType); + if (type) { + const val = type.dataList.find((element: IObject) => element.dictValue === dictValue + ""); + if (val) { + return val.dictLabel; + } else { + return dictValue; + } + } else { + return dictValue; + } +}; + +/** + * 获取svg图标(id)列表 + */ +export const getIconList = (): string[] => { + const rs: string[] = []; + const list = document.querySelectorAll("svg symbol"); + for (let i = 0; i < list.length; i++) { + rs.push(list[i].id); + } + return rs; +}; + +/** + * 树形数据转换 + * @param {*} data + * @param {*} id + * @param {*} pid + */ +export const treeDataTranslate = (data: IObject[], id?: string, pid?: string): IObject[] => { + const res: IObject[] = []; + const temp: IObject = {}; + id = id || "id"; + pid = pid || "pid"; + for (let i = 0; i < data.length; i++) { + temp[data[i][id]] = data[i]; + } + for (let k = 0; k < data.length; k++) { + if (!temp[data[k][pid]] || data[k][id] === data[k][pid]) { + res.push(data[k]); + continue; + } + if (!temp[data[k][pid]]["children"]) { + temp[data[k][pid]]["children"] = []; + } + temp[data[k][pid]]["children"].push(data[k]); + data[k]["_level"] = (temp[data[k][pid]]._level || 0) + 1; + } + return res; +}; + +/** + * 全局组件安装 + * @param component + * @param alias + * @returns + */ +export const withInstall = (component: T, alias?: string): T & Plugin => { + const comp = component as any; + comp.install = (app: App) => { + app.component(comp.name || comp.displayName, component); + if (alias) { + app.config.globalProperties[alias] = component; + } + }; + return component as T & Plugin; +}; + +/** + * 节流函数 `created() {this.dataFormSubmitHandle = useDebounce(this.dataFormSubmitHandle);}` + * @param fn + * @param wait + * @returns + */ +export const useDebounce = ( + fn: (e?: any) => any, + wait?: number, + options?: DebounceSettings +): DebouncedFunc => { + return debounce(fn, wait ?? 1000, { + leading: true, + trailing: false, + ...options + }); +}; diff --git a/src/views/dailyweather/weatherdailydata-add-or-update.vue b/src/views/dailyweather/weatherdailydata-add-or-update.vue new file mode 100644 index 0000000..854e02f --- /dev/null +++ b/src/views/dailyweather/weatherdailydata-add-or-update.vue @@ -0,0 +1,158 @@ + + + diff --git a/src/views/dailyweather/weatherdailydata-import.vue b/src/views/dailyweather/weatherdailydata-import.vue new file mode 100644 index 0000000..704102c --- /dev/null +++ b/src/views/dailyweather/weatherdailydata-import.vue @@ -0,0 +1,91 @@ + + + diff --git a/src/views/dailyweather/weatherdailydata.vue b/src/views/dailyweather/weatherdailydata.vue new file mode 100644 index 0000000..c5c4c3a --- /dev/null +++ b/src/views/dailyweather/weatherdailydata.vue @@ -0,0 +1,227 @@ + + + + + diff --git a/src/views/error.vue b/src/views/error.vue new file mode 100644 index 0000000..0e9cb24 --- /dev/null +++ b/src/views/error.vue @@ -0,0 +1,58 @@ + + + diff --git a/src/views/home.vue b/src/views/home.vue new file mode 100644 index 0000000..1934403 --- /dev/null +++ b/src/views/home.vue @@ -0,0 +1,521 @@ + + + + + diff --git a/src/views/iframe.vue b/src/views/iframe.vue new file mode 100644 index 0000000..c1e3a0f --- /dev/null +++ b/src/views/iframe.vue @@ -0,0 +1,53 @@ + + + diff --git a/src/views/job/schedule-add-or-update.vue b/src/views/job/schedule-add-or-update.vue new file mode 100644 index 0000000..aa2e065 --- /dev/null +++ b/src/views/job/schedule-add-or-update.vue @@ -0,0 +1,100 @@ + + + + + diff --git a/src/views/job/schedule-log.vue b/src/views/job/schedule-log.vue new file mode 100644 index 0000000..5d80024 --- /dev/null +++ b/src/views/job/schedule-log.vue @@ -0,0 +1,61 @@ + + + diff --git a/src/views/job/schedule.vue b/src/views/job/schedule.vue new file mode 100644 index 0000000..ba6c66a --- /dev/null +++ b/src/views/job/schedule.vue @@ -0,0 +1,182 @@ + + + diff --git a/src/views/login.vue b/src/views/login.vue new file mode 100644 index 0000000..57b94b3 --- /dev/null +++ b/src/views/login.vue @@ -0,0 +1,267 @@ + + + + + diff --git a/src/views/oss/oss-config.vue b/src/views/oss/oss-config.vue new file mode 100644 index 0000000..faab408 --- /dev/null +++ b/src/views/oss/oss-config.vue @@ -0,0 +1,200 @@ + + + diff --git a/src/views/oss/oss-upload.vue b/src/views/oss/oss-upload.vue new file mode 100644 index 0000000..ed770e5 --- /dev/null +++ b/src/views/oss/oss-upload.vue @@ -0,0 +1,65 @@ + + + diff --git a/src/views/oss/oss.vue b/src/views/oss/oss.vue new file mode 100644 index 0000000..fbc9da5 --- /dev/null +++ b/src/views/oss/oss.vue @@ -0,0 +1,68 @@ + + + diff --git a/src/views/region/region.vue b/src/views/region/region.vue new file mode 100644 index 0000000..b9a323b --- /dev/null +++ b/src/views/region/region.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/src/views/station/weatherstation-add-or-update.vue b/src/views/station/weatherstation-add-or-update.vue new file mode 100644 index 0000000..9055298 --- /dev/null +++ b/src/views/station/weatherstation-add-or-update.vue @@ -0,0 +1,257 @@ + + + + diff --git a/src/views/station/weatherstation.vue b/src/views/station/weatherstation.vue new file mode 100644 index 0000000..1e73c86 --- /dev/null +++ b/src/views/station/weatherstation.vue @@ -0,0 +1,113 @@ + + + diff --git a/src/views/sys/dept-add-or-update.vue b/src/views/sys/dept-add-or-update.vue new file mode 100644 index 0000000..55e715b --- /dev/null +++ b/src/views/sys/dept-add-or-update.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/src/views/sys/dept.vue b/src/views/sys/dept.vue new file mode 100644 index 0000000..ebe0136 --- /dev/null +++ b/src/views/sys/dept.vue @@ -0,0 +1,40 @@ + + + diff --git a/src/views/sys/dict-data-add-or-update.vue b/src/views/sys/dict-data-add-or-update.vue new file mode 100644 index 0000000..024c615 --- /dev/null +++ b/src/views/sys/dict-data-add-or-update.vue @@ -0,0 +1,92 @@ + + + diff --git a/src/views/sys/dict-data.vue b/src/views/sys/dict-data.vue new file mode 100644 index 0000000..23d8a24 --- /dev/null +++ b/src/views/sys/dict-data.vue @@ -0,0 +1,71 @@ + + + diff --git a/src/views/sys/dict-type-add-or-update.vue b/src/views/sys/dict-type-add-or-update.vue new file mode 100644 index 0000000..ec8d696 --- /dev/null +++ b/src/views/sys/dict-type-add-or-update.vue @@ -0,0 +1,90 @@ + + + diff --git a/src/views/sys/dict-type.vue b/src/views/sys/dict-type.vue new file mode 100644 index 0000000..30ac7b8 --- /dev/null +++ b/src/views/sys/dict-type.vue @@ -0,0 +1,84 @@ + + + diff --git a/src/views/sys/log-error.vue b/src/views/sys/log-error.vue new file mode 100644 index 0000000..381040c --- /dev/null +++ b/src/views/sys/log-error.vue @@ -0,0 +1,60 @@ + + + + + diff --git a/src/views/sys/log-login.vue b/src/views/sys/log-login.vue new file mode 100644 index 0000000..306bacf --- /dev/null +++ b/src/views/sys/log-login.vue @@ -0,0 +1,58 @@ + + + diff --git a/src/views/sys/log-operation.vue b/src/views/sys/log-operation.vue new file mode 100644 index 0000000..87de7e2 --- /dev/null +++ b/src/views/sys/log-operation.vue @@ -0,0 +1,56 @@ + + + diff --git a/src/views/sys/menu-add-or-update.vue b/src/views/sys/menu-add-or-update.vue new file mode 100644 index 0000000..64f2afb --- /dev/null +++ b/src/views/sys/menu-add-or-update.vue @@ -0,0 +1,236 @@ + + + + + diff --git a/src/views/sys/menu.vue b/src/views/sys/menu.vue new file mode 100644 index 0000000..ad6e16e --- /dev/null +++ b/src/views/sys/menu.vue @@ -0,0 +1,66 @@ + + + diff --git a/src/views/sys/params-add-or-update.vue b/src/views/sys/params-add-or-update.vue new file mode 100644 index 0000000..9c20b13 --- /dev/null +++ b/src/views/sys/params-add-or-update.vue @@ -0,0 +1,85 @@ + + + diff --git a/src/views/sys/params.vue b/src/views/sys/params.vue new file mode 100644 index 0000000..9005e71 --- /dev/null +++ b/src/views/sys/params.vue @@ -0,0 +1,56 @@ + + + diff --git a/src/views/sys/role-add-or-update.vue b/src/views/sys/role-add-or-update.vue new file mode 100644 index 0000000..707a658 --- /dev/null +++ b/src/views/sys/role-add-or-update.vue @@ -0,0 +1,130 @@ + + + diff --git a/src/views/sys/role.vue b/src/views/sys/role.vue new file mode 100644 index 0000000..e922455 --- /dev/null +++ b/src/views/sys/role.vue @@ -0,0 +1,56 @@ + + + diff --git a/src/views/sys/user-add-or-update.vue b/src/views/sys/user-add-or-update.vue new file mode 100644 index 0000000..43e5bec --- /dev/null +++ b/src/views/sys/user-add-or-update.vue @@ -0,0 +1,180 @@ + + + + + diff --git a/src/views/sys/user-update-password.vue b/src/views/sys/user-update-password.vue new file mode 100644 index 0000000..3c0bb90 --- /dev/null +++ b/src/views/sys/user-update-password.vue @@ -0,0 +1,73 @@ + + + diff --git a/src/views/sys/user.vue b/src/views/sys/user.vue new file mode 100644 index 0000000..936117d --- /dev/null +++ b/src/views/sys/user.vue @@ -0,0 +1,82 @@ + + + diff --git a/src/views/tools/color.vue b/src/views/tools/color.vue new file mode 100644 index 0000000..bd3f412 --- /dev/null +++ b/src/views/tools/color.vue @@ -0,0 +1,110 @@ + + + + + diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..fb8a67a --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,29 @@ +{ + "compilerOptions": { + "target": "esnext", + "module": "esnext", + "strict": true, + "noImplicitThis": true, + "jsx": "preserve", + "allowJs": true, + "importHelpers": true, + "moduleResolution": "node", + "experimentalDecorators": true, + "skipLibCheck": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "sourceMap": true, + "resolveJsonModule": true, + "baseUrl": ".", + "types": ["vite/client"], + "paths": { + "@/*": ["src/*"] + }, + "compilerOptions": { + "types": ["vite-plugin-svg-icons/client"] + }, + "lib": ["esnext", "dom", "dom.iterable", "scripthost"] + }, + "include": ["src/**/*.ts", "src/**/*.vue", "tests/**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..e188e2b --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,65 @@ +import vue from "@vitejs/plugin-vue"; +import { resolve } from "path"; +import { defineConfig, loadEnv, UserConfig, UserConfigExport } from "vite"; +import { createHtmlPlugin } from "vite-plugin-html"; +import tsconfigPaths from "vite-tsconfig-paths"; +import { createSvgIconsPlugin } from "vite-plugin-svg-icons"; + +export default (config: UserConfig): UserConfigExport => { + const mode = config.mode as string; + return defineConfig({ + base: "./", + plugins: [ + vue(), + createHtmlPlugin({ + minify: true, + inject: { + data: { + apiURL: loadEnv(mode, process.cwd()).VITE_APP_API, + title: "" + }, + tags: [ + { + injectTo: 'body-prepend', + tag: 'div', + attrs: { + id: 'tag' + } + } + ] + } + }), + tsconfigPaths(), + createSvgIconsPlugin({ + iconDirs: [resolve(__dirname, "src/assets/icons/svg")], + symbolId: "icon-[dir]-[name]" + }) + ], + build: { + chunkSizeWarningLimit: 1024, + commonjsOptions: { + include: /node_modules|lib/ + }, + rollupOptions: { + output: { + manualChunks: { + lodash: ["lodash"], + vlib: ["vue", "vue-router", "element-plus"] + } + } + } + }, + resolve: { + alias: { + // 配置别名 + "@": resolve(__dirname, "./src") + } + }, + server: { + open: false, // 自动启动浏览器 + host: "0.0.0.0", // localhost + port: 8001, // 端口号 + hmr: { overlay: false } + } + }); +};