139 | ) {
140 | if (typeof res.default !== 'function') {
141 | return Promise.reject(`[MicroApp] - 导出格式不正确: ${entry}`);
142 | }
143 | const config = res.default(containerRef.current) as AppConfig;
144 | if (!(config.mount || config.render)) {
145 | return Promise.reject(
146 | `[MicroApp] - 导出方法缺失 'mount' 或 'render': ${entry}`
147 | );
148 | }
149 | if (config.mount && !config.unmount) {
150 | return Promise.reject(`[MicroApp] - 导出方法缺失 'unmount': ${entry}`);
151 | }
152 | return config;
153 | }
154 |
--------------------------------------------------------------------------------
/packages/micro-app/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "dist",
4 | "declaration": true,
5 | "target": "ESNext",
6 | "useDefineForClassFields": true,
7 | "lib": ["DOM", "DOM.Iterable", "ESNext"],
8 | "allowJs": false,
9 | "skipLibCheck": false,
10 | "esModuleInterop": false,
11 | "allowSyntheticDefaultImports": true,
12 | "strict": true,
13 | "forceConsistentCasingInFileNames": true,
14 | "module": "ESNext",
15 | "moduleResolution": "Node",
16 | "resolveJsonModule": true,
17 | "isolatedModules": true,
18 | "jsx": "react"
19 | },
20 | "include": ["./src"]
21 | }
22 |
--------------------------------------------------------------------------------
/packages/micro-sub/README.md:
--------------------------------------------------------------------------------
1 | # @micro-web/sub
2 |
3 | [![NPM version][npm-image]][npm-url]
4 | [![Downloads][downloads-image]][downloads-url]
5 | [![Minified size][min-size-image]][bundlephobia-url]
6 | [![Gzip size][gzip-size-image]][bundlephobia-url]
7 |
8 | `@micro-web/app` 微应用解决方案 **子应用定义**
9 |
10 | ## 安装
11 |
12 | ```bash
13 | pnpm i @micro-web/sub
14 | ```
15 |
16 | ## 使用
17 |
18 | ```tsx
19 | import { defineMicroApp } from '@micro-web/sub';
20 | import App, { AppProps } from './App';
21 |
22 | export default defineMicroApp((container) => {
23 | function render(props: AppProps) {
24 | ReactDOM.render(, container);
25 | }
26 | return {
27 | mount: render,
28 | render: render,
29 | unmount() {
30 | ReactDOM.unmountComponentAtNode(container);
31 | },
32 | };
33 | });
34 | ```
35 |
36 | ### `defineMicroApp`
37 |
38 | 需配合插件 ` @micro-web/vite-plugin`。其主要作用将 CSS 通过 `link` 标签插入到主应用的动态节点上。
39 |
40 | [npm-image]: https://img.shields.io/npm/v/@micro-web/sub.svg?style=flat-square
41 | [npm-url]: https://npmjs.org/package/@micro-web/sub
42 | [downloads-image]: http://img.shields.io/npm/dm/@micro-web/sub.svg?style=flat-square
43 | [downloads-url]: https://npmjs.org/package/@micro-web/sub
44 | [min-size-image]: https://badgen.net/bundlephobia/min/@micro-web/sub?label=minified
45 | [gzip-size-image]: https://badgen.net/bundlephobia/minzip/@micro-web/sub?label=gzip
46 | [bundlephobia-url]: https://bundlephobia.com/result?p=@micro-web/sub
47 |
--------------------------------------------------------------------------------
/packages/micro-sub/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@micro-web/sub",
3 | "version": "0.2.3",
4 | "description": "@micro-web/app 微前端方案应用接入",
5 | "type": "module",
6 | "module": "./dist/index.js",
7 | "types": "./dist/index.d.ts",
8 | "publishConfig": {
9 | "access": "public"
10 | },
11 | "keywords": [
12 | "micro",
13 | "micro app",
14 | "micro vite",
15 | "vite plugin"
16 | ],
17 | "scripts": {
18 | "build": "tsc"
19 | },
20 | "repository": {
21 | "type": "git",
22 | "url": "git+https://github.com/MinJieLiu/micro-app.git"
23 | },
24 | "author": "MinJieLiu",
25 | "license": "MIT",
26 | "bugs": {
27 | "url": "https://github.com/MinJieLiu/micro-app/issues"
28 | },
29 | "homepage": "https://github.com/MinJieLiu/micro-app#readme",
30 | "files": [
31 | "src",
32 | "dist"
33 | ]
34 | }
35 |
--------------------------------------------------------------------------------
/packages/micro-sub/src/defineMicroApp.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * App 格式
3 | */
4 | export interface AppConfig {
5 | /**
6 | * 挂载
7 | */
8 | mount?: (props: P) => void;
9 | /**
10 | * 更新
11 | */
12 | render?: (props: P) => any;
13 | /**
14 | * 卸载
15 | */
16 | unmount?: () => void;
17 | }
18 |
19 | type MicroCallback
= (container: HTMLElement) => AppConfig
;
20 |
21 | export interface DefineApp
extends MicroCallback
{
22 | /**
23 | * 样式注入方法,配合 vite 插件
24 | */
25 | styleInject?: (container: HTMLElement) => void;
26 | }
27 |
28 | /**
29 | * 定义 micro app,额外处理样式问题
30 | */
31 | export function defineMicroApp
(callback: MicroCallback
) {
32 | const defineApp: DefineApp
= (container: HTMLElement) => {
33 | const appConfig = callback(container);
34 |
35 | // 处理样式局部插入
36 | const mountFn = appConfig.mount;
37 | const inject = defineApp.styleInject;
38 | if (mountFn && inject) {
39 | appConfig.mount = (props) => {
40 | mountFn(props);
41 | inject(container);
42 | };
43 | }
44 | return appConfig;
45 | };
46 |
47 | return defineApp;
48 | }
49 |
--------------------------------------------------------------------------------
/packages/micro-sub/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './defineMicroApp';
2 |
--------------------------------------------------------------------------------
/packages/micro-sub/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "dist",
4 | "declaration": true,
5 | "target": "ESNext",
6 | "useDefineForClassFields": true,
7 | "lib": ["DOM", "DOM.Iterable", "ESNext"],
8 | "allowJs": false,
9 | "skipLibCheck": true,
10 | "esModuleInterop": false,
11 | "allowSyntheticDefaultImports": true,
12 | "strict": true,
13 | "forceConsistentCasingInFileNames": true,
14 | "module": "ESNext",
15 | "moduleResolution": "Node",
16 | "resolveJsonModule": true,
17 | "isolatedModules": true,
18 | "jsx": "react"
19 | },
20 | "include": ["./src"]
21 | }
22 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/.gitignore:
--------------------------------------------------------------------------------
1 | *.js
2 | *.d.ts
3 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/.npmignore:
--------------------------------------------------------------------------------
1 | # misc
2 | .DS_Store
3 | .env
4 | .env.local
5 | .env.development.local
6 | .env.test.local
7 | .env.production.local
8 |
9 | yarn.lock
10 | npm-debug.log*
11 | yarn-debug.log*
12 | yarn-error.log*
13 |
14 |
15 | /coverage
16 | .idea
17 | package-lock.json
18 | *bak
19 | .vscode
20 |
21 | # visual studio code
22 | .history
23 | *.log
24 | functions/*
25 | .temp/**
26 | /.vscode
27 |
28 | # screenshot
29 | screenshot
30 | .firebase
31 | .eslintcache
32 |
33 | stats.html
34 | .travis.yml
35 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/README.md:
--------------------------------------------------------------------------------
1 | # @micro-web/vite-plugin
2 |
3 | [![NPM version][npm-image]][npm-url]
4 | [![Downloads][downloads-image]][downloads-url]
5 | [![Minified size][min-size-image]][bundlephobia-url]
6 | [![Gzip size][gzip-size-image]][bundlephobia-url]
7 |
8 | `@micro-web/app` 微应用解决方案 **Vite 插件**
9 |
10 | ## 安装
11 |
12 | ```bash
13 | pnpm i @micro-web/vite-plugin
14 | ```
15 |
16 | ## 特性
17 |
18 | - 创建极小的入口文件 `main.js`,配合 `hash` 和主应用时间戳缓存处理
19 | - 将 `CSS` 动态插入到 `` 创建的节点上
20 | - 预设微应用所需的 `Vite` 配置
21 | - 修正图片资源使用绝对地址
22 |
23 | ## 使用
24 |
25 | ```tsx
26 | import { microWebPlugin } from '@micro-web/vite-plugin';
27 |
28 | export default defineConfig({
29 | plugins: [react(), microWebPlugin()],
30 | });
31 | ```
32 |
33 | [npm-image]: https://img.shields.io/npm/v/@micro-web/vite-plugin.svg?style=flat-square
34 | [npm-url]: https://npmjs.org/package/@micro-web/vite-plugin
35 | [downloads-image]: http://img.shields.io/npm/dm/@micro-web/vite-plugin.svg?style=flat-square
36 | [downloads-url]: https://npmjs.org/package/@micro-web/vite-plugin
37 | [min-size-image]: https://badgen.net/bundlephobia/min/@micro-web/vite-plugin?label=minified
38 | [gzip-size-image]: https://badgen.net/bundlephobia/minzip/@micro-web/vite-plugin?label=gzip
39 | [bundlephobia-url]: https://bundlephobia.com/result?p=@micro-web/vite-plugin
40 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/index.ts:
--------------------------------------------------------------------------------
1 | import type { Plugin } from 'vite';
2 | import { transformWithEsbuild } from 'vite';
3 |
4 | const imagesRE = new RegExp(`\\.(png|webp|jpg|gif|jpeg|tiff|svg|bmp)($|\\?)`);
5 |
6 | export interface microWebPluginParams {
7 | styleAppendTo?: string;
8 | }
9 |
10 | /**
11 | * @micro-web/app 微前端方案插件
12 | */
13 | export function microWebPlugin({
14 | styleAppendTo = 'parentNode',
15 | }: microWebPluginParams): Plugin {
16 | return {
17 | name: 'micro-web-plugin',
18 | enforce: 'post',
19 | config() {
20 | return {
21 | build: {
22 | // es2020 支持 import.meta 语法
23 | target: 'es2020',
24 | // 打包为一个 CSS 文件,通过 main.js 自行插入,不自动插入到 header 中
25 | cssCodeSplit: false,
26 | rollupOptions: {
27 | // 用于控制 Rollup 尝试确保入口块与基础入口模块具有相同的导出
28 | preserveEntrySignatures: 'allow-extension',
29 | input: 'src/main.tsx',
30 | },
31 | },
32 | };
33 | },
34 | transform(code, id) {
35 | // 修正图片资源使用绝对地址
36 | if (imagesRE.test(id)) {
37 | return {
38 | code: code.replace(
39 | /(export\s+default)\s+(".+")/,
40 | `$1 new URL($2, import.meta['url']).href`
41 | ),
42 | map: null,
43 | };
44 | }
45 | return undefined;
46 | },
47 | async generateBundle(options, bundle) {
48 | let entry: string | undefined;
49 | const cssChunks: string[] = [];
50 | for (const chunkName of Object.keys(bundle)) {
51 | if (chunkName.includes('main') && chunkName.endsWith('.js')) {
52 | entry = chunkName;
53 | }
54 | if (chunkName.endsWith('.css')) {
55 | cssChunks.push(`./${chunkName}`);
56 | }
57 | }
58 | if (entry) {
59 | const cssChunksStr = JSON.stringify(cssChunks);
60 |
61 | // 修正 css 插入的位置
62 | const result = await transformWithEsbuild(
63 | `
64 | import defineApp from './${entry}?microAppEnv';
65 |
66 | function createLink(href) {
67 | const link = document.createElement('link');
68 | link.rel = 'stylesheet';
69 | link.href = href;
70 | link.id = href;
71 | return link;
72 | }
73 |
74 | const styles = ${cssChunksStr}.map(css => createLink(new URL(css, import.meta['url'])));
75 |
76 | defineApp.styleInject = (parentNode) => {
77 | styles.forEach((link) => {
78 | if (!document.getElementById(link.id)) {
79 | ${styleAppendTo}.append(link);
80 | }
81 | });
82 | };
83 |
84 | export default defineApp;
85 | `,
86 | 'main.js',
87 | { minify: true }
88 | );
89 |
90 | // 导出微量体积入口文件,配合 hash 和主应用时间戳缓存处理
91 | this.emitFile({
92 | fileName: 'main.js',
93 | type: 'asset',
94 | source: result.code,
95 | });
96 | }
97 | },
98 | };
99 | }
100 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@micro-web/vite-plugin",
3 | "version": "0.3.0",
4 | "description": "@micro-web/app 微前端方案 Vite 插件",
5 | "main": "./index.js",
6 | "types": "./index.d.ts",
7 | "publishConfig": {
8 | "access": "public"
9 | },
10 | "keywords": [
11 | "micro",
12 | "micro app",
13 | "micro vite",
14 | "vite plugin"
15 | ],
16 | "scripts": {
17 | "build": "tsc"
18 | },
19 | "repository": {
20 | "type": "git",
21 | "url": "git+https://github.com/MinJieLiu/micro-app.git"
22 | },
23 | "author": "MinJieLiu",
24 | "license": "MIT",
25 | "bugs": {
26 | "url": "https://github.com/MinJieLiu/micro-app/issues"
27 | },
28 | "homepage": "https://github.com/MinJieLiu/micro-app#readme",
29 | "devDependencies": {
30 | "vite": "^3.1.3"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/packages/micro-vite-plugin/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "declaration": true,
4 | "target": "ESNext",
5 | "useDefineForClassFields": true,
6 | "lib": ["DOM", "DOM.Iterable", "ESNext"],
7 | "allowJs": false,
8 | "skipLibCheck": true,
9 | "esModuleInterop": false,
10 | "allowSyntheticDefaultImports": true,
11 | "strict": true,
12 | "forceConsistentCasingInFileNames": true,
13 | "module": "CommonJS",
14 | "moduleResolution": "Node",
15 | "resolveJsonModule": true,
16 | "isolatedModules": true,
17 | "jsx": "react"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | importers:
4 |
5 | .:
6 | specifiers:
7 | prettier: ^2.7.1
8 | typescript: ^4.8.3
9 | devDependencies:
10 | prettier: 2.7.1
11 | typescript: 4.8.3
12 |
13 | packages/micro-app:
14 | specifiers:
15 | '@types/react': ^18.0.20
16 | react: ^18.2.0
17 | devDependencies:
18 | '@types/react': 18.0.20
19 | react: 18.2.0
20 |
21 | packages/micro-app-vue:
22 | specifiers:
23 | '@types/node': ^18.7.18
24 | '@vitejs/plugin-vue': ^3.1.0
25 | '@vitejs/plugin-vue-jsx': ^2.0.1
26 | vite: ^3.1.3
27 | vue: ^3.2.39
28 | vue-tsc: ^0.40.13
29 | devDependencies:
30 | '@types/node': 18.7.18
31 | '@vitejs/plugin-vue': 3.1.0_vite@3.1.3+vue@3.2.39
32 | '@vitejs/plugin-vue-jsx': 2.0.1_vite@3.1.3+vue@3.2.39
33 | vite: 3.1.3
34 | vue: 3.2.39
35 | vue-tsc: 0.40.13
36 |
37 | packages/micro-sub:
38 | specifiers: {}
39 |
40 | packages/micro-vite-plugin:
41 | specifiers:
42 | vite: ^3.1.3
43 | devDependencies:
44 | vite: 3.1.3
45 |
46 | packages:
47 |
48 | /@ampproject/remapping/2.1.2:
49 | resolution: {integrity: sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==}
50 | engines: {node: '>=6.0.0'}
51 | dependencies:
52 | '@jridgewell/trace-mapping': 0.3.4
53 | dev: true
54 |
55 | /@babel/code-frame/7.18.6:
56 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==}
57 | engines: {node: '>=6.9.0'}
58 | dependencies:
59 | '@babel/highlight': 7.18.6
60 | dev: true
61 |
62 | /@babel/compat-data/7.19.1:
63 | resolution: {integrity: sha512-72a9ghR0gnESIa7jBN53U32FOVCEoztyIlKaNoU05zRhEecduGK9L9c3ww7Mp06JiR+0ls0GBPFJQwwtjn9ksg==}
64 | engines: {node: '>=6.9.0'}
65 | dev: true
66 |
67 | /@babel/core/7.19.1:
68 | resolution: {integrity: sha512-1H8VgqXme4UXCRv7/Wa1bq7RVymKOzC7znjyFM8KiEzwFqcKUKYNoQef4GhdklgNvoBXyW4gYhuBNCM5o1zImw==}
69 | engines: {node: '>=6.9.0'}
70 | dependencies:
71 | '@ampproject/remapping': 2.1.2
72 | '@babel/code-frame': 7.18.6
73 | '@babel/generator': 7.19.0
74 | '@babel/helper-compilation-targets': 7.19.1_@babel+core@7.19.1
75 | '@babel/helper-module-transforms': 7.19.0
76 | '@babel/helpers': 7.19.0
77 | '@babel/parser': 7.19.1
78 | '@babel/template': 7.18.10
79 | '@babel/traverse': 7.19.1
80 | '@babel/types': 7.19.0
81 | convert-source-map: 1.8.0
82 | debug: 4.3.3
83 | gensync: 1.0.0-beta.2
84 | json5: 2.2.1
85 | semver: 6.3.0
86 | transitivePeerDependencies:
87 | - supports-color
88 | dev: true
89 |
90 | /@babel/generator/7.19.0:
91 | resolution: {integrity: sha512-S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg==}
92 | engines: {node: '>=6.9.0'}
93 | dependencies:
94 | '@babel/types': 7.19.0
95 | '@jridgewell/gen-mapping': 0.3.2
96 | jsesc: 2.5.2
97 | dev: true
98 |
99 | /@babel/helper-annotate-as-pure/7.18.6:
100 | resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==}
101 | engines: {node: '>=6.9.0'}
102 | dependencies:
103 | '@babel/types': 7.19.0
104 | dev: true
105 |
106 | /@babel/helper-compilation-targets/7.19.1_@babel+core@7.19.1:
107 | resolution: {integrity: sha512-LlLkkqhCMyz2lkQPvJNdIYU7O5YjWRgC2R4omjCTpZd8u8KMQzZvX4qce+/BluN1rcQiV7BoGUpmQ0LeHerbhg==}
108 | engines: {node: '>=6.9.0'}
109 | peerDependencies:
110 | '@babel/core': ^7.0.0
111 | dependencies:
112 | '@babel/compat-data': 7.19.1
113 | '@babel/core': 7.19.1
114 | '@babel/helper-validator-option': 7.18.6
115 | browserslist: 4.21.4
116 | semver: 6.3.0
117 | dev: true
118 |
119 | /@babel/helper-create-class-features-plugin/7.19.0_@babel+core@7.19.1:
120 | resolution: {integrity: sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==}
121 | engines: {node: '>=6.9.0'}
122 | peerDependencies:
123 | '@babel/core': ^7.0.0
124 | dependencies:
125 | '@babel/core': 7.19.1
126 | '@babel/helper-annotate-as-pure': 7.18.6
127 | '@babel/helper-environment-visitor': 7.18.9
128 | '@babel/helper-function-name': 7.19.0
129 | '@babel/helper-member-expression-to-functions': 7.18.9
130 | '@babel/helper-optimise-call-expression': 7.18.6
131 | '@babel/helper-replace-supers': 7.19.1
132 | '@babel/helper-split-export-declaration': 7.18.6
133 | transitivePeerDependencies:
134 | - supports-color
135 | dev: true
136 |
137 | /@babel/helper-environment-visitor/7.16.7:
138 | resolution: {integrity: sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==}
139 | engines: {node: '>=6.9.0'}
140 | dependencies:
141 | '@babel/types': 7.19.0
142 | dev: true
143 |
144 | /@babel/helper-environment-visitor/7.18.9:
145 | resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==}
146 | engines: {node: '>=6.9.0'}
147 | dev: true
148 |
149 | /@babel/helper-function-name/7.16.7:
150 | resolution: {integrity: sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==}
151 | engines: {node: '>=6.9.0'}
152 | dependencies:
153 | '@babel/helper-get-function-arity': 7.16.7
154 | '@babel/template': 7.18.10
155 | '@babel/types': 7.19.0
156 | dev: true
157 |
158 | /@babel/helper-function-name/7.19.0:
159 | resolution: {integrity: sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==}
160 | engines: {node: '>=6.9.0'}
161 | dependencies:
162 | '@babel/template': 7.18.10
163 | '@babel/types': 7.19.0
164 | dev: true
165 |
166 | /@babel/helper-get-function-arity/7.16.7:
167 | resolution: {integrity: sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==}
168 | engines: {node: '>=6.9.0'}
169 | dependencies:
170 | '@babel/types': 7.19.0
171 | dev: true
172 |
173 | /@babel/helper-hoist-variables/7.16.7:
174 | resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==}
175 | engines: {node: '>=6.9.0'}
176 | dependencies:
177 | '@babel/types': 7.19.0
178 | dev: true
179 |
180 | /@babel/helper-hoist-variables/7.18.6:
181 | resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==}
182 | engines: {node: '>=6.9.0'}
183 | dependencies:
184 | '@babel/types': 7.19.0
185 | dev: true
186 |
187 | /@babel/helper-member-expression-to-functions/7.18.9:
188 | resolution: {integrity: sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==}
189 | engines: {node: '>=6.9.0'}
190 | dependencies:
191 | '@babel/types': 7.19.0
192 | dev: true
193 |
194 | /@babel/helper-module-imports/7.16.7:
195 | resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==}
196 | engines: {node: '>=6.9.0'}
197 | dependencies:
198 | '@babel/types': 7.19.0
199 | dev: true
200 |
201 | /@babel/helper-module-imports/7.18.6:
202 | resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==}
203 | engines: {node: '>=6.9.0'}
204 | dependencies:
205 | '@babel/types': 7.19.0
206 | dev: true
207 |
208 | /@babel/helper-module-transforms/7.19.0:
209 | resolution: {integrity: sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==}
210 | engines: {node: '>=6.9.0'}
211 | dependencies:
212 | '@babel/helper-environment-visitor': 7.18.9
213 | '@babel/helper-module-imports': 7.18.6
214 | '@babel/helper-simple-access': 7.18.6
215 | '@babel/helper-split-export-declaration': 7.18.6
216 | '@babel/helper-validator-identifier': 7.19.1
217 | '@babel/template': 7.18.10
218 | '@babel/traverse': 7.19.1
219 | '@babel/types': 7.19.0
220 | transitivePeerDependencies:
221 | - supports-color
222 | dev: true
223 |
224 | /@babel/helper-optimise-call-expression/7.18.6:
225 | resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==}
226 | engines: {node: '>=6.9.0'}
227 | dependencies:
228 | '@babel/types': 7.19.0
229 | dev: true
230 |
231 | /@babel/helper-plugin-utils/7.16.7:
232 | resolution: {integrity: sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==}
233 | engines: {node: '>=6.9.0'}
234 | dev: true
235 |
236 | /@babel/helper-plugin-utils/7.19.0:
237 | resolution: {integrity: sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==}
238 | engines: {node: '>=6.9.0'}
239 | dev: true
240 |
241 | /@babel/helper-replace-supers/7.19.1:
242 | resolution: {integrity: sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==}
243 | engines: {node: '>=6.9.0'}
244 | dependencies:
245 | '@babel/helper-environment-visitor': 7.18.9
246 | '@babel/helper-member-expression-to-functions': 7.18.9
247 | '@babel/helper-optimise-call-expression': 7.18.6
248 | '@babel/traverse': 7.19.1
249 | '@babel/types': 7.19.0
250 | transitivePeerDependencies:
251 | - supports-color
252 | dev: true
253 |
254 | /@babel/helper-simple-access/7.18.6:
255 | resolution: {integrity: sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==}
256 | engines: {node: '>=6.9.0'}
257 | dependencies:
258 | '@babel/types': 7.19.0
259 | dev: true
260 |
261 | /@babel/helper-split-export-declaration/7.16.7:
262 | resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==}
263 | engines: {node: '>=6.9.0'}
264 | dependencies:
265 | '@babel/types': 7.19.0
266 | dev: true
267 |
268 | /@babel/helper-split-export-declaration/7.18.6:
269 | resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==}
270 | engines: {node: '>=6.9.0'}
271 | dependencies:
272 | '@babel/types': 7.19.0
273 | dev: true
274 |
275 | /@babel/helper-string-parser/7.18.10:
276 | resolution: {integrity: sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==}
277 | engines: {node: '>=6.9.0'}
278 | dev: true
279 |
280 | /@babel/helper-validator-identifier/7.16.7:
281 | resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==}
282 | engines: {node: '>=6.9.0'}
283 | dev: true
284 |
285 | /@babel/helper-validator-identifier/7.19.1:
286 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
287 | engines: {node: '>=6.9.0'}
288 | dev: true
289 |
290 | /@babel/helper-validator-option/7.18.6:
291 | resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==}
292 | engines: {node: '>=6.9.0'}
293 | dev: true
294 |
295 | /@babel/helpers/7.19.0:
296 | resolution: {integrity: sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==}
297 | engines: {node: '>=6.9.0'}
298 | dependencies:
299 | '@babel/template': 7.18.10
300 | '@babel/traverse': 7.19.1
301 | '@babel/types': 7.19.0
302 | transitivePeerDependencies:
303 | - supports-color
304 | dev: true
305 |
306 | /@babel/highlight/7.18.6:
307 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==}
308 | engines: {node: '>=6.9.0'}
309 | dependencies:
310 | '@babel/helper-validator-identifier': 7.19.1
311 | chalk: 2.4.2
312 | js-tokens: 4.0.0
313 | dev: true
314 |
315 | /@babel/parser/7.17.7:
316 | resolution: {integrity: sha512-bm3AQf45vR4gKggRfvJdYJ0gFLoCbsPxiFLSH6hTVYABptNHY6l9NrhnucVjQ/X+SPtLANT9lc0fFhikj+VBRA==}
317 | engines: {node: '>=6.0.0'}
318 | hasBin: true
319 | dependencies:
320 | '@babel/types': 7.17.0
321 | dev: true
322 |
323 | /@babel/parser/7.19.1:
324 | resolution: {integrity: sha512-h7RCSorm1DdTVGJf3P2Mhj3kdnkmF/EiysUkzS2TdgAYqyjFdMQJbVuXOBej2SBJaXan/lIVtT6KkGbyyq753A==}
325 | engines: {node: '>=6.0.0'}
326 | hasBin: true
327 | dependencies:
328 | '@babel/types': 7.19.0
329 | dev: true
330 |
331 | /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.19.1:
332 | resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
333 | peerDependencies:
334 | '@babel/core': ^7.0.0-0
335 | dependencies:
336 | '@babel/core': 7.19.1
337 | '@babel/helper-plugin-utils': 7.16.7
338 | dev: true
339 |
340 | /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.19.1:
341 | resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==}
342 | engines: {node: '>=6.9.0'}
343 | peerDependencies:
344 | '@babel/core': ^7.0.0-0
345 | dependencies:
346 | '@babel/core': 7.19.1
347 | '@babel/helper-plugin-utils': 7.19.0
348 | dev: true
349 |
350 | /@babel/plugin-syntax-typescript/7.18.6_@babel+core@7.19.1:
351 | resolution: {integrity: sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==}
352 | engines: {node: '>=6.9.0'}
353 | peerDependencies:
354 | '@babel/core': ^7.0.0-0
355 | dependencies:
356 | '@babel/core': 7.19.1
357 | '@babel/helper-plugin-utils': 7.19.0
358 | dev: true
359 |
360 | /@babel/plugin-transform-typescript/7.19.1_@babel+core@7.19.1:
361 | resolution: {integrity: sha512-+ILcOU+6mWLlvCwnL920m2Ow3wWx3Wo8n2t5aROQmV55GZt+hOiLvBaa3DNzRjSEHa1aauRs4/YLmkCfFkhhRQ==}
362 | engines: {node: '>=6.9.0'}
363 | peerDependencies:
364 | '@babel/core': ^7.0.0-0
365 | dependencies:
366 | '@babel/core': 7.19.1
367 | '@babel/helper-create-class-features-plugin': 7.19.0_@babel+core@7.19.1
368 | '@babel/helper-plugin-utils': 7.19.0
369 | '@babel/plugin-syntax-typescript': 7.18.6_@babel+core@7.19.1
370 | transitivePeerDependencies:
371 | - supports-color
372 | dev: true
373 |
374 | /@babel/template/7.16.7:
375 | resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==}
376 | engines: {node: '>=6.9.0'}
377 | dependencies:
378 | '@babel/code-frame': 7.18.6
379 | '@babel/parser': 7.19.1
380 | '@babel/types': 7.19.0
381 | dev: true
382 |
383 | /@babel/template/7.18.10:
384 | resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==}
385 | engines: {node: '>=6.9.0'}
386 | dependencies:
387 | '@babel/code-frame': 7.18.6
388 | '@babel/parser': 7.19.1
389 | '@babel/types': 7.19.0
390 | dev: true
391 |
392 | /@babel/traverse/7.17.3:
393 | resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==}
394 | engines: {node: '>=6.9.0'}
395 | dependencies:
396 | '@babel/code-frame': 7.18.6
397 | '@babel/generator': 7.19.0
398 | '@babel/helper-environment-visitor': 7.16.7
399 | '@babel/helper-function-name': 7.16.7
400 | '@babel/helper-hoist-variables': 7.16.7
401 | '@babel/helper-split-export-declaration': 7.16.7
402 | '@babel/parser': 7.19.1
403 | '@babel/types': 7.19.0
404 | debug: 4.3.3
405 | globals: 11.12.0
406 | transitivePeerDependencies:
407 | - supports-color
408 | dev: true
409 |
410 | /@babel/traverse/7.19.1:
411 | resolution: {integrity: sha512-0j/ZfZMxKukDaag2PtOPDbwuELqIar6lLskVPPJDjXMXjfLb1Obo/1yjxIGqqAJrmfaTIY3z2wFLAQ7qSkLsuA==}
412 | engines: {node: '>=6.9.0'}
413 | dependencies:
414 | '@babel/code-frame': 7.18.6
415 | '@babel/generator': 7.19.0
416 | '@babel/helper-environment-visitor': 7.18.9
417 | '@babel/helper-function-name': 7.19.0
418 | '@babel/helper-hoist-variables': 7.18.6
419 | '@babel/helper-split-export-declaration': 7.18.6
420 | '@babel/parser': 7.19.1
421 | '@babel/types': 7.19.0
422 | debug: 4.3.3
423 | globals: 11.12.0
424 | transitivePeerDependencies:
425 | - supports-color
426 | dev: true
427 |
428 | /@babel/types/7.17.0:
429 | resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==}
430 | engines: {node: '>=6.9.0'}
431 | dependencies:
432 | '@babel/helper-validator-identifier': 7.16.7
433 | to-fast-properties: 2.0.0
434 | dev: true
435 |
436 | /@babel/types/7.19.0:
437 | resolution: {integrity: sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==}
438 | engines: {node: '>=6.9.0'}
439 | dependencies:
440 | '@babel/helper-string-parser': 7.18.10
441 | '@babel/helper-validator-identifier': 7.19.1
442 | to-fast-properties: 2.0.0
443 | dev: true
444 |
445 | /@esbuild/android-arm/0.15.8:
446 | resolution: {integrity: sha512-CyEWALmn+no/lbgbAJsbuuhT8s2J19EJGHkeyAwjbFJMrj80KJ9zuYsoAvidPTU7BgBf87r/sgae8Tw0dbOc4Q==}
447 | engines: {node: '>=12'}
448 | cpu: [arm]
449 | os: [android]
450 | requiresBuild: true
451 | dependencies:
452 | esbuild-wasm: 0.15.8
453 | dev: true
454 | optional: true
455 |
456 | /@esbuild/linux-loong64/0.15.8:
457 | resolution: {integrity: sha512-pE5RQsOTSERCtfZdfCT25wzo7dfhOSlhAXcsZmuvRYhendOv7djcdvtINdnDp2DAjP17WXlBB4nBO6sHLczmsg==}
458 | engines: {node: '>=12'}
459 | cpu: [loong64]
460 | os: [linux]
461 | requiresBuild: true
462 | dev: true
463 | optional: true
464 |
465 | /@jridgewell/gen-mapping/0.3.2:
466 | resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==}
467 | engines: {node: '>=6.0.0'}
468 | dependencies:
469 | '@jridgewell/set-array': 1.1.2
470 | '@jridgewell/sourcemap-codec': 1.4.11
471 | '@jridgewell/trace-mapping': 0.3.15
472 | dev: true
473 |
474 | /@jridgewell/resolve-uri/3.0.5:
475 | resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==}
476 | engines: {node: '>=6.0.0'}
477 | dev: true
478 |
479 | /@jridgewell/set-array/1.1.2:
480 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
481 | engines: {node: '>=6.0.0'}
482 | dev: true
483 |
484 | /@jridgewell/sourcemap-codec/1.4.11:
485 | resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==}
486 | dev: true
487 |
488 | /@jridgewell/trace-mapping/0.3.15:
489 | resolution: {integrity: sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==}
490 | dependencies:
491 | '@jridgewell/resolve-uri': 3.0.5
492 | '@jridgewell/sourcemap-codec': 1.4.11
493 | dev: true
494 |
495 | /@jridgewell/trace-mapping/0.3.4:
496 | resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==}
497 | dependencies:
498 | '@jridgewell/resolve-uri': 3.0.5
499 | '@jridgewell/sourcemap-codec': 1.4.11
500 | dev: true
501 |
502 | /@types/node/18.7.18:
503 | resolution: {integrity: sha512-m+6nTEOadJZuTPkKR/SYK3A2d7FZrgElol9UP1Kae90VVU4a6mxnPuLiIW1m4Cq4gZ/nWb9GrdVXJCoCazDAbg==}
504 | dev: true
505 |
506 | /@types/prop-types/15.7.4:
507 | resolution: {integrity: sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==}
508 | dev: true
509 |
510 | /@types/react/18.0.20:
511 | resolution: {integrity: sha512-MWul1teSPxujEHVwZl4a5HxQ9vVNsjTchVA+xRqv/VYGCuKGAU6UhfrTdF5aBefwD1BHUD8i/zq+O/vyCm/FrA==}
512 | dependencies:
513 | '@types/prop-types': 15.7.4
514 | '@types/scheduler': 0.16.2
515 | csstype: 3.0.10
516 | dev: true
517 |
518 | /@types/scheduler/0.16.2:
519 | resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==}
520 | dev: true
521 |
522 | /@vitejs/plugin-vue-jsx/2.0.1_vite@3.1.3+vue@3.2.39:
523 | resolution: {integrity: sha512-lmiR1k9+lrF7LMczO0pxtQ8mOn6XeppJDHxnpxkJQpT5SiKz4SKhKdeNstXaTNuR8qZhUo5X0pJlcocn72Y4Jg==}
524 | engines: {node: ^14.18.0 || >=16.0.0}
525 | peerDependencies:
526 | vite: ^3.0.0
527 | vue: ^3.0.0
528 | dependencies:
529 | '@babel/core': 7.19.1
530 | '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.19.1
531 | '@babel/plugin-transform-typescript': 7.19.1_@babel+core@7.19.1
532 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.19.1
533 | vite: 3.1.3
534 | vue: 3.2.39
535 | transitivePeerDependencies:
536 | - supports-color
537 | dev: true
538 |
539 | /@vitejs/plugin-vue/3.1.0_vite@3.1.3+vue@3.2.39:
540 | resolution: {integrity: sha512-fmxtHPjSOEIRg6vHYDaem+97iwCUg/uSIaTzp98lhELt2ISOQuDo2hbkBdXod0g15IhfPMQmAxh4heUks2zvDA==}
541 | engines: {node: ^14.18.0 || >=16.0.0}
542 | peerDependencies:
543 | vite: ^3.0.0
544 | vue: ^3.2.25
545 | dependencies:
546 | vite: 3.1.3
547 | vue: 3.2.39
548 | dev: true
549 |
550 | /@volar/code-gen/0.40.13:
551 | resolution: {integrity: sha512-4gShBWuMce868OVvgyA1cU5WxHbjfEme18Tw6uVMfweZCF5fB2KECG0iPrA9D54vHk3FeHarODNwgIaaFfUBlA==}
552 | dependencies:
553 | '@volar/source-map': 0.40.13
554 | dev: true
555 |
556 | /@volar/source-map/0.40.13:
557 | resolution: {integrity: sha512-dbdkAB2Nxb0wLjAY5O64o3ywVWlAGONnBIoKAkXSf6qkGZM+nJxcizsoiI66K+RHQG0XqlyvjDizfnTxr+6PWg==}
558 | dependencies:
559 | '@vue/reactivity': 3.2.38
560 | dev: true
561 |
562 | /@volar/typescript-faster/0.40.13:
563 | resolution: {integrity: sha512-uy+TlcFkKoNlKEnxA4x5acxdxLyVDIXGSc8cYDNXpPKjBKXrQaetzCzlO3kVBqu1VLMxKNGJMTKn35mo+ILQmw==}
564 | dependencies:
565 | semver: 7.3.7
566 | dev: true
567 |
568 | /@volar/vue-language-core/0.40.13:
569 | resolution: {integrity: sha512-QkCb8msi2KUitTdM6Y4kAb7/ZlEvuLcbBFOC2PLBlFuoZwyxvSP7c/dBGmKGtJlEvMX0LdCyrg5V2aBYxD38/Q==}
570 | dependencies:
571 | '@volar/code-gen': 0.40.13
572 | '@volar/source-map': 0.40.13
573 | '@vue/compiler-core': 3.2.39
574 | '@vue/compiler-dom': 3.2.39
575 | '@vue/compiler-sfc': 3.2.39
576 | '@vue/reactivity': 3.2.39
577 | '@vue/shared': 3.2.39
578 | dev: true
579 |
580 | /@volar/vue-typescript/0.40.13:
581 | resolution: {integrity: sha512-o7bNztwjs8JmbQjVkrnbZUOfm7q4B8ZYssETISN1tRaBdun6cfNqgpkvDYd+VUBh1O4CdksvN+5BUNnwAz4oCQ==}
582 | dependencies:
583 | '@volar/code-gen': 0.40.13
584 | '@volar/typescript-faster': 0.40.13
585 | '@volar/vue-language-core': 0.40.13
586 | dev: true
587 |
588 | /@vue/babel-helper-vue-transform-on/1.0.2:
589 | resolution: {integrity: sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==}
590 | dev: true
591 |
592 | /@vue/babel-plugin-jsx/1.1.1_@babel+core@7.19.1:
593 | resolution: {integrity: sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==}
594 | dependencies:
595 | '@babel/helper-module-imports': 7.16.7
596 | '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.19.1
597 | '@babel/template': 7.16.7
598 | '@babel/traverse': 7.17.3
599 | '@babel/types': 7.17.0
600 | '@vue/babel-helper-vue-transform-on': 1.0.2
601 | camelcase: 6.3.0
602 | html-tags: 3.1.0
603 | svg-tags: 1.0.0
604 | transitivePeerDependencies:
605 | - '@babel/core'
606 | - supports-color
607 | dev: true
608 |
609 | /@vue/compiler-core/3.2.39:
610 | resolution: {integrity: sha512-mf/36OWXqWn0wsC40nwRRGheR/qoID+lZXbIuLnr4/AngM0ov8Xvv8GHunC0rKRIkh60bTqydlqTeBo49rlbqw==}
611 | dependencies:
612 | '@babel/parser': 7.17.7
613 | '@vue/shared': 3.2.39
614 | estree-walker: 2.0.2
615 | source-map: 0.6.1
616 | dev: true
617 |
618 | /@vue/compiler-dom/3.2.39:
619 | resolution: {integrity: sha512-HMFI25Be1C8vLEEv1hgEO1dWwG9QQ8LTTPmCkblVJY/O3OvWx6r1+zsox5mKPMGvqYEZa6l8j+xgOfUspgo7hw==}
620 | dependencies:
621 | '@vue/compiler-core': 3.2.39
622 | '@vue/shared': 3.2.39
623 | dev: true
624 |
625 | /@vue/compiler-sfc/3.2.39:
626 | resolution: {integrity: sha512-fqAQgFs1/BxTUZkd0Vakn3teKUt//J3c420BgnYgEOoVdTwYpBTSXCMJ88GOBCylmUBbtquGPli9tVs7LzsWIA==}
627 | dependencies:
628 | '@babel/parser': 7.17.7
629 | '@vue/compiler-core': 3.2.39
630 | '@vue/compiler-dom': 3.2.39
631 | '@vue/compiler-ssr': 3.2.39
632 | '@vue/reactivity-transform': 3.2.39
633 | '@vue/shared': 3.2.39
634 | estree-walker: 2.0.2
635 | magic-string: 0.25.9
636 | postcss: 8.4.12
637 | source-map: 0.6.1
638 | dev: true
639 |
640 | /@vue/compiler-ssr/3.2.39:
641 | resolution: {integrity: sha512-EoGCJ6lincKOZGW+0Ky4WOKsSmqL7hp1ZYgen8M7u/mlvvEQUaO9tKKOy7K43M9U2aA3tPv0TuYYQFrEbK2eFQ==}
642 | dependencies:
643 | '@vue/compiler-dom': 3.2.39
644 | '@vue/shared': 3.2.39
645 | dev: true
646 |
647 | /@vue/reactivity-transform/3.2.39:
648 | resolution: {integrity: sha512-HGuWu864zStiWs9wBC6JYOP1E00UjMdDWIG5W+FpUx28hV3uz9ODOKVNm/vdOy/Pvzg8+OcANxAVC85WFBbl3A==}
649 | dependencies:
650 | '@babel/parser': 7.17.7
651 | '@vue/compiler-core': 3.2.39
652 | '@vue/shared': 3.2.39
653 | estree-walker: 2.0.2
654 | magic-string: 0.25.9
655 | dev: true
656 |
657 | /@vue/reactivity/3.2.38:
658 | resolution: {integrity: sha512-6L4myYcH9HG2M25co7/BSo0skKFHpAN8PhkNPM4xRVkyGl1K5M3Jx4rp5bsYhvYze2K4+l+pioN4e6ZwFLUVtw==}
659 | dependencies:
660 | '@vue/shared': 3.2.38
661 | dev: true
662 |
663 | /@vue/reactivity/3.2.39:
664 | resolution: {integrity: sha512-vlaYX2a3qMhIZfrw3Mtfd+BuU+TZmvDrPMa+6lpfzS9k/LnGxkSuf0fhkP0rMGfiOHPtyKoU9OJJJFGm92beVQ==}
665 | dependencies:
666 | '@vue/shared': 3.2.39
667 | dev: true
668 |
669 | /@vue/runtime-core/3.2.39:
670 | resolution: {integrity: sha512-xKH5XP57JW5JW+8ZG1khBbuLakINTgPuINKL01hStWLTTGFOrM49UfCFXBcFvWmSbci3gmJyLl2EAzCaZWsx8g==}
671 | dependencies:
672 | '@vue/reactivity': 3.2.39
673 | '@vue/shared': 3.2.39
674 | dev: true
675 |
676 | /@vue/runtime-dom/3.2.39:
677 | resolution: {integrity: sha512-4G9AEJP+sLhsqf5wXcyKVWQKUhI+iWfy0hWQgea+CpaTD7BR0KdQzvoQdZhwCY6B3oleSyNLkLAQwm0ya/wNoA==}
678 | dependencies:
679 | '@vue/runtime-core': 3.2.39
680 | '@vue/shared': 3.2.39
681 | csstype: 2.6.20
682 | dev: true
683 |
684 | /@vue/server-renderer/3.2.39_vue@3.2.39:
685 | resolution: {integrity: sha512-1yn9u2YBQWIgytFMjz4f/t0j43awKytTGVptfd3FtBk76t1pd8mxbek0G/DrnjJhd2V7mSTb5qgnxMYt8Z5iSQ==}
686 | peerDependencies:
687 | vue: 3.2.39
688 | dependencies:
689 | '@vue/compiler-ssr': 3.2.39
690 | '@vue/shared': 3.2.39
691 | vue: 3.2.39
692 | dev: true
693 |
694 | /@vue/shared/3.2.38:
695 | resolution: {integrity: sha512-dTyhTIRmGXBjxJE+skC8tTWCGLCVc4wQgRRLt8+O9p5ewBAjoBwtCAkLPrtToSr1xltoe3st21Pv953aOZ7alg==}
696 | dev: true
697 |
698 | /@vue/shared/3.2.39:
699 | resolution: {integrity: sha512-D3dl2ZB9qE6mTuWPk9RlhDeP1dgNRUKC3NJxji74A4yL8M2MwlhLKUC/49WHjrNzSPug58fWx/yFbaTzGAQSBw==}
700 | dev: true
701 |
702 | /ansi-styles/3.2.1:
703 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
704 | engines: {node: '>=4'}
705 | dependencies:
706 | color-convert: 1.9.3
707 | dev: true
708 |
709 | /browserslist/4.21.4:
710 | resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==}
711 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
712 | hasBin: true
713 | dependencies:
714 | caniuse-lite: 1.0.30001408
715 | electron-to-chromium: 1.4.256
716 | node-releases: 2.0.6
717 | update-browserslist-db: 1.0.9_browserslist@4.21.4
718 | dev: true
719 |
720 | /camelcase/6.3.0:
721 | resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
722 | engines: {node: '>=10'}
723 | dev: true
724 |
725 | /caniuse-lite/1.0.30001408:
726 | resolution: {integrity: sha512-DdUCktgMSM+1ndk9EFMZcavsGszV7zxV9O7MtOHniTa/iyAIwJCF0dFVBdU9SijJbfh29hC9bCs07wu8pjnGJQ==}
727 | dev: true
728 |
729 | /chalk/2.4.2:
730 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
731 | engines: {node: '>=4'}
732 | dependencies:
733 | ansi-styles: 3.2.1
734 | escape-string-regexp: 1.0.5
735 | supports-color: 5.5.0
736 | dev: true
737 |
738 | /color-convert/1.9.3:
739 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
740 | dependencies:
741 | color-name: 1.1.3
742 | dev: true
743 |
744 | /color-name/1.1.3:
745 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
746 | dev: true
747 |
748 | /convert-source-map/1.8.0:
749 | resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==}
750 | dependencies:
751 | safe-buffer: 5.1.2
752 | dev: true
753 |
754 | /csstype/2.6.20:
755 | resolution: {integrity: sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==}
756 | dev: true
757 |
758 | /csstype/3.0.10:
759 | resolution: {integrity: sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==}
760 | dev: true
761 |
762 | /debug/4.3.3:
763 | resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==}
764 | engines: {node: '>=6.0'}
765 | peerDependencies:
766 | supports-color: '*'
767 | peerDependenciesMeta:
768 | supports-color:
769 | optional: true
770 | dependencies:
771 | ms: 2.1.2
772 | dev: true
773 |
774 | /electron-to-chromium/1.4.256:
775 | resolution: {integrity: sha512-x+JnqyluoJv8I0U9gVe+Sk2st8vF0CzMt78SXxuoWCooLLY2k5VerIBdpvG7ql6GKI4dzNnPjmqgDJ76EdaAKw==}
776 | dev: true
777 |
778 | /esbuild-android-64/0.15.8:
779 | resolution: {integrity: sha512-bVh8FIKOolF7/d4AMzt7xHlL0Ljr+mYKSHI39TJWDkybVWHdn6+4ODL3xZGHOxPpdRpitemXA1WwMKYBsw8dGw==}
780 | engines: {node: '>=12'}
781 | cpu: [x64]
782 | os: [android]
783 | requiresBuild: true
784 | dependencies:
785 | esbuild-wasm: 0.15.8
786 | dev: true
787 | optional: true
788 |
789 | /esbuild-android-arm64/0.15.8:
790 | resolution: {integrity: sha512-ReAMDAHuo0H1h9LxRabI6gwYPn8k6WiUeyxuMvx17yTrJO+SCnIfNc/TSPFvDwtK9MiyiKG/2dBYHouT/M0BXQ==}
791 | engines: {node: '>=12'}
792 | cpu: [arm64]
793 | os: [android]
794 | requiresBuild: true
795 | dev: true
796 | optional: true
797 |
798 | /esbuild-darwin-64/0.15.8:
799 | resolution: {integrity: sha512-KaKcGfJ+yto7Fo5gAj3xwxHMd1fBIKatpCHK8znTJLVv+9+NN2/tIPBqA4w5rBwjX0UqXDeIE2v1xJP+nGEXgA==}
800 | engines: {node: '>=12'}
801 | cpu: [x64]
802 | os: [darwin]
803 | requiresBuild: true
804 | dev: true
805 | optional: true
806 |
807 | /esbuild-darwin-arm64/0.15.8:
808 | resolution: {integrity: sha512-8tjEaBgAKnXCkP7bhEJmEqdG9HEV6oLkF36BrMzpfW2rgaw0c48Zrxe+9RlfeGvs6gDF4w+agXyTjikzsS3izw==}
809 | engines: {node: '>=12'}
810 | cpu: [arm64]
811 | os: [darwin]
812 | requiresBuild: true
813 | dev: true
814 | optional: true
815 |
816 | /esbuild-freebsd-64/0.15.8:
817 | resolution: {integrity: sha512-jaxcsGHYzn2L0/lffON2WfH4Nc+d/EwozVTP5K2v016zxMb5UQMhLoJzvLgBqHT1SG0B/mO+a+THnJCMVg15zw==}
818 | engines: {node: '>=12'}
819 | cpu: [x64]
820 | os: [freebsd]
821 | requiresBuild: true
822 | dev: true
823 | optional: true
824 |
825 | /esbuild-freebsd-arm64/0.15.8:
826 | resolution: {integrity: sha512-2xp2UlljMvX8HExtcg7VHaeQk8OBU0CSl1j18B5CcZmSDkLF9p3utuMXIopG3a08fr9Hv+Dz6+seSXUow/G51w==}
827 | engines: {node: '>=12'}
828 | cpu: [arm64]
829 | os: [freebsd]
830 | requiresBuild: true
831 | dev: true
832 | optional: true
833 |
834 | /esbuild-linux-32/0.15.8:
835 | resolution: {integrity: sha512-9u1E54BRz1FQMl86iaHK146+4ID2KYNxL3trLZT4QLLx3M7Q9n4lGG3lrzqUatGR2cKy8c33b0iaCzsItZWkFg==}
836 | engines: {node: '>=12'}
837 | cpu: [ia32]
838 | os: [linux]
839 | requiresBuild: true
840 | dev: true
841 | optional: true
842 |
843 | /esbuild-linux-64/0.15.8:
844 | resolution: {integrity: sha512-4HxrsN9eUzJXdVGMTYA5Xler82FuZUu21bXKN42zcLHHNKCAMPUzD62I+GwDhsdgUBAUj0tRXDdsQHgaP6v0HA==}
845 | engines: {node: '>=12'}
846 | cpu: [x64]
847 | os: [linux]
848 | requiresBuild: true
849 | dev: true
850 | optional: true
851 |
852 | /esbuild-linux-arm/0.15.8:
853 | resolution: {integrity: sha512-7DVBU9SFjX4+vBwt8tHsUCbE6Vvl6y6FQWHAgyw1lybC5gULqn/WnjHYHN2/LJaZRsDBvxWT4msEgwLGq1Wd3Q==}
854 | engines: {node: '>=12'}
855 | cpu: [arm]
856 | os: [linux]
857 | requiresBuild: true
858 | dev: true
859 | optional: true
860 |
861 | /esbuild-linux-arm64/0.15.8:
862 | resolution: {integrity: sha512-1OCm7Aq0tEJT70PbxmHSGYDLYP8DKH8r4Nk7/XbVzWaduo9beCjGBB+tGZIHK6DdTQ3h00/4Tb/70YMH/bOtKg==}
863 | engines: {node: '>=12'}
864 | cpu: [arm64]
865 | os: [linux]
866 | requiresBuild: true
867 | dev: true
868 | optional: true
869 |
870 | /esbuild-linux-mips64le/0.15.8:
871 | resolution: {integrity: sha512-yeFoNPVFPEzZvFYBfUQNG2TjGRaCyV1E27OcOg4LOtnGrxb2wA+mkW3luckyv1CEyd00mpAg7UdHx8nlx3ghgA==}
872 | engines: {node: '>=12'}
873 | cpu: [mips64el]
874 | os: [linux]
875 | requiresBuild: true
876 | dev: true
877 | optional: true
878 |
879 | /esbuild-linux-ppc64le/0.15.8:
880 | resolution: {integrity: sha512-CEyMMUUNabXibw8OSNmBXhOIGhnjNVl5Lpseiuf00iKN0V47oqDrbo4dsHz1wH62m49AR8iG8wpDlTqfYgKbtg==}
881 | engines: {node: '>=12'}
882 | cpu: [ppc64]
883 | os: [linux]
884 | requiresBuild: true
885 | dev: true
886 | optional: true
887 |
888 | /esbuild-linux-riscv64/0.15.8:
889 | resolution: {integrity: sha512-OCGSOaspMUjexSCU8ZiA0UnV/NiRU+s2vIfEcAQWQ6u32R+2luyfh/4ZaY6jFbylJE07Esc/yRvb9Q5fXuClXA==}
890 | engines: {node: '>=12'}
891 | cpu: [riscv64]
892 | os: [linux]
893 | requiresBuild: true
894 | dev: true
895 | optional: true
896 |
897 | /esbuild-linux-s390x/0.15.8:
898 | resolution: {integrity: sha512-RHdpdfxRTSrZXZJlFSLazFU4YwXLB5Rgf6Zr5rffqSsO4y9JybgtKO38bFwxZNlDXliYISXN/YROKrG9s7mZQA==}
899 | engines: {node: '>=12'}
900 | cpu: [s390x]
901 | os: [linux]
902 | requiresBuild: true
903 | dev: true
904 | optional: true
905 |
906 | /esbuild-netbsd-64/0.15.8:
907 | resolution: {integrity: sha512-VolFFRatBH09T5QMWhiohAWCOien1R1Uz9K0BRVVTBgBaVBt7eArsXTKxVhUgRf2vwu2c2SXkuP0r7HLG0eozw==}
908 | engines: {node: '>=12'}
909 | cpu: [x64]
910 | os: [netbsd]
911 | requiresBuild: true
912 | dev: true
913 | optional: true
914 |
915 | /esbuild-openbsd-64/0.15.8:
916 | resolution: {integrity: sha512-HTAPlg+n4kUeE/isQxlCfsOz0xJGNoT5LJ9oYZWFKABfVf4Ycu7Zlf5ITgOnrdheTkz8JeL/gISIOCFAoOXrSA==}
917 | engines: {node: '>=12'}
918 | cpu: [x64]
919 | os: [openbsd]
920 | requiresBuild: true
921 | dev: true
922 | optional: true
923 |
924 | /esbuild-sunos-64/0.15.8:
925 | resolution: {integrity: sha512-qMP/jR/FzcIOwKj+W+Lb+8Cfr8GZHbHUJxAPi7DUhNZMQ/6y7sOgRzlOSpRrbbUntrRZh0MqOyDhJ3Gpo6L1QA==}
926 | engines: {node: '>=12'}
927 | cpu: [x64]
928 | os: [sunos]
929 | requiresBuild: true
930 | dev: true
931 | optional: true
932 |
933 | /esbuild-wasm/0.15.8:
934 | resolution: {integrity: sha512-Y7uCl5RNO4URjlemjdx++ukVHEMt5s5AfMWYUnMiK4Sry+pPCvQIctzXq6r6FKCyGKjX6/NGMCqR2OX6aLxj0w==}
935 | engines: {node: '>=12'}
936 | hasBin: true
937 | requiresBuild: true
938 | dev: true
939 | optional: true
940 |
941 | /esbuild-windows-32/0.15.8:
942 | resolution: {integrity: sha512-RKR1QHh4iWzjUhkP8Yqi75PPz/KS+b8zw3wUrzw6oAkj+iU5Qtyj61ZDaSG3Qf2vc6hTIUiPqVTqBH0NpXFNwg==}
943 | engines: {node: '>=12'}
944 | cpu: [ia32]
945 | os: [win32]
946 | requiresBuild: true
947 | dev: true
948 | optional: true
949 |
950 | /esbuild-windows-64/0.15.8:
951 | resolution: {integrity: sha512-ag9ptYrsizgsR+PQE8QKeMqnosLvAMonQREpLw4evA4FFgOBMLEat/dY/9txbpozTw9eEOYyD3a4cE9yTu20FA==}
952 | engines: {node: '>=12'}
953 | cpu: [x64]
954 | os: [win32]
955 | requiresBuild: true
956 | dev: true
957 | optional: true
958 |
959 | /esbuild-windows-arm64/0.15.8:
960 | resolution: {integrity: sha512-dbpAb0VyPaUs9mgw65KRfQ9rqiWCHpNzrJusoPu+LpEoswosjt/tFxN7cd2l68AT4qWdBkzAjDLRon7uqMeWcg==}
961 | engines: {node: '>=12'}
962 | cpu: [arm64]
963 | os: [win32]
964 | requiresBuild: true
965 | dev: true
966 | optional: true
967 |
968 | /esbuild/0.15.8:
969 | resolution: {integrity: sha512-Remsk2dmr1Ia65sU+QasE6svJbsHe62lzR+CnjpUvbZ+uSYo1SitiOWPRfZQkCu82YWZBBKXiD/j0i//XWMZ+Q==}
970 | engines: {node: '>=12'}
971 | hasBin: true
972 | requiresBuild: true
973 | optionalDependencies:
974 | '@esbuild/android-arm': 0.15.8
975 | '@esbuild/linux-loong64': 0.15.8
976 | esbuild-android-64: 0.15.8
977 | esbuild-android-arm64: 0.15.8
978 | esbuild-darwin-64: 0.15.8
979 | esbuild-darwin-arm64: 0.15.8
980 | esbuild-freebsd-64: 0.15.8
981 | esbuild-freebsd-arm64: 0.15.8
982 | esbuild-linux-32: 0.15.8
983 | esbuild-linux-64: 0.15.8
984 | esbuild-linux-arm: 0.15.8
985 | esbuild-linux-arm64: 0.15.8
986 | esbuild-linux-mips64le: 0.15.8
987 | esbuild-linux-ppc64le: 0.15.8
988 | esbuild-linux-riscv64: 0.15.8
989 | esbuild-linux-s390x: 0.15.8
990 | esbuild-netbsd-64: 0.15.8
991 | esbuild-openbsd-64: 0.15.8
992 | esbuild-sunos-64: 0.15.8
993 | esbuild-windows-32: 0.15.8
994 | esbuild-windows-64: 0.15.8
995 | esbuild-windows-arm64: 0.15.8
996 | dev: true
997 |
998 | /escalade/3.1.1:
999 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
1000 | engines: {node: '>=6'}
1001 | dev: true
1002 |
1003 | /escape-string-regexp/1.0.5:
1004 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
1005 | engines: {node: '>=0.8.0'}
1006 | dev: true
1007 |
1008 | /estree-walker/2.0.2:
1009 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
1010 | dev: true
1011 |
1012 | /fsevents/2.3.2:
1013 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
1014 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
1015 | os: [darwin]
1016 | requiresBuild: true
1017 | dev: true
1018 | optional: true
1019 |
1020 | /function-bind/1.1.1:
1021 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
1022 | dev: true
1023 |
1024 | /gensync/1.0.0-beta.2:
1025 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
1026 | engines: {node: '>=6.9.0'}
1027 | dev: true
1028 |
1029 | /globals/11.12.0:
1030 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
1031 | engines: {node: '>=4'}
1032 | dev: true
1033 |
1034 | /has-flag/3.0.0:
1035 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
1036 | engines: {node: '>=4'}
1037 | dev: true
1038 |
1039 | /has/1.0.3:
1040 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
1041 | engines: {node: '>= 0.4.0'}
1042 | dependencies:
1043 | function-bind: 1.1.1
1044 | dev: true
1045 |
1046 | /html-tags/3.1.0:
1047 | resolution: {integrity: sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==}
1048 | engines: {node: '>=8'}
1049 | dev: true
1050 |
1051 | /is-core-module/2.10.0:
1052 | resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==}
1053 | dependencies:
1054 | has: 1.0.3
1055 | dev: true
1056 |
1057 | /js-tokens/4.0.0:
1058 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1059 | dev: true
1060 |
1061 | /jsesc/2.5.2:
1062 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
1063 | engines: {node: '>=4'}
1064 | hasBin: true
1065 | dev: true
1066 |
1067 | /json5/2.2.1:
1068 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
1069 | engines: {node: '>=6'}
1070 | hasBin: true
1071 | dev: true
1072 |
1073 | /loose-envify/1.4.0:
1074 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
1075 | hasBin: true
1076 | dependencies:
1077 | js-tokens: 4.0.0
1078 | dev: true
1079 |
1080 | /lru-cache/6.0.0:
1081 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
1082 | engines: {node: '>=10'}
1083 | dependencies:
1084 | yallist: 4.0.0
1085 | dev: true
1086 |
1087 | /magic-string/0.25.9:
1088 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
1089 | dependencies:
1090 | sourcemap-codec: 1.4.8
1091 | dev: true
1092 |
1093 | /ms/2.1.2:
1094 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
1095 | dev: true
1096 |
1097 | /nanoid/3.3.1:
1098 | resolution: {integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==}
1099 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1100 | hasBin: true
1101 | dev: true
1102 |
1103 | /nanoid/3.3.4:
1104 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
1105 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1106 | hasBin: true
1107 | dev: true
1108 |
1109 | /node-releases/2.0.6:
1110 | resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==}
1111 | dev: true
1112 |
1113 | /path-parse/1.0.7:
1114 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1115 | dev: true
1116 |
1117 | /picocolors/1.0.0:
1118 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1119 | dev: true
1120 |
1121 | /postcss/8.4.12:
1122 | resolution: {integrity: sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==}
1123 | engines: {node: ^10 || ^12 || >=14}
1124 | dependencies:
1125 | nanoid: 3.3.1
1126 | picocolors: 1.0.0
1127 | source-map-js: 1.0.2
1128 | dev: true
1129 |
1130 | /postcss/8.4.16:
1131 | resolution: {integrity: sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==}
1132 | engines: {node: ^10 || ^12 || >=14}
1133 | dependencies:
1134 | nanoid: 3.3.4
1135 | picocolors: 1.0.0
1136 | source-map-js: 1.0.2
1137 | dev: true
1138 |
1139 | /prettier/2.7.1:
1140 | resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==}
1141 | engines: {node: '>=10.13.0'}
1142 | hasBin: true
1143 | dev: true
1144 |
1145 | /react/18.2.0:
1146 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
1147 | engines: {node: '>=0.10.0'}
1148 | dependencies:
1149 | loose-envify: 1.4.0
1150 | dev: true
1151 |
1152 | /resolve/1.22.1:
1153 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
1154 | hasBin: true
1155 | dependencies:
1156 | is-core-module: 2.10.0
1157 | path-parse: 1.0.7
1158 | supports-preserve-symlinks-flag: 1.0.0
1159 | dev: true
1160 |
1161 | /rollup/2.78.1:
1162 | resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==}
1163 | engines: {node: '>=10.0.0'}
1164 | hasBin: true
1165 | optionalDependencies:
1166 | fsevents: 2.3.2
1167 | dev: true
1168 |
1169 | /safe-buffer/5.1.2:
1170 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
1171 | dev: true
1172 |
1173 | /semver/6.3.0:
1174 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
1175 | hasBin: true
1176 | dev: true
1177 |
1178 | /semver/7.3.7:
1179 | resolution: {integrity: sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==}
1180 | engines: {node: '>=10'}
1181 | hasBin: true
1182 | dependencies:
1183 | lru-cache: 6.0.0
1184 | dev: true
1185 |
1186 | /source-map-js/1.0.2:
1187 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
1188 | engines: {node: '>=0.10.0'}
1189 | dev: true
1190 |
1191 | /source-map/0.6.1:
1192 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1193 | engines: {node: '>=0.10.0'}
1194 | dev: true
1195 |
1196 | /sourcemap-codec/1.4.8:
1197 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
1198 | dev: true
1199 |
1200 | /supports-color/5.5.0:
1201 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1202 | engines: {node: '>=4'}
1203 | dependencies:
1204 | has-flag: 3.0.0
1205 | dev: true
1206 |
1207 | /supports-preserve-symlinks-flag/1.0.0:
1208 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1209 | engines: {node: '>= 0.4'}
1210 | dev: true
1211 |
1212 | /svg-tags/1.0.0:
1213 | resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
1214 | dev: true
1215 |
1216 | /to-fast-properties/2.0.0:
1217 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1218 | engines: {node: '>=4'}
1219 | dev: true
1220 |
1221 | /typescript/4.8.3:
1222 | resolution: {integrity: sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==}
1223 | engines: {node: '>=4.2.0'}
1224 | hasBin: true
1225 | dev: true
1226 |
1227 | /update-browserslist-db/1.0.9_browserslist@4.21.4:
1228 | resolution: {integrity: sha512-/xsqn21EGVdXI3EXSum1Yckj3ZVZugqyOZQ/CxYPBD/R+ko9NSUScf8tFF4dOKY+2pvSSJA/S+5B8s4Zr4kyvg==}
1229 | hasBin: true
1230 | peerDependencies:
1231 | browserslist: '>= 4.21.0'
1232 | dependencies:
1233 | browserslist: 4.21.4
1234 | escalade: 3.1.1
1235 | picocolors: 1.0.0
1236 | dev: true
1237 |
1238 | /vite/3.1.3:
1239 | resolution: {integrity: sha512-/3XWiktaopByM5bd8dqvHxRt5EEgRikevnnrpND0gRfNkrMrPaGGexhtLCzv15RcCMtV2CLw+BPas8YFeSG0KA==}
1240 | engines: {node: ^14.18.0 || >=16.0.0}
1241 | hasBin: true
1242 | peerDependencies:
1243 | less: '*'
1244 | sass: '*'
1245 | stylus: '*'
1246 | terser: ^5.4.0
1247 | peerDependenciesMeta:
1248 | less:
1249 | optional: true
1250 | sass:
1251 | optional: true
1252 | stylus:
1253 | optional: true
1254 | terser:
1255 | optional: true
1256 | dependencies:
1257 | esbuild: 0.15.8
1258 | postcss: 8.4.16
1259 | resolve: 1.22.1
1260 | rollup: 2.78.1
1261 | optionalDependencies:
1262 | fsevents: 2.3.2
1263 | dev: true
1264 |
1265 | /vue-tsc/0.40.13:
1266 | resolution: {integrity: sha512-xzuN3g5PnKfJcNrLv4+mAjteMd5wLm5fRhW0034OfNJZY4WhB07vhngea/XeGn7wNYt16r7syonzvW/54dcNiA==}
1267 | hasBin: true
1268 | peerDependencies:
1269 | typescript: '*'
1270 | peerDependenciesMeta:
1271 | typescript:
1272 | optional: true
1273 | dependencies:
1274 | '@volar/vue-language-core': 0.40.13
1275 | '@volar/vue-typescript': 0.40.13
1276 | dev: true
1277 |
1278 | /vue/3.2.39:
1279 | resolution: {integrity: sha512-tRkguhRTw9NmIPXhzk21YFBqXHT2t+6C6wPOgQ50fcFVWnPdetmRqbmySRHznrYjX2E47u0cGlKGcxKZJ38R/g==}
1280 | dependencies:
1281 | '@vue/compiler-dom': 3.2.39
1282 | '@vue/compiler-sfc': 3.2.39
1283 | '@vue/runtime-dom': 3.2.39
1284 | '@vue/server-renderer': 3.2.39_vue@3.2.39
1285 | '@vue/shared': 3.2.39
1286 | dev: true
1287 |
1288 | /yallist/4.0.0:
1289 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
1290 | dev: true
1291 |
--------------------------------------------------------------------------------
/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 | - 'packages/**'
3 | - '!**/test/**'
4 |
--------------------------------------------------------------------------------