diff --git a/README.en.md b/README.en.md
index bdc2588b054763e2d60f37d25ae246dfbef1a27a..4d6317063a50972b2e359355616b3e80e2caf264 100644
--- a/README.en.md
+++ b/README.en.md
@@ -4,7 +4,8 @@
Project | description | others
:- | :- | :-
-vue3-ts-starter | `vue3`+`ts`project template | `vue3`+`ts`
+vue3-ts-starter | `vue3`+`ts` SPA project template | `vue3`+`ts` SPA
+vue3-ts-mpa-starter | `vue3`+`ts` MPA project template | `vue3`+`ts` MPA
#### Contribution
diff --git a/README.md b/README.md
index 2c07c8aa55fae997727c40a7dda527f8e7141dd5..0e6d328bd3e59f75760425dd3ff1d3a4548bbb96 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,9 @@
项目 | 描述 | 其他
:- | :- | :-
-vue3-ts-starter | `vue3`+`ts`项目模板 | `vue3`+`ts`
+vue3-ts-starter | `vue3`+`ts` 单页面项目模板 | `vue3`+`ts` SPA
+vue3-ts-mpa-starter | `vue3`+`ts` 多页面项目模板 | `vue3`+`ts` MPA
+
## 参与贡献
1. Fork 本仓库
diff --git a/packages/vue3-ts-mpa-starter/.eslintrc.js b/packages/vue3-ts-mpa-starter/.eslintrc.js
new file mode 100644
index 0000000000000000000000000000000000000000..2ec1e8f41cce7ecb731eae4dd5dcb4e4c8c88662
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/.eslintrc.js
@@ -0,0 +1,32 @@
+module.exports = {
+ parser: 'vue-eslint-parser',
+ parserOptions: {
+ parser: '@typescript-eslint/parser',
+ ecmaVersion: 2020,
+ sourceType: 'module',
+ },
+ extends: ['plugin:vue/vue3-recommended', '@vue/typescript/recommended', '@vue/prettier'],
+ plugins: ['@typescript-eslint'],
+ env: {
+ browser: true,
+ node: true,
+ es6: true,
+ 'vue/setup-compiler-macros': true,
+ },
+ rules: {
+ 'no-multiple-empty-lines': 'error',
+ 'prefer-template': 'error',
+ 'spaced-comment': 'error',
+ 'no-var': 'error',
+ 'one-var-declaration-per-line': 'error',
+ 'no-multi-assign': 'error',
+ 'prefer-destructuring': 'error',
+ eqeqeq: 'error',
+ '@typescript-eslint/no-explicit-any': [
+ 'warn',
+ {
+ ignoreRestArgs: false,
+ },
+ ],
+ },
+};
diff --git a/vue3-ts-starter/.gitignore b/packages/vue3-ts-mpa-starter/.gitignore
similarity index 100%
rename from vue3-ts-starter/.gitignore
rename to packages/vue3-ts-mpa-starter/.gitignore
diff --git a/vue3-ts-starter/.prettierrc.js b/packages/vue3-ts-mpa-starter/.prettierrc.js
similarity index 100%
rename from vue3-ts-starter/.prettierrc.js
rename to packages/vue3-ts-mpa-starter/.prettierrc.js
diff --git a/vue3-ts-starter/LICENSE b/packages/vue3-ts-mpa-starter/LICENSE
similarity index 100%
rename from vue3-ts-starter/LICENSE
rename to packages/vue3-ts-mpa-starter/LICENSE
diff --git a/packages/vue3-ts-mpa-starter/README.en.md b/packages/vue3-ts-mpa-starter/README.en.md
new file mode 100644
index 0000000000000000000000000000000000000000..6f065af740b34948cff33407b3a0fd44c74aadda
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/README.en.md
@@ -0,0 +1,20 @@
+# vue3-ts-starter
+
+### Description
+vue3 MPA starter
+
+### Software Architecture
+Vue 3 + TypeScript + Vite + Scss + Vue Router + Pinia + Axios
+
+### Installation
+
+1. recommend using [pnpm](https://pnpm.io/installation),you can also use ```npm```、```yarn```
+2. install: ```pnpm install```
+3. run project: ```pnpm dev```
+
+### Contribution
+
+1. Fork the repository
+2. Create Feat_xxx branch
+3. Commit your code
+4. Create Pull Request
\ No newline at end of file
diff --git a/packages/vue3-ts-mpa-starter/README.md b/packages/vue3-ts-mpa-starter/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..9119cfdfcc86cb3b462bb7eaf3db6add05a952b5
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/README.md
@@ -0,0 +1,90 @@
+# vue3-ts-mpa-starter
+
+### 介绍
+vue3多页面应用模板, 使用vite构建,并集成Scss + Vue Router + Pinia + Axios
+
+### 软件架构
+Vue 3 + TypeScript + Vite + Scss + Vue Router + Pinia + Axios
+
+
+### 使用说明
+1. 在packages目录下新增子页面目录
+2. 在vite.config.ts中增加子页面配置
+```
+// vite.conifg.ts
+export default defineConfig({
+ ...
+ build: {
+ rollupOptions: {
+ input: {
+ demo: './packages/demo/index.html', // 新增子页面
+ },
+ },
+ ...
+ },
+ resolve: {
+ alias: {
+ ...
+ '@demo/': `${path.resolve(__dirname, './packages/demo/src')}/`, // 配置路径别名,方便快速引入项目文件
+ },
+ },
+ ...
+}
+```
+```
+// tsconfig.json
+{
+ ...
+ "paths": {
+ "@demo/*": ["packages/demo/src/*"], // 增加编码时的路径提示
+ }
+ ...
+}
+```
+
+### 安装教程
+1. 推荐使用[pnpm](https://pnpm.io/installation)安装,当前你也可以使用npm、yarn
+2. 安装依赖 ```pnpm install```
+3. 运行项目 ```pnpm dev```
+
+
+### 风格命名
+1. 文件夹名称建议使用kebab-case, 如: hello-world
+2. vue文件建议使用PascalCase, 如: HelloWorld.vue
+
+### 目录说明
+```
+|-- packages // 多页面目录
+ |-- shared 跨页面公共模块
+
+ |-- demo 单页面示例
+
+ --- index.html 入口html
+
+ |-- src
+ |-- api API接口
+
+ |-- assets 资源目录,如图片、视频等
+ |-- svg-icons svg 雪碧图图标
+
+ |-- components 跨页面公共组件
+
+ |-- pages 项目页面
+ |-- course 页面
+ |-- course-detail 子页面
+
+ |-- shared 公共工具及文件
+ |-- axios axios封装
+ |-- styles 公共样式
+
+ |-- stores 全局状态管理
+
+ --- main.ts 入口文件
+ --- router.ts 路由文件
+```
+
+### 参与贡献
+1. Fork 本仓库
+2. 新建 Feat_xxx 分支
+3. 提交代码
+4. 新建 Pull Request
\ No newline at end of file
diff --git a/packages/vue3-ts-mpa-starter/package.json b/packages/vue3-ts-mpa-starter/package.json
new file mode 100644
index 0000000000000000000000000000000000000000..79dcaa29b4f4309db3fc5d00fc998b04eeb5572f
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/package.json
@@ -0,0 +1,32 @@
+{
+ "name": "vue3-ts-mpa-starter",
+ "private": true,
+ "version": "0.0.0",
+ "scripts": {
+ "dev": "vite",
+ "build": "vue-tsc --noEmit && vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "axios": "^0.26.0",
+ "normalize.css": "^8.0.1",
+ "pinia": "^2.0.11",
+ "vue": "^3.2.25",
+ "vue-router": "^4.0.13"
+ },
+ "devDependencies": {
+ "@types/node": "^17.0.21",
+ "@typescript-eslint/eslint-plugin": "^5.13.0",
+ "@typescript-eslint/parser": "^5.13.0",
+ "@vitejs/plugin-vue": "^2.2.0",
+ "@vue/eslint-config-prettier": "^7.0.0",
+ "@vue/eslint-config-typescript": "^10.0.0",
+ "eslint": "^8.9.0",
+ "eslint-plugin-vue": "^8.5.0",
+ "prettier": "^2.5.1",
+ "sass": "^1.49.9",
+ "typescript": "^4.5.4",
+ "vite": "^2.8.0",
+ "vue-tsc": "^0.29.8"
+ }
+}
\ No newline at end of file
diff --git a/vue3-ts-starter/public/favicon.ico b/packages/vue3-ts-mpa-starter/packages/demo/favicon.ico
similarity index 100%
rename from vue3-ts-starter/public/favicon.ico
rename to packages/vue3-ts-mpa-starter/packages/demo/favicon.ico
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/index.html b/packages/vue3-ts-mpa-starter/packages/demo/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9405088d17eeb43cfd5eb9ba05c8675379e119d
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/index.html
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ openEuler starter
+
+
+
+
+
+
diff --git a/vue3-ts-starter/src/App.vue b/packages/vue3-ts-mpa-starter/packages/demo/src/App.vue
similarity index 100%
rename from vue3-ts-starter/src/App.vue
rename to packages/vue3-ts-mpa-starter/packages/demo/src/App.vue
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/src/api/demo.ts b/packages/vue3-ts-mpa-starter/packages/demo/src/api/demo.ts
new file mode 100644
index 0000000000000000000000000000000000000000..ad0d5fc82b6e57c936a51667a797e3357995ce5b
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/src/api/demo.ts
@@ -0,0 +1,11 @@
+import { request } from '@/shared/plugins/axios';
+import type { AxiosResponse } from '@/shared/plugins/axios';
+
+/**
+ * 获取授权的相关回调链接
+ */
+export function queryCourse() {
+ const url = '/courses/course-list.json';
+
+ return request.get(url, { global: true }).then((res: AxiosResponse) => res.data);
+}
diff --git a/vue3-ts-starter/src/assets/logo.png b/packages/vue3-ts-mpa-starter/packages/demo/src/assets/logo.png
similarity index 100%
rename from vue3-ts-starter/src/assets/logo.png
rename to packages/vue3-ts-mpa-starter/packages/demo/src/assets/logo.png
diff --git a/vue3-ts-starter/src/assets/svg-icons/alert-circle.svg b/packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/alert-circle.svg
similarity index 100%
rename from vue3-ts-starter/src/assets/svg-icons/alert-circle.svg
rename to packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/alert-circle.svg
diff --git a/vue3-ts-starter/src/assets/svg-icons/arrow-right.svg b/packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/arrow-right.svg
similarity index 100%
rename from vue3-ts-starter/src/assets/svg-icons/arrow-right.svg
rename to packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/arrow-right.svg
diff --git a/vue3-ts-starter/src/assets/svg-icons/plus.svg b/packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/plus.svg
similarity index 100%
rename from vue3-ts-starter/src/assets/svg-icons/plus.svg
rename to packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/plus.svg
diff --git a/vue3-ts-starter/src/assets/svg-icons/x.svg b/packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/x.svg
similarity index 100%
rename from vue3-ts-starter/src/assets/svg-icons/x.svg
rename to packages/vue3-ts-mpa-starter/packages/demo/src/assets/svg-icons/x.svg
diff --git a/vue3-ts-starter/src/components/AppHeader.vue b/packages/vue3-ts-mpa-starter/packages/demo/src/components/AppHeader.vue
similarity index 100%
rename from vue3-ts-starter/src/components/AppHeader.vue
rename to packages/vue3-ts-mpa-starter/packages/demo/src/components/AppHeader.vue
diff --git a/vue3-ts-starter/src/env.d.ts b/packages/vue3-ts-mpa-starter/packages/demo/src/env.d.ts
similarity index 100%
rename from vue3-ts-starter/src/env.d.ts
rename to packages/vue3-ts-mpa-starter/packages/demo/src/env.d.ts
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/src/main.ts b/packages/vue3-ts-mpa-starter/packages/demo/src/main.ts
new file mode 100644
index 0000000000000000000000000000000000000000..caffb9eda2a5bc0bed6852085b279a2fcafbb436
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/src/main.ts
@@ -0,0 +1,16 @@
+import '@/shared/styles/base.scss';
+
+import { createApp } from 'vue';
+import { createPinia } from 'pinia';
+import App from './App.vue';
+import { router } from './router';
+import SvgIcon from '@/shared/components/SvgIcon.vue';
+
+const app = createApp(App);
+
+app.use(router);
+app.use(createPinia());
+
+app.component('SvgIcon', SvgIcon);
+
+app.mount('#app');
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/src/router.ts b/packages/vue3-ts-mpa-starter/packages/demo/src/router.ts
new file mode 100644
index 0000000000000000000000000000000000000000..106722fc8b4269a355423cfdc25496d57a5d0ed7
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/src/router.ts
@@ -0,0 +1,30 @@
+import { createRouter, createWebHashHistory } from 'vue-router';
+import TheDemo from './views/demo/TheDemo.vue';
+export const routes = [
+ {
+ path: '/',
+ redirect: '/demo',
+ },
+ {
+ path: '/demo',
+ name: 'demo',
+ component: TheDemo,
+ },
+ {
+ path: '/sub-demo',
+ name: 'sub-demo',
+ component: () => import('./views/demo/sub-demo/SubDemo.vue'),
+ },
+];
+
+export const router = createRouter({
+ history: createWebHashHistory(),
+ routes,
+});
+
+// 路由守卫,可在此处进行页面权限处理
+// router.beforeEach((to) => {
+// if (!isLogined()) {
+// return { name: "home" };
+// }
+// });
diff --git a/vue3-ts-starter/src/stores/counter.ts b/packages/vue3-ts-mpa-starter/packages/demo/src/stores/counter.ts
similarity index 100%
rename from vue3-ts-starter/src/stores/counter.ts
rename to packages/vue3-ts-mpa-starter/packages/demo/src/stores/counter.ts
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/TheDemo.vue b/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/TheDemo.vue
new file mode 100644
index 0000000000000000000000000000000000000000..7a90e7d8460cdebadb4477518794076c0c80631d
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/TheDemo.vue
@@ -0,0 +1,108 @@
+
+
+
+
+ Vue 3 + TypeScript + Vite + Scss + Vue Router + Pinia + Axios
+
+
+
+
+ 状态管理
+
+
count value: {{ counter.count }}
+
+
+
+
+
+
diff --git a/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/sub-demo/SubDemo.vue b/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/sub-demo/SubDemo.vue
new file mode 100644
index 0000000000000000000000000000000000000000..0151fe1b8dca223a002006e5ff7e84f69e127fcd
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/demo/src/views/demo/sub-demo/SubDemo.vue
@@ -0,0 +1,30 @@
+
+
+
+
Demo 子页面
+
count value: {{ count }}
+
+
+
diff --git a/vue3-ts-starter/src/components/SvgIcon.vue b/packages/vue3-ts-mpa-starter/packages/shared/components/SvgIcon.vue
similarity index 100%
rename from vue3-ts-starter/src/components/SvgIcon.vue
rename to packages/vue3-ts-mpa-starter/packages/shared/components/SvgIcon.vue
diff --git a/vue3-ts-starter/src/shared/axios/handleError.ts b/packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/handleError.ts
similarity index 100%
rename from vue3-ts-starter/src/shared/axios/handleError.ts
rename to packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/handleError.ts
diff --git a/vue3-ts-starter/src/shared/axios/handleResponse.ts b/packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/handleResponse.ts
similarity index 100%
rename from vue3-ts-starter/src/shared/axios/handleResponse.ts
rename to packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/handleResponse.ts
diff --git a/vue3-ts-starter/src/shared/axios/index.ts b/packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/index.ts
similarity index 100%
rename from vue3-ts-starter/src/shared/axios/index.ts
rename to packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/index.ts
diff --git a/vue3-ts-starter/src/shared/axios/setConfig.ts b/packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/setConfig.ts
similarity index 100%
rename from vue3-ts-starter/src/shared/axios/setConfig.ts
rename to packages/vue3-ts-mpa-starter/packages/shared/plugins/axios/setConfig.ts
diff --git a/vue3-ts-starter/src/shared/styles/base.scss b/packages/vue3-ts-mpa-starter/packages/shared/styles/base.scss
similarity index 100%
rename from vue3-ts-starter/src/shared/styles/base.scss
rename to packages/vue3-ts-mpa-starter/packages/shared/styles/base.scss
diff --git a/packages/vue3-ts-mpa-starter/packages/shared/utils/helper.ts b/packages/vue3-ts-mpa-starter/packages/shared/utils/helper.ts
new file mode 100644
index 0000000000000000000000000000000000000000..62acf8363d4cb059ea54ae511a6db6e9a3712b22
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/packages/shared/utils/helper.ts
@@ -0,0 +1,36 @@
+const cacheStringFn = string>(fn: T): T => {
+ const cache: Record = Object.create(null);
+ return ((str: string) => {
+ let rlt = cache[str];
+ if (!rlt) {
+ cache[str] = rlt;
+ rlt = fn(str);
+ }
+ return rlt;
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ }) as any;
+};
+
+const camelizeRegExp = /-(\w)/;
+/**
+ * kebab-case to camelCase
+ */
+export const camelize = cacheStringFn((str: string): string => {
+ return str.replace(camelizeRegExp, (_, c) => (c ? c.toUpperCase() : ''));
+});
+
+/**
+ * kebab-case to PascalCase
+ */
+export const pascalize = cacheStringFn((str: string): string => {
+ const k = camelize(str);
+ return k.charAt(0).toUpperCase() + k.slice(1);
+});
+
+const kebablizeRegExp = /\B([A-Z])/;
+/**
+ * to kebab-case
+ */
+export const kebablize = cacheStringFn((str: string): string => {
+ return str.replace(kebablizeRegExp, '-$1').toLowerCase();
+});
diff --git a/packages/vue3-ts-mpa-starter/pnpm-lock.yaml b/packages/vue3-ts-mpa-starter/pnpm-lock.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b1cff3139e750e61181ba9d6653d5bd7b46da7f4
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/pnpm-lock.yaml
@@ -0,0 +1,2646 @@
+lockfileVersion: 5.3
+
+specifiers:
+ '@types/node': ^17.0.21
+ '@typescript-eslint/eslint-plugin': ^5.13.0
+ '@typescript-eslint/parser': ^5.13.0
+ '@vitejs/plugin-vue': ^2.2.0
+ '@vue/eslint-config-prettier': ^7.0.0
+ '@vue/eslint-config-typescript': ^10.0.0
+ axios: ^0.26.0
+ eslint: ^8.9.0
+ eslint-plugin-vue: ^8.5.0
+ normalize.css: ^8.0.1
+ pinia: ^2.0.11
+ prettier: ^2.5.1
+ sass: ^1.49.9
+ typescript: ^4.5.4
+ vite: ^2.8.0
+ vue: ^3.2.25
+ vue-router: ^4.0.13
+ vue-tsc: ^0.29.8
+
+dependencies:
+ axios: registry.npmmirror.com/axios/0.26.0
+ normalize.css: registry.npmmirror.com/normalize.css/8.0.1
+ pinia: registry.npmmirror.com/pinia/2.0.11_typescript@4.5.5+vue@3.2.31
+ vue: registry.npmmirror.com/vue/3.2.31
+ vue-router: registry.npmmirror.com/vue-router/4.0.13_vue@3.2.31
+
+devDependencies:
+ '@types/node': registry.npmmirror.com/@types/node/17.0.21
+ '@typescript-eslint/eslint-plugin': registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.13.0_c4bb744946c8ce39a7de38090b8f76bc
+ '@typescript-eslint/parser': registry.npmmirror.com/@typescript-eslint/parser/5.13.0_eslint@8.9.0+typescript@4.5.5
+ '@vitejs/plugin-vue': registry.npmmirror.com/@vitejs/plugin-vue/2.2.2_vite@2.8.4+vue@3.2.31
+ '@vue/eslint-config-prettier': registry.npmmirror.com/@vue/eslint-config-prettier/7.0.0_eslint@8.9.0+prettier@2.5.1
+ '@vue/eslint-config-typescript': registry.npmmirror.com/@vue/eslint-config-typescript/10.0.0_73b0c10f706bc65f10d6ca86e0685696
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-plugin-vue: registry.npmmirror.com/eslint-plugin-vue/8.5.0_eslint@8.9.0
+ prettier: registry.npmmirror.com/prettier/2.5.1
+ sass: registry.npmmirror.com/sass/1.49.9
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ vite: registry.npmmirror.com/vite/2.8.4_sass@1.49.9
+ vue-tsc: registry.npmmirror.com/vue-tsc/0.29.8_typescript@4.5.5
+
+packages:
+
+ registry.nlark.com/concat-map/0.0.1:
+ resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/concat-map/download/concat-map-0.0.1.tgz}
+ name: concat-map
+ version: 0.0.1
+ dev: true
+
+ registry.npmmirror.com/@babel/helper-validator-identifier/7.16.7:
+ resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz}
+ name: '@babel/helper-validator-identifier'
+ version: 7.16.7
+ engines: {node: '>=6.9.0'}
+ dev: true
+
+ registry.npmmirror.com/@babel/parser/7.17.3:
+ resolution: {integrity: sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/parser/-/parser-7.17.3.tgz}
+ name: '@babel/parser'
+ version: 7.17.3
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ registry.npmmirror.com/@babel/types/7.17.0:
+ resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/types/-/types-7.17.0.tgz}
+ name: '@babel/types'
+ version: 7.17.0
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@babel/helper-validator-identifier': registry.npmmirror.com/@babel/helper-validator-identifier/7.16.7
+ to-fast-properties: registry.npmmirror.com/to-fast-properties/2.0.0
+ dev: true
+
+ registry.npmmirror.com/@emmetio/abbreviation/2.2.3:
+ resolution: {integrity: sha512-87pltuCPt99aL+y9xS6GPZ+Wmmyhll2WXH73gG/xpGcQ84DRnptBsI2r0BeIQ0EB/SQTOe2ANPqFqj3Rj5FOGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emmetio/abbreviation/-/abbreviation-2.2.3.tgz}
+ name: '@emmetio/abbreviation'
+ version: 2.2.3
+ dependencies:
+ '@emmetio/scanner': registry.npmmirror.com/@emmetio/scanner/1.0.0
+ dev: true
+
+ registry.npmmirror.com/@emmetio/css-abbreviation/2.1.4:
+ resolution: {integrity: sha512-qk9L60Y+uRtM5CPbB0y+QNl/1XKE09mSO+AhhSauIfr2YOx/ta3NJw2d8RtCFxgzHeRqFRr8jgyzThbu+MZ4Uw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emmetio/css-abbreviation/-/css-abbreviation-2.1.4.tgz}
+ name: '@emmetio/css-abbreviation'
+ version: 2.1.4
+ dependencies:
+ '@emmetio/scanner': registry.npmmirror.com/@emmetio/scanner/1.0.0
+ dev: true
+
+ registry.npmmirror.com/@emmetio/scanner/1.0.0:
+ resolution: {integrity: sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emmetio/scanner/-/scanner-1.0.0.tgz}
+ name: '@emmetio/scanner'
+ version: 1.0.0
+ dev: true
+
+ registry.npmmirror.com/@eslint/eslintrc/1.1.0:
+ resolution: {integrity: sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.1.0.tgz}
+ name: '@eslint/eslintrc'
+ version: 1.1.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ ajv: registry.npmmirror.com/ajv/6.12.6
+ debug: registry.npmmirror.com/debug/4.3.3
+ espree: registry.npmmirror.com/espree/9.3.1
+ globals: registry.npmmirror.com/globals/13.12.1
+ ignore: registry.npmmirror.com/ignore/4.0.6
+ import-fresh: registry.npmmirror.com/import-fresh/3.3.0
+ js-yaml: registry.npmmirror.com/js-yaml/4.1.0
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
+ strip-json-comments: registry.npmmirror.com/strip-json-comments/3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@humanwhocodes/config-array/0.9.5:
+ resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz}
+ name: '@humanwhocodes/config-array'
+ version: 0.9.5
+ engines: {node: '>=10.10.0'}
+ dependencies:
+ '@humanwhocodes/object-schema': registry.npmmirror.com/@humanwhocodes/object-schema/1.2.1
+ debug: registry.npmmirror.com/debug/4.3.3
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@humanwhocodes/object-schema/1.2.1:
+ resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz}
+ name: '@humanwhocodes/object-schema'
+ version: 1.2.1
+ dev: true
+
+ 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.13.0
+ dev: true
+
+ registry.npmmirror.com/@types/json-schema/7.0.9:
+ resolution: {integrity: sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.9.tgz}
+ name: '@types/json-schema'
+ version: 7.0.9
+ dev: true
+
+ registry.npmmirror.com/@types/node/17.0.21:
+ resolution: {integrity: sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-17.0.21.tgz}
+ name: '@types/node'
+ version: 17.0.21
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.13.0_c4bb744946c8ce39a7de38090b8f76bc:
+ resolution: {integrity: sha512-vLktb2Uec81fxm/cfz2Hd6QaWOs8qdmVAZXLdOBX6JFJDhf6oDZpMzZ4/LZ6SFM/5DgDcxIMIvy3F+O9yZBuiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.13.0.tgz}
+ id: registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.13.0
+ name: '@typescript-eslint/eslint-plugin'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^5.0.0
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/parser': registry.npmmirror.com/@typescript-eslint/parser/5.13.0_eslint@8.9.0+typescript@4.5.5
+ '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.13.0
+ '@typescript-eslint/type-utils': registry.npmmirror.com/@typescript-eslint/type-utils/5.13.0_eslint@8.9.0+typescript@4.5.5
+ '@typescript-eslint/utils': registry.npmmirror.com/@typescript-eslint/utils/5.13.0_eslint@8.9.0+typescript@4.5.5
+ debug: registry.npmmirror.com/debug/4.3.3
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ functional-red-black-tree: registry.npmmirror.com/functional-red-black-tree/1.0.1
+ ignore: registry.npmmirror.com/ignore/5.2.0
+ regexpp: registry.npmmirror.com/regexpp/3.2.0
+ semver: registry.npmmirror.com/semver/7.3.5
+ tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.5.5
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/parser/5.13.0_eslint@8.9.0+typescript@4.5.5:
+ resolution: {integrity: sha512-GdrU4GvBE29tm2RqWOM0P5QfCtgCyN4hXICj/X9ibKED16136l9ZpoJvCL5pSKtmJzA+NRDzQ312wWMejCVVfg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-5.13.0.tgz}
+ id: registry.npmmirror.com/@typescript-eslint/parser/5.13.0
+ name: '@typescript-eslint/parser'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.13.0
+ '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.13.0
+ '@typescript-eslint/typescript-estree': registry.npmmirror.com/@typescript-eslint/typescript-estree/5.13.0_typescript@4.5.5
+ debug: registry.npmmirror.com/debug/4.3.3
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/scope-manager/5.13.0:
+ resolution: {integrity: sha512-T4N8UvKYDSfVYdmJq7g2IPJYCRzwtp74KyDZytkR4OL3NRupvswvmJQJ4CX5tDSurW2cvCc1Ia1qM7d0jpa7IA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-5.13.0.tgz}
+ name: '@typescript-eslint/scope-manager'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.13.0
+ '@typescript-eslint/visitor-keys': registry.npmmirror.com/@typescript-eslint/visitor-keys/5.13.0
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/type-utils/5.13.0_eslint@8.9.0+typescript@4.5.5:
+ resolution: {integrity: sha512-/nz7qFizaBM1SuqAKb7GLkcNn2buRdDgZraXlkhz+vUGiN1NZ9LzkA595tHHeduAiS2MsHqMNhE2zNzGdw43Yg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-5.13.0.tgz}
+ id: registry.npmmirror.com/@typescript-eslint/type-utils/5.13.0
+ name: '@typescript-eslint/type-utils'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '*'
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/utils': registry.npmmirror.com/@typescript-eslint/utils/5.13.0_eslint@8.9.0+typescript@4.5.5
+ debug: registry.npmmirror.com/debug/4.3.3
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.5.5
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/types/5.13.0:
+ resolution: {integrity: sha512-LmE/KO6DUy0nFY/OoQU0XelnmDt+V8lPQhh8MOVa7Y5k2gGRd6U9Kp3wAjhB4OHg57tUO0nOnwYQhRRyEAyOyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/types/-/types-5.13.0.tgz}
+ name: '@typescript-eslint/types'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/typescript-estree/5.13.0_typescript@4.5.5:
+ resolution: {integrity: sha512-Q9cQow0DeLjnp5DuEDjLZ6JIkwGx3oYZe+BfcNuw/POhtpcxMTy18Icl6BJqTSd+3ftsrfuVb7mNHRZf7xiaNA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.13.0.tgz}
+ id: registry.npmmirror.com/@typescript-eslint/typescript-estree/5.13.0
+ name: '@typescript-eslint/typescript-estree'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.13.0
+ '@typescript-eslint/visitor-keys': registry.npmmirror.com/@typescript-eslint/visitor-keys/5.13.0
+ debug: registry.npmmirror.com/debug/4.3.3
+ globby: registry.npmmirror.com/globby/11.1.0
+ is-glob: registry.npmmirror.com/is-glob/4.0.3
+ semver: registry.npmmirror.com/semver/7.3.5
+ tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.5.5
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/utils/5.13.0_eslint@8.9.0+typescript@4.5.5:
+ resolution: {integrity: sha512-+9oHlPWYNl6AwwoEt5TQryEHwiKRVjz7Vk6kaBeD3/kwHE5YqTGHtm/JZY8Bo9ITOeKutFaXnBlMgSATMJALUQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-5.13.0.tgz}
+ id: registry.npmmirror.com/@typescript-eslint/utils/5.13.0
+ name: '@typescript-eslint/utils'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ '@types/json-schema': registry.npmmirror.com/@types/json-schema/7.0.9
+ '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.13.0
+ '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.13.0
+ '@typescript-eslint/typescript-estree': registry.npmmirror.com/@typescript-eslint/typescript-estree/5.13.0_typescript@4.5.5
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-scope: registry.npmmirror.com/eslint-scope/5.1.1
+ eslint-utils: registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.9.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmmirror.com/@typescript-eslint/visitor-keys/5.13.0:
+ resolution: {integrity: sha512-HLKEAS/qA1V7d9EzcpLFykTePmOQqOFim8oCvhY3pZgQ8Hi38hYpHd9e5GN6nQBFQNecNhws5wkS9Y5XIO0s/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.13.0.tgz}
+ name: '@typescript-eslint/visitor-keys'
+ version: 5.13.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.13.0
+ eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/3.3.0
+ dev: true
+
+ registry.npmmirror.com/@vitejs/plugin-vue/2.2.2_vite@2.8.4+vue@3.2.31:
+ resolution: {integrity: sha512-3C0s45VOwIFEDU+2ownJOpb0zD5fnjXWaHVOLID2R1mYOlAx3doNBFnNbVjaZvpke/L7IdPJXjpyYpXZToDKig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-2.2.2.tgz}
+ id: registry.npmmirror.com/@vitejs/plugin-vue/2.2.2
+ name: '@vitejs/plugin-vue'
+ version: 2.2.2
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ vite: ^2.5.10
+ vue: ^3.2.25
+ dependencies:
+ vite: registry.npmmirror.com/vite/2.8.4_sass@1.49.9
+ vue: registry.npmmirror.com/vue/3.2.31
+ dev: true
+
+ registry.npmmirror.com/@volar/code-gen/0.29.8:
+ resolution: {integrity: sha512-eohLLUqPChHRPDFT5gXn4V6pr/CeTri7Ou5GI26lUvBRRAbP8p+oYfQRcbMPGeKmVkYjfVj0chsxQGx6T8PQ4Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/code-gen/-/code-gen-0.29.8.tgz}
+ name: '@volar/code-gen'
+ version: 0.29.8
+ dependencies:
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ '@volar/source-map': registry.npmmirror.com/@volar/source-map/0.29.8
+ dev: true
+
+ registry.npmmirror.com/@volar/html2pug/0.29.8:
+ resolution: {integrity: sha512-bhSNXg8A2aD3w0B+CwmHjqCAaKtj5rORbE5C/q/UdGqptJbC6STCmi30KuRTdfPhR++Xb18Hauf3s/WCmtNAPA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/html2pug/-/html2pug-0.29.8.tgz}
+ name: '@volar/html2pug'
+ version: 0.29.8
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.2.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.0
+ htmlparser2: registry.npmmirror.com/htmlparser2/7.2.0
+ pug: registry.npmmirror.com/pug/3.0.2
+ dev: true
+
+ registry.npmmirror.com/@volar/shared/0.29.8:
+ resolution: {integrity: sha512-Y1NN6irkIukD+T0wf4p/dHWYL90sacN2e2lYoDXxRlvoYxwANnHgw0J0Rcp+yw58ElWRScdG7/YntEIuZWeJsw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/shared/-/shared-0.29.8.tgz}
+ name: '@volar/shared'
+ version: 0.29.8
+ dependencies:
+ upath: registry.npmmirror.com/upath/2.0.1
+ vscode-jsonrpc: registry.npmmirror.com/vscode-jsonrpc/8.0.0-next.6
+ vscode-uri: registry.npmmirror.com/vscode-uri/3.0.3
+ dev: true
+
+ registry.npmmirror.com/@volar/source-map/0.29.8:
+ resolution: {integrity: sha512-7w+UoYtnc6UQu30CgMVvx0YN4dzDgP4TIsSmUaW62AGmxU9Lxwp3Kkn/4N8efi91z8ma5Z78v/HddyJPwAC3LA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/source-map/-/source-map-0.29.8.tgz}
+ name: '@volar/source-map'
+ version: 0.29.8
+ dependencies:
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ dev: true
+
+ registry.npmmirror.com/@volar/transforms/0.29.8:
+ resolution: {integrity: sha512-o2hRa8CoDwYTO1Mu5KA47+1elUnYUjDaVhCvbyKlRfd8qpHea2llotArq7B6OORSL2M9DVs1IRJ5NGURBFeZ3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/transforms/-/transforms-0.29.8.tgz}
+ name: '@volar/transforms'
+ version: 0.29.8
+ dependencies:
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ vscode-languageserver: registry.npmmirror.com/vscode-languageserver/8.0.0-next.8
+ dev: true
+
+ registry.npmmirror.com/@volar/vue-code-gen/0.29.8:
+ resolution: {integrity: sha512-E1e7P2oktNC/DzgDBditfla4s8+HlUlluZ+BtcLvEdbkl3QEjujkB0x1wxguWzXmpWgLIDPtrS3Jzll5cCOkTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@volar/vue-code-gen/-/vue-code-gen-0.29.8.tgz}
+ name: '@volar/vue-code-gen'
+ version: 0.29.8
+ dependencies:
+ '@volar/code-gen': registry.npmmirror.com/@volar/code-gen/0.29.8
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ '@volar/source-map': registry.npmmirror.com/@volar/source-map/0.29.8
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.31
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ upath: registry.npmmirror.com/upath/2.0.1
+ dev: true
+
+ registry.npmmirror.com/@vscode/emmet-helper/2.8.4:
+ resolution: {integrity: sha512-lUki5QLS47bz/U8IlG9VQ+1lfxMtxMZENmU5nu4Z71eOD5j9FK0SmYGL5NiVJg9WBWeAU0VxRADMY2Qpq7BfVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vscode/emmet-helper/-/emmet-helper-2.8.4.tgz}
+ name: '@vscode/emmet-helper'
+ version: 2.8.4
+ dependencies:
+ emmet: registry.npmmirror.com/emmet/2.3.6
+ jsonc-parser: registry.npmmirror.com/jsonc-parser/2.3.1
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ vscode-languageserver-types: registry.npmmirror.com/vscode-languageserver-types/3.16.0
+ vscode-nls: registry.npmmirror.com/vscode-nls/5.0.0
+ vscode-uri: registry.npmmirror.com/vscode-uri/2.1.2
+ dev: true
+
+ registry.npmmirror.com/@vue/compiler-core/3.2.31:
+ resolution: {integrity: sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.31.tgz}
+ name: '@vue/compiler-core'
+ version: 3.2.31
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.17.3
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ 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.31:
+ resolution: {integrity: sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz}
+ name: '@vue/compiler-dom'
+ version: 3.2.31
+ dependencies:
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+
+ registry.npmmirror.com/@vue/compiler-sfc/3.2.31:
+ resolution: {integrity: sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz}
+ name: '@vue/compiler-sfc'
+ version: 3.2.31
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.17.3
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.31
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.31
+ '@vue/compiler-ssr': registry.npmmirror.com/@vue/compiler-ssr/3.2.31
+ '@vue/reactivity-transform': registry.npmmirror.com/@vue/reactivity-transform/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ magic-string: registry.npmmirror.com/magic-string/0.25.7
+ postcss: registry.npmmirror.com/postcss/8.4.7
+ source-map: registry.npmmirror.com/source-map/0.6.1
+ dev: false
+
+ registry.npmmirror.com/@vue/compiler-ssr/3.2.31:
+ resolution: {integrity: sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz}
+ name: '@vue/compiler-ssr'
+ version: 3.2.31
+ dependencies:
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ dev: false
+
+ registry.npmmirror.com/@vue/devtools-api/6.0.12:
+ resolution: {integrity: sha512-iO/4FIezHKXhiDBdKySCvJVh8/mZPxHpiQrTy+PXVqJZgpTPTdHy4q8GXulaY+UKEagdkBb0onxNQZ0LNiqVhw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.0.12.tgz}
+ name: '@vue/devtools-api'
+ version: 6.0.12
+ dev: false
+
+ registry.npmmirror.com/@vue/eslint-config-prettier/7.0.0_eslint@8.9.0+prettier@2.5.1:
+ resolution: {integrity: sha512-/CTc6ML3Wta1tCe1gUeO0EYnVXfo3nJXsIhZ8WJr3sov+cGASr6yuiibJTL6lmIBm7GobopToOuB3B6AWyV0Iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/eslint-config-prettier/-/eslint-config-prettier-7.0.0.tgz}
+ id: registry.npmmirror.com/@vue/eslint-config-prettier/7.0.0
+ name: '@vue/eslint-config-prettier'
+ version: 7.0.0
+ peerDependencies:
+ eslint: '>= 7.28.0'
+ prettier: '>= 2.0.0'
+ dependencies:
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-config-prettier: registry.npmmirror.com/eslint-config-prettier/8.4.0_eslint@8.9.0
+ eslint-plugin-prettier: registry.npmmirror.com/eslint-plugin-prettier/4.0.0_9f62b85ce3ce02949dbd2ccffcebe95f
+ prettier: registry.npmmirror.com/prettier/2.5.1
+ dev: true
+
+ registry.npmmirror.com/@vue/eslint-config-typescript/10.0.0_73b0c10f706bc65f10d6ca86e0685696:
+ resolution: {integrity: sha512-F94cL8ug3FaYXlCfU5/wiGjk1qeadmoBpRGAOBq+qre3Smdupa59dd6ZJrsfRODpsMPyTG7330juMDsUvpZ3Rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/eslint-config-typescript/-/eslint-config-typescript-10.0.0.tgz}
+ id: registry.npmmirror.com/@vue/eslint-config-typescript/10.0.0
+ name: '@vue/eslint-config-typescript'
+ version: 10.0.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
+ eslint-plugin-vue: ^8.0.1
+ dependencies:
+ '@typescript-eslint/eslint-plugin': registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.13.0_c4bb744946c8ce39a7de38090b8f76bc
+ '@typescript-eslint/parser': registry.npmmirror.com/@typescript-eslint/parser/5.13.0_eslint@8.9.0+typescript@4.5.5
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-plugin-vue: registry.npmmirror.com/eslint-plugin-vue/8.5.0_eslint@8.9.0
+ vue-eslint-parser: registry.npmmirror.com/vue-eslint-parser/8.3.0_eslint@8.9.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+ dev: true
+
+ registry.npmmirror.com/@vue/reactivity-transform/3.2.31:
+ resolution: {integrity: sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz}
+ name: '@vue/reactivity-transform'
+ version: 3.2.31
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.17.3
+ '@vue/compiler-core': registry.npmmirror.com/@vue/compiler-core/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ estree-walker: registry.npmmirror.com/estree-walker/2.0.2
+ magic-string: registry.npmmirror.com/magic-string/0.25.7
+ dev: false
+
+ registry.npmmirror.com/@vue/reactivity/3.2.31:
+ resolution: {integrity: sha512-HVr0l211gbhpEKYr2hYe7hRsV91uIVGFYNHj73njbARVGHQvIojkImKMaZNDdoDZOIkMsBc9a1sMqR+WZwfSCw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.31.tgz}
+ name: '@vue/reactivity'
+ version: 3.2.31
+ dependencies:
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+
+ registry.npmmirror.com/@vue/runtime-core/3.2.31:
+ resolution: {integrity: sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.31.tgz}
+ name: '@vue/runtime-core'
+ version: 3.2.31
+ dependencies:
+ '@vue/reactivity': registry.npmmirror.com/@vue/reactivity/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ dev: false
+
+ registry.npmmirror.com/@vue/runtime-dom/3.2.31:
+ resolution: {integrity: sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz}
+ name: '@vue/runtime-dom'
+ version: 3.2.31
+ dependencies:
+ '@vue/runtime-core': registry.npmmirror.com/@vue/runtime-core/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ csstype: registry.npmmirror.com/csstype/2.6.19
+ dev: false
+
+ registry.npmmirror.com/@vue/server-renderer/3.2.31_vue@3.2.31:
+ resolution: {integrity: sha512-8CN3Zj2HyR2LQQBHZ61HexF5NReqngLT3oahyiVRfSSvak+oAvVmu8iNLSu6XR77Ili2AOpnAt1y8ywjjqtmkg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.31.tgz}
+ id: registry.npmmirror.com/@vue/server-renderer/3.2.31
+ name: '@vue/server-renderer'
+ version: 3.2.31
+ peerDependencies:
+ vue: 3.2.31
+ dependencies:
+ '@vue/compiler-ssr': registry.npmmirror.com/@vue/compiler-ssr/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ vue: registry.npmmirror.com/vue/3.2.31
+ dev: false
+
+ registry.npmmirror.com/@vue/shared/3.2.31:
+ resolution: {integrity: sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/shared/-/shared-3.2.31.tgz}
+ name: '@vue/shared'
+ version: 3.2.31
+
+ registry.npmmirror.com/acorn-jsx/5.3.2_acorn@8.7.0:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz}
+ id: registry.npmmirror.com/acorn-jsx/5.3.2
+ name: acorn-jsx
+ version: 5.3.2
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.7.0
+ dev: true
+
+ registry.npmmirror.com/acorn/7.4.1:
+ resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/acorn/-/acorn-7.4.1.tgz}
+ name: acorn
+ version: 7.4.1
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/acorn/8.7.0:
+ resolution: {integrity: sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/acorn/-/acorn-8.7.0.tgz}
+ name: acorn
+ version: 8.7.0
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/ajv/6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz}
+ name: ajv
+ version: 6.12.6
+ dependencies:
+ fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3
+ fast-json-stable-stringify: registry.npmmirror.com/fast-json-stable-stringify/2.1.0
+ json-schema-traverse: registry.npmmirror.com/json-schema-traverse/0.4.1
+ uri-js: registry.npmmirror.com/uri-js/4.4.1
+ dev: true
+
+ registry.npmmirror.com/ansi-regex/5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz}
+ name: ansi-regex
+ version: 5.0.1
+ engines: {node: '>=8'}
+ 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.2:
+ resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.2.tgz}
+ name: anymatch
+ version: 3.1.2
+ 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/argparse/2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz}
+ name: argparse
+ version: 2.0.1
+ dev: true
+
+ registry.npmmirror.com/array-union/2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz}
+ name: array-union
+ version: 2.1.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmmirror.com/asap/2.0.6:
+ resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/asap/-/asap-2.0.6.tgz}
+ name: asap
+ version: 2.0.6
+ dev: true
+
+ registry.npmmirror.com/assert-never/1.2.1:
+ resolution: {integrity: sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/assert-never/-/assert-never-1.2.1.tgz}
+ name: assert-never
+ version: 1.2.1
+ dev: true
+
+ registry.npmmirror.com/axios/0.26.0:
+ resolution: {integrity: sha512-lKoGLMYtHvFrPVt3r+RBMp9nh34N0M8zEfCWqdWZx6phynIEhQqAdydpyBAAG211zlhX9Rgu08cOamy6XjE5Og==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axios/-/axios-0.26.0.tgz}
+ name: axios
+ version: 0.26.0
+ dependencies:
+ follow-redirects: registry.npmmirror.com/follow-redirects/1.14.9
+ transitivePeerDependencies:
+ - debug
+ dev: false
+
+ registry.npmmirror.com/babel-walk/3.0.0-canary-5:
+ resolution: {integrity: sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/babel-walk/-/babel-walk-3.0.0-canary-5.tgz}
+ name: babel-walk
+ version: 3.0.0-canary-5
+ engines: {node: '>= 10.0.0'}
+ dependencies:
+ '@babel/types': registry.npmmirror.com/@babel/types/7.17.0
+ dev: true
+
+ registry.npmmirror.com/balanced-match/1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz}
+ name: balanced-match
+ version: 1.0.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/brace-expansion/1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz}
+ name: brace-expansion
+ version: 1.1.11
+ dependencies:
+ balanced-match: registry.npmmirror.com/balanced-match/1.0.2
+ concat-map: registry.nlark.com/concat-map/0.0.1
+ 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/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.1.1
+ dev: true
+
+ registry.npmmirror.com/callsites/3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz}
+ name: callsites
+ version: 3.1.0
+ engines: {node: '>=6'}
+ 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/character-parser/2.2.0:
+ resolution: {integrity: sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/character-parser/-/character-parser-2.2.0.tgz}
+ name: character-parser
+ version: 2.2.0
+ dependencies:
+ is-regex: registry.npmmirror.com/is-regex/1.1.4
+ 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.2
+ 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/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/constantinople/4.0.1:
+ resolution: {integrity: sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/constantinople/-/constantinople-4.0.1.tgz}
+ name: constantinople
+ version: 4.0.1
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.17.3
+ '@babel/types': registry.npmmirror.com/@babel/types/7.17.0
+ dev: true
+
+ registry.npmmirror.com/cross-spawn/7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz}
+ name: cross-spawn
+ version: 7.0.3
+ engines: {node: '>= 8'}
+ dependencies:
+ path-key: registry.npmmirror.com/path-key/3.1.1
+ shebang-command: registry.npmmirror.com/shebang-command/2.0.0
+ which: registry.npmmirror.com/which/2.0.2
+ dev: true
+
+ registry.npmmirror.com/csstype/2.6.19:
+ resolution: {integrity: sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/csstype/-/csstype-2.6.19.tgz}
+ name: csstype
+ version: 2.6.19
+ dev: false
+
+ registry.npmmirror.com/debug/4.3.3:
+ resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.3.tgz}
+ name: debug
+ version: 4.3.3
+ 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/deep-is/0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz}
+ name: deep-is
+ version: 0.1.4
+ dev: true
+
+ registry.npmmirror.com/dir-glob/3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz}
+ name: dir-glob
+ version: 3.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ path-type: registry.npmmirror.com/path-type/4.0.0
+ dev: true
+
+ registry.npmmirror.com/doctrine/3.0.0:
+ resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/doctrine/-/doctrine-3.0.0.tgz}
+ name: doctrine
+ version: 3.0.0
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ esutils: registry.npmmirror.com/esutils/2.0.3
+ dev: true
+
+ registry.npmmirror.com/doctypes/1.1.0:
+ resolution: {integrity: sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/doctypes/-/doctypes-1.1.0.tgz}
+ name: doctypes
+ version: 1.1.0
+ dev: true
+
+ registry.npmmirror.com/dom-serializer/1.3.2:
+ resolution: {integrity: sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.3.2.tgz}
+ name: dom-serializer
+ version: 1.3.2
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.2.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.0
+ entities: registry.npmmirror.com/entities/2.2.0
+ dev: true
+
+ registry.npmmirror.com/domelementtype/2.2.0:
+ resolution: {integrity: sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domelementtype/-/domelementtype-2.2.0.tgz}
+ name: domelementtype
+ version: 2.2.0
+ dev: true
+
+ registry.npmmirror.com/domhandler/4.3.0:
+ resolution: {integrity: sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/domhandler/-/domhandler-4.3.0.tgz}
+ name: domhandler
+ version: 4.3.0
+ engines: {node: '>= 4'}
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.2.0
+ 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.3.2
+ domelementtype: registry.npmmirror.com/domelementtype/2.2.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.0
+ dev: true
+
+ registry.npmmirror.com/emmet/2.3.6:
+ resolution: {integrity: sha512-pLS4PBPDdxuUAmw7Me7+TcHbykTsBKN/S9XJbUOMFQrNv9MoshzyMFK/R57JBm94/6HSL4vHnDeEmxlC82NQ4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/emmet/-/emmet-2.3.6.tgz}
+ name: emmet
+ version: 2.3.6
+ dependencies:
+ '@emmetio/abbreviation': registry.npmmirror.com/@emmetio/abbreviation/2.2.3
+ '@emmetio/css-abbreviation': registry.npmmirror.com/@emmetio/css-abbreviation/2.1.4
+ 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/entities/3.0.1:
+ resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/entities/-/entities-3.0.1.tgz}
+ name: entities
+ version: 3.0.1
+ engines: {node: '>=0.12'}
+ dev: true
+
+ registry.npmmirror.com/esbuild-android-arm64/0.14.23:
+ resolution: {integrity: sha512-k9sXem++mINrZty1v4FVt6nC5BQCFG4K2geCIUUqHNlTdFnuvcqsY7prcKZLFhqVC1rbcJAr9VSUGFL/vD4vsw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.23.tgz}
+ name: esbuild-android-arm64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-64/0.14.23:
+ resolution: {integrity: sha512-lB0XRbtOYYL1tLcYw8BoBaYsFYiR48RPrA0KfA/7RFTr4MV7Bwy/J4+7nLsVnv9FGuQummM3uJ93J3ptaTqFug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.23.tgz}
+ name: esbuild-darwin-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-arm64/0.14.23:
+ resolution: {integrity: sha512-yat73Z/uJ5tRcfRiI4CCTv0FSnwErm3BJQeZAh+1tIP0TUNh6o+mXg338Zl5EKChD+YGp6PN+Dbhs7qa34RxSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.23.tgz}
+ name: esbuild-darwin-arm64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-64/0.14.23:
+ resolution: {integrity: sha512-/1xiTjoLuQ+LlbfjJdKkX45qK/M7ARrbLmyf7x3JhyQGMjcxRYVR6Dw81uH3qlMHwT4cfLW4aEVBhP1aNV7VsA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.23.tgz}
+ name: esbuild-freebsd-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-arm64/0.14.23:
+ resolution: {integrity: sha512-uyPqBU/Zcp6yEAZS4LKj5jEE0q2s4HmlMBIPzbW6cTunZ8cyvjG6YWpIZXb1KK3KTJDe62ltCrk3VzmWHp+iLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.23.tgz}
+ name: esbuild-freebsd-arm64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-32/0.14.23:
+ resolution: {integrity: sha512-37R/WMkQyUfNhbH7aJrr1uCjDVdnPeTHGeDhZPUNhfoHV0lQuZNCKuNnDvlH/u/nwIYZNdVvz1Igv5rY/zfrzQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.14.23.tgz}
+ name: esbuild-linux-32
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-64/0.14.23:
+ resolution: {integrity: sha512-H0gztDP60qqr8zoFhAO64waoN5yBXkmYCElFklpd6LPoobtNGNnDe99xOQm28+fuD75YJ7GKHzp/MLCLhw2+vQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.14.23.tgz}
+ name: esbuild-linux-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm/0.14.23:
+ resolution: {integrity: sha512-x64CEUxi8+EzOAIpCUeuni0bZfzPw/65r8tC5cy5zOq9dY7ysOi5EVQHnzaxS+1NmV+/RVRpmrzGw1QgY2Xpmw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.23.tgz}
+ name: esbuild-linux-arm
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm64/0.14.23:
+ resolution: {integrity: sha512-c4MLOIByNHR55n3KoYf9hYDfBRghMjOiHLaoYLhkQkIabb452RWi+HsNgB41sUpSlOAqfpqKPFNg7VrxL3UX9g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.23.tgz}
+ name: esbuild-linux-arm64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-mips64le/0.14.23:
+ resolution: {integrity: sha512-kHKyKRIAedYhKug2EJpyJxOUj3VYuamOVA1pY7EimoFPzaF3NeY7e4cFBAISC/Av0/tiV0xlFCt9q0HJ68IBIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.23.tgz}
+ name: esbuild-linux-mips64le
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-ppc64le/0.14.23:
+ resolution: {integrity: sha512-7ilAiJEPuJJnJp/LiDO0oJm5ygbBPzhchJJh9HsHZzeqO+3PUzItXi+8PuicY08r0AaaOe25LA7sGJ0MzbfBag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.23.tgz}
+ name: esbuild-linux-ppc64le
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-riscv64/0.14.23:
+ resolution: {integrity: sha512-fbL3ggK2wY0D8I5raPIMPhpCvODFE+Bhb5QGtNP3r5aUsRR6TQV+ZBXIaw84iyvKC8vlXiA4fWLGhghAd/h/Zg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.23.tgz}
+ name: esbuild-linux-riscv64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-s390x/0.14.23:
+ resolution: {integrity: sha512-GHMDCyfy7+FaNSO8RJ8KCFsnax8fLUsOrj9q5Gi2JmZMY0Zhp75keb5abTFCq2/Oy6KVcT0Dcbyo/bFb4rIFJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.23.tgz}
+ name: esbuild-linux-s390x
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-netbsd-64/0.14.23:
+ resolution: {integrity: sha512-ovk2EX+3rrO1M2lowJfgMb/JPN1VwVYrx0QPUyudxkxLYrWeBxDKQvc6ffO+kB4QlDyTfdtAURrVzu3JeNdA2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.23.tgz}
+ name: esbuild-netbsd-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-openbsd-64/0.14.23:
+ resolution: {integrity: sha512-uYYNqbVR+i7k8ojP/oIROAHO9lATLN7H2QeXKt2H310Fc8FJj4y3Wce6hx0VgnJ4k1JDrgbbiXM8rbEgQyg8KA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.23.tgz}
+ name: esbuild-openbsd-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-sunos-64/0.14.23:
+ resolution: {integrity: sha512-hAzeBeET0+SbScknPzS2LBY6FVDpgE+CsHSpe6CEoR51PApdn2IB0SyJX7vGelXzlyrnorM4CAsRyb9Qev4h9g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.23.tgz}
+ name: esbuild-sunos-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-32/0.14.23:
+ resolution: {integrity: sha512-Kttmi3JnohdaREbk6o9e25kieJR379TsEWF0l39PQVHXq3FR6sFKtVPgY8wk055o6IB+rllrzLnbqOw/UV60EA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.14.23.tgz}
+ name: esbuild-windows-32
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-64/0.14.23:
+ resolution: {integrity: sha512-JtIT0t8ymkpl6YlmOl6zoSWL5cnCgyLaBdf/SiU/Eg3C13r0NbHZWNT/RDEMKK91Y6t79kTs3vyRcNZbfu5a8g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.14.23.tgz}
+ name: esbuild-windows-64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-arm64/0.14.23:
+ resolution: {integrity: sha512-cTFaQqT2+ik9e4hePvYtRZQ3pqOvKDVNarzql0VFIzhc0tru/ZgdLoXd6epLiKT+SzoSce6V9YJ+nn6RCn6SHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.23.tgz}
+ name: esbuild-windows-arm64
+ version: 0.14.23
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild/0.14.23:
+ resolution: {integrity: sha512-XjnIcZ9KB6lfonCa+jRguXyRYcldmkyZ99ieDksqW/C8bnyEX299yA4QH2XcgijCgaddEZePPTgvx/2imsq7Ig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild/-/esbuild-0.14.23.tgz}
+ name: esbuild
+ version: 0.14.23
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ esbuild-android-arm64: registry.npmmirror.com/esbuild-android-arm64/0.14.23
+ esbuild-darwin-64: registry.npmmirror.com/esbuild-darwin-64/0.14.23
+ esbuild-darwin-arm64: registry.npmmirror.com/esbuild-darwin-arm64/0.14.23
+ esbuild-freebsd-64: registry.npmmirror.com/esbuild-freebsd-64/0.14.23
+ esbuild-freebsd-arm64: registry.npmmirror.com/esbuild-freebsd-arm64/0.14.23
+ esbuild-linux-32: registry.npmmirror.com/esbuild-linux-32/0.14.23
+ esbuild-linux-64: registry.npmmirror.com/esbuild-linux-64/0.14.23
+ esbuild-linux-arm: registry.npmmirror.com/esbuild-linux-arm/0.14.23
+ esbuild-linux-arm64: registry.npmmirror.com/esbuild-linux-arm64/0.14.23
+ esbuild-linux-mips64le: registry.npmmirror.com/esbuild-linux-mips64le/0.14.23
+ esbuild-linux-ppc64le: registry.npmmirror.com/esbuild-linux-ppc64le/0.14.23
+ esbuild-linux-riscv64: registry.npmmirror.com/esbuild-linux-riscv64/0.14.23
+ esbuild-linux-s390x: registry.npmmirror.com/esbuild-linux-s390x/0.14.23
+ esbuild-netbsd-64: registry.npmmirror.com/esbuild-netbsd-64/0.14.23
+ esbuild-openbsd-64: registry.npmmirror.com/esbuild-openbsd-64/0.14.23
+ esbuild-sunos-64: registry.npmmirror.com/esbuild-sunos-64/0.14.23
+ esbuild-windows-32: registry.npmmirror.com/esbuild-windows-32/0.14.23
+ esbuild-windows-64: registry.npmmirror.com/esbuild-windows-64/0.14.23
+ esbuild-windows-arm64: registry.npmmirror.com/esbuild-windows-arm64/0.14.23
+ dev: true
+
+ registry.npmmirror.com/escape-string-regexp/4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz}
+ name: escape-string-regexp
+ version: 4.0.0
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmmirror.com/eslint-config-prettier/8.4.0_eslint@8.9.0:
+ resolution: {integrity: sha512-CFotdUcMY18nGRo5KGsnNxpznzhkopOcOo0InID+sgQssPrzjvsyKZPvOgymTFeHrFuC3Tzdf2YndhXtULK9Iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-config-prettier/-/eslint-config-prettier-8.4.0.tgz}
+ id: registry.npmmirror.com/eslint-config-prettier/8.4.0
+ name: eslint-config-prettier
+ version: 8.4.0
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+ dependencies:
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ dev: true
+
+ registry.npmmirror.com/eslint-plugin-prettier/4.0.0_9f62b85ce3ce02949dbd2ccffcebe95f:
+ resolution: {integrity: sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz}
+ id: registry.npmmirror.com/eslint-plugin-prettier/4.0.0
+ name: eslint-plugin-prettier
+ version: 4.0.0
+ engines: {node: '>=6.0.0'}
+ peerDependencies:
+ eslint: '>=7.28.0'
+ eslint-config-prettier: '*'
+ prettier: '>=2.0.0'
+ peerDependenciesMeta:
+ eslint-config-prettier:
+ optional: true
+ dependencies:
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-config-prettier: registry.npmmirror.com/eslint-config-prettier/8.4.0_eslint@8.9.0
+ prettier: registry.npmmirror.com/prettier/2.5.1
+ prettier-linter-helpers: registry.npmmirror.com/prettier-linter-helpers/1.0.0
+ dev: true
+
+ registry.npmmirror.com/eslint-plugin-vue/8.5.0_eslint@8.9.0:
+ resolution: {integrity: sha512-i1uHCTAKOoEj12RDvdtONWrGzjFm/djkzqfhmQ0d6M/W8KM81mhswd/z+iTZ0jCpdUedW3YRgcVfQ37/J4zoYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-plugin-vue/-/eslint-plugin-vue-8.5.0.tgz}
+ id: registry.npmmirror.com/eslint-plugin-vue/8.5.0
+ name: eslint-plugin-vue
+ version: 8.5.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-utils: registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.9.0
+ natural-compare: registry.npmmirror.com/natural-compare/1.4.0
+ semver: registry.npmmirror.com/semver/7.3.5
+ vue-eslint-parser: registry.npmmirror.com/vue-eslint-parser/8.3.0_eslint@8.9.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/eslint-scope/5.1.1:
+ resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz}
+ name: eslint-scope
+ version: 5.1.1
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ esrecurse: registry.npmmirror.com/esrecurse/4.3.0
+ estraverse: registry.npmmirror.com/estraverse/4.3.0
+ dev: true
+
+ registry.npmmirror.com/eslint-scope/7.1.1:
+ resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-scope/-/eslint-scope-7.1.1.tgz}
+ name: eslint-scope
+ version: 7.1.1
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ esrecurse: registry.npmmirror.com/esrecurse/4.3.0
+ estraverse: registry.npmmirror.com/estraverse/5.3.0
+ dev: true
+
+ registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.9.0:
+ resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz}
+ id: registry.npmmirror.com/eslint-utils/3.0.0
+ name: eslint-utils
+ version: 3.0.0
+ engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
+ peerDependencies:
+ eslint: '>=5'
+ dependencies:
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/2.1.0
+ dev: true
+
+ registry.npmmirror.com/eslint-visitor-keys/2.1.0:
+ resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz}
+ name: eslint-visitor-keys
+ version: 2.1.0
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmmirror.com/eslint-visitor-keys/3.3.0:
+ resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz}
+ name: eslint-visitor-keys
+ version: 3.3.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: true
+
+ registry.npmmirror.com/eslint/8.9.0:
+ resolution: {integrity: sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint/-/eslint-8.9.0.tgz}
+ name: eslint
+ version: 8.9.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ hasBin: true
+ dependencies:
+ '@eslint/eslintrc': registry.npmmirror.com/@eslint/eslintrc/1.1.0
+ '@humanwhocodes/config-array': registry.npmmirror.com/@humanwhocodes/config-array/0.9.5
+ ajv: registry.npmmirror.com/ajv/6.12.6
+ chalk: registry.npmmirror.com/chalk/4.1.2
+ cross-spawn: registry.npmmirror.com/cross-spawn/7.0.3
+ debug: registry.npmmirror.com/debug/4.3.3
+ doctrine: registry.npmmirror.com/doctrine/3.0.0
+ escape-string-regexp: registry.npmmirror.com/escape-string-regexp/4.0.0
+ eslint-scope: registry.npmmirror.com/eslint-scope/7.1.1
+ eslint-utils: registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.9.0
+ eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/3.3.0
+ espree: registry.npmmirror.com/espree/9.3.1
+ esquery: registry.npmmirror.com/esquery/1.4.0
+ esutils: registry.npmmirror.com/esutils/2.0.3
+ fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3
+ file-entry-cache: registry.npmmirror.com/file-entry-cache/6.0.1
+ functional-red-black-tree: registry.npmmirror.com/functional-red-black-tree/1.0.1
+ glob-parent: registry.npmmirror.com/glob-parent/6.0.2
+ globals: registry.npmmirror.com/globals/13.12.1
+ ignore: registry.npmmirror.com/ignore/5.2.0
+ import-fresh: registry.npmmirror.com/import-fresh/3.3.0
+ imurmurhash: registry.npmmirror.com/imurmurhash/0.1.4
+ is-glob: registry.npmmirror.com/is-glob/4.0.3
+ js-yaml: registry.npmmirror.com/js-yaml/4.1.0
+ json-stable-stringify-without-jsonify: registry.npmmirror.com/json-stable-stringify-without-jsonify/1.0.1
+ levn: registry.npmmirror.com/levn/0.4.1
+ lodash.merge: registry.npmmirror.com/lodash.merge/4.6.2
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
+ natural-compare: registry.npmmirror.com/natural-compare/1.4.0
+ optionator: registry.npmmirror.com/optionator/0.9.1
+ regexpp: registry.npmmirror.com/regexpp/3.2.0
+ strip-ansi: registry.npmmirror.com/strip-ansi/6.0.1
+ strip-json-comments: registry.npmmirror.com/strip-json-comments/3.1.1
+ text-table: registry.npmmirror.com/text-table/0.2.0
+ v8-compile-cache: registry.npmmirror.com/v8-compile-cache/2.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/espree/9.3.1:
+ resolution: {integrity: sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/espree/-/espree-9.3.1.tgz}
+ name: espree
+ version: 9.3.1
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/8.7.0
+ acorn-jsx: registry.npmmirror.com/acorn-jsx/5.3.2_acorn@8.7.0
+ eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/3.3.0
+ dev: true
+
+ registry.npmmirror.com/esquery/1.4.0:
+ resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esquery/-/esquery-1.4.0.tgz}
+ name: esquery
+ version: 1.4.0
+ engines: {node: '>=0.10'}
+ dependencies:
+ estraverse: registry.npmmirror.com/estraverse/5.3.0
+ dev: true
+
+ registry.npmmirror.com/esrecurse/4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz}
+ name: esrecurse
+ version: 4.3.0
+ engines: {node: '>=4.0'}
+ dependencies:
+ estraverse: registry.npmmirror.com/estraverse/5.3.0
+ dev: true
+
+ registry.npmmirror.com/estraverse/4.3.0:
+ resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz}
+ name: estraverse
+ version: 4.3.0
+ engines: {node: '>=4.0'}
+ dev: true
+
+ registry.npmmirror.com/estraverse/5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz}
+ name: estraverse
+ version: 5.3.0
+ engines: {node: '>=4.0'}
+ 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/esutils/2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz}
+ name: esutils
+ version: 2.0.3
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/fast-deep-equal/3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz}
+ name: fast-deep-equal
+ version: 3.1.3
+ dev: true
+
+ 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: true
+
+ registry.npmmirror.com/fast-glob/3.2.11:
+ resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.11.tgz}
+ name: fast-glob
+ version: 3.2.11
+ 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.4
+ dev: true
+
+ registry.npmmirror.com/fast-json-stable-stringify/2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz}
+ name: fast-json-stable-stringify
+ version: 2.1.0
+ dev: true
+
+ registry.npmmirror.com/fast-levenshtein/2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz}
+ name: fast-levenshtein
+ version: 2.0.6
+ dev: true
+
+ registry.npmmirror.com/fastq/1.13.0:
+ resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastq/-/fastq-1.13.0.tgz}
+ name: fastq
+ version: 1.13.0
+ dependencies:
+ reusify: registry.npmmirror.com/reusify/1.0.4
+ dev: true
+
+ registry.npmmirror.com/file-entry-cache/6.0.1:
+ resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz}
+ name: file-entry-cache
+ version: 6.0.1
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ flat-cache: registry.npmmirror.com/flat-cache/3.0.4
+ 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/flat-cache/3.0.4:
+ resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/flat-cache/-/flat-cache-3.0.4.tgz}
+ name: flat-cache
+ version: 3.0.4
+ engines: {node: ^10.12.0 || >=12.0.0}
+ dependencies:
+ flatted: registry.npmmirror.com/flatted/3.2.5
+ rimraf: registry.npmmirror.com/rimraf/3.0.2
+ dev: true
+
+ registry.npmmirror.com/flatted/3.2.5:
+ resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/flatted/-/flatted-3.2.5.tgz}
+ name: flatted
+ version: 3.2.5
+ dev: true
+
+ registry.npmmirror.com/follow-redirects/1.14.9:
+ resolution: {integrity: sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.14.9.tgz}
+ name: follow-redirects
+ version: 1.14.9
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+ dev: false
+
+ registry.npmmirror.com/fs.realpath/1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz}
+ name: fs.realpath
+ version: 1.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
+ dev: true
+
+ registry.npmmirror.com/functional-red-black-tree/1.0.1:
+ resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz}
+ name: functional-red-black-tree
+ version: 1.0.1
+ dev: true
+
+ registry.npmmirror.com/get-intrinsic/1.1.1:
+ resolution: {integrity: sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz}
+ name: get-intrinsic
+ version: 1.1.1
+ 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.2
+ 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/glob-parent/6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz}
+ name: glob-parent
+ version: 6.0.2
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ is-glob: registry.npmmirror.com/is-glob/4.0.3
+ dev: true
+
+ registry.npmmirror.com/glob/7.2.0:
+ resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob/-/glob-7.2.0.tgz}
+ name: glob
+ version: 7.2.0
+ dependencies:
+ fs.realpath: registry.npmmirror.com/fs.realpath/1.0.0
+ inflight: registry.npmmirror.com/inflight/1.0.6
+ inherits: registry.npmmirror.com/inherits/2.0.4
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
+ once: registry.npmmirror.com/once/1.4.0
+ path-is-absolute: registry.npmmirror.com/path-is-absolute/1.0.1
+ dev: true
+
+ registry.npmmirror.com/globals/13.12.1:
+ resolution: {integrity: sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/globals/-/globals-13.12.1.tgz}
+ name: globals
+ version: 13.12.1
+ engines: {node: '>=8'}
+ dependencies:
+ type-fest: registry.npmmirror.com/type-fest/0.20.2
+ dev: true
+
+ registry.npmmirror.com/globby/11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz}
+ name: globby
+ version: 11.1.0
+ engines: {node: '>=10'}
+ dependencies:
+ array-union: registry.npmmirror.com/array-union/2.1.0
+ dir-glob: registry.npmmirror.com/dir-glob/3.0.1
+ fast-glob: registry.npmmirror.com/fast-glob/3.2.11
+ ignore: registry.npmmirror.com/ignore/5.2.0
+ merge2: registry.npmmirror.com/merge2/1.4.1
+ slash: registry.npmmirror.com/slash/3.0.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-symbols/1.0.2:
+ resolution: {integrity: sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.2.tgz}
+ name: has-symbols
+ version: 1.0.2
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ 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.2
+ 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
+ dev: true
+
+ registry.npmmirror.com/htmlparser2/7.2.0:
+ resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/htmlparser2/-/htmlparser2-7.2.0.tgz}
+ name: htmlparser2
+ version: 7.2.0
+ dependencies:
+ domelementtype: registry.npmmirror.com/domelementtype/2.2.0
+ domhandler: registry.npmmirror.com/domhandler/4.3.0
+ domutils: registry.npmmirror.com/domutils/2.8.0
+ entities: registry.npmmirror.com/entities/3.0.1
+ dev: true
+
+ registry.npmmirror.com/ignore/4.0.6:
+ resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ignore/-/ignore-4.0.6.tgz}
+ name: ignore
+ version: 4.0.6
+ engines: {node: '>= 4'}
+ dev: true
+
+ registry.npmmirror.com/ignore/5.2.0:
+ resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ignore/-/ignore-5.2.0.tgz}
+ name: ignore
+ version: 5.2.0
+ engines: {node: '>= 4'}
+ dev: true
+
+ registry.npmmirror.com/immutable/4.0.0:
+ resolution: {integrity: sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/immutable/-/immutable-4.0.0.tgz}
+ name: immutable
+ version: 4.0.0
+ dev: true
+
+ registry.npmmirror.com/import-fresh/3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz}
+ name: import-fresh
+ version: 3.3.0
+ engines: {node: '>=6'}
+ dependencies:
+ parent-module: registry.npmmirror.com/parent-module/1.0.1
+ resolve-from: registry.npmmirror.com/resolve-from/4.0.0
+ dev: true
+
+ registry.npmmirror.com/imurmurhash/0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz}
+ name: imurmurhash
+ version: 0.1.4
+ engines: {node: '>=0.8.19'}
+ dev: true
+
+ registry.npmmirror.com/inflight/1.0.6:
+ resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz}
+ name: inflight
+ version: 1.0.6
+ dependencies:
+ once: registry.npmmirror.com/once/1.4.0
+ wrappy: registry.npmmirror.com/wrappy/1.0.2
+ 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-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-core-module/2.8.1:
+ resolution: {integrity: sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-core-module/-/is-core-module-2.8.1.tgz}
+ name: is-core-module
+ version: 2.8.1
+ dependencies:
+ has: registry.npmmirror.com/has/1.0.3
+ dev: true
+
+ registry.npmmirror.com/is-expression/4.0.0:
+ resolution: {integrity: sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-expression/-/is-expression-4.0.0.tgz}
+ name: is-expression
+ version: 4.0.0
+ dependencies:
+ acorn: registry.npmmirror.com/acorn/7.4.1
+ object-assign: registry.npmmirror.com/object-assign/4.1.1
+ 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/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-promise/2.2.2:
+ resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-promise/-/is-promise-2.2.2.tgz}
+ name: is-promise
+ version: 2.2.2
+ 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: true
+
+ registry.npmmirror.com/isexe/2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz}
+ name: isexe
+ version: 2.0.0
+ dev: true
+
+ registry.npmmirror.com/js-stringify/1.0.2:
+ resolution: {integrity: sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/js-stringify/-/js-stringify-1.0.2.tgz}
+ name: js-stringify
+ version: 1.0.2
+ dev: true
+
+ registry.npmmirror.com/js-yaml/4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz}
+ name: js-yaml
+ version: 4.1.0
+ hasBin: true
+ dependencies:
+ argparse: registry.npmmirror.com/argparse/2.0.1
+ dev: true
+
+ registry.npmmirror.com/json-schema-traverse/0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz}
+ name: json-schema-traverse
+ version: 0.4.1
+ dev: true
+
+ registry.npmmirror.com/json-stable-stringify-without-jsonify/1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz}
+ name: json-stable-stringify-without-jsonify
+ version: 1.0.1
+ dev: true
+
+ registry.npmmirror.com/jsonc-parser/2.3.1:
+ resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-2.3.1.tgz}
+ name: jsonc-parser
+ version: 2.3.1
+ dev: true
+
+ registry.npmmirror.com/jsonc-parser/3.0.0:
+ resolution: {integrity: sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz}
+ name: jsonc-parser
+ version: 3.0.0
+ dev: true
+
+ registry.npmmirror.com/jstransformer/1.0.0:
+ resolution: {integrity: sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jstransformer/-/jstransformer-1.0.0.tgz}
+ name: jstransformer
+ version: 1.0.0
+ dependencies:
+ is-promise: registry.npmmirror.com/is-promise/2.2.2
+ promise: registry.npmmirror.com/promise/7.3.1
+ dev: true
+
+ registry.npmmirror.com/levn/0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz}
+ name: levn
+ version: 0.4.1
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: registry.npmmirror.com/prelude-ls/1.2.1
+ type-check: registry.npmmirror.com/type-check/0.4.0
+ dev: true
+
+ registry.npmmirror.com/lodash.merge/4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz}
+ name: lodash.merge
+ version: 4.6.2
+ dev: true
+
+ 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: true
+
+ registry.npmmirror.com/lru-cache/6.0.0:
+ resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz}
+ name: lru-cache
+ version: 6.0.0
+ engines: {node: '>=10'}
+ dependencies:
+ yallist: registry.npmmirror.com/yallist/4.0.0
+ dev: true
+
+ registry.npmmirror.com/magic-string/0.25.7:
+ resolution: {integrity: sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/magic-string/-/magic-string-0.25.7.tgz}
+ name: magic-string
+ version: 0.25.7
+ dependencies:
+ sourcemap-codec: registry.npmmirror.com/sourcemap-codec/1.4.8
+ dev: false
+
+ 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/4.0.4:
+ resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-4.0.4.tgz}
+ name: micromatch
+ version: 4.0.4
+ 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/minimatch/3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz}
+ name: minimatch
+ version: 3.1.2
+ dependencies:
+ brace-expansion: registry.npmmirror.com/brace-expansion/1.1.11
+ dev: true
+
+ registry.npmmirror.com/ms/2.1.2:
+ resolution: {integrity: sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/download/ms-2.1.2.tgz}
+ name: ms
+ version: 2.1.2
+ dev: true
+
+ registry.npmmirror.com/nanoid/3.3.1:
+ resolution: {integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nanoid/-/nanoid-3.3.1.tgz}
+ name: nanoid
+ version: 3.3.1
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ registry.npmmirror.com/natural-compare/1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz}
+ name: natural-compare
+ version: 1.4.0
+ 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.css/8.0.1:
+ resolution: {integrity: sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/normalize.css/-/normalize.css-8.0.1.tgz}
+ name: normalize.css
+ version: 8.0.1
+ dev: false
+
+ 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/once/1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/once/-/once-1.4.0.tgz}
+ name: once
+ version: 1.4.0
+ dependencies:
+ wrappy: registry.npmmirror.com/wrappy/1.0.2
+ dev: true
+
+ registry.npmmirror.com/optionator/0.9.1:
+ resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz}
+ name: optionator
+ version: 0.9.1
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ deep-is: registry.npmmirror.com/deep-is/0.1.4
+ fast-levenshtein: registry.npmmirror.com/fast-levenshtein/2.0.6
+ levn: registry.npmmirror.com/levn/0.4.1
+ prelude-ls: registry.npmmirror.com/prelude-ls/1.2.1
+ type-check: registry.npmmirror.com/type-check/0.4.0
+ word-wrap: registry.npmmirror.com/word-wrap/1.2.3
+ dev: true
+
+ registry.npmmirror.com/parent-module/1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz}
+ name: parent-module
+ version: 1.0.1
+ engines: {node: '>=6'}
+ dependencies:
+ callsites: registry.npmmirror.com/callsites/3.1.0
+ dev: true
+
+ registry.npmmirror.com/path-is-absolute/1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz}
+ name: path-is-absolute
+ version: 1.0.1
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/path-key/3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz}
+ name: path-key
+ version: 3.1.1
+ engines: {node: '>=8'}
+ 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/path-type/4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz}
+ name: path-type
+ version: 4.0.0
+ engines: {node: '>=8'}
+ 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.11_typescript@4.5.5+vue@3.2.31:
+ resolution: {integrity: sha512-JzcmnMqu28PNWOjDgEDK6fTrIzX8eQZKPPKvu/fpHdpXARUj1xeVdFi3YFIMOWswqaBd589cpmAMdSSTryI9iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.0.11.tgz}
+ id: registry.npmmirror.com/pinia/2.0.11
+ name: pinia
+ version: 2.0.11
+ 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.0.12
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ vue: registry.npmmirror.com/vue/3.2.31
+ vue-demi: registry.npmmirror.com/vue-demi/0.12.1_vue@3.2.31
+ dev: false
+
+ registry.npmmirror.com/postcss/8.4.7:
+ resolution: {integrity: sha512-L9Ye3r6hkkCeOETQX6iOaWZgjp3LL6Lpqm6EtgbKrgqGGteRMNb9vzBfRL96YOSu8o7x3MfIH9Mo5cPJFGrW6A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss/-/postcss-8.4.7.tgz}
+ name: postcss
+ version: 8.4.7
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: registry.npmmirror.com/nanoid/3.3.1
+ picocolors: registry.npmmirror.com/picocolors/1.0.0
+ source-map-js: registry.npmmirror.com/source-map-js/1.0.2
+
+ registry.npmmirror.com/prelude-ls/1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz}
+ name: prelude-ls
+ version: 1.2.1
+ engines: {node: '>= 0.8.0'}
+ dev: true
+
+ registry.npmmirror.com/prettier-linter-helpers/1.0.0:
+ resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz}
+ name: prettier-linter-helpers
+ version: 1.0.0
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ fast-diff: registry.npmmirror.com/fast-diff/1.2.0
+ dev: true
+
+ registry.npmmirror.com/prettier/2.5.1:
+ resolution: {integrity: sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prettier/-/prettier-2.5.1.tgz}
+ name: prettier
+ version: 2.5.1
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/promise/7.3.1:
+ resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/promise/-/promise-7.3.1.tgz}
+ name: promise
+ version: 7.3.1
+ dependencies:
+ asap: registry.npmmirror.com/asap/2.0.6
+ dev: true
+
+ registry.npmmirror.com/pug-attrs/3.0.0:
+ resolution: {integrity: sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-attrs/-/pug-attrs-3.0.0.tgz}
+ name: pug-attrs
+ version: 3.0.0
+ dependencies:
+ constantinople: registry.npmmirror.com/constantinople/4.0.1
+ js-stringify: registry.npmmirror.com/js-stringify/1.0.2
+ pug-runtime: registry.npmmirror.com/pug-runtime/3.0.1
+ dev: true
+
+ registry.npmmirror.com/pug-code-gen/3.0.2:
+ resolution: {integrity: sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-code-gen/-/pug-code-gen-3.0.2.tgz}
+ name: pug-code-gen
+ version: 3.0.2
+ dependencies:
+ constantinople: registry.npmmirror.com/constantinople/4.0.1
+ doctypes: registry.npmmirror.com/doctypes/1.1.0
+ js-stringify: registry.npmmirror.com/js-stringify/1.0.2
+ pug-attrs: registry.npmmirror.com/pug-attrs/3.0.0
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ pug-runtime: registry.npmmirror.com/pug-runtime/3.0.1
+ void-elements: registry.npmmirror.com/void-elements/3.1.0
+ with: registry.npmmirror.com/with/7.0.2
+ dev: true
+
+ registry.npmmirror.com/pug-error/2.0.0:
+ resolution: {integrity: sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-error/-/pug-error-2.0.0.tgz}
+ name: pug-error
+ version: 2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-filters/4.0.0:
+ resolution: {integrity: sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-filters/-/pug-filters-4.0.0.tgz}
+ name: pug-filters
+ version: 4.0.0
+ dependencies:
+ constantinople: registry.npmmirror.com/constantinople/4.0.1
+ jstransformer: registry.npmmirror.com/jstransformer/1.0.0
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ pug-walk: registry.npmmirror.com/pug-walk/2.0.0
+ resolve: registry.npmmirror.com/resolve/1.22.0
+ dev: true
+
+ registry.npmmirror.com/pug-lexer/5.0.1:
+ resolution: {integrity: sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-lexer/-/pug-lexer-5.0.1.tgz}
+ name: pug-lexer
+ version: 5.0.1
+ dependencies:
+ character-parser: registry.npmmirror.com/character-parser/2.2.0
+ is-expression: registry.npmmirror.com/is-expression/4.0.0
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-linker/4.0.0:
+ resolution: {integrity: sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-linker/-/pug-linker-4.0.0.tgz}
+ name: pug-linker
+ version: 4.0.0
+ dependencies:
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ pug-walk: registry.npmmirror.com/pug-walk/2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-load/3.0.0:
+ resolution: {integrity: sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-load/-/pug-load-3.0.0.tgz}
+ name: pug-load
+ version: 3.0.0
+ dependencies:
+ object-assign: registry.npmmirror.com/object-assign/4.1.1
+ pug-walk: registry.npmmirror.com/pug-walk/2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-parser/6.0.0:
+ resolution: {integrity: sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-parser/-/pug-parser-6.0.0.tgz}
+ name: pug-parser
+ version: 6.0.0
+ dependencies:
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ token-stream: registry.npmmirror.com/token-stream/1.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-runtime/3.0.1:
+ resolution: {integrity: sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-runtime/-/pug-runtime-3.0.1.tgz}
+ name: pug-runtime
+ version: 3.0.1
+ dev: true
+
+ registry.npmmirror.com/pug-strip-comments/2.0.0:
+ resolution: {integrity: sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz}
+ name: pug-strip-comments
+ version: 2.0.0
+ dependencies:
+ pug-error: registry.npmmirror.com/pug-error/2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug-walk/2.0.0:
+ resolution: {integrity: sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug-walk/-/pug-walk-2.0.0.tgz}
+ name: pug-walk
+ version: 2.0.0
+ dev: true
+
+ registry.npmmirror.com/pug/3.0.2:
+ resolution: {integrity: sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pug/-/pug-3.0.2.tgz}
+ name: pug
+ version: 3.0.2
+ dependencies:
+ pug-code-gen: registry.npmmirror.com/pug-code-gen/3.0.2
+ pug-filters: registry.npmmirror.com/pug-filters/4.0.0
+ pug-lexer: registry.npmmirror.com/pug-lexer/5.0.1
+ pug-linker: registry.npmmirror.com/pug-linker/4.0.0
+ pug-load: registry.npmmirror.com/pug-load/3.0.0
+ pug-parser: registry.npmmirror.com/pug-parser/6.0.0
+ pug-runtime: registry.npmmirror.com/pug-runtime/3.0.1
+ pug-strip-comments: registry.npmmirror.com/pug-strip-comments/2.0.0
+ dev: true
+
+ registry.npmmirror.com/punycode/2.1.1:
+ resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/punycode/-/punycode-2.1.1.tgz}
+ name: punycode
+ version: 2.1.1
+ engines: {node: '>=6'}
+ 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/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/regexpp/3.2.0:
+ resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz}
+ name: regexpp
+ version: 3.2.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmmirror.com/request-light/0.5.7:
+ resolution: {integrity: sha512-i/wKzvcx7Er8tZnvqSxWuNO5ZGggu2UgZAqj/RyZ0si7lBTXL7kZiI/dWxzxnQjaY7s5HEy1qK21Do4Ncr6cVw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/request-light/-/request-light-0.5.7.tgz}
+ name: request-light
+ version: 0.5.7
+ dev: true
+
+ registry.npmmirror.com/resolve-from/4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz}
+ name: resolve-from
+ version: 4.0.0
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmmirror.com/resolve/1.22.0:
+ resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve/-/resolve-1.22.0.tgz}
+ name: resolve
+ version: 1.22.0
+ hasBin: true
+ dependencies:
+ is-core-module: registry.npmmirror.com/is-core-module/2.8.1
+ 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/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/rimraf/3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz}
+ name: rimraf
+ version: 3.0.2
+ hasBin: true
+ dependencies:
+ glob: registry.npmmirror.com/glob/7.2.0
+ dev: true
+
+ registry.npmmirror.com/rollup/2.68.0:
+ resolution: {integrity: sha512-XrMKOYK7oQcTio4wyTz466mucnd8LzkiZLozZ4Rz0zQD+HeX4nUK4B8GrTX/2EvN2/vBF/i2WnaXboPxo0JylA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rollup/-/rollup-2.68.0.tgz}
+ name: rollup
+ version: 2.68.0
+ 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/sass/1.49.9:
+ resolution: {integrity: sha512-YlYWkkHP9fbwaFRZQRXgDi3mXZShslVmmo+FVK3kHLUELHHEYrCmL1x6IUjC7wLS6VuJSAFXRQS/DxdsC4xL1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.49.9.tgz}
+ name: sass
+ version: 1.49.9
+ engines: {node: '>=12.0.0'}
+ hasBin: true
+ dependencies:
+ chokidar: registry.npmmirror.com/chokidar/3.5.3
+ immutable: registry.npmmirror.com/immutable/4.0.0
+ source-map-js: registry.npmmirror.com/source-map-js/1.0.2
+ dev: true
+
+ registry.npmmirror.com/semver/7.3.5:
+ resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/semver/-/semver-7.3.5.tgz}
+ name: semver
+ version: 7.3.5
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ lru-cache: registry.npmmirror.com/lru-cache/6.0.0
+ dev: true
+
+ registry.npmmirror.com/shebang-command/2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz}
+ name: shebang-command
+ version: 2.0.0
+ engines: {node: '>=8'}
+ dependencies:
+ shebang-regex: registry.npmmirror.com/shebang-regex/3.0.0
+ dev: true
+
+ registry.npmmirror.com/shebang-regex/3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz}
+ name: shebang-regex
+ version: 3.0.0
+ engines: {node: '>=8'}
+ dev: true
+
+ registry.npmmirror.com/slash/3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz}
+ name: slash
+ version: 3.0.0
+ engines: {node: '>=8'}
+ 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/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
+ dev: false
+
+ registry.npmmirror.com/strip-ansi/6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz}
+ name: strip-ansi
+ version: 6.0.1
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-regex: registry.npmmirror.com/ansi-regex/5.0.1
+ dev: true
+
+ registry.npmmirror.com/strip-json-comments/3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz}
+ name: strip-json-comments
+ version: 3.1.1
+ engines: {node: '>=8'}
+ 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/text-table/0.2.0:
+ resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz}
+ name: text-table
+ version: 0.2.0
+ 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'}
+ 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/token-stream/1.0.0:
+ resolution: {integrity: sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/token-stream/-/token-stream-1.0.0.tgz}
+ name: token-stream
+ version: 1.0.0
+ dev: true
+
+ registry.npmmirror.com/tslib/1.14.1:
+ resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-1.14.1.tgz}
+ name: tslib
+ version: 1.14.1
+ dev: true
+
+ registry.npmmirror.com/tsutils/3.21.0_typescript@4.5.5:
+ resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tsutils/-/tsutils-3.21.0.tgz}
+ id: registry.npmmirror.com/tsutils/3.21.0
+ name: tsutils
+ version: 3.21.0
+ engines: {node: '>= 6'}
+ peerDependencies:
+ typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
+ dependencies:
+ tslib: registry.npmmirror.com/tslib/1.14.1
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ dev: true
+
+ registry.npmmirror.com/type-check/0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz}
+ name: type-check
+ version: 0.4.0
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ prelude-ls: registry.npmmirror.com/prelude-ls/1.2.1
+ dev: true
+
+ registry.npmmirror.com/type-fest/0.20.2:
+ resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz}
+ name: type-fest
+ version: 0.20.2
+ engines: {node: '>=10'}
+ dev: true
+
+ registry.npmmirror.com/typescript/4.5.5:
+ resolution: {integrity: sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/typescript/-/typescript-4.5.5.tgz}
+ name: typescript
+ version: 4.5.5
+ engines: {node: '>=4.2.0'}
+ hasBin: true
+ dev: true
+
+ registry.npmmirror.com/upath/2.0.1:
+ resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/upath/-/upath-2.0.1.tgz}
+ name: upath
+ version: 2.0.1
+ engines: {node: '>=4'}
+ dev: true
+
+ registry.npmmirror.com/uri-js/4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz}
+ name: uri-js
+ version: 4.4.1
+ dependencies:
+ punycode: registry.npmmirror.com/punycode/2.1.1
+ dev: true
+
+ registry.npmmirror.com/v8-compile-cache/2.3.0:
+ resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz}
+ name: v8-compile-cache
+ version: 2.3.0
+ dev: true
+
+ registry.npmmirror.com/vite/2.8.4_sass@1.49.9:
+ resolution: {integrity: sha512-GwtOkkaT2LDI82uWZKcrpRQxP5tymLnC7hVHHqNkhFNknYr0hJUlDLfhVRgngJvAy3RwypkDCWtTKn1BjO96Dw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vite/-/vite-2.8.4.tgz}
+ id: registry.npmmirror.com/vite/2.8.4
+ name: vite
+ version: 2.8.4
+ engines: {node: '>=12.2.0'}
+ hasBin: true
+ peerDependencies:
+ less: '*'
+ sass: '*'
+ stylus: '*'
+ peerDependenciesMeta:
+ less:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ dependencies:
+ esbuild: registry.npmmirror.com/esbuild/0.14.23
+ postcss: registry.npmmirror.com/postcss/8.4.7
+ resolve: registry.npmmirror.com/resolve/1.22.0
+ rollup: registry.npmmirror.com/rollup/2.68.0
+ sass: registry.npmmirror.com/sass/1.49.9
+ optionalDependencies:
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
+ dev: true
+
+ registry.npmmirror.com/void-elements/3.1.0:
+ resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/void-elements/-/void-elements-3.1.0.tgz}
+ name: void-elements
+ version: 3.1.0
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/vscode-css-languageservice/5.1.13:
+ resolution: {integrity: sha512-FA0foqMzMmEoO0WJP+MjoD4dRERhKS+Ag+yBrtmWQDmw2OuZ1R/5FkvI/XdTkCpHmTD9VMczugpHRejQyTXCNQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-css-languageservice/-/vscode-css-languageservice-5.1.13.tgz}
+ name: vscode-css-languageservice
+ version: 5.1.13
+ dependencies:
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ vscode-languageserver-types: registry.npmmirror.com/vscode-languageserver-types/3.16.0
+ vscode-nls: registry.npmmirror.com/vscode-nls/5.0.0
+ vscode-uri: registry.npmmirror.com/vscode-uri/3.0.3
+ dev: true
+
+ registry.npmmirror.com/vscode-html-languageservice/4.2.2:
+ resolution: {integrity: sha512-4ICwlpplGbiNQq6D/LZr4qLbPZuMmnSQeX/57UAYP7jD1LOvKeru4lVI+f6d6Eyd7uS46nLJ5DUY4AAlq35C0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-html-languageservice/-/vscode-html-languageservice-4.2.2.tgz}
+ name: vscode-html-languageservice
+ version: 4.2.2
+ dependencies:
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ vscode-languageserver-types: registry.npmmirror.com/vscode-languageserver-types/3.16.0
+ vscode-nls: registry.npmmirror.com/vscode-nls/5.0.0
+ vscode-uri: registry.npmmirror.com/vscode-uri/3.0.3
+ dev: true
+
+ registry.npmmirror.com/vscode-json-languageservice/4.2.0:
+ resolution: {integrity: sha512-XNawv0Vdy/sUK0S+hGf7cq/qsVAbIniGJr89TvZOqMCNJmpgKTy1e8PL1aWW0uy6BfWMG7vxa5lZb3ypuFtuGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-json-languageservice/-/vscode-json-languageservice-4.2.0.tgz}
+ name: vscode-json-languageservice
+ version: 4.2.0
+ dependencies:
+ jsonc-parser: registry.npmmirror.com/jsonc-parser/3.0.0
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ vscode-languageserver-types: registry.npmmirror.com/vscode-languageserver-types/3.16.0
+ vscode-nls: registry.npmmirror.com/vscode-nls/5.0.0
+ vscode-uri: registry.npmmirror.com/vscode-uri/3.0.3
+ dev: true
+
+ registry.npmmirror.com/vscode-jsonrpc/8.0.0-next.6:
+ resolution: {integrity: sha512-6Ld3RYjygn5Ih7CkAtcAwiDQC+rakj2O+PnASfNyYv3sLmm44eJpEKzuPUN30Iy2UB09AZg8T6LBKWTJTEJDVw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-jsonrpc/-/vscode-jsonrpc-8.0.0-next.6.tgz}
+ name: vscode-jsonrpc
+ version: 8.0.0-next.6
+ engines: {node: '>=14.0.0'}
+ dev: true
+
+ registry.npmmirror.com/vscode-languageserver-protocol/3.17.0-next.14:
+ resolution: {integrity: sha512-iangobY8dL6sFZkOx4OhRPJM9gN0I1caUsOVR+MnPozsqQUtwMXmbIcfaIf0Akp0pd3KhJDPf/tdwRX68QGeeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.14.tgz}
+ name: vscode-languageserver-protocol
+ version: 3.17.0-next.14
+ dependencies:
+ vscode-jsonrpc: registry.npmmirror.com/vscode-jsonrpc/8.0.0-next.6
+ vscode-languageserver-types: registry.npmmirror.com/vscode-languageserver-types/3.17.0-next.7
+ dev: true
+
+ registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4:
+ resolution: {integrity: sha512-/xhqXP/2A2RSs+J8JNXpiiNVvvNM0oTosNVmQnunlKvq9o4mupHOBAnnzH0lwIPKazXKvAKsVp1kr+H/K4lgoQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.4.tgz}
+ name: vscode-languageserver-textdocument
+ version: 1.0.4
+ dev: true
+
+ registry.npmmirror.com/vscode-languageserver-types/3.16.0:
+ resolution: {integrity: sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz}
+ name: vscode-languageserver-types
+ version: 3.16.0
+ dev: true
+
+ registry.npmmirror.com/vscode-languageserver-types/3.17.0-next.7:
+ resolution: {integrity: sha512-KH4zdG1qBXxoso61ChgpeoZYyHGJo8bV7Jv4I+fwQ1Ryy59JAxoZ9GAbhR5TeeafHctLcg6RFvY3m8Jqfu17cg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0-next.7.tgz}
+ name: vscode-languageserver-types
+ version: 3.17.0-next.7
+ dev: true
+
+ registry.npmmirror.com/vscode-languageserver/8.0.0-next.8:
+ resolution: {integrity: sha512-Gq0uqKbOgw7YNwPxMoNCeh7mHKMhG5j6EuoSh+w5pnKd7Eu9a74cagqf9aZDVFWW6GRpqR/Z+1o6EXqDK+g2Tg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-languageserver/-/vscode-languageserver-8.0.0-next.8.tgz}
+ name: vscode-languageserver
+ version: 8.0.0-next.8
+ hasBin: true
+ dependencies:
+ vscode-languageserver-protocol: registry.npmmirror.com/vscode-languageserver-protocol/3.17.0-next.14
+ dev: true
+
+ registry.npmmirror.com/vscode-nls/5.0.0:
+ resolution: {integrity: sha512-u0Lw+IYlgbEJFF6/qAqG2d1jQmJl0eyAGJHoAJqr2HT4M2BNuQYSEiSE75f52pXHSJm8AlTjnLLbBFPrdz2hpA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-nls/-/vscode-nls-5.0.0.tgz}
+ name: vscode-nls
+ version: 5.0.0
+ dev: true
+
+ registry.npmmirror.com/vscode-pug-languageservice/0.29.8:
+ resolution: {integrity: sha512-QHYAzDSJLg7GOLxCZ12qsM0dAM0dPeMSS1t4kKfzLsfpErmZpFzkAIXbidVrNMdMffGZMtTuIlcpEyWHbx96Iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-pug-languageservice/-/vscode-pug-languageservice-0.29.8.tgz}
+ name: vscode-pug-languageservice
+ version: 0.29.8
+ dependencies:
+ '@volar/code-gen': registry.npmmirror.com/@volar/code-gen/0.29.8
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ '@volar/source-map': registry.npmmirror.com/@volar/source-map/0.29.8
+ '@volar/transforms': registry.npmmirror.com/@volar/transforms/0.29.8
+ pug-lexer: registry.npmmirror.com/pug-lexer/5.0.1
+ pug-parser: registry.npmmirror.com/pug-parser/6.0.0
+ vscode-languageserver: registry.npmmirror.com/vscode-languageserver/8.0.0-next.8
+ dev: true
+
+ registry.npmmirror.com/vscode-typescript-languageservice/0.29.8:
+ resolution: {integrity: sha512-eecDqHk4WjEvy6VHQ6teHczppQ9yJO2wExCy7yu7WiFj35qbw0h4G6Erv46MvP3ClL8FggFzD7s1qM6vdqJUfw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-typescript-languageservice/-/vscode-typescript-languageservice-0.29.8.tgz}
+ name: vscode-typescript-languageservice
+ version: 0.29.8
+ dependencies:
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ semver: registry.npmmirror.com/semver/7.3.5
+ upath: registry.npmmirror.com/upath/2.0.1
+ vscode-languageserver: registry.npmmirror.com/vscode-languageserver/8.0.0-next.8
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ dev: true
+
+ registry.npmmirror.com/vscode-uri/2.1.2:
+ resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-uri/-/vscode-uri-2.1.2.tgz}
+ name: vscode-uri
+ version: 2.1.2
+ dev: true
+
+ registry.npmmirror.com/vscode-uri/3.0.3:
+ resolution: {integrity: sha512-EcswR2S8bpR7fD0YPeS7r2xXExrScVMxg4MedACaWHEtx9ftCF/qHG1xGkolzTPcEmjTavCQgbVzHUIdTMzFGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.0.3.tgz}
+ name: vscode-uri
+ version: 3.0.3
+ dev: true
+
+ registry.npmmirror.com/vscode-vue-languageservice/0.29.8:
+ resolution: {integrity: sha512-qSJdvW5ttyGUB/8uWDKgo8vnIoFnXYlBP4Z/cn54btsRn6ZMw7IJGJU1381e7p/yGvMTLeGbugD53SghbnSa6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vscode-vue-languageservice/-/vscode-vue-languageservice-0.29.8.tgz}
+ name: vscode-vue-languageservice
+ version: 0.29.8
+ dependencies:
+ '@volar/code-gen': registry.npmmirror.com/@volar/code-gen/0.29.8
+ '@volar/html2pug': registry.npmmirror.com/@volar/html2pug/0.29.8
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ '@volar/source-map': registry.npmmirror.com/@volar/source-map/0.29.8
+ '@volar/transforms': registry.npmmirror.com/@volar/transforms/0.29.8
+ '@volar/vue-code-gen': registry.npmmirror.com/@volar/vue-code-gen/0.29.8
+ '@vscode/emmet-helper': registry.npmmirror.com/@vscode/emmet-helper/2.8.4
+ '@vue/reactivity': registry.npmmirror.com/@vue/reactivity/3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ request-light: registry.npmmirror.com/request-light/0.5.7
+ upath: registry.npmmirror.com/upath/2.0.1
+ vscode-css-languageservice: registry.npmmirror.com/vscode-css-languageservice/5.1.13
+ vscode-html-languageservice: registry.npmmirror.com/vscode-html-languageservice/4.2.2
+ vscode-json-languageservice: registry.npmmirror.com/vscode-json-languageservice/4.2.0
+ vscode-languageserver: registry.npmmirror.com/vscode-languageserver/8.0.0-next.8
+ vscode-languageserver-textdocument: registry.npmmirror.com/vscode-languageserver-textdocument/1.0.4
+ vscode-pug-languageservice: registry.npmmirror.com/vscode-pug-languageservice/0.29.8
+ vscode-typescript-languageservice: registry.npmmirror.com/vscode-typescript-languageservice/0.29.8
+ dev: true
+
+ registry.npmmirror.com/vue-demi/0.12.1_vue@3.2.31:
+ resolution: {integrity: sha512-QL3ny+wX8c6Xm1/EZylbgzdoDolye+VpCXRhI2hug9dJTP3OUJ3lmiKN3CsVV3mOJKwFi0nsstbgob0vG7aoIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-demi/-/vue-demi-0.12.1.tgz}
+ id: registry.npmmirror.com/vue-demi/0.12.1
+ name: vue-demi
+ version: 0.12.1
+ 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.31
+ dev: false
+
+ registry.npmmirror.com/vue-eslint-parser/8.3.0_eslint@8.9.0:
+ resolution: {integrity: sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz}
+ id: registry.npmmirror.com/vue-eslint-parser/8.3.0
+ name: vue-eslint-parser
+ version: 8.3.0
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+ dependencies:
+ debug: registry.npmmirror.com/debug/4.3.3
+ eslint: registry.npmmirror.com/eslint/8.9.0
+ eslint-scope: registry.npmmirror.com/eslint-scope/7.1.1
+ eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/3.3.0
+ espree: registry.npmmirror.com/espree/9.3.1
+ esquery: registry.npmmirror.com/esquery/1.4.0
+ lodash: registry.npmmirror.com/lodash/4.17.21
+ semver: registry.npmmirror.com/semver/7.3.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ registry.npmmirror.com/vue-router/4.0.13_vue@3.2.31:
+ resolution: {integrity: sha512-LmXrC+BkDRLak+d5xTMgUYraT3Nj0H/vCbP+7usGvIl9Viqd1UP6AsP0i69pSbn9O0dXK/xCdp4yPw21HqV9Jw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-router/-/vue-router-4.0.13.tgz}
+ id: registry.npmmirror.com/vue-router/4.0.13
+ name: vue-router
+ version: 4.0.13
+ peerDependencies:
+ vue: ^3.2.0
+ dependencies:
+ '@vue/devtools-api': registry.npmmirror.com/@vue/devtools-api/6.0.12
+ vue: registry.npmmirror.com/vue/3.2.31
+ dev: false
+
+ registry.npmmirror.com/vue-tsc/0.29.8_typescript@4.5.5:
+ resolution: {integrity: sha512-pT0wLRjvRuSmB+J4WJT6uuV9mO0KtSSXEAtaVXZQzyk5+DJdbLIQTbRce/TXSkfqt1l1WogO78RjtOJFiMCgfQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue-tsc/-/vue-tsc-0.29.8.tgz}
+ id: registry.npmmirror.com/vue-tsc/0.29.8
+ name: vue-tsc
+ version: 0.29.8
+ hasBin: true
+ peerDependencies:
+ typescript: '*'
+ dependencies:
+ '@volar/shared': registry.npmmirror.com/@volar/shared/0.29.8
+ typescript: registry.npmmirror.com/typescript/4.5.5
+ vscode-vue-languageservice: registry.npmmirror.com/vscode-vue-languageservice/0.29.8
+ dev: true
+
+ registry.npmmirror.com/vue/3.2.31:
+ resolution: {integrity: sha512-odT3W2tcffTiQCy57nOT93INw1auq5lYLLYtWpPYQQYQOOdHiqFct9Xhna6GJ+pJQaF67yZABraH47oywkJgFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vue/-/vue-3.2.31.tgz}
+ name: vue
+ version: 3.2.31
+ dependencies:
+ '@vue/compiler-dom': registry.npmmirror.com/@vue/compiler-dom/3.2.31
+ '@vue/compiler-sfc': registry.npmmirror.com/@vue/compiler-sfc/3.2.31
+ '@vue/runtime-dom': registry.npmmirror.com/@vue/runtime-dom/3.2.31
+ '@vue/server-renderer': registry.npmmirror.com/@vue/server-renderer/3.2.31_vue@3.2.31
+ '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.31
+ dev: false
+
+ registry.npmmirror.com/which/2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/which/-/which-2.0.2.tgz}
+ name: which
+ version: 2.0.2
+ engines: {node: '>= 8'}
+ hasBin: true
+ dependencies:
+ isexe: registry.npmmirror.com/isexe/2.0.0
+ dev: true
+
+ registry.npmmirror.com/with/7.0.2:
+ resolution: {integrity: sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/with/-/with-7.0.2.tgz}
+ name: with
+ version: 7.0.2
+ engines: {node: '>= 10.0.0'}
+ dependencies:
+ '@babel/parser': registry.npmmirror.com/@babel/parser/7.17.3
+ '@babel/types': registry.npmmirror.com/@babel/types/7.17.0
+ assert-never: registry.npmmirror.com/assert-never/1.2.1
+ babel-walk: registry.npmmirror.com/babel-walk/3.0.0-canary-5
+ dev: true
+
+ registry.npmmirror.com/word-wrap/1.2.3:
+ resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz}
+ name: word-wrap
+ version: 1.2.3
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ registry.npmmirror.com/wrappy/1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz}
+ name: wrappy
+ version: 1.0.2
+ dev: true
+
+ registry.npmmirror.com/yallist/4.0.0:
+ resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz}
+ name: yallist
+ version: 4.0.0
+ dev: true
diff --git a/packages/vue3-ts-mpa-starter/pnpm-workspace.yaml b/packages/vue3-ts-mpa-starter/pnpm-workspace.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..4340350e1930270896b893f39423c1680da82fcb
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/pnpm-workspace.yaml
@@ -0,0 +1,2 @@
+packages:
+ - 'packages/*'
\ No newline at end of file
diff --git a/packages/vue3-ts-mpa-starter/tsconfig.json b/packages/vue3-ts-mpa-starter/tsconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..e45ff994b3067ae6a64d69b39c6eafa2e68c2481
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/tsconfig.json
@@ -0,0 +1,27 @@
+{
+ "compilerOptions": {
+ "target": "esnext",
+ "useDefineForClassFields": true,
+ "module": "esnext",
+ "moduleResolution": "node",
+ "strict": true,
+ "jsx": "preserve",
+ "sourceMap": true,
+ "resolveJsonModule": true,
+ "esModuleInterop": true,
+ "lib": ["esnext", "dom"],
+ "baseUrl": ".",
+ "paths": {
+ "@/*": ["packages/*"],
+ "@demo/*": ["packages/demo/src/*"],
+ }
+ },
+ "include": [
+ "packages/*/src/**/*.ts",
+ "packages/*/src/**/*.ts",
+ "packages/*/src/**/*.d.ts",
+ "packages/*/src/**/*.tsx",
+ "packages/*/src/**/*.vue"
+ ],
+ "references": [{ "path": "./tsconfig.node.json" }]
+}
diff --git a/vue3-ts-starter/tsconfig.node.json b/packages/vue3-ts-mpa-starter/tsconfig.node.json
similarity index 100%
rename from vue3-ts-starter/tsconfig.node.json
rename to packages/vue3-ts-mpa-starter/tsconfig.node.json
diff --git a/packages/vue3-ts-mpa-starter/vite.config.ts b/packages/vue3-ts-mpa-starter/vite.config.ts
new file mode 100644
index 0000000000000000000000000000000000000000..87a1c494ca2ed8278ec60f81cd4f92fa68b9d1b4
--- /dev/null
+++ b/packages/vue3-ts-mpa-starter/vite.config.ts
@@ -0,0 +1,32 @@
+import path from 'path';
+import { defineConfig } from 'vite';
+import vue from '@vitejs/plugin-vue';
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ base: './',
+ root: './packages',
+ build: {
+ rollupOptions: {
+ input: {
+ demo: './packages/demo/index.html',
+ },
+ },
+ outDir: '../dist',
+ },
+ resolve: {
+ alias: {
+ '@/': `${path.resolve(__dirname, './packages')}/`,
+ '@demo/': `${path.resolve(__dirname, './packages/demo/src')}/`,
+ },
+ },
+ plugins: [vue()],
+ server: {
+ proxy: {
+ '/courses': {
+ target: 'https://api.test.osinfra.cn/metadata/v1/metadata/infrastructure/playground-meta/',
+ changeOrigin: true,
+ },
+ },
+ },
+});
diff --git a/vue3-ts-starter/.eslintrc.js b/packages/vue3-ts-starter/.eslintrc.js
similarity index 100%
rename from vue3-ts-starter/.eslintrc.js
rename to packages/vue3-ts-starter/.eslintrc.js
diff --git a/packages/vue3-ts-starter/.gitignore b/packages/vue3-ts-starter/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..91a98a316c313e3cb27b9673b08d02da6427d6a9
--- /dev/null
+++ b/packages/vue3-ts-starter/.gitignore
@@ -0,0 +1,119 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+
+# Diagnostic reports (https://nodejs.org/api/report.html)
+report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+*.lcov
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# Snowpack dependency directory (https://snowpack.dev/)
+web_modules/
+
+# TypeScript cache
+*.tsbuildinfo
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Microbundle cache
+.rpt2_cache/
+.rts2_cache_cjs/
+.rts2_cache_es/
+.rts2_cache_umd/
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+.env.test
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+.parcel-cache
+
+# Next.js build output
+.next
+out
+
+# Nuxt.js build / generate output
+.nuxt
+dist
+
+# Gatsby files
+.cache/
+# Comment in the public line in if your project uses Gatsby and not Next.js
+# https://nextjs.org/blog/next-9-1#public-directory-support
+# public
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# TernJS port file
+.tern-port
+
+# Stores VSCode versions used for testing VSCode extensions
+.vscode-test
+
+# yarn v2
+.yarn/cache
+.yarn/unplugged
+.yarn/build-state.yml
+.yarn/install-state.gz
+.pnp.*
+
+# mac
+.DS_Store
diff --git a/packages/vue3-ts-starter/.prettierrc.js b/packages/vue3-ts-starter/.prettierrc.js
new file mode 100644
index 0000000000000000000000000000000000000000..68b61bd84f8ce26c59444a428810dc066808f1ab
--- /dev/null
+++ b/packages/vue3-ts-starter/.prettierrc.js
@@ -0,0 +1,5 @@
+module.exports = {
+ singleQuote: true,
+ printWidth: 160,
+ trailingComma: 'es5',
+};
diff --git a/packages/vue3-ts-starter/LICENSE b/packages/vue3-ts-starter/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..21b2a72f86c89d421e801589539dfe57fdfc6237
--- /dev/null
+++ b/packages/vue3-ts-starter/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2022 devin-cwd
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/vue3-ts-starter/README.en.md b/packages/vue3-ts-starter/README.en.md
similarity index 100%
rename from vue3-ts-starter/README.en.md
rename to packages/vue3-ts-starter/README.en.md
diff --git a/vue3-ts-starter/README.md b/packages/vue3-ts-starter/README.md
similarity index 100%
rename from vue3-ts-starter/README.md
rename to packages/vue3-ts-starter/README.md
diff --git a/vue3-ts-starter/index.html b/packages/vue3-ts-starter/index.html
similarity index 100%
rename from vue3-ts-starter/index.html
rename to packages/vue3-ts-starter/index.html
diff --git a/vue3-ts-starter/package.json b/packages/vue3-ts-starter/package.json
similarity index 96%
rename from vue3-ts-starter/package.json
rename to packages/vue3-ts-starter/package.json
index 8c26ac2d0e910a8ef7d3fef18c7a608cb73477a2..ecac3beab38b24c86601b076ff58e77eace0b732 100644
--- a/vue3-ts-starter/package.json
+++ b/packages/vue3-ts-starter/package.json
@@ -1,5 +1,5 @@
{
- "name": "vue3-starter",
+ "name": "vue3-ts-starter",
"private": true,
"version": "0.0.0",
"scripts": {
diff --git a/vue3-ts-starter/pnpm-lock.yaml b/packages/vue3-ts-starter/pnpm-lock.yaml
similarity index 100%
rename from vue3-ts-starter/pnpm-lock.yaml
rename to packages/vue3-ts-starter/pnpm-lock.yaml
diff --git a/packages/vue3-ts-starter/public/favicon.ico b/packages/vue3-ts-starter/public/favicon.ico
new file mode 100644
index 0000000000000000000000000000000000000000..ba6134a0ab94b8dd83d098e059d3c4dd93dd1041
Binary files /dev/null and b/packages/vue3-ts-starter/public/favicon.ico differ
diff --git a/packages/vue3-ts-starter/src/App.vue b/packages/vue3-ts-starter/src/App.vue
new file mode 100644
index 0000000000000000000000000000000000000000..920e66cb91cdeff4a2949ea23ca69fc51f76e356
--- /dev/null
+++ b/packages/vue3-ts-starter/src/App.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
diff --git a/vue3-ts-starter/src/api/demo.ts b/packages/vue3-ts-starter/src/api/demo.ts
similarity index 100%
rename from vue3-ts-starter/src/api/demo.ts
rename to packages/vue3-ts-starter/src/api/demo.ts
diff --git a/packages/vue3-ts-starter/src/assets/logo.png b/packages/vue3-ts-starter/src/assets/logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..eb7b8af86025b8f27fa3b2539300b24a0487895f
Binary files /dev/null and b/packages/vue3-ts-starter/src/assets/logo.png differ
diff --git a/packages/vue3-ts-starter/src/assets/svg-icons/alert-circle.svg b/packages/vue3-ts-starter/src/assets/svg-icons/alert-circle.svg
new file mode 100644
index 0000000000000000000000000000000000000000..8d02b7d16e3a27b674f4c9d5fb1d3e2cd5d8d216
--- /dev/null
+++ b/packages/vue3-ts-starter/src/assets/svg-icons/alert-circle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/vue3-ts-starter/src/assets/svg-icons/arrow-right.svg b/packages/vue3-ts-starter/src/assets/svg-icons/arrow-right.svg
new file mode 100644
index 0000000000000000000000000000000000000000..939b57c5b54ecebb4a34168643726e264846f71b
--- /dev/null
+++ b/packages/vue3-ts-starter/src/assets/svg-icons/arrow-right.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/vue3-ts-starter/src/assets/svg-icons/plus.svg b/packages/vue3-ts-starter/src/assets/svg-icons/plus.svg
new file mode 100644
index 0000000000000000000000000000000000000000..703c5b7b238e48a62e16037db25c694c59435cb8
--- /dev/null
+++ b/packages/vue3-ts-starter/src/assets/svg-icons/plus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/vue3-ts-starter/src/assets/svg-icons/x.svg b/packages/vue3-ts-starter/src/assets/svg-icons/x.svg
new file mode 100644
index 0000000000000000000000000000000000000000..7d5875ca8bc55cc694d351e16203eb462a08d3d0
--- /dev/null
+++ b/packages/vue3-ts-starter/src/assets/svg-icons/x.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/vue3-ts-starter/src/components/AppHeader.vue b/packages/vue3-ts-starter/src/components/AppHeader.vue
new file mode 100644
index 0000000000000000000000000000000000000000..66cf38160a33d5793e59545492af4e696025b81e
--- /dev/null
+++ b/packages/vue3-ts-starter/src/components/AppHeader.vue
@@ -0,0 +1,61 @@
+
+
+
+
+
diff --git a/packages/vue3-ts-starter/src/components/SvgIcon.vue b/packages/vue3-ts-starter/src/components/SvgIcon.vue
new file mode 100644
index 0000000000000000000000000000000000000000..24f4789174fa0c6f43ffe53673994ce517c05601
--- /dev/null
+++ b/packages/vue3-ts-starter/src/components/SvgIcon.vue
@@ -0,0 +1,51 @@
+
+
+
+
+
diff --git a/packages/vue3-ts-starter/src/env.d.ts b/packages/vue3-ts-starter/src/env.d.ts
new file mode 100644
index 0000000000000000000000000000000000000000..86f5534c7091e201a2712cd25eff2c21708809d0
--- /dev/null
+++ b/packages/vue3-ts-starter/src/env.d.ts
@@ -0,0 +1,8 @@
+// /
+
+declare module '*.vue' {
+ import type { DefineComponent } from 'vue';
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
+ const component: DefineComponent<{}, {}, any>;
+ export default component;
+}
diff --git a/vue3-ts-starter/src/main.ts b/packages/vue3-ts-starter/src/main.ts
similarity index 100%
rename from vue3-ts-starter/src/main.ts
rename to packages/vue3-ts-starter/src/main.ts
diff --git a/vue3-ts-starter/src/pages/demo/TheDemo.vue b/packages/vue3-ts-starter/src/pages/demo/TheDemo.vue
similarity index 100%
rename from vue3-ts-starter/src/pages/demo/TheDemo.vue
rename to packages/vue3-ts-starter/src/pages/demo/TheDemo.vue
diff --git a/vue3-ts-starter/src/pages/demo/sub-demo/SubDemo.vue b/packages/vue3-ts-starter/src/pages/demo/sub-demo/SubDemo.vue
similarity index 100%
rename from vue3-ts-starter/src/pages/demo/sub-demo/SubDemo.vue
rename to packages/vue3-ts-starter/src/pages/demo/sub-demo/SubDemo.vue
diff --git a/vue3-ts-starter/src/router.ts b/packages/vue3-ts-starter/src/router.ts
similarity index 100%
rename from vue3-ts-starter/src/router.ts
rename to packages/vue3-ts-starter/src/router.ts
diff --git a/packages/vue3-ts-starter/src/shared/axios/handleError.ts b/packages/vue3-ts-starter/src/shared/axios/handleError.ts
new file mode 100644
index 0000000000000000000000000000000000000000..d7da71389f2be4de4335b80fb58ec7acd9317c23
--- /dev/null
+++ b/packages/vue3-ts-starter/src/shared/axios/handleError.ts
@@ -0,0 +1,54 @@
+import type { AxiosError } from 'axios';
+
+export default (err: AxiosError) => {
+ const { response } = err;
+ if(response) {
+ if (!response.status) {
+ err.code = '';
+ err.message = '有response但没有response.status的情况';
+ }
+ err.code = String(response.status);
+ switch (response && response.status) {
+ case 200:
+ err.message = '错误响应也会有状态码为200的情况';
+ break;
+ case 400:
+ err.message = '请求错误(400)';
+ break;
+ case 401:
+ err.message = '未授权,请重新登录(401)';
+ break;
+ case 403:
+ err.message = '拒绝访问(403)';
+ break;
+ case 404:
+ err.message = '请求出错(404)';
+ break;
+ case 408:
+ err.message = '请求超时(408)';
+ break;
+ case 500:
+ err.message = '服务器错误(500)';
+ break;
+ case 501:
+ err.message = '服务未实现(501)';
+ break;
+ case 502:
+ err.message = '网络错误(502)';
+ break;
+ case 503:
+ err.message = '服务不可用(503)';
+ break;
+ case 504:
+ err.message = '网络超时(504)';
+ break;
+ case 505:
+ err.message = 'HTTP版本不受支持(505)';
+ break;
+ default:
+ err.message = `连接出错,状态码:(${response.status})!`;
+ }
+ }
+
+ return err;
+};
diff --git a/packages/vue3-ts-starter/src/shared/axios/handleResponse.ts b/packages/vue3-ts-starter/src/shared/axios/handleResponse.ts
new file mode 100644
index 0000000000000000000000000000000000000000..693c2d5911cdb08551fd81299682498da36a42cf
--- /dev/null
+++ b/packages/vue3-ts-starter/src/shared/axios/handleResponse.ts
@@ -0,0 +1,39 @@
+import type { AxiosResponse } from 'axios';
+// 处理响应错误码
+export default (response: AxiosResponse) => {
+ const { status } = response;
+ // 如果http响应状态码response.status正常,则直接返回数据
+ if ((status >= 200 && status <= 300) || status === 304) {
+ return response;
+ }
+ // status不正常的话,根据与后端约定好的code,做出对应的提示与处理
+ // 返回一个带有code和message属性的对象
+ else {
+ const code = parseInt(response.data && response.data.code);
+ // msg为服务端返回的错误信息,字段名服务端自定义,此处以msg为例
+ let message = (response.data || {}).msg;
+
+ switch (code) {
+ case 400:
+ break;
+ case 4001:
+ message = message || '登录设备数量超出限制';
+ break;
+ case 403:
+ message = message || '未登录';
+ break;
+ case 404:
+ message = message || '请求地址错误';
+ break;
+ case 412:
+ message = message || '未找到有效session';
+ break;
+ default:
+ break;
+ }
+ return {
+ code,
+ message,
+ };
+ }
+};
diff --git a/packages/vue3-ts-starter/src/shared/axios/index.ts b/packages/vue3-ts-starter/src/shared/axios/index.ts
new file mode 100644
index 0000000000000000000000000000000000000000..870936a4eb2197bca85a3e9b4ffa5a36984c0c16
--- /dev/null
+++ b/packages/vue3-ts-starter/src/shared/axios/index.ts
@@ -0,0 +1,161 @@
+/* eslint-disable @typescript-eslint/no-explicit-any */
+import axios from 'axios';
+import type { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, AxiosStatic } from 'axios';
+import handleResponse from './handleResponse';
+import handleError from './handleError';
+import setConfig from './setConfig';
+
+interface RequestConfig extends AxiosRequestConfig {
+ data?: D;
+ global?: boolean // 是否为全局请求, 全局请求在清除请求池时,不清除
+}
+
+interface RequestInstance extends AxiosInstance {
+ removeRequestInterceptor():void,
+ removeResponseInterceptor():void,
+ clearPendingPool(whiteList: Array): Array | null,
+ getUri(config?: RequestConfig): string;
+ request, D = any>(config: RequestConfig): Promise;
+ get, D = any>(url: string, config?: RequestConfig): Promise;
+ delete, D = any>(url: string, config?: RequestConfig): Promise;
+ head, D = any>(url: string, config?: RequestConfig): Promise;
+ options, D = any>(url: string, config?: RequestConfig): Promise;
+ post, D = any>(url: string, data?: D, config?: RequestConfig): Promise;
+ put, D = any>(url: string, data?: D, config?: RequestConfig): Promise;
+ patch, D = any>(url: string, data?: D, config?: RequestConfig): Promise;
+}
+
+/**
+ * request是基于axios创建的实例,实例只有常见的数据请求方法,没有axios.isCancel/ axios.CancelToken等方法,
+ * 也就是没有**取消请求**和**批量请求**的方法。
+ * 所以如果需要在实例中调用取消某个请求的方法(例如取消上传),请用intactRequest。
+ */
+const intactRequest: AxiosStatic = setConfig(axios);
+const request: RequestInstance = (intactRequest.create() as RequestInstance);
+
+// 请求中的api
+const pendingPool: Map = new Map();
+
+/**
+ * 请求拦截
+ */
+const requestInterceptorId = request.interceptors.request.use(
+ (config: AxiosRequestConfig) => {
+ // 存储请求信息
+ // request.config = Object.assign({}, config);
+ // 定义取消请求
+ config.cancelToken = new axios.CancelToken((cancelFn) => {
+ if(!config.url) {
+ return;
+ }
+ // 如果已请求,则取消重复请求
+ if(pendingPool.has(config.url)) {
+ cancelFn(`${config.url}请求重复`);
+ } else {
+ // 存储到请求池
+ pendingPool.set(config.url, {
+ cancelFn,
+ global: (config as RequestConfig).global,
+ });
+ }
+ });
+ return config;
+ },
+ (err: AxiosError) => {
+ Promise.reject(err);
+ },
+);
+
+/**
+ * 响应拦截
+ */
+const responseInterceptorId = request.interceptors.response.use(
+ (response: AxiosResponse) => {
+ const { config } = response;
+ // 请求完成,移除请求池
+ if(config.url) {
+ pendingPool.delete(config.url);
+ }
+
+ return Promise.resolve(handleResponse(response));
+ },
+ (err: AxiosError) => {
+ const { config } = err;
+
+ // 非取消请求发生异常,同样将请求移除请求池
+ if (!axios.isCancel(err) && config.url) {
+ pendingPool.delete(config.url);
+ }
+
+ if (err.response) {
+ err = handleError(err);
+ }
+ // 没有response(没有状态码)的情况
+ // 如: 超时;断网;请求重复被取消;主动取消请求;
+ else {
+ // 被取消的请求
+ if (axios.isCancel(err)) {
+ throw new axios.Cancel(
+ err.message || `请求'${config.url}'被取消`,
+ );
+ } else if (err.stack && err.stack.includes('timeout')) {
+ err.message = '请求超时!';
+ } else {
+ err.message = '连接服务器失败!';
+ }
+ }
+ return Promise.reject(err);
+ },
+);
+// 移除全局的请求拦截器
+function removeRequestInterceptor () {
+ request.interceptors.request.eject(requestInterceptorId);
+}
+
+// 移除全局的响应拦截器
+function removeResponseInterceptor () {
+ request.interceptors.response.eject(responseInterceptorId);
+}
+
+/**
+ * 清除所有pending状态的请求
+ * @param {Array} whiteList 白名单,里面的请求不会被取消
+ * 返回值 被取消了的api请求
+ * 可以在路由变化时取消当前所有非全局的pending状态的请求
+ */
+function clearPendingPool (whiteList: Array = []) {
+ if (!pendingPool.size) {
+ return null;
+ }
+
+ const pendingUrlList: Array = Array.from(pendingPool.keys()).filter(
+ (url: string) => !whiteList.includes(url),
+ );
+ if (!pendingUrlList.length) {
+ return null;
+ }
+
+ pendingUrlList.forEach((pendingUrl) => {
+ // 清除掉所有非全局的pending状态下的请求
+ if (!pendingPool.get(pendingUrl).global) {
+ pendingPool.get(pendingUrl).cancelFn();
+ pendingPool.delete(pendingUrl);
+ }
+ });
+
+ return pendingUrlList;
+}
+
+request.removeRequestInterceptor = removeRequestInterceptor;
+request.removeResponseInterceptor = removeResponseInterceptor;
+request.clearPendingPool = clearPendingPool;
+
+
+export {
+ intactRequest,
+ request,
+ // interface
+ AxiosResponse,
+ RequestConfig,
+ RequestInstance,
+};
diff --git a/packages/vue3-ts-starter/src/shared/axios/setConfig.ts b/packages/vue3-ts-starter/src/shared/axios/setConfig.ts
new file mode 100644
index 0000000000000000000000000000000000000000..8072e351a1b72fd2bcdfac9ce54654fe16e9c2ab
--- /dev/null
+++ b/packages/vue3-ts-starter/src/shared/axios/setConfig.ts
@@ -0,0 +1,17 @@
+import type { AxiosStatic } from 'axios';
+
+/**
+ * @param {axios} axios实例
+ * @param {config} 自定义配置对象,可覆盖掉默认的自定义配置
+ */
+export default (axios: AxiosStatic, config = {}) => {
+ const defaultConfig = {
+ baseURL: '',
+ timeout: 20000,
+ headers: {
+ 'Content-Type': 'application/json;charset=UTF-8',
+ },
+ };
+ Object.assign(axios.defaults, defaultConfig, config);
+ return axios;
+};
diff --git a/packages/vue3-ts-starter/src/shared/styles/base.scss b/packages/vue3-ts-starter/src/shared/styles/base.scss
new file mode 100644
index 0000000000000000000000000000000000000000..c518136db088e3d79a691e23e04c374c0e54f09a
--- /dev/null
+++ b/packages/vue3-ts-starter/src/shared/styles/base.scss
@@ -0,0 +1,46 @@
+@import "normalize.css";
+
+/* base */
+html,
+body {
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ -webkit-text-size-adjust: none;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
+
+ box-sizing: border-box;
+ font-family: "HarmonyOS Sans", "HarmonyOS Sans SC", "HarmonyOS Sans Web",
+ "HarmonyOS Sans SC Web", -apple-system, BlinkMacSystemFont, "Segoe UI",
+ Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif,
+ "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ /* user-select: none; */
+}
+
+body {
+ overflow-x: hidden;
+ overflow-y: auto;
+}
+
+*,
+:after,
+:before {
+ box-sizing: inherit;
+ margin: 0;
+ padding: 0;
+}
+
+img {
+ vertical-align: top;
+}
+
+[tabindex] {
+ outline: none;
+}
+
+a {
+ text-decoration: none;
+}
diff --git a/packages/vue3-ts-starter/src/stores/counter.ts b/packages/vue3-ts-starter/src/stores/counter.ts
new file mode 100644
index 0000000000000000000000000000000000000000..0ade93fce9322cbce2127dd084898695f77bdbfc
--- /dev/null
+++ b/packages/vue3-ts-starter/src/stores/counter.ts
@@ -0,0 +1,11 @@
+import { defineStore } from 'pinia';
+import { ref } from 'vue';
+
+export const useCounter = defineStore('counter', () => {
+ const count = ref(0);
+ const increment = () => {
+ count.value++;
+ };
+
+ return { count, increment };
+});
diff --git a/vue3-ts-starter/tsconfig.json b/packages/vue3-ts-starter/tsconfig.json
similarity index 100%
rename from vue3-ts-starter/tsconfig.json
rename to packages/vue3-ts-starter/tsconfig.json
diff --git a/packages/vue3-ts-starter/tsconfig.node.json b/packages/vue3-ts-starter/tsconfig.node.json
new file mode 100644
index 0000000000000000000000000000000000000000..a0c7a49609d40b6cc0ca339c4ad74b694a24c7be
--- /dev/null
+++ b/packages/vue3-ts-starter/tsconfig.node.json
@@ -0,0 +1,10 @@
+{
+ "compilerOptions": {
+ "composite": true,
+ "module": "esnext",
+ "moduleResolution": "node",
+ "allowSyntheticDefaultImports": true,
+ "types": ["node"]
+ },
+ "include": ["vite.config.ts"]
+}
diff --git a/vue3-ts-starter/vite.config.ts b/packages/vue3-ts-starter/vite.config.ts
similarity index 100%
rename from vue3-ts-starter/vite.config.ts
rename to packages/vue3-ts-starter/vite.config.ts