From b75a2d2b4105a97a65abf0d6887c3b9f11a3c2dc Mon Sep 17 00:00:00 2001
From: jlzhou <12020042@qq.com>
Date: Fri, 28 Apr 2023 17:40:22 +0800
Subject: [PATCH] init
---
.env.development | 17 +
.env.production | 20 +
.gitignore | 23 +
README.md | 86 +
bin/build.bat | 12 +
bin/package.bat | 12 +
bin/run-web.bat | 12 +
html/ie.html | 46 +
index.html | 215 ++
package.json | 43 +
pnpm-lock.yaml | 3145 +++++++++++++++++
public/favicon.ico | Bin 0 -> 8131 bytes
src/App.vue | 15 +
src/api/demo/demo.js | 54 +
src/api/demo/tree.js | 44 +
src/api/login.js | 59 +
src/api/menu.js | 9 +
src/api/monitor/cache.js | 57 +
src/api/monitor/logininfor.js | 34 +
src/api/monitor/online.js | 18 +
src/api/monitor/operlog.js | 26 +
src/api/system/config.js | 72 +
src/api/system/dept.js | 52 +
src/api/system/dict/data.js | 52 +
src/api/system/dict/type.js | 60 +
src/api/system/menu.js | 60 +
src/api/system/notice.js | 44 +
src/api/system/oss.js | 27 +
src/api/system/ossConfig.js | 58 +
src/api/system/post.js | 44 +
src/api/system/role.js | 119 +
src/api/system/user.js | 135 +
src/api/tool/gen.js | 85 +
src/assets/401_images/401.gif | Bin 0 -> 164227 bytes
src/assets/404_images/404.png | Bin 0 -> 98071 bytes
src/assets/404_images/404_cloud.png | Bin 0 -> 4766 bytes
src/assets/icons/svg/404.svg | 1 +
src/assets/icons/svg/bug.svg | 1 +
src/assets/icons/svg/build.svg | 1 +
src/assets/icons/svg/button.svg | 1 +
src/assets/icons/svg/cascader.svg | 1 +
src/assets/icons/svg/chart.svg | 1 +
src/assets/icons/svg/checkbox.svg | 1 +
src/assets/icons/svg/clipboard.svg | 1 +
src/assets/icons/svg/code.svg | 1 +
src/assets/icons/svg/color.svg | 1 +
src/assets/icons/svg/component.svg | 1 +
src/assets/icons/svg/dashboard.svg | 1 +
src/assets/icons/svg/date-range.svg | 1 +
src/assets/icons/svg/date.svg | 1 +
src/assets/icons/svg/dict.svg | 1 +
src/assets/icons/svg/documentation.svg | 1 +
src/assets/icons/svg/download.svg | 1 +
src/assets/icons/svg/drag.svg | 1 +
src/assets/icons/svg/druid.svg | 1 +
src/assets/icons/svg/edit.svg | 1 +
src/assets/icons/svg/education.svg | 1 +
src/assets/icons/svg/email.svg | 1 +
src/assets/icons/svg/example.svg | 1 +
src/assets/icons/svg/excel.svg | 1 +
src/assets/icons/svg/exit-fullscreen.svg | 1 +
src/assets/icons/svg/eye-open.svg | 1 +
src/assets/icons/svg/eye.svg | 1 +
src/assets/icons/svg/form.svg | 1 +
src/assets/icons/svg/fullscreen.svg | 1 +
src/assets/icons/svg/github.svg | 1 +
src/assets/icons/svg/guide.svg | 1 +
src/assets/icons/svg/icon.svg | 1 +
src/assets/icons/svg/input.svg | 1 +
src/assets/icons/svg/international.svg | 1 +
src/assets/icons/svg/job.svg | 1 +
src/assets/icons/svg/language.svg | 1 +
src/assets/icons/svg/link.svg | 1 +
src/assets/icons/svg/list.svg | 1 +
src/assets/icons/svg/lock.svg | 1 +
src/assets/icons/svg/log.svg | 1 +
src/assets/icons/svg/logininfor.svg | 1 +
src/assets/icons/svg/message.svg | 1 +
src/assets/icons/svg/money.svg | 1 +
src/assets/icons/svg/monitor.svg | 2 +
src/assets/icons/svg/nested.svg | 1 +
src/assets/icons/svg/number.svg | 1 +
src/assets/icons/svg/online.svg | 1 +
src/assets/icons/svg/password.svg | 1 +
src/assets/icons/svg/pdf.svg | 1 +
src/assets/icons/svg/people.svg | 1 +
src/assets/icons/svg/peoples.svg | 1 +
src/assets/icons/svg/phone.svg | 1 +
src/assets/icons/svg/post.svg | 1 +
src/assets/icons/svg/qq.svg | 1 +
src/assets/icons/svg/question.svg | 1 +
src/assets/icons/svg/radio.svg | 1 +
src/assets/icons/svg/rate.svg | 1 +
src/assets/icons/svg/redis-list.svg | 2 +
src/assets/icons/svg/redis.svg | 1 +
src/assets/icons/svg/row.svg | 1 +
src/assets/icons/svg/search.svg | 1 +
src/assets/icons/svg/select.svg | 1 +
src/assets/icons/svg/server.svg | 1 +
src/assets/icons/svg/shopping.svg | 1 +
src/assets/icons/svg/size.svg | 1 +
src/assets/icons/svg/skill.svg | 1 +
src/assets/icons/svg/slider.svg | 1 +
src/assets/icons/svg/star.svg | 1 +
src/assets/icons/svg/swagger.svg | 1 +
src/assets/icons/svg/switch.svg | 1 +
src/assets/icons/svg/system.svg | 2 +
src/assets/icons/svg/tab.svg | 1 +
src/assets/icons/svg/table.svg | 1 +
src/assets/icons/svg/textarea.svg | 1 +
src/assets/icons/svg/theme.svg | 1 +
src/assets/icons/svg/time-range.svg | 1 +
src/assets/icons/svg/time.svg | 1 +
src/assets/icons/svg/tool.svg | 1 +
src/assets/icons/svg/tree-table.svg | 1 +
src/assets/icons/svg/tree.svg | 1 +
src/assets/icons/svg/upload.svg | 1 +
src/assets/icons/svg/user.svg | 1 +
src/assets/icons/svg/validCode.svg | 1 +
src/assets/icons/svg/wechat.svg | 1 +
src/assets/icons/svg/zip.svg | 1 +
src/assets/images/dark.svg | 39 +
src/assets/images/light.svg | 39 +
src/assets/images/login-background.jpg | Bin 0 -> 577784 bytes
src/assets/images/profile.jpg | Bin 0 -> 81131 bytes
src/assets/logo/logo.png | Bin 0 -> 8131 bytes
src/assets/styles/btn.scss | 99 +
src/assets/styles/element-ui.scss | 96 +
src/assets/styles/index.scss | 193 +
src/assets/styles/mixin.scss | 66 +
src/assets/styles/ruoyi.scss | 277 ++
src/assets/styles/sidebar.scss | 238 ++
src/assets/styles/transition.scss | 53 +
src/assets/styles/variables.module.scss | 65 +
src/components/Breadcrumb/index.vue | 66 +
src/components/DictTag/index.vue | 49 +
src/components/Editor/index.vue | 245 ++
src/components/FileUpload/index.vue | 218 ++
src/components/Hamburger/index.vue | 41 +
src/components/HeaderSearch/index.vue | 179 +
src/components/IconSelect/index.vue | 74 +
src/components/IconSelect/requireIcons.js | 8 +
src/components/ImagePreview/index.vue | 85 +
src/components/ImageUpload/index.vue | 223 ++
src/components/Pagination/index.vue | 105 +
src/components/ParentView/index.vue | 3 +
src/components/RightToolbar/index.vue | 105 +
src/components/RuoYi/Doc/index.vue | 13 +
src/components/RuoYi/Git/index.vue | 13 +
src/components/Screenfull/index.vue | 22 +
src/components/SizeSelect/index.vue | 45 +
src/components/SvgIcon/index.vue | 53 +
src/components/SvgIcon/svgicon.js | 10 +
src/components/TopNav/index.vue | 186 +
src/components/TreeSelect/index.vue | 156 +
src/components/iFrame/index.vue | 31 +
src/directive/common/copyText.js | 66 +
src/directive/index.js | 9 +
src/directive/permission/hasPermi.js | 28 +
src/directive/permission/hasRole.js | 28 +
src/layout/components/AppMain.vue | 53 +
src/layout/components/IframeToggle/index.vue | 19 +
src/layout/components/InnerLink/index.vue | 24 +
src/layout/components/Navbar.vue | 191 +
src/layout/components/Settings/index.vue | 241 ++
src/layout/components/Sidebar/Link.vue | 40 +
src/layout/components/Sidebar/Logo.vue | 81 +
src/layout/components/Sidebar/SidebarItem.vue | 102 +
src/layout/components/Sidebar/index.vue | 54 +
src/layout/components/TagsView/ScrollPane.vue | 105 +
src/layout/components/TagsView/index.vue | 338 ++
src/layout/components/index.js | 4 +
src/layout/index.vue | 111 +
src/main.js | 88 +
src/permission.js | 63 +
src/plugins/auth.js | 60 +
src/plugins/cache.js | 77 +
src/plugins/download.js | 65 +
src/plugins/index.js | 18 +
src/plugins/modal.js | 82 +
src/plugins/tab.js | 65 +
src/router/index.js | 175 +
src/settings.js | 47 +
src/store/index.js | 3 +
src/store/modules/app.js | 46 +
src/store/modules/dict.js | 57 +
src/store/modules/permission.js | 138 +
src/store/modules/settings.js | 38 +
src/store/modules/tagsView.js | 182 +
src/store/modules/user.js | 70 +
src/utils/auth.js | 15 +
src/utils/dict.js | 24 +
src/utils/dynamicTitle.js | 15 +
src/utils/errorCode.js | 6 +
src/utils/index.js | 390 ++
src/utils/jsencrypt.js | 30 +
src/utils/permission.js | 51 +
src/utils/request.js | 148 +
src/utils/ruoyi.js | 246 ++
src/utils/scroll-to.js | 58 +
src/utils/theme.js | 49 +
src/utils/validate.js | 93 +
src/views/demo/demo/index.vue | 403 +++
src/views/demo/tree/index.vue | 281 ++
src/views/error/401.vue | 82 +
src/views/error/404.vue | 227 ++
src/views/index.vue | 176 +
src/views/login.vue | 215 ++
src/views/monitor/admin/index.vue | 13 +
src/views/monitor/cache/index.vue | 129 +
src/views/monitor/cache/list.vue | 246 ++
src/views/monitor/logininfor/index.vue | 225 ++
src/views/monitor/online/index.vue | 106 +
src/views/monitor/operlog/index.vue | 291 ++
src/views/monitor/xxljob/index.vue | 13 +
src/views/redirect/index.vue | 14 +
src/views/register.vue | 219 ++
src/views/system/config/index.vue | 306 ++
src/views/system/dept/index.vue | 278 ++
src/views/system/dict/data.vue | 350 ++
src/views/system/dict/index.vue | 313 ++
src/views/system/menu/index.vue | 441 +++
src/views/system/notice/index.vue | 283 ++
src/views/system/oss/config.vue | 382 ++
src/views/system/oss/index.vue | 374 ++
src/views/system/post/index.vue | 277 ++
src/views/system/role/authUser.vue | 172 +
src/views/system/role/index.vue | 560 +++
src/views/system/role/selectUser.vue | 140 +
src/views/system/user/authRole.vue | 112 +
src/views/system/user/index.vue | 608 ++++
src/views/system/user/profile/index.vue | 87 +
src/views/system/user/profile/resetPwd.vue | 57 +
src/views/system/user/profile/userAvatar.vue | 171 +
src/views/system/user/profile/userInfo.vue | 56 +
src/views/tool/build/index.vue | 3 +
src/views/tool/gen/basicInfoForm.vue | 48 +
src/views/tool/gen/editTable.vue | 198 ++
src/views/tool/gen/genInfoForm.vue | 281 ++
src/views/tool/gen/importTable.vue | 118 +
src/views/tool/gen/index.vue | 296 ++
vite.config.js | 57 +
vite/plugins/auto-import.js | 12 +
vite/plugins/compression.js | 28 +
vite/plugins/index.js | 15 +
vite/plugins/setup-extend.js | 5 +
vite/plugins/svg-icon.js | 10 +
247 files changed, 20509 insertions(+)
create mode 100644 .env.development
create mode 100644 .env.production
create mode 100644 .gitignore
create mode 100644 README.md
create mode 100644 bin/build.bat
create mode 100644 bin/package.bat
create mode 100644 bin/run-web.bat
create mode 100644 html/ie.html
create mode 100644 index.html
create mode 100644 package.json
create mode 100644 pnpm-lock.yaml
create mode 100644 public/favicon.ico
create mode 100644 src/App.vue
create mode 100644 src/api/demo/demo.js
create mode 100644 src/api/demo/tree.js
create mode 100644 src/api/login.js
create mode 100644 src/api/menu.js
create mode 100644 src/api/monitor/cache.js
create mode 100644 src/api/monitor/logininfor.js
create mode 100644 src/api/monitor/online.js
create mode 100644 src/api/monitor/operlog.js
create mode 100644 src/api/system/config.js
create mode 100644 src/api/system/dept.js
create mode 100644 src/api/system/dict/data.js
create mode 100644 src/api/system/dict/type.js
create mode 100644 src/api/system/menu.js
create mode 100644 src/api/system/notice.js
create mode 100644 src/api/system/oss.js
create mode 100644 src/api/system/ossConfig.js
create mode 100644 src/api/system/post.js
create mode 100644 src/api/system/role.js
create mode 100644 src/api/system/user.js
create mode 100644 src/api/tool/gen.js
create mode 100644 src/assets/401_images/401.gif
create mode 100644 src/assets/404_images/404.png
create mode 100644 src/assets/404_images/404_cloud.png
create mode 100644 src/assets/icons/svg/404.svg
create mode 100644 src/assets/icons/svg/bug.svg
create mode 100644 src/assets/icons/svg/build.svg
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/chart.svg
create mode 100644 src/assets/icons/svg/checkbox.svg
create mode 100644 src/assets/icons/svg/clipboard.svg
create mode 100644 src/assets/icons/svg/code.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/dashboard.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/dict.svg
create mode 100644 src/assets/icons/svg/documentation.svg
create mode 100644 src/assets/icons/svg/download.svg
create mode 100644 src/assets/icons/svg/drag.svg
create mode 100644 src/assets/icons/svg/druid.svg
create mode 100644 src/assets/icons/svg/edit.svg
create mode 100644 src/assets/icons/svg/education.svg
create mode 100644 src/assets/icons/svg/email.svg
create mode 100644 src/assets/icons/svg/example.svg
create mode 100644 src/assets/icons/svg/excel.svg
create mode 100644 src/assets/icons/svg/exit-fullscreen.svg
create mode 100644 src/assets/icons/svg/eye-open.svg
create mode 100644 src/assets/icons/svg/eye.svg
create mode 100644 src/assets/icons/svg/form.svg
create mode 100644 src/assets/icons/svg/fullscreen.svg
create mode 100644 src/assets/icons/svg/github.svg
create mode 100644 src/assets/icons/svg/guide.svg
create mode 100644 src/assets/icons/svg/icon.svg
create mode 100644 src/assets/icons/svg/input.svg
create mode 100644 src/assets/icons/svg/international.svg
create mode 100644 src/assets/icons/svg/job.svg
create mode 100644 src/assets/icons/svg/language.svg
create mode 100644 src/assets/icons/svg/link.svg
create mode 100644 src/assets/icons/svg/list.svg
create mode 100644 src/assets/icons/svg/lock.svg
create mode 100644 src/assets/icons/svg/log.svg
create mode 100644 src/assets/icons/svg/logininfor.svg
create mode 100644 src/assets/icons/svg/message.svg
create mode 100644 src/assets/icons/svg/money.svg
create mode 100644 src/assets/icons/svg/monitor.svg
create mode 100644 src/assets/icons/svg/nested.svg
create mode 100644 src/assets/icons/svg/number.svg
create mode 100644 src/assets/icons/svg/online.svg
create mode 100644 src/assets/icons/svg/password.svg
create mode 100644 src/assets/icons/svg/pdf.svg
create mode 100644 src/assets/icons/svg/people.svg
create mode 100644 src/assets/icons/svg/peoples.svg
create mode 100644 src/assets/icons/svg/phone.svg
create mode 100644 src/assets/icons/svg/post.svg
create mode 100644 src/assets/icons/svg/qq.svg
create mode 100644 src/assets/icons/svg/question.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/redis-list.svg
create mode 100644 src/assets/icons/svg/redis.svg
create mode 100644 src/assets/icons/svg/row.svg
create mode 100644 src/assets/icons/svg/search.svg
create mode 100644 src/assets/icons/svg/select.svg
create mode 100644 src/assets/icons/svg/server.svg
create mode 100644 src/assets/icons/svg/shopping.svg
create mode 100644 src/assets/icons/svg/size.svg
create mode 100644 src/assets/icons/svg/skill.svg
create mode 100644 src/assets/icons/svg/slider.svg
create mode 100644 src/assets/icons/svg/star.svg
create mode 100644 src/assets/icons/svg/swagger.svg
create mode 100644 src/assets/icons/svg/switch.svg
create mode 100644 src/assets/icons/svg/system.svg
create mode 100644 src/assets/icons/svg/tab.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/theme.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/tool.svg
create mode 100644 src/assets/icons/svg/tree-table.svg
create mode 100644 src/assets/icons/svg/tree.svg
create mode 100644 src/assets/icons/svg/upload.svg
create mode 100644 src/assets/icons/svg/user.svg
create mode 100644 src/assets/icons/svg/validCode.svg
create mode 100644 src/assets/icons/svg/wechat.svg
create mode 100644 src/assets/icons/svg/zip.svg
create mode 100644 src/assets/images/dark.svg
create mode 100644 src/assets/images/light.svg
create mode 100644 src/assets/images/login-background.jpg
create mode 100644 src/assets/images/profile.jpg
create mode 100644 src/assets/logo/logo.png
create mode 100644 src/assets/styles/btn.scss
create mode 100644 src/assets/styles/element-ui.scss
create mode 100644 src/assets/styles/index.scss
create mode 100644 src/assets/styles/mixin.scss
create mode 100644 src/assets/styles/ruoyi.scss
create mode 100644 src/assets/styles/sidebar.scss
create mode 100644 src/assets/styles/transition.scss
create mode 100644 src/assets/styles/variables.module.scss
create mode 100644 src/components/Breadcrumb/index.vue
create mode 100644 src/components/DictTag/index.vue
create mode 100644 src/components/Editor/index.vue
create mode 100644 src/components/FileUpload/index.vue
create mode 100644 src/components/Hamburger/index.vue
create mode 100644 src/components/HeaderSearch/index.vue
create mode 100644 src/components/IconSelect/index.vue
create mode 100644 src/components/IconSelect/requireIcons.js
create mode 100644 src/components/ImagePreview/index.vue
create mode 100644 src/components/ImageUpload/index.vue
create mode 100644 src/components/Pagination/index.vue
create mode 100644 src/components/ParentView/index.vue
create mode 100644 src/components/RightToolbar/index.vue
create mode 100644 src/components/RuoYi/Doc/index.vue
create mode 100644 src/components/RuoYi/Git/index.vue
create mode 100644 src/components/Screenfull/index.vue
create mode 100644 src/components/SizeSelect/index.vue
create mode 100644 src/components/SvgIcon/index.vue
create mode 100644 src/components/SvgIcon/svgicon.js
create mode 100644 src/components/TopNav/index.vue
create mode 100644 src/components/TreeSelect/index.vue
create mode 100644 src/components/iFrame/index.vue
create mode 100644 src/directive/common/copyText.js
create mode 100644 src/directive/index.js
create mode 100644 src/directive/permission/hasPermi.js
create mode 100644 src/directive/permission/hasRole.js
create mode 100644 src/layout/components/AppMain.vue
create mode 100644 src/layout/components/IframeToggle/index.vue
create mode 100644 src/layout/components/InnerLink/index.vue
create mode 100644 src/layout/components/Navbar.vue
create mode 100644 src/layout/components/Settings/index.vue
create mode 100644 src/layout/components/Sidebar/Link.vue
create mode 100644 src/layout/components/Sidebar/Logo.vue
create mode 100644 src/layout/components/Sidebar/SidebarItem.vue
create mode 100644 src/layout/components/Sidebar/index.vue
create mode 100644 src/layout/components/TagsView/ScrollPane.vue
create mode 100644 src/layout/components/TagsView/index.vue
create mode 100644 src/layout/components/index.js
create mode 100644 src/layout/index.vue
create mode 100644 src/main.js
create mode 100644 src/permission.js
create mode 100644 src/plugins/auth.js
create mode 100644 src/plugins/cache.js
create mode 100644 src/plugins/download.js
create mode 100644 src/plugins/index.js
create mode 100644 src/plugins/modal.js
create mode 100644 src/plugins/tab.js
create mode 100644 src/router/index.js
create mode 100644 src/settings.js
create mode 100644 src/store/index.js
create mode 100644 src/store/modules/app.js
create mode 100644 src/store/modules/dict.js
create mode 100644 src/store/modules/permission.js
create mode 100644 src/store/modules/settings.js
create mode 100644 src/store/modules/tagsView.js
create mode 100644 src/store/modules/user.js
create mode 100644 src/utils/auth.js
create mode 100644 src/utils/dict.js
create mode 100644 src/utils/dynamicTitle.js
create mode 100644 src/utils/errorCode.js
create mode 100644 src/utils/index.js
create mode 100644 src/utils/jsencrypt.js
create mode 100644 src/utils/permission.js
create mode 100644 src/utils/request.js
create mode 100644 src/utils/ruoyi.js
create mode 100644 src/utils/scroll-to.js
create mode 100644 src/utils/theme.js
create mode 100644 src/utils/validate.js
create mode 100644 src/views/demo/demo/index.vue
create mode 100644 src/views/demo/tree/index.vue
create mode 100644 src/views/error/401.vue
create mode 100644 src/views/error/404.vue
create mode 100644 src/views/index.vue
create mode 100644 src/views/login.vue
create mode 100644 src/views/monitor/admin/index.vue
create mode 100644 src/views/monitor/cache/index.vue
create mode 100644 src/views/monitor/cache/list.vue
create mode 100644 src/views/monitor/logininfor/index.vue
create mode 100644 src/views/monitor/online/index.vue
create mode 100644 src/views/monitor/operlog/index.vue
create mode 100644 src/views/monitor/xxljob/index.vue
create mode 100644 src/views/redirect/index.vue
create mode 100644 src/views/register.vue
create mode 100644 src/views/system/config/index.vue
create mode 100644 src/views/system/dept/index.vue
create mode 100644 src/views/system/dict/data.vue
create mode 100644 src/views/system/dict/index.vue
create mode 100644 src/views/system/menu/index.vue
create mode 100644 src/views/system/notice/index.vue
create mode 100644 src/views/system/oss/config.vue
create mode 100644 src/views/system/oss/index.vue
create mode 100644 src/views/system/post/index.vue
create mode 100644 src/views/system/role/authUser.vue
create mode 100644 src/views/system/role/index.vue
create mode 100644 src/views/system/role/selectUser.vue
create mode 100644 src/views/system/user/authRole.vue
create mode 100644 src/views/system/user/index.vue
create mode 100644 src/views/system/user/profile/index.vue
create mode 100644 src/views/system/user/profile/resetPwd.vue
create mode 100644 src/views/system/user/profile/userAvatar.vue
create mode 100644 src/views/system/user/profile/userInfo.vue
create mode 100644 src/views/tool/build/index.vue
create mode 100644 src/views/tool/gen/basicInfoForm.vue
create mode 100644 src/views/tool/gen/editTable.vue
create mode 100644 src/views/tool/gen/genInfoForm.vue
create mode 100644 src/views/tool/gen/importTable.vue
create mode 100644 src/views/tool/gen/index.vue
create mode 100644 vite.config.js
create mode 100644 vite/plugins/auto-import.js
create mode 100644 vite/plugins/compression.js
create mode 100644 vite/plugins/index.js
create mode 100644 vite/plugins/setup-extend.js
create mode 100644 vite/plugins/svg-icon.js
diff --git a/.env.development b/.env.development
new file mode 100644
index 0000000..04cd0f8
--- /dev/null
+++ b/.env.development
@@ -0,0 +1,17 @@
+# 页面标题
+VITE_APP_TITLE = RuoYi-Vue-Plus后台管理系统
+
+# 开发环境配置
+VITE_APP_ENV = 'development'
+
+# 若依管理系统/开发环境
+VITE_APP_BASE_API = '/dev-api'
+
+# 应用访问路径 例如使用前缀 /admin/
+VITE_APP_CONTEXT_PATH = '/'
+
+# 监控地址
+VITE_APP_MONITRO_ADMIN = 'http://localhost:9090/admin/login'
+
+# xxl-job 控制台地址
+VITE_APP_XXL_JOB_ADMIN = 'http://localhost:9100/xxl-job-admin'
diff --git a/.env.production b/.env.production
new file mode 100644
index 0000000..dac722d
--- /dev/null
+++ b/.env.production
@@ -0,0 +1,20 @@
+# 页面标题
+VITE_APP_TITLE = RuoYi-Vue-Plus后台管理系统
+
+# 生产环境配置
+VITE_APP_ENV = 'production'
+
+# 应用访问路径 例如使用前缀 /admin/
+VITE_APP_CONTEXT_PATH = '/'
+
+# 监控地址
+VITE_APP_MONITRO_ADMIN = '/admin/login'
+
+# 监控地址
+VITE_APP_XXL_JOB_ADMIN = '/xxl-job-admin'
+
+# 若依管理系统/生产环境
+VITE_APP_BASE_API = '/prod-api'
+
+# 是否在打包时开启压缩,支持 gzip 和 brotli
+VITE_BUILD_COMPRESS = gzip
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..78a752d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,23 @@
+.DS_Store
+node_modules/
+dist/
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+**/*.log
+
+tests/**/coverage/
+tests/e2e/reports
+selenium-debug.log
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.local
+
+package-lock.json
+yarn.lock
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..f3c17a8
--- /dev/null
+++ b/README.md
@@ -0,0 +1,86 @@
+## 平台简介
+
+* 本仓库为前端技术栈 [Vue3](https://v3.cn.vuejs.org) + [Element Plus](https://element-plus.org/zh-CN) + [Vite](https://cn.vitejs.dev) 版本。
+* 配套后端代码仓库地址[RuoYi-Vue-Plus 4.X(注意版本号)](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus)
+* 5.X后端需要使用此项目 [plus-ui](https://gitee.com/JavaLionLi/plus-ui)
+
+## 前端运行
+
+```bash
+# 克隆项目
+git clone https://gitee.com/JavaLionLi/RuoYi-Vue-Plus-UI.git
+
+# 进入项目目录
+cd RuoYi-Vue-Plus-UI
+
+# 安装依赖
+npm install --registry=https://registry.npmmirror.com
+
+# 启动服务
+npm run dev
+
+# 构建测试环境 yarn build:stage
+# 构建生产环境 yarn build:prod
+# 前端访问地址 http://localhost:80
+```
+
+## 后端改造
+参考后端代码内 `ruoyi-generator/resources/vm/vue/v3/readme.txt` 说明
+
+## 内置功能
+
+1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
+2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
+3. 岗位管理:配置系统用户所属担任职务。
+4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
+5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
+6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
+7. 参数管理:对系统动态配置常用参数。
+8. 通知公告:系统通知公告信息发布维护。
+9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
+10. 登录日志:系统登录日志记录查询包含登录异常。
+11. 在线用户:当前系统中活跃用户状态监控。
+12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
+13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
+14. 系统接口:根据业务代码自动生成相关的api接口文档。
+15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
+16. 缓存监控:对系统的缓存信息查询,命令统计等。
+17. 在线构建器:拖动表单元素生成相应的HTML代码。
+18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
+
+## 演示图
+
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
+  |
+  |
+
+
\ No newline at end of file
diff --git a/bin/build.bat b/bin/build.bat
new file mode 100644
index 0000000..ecbb454
--- /dev/null
+++ b/bin/build.bat
@@ -0,0 +1,12 @@
+@echo off
+echo.
+echo [Ϣ] Weḅdistļ
+echo.
+
+%~d0
+cd %~dp0
+
+cd ..
+yarn build:prod
+
+pause
\ No newline at end of file
diff --git a/bin/package.bat b/bin/package.bat
new file mode 100644
index 0000000..f5b24e0
--- /dev/null
+++ b/bin/package.bat
@@ -0,0 +1,12 @@
+@echo off
+echo.
+echo [Ϣ] װWeḅnode_modulesļ
+echo.
+
+%~d0
+cd %~dp0
+
+cd ..
+yarn --registry=https://registry.npmmirror.com
+
+pause
\ No newline at end of file
diff --git a/bin/run-web.bat b/bin/run-web.bat
new file mode 100644
index 0000000..d2fe397
--- /dev/null
+++ b/bin/run-web.bat
@@ -0,0 +1,12 @@
+@echo off
+echo.
+echo [Ϣ] ʹ Vite Web ̡
+echo.
+
+%~d0
+cd %~dp0
+
+cd ..
+yarn dev
+
+pause
\ No newline at end of file
diff --git a/html/ie.html b/html/ie.html
new file mode 100644
index 0000000..052ffcd
--- /dev/null
+++ b/html/ie.html
@@ -0,0 +1,46 @@
+
+
+
+
+
+ 请升级您的浏览器
+
+
+
+
+
+
+请升级您的浏览器,以便我们更好的为您提供服务!
+您正在使用 Internet Explorer 的早期版本(IE11以下版本或使用该内核的浏览器)。这意味着在升级浏览器前,您将无法访问此网站。
+
+请注意:微软公司对Windows XP 及 Internet Explorer 早期版本的支持已经结束
+自 2016 年 1 月 12 日起,Microsoft 不再为 IE 11 以下版本提供相应支持和更新。没有关键的浏览器安全更新,您的电脑可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。请参阅 微软对 Internet Explorer 早期版本的支持将于 2016 年 1 月 12 日结束的说明 。
+
+您可以选择更先进的浏览器
+推荐使用以下浏览器的最新版本。如果您的电脑已有以下浏览器的最新版本则直接使用该浏览器访问即可。
+
+
+
+
\ No newline at end of file
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..3f0dcb5
--- /dev/null
+++ b/index.html
@@ -0,0 +1,215 @@
+
+
+
+
+
+
+
+
+
+ RuoYi-Vue-Plus管理系统
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..e891560
--- /dev/null
+++ b/package.json
@@ -0,0 +1,43 @@
+{
+ "name": "ruoyi-vue-plus",
+ "version": "4.6.0",
+ "description": "RuoYi-Vue-Plus后台管理系统",
+ "author": "LionLi",
+ "license": "MIT",
+ "scripts": {
+ "dev": "vite",
+ "build:prod": "vite build",
+ "preview": "vite preview"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://gitee.com/JavaLionLi/RuoYi-Vue-Plus-UI.git"
+ },
+ "dependencies": {
+ "@element-plus/icons-vue": "2.0.10",
+ "@vueup/vue-quill": "1.1.0",
+ "@vueuse/core": "9.5.0",
+ "axios": "0.27.2",
+ "echarts": "5.4.0",
+ "element-plus": "2.2.27",
+ "file-saver": "2.0.5",
+ "fuse.js": "6.6.2",
+ "js-cookie": "3.0.1",
+ "jsencrypt": "3.3.1",
+ "nprogress": "0.2.0",
+ "pinia": "2.0.22",
+ "vue": "3.2.45",
+ "vue-cropper": "1.0.3",
+ "vue-router": "4.1.4"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "3.1.0",
+ "@vue/compiler-sfc": "3.2.45",
+ "sass": "1.56.1",
+ "unplugin-auto-import": "0.11.4",
+ "vite": "3.2.3",
+ "vite-plugin-compression": "0.5.1",
+ "vite-plugin-svg-icons": "2.0.1",
+ "vite-plugin-vue-setup-extend": "0.4.0"
+ }
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
new file mode 100644
index 0000000..4c23c3b
--- /dev/null
+++ b/pnpm-lock.yaml
@@ -0,0 +1,3145 @@
+lockfileVersion: 5.4
+
+specifiers:
+ '@element-plus/icons-vue': 2.0.10
+ '@vitejs/plugin-vue': 3.1.0
+ '@vue/compiler-sfc': 3.2.45
+ '@vueup/vue-quill': 1.1.0
+ '@vueuse/core': 9.5.0
+ axios: 0.27.2
+ echarts: 5.4.0
+ element-plus: 2.2.27
+ file-saver: 2.0.5
+ fuse.js: 6.6.2
+ js-cookie: 3.0.1
+ jsencrypt: 3.3.1
+ nprogress: 0.2.0
+ pinia: 2.0.22
+ sass: 1.56.1
+ unplugin-auto-import: 0.11.4
+ vite: 3.2.3
+ vite-plugin-compression: 0.5.1
+ vite-plugin-svg-icons: 2.0.1
+ vite-plugin-vue-setup-extend: 0.4.0
+ vue: 3.2.45
+ vue-cropper: 1.0.3
+ vue-router: 4.1.4
+
+dependencies:
+ '@element-plus/icons-vue': registry.npmmirror.com/@element-plus/icons-vue/2.0.10_vue@3.2.45
+ '@vueup/vue-quill': registry.npmmirror.com/@vueup/vue-quill/1.1.0_vue@3.2.45
+ '@vueuse/core': registry.npmmirror.com/@vueuse/core/9.5.0_vue@3.2.45
+ axios: registry.npmmirror.com/axios/0.27.2
+ echarts: registry.npmmirror.com/echarts/5.4.0
+ element-plus: registry.npmmirror.com/element-plus/2.2.27_vue@3.2.45
+ file-saver: registry.npmmirror.com/file-saver/2.0.5
+ fuse.js: registry.npmmirror.com/fuse.js/6.6.2
+ js-cookie: registry.npmmirror.com/js-cookie/3.0.1
+ jsencrypt: registry.npmmirror.com/jsencrypt/3.3.1
+ nprogress: registry.npmmirror.com/nprogress/0.2.0
+ pinia: registry.npmmirror.com/pinia/2.0.22_vue@3.2.45
+ vue: registry.npmmirror.com/vue/3.2.45
+ vue-cropper: registry.npmmirror.com/vue-cropper/1.0.3
+ vue-router: registry.npmmirror.com/vue-router/4.1.4_vue@3.2.45
+
+devDependencies:
+ '@vitejs/plugin-vue': registry.npmmirror.com/@vitejs/plugin-vue/3.1.0_vite@3.2.3+vue@3.2.45
+ '@vue/compiler-sfc': registry.npmmirror.com/@vue/compiler-sfc/3.2.45
+ sass: registry.npmmirror.com/sass/1.56.1
+ unplugin-auto-import: registry.npmmirror.com/unplugin-auto-import/0.11.4_@vueuse+core@9.5.0
+ vite: registry.npmmirror.com/vite/3.2.3_sass@1.56.1
+ vite-plugin-compression: registry.npmmirror.com/vite-plugin-compression/0.5.1_vite@3.2.3
+ vite-plugin-svg-icons: registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.3
+ vite-plugin-vue-setup-extend: registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0_vite@3.2.3
+
+packages:
+
+ registry.npmmirror.com/@antfu/utils/0.6.3:
+ resolution: {integrity: sha512-sEYpyyKUPOew9QsXZ8feRVMzW6DWLviwOl+/ap06UQW02A8Srbc95CPHVm4eUbiBzBgD46eyIT+przv//KSSlQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@antfu/utils/-/utils-0.6.3.tgz}
+ name: '@antfu/utils'
+ version: 0.6.3
+ dev: true
+
+ registry.npmmirror.com/@babel/helper-string-parser/7.19.4:
+ resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz}
+ name: '@babel/helper-string-parser'
+ version: 7.19.4
+ engines: {node: '>=6.9.0'}
+
+ registry.npmmirror.com/@babel/helper-validator-identifier/7.19.1:
+ resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz}
+ name: '@babel/helper-validator-identifier'
+ version: 7.19.1
+ engines: {node: '>=6.9.0'}
+
+ registry.npmmirror.com/@babel/parser/7.21.4:
+ resolution: {integrity: sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz}
+ name: '@babel/parser'
+ version: 7.21.4
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+ dependencies:
+ '@babel/types': registry.npmmirror.com/@babel/types/7.21.4
+
+ registry.npmmirror.com/@babel/types/7.21.4:
+ resolution: {integrity: sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/types/-/types-7.21.4.tgz}
+ name: '@babel/types'
+ version: 7.21.4
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-string-parser': registry.npmmirror.com/@babel/helper-string-parser/7.19.4
+ '@babel/helper-validator-identifier': registry.npmmirror.com/@babel/helper-validator-identifier/7.19.1
+ to-fast-properties: registry.npmmirror.com/to-fast-properties/2.0.0
+
+ registry.npmmirror.com/@ctrl/tinycolor/3.6.0:
+ resolution: {integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.0.tgz}
+ name: '@ctrl/tinycolor'
+ version: 3.6.0
+ engines: {node: '>=10'}
+ dev: false
+
+ registry.npmmirror.com/@element-plus/icons-vue/2.0.10_vue@3.2.45:
+ resolution: {integrity: sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz}
+ id: registry.npmmirror.com/@element-plus/icons-vue/2.0.10
+ name: '@element-plus/icons-vue'
+ version: 2.0.10
+ peerDependencies:
+ vue: ^3.2.0
+ dependencies:
+ vue: registry.npmmirror.com/vue/3.2.45
+ dev: false
+
+ registry.npmmirror.com/@esbuild/android-arm/0.15.18:
+ resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.15.18.tgz}
+ name: '@esbuild/android-arm'
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/@esbuild/linux-loong64/0.15.18:
+ resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz}
+ name: '@esbuild/linux-loong64'
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/@floating-ui/core/1.2.6:
+ resolution: {integrity: sha512-EvYTiXet5XqweYGClEmpu3BoxmsQ4hkj3QaYA6qEnigCWffTP3vNRwBReTdrwDwo7OoJ3wM8Uoe9Uk4n+d4hfg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@floating-ui/core/-/core-1.2.6.tgz}
+ name: '@floating-ui/core'
+ version: 1.2.6
+ dev: false
+
+ registry.npmmirror.com/@floating-ui/dom/1.2.7:
+ resolution: {integrity: sha512-DyqylONj1ZaBnzj+uBnVfzdjjCkFCL2aA9ESHLyUOGSqb03RpbLMImP1ekIQXYs4KLk9jAjJfZAU8hXfWSahEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.2.7.tgz}
+ name: '@floating-ui/dom'
+ version: 1.2.7
+ dependencies:
+ '@floating-ui/core': registry.npmmirror.com/@floating-ui/core/1.2.6
+ dev: false
+
+ registry.npmmirror.com/@nodelib/fs.scandir/2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz}
+ name: '@nodelib/fs.scandir'
+ version: 2.1.5
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.stat': registry.npmmirror.com/@nodelib/fs.stat/2.0.5
+ run-parallel: registry.npmmirror.com/run-parallel/1.2.0
+ dev: true
+
+ registry.npmmirror.com/@nodelib/fs.stat/2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz}
+ name: '@nodelib/fs.stat'
+ version: 2.0.5
+ engines: {node: '>= 8'}
+ dev: true
+
+ registry.npmmirror.com/@nodelib/fs.walk/1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz}
+ name: '@nodelib/fs.walk'
+ version: 1.2.8
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.scandir': registry.npmmirror.com/@nodelib/fs.scandir/2.1.5
+ fastq: registry.npmmirror.com/fastq/1.15.0
+ dev: true
+
+ registry.npmmirror.com/@rollup/pluginutils/5.0.2:
+ resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.0.2.tgz}
+ name: '@rollup/pluginutils'
+ version: 5.0.2
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@types/estree': registry.npmmirror.com/@types/estree/1.0.1
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ picomatch: registry.npmmirror.com/picomatch/2.3.1
+ dev: true
+
+ registry.npmmirror.com/@sxzz/popperjs-es/2.11.7:
+ resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz}
+ name: '@sxzz/popperjs-es'
+ version: 2.11.7
+ dev: false
+
+ registry.npmmirror.com/@trysound/sax/0.2.0:
+ resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz}
+ name: '@trysound/sax'
+ version: 0.2.0
+ engines: {node: '>=10.13.0'}
+ dev: true
+
+ registry.npmmirror.com/@types/estree/1.0.1:
+ resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/estree/-/estree-1.0.1.tgz}
+ name: '@types/estree'
+ version: 1.0.1
+ dev: true
+
+ registry.npmmirror.com/@types/lodash-es/4.17.7:
+ resolution: {integrity: sha512-z0ptr6UI10VlU6l5MYhGwS4mC8DZyYer2mCoyysZtSF7p26zOX8UpbrV0YpNYLGS8K4PUFIyEr62IMFFjveSiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.7.tgz}
+ name: '@types/lodash-es'
+ version: 4.17.7
+ dependencies:
+ '@types/lodash': registry.npmmirror.com/@types/lodash/4.14.194
+ dev: false
+
+ registry.npmmirror.com/@types/lodash/4.14.194:
+ resolution: {integrity: sha512-r22s9tAS7imvBt2lyHC9B8AGwWnXaYb1tY09oyLkXDs4vArpYJzw09nj8MLx5VfciBPGIb+ZwG0ssYnEPJxn/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.194.tgz}
+ name: '@types/lodash'
+ version: 4.14.194
+ dev: false
+
+ registry.npmmirror.com/@types/node/18.16.2:
+ resolution: {integrity: sha512-GQW/JL/5Fz/0I8RpeBG9lKp0+aNcXEaVL71c0D2Q0QHDTFvlYKT7an0onCUXj85anv7b4/WesqdfchLc0jtsCg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-18.16.2.tgz}
+ name: '@types/node'
+ version: 18.16.2
+ dev: true
+
+ registry.npmmirror.com/@types/svgo/2.6.4:
+ resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/svgo/-/svgo-2.6.4.tgz}
+ name: '@types/svgo'
+ version: 2.6.4
+ dependencies:
+ '@types/node': registry.npmmirror.com/@types/node/18.16.2
+ dev: true
+
+ registry.npmmirror.com/@types/web-bluetooth/0.0.16:
+ resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz}
+ name: '@types/web-bluetooth'
+ version: 0.0.16
+
+ registry.npmmirror.com/@vitejs/plugin-vue/3.1.0_vite@3.2.3+vue@3.2.45:
+ resolution: {integrity: sha512-fmxtHPjSOEIRg6vHYDaem+97iwCUg/uSIaTzp98lhELt2ISOQuDo2hbkBdXod0g15IhfPMQmAxh4heUks2zvDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-3.1.0.tgz}
+ id: registry.npmmirror.com/@vitejs/plugin-vue/3.1.0
+ name: '@vitejs/plugin-vue'
+ version: 3.1.0
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^3.0.0
+ vue: ^3.2.25
+ dependencies:
+ vite: registry.npmmirror.com/vite/3.2.3_sass@1.56.1
+ vue: registry.npmmirror.com/vue/3.2.45
+ dev: true
+
+ registry.npmmirror.com/@vue/compiler-core/3.2.45:
+ resolution: {integrity: sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz}
+ name: '@vue/compiler-core'
+ version: 3.2.45
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.21.4
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ source-map: registry.npmmirror.com/source-map/0.6.1
+
+ registry.npmmirror.com/@vue/compiler-dom/3.2.45:
+ resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz}
+ name: '@vue/compiler-dom'
+ version: 3.2.45
+ dependencies:
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+
+ registry.npmmirror.com/@vue/compiler-sfc/3.2.45:
+ resolution: {integrity: sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz}
+ name: '@vue/compiler-sfc'
+ version: 3.2.45
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.21.4
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.45
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.45
+ '@vue/compiler-ssr': registry.npmmirror.com/@vue/compiler-ssr/3.2.45
+ '@vue/reactivity-transform': registry.npmmirror.com/@vue/reactivity-transform/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ magic-string: registry.npmmirror.com/magic-string/0.25.9
+ postcss: registry.npmmirror.com/postcss/8.4.23
+ source-map: registry.npmmirror.com/source-map/0.6.1
+
+ registry.npmmirror.com/@vue/compiler-ssr/3.2.45:
+ resolution: {integrity: sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz}
+ name: '@vue/compiler-ssr'
+ version: 3.2.45
+ dependencies:
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+
+ registry.npmmirror.com/@vue/devtools-api/6.5.0:
+ resolution: {integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz}
+ name: '@vue/devtools-api'
+ version: 6.5.0
+ dev: false
+
+ registry.npmmirror.com/@vue/reactivity-transform/3.2.45:
+ resolution: {integrity: sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz}
+ name: '@vue/reactivity-transform'
+ version: 3.2.45
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.21.4
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ magic-string: registry.npmmirror.com/magic-string/0.25.9
+
+ registry.npmmirror.com/@vue/reactivity/3.2.45:
+ resolution: {integrity: sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz}
+ name: '@vue/reactivity'
+ version: 3.2.45
+ dependencies:
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+
+ registry.npmmirror.com/@vue/runtime-core/3.2.45:
+ resolution: {integrity: sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz}
+ name: '@vue/runtime-core'
+ version: 3.2.45
+ dependencies:
+ '@vue/reactivity': registry.npmmirror.com/@vue/reactivity/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+
+ registry.npmmirror.com/@vue/runtime-dom/3.2.45:
+ resolution: {integrity: sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz}
+ name: '@vue/runtime-dom'
+ version: 3.2.45
+ dependencies:
+ '@vue/runtime-core': registry.npmmirror.com/@vue/runtime-core/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+ csstype: registry.npmmirror.com/csstype/2.6.21
+
+ registry.npmmirror.com/@vue/server-renderer/3.2.45_vue@3.2.45:
+ resolution: {integrity: sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz}
+ id: registry.npmmirror.com/@vue/server-renderer/3.2.45
+ name: '@vue/server-renderer'
+ version: 3.2.45
+ peerDependencies:
+ vue: 3.2.45
+ dependencies:
+ '@vue/compiler-ssr': registry.npmmirror.com/@vue/compiler-ssr/3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+ vue: registry.npmmirror.com/vue/3.2.45
+
+ registry.npmmirror.com/@vue/shared/3.2.45:
+ resolution: {integrity: sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz}
+ name: '@vue/shared'
+ version: 3.2.45
+
+ registry.npmmirror.com/@vueup/vue-quill/1.1.0_vue@3.2.45:
+ resolution: {integrity: sha512-xr1mx2y+JZClPs/lz+qjvGOWgLqh9SWfm1V+ofsJtuvBnN/h9O/QqJBuVWmdAcB6JGFhIeQcjuA2JgzqX2STjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vueup/vue-quill/-/vue-quill-1.1.0.tgz}
+ id: registry.npmmirror.com/@vueup/vue-quill/1.1.0
+ name: '@vueup/vue-quill'
+ version: 1.1.0
+ peerDependencies:
+ vue: ^3.2.41
+ dependencies:
+ quill: registry.npmmirror.com/quill/1.3.7
+ quill-delta: registry.npmmirror.com/quill-delta/4.2.2
+ vue: registry.npmmirror.com/vue/3.2.45
+ dev: false
+
+ registry.npmmirror.com/@vueuse/core/9.5.0_vue@3.2.45:
+ resolution: {integrity: sha512-6GsWBsJHEb3sYw15mbLrcbslAVY45pkzjJYTKYKCXv88z7srAF0VEW0q+oXKsl58tCbqooplInahXFg8Yo1m4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vueuse/core/-/core-9.5.0.tgz}
+ id: registry.npmmirror.com/@vueuse/core/9.5.0
+ name: '@vueuse/core'
+ version: 9.5.0
+ dependencies:
+ '@types/web-bluetooth': registry.npmmirror.com/@types/web-bluetooth/0.0.16
+ '@vueuse/metadata': registry.npmmirror.com/@vueuse/metadata/9.5.0
+ '@vueuse/shared': registry.npmmirror.com/@vueuse/shared/9.5.0_vue@3.2.45
+ vue-demi: registry.npmmirror.com/vue-demi/0.14.0_vue@3.2.45
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+
+ registry.npmmirror.com/@vueuse/metadata/9.5.0:
+ resolution: {integrity: sha512-4M1AyPZmIv41pym+K5+4wup3bKuYebbH8w8BROY1hmT7rIwcyS4tEL+UsGz0Hiu1FCOxcoBrwtAizc0YmBJjyQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.5.0.tgz}
+ name: '@vueuse/metadata'
+ version: 9.5.0
+
+ registry.npmmirror.com/@vueuse/shared/9.5.0_vue@3.2.45:
+ resolution: {integrity: sha512-HnnCWU1Vg9CVWRCcI8ohDKDRB2Sc4bTgT1XAIaoLSfVHHn+TKbrox6pd3klCSw4UDxkhDfOk8cAdcK+Z5KleCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vueuse/shared/-/shared-9.5.0.tgz}
+ id: registry.npmmirror.com/@vueuse/shared/9.5.0
+ name: '@vueuse/shared'
+ version: 9.5.0
+ dependencies:
+ vue-demi: registry.npmmirror.com/vue-demi/0.14.0_vue@3.2.45
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+
+ registry.npmmirror.com/acorn/8.8.2:
+ resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/acorn/-/acorn-8.8.2.tgz}
+ name: acorn
+ version: 8.8.2
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/ansi-regex/2.1.1:
+ resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz}
+ name: ansi-regex
+ version: 2.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/ansi-styles/2.2.1:
+ resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz}
+ name: ansi-styles
+ version: 2.2.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/ansi-styles/4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz}
+ name: ansi-styles
+ version: 4.3.0
+ engines: {node: '>=8'}
+ dependencies:
+ color-convert: registry.npmmirror.com/color-convert/2.0.1
+ dev: true
+
+ registry.npmmirror.com/anymatch/3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz}
+ name: anymatch
+ version: 3.1.3
+ engines: {node: '>= 8'}
+ dependencies:
+ normalize-path: registry.npmmirror.com/normalize-path/3.0.0
+ picomatch: registry.npmmirror.com/picomatch/2.3.1
+ dev: true
+
+ registry.npmmirror.com/arr-diff/4.0.0:
+ resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arr-diff/-/arr-diff-4.0.0.tgz}
+ name: arr-diff
+ version: 4.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/arr-flatten/1.1.0:
+ resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arr-flatten/-/arr-flatten-1.1.0.tgz}
+ name: arr-flatten
+ version: 1.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/arr-union/3.1.0:
+ resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arr-union/-/arr-union-3.1.0.tgz}
+ name: arr-union
+ version: 3.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/array-unique/0.3.2:
+ resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/array-unique/-/array-unique-0.3.2.tgz}
+ name: array-unique
+ version: 0.3.2
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/assign-symbols/1.0.0:
+ resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/assign-symbols/-/assign-symbols-1.0.0.tgz}
+ name: assign-symbols
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/async-validator/4.2.5:
+ resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz}
+ name: async-validator
+ version: 4.2.5
+ dev: false
+
+ registry.npmmirror.com/asynckit/0.4.0:
+ resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz}
+ name: asynckit
+ version: 0.4.0
+ dev: false
+
+ registry.npmmirror.com/atob/2.1.2:
+ resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/atob/-/atob-2.1.2.tgz}
+ name: atob
+ version: 2.1.2
+ engines: {node: '>= 4.5.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/axios/0.27.2:
+ resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axios/-/axios-0.27.2.tgz}
+ name: axios
+ version: 0.27.2
+ dependencies:
+ follow-redirects: registry.npmmirror.com/follow-redirects/1.15.2
+ form-data: registry.npmmirror.com/form-data/4.0.0
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ registry.npmmirror.com/base/0.11.2:
+ resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/base/-/base-0.11.2.tgz}
+ name: base
+ version: 0.11.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ cache-base: registry.npmmirror.com/cache-base/1.0.1
+ class-utils: registry.npmmirror.com/class-utils/0.3.6
+ component-emitter: registry.npmmirror.com/component-emitter/1.3.0
+ define-property: registry.npmmirror.com/define-property/1.0.0
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ mixin-deep: registry.npmmirror.com/mixin-deep/1.3.2
+ pascalcase: registry.npmmirror.com/pascalcase/0.1.1
+ dev: true
+
+ registry.npmmirror.com/big.js/5.2.2:
+ resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz}
+ name: big.js
+ version: 5.2.2
+ dev: true
+
+ registry.npmmirror.com/binary-extensions/2.2.0:
+ resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz}
+ name: binary-extensions
+ version: 2.2.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmmirror.com/bluebird/3.7.2:
+ resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz}
+ name: bluebird
+ version: 3.7.2
+ dev: true
+
+ registry.npmmirror.com/boolbase/1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz}
+ name: boolbase
+ version: 1.0.0
+ dev: true
+
+ registry.npmmirror.com/braces/2.3.2:
+ resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/braces/-/braces-2.3.2.tgz}
+ name: braces
+ version: 2.3.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ arr-flatten: registry.npmmirror.com/arr-flatten/1.1.0
+ array-unique: registry.npmmirror.com/array-unique/0.3.2
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ fill-range: registry.npmmirror.com/fill-range/4.0.0
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ repeat-element: registry.npmmirror.com/repeat-element/1.1.4
+ snapdragon: registry.npmmirror.com/snapdragon/0.8.2
+ snapdragon-node: registry.npmmirror.com/snapdragon-node/2.1.1
+ split-string: registry.npmmirror.com/split-string/3.1.0
+ to-regex: registry.npmmirror.com/to-regex/3.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/braces/3.0.2:
+ resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz}
+ name: braces
+ version: 3.0.2
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: registry.npmmirror.com/fill-range/7.0.1
+ dev: true
+
+ registry.npmmirror.com/cache-base/1.0.1:
+ resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cache-base/-/cache-base-1.0.1.tgz}
+ name: cache-base
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ collection-visit: registry.npmmirror.com/collection-visit/1.0.0
+ component-emitter: registry.npmmirror.com/component-emitter/1.3.0
+ get-value: registry.npmmirror.com/get-value/2.0.6
+ has-value: registry.npmmirror.com/has-value/1.0.0
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ set-value: registry.npmmirror.com/set-value/2.0.1
+ to-object-path: registry.npmmirror.com/to-object-path/0.3.0
+ union-value: registry.npmmirror.com/union-value/1.0.1
+ unset-value: registry.npmmirror.com/unset-value/1.0.0
+ dev: true
+
+ registry.npmmirror.com/call-bind/1.0.2:
+ resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz}
+ name: call-bind
+ version: 1.0.2
+ dependencies:
+ function-bind: registry.npmmirror.com/function-bind/1.1.1
+ get-intrinsic: registry.npmmirror.com/get-intrinsic/1.2.0
+ dev: false
+
+ registry.npmmirror.com/chalk/1.1.3:
+ resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz}
+ name: chalk
+ version: 1.1.3
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ ansi-styles: registry.npmmirror.com/ansi-styles/2.2.1
+ escape-string-regexp: registry.npmmirror.com/escape-string-regexp/1.0.5
+ has-ansi: registry.npmmirror.com/has-ansi/2.0.0
+ strip-ansi: registry.npmmirror.com/strip-ansi/3.0.1
+ supports-color: registry.npmmirror.com/supports-color/2.0.0
+ dev: true
+
+ registry.npmmirror.com/chalk/4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz}
+ name: chalk
+ version: 4.1.2
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0
+ supports-color: registry.npmmirror.com/supports-color/7.2.0
+ dev: true
+
+ registry.npmmirror.com/chokidar/3.5.3:
+ resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz}
+ name: chokidar
+ version: 3.5.3
+ engines: {node: '>= 8.10.0'}
+ dependencies:
+ anymatch: registry.npmmirror.com/anymatch/3.1.3
+ braces: registry.npmmirror.com/braces/3.0.2
+ glob-parent: registry.npmmirror.com/glob-parent/5.1.2
+ is-binary-path: registry.npmmirror.com/is-binary-path/2.1.0
+ is-glob: registry.npmmirror.com/is-glob/4.0.3
+ normalize-path: registry.npmmirror.com/normalize-path/3.0.0
+ readdirp: registry.npmmirror.com/readdirp/3.6.0
+ optionalDependencies:
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
+ dev: true
+
+ registry.npmmirror.com/class-utils/0.3.6:
+ resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/class-utils/-/class-utils-0.3.6.tgz}
+ name: class-utils
+ version: 0.3.6
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ arr-union: registry.npmmirror.com/arr-union/3.1.0
+ define-property: registry.npmmirror.com/define-property/0.2.5
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ static-extend: registry.npmmirror.com/static-extend/0.1.2
+ dev: true
+
+ registry.npmmirror.com/clone/2.1.2:
+ resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/clone/-/clone-2.1.2.tgz}
+ name: clone
+ version: 2.1.2
+ engines: {node: '>=0.8'}
+
+ registry.npmmirror.com/collection-visit/1.0.0:
+ resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz}
+ name: collection-visit
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ map-visit: registry.npmmirror.com/map-visit/1.0.0
+ object-visit: registry.npmmirror.com/object-visit/1.0.1
+ dev: true
+
+ registry.npmmirror.com/color-convert/2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz}
+ name: color-convert
+ version: 2.0.1
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: registry.npmmirror.com/color-name/1.1.4
+ dev: true
+
+ registry.npmmirror.com/color-name/1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz}
+ name: color-name
+ version: 1.1.4
+ dev: true
+
+ registry.npmmirror.com/combined-stream/1.0.8:
+ resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz}
+ name: combined-stream
+ version: 1.0.8
+ engines: {node: '>= 0.8'}
+ dependencies:
+ delayed-stream: registry.npmmirror.com/delayed-stream/1.0.0
+ dev: false
+
+ registry.npmmirror.com/commander/7.2.0:
+ resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz}
+ name: commander
+ version: 7.2.0
+ engines: {node: '>= 10'}
+ dev: true
+
+ registry.npmmirror.com/component-emitter/1.3.0:
+ resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/component-emitter/-/component-emitter-1.3.0.tgz}
+ name: component-emitter
+ version: 1.3.0
+ dev: true
+
+ registry.npmmirror.com/copy-descriptor/0.1.1:
+ resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz}
+ name: copy-descriptor
+ version: 0.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/cors/2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cors/-/cors-2.8.5.tgz}
+ name: cors
+ version: 2.8.5
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: registry.npmmirror.com/object-assign/4.1.1
+ vary: registry.npmmirror.com/vary/1.1.2
+ dev: true
+
+ registry.npmmirror.com/css-select/4.3.0:
+ resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz}
+ name: css-select
+ version: 4.3.0
+ dependencies:
+ boolbase: registry.npmmirror.com/boolbase/1.0.0
+ css-what: registry.npmmirror.com/css-what/6.1.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.1
+ domutils: registry.npmmirror.com/domutils/2.8.0
+ nth-check: registry.npmmirror.com/nth-check/2.1.1
+ dev: true
+
+ registry.npmmirror.com/css-tree/1.1.3:
+ resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz}
+ name: css-tree
+ version: 1.1.3
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ mdn-data: registry.npmmirror.com/mdn-data/2.0.14
+ source-map: registry.npmmirror.com/source-map/0.6.1
+ dev: true
+
+ registry.npmmirror.com/css-what/6.1.0:
+ resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/css-what/-/css-what-6.1.0.tgz}
+ name: css-what
+ version: 6.1.0
+ engines: {node: '>= 6'}
+ dev: true
+
+ registry.npmmirror.com/csso/4.2.0:
+ resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/csso/-/csso-4.2.0.tgz}
+ name: csso
+ version: 4.2.0
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ css-tree: registry.npmmirror.com/css-tree/1.1.3
+ dev: true
+
+ registry.npmmirror.com/csstype/2.6.21:
+ resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz}
+ name: csstype
+ version: 2.6.21
+
+ registry.npmmirror.com/dayjs/1.11.7:
+ resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz}
+ name: dayjs
+ version: 1.11.7
+ dev: false
+
+ registry.npmmirror.com/debug/2.6.9:
+ resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz}
+ name: debug
+ version: 2.6.9
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: registry.npmmirror.com/ms/2.0.0
+ dev: true
+
+ registry.npmmirror.com/debug/4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz}
+ name: debug
+ version: 4.3.4
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: registry.npmmirror.com/ms/2.1.2
+ dev: true
+
+ registry.npmmirror.com/decode-uri-component/0.2.2:
+ resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz}
+ name: decode-uri-component
+ version: 0.2.2
+ engines: {node: '>=0.10'}
+ dev: true
+
+ registry.npmmirror.com/deep-equal/1.1.1:
+ resolution: {integrity: sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/deep-equal/-/deep-equal-1.1.1.tgz}
+ name: deep-equal
+ version: 1.1.1
+ dependencies:
+ is-arguments: registry.npmmirror.com/is-arguments/1.1.1
+ is-date-object: registry.npmmirror.com/is-date-object/1.0.5
+ is-regex: registry.npmmirror.com/is-regex/1.1.4
+ object-is: registry.npmmirror.com/object-is/1.1.5
+ object-keys: registry.npmmirror.com/object-keys/1.1.1
+ regexp.prototype.flags: registry.npmmirror.com/regexp.prototype.flags/1.5.0
+ dev: false
+
+ registry.npmmirror.com/define-properties/1.2.0:
+ resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/define-properties/-/define-properties-1.2.0.tgz}
+ name: define-properties
+ version: 1.2.0
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-property-descriptors: registry.npmmirror.com/has-property-descriptors/1.0.0
+ object-keys: registry.npmmirror.com/object-keys/1.1.1
+ dev: false
+
+ registry.npmmirror.com/define-property/0.2.5:
+ resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz}
+ name: define-property
+ version: 0.2.5
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-descriptor: registry.npmmirror.com/is-descriptor/0.1.6
+ dev: true
+
+ registry.npmmirror.com/define-property/1.0.0:
+ resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/define-property/-/define-property-1.0.0.tgz}
+ name: define-property
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-descriptor: registry.npmmirror.com/is-descriptor/1.0.2
+ dev: true
+
+ registry.npmmirror.com/define-property/2.0.2:
+ resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz}
+ name: define-property
+ version: 2.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-descriptor: registry.npmmirror.com/is-descriptor/1.0.2
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/delayed-stream/1.0.0:
+ resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz}
+ name: delayed-stream
+ version: 1.0.0
+ engines: {node: '>=0.4.0'}
+ dev: false
+
+ registry.npmmirror.com/dom-serializer/0.2.2:
+ resolution: {integrity: sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dom-serializer/-/dom-serializer-0.2.2.tgz}
+ name: dom-serializer
+ version: 0.2.2
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.3.0
+ entities: registry.npmmirror.com/entities/2.2.0
+ dev: true
+
+ registry.npmmirror.com/dom-serializer/1.4.1:
+ resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz}
+ name: dom-serializer
+ version: 1.4.1
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.3.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.1
+ entities: registry.npmmirror.com/entities/2.2.0
+ dev: true
+
+ registry.npmmirror.com/domelementtype/1.3.1:
+ resolution: {integrity: sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domelementtype/-/domelementtype-1.3.1.tgz}
+ name: domelementtype
+ version: 1.3.1
+ dev: true
+
+ registry.npmmirror.com/domelementtype/2.3.0:
+ resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz}
+ name: domelementtype
+ version: 2.3.0
+ dev: true
+
+ registry.npmmirror.com/domhandler/2.4.2:
+ resolution: {integrity: sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domhandler/-/domhandler-2.4.2.tgz}
+ name: domhandler
+ version: 2.4.2
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/1.3.1
+ dev: true
+
+ registry.npmmirror.com/domhandler/4.3.1:
+ resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz}
+ name: domhandler
+ version: 4.3.1
+ engines: {node: '>= 4'}
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.3.0
+ dev: true
+
+ registry.npmmirror.com/domutils/1.7.0:
+ resolution: {integrity: sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domutils/-/domutils-1.7.0.tgz}
+ name: domutils
+ version: 1.7.0
+ dependencies:
+ dom-serializer: registry.npmmirror.com/dom-serializer/0.2.2
+ domelementtype: registry.npmmirror.com/domelementtype/1.3.1
+ dev: true
+
+ registry.npmmirror.com/domutils/2.8.0:
+ resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz}
+ name: domutils
+ version: 2.8.0
+ dependencies:
+ dom-serializer: registry.npmmirror.com/dom-serializer/1.4.1
+ domelementtype: registry.npmmirror.com/domelementtype/2.3.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.1
+ dev: true
+
+ registry.npmmirror.com/echarts/5.4.0:
+ resolution: {integrity: sha512-uPsO9VRUIKAdFOoH3B0aNg7NRVdN7aM39/OjovjO9MwmWsAkfGyeXJhK+dbRi51iDrQWliXV60/XwLA7kg3z0w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/echarts/-/echarts-5.4.0.tgz}
+ name: echarts
+ version: 5.4.0
+ dependencies:
+ tslib: registry.npmmirror.com/tslib/2.3.0
+ zrender: registry.npmmirror.com/zrender/5.4.0
+ dev: false
+
+ registry.npmmirror.com/element-plus/2.2.27_vue@3.2.45:
+ resolution: {integrity: sha512-P04HDOZBYDdvlYuleuCZRULzAc5xJVOBfLDK9xWxVo0vyo8ntdaXS5sTU+/76vrNzuO3FhLn9kvrsbiJEVa1jg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/element-plus/-/element-plus-2.2.27.tgz}
+ id: registry.npmmirror.com/element-plus/2.2.27
+ name: element-plus
+ version: 2.2.27
+ peerDependencies:
+ vue: ^3.2.0
+ dependencies:
+ '@ctrl/tinycolor': registry.npmmirror.com/@ctrl/tinycolor/3.6.0
+ '@element-plus/icons-vue': registry.npmmirror.com/@element-plus/icons-vue/2.0.10_vue@3.2.45
+ '@floating-ui/dom': registry.npmmirror.com/@floating-ui/dom/1.2.7
+ '@popperjs/core': registry.npmmirror.com/@sxzz/popperjs-es/2.11.7
+ '@types/lodash': registry.npmmirror.com/@types/lodash/4.14.194
+ '@types/lodash-es': registry.npmmirror.com/@types/lodash-es/4.17.7
+ '@vueuse/core': registry.npmmirror.com/@vueuse/core/9.5.0_vue@3.2.45
+ async-validator: registry.npmmirror.com/async-validator/4.2.5
+ dayjs: registry.npmmirror.com/dayjs/1.11.7
+ escape-html: registry.npmmirror.com/escape-html/1.0.3
+ lodash: registry.npmmirror.com/lodash/4.17.21
+ lodash-es: registry.npmmirror.com/lodash-es/4.17.21
+ lodash-unified: registry.npmmirror.com/lodash-unified/1.0.3_tknf7errc3xdqocd3ryzzla7vq
+ memoize-one: registry.npmmirror.com/memoize-one/6.0.0
+ normalize-wheel-es: registry.npmmirror.com/normalize-wheel-es/1.2.0
+ vue: registry.npmmirror.com/vue/3.2.45
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ dev: false
+
+ registry.npmmirror.com/emojis-list/3.0.0:
+ resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz}
+ name: emojis-list
+ version: 3.0.0
+ engines: {node: '>= 4'}
+ dev: true
+
+ registry.npmmirror.com/entities/1.1.2:
+ resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/entities/-/entities-1.1.2.tgz}
+ name: entities
+ version: 1.1.2
+ dev: true
+
+ registry.npmmirror.com/entities/2.2.0:
+ resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz}
+ name: entities
+ version: 2.2.0
+ dev: true
+
+ registry.npmmirror.com/esbuild-android-64/0.15.18:
+ resolution: {integrity: sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz}
+ name: esbuild-android-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-android-arm64/0.15.18:
+ resolution: {integrity: sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.18.tgz}
+ name: esbuild-android-arm64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-64/0.15.18:
+ resolution: {integrity: sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.18.tgz}
+ name: esbuild-darwin-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-arm64/0.15.18:
+ resolution: {integrity: sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.18.tgz}
+ name: esbuild-darwin-arm64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-64/0.15.18:
+ resolution: {integrity: sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.18.tgz}
+ name: esbuild-freebsd-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-arm64/0.15.18:
+ resolution: {integrity: sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.18.tgz}
+ name: esbuild-freebsd-arm64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-32/0.15.18:
+ resolution: {integrity: sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.15.18.tgz}
+ name: esbuild-linux-32
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-64/0.15.18:
+ resolution: {integrity: sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz}
+ name: esbuild-linux-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm/0.15.18:
+ resolution: {integrity: sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.18.tgz}
+ name: esbuild-linux-arm
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm64/0.15.18:
+ resolution: {integrity: sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.18.tgz}
+ name: esbuild-linux-arm64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-mips64le/0.15.18:
+ resolution: {integrity: sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.18.tgz}
+ name: esbuild-linux-mips64le
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-ppc64le/0.15.18:
+ resolution: {integrity: sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.18.tgz}
+ name: esbuild-linux-ppc64le
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-riscv64/0.15.18:
+ resolution: {integrity: sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.18.tgz}
+ name: esbuild-linux-riscv64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-s390x/0.15.18:
+ resolution: {integrity: sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.18.tgz}
+ name: esbuild-linux-s390x
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-netbsd-64/0.15.18:
+ resolution: {integrity: sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.18.tgz}
+ name: esbuild-netbsd-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-openbsd-64/0.15.18:
+ resolution: {integrity: sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz}
+ name: esbuild-openbsd-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-sunos-64/0.15.18:
+ resolution: {integrity: sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz}
+ name: esbuild-sunos-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-32/0.15.18:
+ resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.15.18.tgz}
+ name: esbuild-windows-32
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-64/0.15.18:
+ resolution: {integrity: sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz}
+ name: esbuild-windows-64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-arm64/0.15.18:
+ resolution: {integrity: sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.18.tgz}
+ name: esbuild-windows-arm64
+ version: 0.15.18
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild/0.15.18:
+ resolution: {integrity: sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild/-/esbuild-0.15.18.tgz}
+ name: esbuild
+ version: 0.15.18
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/android-arm': registry.npmmirror.com/@esbuild/android-arm/0.15.18
+ '@esbuild/linux-loong64': registry.npmmirror.com/@esbuild/linux-loong64/0.15.18
+ esbuild-android-64: registry.npmmirror.com/esbuild-android-64/0.15.18
+ esbuild-android-arm64: registry.npmmirror.com/esbuild-android-arm64/0.15.18
+ esbuild-darwin-64: registry.npmmirror.com/esbuild-darwin-64/0.15.18
+ esbuild-darwin-arm64: registry.npmmirror.com/esbuild-darwin-arm64/0.15.18
+ esbuild-freebsd-64: registry.npmmirror.com/esbuild-freebsd-64/0.15.18
+ esbuild-freebsd-arm64: registry.npmmirror.com/esbuild-freebsd-arm64/0.15.18
+ esbuild-linux-32: registry.npmmirror.com/esbuild-linux-32/0.15.18
+ esbuild-linux-64: registry.npmmirror.com/esbuild-linux-64/0.15.18
+ esbuild-linux-arm: registry.npmmirror.com/esbuild-linux-arm/0.15.18
+ esbuild-linux-arm64: registry.npmmirror.com/esbuild-linux-arm64/0.15.18
+ esbuild-linux-mips64le: registry.npmmirror.com/esbuild-linux-mips64le/0.15.18
+ esbuild-linux-ppc64le: registry.npmmirror.com/esbuild-linux-ppc64le/0.15.18
+ esbuild-linux-riscv64: registry.npmmirror.com/esbuild-linux-riscv64/0.15.18
+ esbuild-linux-s390x: registry.npmmirror.com/esbuild-linux-s390x/0.15.18
+ esbuild-netbsd-64: registry.npmmirror.com/esbuild-netbsd-64/0.15.18
+ esbuild-openbsd-64: registry.npmmirror.com/esbuild-openbsd-64/0.15.18
+ esbuild-sunos-64: registry.npmmirror.com/esbuild-sunos-64/0.15.18
+ esbuild-windows-32: registry.npmmirror.com/esbuild-windows-32/0.15.18
+ esbuild-windows-64: registry.npmmirror.com/esbuild-windows-64/0.15.18
+ esbuild-windows-arm64: registry.npmmirror.com/esbuild-windows-arm64/0.15.18
+ dev: true
+
+ registry.npmmirror.com/escape-html/1.0.3:
+ resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz}
+ name: escape-html
+ version: 1.0.3
+ dev: false
+
+ registry.npmmirror.com/escape-string-regexp/1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz}
+ name: escape-string-regexp
+ version: 1.0.5
+ engines: {node: '>=0.8.0'}
+ dev: true
+
+ registry.npmmirror.com/escape-string-regexp/5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz}
+ name: escape-string-regexp
+ version: 5.0.0
+ engines: {node: '>=12'}
+ dev: true
+
+ registry.npmmirror.com/estree-walker/2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz}
+ name: estree-walker
+ version: 2.0.2
+
+ registry.npmmirror.com/etag/1.8.1:
+ resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz}
+ name: etag
+ version: 1.8.1
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ registry.npmmirror.com/eventemitter3/2.0.3:
+ resolution: {integrity: sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eventemitter3/-/eventemitter3-2.0.3.tgz}
+ name: eventemitter3
+ version: 2.0.3
+ dev: false
+
+ registry.npmmirror.com/expand-brackets/2.1.4:
+ resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/expand-brackets/-/expand-brackets-2.1.4.tgz}
+ name: expand-brackets
+ version: 2.1.4
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ debug: registry.npmmirror.com/debug/2.6.9
+ define-property: registry.npmmirror.com/define-property/0.2.5
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ posix-character-classes: registry.npmmirror.com/posix-character-classes/0.1.1
+ regex-not: registry.npmmirror.com/regex-not/1.0.2
+ snapdragon: registry.npmmirror.com/snapdragon/0.8.2
+ to-regex: registry.npmmirror.com/to-regex/3.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/extend-shallow/2.0.1:
+ resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/extend-shallow/-/extend-shallow-2.0.1.tgz}
+ name: extend-shallow
+ version: 2.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extendable: registry.npmmirror.com/is-extendable/0.1.1
+ dev: true
+
+ registry.npmmirror.com/extend-shallow/3.0.2:
+ resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz}
+ name: extend-shallow
+ version: 3.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ assign-symbols: registry.npmmirror.com/assign-symbols/1.0.0
+ is-extendable: registry.npmmirror.com/is-extendable/1.0.1
+ dev: true
+
+ registry.npmmirror.com/extend/3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz}
+ name: extend
+ version: 3.0.2
+ dev: false
+
+ registry.npmmirror.com/extglob/2.0.4:
+ resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/extglob/-/extglob-2.0.4.tgz}
+ name: extglob
+ version: 2.0.4
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ array-unique: registry.npmmirror.com/array-unique/0.3.2
+ define-property: registry.npmmirror.com/define-property/1.0.0
+ expand-brackets: registry.npmmirror.com/expand-brackets/2.1.4
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ fragment-cache: registry.npmmirror.com/fragment-cache/0.2.1
+ regex-not: registry.npmmirror.com/regex-not/1.0.2
+ snapdragon: registry.npmmirror.com/snapdragon/0.8.2
+ to-regex: registry.npmmirror.com/to-regex/3.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/fast-diff/1.1.2:
+ resolution: {integrity: sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-diff/-/fast-diff-1.1.2.tgz}
+ name: fast-diff
+ version: 1.1.2
+ dev: false
+
+ registry.npmmirror.com/fast-diff/1.2.0:
+ resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-diff/-/fast-diff-1.2.0.tgz}
+ name: fast-diff
+ version: 1.2.0
+ dev: false
+
+ registry.npmmirror.com/fast-glob/3.2.12:
+ resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz}
+ name: fast-glob
+ version: 3.2.12
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': registry.npmmirror.com/@nodelib/fs.stat/2.0.5
+ '@nodelib/fs.walk': registry.npmmirror.com/@nodelib/fs.walk/1.2.8
+ glob-parent: registry.npmmirror.com/glob-parent/5.1.2
+ merge2: registry.npmmirror.com/merge2/1.4.1
+ micromatch: registry.npmmirror.com/micromatch/4.0.5
+ dev: true
+
+ registry.npmmirror.com/fastq/1.15.0:
+ resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz}
+ name: fastq
+ version: 1.15.0
+ dependencies:
+ reusify: registry.npmmirror.com/reusify/1.0.4
+ dev: true
+
+ registry.npmmirror.com/file-saver/2.0.5:
+ resolution: {integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/file-saver/-/file-saver-2.0.5.tgz}
+ name: file-saver
+ version: 2.0.5
+ dev: false
+
+ registry.npmmirror.com/fill-range/4.0.0:
+ resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fill-range/-/fill-range-4.0.0.tgz}
+ name: fill-range
+ version: 4.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ is-number: registry.npmmirror.com/is-number/3.0.0
+ repeat-string: registry.npmmirror.com/repeat-string/1.6.1
+ to-regex-range: registry.npmmirror.com/to-regex-range/2.1.1
+ dev: true
+
+ registry.npmmirror.com/fill-range/7.0.1:
+ resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz}
+ name: fill-range
+ version: 7.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ to-regex-range: registry.npmmirror.com/to-regex-range/5.0.1
+ dev: true
+
+ registry.npmmirror.com/follow-redirects/1.15.2:
+ resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz}
+ name: follow-redirects
+ version: 1.15.2
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+ dev: false
+
+ registry.npmmirror.com/for-in/1.0.2:
+ resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/for-in/-/for-in-1.0.2.tgz}
+ name: for-in
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/form-data/4.0.0:
+ resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz}
+ name: form-data
+ version: 4.0.0
+ engines: {node: '>= 6'}
+ dependencies:
+ asynckit: registry.npmmirror.com/asynckit/0.4.0
+ combined-stream: registry.npmmirror.com/combined-stream/1.0.8
+ mime-types: registry.npmmirror.com/mime-types/2.1.35
+ dev: false
+
+ registry.npmmirror.com/fragment-cache/0.2.1:
+ resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fragment-cache/-/fragment-cache-0.2.1.tgz}
+ name: fragment-cache
+ version: 0.2.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ map-cache: registry.npmmirror.com/map-cache/0.2.2
+ dev: true
+
+ registry.npmmirror.com/fs-extra/10.1.0:
+ resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz}
+ name: fs-extra
+ version: 10.1.0
+ engines: {node: '>=12'}
+ dependencies:
+ graceful-fs: registry.npmmirror.com/graceful-fs/4.2.11
+ jsonfile: registry.npmmirror.com/jsonfile/6.1.0
+ universalify: registry.npmmirror.com/universalify/2.0.0
+ dev: true
+
+ registry.npmmirror.com/fsevents/2.3.2:
+ resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz}
+ name: fsevents
+ version: 2.3.2
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/function-bind/1.1.1:
+ resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz}
+ name: function-bind
+ version: 1.1.1
+
+ registry.npmmirror.com/functions-have-names/1.2.3:
+ resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz}
+ name: functions-have-names
+ version: 1.2.3
+ dev: false
+
+ registry.npmmirror.com/fuse.js/6.6.2:
+ resolution: {integrity: sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fuse.js/-/fuse.js-6.6.2.tgz}
+ name: fuse.js
+ version: 6.6.2
+ engines: {node: '>=10'}
+ dev: false
+
+ registry.npmmirror.com/get-intrinsic/1.2.0:
+ resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz}
+ name: get-intrinsic
+ version: 1.2.0
+ dependencies:
+ function-bind: registry.npmmirror.com/function-bind/1.1.1
+ has: registry.npmmirror.com/has/1.0.3
+ has-symbols: registry.npmmirror.com/has-symbols/1.0.3
+ dev: false
+
+ registry.npmmirror.com/get-value/2.0.6:
+ resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-value/-/get-value-2.0.6.tgz}
+ name: get-value
+ version: 2.0.6
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/glob-parent/5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz}
+ name: glob-parent
+ version: 5.1.2
+ engines: {node: '>= 6'}
+ dependencies:
+ is-glob: registry.npmmirror.com/is-glob/4.0.3
+ dev: true
+
+ registry.npmmirror.com/graceful-fs/4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz}
+ name: graceful-fs
+ version: 4.2.11
+ dev: true
+
+ registry.npmmirror.com/has-ansi/2.0.0:
+ resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-ansi/-/has-ansi-2.0.0.tgz}
+ name: has-ansi
+ version: 2.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ ansi-regex: registry.npmmirror.com/ansi-regex/2.1.1
+ dev: true
+
+ registry.npmmirror.com/has-flag/1.0.0:
+ resolution: {integrity: sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-flag/-/has-flag-1.0.0.tgz}
+ name: has-flag
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/has-flag/4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz}
+ name: has-flag
+ version: 4.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmmirror.com/has-property-descriptors/1.0.0:
+ resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz}
+ name: has-property-descriptors
+ version: 1.0.0
+ dependencies:
+ get-intrinsic: registry.npmmirror.com/get-intrinsic/1.2.0
+ dev: false
+
+ registry.npmmirror.com/has-symbols/1.0.3:
+ resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz}
+ name: has-symbols
+ version: 1.0.3
+ engines: {node: '>= 0.4'}
+ dev: false
+
+ registry.npmmirror.com/has-tostringtag/1.0.0:
+ resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz}
+ name: has-tostringtag
+ version: 1.0.0
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-symbols: registry.npmmirror.com/has-symbols/1.0.3
+ dev: false
+
+ registry.npmmirror.com/has-value/0.3.1:
+ resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-value/-/has-value-0.3.1.tgz}
+ name: has-value
+ version: 0.3.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ get-value: registry.npmmirror.com/get-value/2.0.6
+ has-values: registry.npmmirror.com/has-values/0.1.4
+ isobject: registry.npmmirror.com/isobject/2.1.0
+ dev: true
+
+ registry.npmmirror.com/has-value/1.0.0:
+ resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-value/-/has-value-1.0.0.tgz}
+ name: has-value
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ get-value: registry.npmmirror.com/get-value/2.0.6
+ has-values: registry.npmmirror.com/has-values/1.0.0
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/has-values/0.1.4:
+ resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-values/-/has-values-0.1.4.tgz}
+ name: has-values
+ version: 0.1.4
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/has-values/1.0.0:
+ resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-values/-/has-values-1.0.0.tgz}
+ name: has-values
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-number: registry.npmmirror.com/is-number/3.0.0
+ kind-of: registry.npmmirror.com/kind-of/4.0.0
+ dev: true
+
+ registry.npmmirror.com/has/1.0.3:
+ resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has/-/has-1.0.3.tgz}
+ name: has
+ version: 1.0.3
+ engines: {node: '>= 0.4.0'}
+ dependencies:
+ function-bind: registry.npmmirror.com/function-bind/1.1.1
+
+ registry.npmmirror.com/he/1.2.0:
+ resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/he/-/he-1.2.0.tgz}
+ name: he
+ version: 1.2.0
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/htmlparser2/3.10.1:
+ resolution: {integrity: sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/htmlparser2/-/htmlparser2-3.10.1.tgz}
+ name: htmlparser2
+ version: 3.10.1
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/1.3.1
+ domhandler: registry.npmmirror.com/domhandler/2.4.2
+ domutils: registry.npmmirror.com/domutils/1.7.0
+ entities: registry.npmmirror.com/entities/1.1.2
+ inherits: registry.npmmirror.com/inherits/2.0.4
+ readable-stream: registry.npmmirror.com/readable-stream/3.6.2
+ dev: true
+
+ registry.npmmirror.com/image-size/0.5.5:
+ resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz}
+ name: image-size
+ version: 0.5.5
+ engines: {node: '>=0.10.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/immutable/4.3.0:
+ resolution: {integrity: sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/immutable/-/immutable-4.3.0.tgz}
+ name: immutable
+ version: 4.3.0
+ dev: true
+
+ registry.npmmirror.com/inherits/2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz}
+ name: inherits
+ version: 2.0.4
+ dev: true
+
+ registry.npmmirror.com/is-accessor-descriptor/0.1.6:
+ resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz}
+ name: is-accessor-descriptor
+ version: 0.1.6
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/is-accessor-descriptor/1.0.0:
+ resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz}
+ name: is-accessor-descriptor
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/6.0.3
+ dev: true
+
+ registry.npmmirror.com/is-arguments/1.1.1:
+ resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-arguments/-/is-arguments-1.1.1.tgz}
+ name: is-arguments
+ version: 1.1.1
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: registry.npmmirror.com/call-bind/1.0.2
+ has-tostringtag: registry.npmmirror.com/has-tostringtag/1.0.0
+ dev: false
+
+ registry.npmmirror.com/is-binary-path/2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz}
+ name: is-binary-path
+ version: 2.1.0
+ engines: {node: '>=8'}
+ dependencies:
+ binary-extensions: registry.npmmirror.com/binary-extensions/2.2.0
+ dev: true
+
+ registry.npmmirror.com/is-buffer/1.1.6:
+ resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz}
+ name: is-buffer
+ version: 1.1.6
+ dev: true
+
+ registry.npmmirror.com/is-core-module/2.12.0:
+ resolution: {integrity: sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-core-module/-/is-core-module-2.12.0.tgz}
+ name: is-core-module
+ version: 2.12.0
+ dependencies:
+ has: registry.npmmirror.com/has/1.0.3
+ dev: true
+
+ registry.npmmirror.com/is-data-descriptor/0.1.4:
+ resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz}
+ name: is-data-descriptor
+ version: 0.1.4
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/is-data-descriptor/1.0.0:
+ resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz}
+ name: is-data-descriptor
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/6.0.3
+ dev: true
+
+ registry.npmmirror.com/is-date-object/1.0.5:
+ resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-date-object/-/is-date-object-1.0.5.tgz}
+ name: is-date-object
+ version: 1.0.5
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-tostringtag: registry.npmmirror.com/has-tostringtag/1.0.0
+ dev: false
+
+ registry.npmmirror.com/is-descriptor/0.1.6:
+ resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.6.tgz}
+ name: is-descriptor
+ version: 0.1.6
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-accessor-descriptor: registry.npmmirror.com/is-accessor-descriptor/0.1.6
+ is-data-descriptor: registry.npmmirror.com/is-data-descriptor/0.1.4
+ kind-of: registry.npmmirror.com/kind-of/5.1.0
+ dev: true
+
+ registry.npmmirror.com/is-descriptor/1.0.2:
+ resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-descriptor/-/is-descriptor-1.0.2.tgz}
+ name: is-descriptor
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-accessor-descriptor: registry.npmmirror.com/is-accessor-descriptor/1.0.0
+ is-data-descriptor: registry.npmmirror.com/is-data-descriptor/1.0.0
+ kind-of: registry.npmmirror.com/kind-of/6.0.3
+ dev: true
+
+ registry.npmmirror.com/is-extendable/0.1.1:
+ resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-extendable/-/is-extendable-0.1.1.tgz}
+ name: is-extendable
+ version: 0.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/is-extendable/1.0.1:
+ resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz}
+ name: is-extendable
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-plain-object: registry.npmmirror.com/is-plain-object/2.0.4
+ dev: true
+
+ registry.npmmirror.com/is-extglob/2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz}
+ name: is-extglob
+ version: 2.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/is-glob/4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz}
+ name: is-glob
+ version: 4.0.3
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extglob: registry.npmmirror.com/is-extglob/2.1.1
+ dev: true
+
+ registry.npmmirror.com/is-number/3.0.0:
+ resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-number/-/is-number-3.0.0.tgz}
+ name: is-number
+ version: 3.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/is-number/7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz}
+ name: is-number
+ version: 7.0.0
+ engines: {node: '>=0.12.0'}
+ dev: true
+
+ registry.npmmirror.com/is-plain-obj/1.1.0:
+ resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz}
+ name: is-plain-obj
+ version: 1.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/is-plain-object/2.0.4:
+ resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-plain-object/-/is-plain-object-2.0.4.tgz}
+ name: is-plain-object
+ version: 2.0.4
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/is-regex/1.1.4:
+ resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-regex/-/is-regex-1.1.4.tgz}
+ name: is-regex
+ version: 1.1.4
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: registry.npmmirror.com/call-bind/1.0.2
+ has-tostringtag: registry.npmmirror.com/has-tostringtag/1.0.0
+ dev: false
+
+ registry.npmmirror.com/is-windows/1.0.2:
+ resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz}
+ name: is-windows
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/isarray/1.0.0:
+ resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz}
+ name: isarray
+ version: 1.0.0
+ dev: true
+
+ registry.npmmirror.com/isobject/2.1.0:
+ resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isobject/-/isobject-2.1.0.tgz}
+ name: isobject
+ version: 2.1.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ isarray: registry.npmmirror.com/isarray/1.0.0
+ dev: true
+
+ registry.npmmirror.com/isobject/3.0.1:
+ resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz}
+ name: isobject
+ version: 3.0.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/js-base64/2.6.4:
+ resolution: {integrity: sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz}
+ name: js-base64
+ version: 2.6.4
+ dev: true
+
+ registry.npmmirror.com/js-cookie/3.0.1:
+ resolution: {integrity: sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/js-cookie/-/js-cookie-3.0.1.tgz}
+ name: js-cookie
+ version: 3.0.1
+ engines: {node: '>=12'}
+ dev: false
+
+ registry.npmmirror.com/jsencrypt/3.3.1:
+ resolution: {integrity: sha512-dVvV54GdFuJgmEKn+oBiaifDMen4p6o6j/lJh0OVMcouME8sST0bJ7bldIgKBQk4za0zyGn0/pm4vOznR25mLw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsencrypt/-/jsencrypt-3.3.1.tgz}
+ name: jsencrypt
+ version: 3.3.1
+ dev: false
+
+ registry.npmmirror.com/json5/1.0.2:
+ resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz}
+ name: json5
+ version: 1.0.2
+ hasBin: true
+ dependencies:
+ minimist: registry.npmmirror.com/minimist/1.2.8
+ dev: true
+
+ registry.npmmirror.com/jsonc-parser/3.2.0:
+ resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz}
+ name: jsonc-parser
+ version: 3.2.0
+ dev: true
+
+ registry.npmmirror.com/jsonfile/6.1.0:
+ resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz}
+ name: jsonfile
+ version: 6.1.0
+ dependencies:
+ universalify: registry.npmmirror.com/universalify/2.0.0
+ optionalDependencies:
+ graceful-fs: registry.npmmirror.com/graceful-fs/4.2.11
+ dev: true
+
+ registry.npmmirror.com/kind-of/3.2.2:
+ resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz}
+ name: kind-of
+ version: 3.2.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-buffer: registry.npmmirror.com/is-buffer/1.1.6
+ dev: true
+
+ registry.npmmirror.com/kind-of/4.0.0:
+ resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kind-of/-/kind-of-4.0.0.tgz}
+ name: kind-of
+ version: 4.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-buffer: registry.npmmirror.com/is-buffer/1.1.6
+ dev: true
+
+ registry.npmmirror.com/kind-of/5.1.0:
+ resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kind-of/-/kind-of-5.1.0.tgz}
+ name: kind-of
+ version: 5.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/kind-of/6.0.3:
+ resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz}
+ name: kind-of
+ version: 6.0.3
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/loader-utils/1.4.2:
+ resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz}
+ name: loader-utils
+ version: 1.4.2
+ engines: {node: '>=4.0.0'}
+ dependencies:
+ big.js: registry.npmmirror.com/big.js/5.2.2
+ emojis-list: registry.npmmirror.com/emojis-list/3.0.0
+ json5: registry.npmmirror.com/json5/1.0.2
+ dev: true
+
+ registry.npmmirror.com/local-pkg/0.4.3:
+ resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz}
+ name: local-pkg
+ version: 0.4.3
+ engines: {node: '>=14'}
+ dev: true
+
+ registry.npmmirror.com/lodash-es/4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz}
+ name: lodash-es
+ version: 4.17.21
+ dev: false
+
+ registry.npmmirror.com/lodash-unified/1.0.3_tknf7errc3xdqocd3ryzzla7vq:
+ resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz}
+ id: registry.npmmirror.com/lodash-unified/1.0.3
+ name: lodash-unified
+ version: 1.0.3
+ peerDependencies:
+ '@types/lodash-es': '*'
+ lodash: '*'
+ lodash-es: '*'
+ dependencies:
+ '@types/lodash-es': registry.npmmirror.com/@types/lodash-es/4.17.7
+ lodash: registry.npmmirror.com/lodash/4.17.21
+ lodash-es: registry.npmmirror.com/lodash-es/4.17.21
+ dev: false
+
+ registry.npmmirror.com/lodash.clonedeep/4.5.0:
+ resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz}
+ name: lodash.clonedeep
+ version: 4.5.0
+ dev: false
+
+ registry.npmmirror.com/lodash.isequal/4.5.0:
+ resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz}
+ name: lodash.isequal
+ version: 4.5.0
+ dev: false
+
+ registry.npmmirror.com/lodash/4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz}
+ name: lodash
+ version: 4.17.21
+ dev: false
+
+ registry.npmmirror.com/magic-string/0.25.9:
+ resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz}
+ name: magic-string
+ version: 0.25.9
+ dependencies:
+ sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8
+
+ registry.npmmirror.com/magic-string/0.26.7:
+ resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/magic-string/-/magic-string-0.26.7.tgz}
+ name: magic-string
+ version: 0.26.7
+ engines: {node: '>=12'}
+ dependencies:
+ sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8
+ dev: true
+
+ registry.npmmirror.com/map-cache/0.2.2:
+ resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/map-cache/-/map-cache-0.2.2.tgz}
+ name: map-cache
+ version: 0.2.2
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/map-visit/1.0.0:
+ resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/map-visit/-/map-visit-1.0.0.tgz}
+ name: map-visit
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ object-visit: registry.npmmirror.com/object-visit/1.0.1
+ dev: true
+
+ registry.npmmirror.com/mdn-data/2.0.14:
+ resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz}
+ name: mdn-data
+ version: 2.0.14
+ dev: true
+
+ registry.npmmirror.com/memoize-one/6.0.0:
+ resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz}
+ name: memoize-one
+ version: 6.0.0
+ dev: false
+
+ registry.npmmirror.com/merge-options/1.0.1:
+ resolution: {integrity: sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/merge-options/-/merge-options-1.0.1.tgz}
+ name: merge-options
+ version: 1.0.1
+ engines: {node: '>=4'}
+ dependencies:
+ is-plain-obj: registry.npmmirror.com/is-plain-obj/1.1.0
+ dev: true
+
+ registry.npmmirror.com/merge2/1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz}
+ name: merge2
+ version: 1.4.1
+ engines: {node: '>= 8'}
+ dev: true
+
+ registry.npmmirror.com/micromatch/3.1.0:
+ resolution: {integrity: sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-3.1.0.tgz}
+ name: micromatch
+ version: 3.1.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ arr-diff: registry.npmmirror.com/arr-diff/4.0.0
+ array-unique: registry.npmmirror.com/array-unique/0.3.2
+ braces: registry.npmmirror.com/braces/2.3.2
+ define-property: registry.npmmirror.com/define-property/1.0.0
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ extglob: registry.npmmirror.com/extglob/2.0.4
+ fragment-cache: registry.npmmirror.com/fragment-cache/0.2.1
+ kind-of: registry.npmmirror.com/kind-of/5.1.0
+ nanomatch: registry.npmmirror.com/nanomatch/1.2.13
+ object.pick: registry.npmmirror.com/object.pick/1.3.0
+ regex-not: registry.npmmirror.com/regex-not/1.0.2
+ snapdragon: registry.npmmirror.com/snapdragon/0.8.2
+ to-regex: registry.npmmirror.com/to-regex/3.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/micromatch/4.0.5:
+ resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz}
+ name: micromatch
+ version: 4.0.5
+ engines: {node: '>=8.6'}
+ dependencies:
+ braces: registry.npmmirror.com/braces/3.0.2
+ picomatch: registry.npmmirror.com/picomatch/2.3.1
+ dev: true
+
+ registry.npmmirror.com/mime-db/1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz}
+ name: mime-db
+ version: 1.52.0
+ engines: {node: '>= 0.6'}
+ dev: false
+
+ registry.npmmirror.com/mime-types/2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz}
+ name: mime-types
+ version: 2.1.35
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: registry.npmmirror.com/mime-db/1.52.0
+ dev: false
+
+ registry.npmmirror.com/minimist/1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz}
+ name: minimist
+ version: 1.2.8
+ dev: true
+
+ registry.npmmirror.com/mixin-deep/1.3.2:
+ resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mixin-deep/-/mixin-deep-1.3.2.tgz}
+ name: mixin-deep
+ version: 1.3.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ for-in: registry.npmmirror.com/for-in/1.0.2
+ is-extendable: registry.npmmirror.com/is-extendable/1.0.1
+ dev: true
+
+ registry.npmmirror.com/mlly/1.2.0:
+ resolution: {integrity: sha512-+c7A3CV0KGdKcylsI6khWyts/CYrGTrRVo4R/I7u/cUsy0Conxa6LUhiEzVKIw14lc2L5aiO4+SeVe4TeGRKww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mlly/-/mlly-1.2.0.tgz}
+ name: mlly
+ version: 1.2.0
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.8.2
+ pathe: registry.npmmirror.com/pathe/1.1.0
+ pkg-types: registry.npmmirror.com/pkg-types/1.0.2
+ ufo: registry.npmmirror.com/ufo/1.1.1
+ dev: true
+
+ registry.npmmirror.com/ms/2.0.0:
+ resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz}
+ name: ms
+ version: 2.0.0
+ dev: true
+
+ registry.npmmirror.com/ms/2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz}
+ name: ms
+ version: 2.1.2
+ dev: true
+
+ registry.npmmirror.com/nanoid/3.3.6:
+ resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz}
+ name: nanoid
+ version: 3.3.6
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ registry.npmmirror.com/nanomatch/1.2.13:
+ resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nanomatch/-/nanomatch-1.2.13.tgz}
+ name: nanomatch
+ version: 1.2.13
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ arr-diff: registry.npmmirror.com/arr-diff/4.0.0
+ array-unique: registry.npmmirror.com/array-unique/0.3.2
+ define-property: registry.npmmirror.com/define-property/2.0.2
+ extend-shallow: registry.npmmirror.com/extend-shallow/3.0.2
+ fragment-cache: registry.npmmirror.com/fragment-cache/0.2.1
+ is-windows: registry.npmmirror.com/is-windows/1.0.2
+ kind-of: registry.npmmirror.com/kind-of/6.0.3
+ object.pick: registry.npmmirror.com/object.pick/1.3.0
+ regex-not: registry.npmmirror.com/regex-not/1.0.2
+ snapdragon: registry.npmmirror.com/snapdragon/0.8.2
+ to-regex: registry.npmmirror.com/to-regex/3.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/normalize-path/3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz}
+ name: normalize-path
+ version: 3.0.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/normalize-wheel-es/1.2.0:
+ resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz}
+ name: normalize-wheel-es
+ version: 1.2.0
+ dev: false
+
+ registry.npmmirror.com/nprogress/0.2.0:
+ resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nprogress/-/nprogress-0.2.0.tgz}
+ name: nprogress
+ version: 0.2.0
+ dev: false
+
+ registry.npmmirror.com/nth-check/2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz}
+ name: nth-check
+ version: 2.1.1
+ dependencies:
+ boolbase: registry.npmmirror.com/boolbase/1.0.0
+ dev: true
+
+ registry.npmmirror.com/object-assign/4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz}
+ name: object-assign
+ version: 4.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/object-copy/0.1.0:
+ resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-copy/-/object-copy-0.1.0.tgz}
+ name: object-copy
+ version: 0.1.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ copy-descriptor: registry.npmmirror.com/copy-descriptor/0.1.1
+ define-property: registry.npmmirror.com/define-property/0.2.5
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/object-is/1.1.5:
+ resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-is/-/object-is-1.1.5.tgz}
+ name: object-is
+ version: 1.1.5
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: registry.npmmirror.com/call-bind/1.0.2
+ define-properties: registry.npmmirror.com/define-properties/1.2.0
+ dev: false
+
+ registry.npmmirror.com/object-keys/1.1.1:
+ resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz}
+ name: object-keys
+ version: 1.1.1
+ engines: {node: '>= 0.4'}
+ dev: false
+
+ registry.npmmirror.com/object-visit/1.0.1:
+ resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-visit/-/object-visit-1.0.1.tgz}
+ name: object-visit
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/object.pick/1.3.0:
+ resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object.pick/-/object.pick-1.3.0.tgz}
+ name: object.pick
+ version: 1.3.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/parchment/1.1.4:
+ resolution: {integrity: sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parchment/-/parchment-1.1.4.tgz}
+ name: parchment
+ version: 1.1.4
+ dev: false
+
+ registry.npmmirror.com/pascalcase/0.1.1:
+ resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pascalcase/-/pascalcase-0.1.1.tgz}
+ name: pascalcase
+ version: 0.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/path-parse/1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz}
+ name: path-parse
+ version: 1.0.7
+ dev: true
+
+ registry.npmmirror.com/pathe/0.2.0:
+ resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pathe/-/pathe-0.2.0.tgz}
+ name: pathe
+ version: 0.2.0
+ dev: true
+
+ registry.npmmirror.com/pathe/1.1.0:
+ resolution: {integrity: sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pathe/-/pathe-1.1.0.tgz}
+ name: pathe
+ version: 1.1.0
+ dev: true
+
+ registry.npmmirror.com/picocolors/1.0.0:
+ resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz}
+ name: picocolors
+ version: 1.0.0
+
+ registry.npmmirror.com/picomatch/2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz}
+ name: picomatch
+ version: 2.3.1
+ engines: {node: '>=8.6'}
+ dev: true
+
+ registry.npmmirror.com/pinia/2.0.22_vue@3.2.45:
+ resolution: {integrity: sha512-u+b8/BC+tmvo3ACbYO2w5NfxHWFOjvvw9DQnyT0dW8aUMCPRQT5QnfZ5R5W2MzZBMTeZRMQI7V/QFbafmM9QHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.0.22.tgz}
+ id: registry.npmmirror.com/pinia/2.0.22
+ name: pinia
+ version: 2.0.22
+ peerDependencies:
+ '@vue/composition-api': ^1.4.0
+ typescript: '>=4.4.4'
+ vue: ^2.6.14 || ^3.2.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+ typescript:
+ optional: true
+ dependencies:
+ '@vue/devtools-api': registry.npmmirror.com/@vue/devtools-api/6.5.0
+ vue: registry.npmmirror.com/vue/3.2.45
+ vue-demi: registry.npmmirror.com/vue-demi/0.14.0_vue@3.2.45
+ dev: false
+
+ registry.npmmirror.com/pkg-types/1.0.2:
+ resolution: {integrity: sha512-hM58GKXOcj8WTqUXnsQyJYXdeAPbythQgEF3nTcEo+nkD49chjQ9IKm/QJy9xf6JakXptz86h7ecP2024rrLaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pkg-types/-/pkg-types-1.0.2.tgz}
+ name: pkg-types
+ version: 1.0.2
+ dependencies:
+ jsonc-parser: registry.npmmirror.com/jsonc-parser/3.2.0
+ mlly: registry.npmmirror.com/mlly/1.2.0
+ pathe: registry.npmmirror.com/pathe/1.1.0
+ dev: true
+
+ registry.npmmirror.com/posix-character-classes/0.1.1:
+ resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz}
+ name: posix-character-classes
+ version: 0.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/postcss-prefix-selector/1.16.0_postcss@5.2.18:
+ resolution: {integrity: sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-prefix-selector/-/postcss-prefix-selector-1.16.0.tgz}
+ id: registry.npmmirror.com/postcss-prefix-selector/1.16.0
+ name: postcss-prefix-selector
+ version: 1.16.0
+ peerDependencies:
+ postcss: '>4 <9'
+ dependencies:
+ postcss: registry.npmmirror.com/postcss/5.2.18
+ dev: true
+
+ registry.npmmirror.com/postcss/5.2.18:
+ resolution: {integrity: sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss/-/postcss-5.2.18.tgz}
+ name: postcss
+ version: 5.2.18
+ engines: {node: '>=0.12'}
+ dependencies:
+ chalk: registry.npmmirror.com/chalk/1.1.3
+ js-base64: registry.npmmirror.com/js-base64/2.6.4
+ source-map: registry.npmmirror.com/source-map/0.5.7
+ supports-color: registry.npmmirror.com/supports-color/3.2.3
+ dev: true
+
+ registry.npmmirror.com/postcss/8.4.23:
+ resolution: {integrity: sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss/-/postcss-8.4.23.tgz}
+ name: postcss
+ version: 8.4.23
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: registry.npmmirror.com/nanoid/3.3.6
+ picocolors: registry.npmmirror.com/picocolors/1.0.0
+ source-map-js: registry.npmmirror.com/source-map-js/1.0.2
+
+ registry.npmmirror.com/posthtml-parser/0.2.1:
+ resolution: {integrity: sha512-nPC53YMqJnc/+1x4fRYFfm81KV2V+G9NZY+hTohpYg64Ay7NemWWcV4UWuy/SgMupqQ3kJ88M/iRfZmSnxT+pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posthtml-parser/-/posthtml-parser-0.2.1.tgz}
+ name: posthtml-parser
+ version: 0.2.1
+ dependencies:
+ htmlparser2: registry.npmmirror.com/htmlparser2/3.10.1
+ isobject: registry.npmmirror.com/isobject/2.1.0
+ dev: true
+
+ registry.npmmirror.com/posthtml-rename-id/1.0.12:
+ resolution: {integrity: sha512-UKXf9OF/no8WZo9edRzvuMenb6AD5hDLzIepJW+a4oJT+T/Lx7vfMYWT4aWlGNQh0WMhnUx1ipN9OkZ9q+ddEw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posthtml-rename-id/-/posthtml-rename-id-1.0.12.tgz}
+ name: posthtml-rename-id
+ version: 1.0.12
+ dependencies:
+ escape-string-regexp: registry.npmmirror.com/escape-string-regexp/1.0.5
+ dev: true
+
+ registry.npmmirror.com/posthtml-render/1.4.0:
+ resolution: {integrity: sha512-W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posthtml-render/-/posthtml-render-1.4.0.tgz}
+ name: posthtml-render
+ version: 1.4.0
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmmirror.com/posthtml-svg-mode/1.0.3:
+ resolution: {integrity: sha512-hEqw9NHZ9YgJ2/0G7CECOeuLQKZi8HjWLkBaSVtOWjygQ9ZD8P7tqeowYs7WrFdKsWEKG7o+IlsPY8jrr0CJpQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posthtml-svg-mode/-/posthtml-svg-mode-1.0.3.tgz}
+ name: posthtml-svg-mode
+ version: 1.0.3
+ dependencies:
+ merge-options: registry.npmmirror.com/merge-options/1.0.1
+ posthtml: registry.npmmirror.com/posthtml/0.9.2
+ posthtml-parser: registry.npmmirror.com/posthtml-parser/0.2.1
+ posthtml-render: registry.npmmirror.com/posthtml-render/1.4.0
+ dev: true
+
+ registry.npmmirror.com/posthtml/0.9.2:
+ resolution: {integrity: sha512-spBB5sgC4cv2YcW03f/IAUN1pgDJWNWD8FzkyY4mArLUMJW+KlQhlmUdKAHQuPfb00Jl5xIfImeOsf6YL8QK7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/posthtml/-/posthtml-0.9.2.tgz}
+ name: posthtml
+ version: 0.9.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ posthtml-parser: registry.npmmirror.com/posthtml-parser/0.2.1
+ posthtml-render: registry.npmmirror.com/posthtml-render/1.4.0
+ dev: true
+
+ registry.npmmirror.com/query-string/4.3.4:
+ resolution: {integrity: sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/query-string/-/query-string-4.3.4.tgz}
+ name: query-string
+ version: 4.3.4
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ object-assign: registry.npmmirror.com/object-assign/4.1.1
+ strict-uri-encode: registry.npmmirror.com/strict-uri-encode/1.1.0
+ dev: true
+
+ registry.npmmirror.com/queue-microtask/1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz}
+ name: queue-microtask
+ version: 1.2.3
+ dev: true
+
+ registry.npmmirror.com/quill-delta/3.6.3:
+ resolution: {integrity: sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/quill-delta/-/quill-delta-3.6.3.tgz}
+ name: quill-delta
+ version: 3.6.3
+ engines: {node: '>=0.10'}
+ dependencies:
+ deep-equal: registry.npmmirror.com/deep-equal/1.1.1
+ extend: registry.npmmirror.com/extend/3.0.2
+ fast-diff: registry.npmmirror.com/fast-diff/1.1.2
+ dev: false
+
+ registry.npmmirror.com/quill-delta/4.2.2:
+ resolution: {integrity: sha512-qjbn82b/yJzOjstBgkhtBjN2TNK+ZHP/BgUQO+j6bRhWQQdmj2lH6hXG7+nwwLF41Xgn//7/83lxs9n2BkTtTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/quill-delta/-/quill-delta-4.2.2.tgz}
+ name: quill-delta
+ version: 4.2.2
+ dependencies:
+ fast-diff: registry.npmmirror.com/fast-diff/1.2.0
+ lodash.clonedeep: registry.npmmirror.com/lodash.clonedeep/4.5.0
+ lodash.isequal: registry.npmmirror.com/lodash.isequal/4.5.0
+ dev: false
+
+ registry.npmmirror.com/quill/1.3.7:
+ resolution: {integrity: sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/quill/-/quill-1.3.7.tgz}
+ name: quill
+ version: 1.3.7
+ dependencies:
+ clone: registry.npmmirror.com/clone/2.1.2
+ deep-equal: registry.npmmirror.com/deep-equal/1.1.1
+ eventemitter3: registry.npmmirror.com/eventemitter3/2.0.3
+ extend: registry.npmmirror.com/extend/3.0.2
+ parchment: registry.npmmirror.com/parchment/1.1.4
+ quill-delta: registry.npmmirror.com/quill-delta/3.6.3
+ dev: false
+
+ registry.npmmirror.com/readable-stream/3.6.2:
+ resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz}
+ name: readable-stream
+ version: 3.6.2
+ engines: {node: '>= 6'}
+ dependencies:
+ inherits: registry.npmmirror.com/inherits/2.0.4
+ string_decoder: registry.npmmirror.com/string_decoder/1.3.0
+ util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2
+ dev: true
+
+ registry.npmmirror.com/readdirp/3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz}
+ name: readdirp
+ version: 3.6.0
+ engines: {node: '>=8.10.0'}
+ dependencies:
+ picomatch: registry.npmmirror.com/picomatch/2.3.1
+ dev: true
+
+ registry.npmmirror.com/regex-not/1.0.2:
+ resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/regex-not/-/regex-not-1.0.2.tgz}
+ name: regex-not
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ extend-shallow: registry.npmmirror.com/extend-shallow/3.0.2
+ safe-regex: registry.npmmirror.com/safe-regex/1.1.0
+ dev: true
+
+ registry.npmmirror.com/regexp.prototype.flags/1.5.0:
+ resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz}
+ name: regexp.prototype.flags
+ version: 1.5.0
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: registry.npmmirror.com/call-bind/1.0.2
+ define-properties: registry.npmmirror.com/define-properties/1.2.0
+ functions-have-names: registry.npmmirror.com/functions-have-names/1.2.3
+ dev: false
+
+ registry.npmmirror.com/repeat-element/1.1.4:
+ resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/repeat-element/-/repeat-element-1.1.4.tgz}
+ name: repeat-element
+ version: 1.1.4
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/repeat-string/1.6.1:
+ resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/repeat-string/-/repeat-string-1.6.1.tgz}
+ name: repeat-string
+ version: 1.6.1
+ engines: {node: '>=0.10'}
+ dev: true
+
+ registry.npmmirror.com/resolve-url/0.2.1:
+ resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve-url/-/resolve-url-0.2.1.tgz}
+ name: resolve-url
+ version: 0.2.1
+ deprecated: https://github.com/lydell/resolve-url#deprecated
+ dev: true
+
+ registry.npmmirror.com/resolve/1.22.2:
+ resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz}
+ name: resolve
+ version: 1.22.2
+ hasBin: true
+ dependencies:
+ is-core-module: registry.npmmirror.com/is-core-module/2.12.0
+ path-parse: registry.npmmirror.com/path-parse/1.0.7
+ supports-preserve-symlinks-flag: registry.npmmirror.com/supports-preserve-symlinks-flag/1.0.0
+ dev: true
+
+ registry.npmmirror.com/ret/0.1.15:
+ resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ret/-/ret-0.1.15.tgz}
+ name: ret
+ version: 0.1.15
+ engines: {node: '>=0.12'}
+ dev: true
+
+ registry.npmmirror.com/reusify/1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz}
+ name: reusify
+ version: 1.0.4
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/rollup/2.79.1:
+ resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rollup/-/rollup-2.79.1.tgz}
+ name: rollup
+ version: 2.79.1
+ engines: {node: '>=10.0.0'}
+ hasBin: true
+ optionalDependencies:
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
+ dev: true
+
+ registry.npmmirror.com/run-parallel/1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz}
+ name: run-parallel
+ version: 1.2.0
+ dependencies:
+ queue-microtask: registry.npmmirror.com/queue-microtask/1.2.3
+ dev: true
+
+ registry.npmmirror.com/safe-buffer/5.2.1:
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz}
+ name: safe-buffer
+ version: 5.2.1
+ dev: true
+
+ registry.npmmirror.com/safe-regex/1.1.0:
+ resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-regex/-/safe-regex-1.1.0.tgz}
+ name: safe-regex
+ version: 1.1.0
+ dependencies:
+ ret: registry.npmmirror.com/ret/0.1.15
+ dev: true
+
+ registry.npmmirror.com/sass/1.56.1:
+ resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.56.1.tgz}
+ name: sass
+ version: 1.56.1
+ engines: {node: '>=12.0.0'}
+ hasBin: true
+ dependencies:
+ chokidar: registry.npmmirror.com/chokidar/3.5.3
+ immutable: registry.npmmirror.com/immutable/4.3.0
+ source-map-js: registry.npmmirror.com/source-map-js/1.0.2
+ dev: true
+
+ registry.npmmirror.com/scule/1.0.0:
+ resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/scule/-/scule-1.0.0.tgz}
+ name: scule
+ version: 1.0.0
+ dev: true
+
+ registry.npmmirror.com/set-value/2.0.1:
+ resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/set-value/-/set-value-2.0.1.tgz}
+ name: set-value
+ version: 2.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ is-extendable: registry.npmmirror.com/is-extendable/0.1.1
+ is-plain-object: registry.npmmirror.com/is-plain-object/2.0.4
+ split-string: registry.npmmirror.com/split-string/3.1.0
+ dev: true
+
+ registry.npmmirror.com/snapdragon-node/2.1.1:
+ resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz}
+ name: snapdragon-node
+ version: 2.1.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ define-property: registry.npmmirror.com/define-property/1.0.0
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ snapdragon-util: registry.npmmirror.com/snapdragon-util/3.0.1
+ dev: true
+
+ registry.npmmirror.com/snapdragon-util/3.0.1:
+ resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz}
+ name: snapdragon-util
+ version: 3.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/snapdragon/0.8.2:
+ resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/snapdragon/-/snapdragon-0.8.2.tgz}
+ name: snapdragon
+ version: 0.8.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ base: registry.npmmirror.com/base/0.11.2
+ debug: registry.npmmirror.com/debug/2.6.9
+ define-property: registry.npmmirror.com/define-property/0.2.5
+ extend-shallow: registry.npmmirror.com/extend-shallow/2.0.1
+ map-cache: registry.npmmirror.com/map-cache/0.2.2
+ source-map: registry.npmmirror.com/source-map/0.5.7
+ source-map-resolve: registry.npmmirror.com/source-map-resolve/0.5.3
+ use: registry.npmmirror.com/use/3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/source-map-js/1.0.2:
+ resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz}
+ name: source-map-js
+ version: 1.0.2
+ engines: {node: '>=0.10.0'}
+
+ registry.npmmirror.com/source-map-resolve/0.5.3:
+ resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz}
+ name: source-map-resolve
+ version: 0.5.3
+ deprecated: See https://github.com/lydell/source-map-resolve#deprecated
+ dependencies:
+ atob: registry.npmmirror.com/atob/2.1.2
+ decode-uri-component: registry.npmmirror.com/decode-uri-component/0.2.2
+ resolve-url: registry.npmmirror.com/resolve-url/0.2.1
+ source-map-url: registry.npmmirror.com/source-map-url/0.4.1
+ urix: registry.npmmirror.com/urix/0.1.0
+ dev: true
+
+ registry.npmmirror.com/source-map-url/0.4.1:
+ resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-url/-/source-map-url-0.4.1.tgz}
+ name: source-map-url
+ version: 0.4.1
+ deprecated: See https://github.com/lydell/source-map-url#deprecated
+ dev: true
+
+ registry.npmmirror.com/source-map/0.5.7:
+ resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz}
+ name: source-map
+ version: 0.5.7
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/source-map/0.6.1:
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz}
+ name: source-map
+ version: 0.6.1
+ engines: {node: '>=0.10.0'}
+
+ registry.npmmirror.com/sourcemap-codec/1.4.8:
+ resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz}
+ name: sourcemap-codec
+ version: 1.4.8
+ deprecated: Please use @jridgewell/sourcemap-codec instead
+
+ registry.npmmirror.com/split-string/3.1.0:
+ resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/split-string/-/split-string-3.1.0.tgz}
+ name: split-string
+ version: 3.1.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ extend-shallow: registry.npmmirror.com/extend-shallow/3.0.2
+ dev: true
+
+ registry.npmmirror.com/stable/0.1.8:
+ resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/stable/-/stable-0.1.8.tgz}
+ name: stable
+ version: 0.1.8
+ 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
+
+ registry.npmmirror.com/static-extend/0.1.2:
+ resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/static-extend/-/static-extend-0.1.2.tgz}
+ name: static-extend
+ version: 0.1.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ define-property: registry.npmmirror.com/define-property/0.2.5
+ object-copy: registry.npmmirror.com/object-copy/0.1.0
+ dev: true
+
+ registry.npmmirror.com/strict-uri-encode/1.1.0:
+ resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz}
+ name: strict-uri-encode
+ version: 1.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/string_decoder/1.3.0:
+ resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz}
+ name: string_decoder
+ version: 1.3.0
+ dependencies:
+ safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1
+ dev: true
+
+ registry.npmmirror.com/strip-ansi/3.0.1:
+ resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz}
+ name: strip-ansi
+ version: 3.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ ansi-regex: registry.npmmirror.com/ansi-regex/2.1.1
+ dev: true
+
+ registry.npmmirror.com/strip-literal/1.0.1:
+ resolution: {integrity: sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-literal/-/strip-literal-1.0.1.tgz}
+ name: strip-literal
+ version: 1.0.1
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.8.2
+ dev: true
+
+ registry.npmmirror.com/supports-color/2.0.0:
+ resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz}
+ name: supports-color
+ version: 2.0.0
+ engines: {node: '>=0.8.0'}
+ dev: true
+
+ registry.npmmirror.com/supports-color/3.2.3:
+ resolution: {integrity: sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-3.2.3.tgz}
+ name: supports-color
+ version: 3.2.3
+ engines: {node: '>=0.8.0'}
+ dependencies:
+ has-flag: registry.npmmirror.com/has-flag/1.0.0
+ dev: true
+
+ registry.npmmirror.com/supports-color/7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz}
+ name: supports-color
+ version: 7.2.0
+ engines: {node: '>=8'}
+ dependencies:
+ has-flag: registry.npmmirror.com/has-flag/4.0.0
+ dev: true
+
+ registry.npmmirror.com/supports-preserve-symlinks-flag/1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz}
+ name: supports-preserve-symlinks-flag
+ version: 1.0.0
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ registry.npmmirror.com/svg-baker/1.7.0:
+ resolution: {integrity: sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/svg-baker/-/svg-baker-1.7.0.tgz}
+ name: svg-baker
+ version: 1.7.0
+ dependencies:
+ bluebird: registry.npmmirror.com/bluebird/3.7.2
+ clone: registry.npmmirror.com/clone/2.1.2
+ he: registry.npmmirror.com/he/1.2.0
+ image-size: registry.npmmirror.com/image-size/0.5.5
+ loader-utils: registry.npmmirror.com/loader-utils/1.4.2
+ merge-options: registry.npmmirror.com/merge-options/1.0.1
+ micromatch: registry.npmmirror.com/micromatch/3.1.0
+ postcss: registry.npmmirror.com/postcss/5.2.18
+ postcss-prefix-selector: registry.npmmirror.com/postcss-prefix-selector/1.16.0_postcss@5.2.18
+ posthtml-rename-id: registry.npmmirror.com/posthtml-rename-id/1.0.12
+ posthtml-svg-mode: registry.npmmirror.com/posthtml-svg-mode/1.0.3
+ query-string: registry.npmmirror.com/query-string/4.3.4
+ traverse: registry.npmmirror.com/traverse/0.6.7
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/svgo/2.8.0:
+ resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/svgo/-/svgo-2.8.0.tgz}
+ name: svgo
+ version: 2.8.0
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+ dependencies:
+ '@trysound/sax': registry.npmmirror.com/@trysound/sax/0.2.0
+ commander: registry.npmmirror.com/commander/7.2.0
+ css-select: registry.npmmirror.com/css-select/4.3.0
+ css-tree: registry.npmmirror.com/css-tree/1.1.3
+ csso: registry.npmmirror.com/csso/4.2.0
+ picocolors: registry.npmmirror.com/picocolors/1.0.0
+ stable: registry.npmmirror.com/stable/0.1.8
+ dev: true
+
+ registry.npmmirror.com/to-fast-properties/2.0.0:
+ resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz}
+ name: to-fast-properties
+ version: 2.0.0
+ engines: {node: '>=4'}
+
+ registry.npmmirror.com/to-object-path/0.3.0:
+ resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-object-path/-/to-object-path-0.3.0.tgz}
+ name: to-object-path
+ version: 0.3.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ kind-of: registry.npmmirror.com/kind-of/3.2.2
+ dev: true
+
+ registry.npmmirror.com/to-regex-range/2.1.1:
+ resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-regex-range/-/to-regex-range-2.1.1.tgz}
+ name: to-regex-range
+ version: 2.1.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-number: registry.npmmirror.com/is-number/3.0.0
+ repeat-string: registry.npmmirror.com/repeat-string/1.6.1
+ dev: true
+
+ registry.npmmirror.com/to-regex-range/5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz}
+ name: to-regex-range
+ version: 5.0.1
+ engines: {node: '>=8.0'}
+ dependencies:
+ is-number: registry.npmmirror.com/is-number/7.0.0
+ dev: true
+
+ registry.npmmirror.com/to-regex/3.0.2:
+ resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-regex/-/to-regex-3.0.2.tgz}
+ name: to-regex
+ version: 3.0.2
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ define-property: registry.npmmirror.com/define-property/2.0.2
+ extend-shallow: registry.npmmirror.com/extend-shallow/3.0.2
+ regex-not: registry.npmmirror.com/regex-not/1.0.2
+ safe-regex: registry.npmmirror.com/safe-regex/1.1.0
+ dev: true
+
+ registry.npmmirror.com/traverse/0.6.7:
+ resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/traverse/-/traverse-0.6.7.tgz}
+ name: traverse
+ version: 0.6.7
+ dev: true
+
+ registry.npmmirror.com/tslib/2.3.0:
+ resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz}
+ name: tslib
+ version: 2.3.0
+ dev: false
+
+ registry.npmmirror.com/ufo/1.1.1:
+ resolution: {integrity: sha512-MvlCc4GHrmZdAllBc0iUDowff36Q9Ndw/UzqmEKyrfSzokTd9ZCy1i+IIk5hrYKkjoYVQyNbrw7/F8XJ2rEwTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ufo/-/ufo-1.1.1.tgz}
+ name: ufo
+ version: 1.1.1
+ dev: true
+
+ registry.npmmirror.com/unimport/0.7.1:
+ resolution: {integrity: sha512-rn/hRpCtFxVVT3T8a6sG738xiA6yp8eFzzMLVr+ebp2FBU1gF0Qo6SfOGrrXATDmKruskhYAvPN7djhydgHU8A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unimport/-/unimport-0.7.1.tgz}
+ name: unimport
+ version: 0.7.1
+ dependencies:
+ '@rollup/pluginutils': registry.npmmirror.com/@rollup/pluginutils/5.0.2
+ escape-string-regexp: registry.npmmirror.com/escape-string-regexp/5.0.0
+ fast-glob: registry.npmmirror.com/fast-glob/3.2.12
+ local-pkg: registry.npmmirror.com/local-pkg/0.4.3
+ magic-string: registry.npmmirror.com/magic-string/0.26.7
+ mlly: registry.npmmirror.com/mlly/1.2.0
+ pathe: registry.npmmirror.com/pathe/1.1.0
+ pkg-types: registry.npmmirror.com/pkg-types/1.0.2
+ scule: registry.npmmirror.com/scule/1.0.0
+ strip-literal: registry.npmmirror.com/strip-literal/1.0.1
+ unplugin: registry.npmmirror.com/unplugin/1.3.1
+ transitivePeerDependencies:
+ - rollup
+ dev: true
+
+ registry.npmmirror.com/union-value/1.0.1:
+ resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/union-value/-/union-value-1.0.1.tgz}
+ name: union-value
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ arr-union: registry.npmmirror.com/arr-union/3.1.0
+ get-value: registry.npmmirror.com/get-value/2.0.6
+ is-extendable: registry.npmmirror.com/is-extendable/0.1.1
+ set-value: registry.npmmirror.com/set-value/2.0.1
+ dev: true
+
+ registry.npmmirror.com/universalify/2.0.0:
+ resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz}
+ name: universalify
+ version: 2.0.0
+ engines: {node: '>= 10.0.0'}
+ dev: true
+
+ registry.npmmirror.com/unplugin-auto-import/0.11.4_@vueuse+core@9.5.0:
+ resolution: {integrity: sha512-lh/bRDRYwgnb9Cm5ur8TlTMGxA1GRZvgzCvBIf0vyuVRy7ebWcWefFElpUDpr8vLl+ZRGsPVCOGiYJ8TCR625Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.11.4.tgz}
+ id: registry.npmmirror.com/unplugin-auto-import/0.11.4
+ name: unplugin-auto-import
+ version: 0.11.4
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@vueuse/core': '*'
+ peerDependenciesMeta:
+ '@vueuse/core':
+ optional: true
+ dependencies:
+ '@antfu/utils': registry.npmmirror.com/@antfu/utils/0.6.3
+ '@rollup/pluginutils': registry.npmmirror.com/@rollup/pluginutils/5.0.2
+ '@vueuse/core': registry.npmmirror.com/@vueuse/core/9.5.0_vue@3.2.45
+ local-pkg: registry.npmmirror.com/local-pkg/0.4.3
+ magic-string: registry.npmmirror.com/magic-string/0.26.7
+ unimport: registry.npmmirror.com/unimport/0.7.1
+ unplugin: registry.npmmirror.com/unplugin/0.10.2
+ transitivePeerDependencies:
+ - rollup
+ dev: true
+
+ registry.npmmirror.com/unplugin/0.10.2:
+ resolution: {integrity: sha512-6rk7GUa4ICYjae5PrAllvcDeuT8pA9+j5J5EkxbMFaV+SalHhxZ7X2dohMzu6C3XzsMT+6jwR/+pwPNR3uK9MA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unplugin/-/unplugin-0.10.2.tgz}
+ name: unplugin
+ version: 0.10.2
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.8.2
+ chokidar: registry.npmmirror.com/chokidar/3.5.3
+ webpack-sources: registry.npmmirror.com/webpack-sources/3.2.3
+ webpack-virtual-modules: registry.npmmirror.com/webpack-virtual-modules/0.4.6
+ dev: true
+
+ registry.npmmirror.com/unplugin/1.3.1:
+ resolution: {integrity: sha512-h4uUTIvFBQRxUKS2Wjys6ivoeofGhxzTe2sRWlooyjHXVttcVfV/JiavNd3d4+jty0SVV0dxGw9AkY9MwiaCEw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unplugin/-/unplugin-1.3.1.tgz}
+ name: unplugin
+ version: 1.3.1
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.8.2
+ chokidar: registry.npmmirror.com/chokidar/3.5.3
+ webpack-sources: registry.npmmirror.com/webpack-sources/3.2.3
+ webpack-virtual-modules: registry.npmmirror.com/webpack-virtual-modules/0.5.0
+ dev: true
+
+ registry.npmmirror.com/unset-value/1.0.0:
+ resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unset-value/-/unset-value-1.0.0.tgz}
+ name: unset-value
+ version: 1.0.0
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ has-value: registry.npmmirror.com/has-value/0.3.1
+ isobject: registry.npmmirror.com/isobject/3.0.1
+ dev: true
+
+ registry.npmmirror.com/urix/0.1.0:
+ resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/urix/-/urix-0.1.0.tgz}
+ name: urix
+ version: 0.1.0
+ deprecated: Please see https://github.com/lydell/urix#deprecated
+ dev: true
+
+ registry.npmmirror.com/use/3.1.1:
+ resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/use/-/use-3.1.1.tgz}
+ name: use
+ version: 3.1.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/util-deprecate/1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz}
+ name: util-deprecate
+ version: 1.0.2
+ dev: true
+
+ registry.npmmirror.com/vary/1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz}
+ name: vary
+ version: 1.1.2
+ engines: {node: '>= 0.8'}
+ dev: true
+
+ registry.npmmirror.com/vite-plugin-compression/0.5.1_vite@3.2.3:
+ resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-compression/-/vite-plugin-compression-0.5.1.tgz}
+ id: registry.npmmirror.com/vite-plugin-compression/0.5.1
+ name: vite-plugin-compression
+ version: 0.5.1
+ peerDependencies:
+ vite: '>=2.0.0'
+ dependencies:
+ chalk: registry.npmmirror.com/chalk/4.1.2
+ debug: registry.npmmirror.com/debug/4.3.4
+ fs-extra: registry.npmmirror.com/fs-extra/10.1.0
+ vite: registry.npmmirror.com/vite/3.2.3_sass@1.56.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/vite-plugin-svg-icons/2.0.1_vite@3.2.3:
+ resolution: {integrity: sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-svg-icons/-/vite-plugin-svg-icons-2.0.1.tgz}
+ id: registry.npmmirror.com/vite-plugin-svg-icons/2.0.1
+ name: vite-plugin-svg-icons
+ version: 2.0.1
+ peerDependencies:
+ vite: '>=2.0.0'
+ dependencies:
+ '@types/svgo': registry.npmmirror.com/@types/svgo/2.6.4
+ cors: registry.npmmirror.com/cors/2.8.5
+ debug: registry.npmmirror.com/debug/4.3.4
+ etag: registry.npmmirror.com/etag/1.8.1
+ fs-extra: registry.npmmirror.com/fs-extra/10.1.0
+ pathe: registry.npmmirror.com/pathe/0.2.0
+ svg-baker: registry.npmmirror.com/svg-baker/1.7.0
+ svgo: registry.npmmirror.com/svgo/2.8.0
+ vite: registry.npmmirror.com/vite/3.2.3_sass@1.56.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0_vite@3.2.3:
+ resolution: {integrity: sha512-WMbjPCui75fboFoUTHhdbXzu4Y/bJMv5N9QT9a7do3wNMNHHqrk+Tn2jrSJU0LS5fGl/EG+FEDBYVUeWIkDqXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite-plugin-vue-setup-extend/-/vite-plugin-vue-setup-extend-0.4.0.tgz}
+ id: registry.npmmirror.com/vite-plugin-vue-setup-extend/0.4.0
+ name: vite-plugin-vue-setup-extend
+ version: 0.4.0
+ peerDependencies:
+ vite: '>=2.0.0'
+ dependencies:
+ '@vue/compiler-sfc': registry.npmmirror.com/@vue/compiler-sfc/3.2.45
+ magic-string: registry.npmmirror.com/magic-string/0.25.9
+ vite: registry.npmmirror.com/vite/3.2.3_sass@1.56.1
+ dev: true
+
+ registry.npmmirror.com/vite/3.2.3_sass@1.56.1:
+ resolution: {integrity: sha512-h8jl1TZ76eGs3o2dIBSsvXDLb1m/Ec1iej8ZMdz+PsaFUsftZeWe2CZOI3qogEsMNaywc17gu0q6cQDzh/weCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite/-/vite-3.2.3.tgz}
+ id: registry.npmmirror.com/vite/3.2.3
+ name: vite
+ version: 3.2.3
+ engines: {node: ^14.18.0 || >=16.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': '>= 14'
+ less: '*'
+ sass: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ less:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ dependencies:
+ esbuild: registry.npmmirror.com/esbuild/0.15.18
+ postcss: registry.npmmirror.com/postcss/8.4.23
+ resolve: registry.npmmirror.com/resolve/1.22.2
+ rollup: registry.npmmirror.com/rollup/2.79.1
+ sass: registry.npmmirror.com/sass/1.56.1
+ optionalDependencies:
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
+ dev: true
+
+ registry.npmmirror.com/vue-cropper/1.0.3:
+ resolution: {integrity: sha512-yDrZkE4H5vOiMA9WQHE+6rmXrZ1S9TMZasEPAZPKg/2I/nySHL4ECD1lNxt7+ofTPKT+9+2sQkCwagPqEqiqJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-cropper/-/vue-cropper-1.0.3.tgz}
+ name: vue-cropper
+ version: 1.0.3
+ dev: false
+
+ registry.npmmirror.com/vue-demi/0.14.0_vue@3.2.45:
+ resolution: {integrity: sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.0.tgz}
+ id: registry.npmmirror.com/vue-demi/0.14.0
+ name: vue-demi
+ version: 0.14.0
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^3.0.0-0 || ^2.6.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+ dependencies:
+ vue: registry.npmmirror.com/vue/3.2.45
+
+ registry.npmmirror.com/vue-router/4.1.4_vue@3.2.45:
+ resolution: {integrity: sha512-UgYen33gOtwT3cOG1+yRen+Brk9py8CSlC9LEa3UjvKZ4EAoSo8NjZPDeDnmNerfazorHIJG1NC7qdi1SuQJnQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-router/-/vue-router-4.1.4.tgz}
+ id: registry.npmmirror.com/vue-router/4.1.4
+ name: vue-router
+ version: 4.1.4
+ peerDependencies:
+ vue: ^3.2.0
+ dependencies:
+ '@vue/devtools-api': registry.npmmirror.com/@vue/devtools-api/6.5.0
+ vue: registry.npmmirror.com/vue/3.2.45
+ dev: false
+
+ registry.npmmirror.com/vue/3.2.45:
+ resolution: {integrity: sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz}
+ name: vue
+ version: 3.2.45
+ dependencies:
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.45
+ '@vue/compiler-sfc': registry.npmmirror.com/@vue/compiler-sfc/3.2.45
+ '@vue/runtime-dom': registry.npmmirror.com/@vue/runtime-dom/3.2.45
+ '@vue/server-renderer': registry.npmmirror.com/@vue/server-renderer/3.2.45_vue@3.2.45
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
+
+ registry.npmmirror.com/webpack-sources/3.2.3:
+ resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz}
+ name: webpack-sources
+ version: 3.2.3
+ engines: {node: '>=10.13.0'}
+ dev: true
+
+ registry.npmmirror.com/webpack-virtual-modules/0.4.6:
+ resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.6.tgz}
+ name: webpack-virtual-modules
+ version: 0.4.6
+ dev: true
+
+ registry.npmmirror.com/webpack-virtual-modules/0.5.0:
+ resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz}
+ name: webpack-virtual-modules
+ version: 0.5.0
+ dev: true
+
+ registry.npmmirror.com/zrender/5.4.0:
+ resolution: {integrity: sha512-rOS09Z2HSVGFs2dn/TuYk5BlCaZcVe8UDLLjj1ySYF828LATKKdxuakSZMvrDz54yiKPDYVfjdKqcX8Jky3BIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/zrender/-/zrender-5.4.0.tgz}
+ name: zrender
+ version: 5.4.0
+ dependencies:
+ tslib: registry.npmmirror.com/tslib/2.3.0
+ dev: false
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 0000000000000000000000000000000000000000..3f919d85a5d1e093fd8d80ebcbe9987a3bdbb54f
GIT binary patch
literal 8131
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
d+2AD?_zza
+
+
+
+
diff --git a/src/api/demo/demo.js b/src/api/demo/demo.js
new file mode 100644
index 0000000..04d4025
--- /dev/null
+++ b/src/api/demo/demo.js
@@ -0,0 +1,54 @@
+import request from '@/utils/request'
+
+// 查询测试单表列表
+export function listDemo(query) {
+ return request({
+ url: '/demo/demo/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 自定义分页接口
+export function pageDemo(query) {
+ return request({
+ url: '/demo/demo/page',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询测试单表详细
+export function getDemo(id) {
+ return request({
+ url: '/demo/demo/' + id,
+ method: 'get'
+ })
+}
+
+// 新增测试单表
+export function addDemo(data) {
+ return request({
+ url: '/demo/demo',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改测试单表
+export function updateDemo(data) {
+ return request({
+ url: '/demo/demo',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除测试单表
+export function delDemo(id) {
+ return request({
+ url: '/demo/demo/' + id,
+ method: 'delete'
+ })
+}
+
diff --git a/src/api/demo/tree.js b/src/api/demo/tree.js
new file mode 100644
index 0000000..4c7ebc0
--- /dev/null
+++ b/src/api/demo/tree.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询测试树表列表
+export function listTree(query) {
+ return request({
+ url: '/demo/tree/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询测试树表详细
+export function getTree(id) {
+ return request({
+ url: '/demo/tree/' + id,
+ method: 'get'
+ })
+}
+
+// 新增测试树表
+export function addTree(data) {
+ return request({
+ url: '/demo/tree',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改测试树表
+export function updateTree(data) {
+ return request({
+ url: '/demo/tree',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除测试树表
+export function delTree(id) {
+ return request({
+ url: '/demo/tree/' + id,
+ method: 'delete'
+ })
+}
diff --git a/src/api/login.js b/src/api/login.js
new file mode 100644
index 0000000..649f59c
--- /dev/null
+++ b/src/api/login.js
@@ -0,0 +1,59 @@
+import request from '@/utils/request'
+
+// 登录方法
+export function login(username, password, code, uuid) {
+ const data = {
+ username,
+ password,
+ code,
+ uuid
+ }
+ return request({
+ url: '/login',
+ headers: {
+ isToken: false
+ },
+ method: 'post',
+ data: data
+ })
+}
+
+// 注册方法
+export function register(data) {
+ return request({
+ url: '/register',
+ headers: {
+ isToken: false
+ },
+ method: 'post',
+ data: data
+ })
+}
+
+// 获取用户详细信息
+export function getInfo() {
+ return request({
+ url: '/getInfo',
+ method: 'get'
+ })
+}
+
+// 退出方法
+export function logout() {
+ return request({
+ url: '/logout',
+ method: 'post'
+ })
+}
+
+// 获取验证码
+export function getCodeImg() {
+ return request({
+ url: '/captchaImage',
+ headers: {
+ isToken: false
+ },
+ method: 'get',
+ timeout: 20000
+ })
+}
\ No newline at end of file
diff --git a/src/api/menu.js b/src/api/menu.js
new file mode 100644
index 0000000..faef101
--- /dev/null
+++ b/src/api/menu.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+// 获取路由
+export const getRouters = () => {
+ return request({
+ url: '/getRouters',
+ method: 'get'
+ })
+}
\ No newline at end of file
diff --git a/src/api/monitor/cache.js b/src/api/monitor/cache.js
new file mode 100644
index 0000000..45a9003
--- /dev/null
+++ b/src/api/monitor/cache.js
@@ -0,0 +1,57 @@
+import request from '@/utils/request'
+
+// 查询缓存详细
+export function getCache() {
+ return request({
+ url: '/monitor/cache',
+ method: 'get'
+ })
+}
+
+// 查询缓存名称列表
+export function listCacheName() {
+ return request({
+ url: '/monitor/cache/getNames',
+ method: 'get'
+ })
+}
+
+// 查询缓存键名列表
+export function listCacheKey(cacheName) {
+ return request({
+ url: '/monitor/cache/getKeys/' + cacheName,
+ method: 'get'
+ })
+}
+
+// 查询缓存内容
+export function getCacheValue(cacheName, cacheKey) {
+ return request({
+ url: '/monitor/cache/getValue/' + cacheName + '/' + cacheKey,
+ method: 'get'
+ })
+}
+
+// 清理指定名称缓存
+export function clearCacheName(cacheName) {
+ return request({
+ url: '/monitor/cache/clearCacheName/' + cacheName,
+ method: 'delete'
+ })
+}
+
+// 清理指定键名缓存
+export function clearCacheKey(cacheName, cacheKey) {
+ return request({
+ url: '/monitor/cache/clearCacheKey/' + cacheName + '/' + cacheKey,
+ method: 'delete'
+ })
+}
+
+// 清理全部缓存
+export function clearCacheAll() {
+ return request({
+ url: '/monitor/cache/clearCacheAll',
+ method: 'delete'
+ })
+}
diff --git a/src/api/monitor/logininfor.js b/src/api/monitor/logininfor.js
new file mode 100644
index 0000000..4d112b7
--- /dev/null
+++ b/src/api/monitor/logininfor.js
@@ -0,0 +1,34 @@
+import request from '@/utils/request'
+
+// 查询登录日志列表
+export function list(query) {
+ return request({
+ url: '/monitor/logininfor/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 删除登录日志
+export function delLogininfor(infoId) {
+ return request({
+ url: '/monitor/logininfor/' + infoId,
+ method: 'delete'
+ })
+}
+
+// 解锁用户登录状态
+export function unlockLogininfor(userName) {
+ return request({
+ url: '/monitor/logininfor/unlock/' + userName,
+ method: 'get'
+ })
+}
+
+// 清空登录日志
+export function cleanLogininfor() {
+ return request({
+ url: '/monitor/logininfor/clean',
+ method: 'delete'
+ })
+}
diff --git a/src/api/monitor/online.js b/src/api/monitor/online.js
new file mode 100644
index 0000000..bd22137
--- /dev/null
+++ b/src/api/monitor/online.js
@@ -0,0 +1,18 @@
+import request from '@/utils/request'
+
+// 查询在线用户列表
+export function list(query) {
+ return request({
+ url: '/monitor/online/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 强退用户
+export function forceLogout(tokenId) {
+ return request({
+ url: '/monitor/online/' + tokenId,
+ method: 'delete'
+ })
+}
diff --git a/src/api/monitor/operlog.js b/src/api/monitor/operlog.js
new file mode 100644
index 0000000..a04bca8
--- /dev/null
+++ b/src/api/monitor/operlog.js
@@ -0,0 +1,26 @@
+import request from '@/utils/request'
+
+// 查询操作日志列表
+export function list(query) {
+ return request({
+ url: '/monitor/operlog/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 删除操作日志
+export function delOperlog(operId) {
+ return request({
+ url: '/monitor/operlog/' + operId,
+ method: 'delete'
+ })
+}
+
+// 清空操作日志
+export function cleanOperlog() {
+ return request({
+ url: '/monitor/operlog/clean',
+ method: 'delete'
+ })
+}
diff --git a/src/api/system/config.js b/src/api/system/config.js
new file mode 100644
index 0000000..9b93886
--- /dev/null
+++ b/src/api/system/config.js
@@ -0,0 +1,72 @@
+import request from '@/utils/request'
+
+// 查询参数列表
+export function listConfig(query) {
+ return request({
+ url: '/system/config/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询参数详细
+export function getConfig(configId) {
+ return request({
+ url: '/system/config/' + configId,
+ method: 'get'
+ })
+}
+
+// 根据参数键名查询参数值
+export function getConfigKey(configKey) {
+ return request({
+ url: '/system/config/configKey/' + configKey,
+ method: 'get'
+ })
+}
+
+// 新增参数配置
+export function addConfig(data) {
+ return request({
+ url: '/system/config',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改参数配置
+export function updateConfig(data) {
+ return request({
+ url: '/system/config',
+ method: 'put',
+ data: data
+ })
+}
+
+// 修改参数配置
+export function updateConfigByKey(key, value) {
+ return request({
+ url: '/system/config/updateByKey',
+ method: 'put',
+ data: {
+ configKey: key,
+ configValue: value
+ }
+ })
+}
+
+// 删除参数配置
+export function delConfig(configId) {
+ return request({
+ url: '/system/config/' + configId,
+ method: 'delete'
+ })
+}
+
+// 刷新参数缓存
+export function refreshCache() {
+ return request({
+ url: '/system/config/refreshCache',
+ method: 'delete'
+ })
+}
diff --git a/src/api/system/dept.js b/src/api/system/dept.js
new file mode 100644
index 0000000..fc943cd
--- /dev/null
+++ b/src/api/system/dept.js
@@ -0,0 +1,52 @@
+import request from '@/utils/request'
+
+// 查询部门列表
+export function listDept(query) {
+ return request({
+ url: '/system/dept/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询部门列表(排除节点)
+export function listDeptExcludeChild(deptId) {
+ return request({
+ url: '/system/dept/list/exclude/' + deptId,
+ method: 'get'
+ })
+}
+
+// 查询部门详细
+export function getDept(deptId) {
+ return request({
+ url: '/system/dept/' + deptId,
+ method: 'get'
+ })
+}
+
+// 新增部门
+export function addDept(data) {
+ return request({
+ url: '/system/dept',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改部门
+export function updateDept(data) {
+ return request({
+ url: '/system/dept',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除部门
+export function delDept(deptId) {
+ return request({
+ url: '/system/dept/' + deptId,
+ method: 'delete'
+ })
+}
\ No newline at end of file
diff --git a/src/api/system/dict/data.js b/src/api/system/dict/data.js
new file mode 100644
index 0000000..6c9eb79
--- /dev/null
+++ b/src/api/system/dict/data.js
@@ -0,0 +1,52 @@
+import request from '@/utils/request'
+
+// 查询字典数据列表
+export function listData(query) {
+ return request({
+ url: '/system/dict/data/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询字典数据详细
+export function getData(dictCode) {
+ return request({
+ url: '/system/dict/data/' + dictCode,
+ method: 'get'
+ })
+}
+
+// 根据字典类型查询字典数据信息
+export function getDicts(dictType) {
+ return request({
+ url: '/system/dict/data/type/' + dictType,
+ method: 'get'
+ })
+}
+
+// 新增字典数据
+export function addData(data) {
+ return request({
+ url: '/system/dict/data',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改字典数据
+export function updateData(data) {
+ return request({
+ url: '/system/dict/data',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除字典数据
+export function delData(dictCode) {
+ return request({
+ url: '/system/dict/data/' + dictCode,
+ method: 'delete'
+ })
+}
diff --git a/src/api/system/dict/type.js b/src/api/system/dict/type.js
new file mode 100644
index 0000000..a0254ba
--- /dev/null
+++ b/src/api/system/dict/type.js
@@ -0,0 +1,60 @@
+import request from '@/utils/request'
+
+// 查询字典类型列表
+export function listType(query) {
+ return request({
+ url: '/system/dict/type/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询字典类型详细
+export function getType(dictId) {
+ return request({
+ url: '/system/dict/type/' + dictId,
+ method: 'get'
+ })
+}
+
+// 新增字典类型
+export function addType(data) {
+ return request({
+ url: '/system/dict/type',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改字典类型
+export function updateType(data) {
+ return request({
+ url: '/system/dict/type',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除字典类型
+export function delType(dictId) {
+ return request({
+ url: '/system/dict/type/' + dictId,
+ method: 'delete'
+ })
+}
+
+// 刷新字典缓存
+export function refreshCache() {
+ return request({
+ url: '/system/dict/type/refreshCache',
+ method: 'delete'
+ })
+}
+
+// 获取字典选择框列表
+export function optionselect() {
+ return request({
+ url: '/system/dict/type/optionselect',
+ method: 'get'
+ })
+}
diff --git a/src/api/system/menu.js b/src/api/system/menu.js
new file mode 100644
index 0000000..f6415c6
--- /dev/null
+++ b/src/api/system/menu.js
@@ -0,0 +1,60 @@
+import request from '@/utils/request'
+
+// 查询菜单列表
+export function listMenu(query) {
+ return request({
+ url: '/system/menu/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询菜单详细
+export function getMenu(menuId) {
+ return request({
+ url: '/system/menu/' + menuId,
+ method: 'get'
+ })
+}
+
+// 查询菜单下拉树结构
+export function treeselect() {
+ return request({
+ url: '/system/menu/treeselect',
+ method: 'get'
+ })
+}
+
+// 根据角色ID查询菜单下拉树结构
+export function roleMenuTreeselect(roleId) {
+ return request({
+ url: '/system/menu/roleMenuTreeselect/' + roleId,
+ method: 'get'
+ })
+}
+
+// 新增菜单
+export function addMenu(data) {
+ return request({
+ url: '/system/menu',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改菜单
+export function updateMenu(data) {
+ return request({
+ url: '/system/menu',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除菜单
+export function delMenu(menuId) {
+ return request({
+ url: '/system/menu/' + menuId,
+ method: 'delete'
+ })
+}
\ No newline at end of file
diff --git a/src/api/system/notice.js b/src/api/system/notice.js
new file mode 100644
index 0000000..c274ea5
--- /dev/null
+++ b/src/api/system/notice.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询公告列表
+export function listNotice(query) {
+ return request({
+ url: '/system/notice/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询公告详细
+export function getNotice(noticeId) {
+ return request({
+ url: '/system/notice/' + noticeId,
+ method: 'get'
+ })
+}
+
+// 新增公告
+export function addNotice(data) {
+ return request({
+ url: '/system/notice',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改公告
+export function updateNotice(data) {
+ return request({
+ url: '/system/notice',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除公告
+export function delNotice(noticeId) {
+ return request({
+ url: '/system/notice/' + noticeId,
+ method: 'delete'
+ })
+}
\ No newline at end of file
diff --git a/src/api/system/oss.js b/src/api/system/oss.js
new file mode 100644
index 0000000..7d80026
--- /dev/null
+++ b/src/api/system/oss.js
@@ -0,0 +1,27 @@
+import request from '@/utils/request'
+
+// 查询OSS对象存储列表
+export function listOss(query) {
+ return request({
+ url: '/system/oss/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询OSS对象基于id串
+export function listByIds(ossId) {
+ return request({
+ url: '/system/oss/listByIds/' + ossId,
+ method: 'get'
+ })
+}
+
+// 删除OSS对象存储
+export function delOss(ossId) {
+ return request({
+ url: '/system/oss/' + ossId,
+ method: 'delete'
+ })
+}
+
diff --git a/src/api/system/ossConfig.js b/src/api/system/ossConfig.js
new file mode 100644
index 0000000..f290762
--- /dev/null
+++ b/src/api/system/ossConfig.js
@@ -0,0 +1,58 @@
+import request from '@/utils/request'
+
+// 查询对象存储配置列表
+export function listOssConfig(query) {
+ return request({
+ url: '/system/oss/config/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询对象存储配置详细
+export function getOssConfig(ossConfigId) {
+ return request({
+ url: '/system/oss/config/' + ossConfigId,
+ method: 'get'
+ })
+}
+
+// 新增对象存储配置
+export function addOssConfig(data) {
+ return request({
+ url: '/system/oss/config',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改对象存储配置
+export function updateOssConfig(data) {
+ return request({
+ url: '/system/oss/config',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除对象存储配置
+export function delOssConfig(ossConfigId) {
+ return request({
+ url: '/system/oss/config/' + ossConfigId,
+ method: 'delete'
+ })
+}
+
+// 对象存储状态修改
+export function changeOssConfigStatus(ossConfigId, status, configKey) {
+ const data = {
+ ossConfigId,
+ status,
+ configKey
+ }
+ return request({
+ url: '/system/oss/config/changeStatus',
+ method: 'put',
+ data: data
+ })
+}
diff --git a/src/api/system/post.js b/src/api/system/post.js
new file mode 100644
index 0000000..1a8e9ca
--- /dev/null
+++ b/src/api/system/post.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询岗位列表
+export function listPost(query) {
+ return request({
+ url: '/system/post/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询岗位详细
+export function getPost(postId) {
+ return request({
+ url: '/system/post/' + postId,
+ method: 'get'
+ })
+}
+
+// 新增岗位
+export function addPost(data) {
+ return request({
+ url: '/system/post',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改岗位
+export function updatePost(data) {
+ return request({
+ url: '/system/post',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除岗位
+export function delPost(postId) {
+ return request({
+ url: '/system/post/' + postId,
+ method: 'delete'
+ })
+}
diff --git a/src/api/system/role.js b/src/api/system/role.js
new file mode 100644
index 0000000..f13e6f4
--- /dev/null
+++ b/src/api/system/role.js
@@ -0,0 +1,119 @@
+import request from '@/utils/request'
+
+// 查询角色列表
+export function listRole(query) {
+ return request({
+ url: '/system/role/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询角色详细
+export function getRole(roleId) {
+ return request({
+ url: '/system/role/' + roleId,
+ method: 'get'
+ })
+}
+
+// 新增角色
+export function addRole(data) {
+ return request({
+ url: '/system/role',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改角色
+export function updateRole(data) {
+ return request({
+ url: '/system/role',
+ method: 'put',
+ data: data
+ })
+}
+
+// 角色数据权限
+export function dataScope(data) {
+ return request({
+ url: '/system/role/dataScope',
+ method: 'put',
+ data: data
+ })
+}
+
+// 角色状态修改
+export function changeRoleStatus(roleId, status) {
+ const data = {
+ roleId,
+ status
+ }
+ return request({
+ url: '/system/role/changeStatus',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除角色
+export function delRole(roleId) {
+ return request({
+ url: '/system/role/' + roleId,
+ method: 'delete'
+ })
+}
+
+// 查询角色已授权用户列表
+export function allocatedUserList(query) {
+ return request({
+ url: '/system/role/authUser/allocatedList',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询角色未授权用户列表
+export function unallocatedUserList(query) {
+ return request({
+ url: '/system/role/authUser/unallocatedList',
+ method: 'get',
+ params: query
+ })
+}
+
+// 取消用户授权角色
+export function authUserCancel(data) {
+ return request({
+ url: '/system/role/authUser/cancel',
+ method: 'put',
+ data: data
+ })
+}
+
+// 批量取消用户授权角色
+export function authUserCancelAll(data) {
+ return request({
+ url: '/system/role/authUser/cancelAll',
+ method: 'put',
+ params: data
+ })
+}
+
+// 授权用户选择
+export function authUserSelectAll(data) {
+ return request({
+ url: '/system/role/authUser/selectAll',
+ method: 'put',
+ params: data
+ })
+}
+
+// 根据角色ID查询部门树结构
+export function deptTreeSelect(roleId) {
+ return request({
+ url: '/system/role/deptTree/' + roleId,
+ method: 'get'
+ })
+}
diff --git a/src/api/system/user.js b/src/api/system/user.js
new file mode 100644
index 0000000..f2f76ef
--- /dev/null
+++ b/src/api/system/user.js
@@ -0,0 +1,135 @@
+import request from '@/utils/request'
+import { parseStrEmpty } from "@/utils/ruoyi";
+
+// 查询用户列表
+export function listUser(query) {
+ return request({
+ url: '/system/user/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询用户详细
+export function getUser(userId) {
+ return request({
+ url: '/system/user/' + parseStrEmpty(userId),
+ method: 'get'
+ })
+}
+
+// 新增用户
+export function addUser(data) {
+ return request({
+ url: '/system/user',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改用户
+export function updateUser(data) {
+ return request({
+ url: '/system/user',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除用户
+export function delUser(userId) {
+ return request({
+ url: '/system/user/' + userId,
+ method: 'delete'
+ })
+}
+
+// 用户密码重置
+export function resetUserPwd(userId, password) {
+ const data = {
+ userId,
+ password
+ }
+ return request({
+ url: '/system/user/resetPwd',
+ method: 'put',
+ data: data
+ })
+}
+
+// 用户状态修改
+export function changeUserStatus(userId, status) {
+ const data = {
+ userId,
+ status
+ }
+ return request({
+ url: '/system/user/changeStatus',
+ method: 'put',
+ data: data
+ })
+}
+
+// 查询用户个人信息
+export function getUserProfile() {
+ return request({
+ url: '/system/user/profile',
+ method: 'get'
+ })
+}
+
+// 修改用户个人信息
+export function updateUserProfile(data) {
+ return request({
+ url: '/system/user/profile',
+ method: 'put',
+ data: data
+ })
+}
+
+// 用户密码重置
+export function updateUserPwd(oldPassword, newPassword) {
+ const data = {
+ oldPassword,
+ newPassword
+ }
+ return request({
+ url: '/system/user/profile/updatePwd',
+ method: 'put',
+ params: data
+ })
+}
+
+// 用户头像上传
+export function uploadAvatar(data) {
+ return request({
+ url: '/system/user/profile/avatar',
+ method: 'post',
+ data: data
+ })
+}
+
+// 查询授权角色
+export function getAuthRole(userId) {
+ return request({
+ url: '/system/user/authRole/' + userId,
+ method: 'get'
+ })
+}
+
+// 保存授权角色
+export function updateAuthRole(data) {
+ return request({
+ url: '/system/user/authRole',
+ method: 'put',
+ params: data
+ })
+}
+
+// 查询部门下拉树结构
+export function deptTreeSelect() {
+ return request({
+ url: '/system/user/deptTree',
+ method: 'get'
+ })
+}
diff --git a/src/api/tool/gen.js b/src/api/tool/gen.js
new file mode 100644
index 0000000..441791c
--- /dev/null
+++ b/src/api/tool/gen.js
@@ -0,0 +1,85 @@
+import request from '@/utils/request'
+
+// 查询生成表数据
+export function listTable(query) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/list',
+ method: 'get',
+ params: query
+ })
+}
+// 查询db数据库列表
+export function listDbTable(query) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/db/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询表详细信息
+export function getGenTable(tableId) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/' + tableId,
+ method: 'get'
+ })
+}
+
+// 修改代码生成信息
+export function updateGenTable(data) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen',
+ method: 'put',
+ data: data
+ })
+}
+
+// 导入表
+export function importTable(data) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/importTable',
+ method: 'post',
+ params: data
+ })
+}
+
+// 预览生成代码
+export function previewTable(tableId) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/preview/' + tableId,
+ method: 'get'
+ })
+}
+
+// 删除表数据
+export function delTable(tableId) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/' + tableId,
+ method: 'delete'
+ })
+}
+
+// 生成代码(自定义路径)
+export function genCode(tableName) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/genCode/' + tableName,
+ method: 'get'
+ })
+}
+
+// 同步数据库
+export function synchDb(tableName) {
+ return request({
+ headers: { 'datasource': localStorage.getItem("dataName") },
+ url: '/tool/gen/synchDb/' + tableName,
+ method: 'get'
+ })
+}
diff --git a/src/assets/401_images/401.gif b/src/assets/401_images/401.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cd6e0d9433421b3f29d0ec0c40f755e354728000
GIT binary patch
literal 164227
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