├── .editorconfig
├── .eslintrc
├── .github
└── workflows
│ ├── CI.yml
│ └── GithubRelease.yml
├── .gitignore
├── .husky
└── pre-commit
├── .lintstagedrc
├── LICENSE
├── README.md
├── auto-imports.d.ts
├── build.config.ts
├── package.json
├── playground
├── 01.html
├── arc.html
├── assets
│ └── zu.png
├── img.html
├── line.html
└── test.html
├── pnpm-lock.yaml
├── src
├── EventHandlers
│ ├── base.ts
│ ├── click.ts
│ ├── helper.ts
│ └── index.ts
├── Shapes
│ ├── arc.ts
│ ├── base.ts
│ ├── image.ts
│ ├── index.ts
│ ├── line.ts
│ └── rect.ts
├── canvasEngine.ts
├── helper
│ └── warn.ts
├── index.ts
└── types
│ ├── event.ts
│ ├── index.ts
│ └── shape.ts
├── test
└── index.spec.ts
├── tsconfig.json
└── vitest.config.ts
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_size = 2
6 | indent_style = space
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
11 | [*.md]
12 | insert_final_newline = false
13 | trim_trailing_whitespace = false
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@alexzzz/eslint-config",
3 | "ignorePatterns": [
4 | "**/playground/**"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/.github/workflows/CI.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | pull_request:
9 | branches:
10 | - main
11 |
12 | jobs:
13 | lint:
14 | runs-on: ubuntu-latest
15 | steps:
16 | - uses: actions/checkout@v3
17 | - name: Set node
18 | uses: actions/setup-node@v3
19 | with:
20 | node-version: 16.x
21 |
22 | - name: Setup
23 | run: npm i -g @antfu/ni
24 |
25 | - name: Install
26 | run: nci
27 |
28 | - name: Lint
29 | run: nr lint
30 |
31 | typecheck:
32 | runs-on: ubuntu-latest
33 | steps:
34 | - uses: actions/checkout@v3
35 | - name: Set node
36 | uses: actions/setup-node@v3
37 | with:
38 | node-version: 16.x
39 |
40 | - name: Setup
41 | run: npm i -g @antfu/ni
42 |
43 | - name: Install
44 | run: nci
45 |
46 | - name: Typecheck
47 | run: nr typecheck
48 |
49 | test:
50 | runs-on: ${{ matrix.os }}
51 |
52 | strategy:
53 | matrix:
54 | node: [14.x, 16.x]
55 | os: [ubuntu-latest, windows-latest, macos-latest]
56 | fail-fast: false
57 |
58 | steps:
59 | - uses: actions/checkout@v3
60 | - name: Set node ${{ matrix.node }}
61 | uses: actions/setup-node@v3
62 | with:
63 | node-version: ${{ matrix.node }}
64 |
65 | - name: Setup
66 | run: npm i -g @antfu/ni
67 |
68 | - name: Install
69 | run: nci
70 |
71 | - name: Build
72 | run: nr build
73 |
74 | - name: Test
75 | run: nr test
76 |
--------------------------------------------------------------------------------
/.github/workflows/GithubRelease.yml:
--------------------------------------------------------------------------------
1 | name: GithubRelease
2 |
3 | on:
4 | push:
5 | tags:
6 | - 'v*'
7 |
8 | jobs:
9 | release:
10 | runs-on: ubuntu-latest
11 | steps:
12 | - uses: actions/checkout@v3
13 | with:
14 | fetch-depth: 0
15 |
16 | - uses: actions/setup-node@v3
17 | with:
18 | node-version: 16.x
19 |
20 | - run: npx changelogithub
21 | env:
22 | GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
23 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
26 | .prettierrc.yml
27 |
--------------------------------------------------------------------------------
/.husky/pre-commit:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 | . "$(dirname -- "$0")/_/husky.sh"
3 |
4 | pnpm exec lint-staged
5 |
--------------------------------------------------------------------------------
/.lintstagedrc:
--------------------------------------------------------------------------------
1 | {
2 | "*.{vue,js,jsx,ts,tsx,json,md,yml,yaml}": "eslint --fix"
3 | }
4 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 zxTick
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # ZTCanvas
2 |
3 | a lightweight but powerful Canvas Engine
4 |
5 | you can click 👇 to access our docs
6 |
7 | [ztcanvas docs](https://ztcanvas.netlify.app/)
8 |
9 | ## features
10 |
11 | - ⛔️ fully type supported (by using TypeScript)
12 | - ⚡️ build your Canvas Application Fast and Easy
13 | - 🛠️ rich api and features
14 |
--------------------------------------------------------------------------------
/auto-imports.d.ts:
--------------------------------------------------------------------------------
1 | // Generated by 'unplugin-auto-import'
2 | export {}
3 | declare global {
4 | const afterAll: typeof import('vitest')['afterAll']
5 | const afterEach: typeof import('vitest')['afterEach']
6 | const assert: typeof import('vitest')['assert']
7 | const beforeAll: typeof import('vitest')['beforeAll']
8 | const beforeEach: typeof import('vitest')['beforeEach']
9 | const chai: typeof import('vitest')['chai']
10 | const describe: typeof import('vitest')['describe']
11 | const expect: typeof import('vitest')['expect']
12 | const it: typeof import('vitest')['it']
13 | const suite: typeof import('vitest')['suite']
14 | const test: typeof import('vitest')['test']
15 | const vi: typeof import('vitest')['vi']
16 | const vitest: typeof import('vitest')['vitest']
17 | }
18 |
--------------------------------------------------------------------------------
/build.config.ts:
--------------------------------------------------------------------------------
1 | import { defineBuildConfig } from 'unbuild'
2 |
3 | export default defineBuildConfig({
4 | entries: ['src/index'],
5 | clean: true,
6 | declaration: true,
7 | rollup: {
8 | emitCJS: true,
9 | dts: {
10 | respectExternal: false,
11 | },
12 | },
13 | })
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ztcanvas",
3 | "type": "module",
4 | "version": "1.0.6",
5 | "description": "a framework to help you build your canvas library easily",
6 | "keywords": [],
7 | "license": "ISC",
8 | "author": "",
9 | "main": "dist/index.cjs",
10 | "module": "dist/index.mjs",
11 | "types": "dist/index.d.ts",
12 | "files": [
13 | "dist"
14 | ],
15 | "scripts": {
16 | "build": "unbuild",
17 | "stub": "unbuild --stub",
18 | "prepare": "husky install",
19 | "test": "vitest",
20 | "prepublishOnly": "npm run build",
21 | "release": "bumpp && npm publish",
22 | "lint": "eslint .",
23 | "lint:fix": "eslint --fix .",
24 | "typecheck": "tsc --noEmit"
25 | },
26 | "dependencies": {
27 | "@vue/shared": "^3.2.37",
28 | "nanoid": "^4.0.0",
29 | "unbuild": "^0.7.4"
30 | },
31 | "devDependencies": {
32 | "@alexzzz/eslint-config": "^1.3.0",
33 | "bumpp": "^8.2.0",
34 | "eslint": "^8.17.0",
35 | "husky": "^8.0.1",
36 | "lint-staged": "^13.0.1",
37 | "typescript": "^4.7.3",
38 | "unplugin-auto-import": "^0.8.8",
39 | "vitest": "^0.15.1"
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/playground/01.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Document
8 |
9 |
10 |
11 |
12 |
13 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/playground/arc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Document
9 |
10 |
11 |
12 |
13 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/playground/assets/zu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zxTick/ztcanvas/c79341ce04ee54031beb192c917c5aa0616cb282/playground/assets/zu.png
--------------------------------------------------------------------------------
/playground/img.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Document
9 |
10 |
11 |
12 |
13 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/playground/line.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Document
9 |
10 |
11 |
12 |
13 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/playground/test.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zxTick/ztcanvas/c79341ce04ee54031beb192c917c5aa0616cb282/playground/test.html
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | specifiers:
4 | '@alexzzz/eslint-config': ^1.3.0
5 | '@vue/shared': ^3.2.37
6 | bumpp: ^8.2.0
7 | eslint: ^8.17.0
8 | husky: ^8.0.1
9 | lint-staged: ^13.0.1
10 | nanoid: ^4.0.0
11 | typescript: ^4.7.3
12 | unbuild: ^0.7.4
13 | unplugin-auto-import: ^0.8.8
14 | vitest: ^0.15.1
15 |
16 | dependencies:
17 | '@vue/shared': 3.2.37
18 | nanoid: 4.0.0
19 | unbuild: 0.7.4
20 |
21 | devDependencies:
22 | '@alexzzz/eslint-config': 1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4
23 | bumpp: 8.2.0
24 | eslint: 8.17.0
25 | husky: 8.0.1
26 | lint-staged: 13.0.1
27 | typescript: 4.7.3
28 | unplugin-auto-import: 0.8.8
29 | vitest: 0.15.1
30 |
31 | packages:
32 |
33 | /@alexzzz/eslint-config-basic/1.3.0_pv5w3e62ssxduf5aiwxbc3knra:
34 | resolution: {integrity: sha512-a/Zn0aggFhXaheaouAZwOaIuJlBzJpavev5swiqkPf2itftvBSE1ADRcoWSZ31RI8nyspZ+kdwBurLlPdmpdZA==}
35 | dependencies:
36 | eslint-plugin-eslint-comments: 3.2.0_eslint@8.17.0
37 | eslint-plugin-html: 6.2.0
38 | eslint-plugin-import: 2.26.0_pv5w3e62ssxduf5aiwxbc3knra
39 | eslint-plugin-jsonc: 2.3.0_eslint@8.17.0
40 | eslint-plugin-markdown: 2.2.1_eslint@8.17.0
41 | eslint-plugin-n: 15.2.2_eslint@8.17.0
42 | eslint-plugin-promise: 6.0.0_eslint@8.17.0
43 | eslint-plugin-unicorn: 42.0.0_eslint@8.17.0
44 | eslint-plugin-yml: 0.14.0_eslint@8.17.0
45 | jsonc-eslint-parser: 2.1.0
46 | yaml-eslint-parser: 0.5.0
47 | transitivePeerDependencies:
48 | - '@typescript-eslint/parser'
49 | - eslint
50 | - eslint-import-resolver-typescript
51 | - eslint-import-resolver-webpack
52 | - supports-color
53 | dev: true
54 |
55 | /@alexzzz/eslint-config-react/1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4:
56 | resolution: {integrity: sha512-MRbZNkoiIcFm4gx4ww2ZBGFASFbCD5vZ9OZ5xaiE72vTp4sGZLeYDZ/2l/G++ZjmhQkQBiZVEFUljP4dVe4N6w==}
57 | dependencies:
58 | '@alexzzz/eslint-config-typescript': 1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4
59 | eslint-plugin-react: 7.30.0_eslint@8.17.0
60 | transitivePeerDependencies:
61 | - eslint
62 | - eslint-import-resolver-typescript
63 | - eslint-import-resolver-webpack
64 | - supports-color
65 | - typescript
66 | dev: true
67 |
68 | /@alexzzz/eslint-config-typescript/1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4:
69 | resolution: {integrity: sha512-Ga4DaqUM6cqj051JgxcyV9GYKz0haF5309OLs4E4IgnU8i+LOYADdN/4Tb6uXs5xYADUkKwpG42ksNenOqkIog==}
70 | dependencies:
71 | '@alexzzz/eslint-config-basic': 1.3.0_pv5w3e62ssxduf5aiwxbc3knra
72 | '@typescript-eslint/eslint-plugin': 5.27.1_aq7uryhocdbvbqum33pitcm3y4
73 | '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
74 | transitivePeerDependencies:
75 | - eslint
76 | - eslint-import-resolver-typescript
77 | - eslint-import-resolver-webpack
78 | - supports-color
79 | - typescript
80 | dev: true
81 |
82 | /@alexzzz/eslint-config-vue/1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4:
83 | resolution: {integrity: sha512-XALOxtfguc9EZsi2WixzdGKeUizeK+d8Sem7lFjvjUsXabNXM4g/sqERhZJLqCXk3L6vDTPxI9WtKsORFJDw9A==}
84 | dependencies:
85 | '@alexzzz/eslint-config-typescript': 1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4
86 | eslint-plugin-vue: 8.7.1_eslint@8.17.0
87 | transitivePeerDependencies:
88 | - eslint
89 | - eslint-import-resolver-typescript
90 | - eslint-import-resolver-webpack
91 | - supports-color
92 | - typescript
93 | dev: true
94 |
95 | /@alexzzz/eslint-config/1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4:
96 | resolution: {integrity: sha512-640QO7EWHkXikXp9X6uzsY6CYdLBDHvCd48utdr7KKB83DaKb7eny99ybTQ36BkZm6X6U9rTscEJ9tB3l7pcPg==}
97 | dependencies:
98 | '@alexzzz/eslint-config-react': 1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4
99 | '@alexzzz/eslint-config-vue': 1.3.0_ud6rd4xtew5bv4yhvkvu24pzm4
100 | transitivePeerDependencies:
101 | - eslint
102 | - eslint-import-resolver-typescript
103 | - eslint-import-resolver-webpack
104 | - supports-color
105 | - typescript
106 | dev: true
107 |
108 | /@ampproject/remapping/2.2.0:
109 | resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==}
110 | engines: {node: '>=6.0.0'}
111 | dependencies:
112 | '@jridgewell/gen-mapping': 0.1.1
113 | '@jridgewell/trace-mapping': 0.3.13
114 | dev: false
115 |
116 | /@antfu/utils/0.5.2:
117 | resolution: {integrity: sha512-CQkeV+oJxUazwjlHD0/3ZD08QWKuGQkhnrKo3e6ly5pd48VUpXbb77q0xMU4+vc2CkJnDS02Eq/M9ugyX20XZA==}
118 | dev: true
119 |
120 | /@babel/code-frame/7.16.7:
121 | resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==}
122 | engines: {node: '>=6.9.0'}
123 | dependencies:
124 | '@babel/highlight': 7.17.12
125 |
126 | /@babel/compat-data/7.18.5:
127 | resolution: {integrity: sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==}
128 | engines: {node: '>=6.9.0'}
129 | dev: false
130 |
131 | /@babel/core/7.18.5:
132 | resolution: {integrity: sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==}
133 | engines: {node: '>=6.9.0'}
134 | dependencies:
135 | '@ampproject/remapping': 2.2.0
136 | '@babel/code-frame': 7.16.7
137 | '@babel/generator': 7.18.2
138 | '@babel/helper-compilation-targets': 7.18.2_@babel+core@7.18.5
139 | '@babel/helper-module-transforms': 7.18.0
140 | '@babel/helpers': 7.18.2
141 | '@babel/parser': 7.18.5
142 | '@babel/template': 7.16.7
143 | '@babel/traverse': 7.18.5
144 | '@babel/types': 7.18.4
145 | convert-source-map: 1.8.0
146 | debug: 4.3.4
147 | gensync: 1.0.0-beta.2
148 | json5: 2.2.1
149 | semver: 6.3.0
150 | transitivePeerDependencies:
151 | - supports-color
152 | dev: false
153 |
154 | /@babel/generator/7.18.2:
155 | resolution: {integrity: sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==}
156 | engines: {node: '>=6.9.0'}
157 | dependencies:
158 | '@babel/types': 7.18.4
159 | '@jridgewell/gen-mapping': 0.3.1
160 | jsesc: 2.5.2
161 | dev: false
162 |
163 | /@babel/helper-compilation-targets/7.18.2_@babel+core@7.18.5:
164 | resolution: {integrity: sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==}
165 | engines: {node: '>=6.9.0'}
166 | peerDependencies:
167 | '@babel/core': ^7.0.0
168 | dependencies:
169 | '@babel/compat-data': 7.18.5
170 | '@babel/core': 7.18.5
171 | '@babel/helper-validator-option': 7.16.7
172 | browserslist: 4.20.4
173 | semver: 6.3.0
174 | dev: false
175 |
176 | /@babel/helper-environment-visitor/7.18.2:
177 | resolution: {integrity: sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==}
178 | engines: {node: '>=6.9.0'}
179 | dev: false
180 |
181 | /@babel/helper-function-name/7.17.9:
182 | resolution: {integrity: sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==}
183 | engines: {node: '>=6.9.0'}
184 | dependencies:
185 | '@babel/template': 7.16.7
186 | '@babel/types': 7.18.4
187 | dev: false
188 |
189 | /@babel/helper-hoist-variables/7.16.7:
190 | resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==}
191 | engines: {node: '>=6.9.0'}
192 | dependencies:
193 | '@babel/types': 7.18.4
194 | dev: false
195 |
196 | /@babel/helper-module-imports/7.16.7:
197 | resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==}
198 | engines: {node: '>=6.9.0'}
199 | dependencies:
200 | '@babel/types': 7.18.4
201 | dev: false
202 |
203 | /@babel/helper-module-transforms/7.18.0:
204 | resolution: {integrity: sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==}
205 | engines: {node: '>=6.9.0'}
206 | dependencies:
207 | '@babel/helper-environment-visitor': 7.18.2
208 | '@babel/helper-module-imports': 7.16.7
209 | '@babel/helper-simple-access': 7.18.2
210 | '@babel/helper-split-export-declaration': 7.16.7
211 | '@babel/helper-validator-identifier': 7.16.7
212 | '@babel/template': 7.16.7
213 | '@babel/traverse': 7.18.5
214 | '@babel/types': 7.18.4
215 | transitivePeerDependencies:
216 | - supports-color
217 | dev: false
218 |
219 | /@babel/helper-simple-access/7.18.2:
220 | resolution: {integrity: sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==}
221 | engines: {node: '>=6.9.0'}
222 | dependencies:
223 | '@babel/types': 7.18.4
224 | dev: false
225 |
226 | /@babel/helper-split-export-declaration/7.16.7:
227 | resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==}
228 | engines: {node: '>=6.9.0'}
229 | dependencies:
230 | '@babel/types': 7.18.4
231 | dev: false
232 |
233 | /@babel/helper-validator-identifier/7.16.7:
234 | resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==}
235 | engines: {node: '>=6.9.0'}
236 |
237 | /@babel/helper-validator-option/7.16.7:
238 | resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==}
239 | engines: {node: '>=6.9.0'}
240 | dev: false
241 |
242 | /@babel/helpers/7.18.2:
243 | resolution: {integrity: sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==}
244 | engines: {node: '>=6.9.0'}
245 | dependencies:
246 | '@babel/template': 7.16.7
247 | '@babel/traverse': 7.18.5
248 | '@babel/types': 7.18.4
249 | transitivePeerDependencies:
250 | - supports-color
251 | dev: false
252 |
253 | /@babel/highlight/7.17.12:
254 | resolution: {integrity: sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==}
255 | engines: {node: '>=6.9.0'}
256 | dependencies:
257 | '@babel/helper-validator-identifier': 7.16.7
258 | chalk: 2.4.2
259 | js-tokens: 4.0.0
260 |
261 | /@babel/parser/7.18.5:
262 | resolution: {integrity: sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==}
263 | engines: {node: '>=6.0.0'}
264 | hasBin: true
265 | dependencies:
266 | '@babel/types': 7.18.4
267 | dev: false
268 |
269 | /@babel/standalone/7.18.5:
270 | resolution: {integrity: sha512-3RlzTl3JSvbY1bvaRmuHf3fM2BSy7IbX0zqpVFjsiGO7678KE/LytwvJN+f5MGrarnUFUz2DNcCdetumWdIAKA==}
271 | engines: {node: '>=6.9.0'}
272 | dev: false
273 |
274 | /@babel/template/7.16.7:
275 | resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==}
276 | engines: {node: '>=6.9.0'}
277 | dependencies:
278 | '@babel/code-frame': 7.16.7
279 | '@babel/parser': 7.18.5
280 | '@babel/types': 7.18.4
281 | dev: false
282 |
283 | /@babel/traverse/7.18.5:
284 | resolution: {integrity: sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==}
285 | engines: {node: '>=6.9.0'}
286 | dependencies:
287 | '@babel/code-frame': 7.16.7
288 | '@babel/generator': 7.18.2
289 | '@babel/helper-environment-visitor': 7.18.2
290 | '@babel/helper-function-name': 7.17.9
291 | '@babel/helper-hoist-variables': 7.16.7
292 | '@babel/helper-split-export-declaration': 7.16.7
293 | '@babel/parser': 7.18.5
294 | '@babel/types': 7.18.4
295 | debug: 4.3.4
296 | globals: 11.12.0
297 | transitivePeerDependencies:
298 | - supports-color
299 | dev: false
300 |
301 | /@babel/types/7.18.4:
302 | resolution: {integrity: sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==}
303 | engines: {node: '>=6.9.0'}
304 | dependencies:
305 | '@babel/helper-validator-identifier': 7.16.7
306 | to-fast-properties: 2.0.0
307 | dev: false
308 |
309 | /@eslint/eslintrc/1.3.0:
310 | resolution: {integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==}
311 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
312 | dependencies:
313 | ajv: 6.12.6
314 | debug: 4.3.4
315 | espree: 9.3.2
316 | globals: 13.15.0
317 | ignore: 5.2.0
318 | import-fresh: 3.3.0
319 | js-yaml: 4.1.0
320 | minimatch: 3.1.2
321 | strip-json-comments: 3.1.1
322 | transitivePeerDependencies:
323 | - supports-color
324 | dev: true
325 |
326 | /@humanwhocodes/config-array/0.9.5:
327 | resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==}
328 | engines: {node: '>=10.10.0'}
329 | dependencies:
330 | '@humanwhocodes/object-schema': 1.2.1
331 | debug: 4.3.4
332 | minimatch: 3.1.2
333 | transitivePeerDependencies:
334 | - supports-color
335 | dev: true
336 |
337 | /@humanwhocodes/object-schema/1.2.1:
338 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
339 | dev: true
340 |
341 | /@jridgewell/gen-mapping/0.1.1:
342 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==}
343 | engines: {node: '>=6.0.0'}
344 | dependencies:
345 | '@jridgewell/set-array': 1.1.1
346 | '@jridgewell/sourcemap-codec': 1.4.13
347 | dev: false
348 |
349 | /@jridgewell/gen-mapping/0.3.1:
350 | resolution: {integrity: sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==}
351 | engines: {node: '>=6.0.0'}
352 | dependencies:
353 | '@jridgewell/set-array': 1.1.1
354 | '@jridgewell/sourcemap-codec': 1.4.13
355 | '@jridgewell/trace-mapping': 0.3.13
356 | dev: false
357 |
358 | /@jridgewell/resolve-uri/3.0.7:
359 | resolution: {integrity: sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==}
360 | engines: {node: '>=6.0.0'}
361 | dev: false
362 |
363 | /@jridgewell/set-array/1.1.1:
364 | resolution: {integrity: sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==}
365 | engines: {node: '>=6.0.0'}
366 | dev: false
367 |
368 | /@jridgewell/sourcemap-codec/1.4.13:
369 | resolution: {integrity: sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==}
370 | dev: false
371 |
372 | /@jridgewell/trace-mapping/0.3.13:
373 | resolution: {integrity: sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==}
374 | dependencies:
375 | '@jridgewell/resolve-uri': 3.0.7
376 | '@jridgewell/sourcemap-codec': 1.4.13
377 | dev: false
378 |
379 | /@jsdevtools/ez-spawn/3.0.4:
380 | resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==}
381 | engines: {node: '>=10'}
382 | dependencies:
383 | call-me-maybe: 1.0.1
384 | cross-spawn: 7.0.3
385 | string-argv: 0.3.1
386 | type-detect: 4.0.8
387 | dev: true
388 |
389 | /@nodelib/fs.scandir/2.1.5:
390 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
391 | engines: {node: '>= 8'}
392 | dependencies:
393 | '@nodelib/fs.stat': 2.0.5
394 | run-parallel: 1.2.0
395 |
396 | /@nodelib/fs.stat/2.0.5:
397 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
398 | engines: {node: '>= 8'}
399 |
400 | /@nodelib/fs.walk/1.2.8:
401 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
402 | engines: {node: '>= 8'}
403 | dependencies:
404 | '@nodelib/fs.scandir': 2.1.5
405 | fastq: 1.13.0
406 |
407 | /@rollup/plugin-alias/3.1.9_rollup@2.75.6:
408 | resolution: {integrity: sha512-QI5fsEvm9bDzt32k39wpOwZhVzRcL5ydcffUHMyLVaVaLeC70I8TJZ17F1z1eMoLu4E/UOcH9BWVkKpIKdrfiw==}
409 | engines: {node: '>=8.0.0'}
410 | peerDependencies:
411 | rollup: ^1.20.0||^2.0.0
412 | dependencies:
413 | rollup: 2.75.6
414 | slash: 3.0.0
415 | dev: false
416 |
417 | /@rollup/plugin-commonjs/21.1.0_rollup@2.75.6:
418 | resolution: {integrity: sha512-6ZtHx3VHIp2ReNNDxHjuUml6ur+WcQ28N1yHgCQwsbNkQg2suhxGMDQGJOn/KuDxKtd1xuZP5xSTwBA4GQ8hbA==}
419 | engines: {node: '>= 8.0.0'}
420 | peerDependencies:
421 | rollup: ^2.38.3
422 | dependencies:
423 | '@rollup/pluginutils': 3.1.0_rollup@2.75.6
424 | commondir: 1.0.1
425 | estree-walker: 2.0.2
426 | glob: 7.2.3
427 | is-reference: 1.2.1
428 | magic-string: 0.25.9
429 | resolve: 1.22.0
430 | rollup: 2.75.6
431 | dev: false
432 |
433 | /@rollup/plugin-json/4.1.0_rollup@2.75.6:
434 | resolution: {integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==}
435 | peerDependencies:
436 | rollup: ^1.20.0 || ^2.0.0
437 | dependencies:
438 | '@rollup/pluginutils': 3.1.0_rollup@2.75.6
439 | rollup: 2.75.6
440 | dev: false
441 |
442 | /@rollup/plugin-node-resolve/13.3.0_rollup@2.75.6:
443 | resolution: {integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==}
444 | engines: {node: '>= 10.0.0'}
445 | peerDependencies:
446 | rollup: ^2.42.0
447 | dependencies:
448 | '@rollup/pluginutils': 3.1.0_rollup@2.75.6
449 | '@types/resolve': 1.17.1
450 | deepmerge: 4.2.2
451 | is-builtin-module: 3.1.0
452 | is-module: 1.0.0
453 | resolve: 1.22.0
454 | rollup: 2.75.6
455 | dev: false
456 |
457 | /@rollup/plugin-replace/4.0.0_rollup@2.75.6:
458 | resolution: {integrity: sha512-+rumQFiaNac9y64OHtkHGmdjm7us9bo1PlbgQfdihQtuNxzjpaB064HbRnewUOggLQxVCCyINfStkgmBeQpv1g==}
459 | peerDependencies:
460 | rollup: ^1.20.0 || ^2.0.0
461 | dependencies:
462 | '@rollup/pluginutils': 3.1.0_rollup@2.75.6
463 | magic-string: 0.25.9
464 | rollup: 2.75.6
465 | dev: false
466 |
467 | /@rollup/pluginutils/3.1.0_rollup@2.75.6:
468 | resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==}
469 | engines: {node: '>= 8.0.0'}
470 | peerDependencies:
471 | rollup: ^1.20.0||^2.0.0
472 | dependencies:
473 | '@types/estree': 0.0.39
474 | estree-walker: 1.0.1
475 | picomatch: 2.3.1
476 | rollup: 2.75.6
477 | dev: false
478 |
479 | /@rollup/pluginutils/4.2.1:
480 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==}
481 | engines: {node: '>= 8.0.0'}
482 | dependencies:
483 | estree-walker: 2.0.2
484 | picomatch: 2.3.1
485 |
486 | /@types/chai-subset/1.3.3:
487 | resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==}
488 | dependencies:
489 | '@types/chai': 4.3.1
490 | dev: true
491 |
492 | /@types/chai/4.3.1:
493 | resolution: {integrity: sha512-/zPMqDkzSZ8t3VtxOa4KPq7uzzW978M9Tvh+j7GHKuo6k6GTLxPJ4J5gE5cjfJ26pnXst0N5Hax8Sr0T2Mi9zQ==}
494 | dev: true
495 |
496 | /@types/estree/0.0.39:
497 | resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==}
498 | dev: false
499 |
500 | /@types/estree/0.0.51:
501 | resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==}
502 | dev: false
503 |
504 | /@types/json-schema/7.0.11:
505 | resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
506 | dev: true
507 |
508 | /@types/json5/0.0.29:
509 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
510 | dev: true
511 |
512 | /@types/mdast/3.0.10:
513 | resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==}
514 | dependencies:
515 | '@types/unist': 2.0.6
516 | dev: true
517 |
518 | /@types/node/17.0.42:
519 | resolution: {integrity: sha512-Q5BPGyGKcvQgAMbsr7qEGN/kIPN6zZecYYABeTDBizOsau+2NMdSVTar9UQw21A2+JyA2KRNDYaYrPB0Rpk2oQ==}
520 |
521 | /@types/normalize-package-data/2.4.1:
522 | resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
523 | dev: true
524 |
525 | /@types/resolve/1.17.1:
526 | resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
527 | dependencies:
528 | '@types/node': 17.0.42
529 | dev: false
530 |
531 | /@types/unist/2.0.6:
532 | resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==}
533 | dev: true
534 |
535 | /@typescript-eslint/eslint-plugin/5.27.1_aq7uryhocdbvbqum33pitcm3y4:
536 | resolution: {integrity: sha512-6dM5NKT57ZduNnJfpY81Phe9nc9wolnMCnknb1im6brWi1RYv84nbMS3olJa27B6+irUVV1X/Wb+Am0FjJdGFw==}
537 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
538 | peerDependencies:
539 | '@typescript-eslint/parser': ^5.0.0
540 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
541 | typescript: '*'
542 | peerDependenciesMeta:
543 | typescript:
544 | optional: true
545 | dependencies:
546 | '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
547 | '@typescript-eslint/scope-manager': 5.27.1
548 | '@typescript-eslint/type-utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
549 | '@typescript-eslint/utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
550 | debug: 4.3.4
551 | eslint: 8.17.0
552 | functional-red-black-tree: 1.0.1
553 | ignore: 5.2.0
554 | regexpp: 3.2.0
555 | semver: 7.3.7
556 | tsutils: 3.21.0_typescript@4.7.3
557 | typescript: 4.7.3
558 | transitivePeerDependencies:
559 | - supports-color
560 | dev: true
561 |
562 | /@typescript-eslint/parser/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4:
563 | resolution: {integrity: sha512-7Va2ZOkHi5NP+AZwb5ReLgNF6nWLGTeUJfxdkVUAPPSaAdbWNnFZzLZ4EGGmmiCTg+AwlbE1KyUYTBglosSLHQ==}
564 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
565 | peerDependencies:
566 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
567 | typescript: '*'
568 | peerDependenciesMeta:
569 | typescript:
570 | optional: true
571 | dependencies:
572 | '@typescript-eslint/scope-manager': 5.27.1
573 | '@typescript-eslint/types': 5.27.1
574 | '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.7.3
575 | debug: 4.3.4
576 | eslint: 8.17.0
577 | typescript: 4.7.3
578 | transitivePeerDependencies:
579 | - supports-color
580 | dev: true
581 |
582 | /@typescript-eslint/scope-manager/5.27.1:
583 | resolution: {integrity: sha512-fQEOSa/QroWE6fAEg+bJxtRZJTH8NTskggybogHt4H9Da8zd4cJji76gA5SBlR0MgtwF7rebxTbDKB49YUCpAg==}
584 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
585 | dependencies:
586 | '@typescript-eslint/types': 5.27.1
587 | '@typescript-eslint/visitor-keys': 5.27.1
588 | dev: true
589 |
590 | /@typescript-eslint/type-utils/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4:
591 | resolution: {integrity: sha512-+UC1vVUWaDHRnC2cQrCJ4QtVjpjjCgjNFpg8b03nERmkHv9JV9X5M19D7UFMd+/G7T/sgFwX2pGmWK38rqyvXw==}
592 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
593 | peerDependencies:
594 | eslint: '*'
595 | typescript: '*'
596 | peerDependenciesMeta:
597 | typescript:
598 | optional: true
599 | dependencies:
600 | '@typescript-eslint/utils': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
601 | debug: 4.3.4
602 | eslint: 8.17.0
603 | tsutils: 3.21.0_typescript@4.7.3
604 | typescript: 4.7.3
605 | transitivePeerDependencies:
606 | - supports-color
607 | dev: true
608 |
609 | /@typescript-eslint/types/5.27.1:
610 | resolution: {integrity: sha512-LgogNVkBhCTZU/m8XgEYIWICD6m4dmEDbKXESCbqOXfKZxRKeqpiJXQIErv66sdopRKZPo5l32ymNqibYEH/xg==}
611 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
612 | dev: true
613 |
614 | /@typescript-eslint/typescript-estree/5.27.1_typescript@4.7.3:
615 | resolution: {integrity: sha512-DnZvvq3TAJ5ke+hk0LklvxwYsnXpRdqUY5gaVS0D4raKtbznPz71UJGnPTHEFo0GDxqLOLdMkkmVZjSpET1hFw==}
616 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
617 | peerDependencies:
618 | typescript: '*'
619 | peerDependenciesMeta:
620 | typescript:
621 | optional: true
622 | dependencies:
623 | '@typescript-eslint/types': 5.27.1
624 | '@typescript-eslint/visitor-keys': 5.27.1
625 | debug: 4.3.4
626 | globby: 11.1.0
627 | is-glob: 4.0.3
628 | semver: 7.3.7
629 | tsutils: 3.21.0_typescript@4.7.3
630 | typescript: 4.7.3
631 | transitivePeerDependencies:
632 | - supports-color
633 | dev: true
634 |
635 | /@typescript-eslint/utils/5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4:
636 | resolution: {integrity: sha512-mZ9WEn1ZLDaVrhRaYgzbkXBkTPghPFsup8zDbbsYTxC5OmqrFE7skkKS/sraVsLP3TcT3Ki5CSyEFBRkLH/H/w==}
637 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
638 | peerDependencies:
639 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
640 | dependencies:
641 | '@types/json-schema': 7.0.11
642 | '@typescript-eslint/scope-manager': 5.27.1
643 | '@typescript-eslint/types': 5.27.1
644 | '@typescript-eslint/typescript-estree': 5.27.1_typescript@4.7.3
645 | eslint: 8.17.0
646 | eslint-scope: 5.1.1
647 | eslint-utils: 3.0.0_eslint@8.17.0
648 | transitivePeerDependencies:
649 | - supports-color
650 | - typescript
651 | dev: true
652 |
653 | /@typescript-eslint/visitor-keys/5.27.1:
654 | resolution: {integrity: sha512-xYs6ffo01nhdJgPieyk7HAOpjhTsx7r/oB9LWEhwAXgwn33tkr+W8DI2ChboqhZlC4q3TC6geDYPoiX8ROqyOQ==}
655 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
656 | dependencies:
657 | '@typescript-eslint/types': 5.27.1
658 | eslint-visitor-keys: 3.3.0
659 | dev: true
660 |
661 | /@vue/shared/3.2.37:
662 | resolution: {integrity: sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==}
663 | dev: false
664 |
665 | /acorn-jsx/5.3.2_acorn@8.7.1:
666 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
667 | peerDependencies:
668 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
669 | dependencies:
670 | acorn: 8.7.1
671 | dev: true
672 |
673 | /acorn/8.7.1:
674 | resolution: {integrity: sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==}
675 | engines: {node: '>=0.4.0'}
676 | hasBin: true
677 | dev: true
678 |
679 | /aggregate-error/3.1.0:
680 | resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
681 | engines: {node: '>=8'}
682 | dependencies:
683 | clean-stack: 2.2.0
684 | indent-string: 4.0.0
685 | dev: true
686 |
687 | /ajv/6.12.6:
688 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
689 | dependencies:
690 | fast-deep-equal: 3.1.3
691 | fast-json-stable-stringify: 2.1.0
692 | json-schema-traverse: 0.4.1
693 | uri-js: 4.4.1
694 | dev: true
695 |
696 | /ansi-escapes/4.3.2:
697 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
698 | engines: {node: '>=8'}
699 | dependencies:
700 | type-fest: 0.21.3
701 | dev: true
702 |
703 | /ansi-regex/5.0.1:
704 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
705 | engines: {node: '>=8'}
706 | dev: true
707 |
708 | /ansi-regex/6.0.1:
709 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
710 | engines: {node: '>=12'}
711 | dev: true
712 |
713 | /ansi-styles/3.2.1:
714 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
715 | engines: {node: '>=4'}
716 | dependencies:
717 | color-convert: 1.9.3
718 |
719 | /ansi-styles/4.3.0:
720 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
721 | engines: {node: '>=8'}
722 | dependencies:
723 | color-convert: 2.0.1
724 | dev: true
725 |
726 | /ansi-styles/6.1.0:
727 | resolution: {integrity: sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==}
728 | engines: {node: '>=12'}
729 | dev: true
730 |
731 | /anymatch/3.1.2:
732 | resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==}
733 | engines: {node: '>= 8'}
734 | dependencies:
735 | normalize-path: 3.0.0
736 | picomatch: 2.3.1
737 | dev: true
738 |
739 | /argparse/2.0.1:
740 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
741 | dev: true
742 |
743 | /array-includes/3.1.5:
744 | resolution: {integrity: sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==}
745 | engines: {node: '>= 0.4'}
746 | dependencies:
747 | call-bind: 1.0.2
748 | define-properties: 1.1.4
749 | es-abstract: 1.20.1
750 | get-intrinsic: 1.1.2
751 | is-string: 1.0.7
752 | dev: true
753 |
754 | /array-union/2.1.0:
755 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
756 | engines: {node: '>=8'}
757 |
758 | /array.prototype.flat/1.3.0:
759 | resolution: {integrity: sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==}
760 | engines: {node: '>= 0.4'}
761 | dependencies:
762 | call-bind: 1.0.2
763 | define-properties: 1.1.4
764 | es-abstract: 1.20.1
765 | es-shim-unscopables: 1.0.0
766 | dev: true
767 |
768 | /array.prototype.flatmap/1.3.0:
769 | resolution: {integrity: sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==}
770 | engines: {node: '>= 0.4'}
771 | dependencies:
772 | call-bind: 1.0.2
773 | define-properties: 1.1.4
774 | es-abstract: 1.20.1
775 | es-shim-unscopables: 1.0.0
776 | dev: true
777 |
778 | /assertion-error/1.1.0:
779 | resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
780 | dev: true
781 |
782 | /astral-regex/2.0.0:
783 | resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
784 | engines: {node: '>=8'}
785 | dev: true
786 |
787 | /balanced-match/1.0.2:
788 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
789 |
790 | /binary-extensions/2.2.0:
791 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
792 | engines: {node: '>=8'}
793 | dev: true
794 |
795 | /boolbase/1.0.0:
796 | resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
797 | dev: true
798 |
799 | /brace-expansion/1.1.11:
800 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
801 | dependencies:
802 | balanced-match: 1.0.2
803 | concat-map: 0.0.1
804 |
805 | /braces/3.0.2:
806 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
807 | engines: {node: '>=8'}
808 | dependencies:
809 | fill-range: 7.0.1
810 |
811 | /browserslist/4.20.4:
812 | resolution: {integrity: sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==}
813 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
814 | hasBin: true
815 | dependencies:
816 | caniuse-lite: 1.0.30001352
817 | electron-to-chromium: 1.4.152
818 | escalade: 3.1.1
819 | node-releases: 2.0.5
820 | picocolors: 1.0.0
821 | dev: false
822 |
823 | /builtin-modules/3.3.0:
824 | resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
825 | engines: {node: '>=6'}
826 |
827 | /builtins/5.0.1:
828 | resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==}
829 | dependencies:
830 | semver: 7.3.7
831 | dev: true
832 |
833 | /bumpp/8.2.0:
834 | resolution: {integrity: sha512-DhFa4DSREOwnHJQyQ+Qhj9pUJAIZKMEtuHN7BuQij4CoxSBc6n4bBZnlvFWuLXNMr0aCtsMXnkQWC/7GyGypYw==}
835 | engines: {node: '>=10'}
836 | hasBin: true
837 | dependencies:
838 | '@jsdevtools/ez-spawn': 3.0.4
839 | cac: 6.7.12
840 | fast-glob: 3.2.11
841 | kleur: 4.1.4
842 | prompts: 2.4.2
843 | semver: 7.3.7
844 | dev: true
845 |
846 | /cac/6.7.12:
847 | resolution: {integrity: sha512-rM7E2ygtMkJqD9c7WnFU6fruFcN3xe4FM5yUmgxhZzIKJk4uHl9U/fhwdajGFQbQuv43FAUo1Fe8gX/oIKDeSA==}
848 | engines: {node: '>=8'}
849 | dev: true
850 |
851 | /call-bind/1.0.2:
852 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
853 | dependencies:
854 | function-bind: 1.1.1
855 | get-intrinsic: 1.1.2
856 | dev: true
857 |
858 | /call-me-maybe/1.0.1:
859 | resolution: {integrity: sha512-wCyFsDQkKPwwF8BDwOiWNx/9K45L/hvggQiDbve+viMNMQnWhrlYIuBk09offfwCRtCO9P6XwUttufzU11WCVw==}
860 | dev: true
861 |
862 | /callsites/3.1.0:
863 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
864 | engines: {node: '>=6'}
865 | dev: true
866 |
867 | /caniuse-lite/1.0.30001352:
868 | resolution: {integrity: sha512-GUgH8w6YergqPQDGWhJGt8GDRnY0L/iJVQcU3eJ46GYf52R8tk0Wxp0PymuFVZboJYXGiCqwozAYZNRjVj6IcA==}
869 | dev: false
870 |
871 | /chai/4.3.6:
872 | resolution: {integrity: sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==}
873 | engines: {node: '>=4'}
874 | dependencies:
875 | assertion-error: 1.1.0
876 | check-error: 1.0.2
877 | deep-eql: 3.0.1
878 | get-func-name: 2.0.0
879 | loupe: 2.3.4
880 | pathval: 1.1.1
881 | type-detect: 4.0.8
882 | dev: true
883 |
884 | /chalk/2.4.2:
885 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
886 | engines: {node: '>=4'}
887 | dependencies:
888 | ansi-styles: 3.2.1
889 | escape-string-regexp: 1.0.5
890 | supports-color: 5.5.0
891 |
892 | /chalk/4.1.2:
893 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
894 | engines: {node: '>=10'}
895 | dependencies:
896 | ansi-styles: 4.3.0
897 | supports-color: 7.2.0
898 | dev: true
899 |
900 | /chalk/5.0.1:
901 | resolution: {integrity: sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==}
902 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
903 | dev: false
904 |
905 | /character-entities-legacy/1.1.4:
906 | resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
907 | dev: true
908 |
909 | /character-entities/1.2.4:
910 | resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==}
911 | dev: true
912 |
913 | /character-reference-invalid/1.1.4:
914 | resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
915 | dev: true
916 |
917 | /check-error/1.0.2:
918 | resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==}
919 | dev: true
920 |
921 | /chokidar/3.5.3:
922 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
923 | engines: {node: '>= 8.10.0'}
924 | dependencies:
925 | anymatch: 3.1.2
926 | braces: 3.0.2
927 | glob-parent: 5.1.2
928 | is-binary-path: 2.1.0
929 | is-glob: 4.0.3
930 | normalize-path: 3.0.0
931 | readdirp: 3.6.0
932 | optionalDependencies:
933 | fsevents: 2.3.2
934 | dev: true
935 |
936 | /ci-info/3.3.1:
937 | resolution: {integrity: sha512-SXgeMX9VwDe7iFFaEWkA5AstuER9YKqy4EhHqr4DVqkwmD9rpVimkMKWHdjn30Ja45txyjhSn63lVX69eVCckg==}
938 | dev: true
939 |
940 | /clean-regexp/1.0.0:
941 | resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
942 | engines: {node: '>=4'}
943 | dependencies:
944 | escape-string-regexp: 1.0.5
945 | dev: true
946 |
947 | /clean-stack/2.2.0:
948 | resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
949 | engines: {node: '>=6'}
950 | dev: true
951 |
952 | /cli-cursor/3.1.0:
953 | resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
954 | engines: {node: '>=8'}
955 | dependencies:
956 | restore-cursor: 3.1.0
957 | dev: true
958 |
959 | /cli-truncate/2.1.0:
960 | resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==}
961 | engines: {node: '>=8'}
962 | dependencies:
963 | slice-ansi: 3.0.0
964 | string-width: 4.2.3
965 | dev: true
966 |
967 | /cli-truncate/3.1.0:
968 | resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==}
969 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
970 | dependencies:
971 | slice-ansi: 5.0.0
972 | string-width: 5.1.2
973 | dev: true
974 |
975 | /color-convert/1.9.3:
976 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
977 | dependencies:
978 | color-name: 1.1.3
979 |
980 | /color-convert/2.0.1:
981 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
982 | engines: {node: '>=7.0.0'}
983 | dependencies:
984 | color-name: 1.1.4
985 | dev: true
986 |
987 | /color-name/1.1.3:
988 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
989 |
990 | /color-name/1.1.4:
991 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
992 | dev: true
993 |
994 | /colorette/2.0.19:
995 | resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==}
996 | dev: true
997 |
998 | /commander/9.3.0:
999 | resolution: {integrity: sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw==}
1000 | engines: {node: ^12.20.0 || >=14}
1001 | dev: true
1002 |
1003 | /commondir/1.0.1:
1004 | resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
1005 | dev: false
1006 |
1007 | /concat-map/0.0.1:
1008 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
1009 |
1010 | /consola/2.15.3:
1011 | resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==}
1012 | dev: false
1013 |
1014 | /convert-source-map/1.8.0:
1015 | resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==}
1016 | dependencies:
1017 | safe-buffer: 5.1.2
1018 | dev: false
1019 |
1020 | /cross-spawn/7.0.3:
1021 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
1022 | engines: {node: '>= 8'}
1023 | dependencies:
1024 | path-key: 3.1.1
1025 | shebang-command: 2.0.0
1026 | which: 2.0.2
1027 | dev: true
1028 |
1029 | /cssesc/3.0.0:
1030 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
1031 | engines: {node: '>=4'}
1032 | hasBin: true
1033 | dev: true
1034 |
1035 | /debug/2.6.9:
1036 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
1037 | peerDependencies:
1038 | supports-color: '*'
1039 | peerDependenciesMeta:
1040 | supports-color:
1041 | optional: true
1042 | dependencies:
1043 | ms: 2.0.0
1044 | dev: true
1045 |
1046 | /debug/3.2.7:
1047 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
1048 | peerDependencies:
1049 | supports-color: '*'
1050 | peerDependenciesMeta:
1051 | supports-color:
1052 | optional: true
1053 | dependencies:
1054 | ms: 2.1.2
1055 | dev: true
1056 |
1057 | /debug/4.3.4:
1058 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
1059 | engines: {node: '>=6.0'}
1060 | peerDependencies:
1061 | supports-color: '*'
1062 | peerDependenciesMeta:
1063 | supports-color:
1064 | optional: true
1065 | dependencies:
1066 | ms: 2.1.2
1067 |
1068 | /deep-eql/3.0.1:
1069 | resolution: {integrity: sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==}
1070 | engines: {node: '>=0.12'}
1071 | dependencies:
1072 | type-detect: 4.0.8
1073 | dev: true
1074 |
1075 | /deep-is/0.1.4:
1076 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
1077 | dev: true
1078 |
1079 | /deepmerge/4.2.2:
1080 | resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==}
1081 | engines: {node: '>=0.10.0'}
1082 | dev: false
1083 |
1084 | /define-properties/1.1.4:
1085 | resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
1086 | engines: {node: '>= 0.4'}
1087 | dependencies:
1088 | has-property-descriptors: 1.0.0
1089 | object-keys: 1.1.1
1090 | dev: true
1091 |
1092 | /defu/5.0.1:
1093 | resolution: {integrity: sha512-EPS1carKg+dkEVy3qNTqIdp2qV7mUP08nIsupfwQpz++slCVRw7qbQyWvSTig+kFPwz2XXp5/kIIkH+CwrJKkQ==}
1094 | dev: false
1095 |
1096 | /defu/6.0.0:
1097 | resolution: {integrity: sha512-t2MZGLf1V2rV4VBZbWIaXKdX/mUcYW0n2znQZoADBkGGxYL8EWqCuCZBmJPJ/Yy9fofJkyuuSuo5GSwo0XdEgw==}
1098 | dev: false
1099 |
1100 | /dir-glob/3.0.1:
1101 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
1102 | engines: {node: '>=8'}
1103 | dependencies:
1104 | path-type: 4.0.0
1105 |
1106 | /doctrine/2.1.0:
1107 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
1108 | engines: {node: '>=0.10.0'}
1109 | dependencies:
1110 | esutils: 2.0.3
1111 | dev: true
1112 |
1113 | /doctrine/3.0.0:
1114 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
1115 | engines: {node: '>=6.0.0'}
1116 | dependencies:
1117 | esutils: 2.0.3
1118 | dev: true
1119 |
1120 | /dom-serializer/1.4.1:
1121 | resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
1122 | dependencies:
1123 | domelementtype: 2.3.0
1124 | domhandler: 4.3.1
1125 | entities: 2.2.0
1126 | dev: true
1127 |
1128 | /domelementtype/2.3.0:
1129 | resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
1130 | dev: true
1131 |
1132 | /domhandler/4.3.1:
1133 | resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
1134 | engines: {node: '>= 4'}
1135 | dependencies:
1136 | domelementtype: 2.3.0
1137 | dev: true
1138 |
1139 | /domutils/2.8.0:
1140 | resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
1141 | dependencies:
1142 | dom-serializer: 1.4.1
1143 | domelementtype: 2.3.0
1144 | domhandler: 4.3.1
1145 | dev: true
1146 |
1147 | /eastasianwidth/0.2.0:
1148 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
1149 | dev: true
1150 |
1151 | /electron-to-chromium/1.4.152:
1152 | resolution: {integrity: sha512-jk4Ju5SGZAQQJ1iI4Rgru7dDlvkQPLpNPWH9gIZmwCD4YteA5Bbk1xPcPDUf5jUYs3e1e80RXdi8XgKQZaigeg==}
1153 | dev: false
1154 |
1155 | /emoji-regex/8.0.0:
1156 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
1157 | dev: true
1158 |
1159 | /emoji-regex/9.2.2:
1160 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
1161 | dev: true
1162 |
1163 | /entities/2.2.0:
1164 | resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
1165 | dev: true
1166 |
1167 | /entities/3.0.1:
1168 | resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==}
1169 | engines: {node: '>=0.12'}
1170 | dev: true
1171 |
1172 | /error-ex/1.3.2:
1173 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
1174 | dependencies:
1175 | is-arrayish: 0.2.1
1176 | dev: true
1177 |
1178 | /es-abstract/1.20.1:
1179 | resolution: {integrity: sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==}
1180 | engines: {node: '>= 0.4'}
1181 | dependencies:
1182 | call-bind: 1.0.2
1183 | es-to-primitive: 1.2.1
1184 | function-bind: 1.1.1
1185 | function.prototype.name: 1.1.5
1186 | get-intrinsic: 1.1.2
1187 | get-symbol-description: 1.0.0
1188 | has: 1.0.3
1189 | has-property-descriptors: 1.0.0
1190 | has-symbols: 1.0.3
1191 | internal-slot: 1.0.3
1192 | is-callable: 1.2.4
1193 | is-negative-zero: 2.0.2
1194 | is-regex: 1.1.4
1195 | is-shared-array-buffer: 1.0.2
1196 | is-string: 1.0.7
1197 | is-weakref: 1.0.2
1198 | object-inspect: 1.12.2
1199 | object-keys: 1.1.1
1200 | object.assign: 4.1.2
1201 | regexp.prototype.flags: 1.4.3
1202 | string.prototype.trimend: 1.0.5
1203 | string.prototype.trimstart: 1.0.5
1204 | unbox-primitive: 1.0.2
1205 | dev: true
1206 |
1207 | /es-module-lexer/0.9.3:
1208 | resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==}
1209 | dev: false
1210 |
1211 | /es-shim-unscopables/1.0.0:
1212 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==}
1213 | dependencies:
1214 | has: 1.0.3
1215 | dev: true
1216 |
1217 | /es-to-primitive/1.2.1:
1218 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
1219 | engines: {node: '>= 0.4'}
1220 | dependencies:
1221 | is-callable: 1.2.4
1222 | is-date-object: 1.0.5
1223 | is-symbol: 1.0.4
1224 | dev: true
1225 |
1226 | /esbuild-android-64/0.14.43:
1227 | resolution: {integrity: sha512-kqFXAS72K6cNrB6RiM7YJ5lNvmWRDSlpi7ZuRZ1hu1S3w0zlwcoCxWAyM23LQUyZSs1PbjHgdbbfYAN8IGh6xg==}
1228 | engines: {node: '>=12'}
1229 | cpu: [x64]
1230 | os: [android]
1231 | requiresBuild: true
1232 | optional: true
1233 |
1234 | /esbuild-android-arm64/0.13.15:
1235 | resolution: {integrity: sha512-m602nft/XXeO8YQPUDVoHfjyRVPdPgjyyXOxZ44MK/agewFFkPa8tUo6lAzSWh5Ui5PB4KR9UIFTSBKh/RrCmg==}
1236 | cpu: [arm64]
1237 | os: [android]
1238 | requiresBuild: true
1239 | dev: false
1240 | optional: true
1241 |
1242 | /esbuild-android-arm64/0.14.43:
1243 | resolution: {integrity: sha512-bKS2BBFh+7XZY9rpjiHGRNA7LvWYbZWP87pLehggTG7tTaCDvj8qQGOU/OZSjCSKDYbgY7Q+oDw8RlYQ2Jt2BA==}
1244 | engines: {node: '>=12'}
1245 | cpu: [arm64]
1246 | os: [android]
1247 | requiresBuild: true
1248 | optional: true
1249 |
1250 | /esbuild-darwin-64/0.13.15:
1251 | resolution: {integrity: sha512-ihOQRGs2yyp7t5bArCwnvn2Atr6X4axqPpEdCFPVp7iUj4cVSdisgvEKdNR7yH3JDjW6aQDw40iQFoTqejqxvQ==}
1252 | cpu: [x64]
1253 | os: [darwin]
1254 | requiresBuild: true
1255 | dev: false
1256 | optional: true
1257 |
1258 | /esbuild-darwin-64/0.14.43:
1259 | resolution: {integrity: sha512-/3PSilx011ttoieRGkSZ0XV8zjBf2C9enV4ScMMbCT4dpx0mFhMOpFnCHkOK0pWGB8LklykFyHrWk2z6DENVUg==}
1260 | engines: {node: '>=12'}
1261 | cpu: [x64]
1262 | os: [darwin]
1263 | requiresBuild: true
1264 | optional: true
1265 |
1266 | /esbuild-darwin-arm64/0.13.15:
1267 | resolution: {integrity: sha512-i1FZssTVxUqNlJ6cBTj5YQj4imWy3m49RZRnHhLpefFIh0To05ow9DTrXROTE1urGTQCloFUXTX8QfGJy1P8dQ==}
1268 | cpu: [arm64]
1269 | os: [darwin]
1270 | requiresBuild: true
1271 | dev: false
1272 | optional: true
1273 |
1274 | /esbuild-darwin-arm64/0.14.43:
1275 | resolution: {integrity: sha512-1HyFUKs8DMCBOvw1Qxpr5Vv/ThNcVIFb5xgXWK3pyT40WPvgYIiRTwJCvNs4l8i5qWF8/CK5bQxJVDjQvtv0Yw==}
1276 | engines: {node: '>=12'}
1277 | cpu: [arm64]
1278 | os: [darwin]
1279 | requiresBuild: true
1280 | optional: true
1281 |
1282 | /esbuild-freebsd-64/0.13.15:
1283 | resolution: {integrity: sha512-G3dLBXUI6lC6Z09/x+WtXBXbOYQZ0E8TDBqvn7aMaOCzryJs8LyVXKY4CPnHFXZAbSwkCbqiPuSQ1+HhrNk7EA==}
1284 | cpu: [x64]
1285 | os: [freebsd]
1286 | requiresBuild: true
1287 | dev: false
1288 | optional: true
1289 |
1290 | /esbuild-freebsd-64/0.14.43:
1291 | resolution: {integrity: sha512-FNWc05TPHYgaXjbPZO5/rJKSBslfG6BeMSs8GhwnqAKP56eEhvmzwnIz1QcC9cRVyO+IKqWNfmHFkCa1WJTULA==}
1292 | engines: {node: '>=12'}
1293 | cpu: [x64]
1294 | os: [freebsd]
1295 | requiresBuild: true
1296 | optional: true
1297 |
1298 | /esbuild-freebsd-arm64/0.13.15:
1299 | resolution: {integrity: sha512-KJx0fzEDf1uhNOZQStV4ujg30WlnwqUASaGSFPhznLM/bbheu9HhqZ6mJJZM32lkyfGJikw0jg7v3S0oAvtvQQ==}
1300 | cpu: [arm64]
1301 | os: [freebsd]
1302 | requiresBuild: true
1303 | dev: false
1304 | optional: true
1305 |
1306 | /esbuild-freebsd-arm64/0.14.43:
1307 | resolution: {integrity: sha512-amrYopclz3VohqisOPR6hA3GOWA3LZC1WDLnp21RhNmoERmJ/vLnOpnrG2P/Zao+/erKTCUqmrCIPVtj58DRoA==}
1308 | engines: {node: '>=12'}
1309 | cpu: [arm64]
1310 | os: [freebsd]
1311 | requiresBuild: true
1312 | optional: true
1313 |
1314 | /esbuild-linux-32/0.13.15:
1315 | resolution: {integrity: sha512-ZvTBPk0YWCLMCXiFmD5EUtB30zIPvC5Itxz0mdTu/xZBbbHJftQgLWY49wEPSn2T/TxahYCRDWun5smRa0Tu+g==}
1316 | cpu: [ia32]
1317 | os: [linux]
1318 | requiresBuild: true
1319 | dev: false
1320 | optional: true
1321 |
1322 | /esbuild-linux-32/0.14.43:
1323 | resolution: {integrity: sha512-KoxoEra+9O3AKVvgDFvDkiuddCds6q71owSQEYwjtqRV7RwbPzKxJa6+uyzUulHcyGVq0g15K0oKG5CFBcvYDw==}
1324 | engines: {node: '>=12'}
1325 | cpu: [ia32]
1326 | os: [linux]
1327 | requiresBuild: true
1328 | optional: true
1329 |
1330 | /esbuild-linux-64/0.13.15:
1331 | resolution: {integrity: sha512-eCKzkNSLywNeQTRBxJRQ0jxRCl2YWdMB3+PkWFo2BBQYC5mISLIVIjThNtn6HUNqua1pnvgP5xX0nHbZbPj5oA==}
1332 | cpu: [x64]
1333 | os: [linux]
1334 | requiresBuild: true
1335 | dev: false
1336 | optional: true
1337 |
1338 | /esbuild-linux-64/0.14.43:
1339 | resolution: {integrity: sha512-EwINwGMyiJMgBby5/SbMqKcUhS5AYAZ2CpEBzSowsJPNBJEdhkCTtEjk757TN/wxgbu3QklqDM6KghY660QCUw==}
1340 | engines: {node: '>=12'}
1341 | cpu: [x64]
1342 | os: [linux]
1343 | requiresBuild: true
1344 | optional: true
1345 |
1346 | /esbuild-linux-arm/0.13.15:
1347 | resolution: {integrity: sha512-wUHttDi/ol0tD8ZgUMDH8Ef7IbDX+/UsWJOXaAyTdkT7Yy9ZBqPg8bgB/Dn3CZ9SBpNieozrPRHm0BGww7W/jA==}
1348 | cpu: [arm]
1349 | os: [linux]
1350 | requiresBuild: true
1351 | dev: false
1352 | optional: true
1353 |
1354 | /esbuild-linux-arm/0.14.43:
1355 | resolution: {integrity: sha512-e6YzQUoDxxtyamuF12eVzzRC7bbEFSZohJ6igQB9tBqnNmIQY3fI6Cns3z2wxtbZ3f2o6idkD2fQnlvs2902Dg==}
1356 | engines: {node: '>=12'}
1357 | cpu: [arm]
1358 | os: [linux]
1359 | requiresBuild: true
1360 | optional: true
1361 |
1362 | /esbuild-linux-arm64/0.13.15:
1363 | resolution: {integrity: sha512-bYpuUlN6qYU9slzr/ltyLTR9YTBS7qUDymO8SV7kjeNext61OdmqFAzuVZom+OLW1HPHseBfJ/JfdSlx8oTUoA==}
1364 | cpu: [arm64]
1365 | os: [linux]
1366 | requiresBuild: true
1367 | dev: false
1368 | optional: true
1369 |
1370 | /esbuild-linux-arm64/0.14.43:
1371 | resolution: {integrity: sha512-UlSpjMWllAc70zYbHxWuDS3FJytyuR/gHJYBr8BICcTNb/TSOYVBg6U7b3jZ3mILTrgzwJUHwhEwK18FZDouUQ==}
1372 | engines: {node: '>=12'}
1373 | cpu: [arm64]
1374 | os: [linux]
1375 | requiresBuild: true
1376 | optional: true
1377 |
1378 | /esbuild-linux-mips64le/0.13.15:
1379 | resolution: {integrity: sha512-KlVjIG828uFPyJkO/8gKwy9RbXhCEUeFsCGOJBepUlpa7G8/SeZgncUEz/tOOUJTcWMTmFMtdd3GElGyAtbSWg==}
1380 | cpu: [mips64el]
1381 | os: [linux]
1382 | requiresBuild: true
1383 | dev: false
1384 | optional: true
1385 |
1386 | /esbuild-linux-mips64le/0.14.43:
1387 | resolution: {integrity: sha512-f+v8cInPEL1/SDP//CfSYzcDNgE4CY3xgDV81DWm3KAPWzhvxARrKxB1Pstf5mB56yAslJDxu7ryBUPX207EZA==}
1388 | engines: {node: '>=12'}
1389 | cpu: [mips64el]
1390 | os: [linux]
1391 | requiresBuild: true
1392 | optional: true
1393 |
1394 | /esbuild-linux-ppc64le/0.13.15:
1395 | resolution: {integrity: sha512-h6gYF+OsaqEuBjeesTBtUPw0bmiDu7eAeuc2OEH9S6mV9/jPhPdhOWzdeshb0BskRZxPhxPOjqZ+/OqLcxQwEQ==}
1396 | cpu: [ppc64]
1397 | os: [linux]
1398 | requiresBuild: true
1399 | dev: false
1400 | optional: true
1401 |
1402 | /esbuild-linux-ppc64le/0.14.43:
1403 | resolution: {integrity: sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA==}
1404 | engines: {node: '>=12'}
1405 | cpu: [ppc64]
1406 | os: [linux]
1407 | requiresBuild: true
1408 | optional: true
1409 |
1410 | /esbuild-linux-riscv64/0.14.43:
1411 | resolution: {integrity: sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw==}
1412 | engines: {node: '>=12'}
1413 | cpu: [riscv64]
1414 | os: [linux]
1415 | requiresBuild: true
1416 | optional: true
1417 |
1418 | /esbuild-linux-s390x/0.14.43:
1419 | resolution: {integrity: sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ==}
1420 | engines: {node: '>=12'}
1421 | cpu: [s390x]
1422 | os: [linux]
1423 | requiresBuild: true
1424 | optional: true
1425 |
1426 | /esbuild-netbsd-64/0.13.15:
1427 | resolution: {integrity: sha512-3+yE9emwoevLMyvu+iR3rsa+Xwhie7ZEHMGDQ6dkqP/ndFzRHkobHUKTe+NCApSqG5ce2z4rFu+NX/UHnxlh3w==}
1428 | cpu: [x64]
1429 | os: [netbsd]
1430 | requiresBuild: true
1431 | dev: false
1432 | optional: true
1433 |
1434 | /esbuild-netbsd-64/0.14.43:
1435 | resolution: {integrity: sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ==}
1436 | engines: {node: '>=12'}
1437 | cpu: [x64]
1438 | os: [netbsd]
1439 | requiresBuild: true
1440 | optional: true
1441 |
1442 | /esbuild-openbsd-64/0.13.15:
1443 | resolution: {integrity: sha512-wTfvtwYJYAFL1fSs8yHIdf5GEE4NkbtbXtjLWjM3Cw8mmQKqsg8kTiqJ9NJQe5NX/5Qlo7Xd9r1yKMMkHllp5g==}
1444 | cpu: [x64]
1445 | os: [openbsd]
1446 | requiresBuild: true
1447 | dev: false
1448 | optional: true
1449 |
1450 | /esbuild-openbsd-64/0.14.43:
1451 | resolution: {integrity: sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg==}
1452 | engines: {node: '>=12'}
1453 | cpu: [x64]
1454 | os: [openbsd]
1455 | requiresBuild: true
1456 | optional: true
1457 |
1458 | /esbuild-sunos-64/0.13.15:
1459 | resolution: {integrity: sha512-lbivT9Bx3t1iWWrSnGyBP9ODriEvWDRiweAs69vI+miJoeKwHWOComSRukttbuzjZ8r1q0mQJ8Z7yUsDJ3hKdw==}
1460 | cpu: [x64]
1461 | os: [sunos]
1462 | requiresBuild: true
1463 | dev: false
1464 | optional: true
1465 |
1466 | /esbuild-sunos-64/0.14.43:
1467 | resolution: {integrity: sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q==}
1468 | engines: {node: '>=12'}
1469 | cpu: [x64]
1470 | os: [sunos]
1471 | requiresBuild: true
1472 | optional: true
1473 |
1474 | /esbuild-windows-32/0.13.15:
1475 | resolution: {integrity: sha512-fDMEf2g3SsJ599MBr50cY5ve5lP1wyVwTe6aLJsM01KtxyKkB4UT+fc5MXQFn3RLrAIAZOG+tHC+yXObpSn7Nw==}
1476 | cpu: [ia32]
1477 | os: [win32]
1478 | requiresBuild: true
1479 | dev: false
1480 | optional: true
1481 |
1482 | /esbuild-windows-32/0.14.43:
1483 | resolution: {integrity: sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw==}
1484 | engines: {node: '>=12'}
1485 | cpu: [ia32]
1486 | os: [win32]
1487 | requiresBuild: true
1488 | optional: true
1489 |
1490 | /esbuild-windows-64/0.13.15:
1491 | resolution: {integrity: sha512-9aMsPRGDWCd3bGjUIKG/ZOJPKsiztlxl/Q3C1XDswO6eNX/Jtwu4M+jb6YDH9hRSUflQWX0XKAfWzgy5Wk54JQ==}
1492 | cpu: [x64]
1493 | os: [win32]
1494 | requiresBuild: true
1495 | dev: false
1496 | optional: true
1497 |
1498 | /esbuild-windows-64/0.14.43:
1499 | resolution: {integrity: sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw==}
1500 | engines: {node: '>=12'}
1501 | cpu: [x64]
1502 | os: [win32]
1503 | requiresBuild: true
1504 | optional: true
1505 |
1506 | /esbuild-windows-arm64/0.13.15:
1507 | resolution: {integrity: sha512-zzvyCVVpbwQQATaf3IG8mu1IwGEiDxKkYUdA4FpoCHi1KtPa13jeScYDjlW0Qh+ebWzpKfR2ZwvqAQkSWNcKjA==}
1508 | cpu: [arm64]
1509 | os: [win32]
1510 | requiresBuild: true
1511 | dev: false
1512 | optional: true
1513 |
1514 | /esbuild-windows-arm64/0.14.43:
1515 | resolution: {integrity: sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw==}
1516 | engines: {node: '>=12'}
1517 | cpu: [arm64]
1518 | os: [win32]
1519 | requiresBuild: true
1520 | optional: true
1521 |
1522 | /esbuild/0.13.15:
1523 | resolution: {integrity: sha512-raCxt02HBKv8RJxE8vkTSCXGIyKHdEdGfUmiYb8wnabnaEmHzyW7DCHb5tEN0xU8ryqg5xw54mcwnYkC4x3AIw==}
1524 | hasBin: true
1525 | requiresBuild: true
1526 | optionalDependencies:
1527 | esbuild-android-arm64: 0.13.15
1528 | esbuild-darwin-64: 0.13.15
1529 | esbuild-darwin-arm64: 0.13.15
1530 | esbuild-freebsd-64: 0.13.15
1531 | esbuild-freebsd-arm64: 0.13.15
1532 | esbuild-linux-32: 0.13.15
1533 | esbuild-linux-64: 0.13.15
1534 | esbuild-linux-arm: 0.13.15
1535 | esbuild-linux-arm64: 0.13.15
1536 | esbuild-linux-mips64le: 0.13.15
1537 | esbuild-linux-ppc64le: 0.13.15
1538 | esbuild-netbsd-64: 0.13.15
1539 | esbuild-openbsd-64: 0.13.15
1540 | esbuild-sunos-64: 0.13.15
1541 | esbuild-windows-32: 0.13.15
1542 | esbuild-windows-64: 0.13.15
1543 | esbuild-windows-arm64: 0.13.15
1544 | dev: false
1545 |
1546 | /esbuild/0.14.43:
1547 | resolution: {integrity: sha512-Uf94+kQmy/5jsFwKWiQB4hfo/RkM9Dh7b79p8yqd1tshULdr25G2szLz631NoH3s2ujnKEKVD16RmOxvCNKRFA==}
1548 | engines: {node: '>=12'}
1549 | hasBin: true
1550 | requiresBuild: true
1551 | optionalDependencies:
1552 | esbuild-android-64: 0.14.43
1553 | esbuild-android-arm64: 0.14.43
1554 | esbuild-darwin-64: 0.14.43
1555 | esbuild-darwin-arm64: 0.14.43
1556 | esbuild-freebsd-64: 0.14.43
1557 | esbuild-freebsd-arm64: 0.14.43
1558 | esbuild-linux-32: 0.14.43
1559 | esbuild-linux-64: 0.14.43
1560 | esbuild-linux-arm: 0.14.43
1561 | esbuild-linux-arm64: 0.14.43
1562 | esbuild-linux-mips64le: 0.14.43
1563 | esbuild-linux-ppc64le: 0.14.43
1564 | esbuild-linux-riscv64: 0.14.43
1565 | esbuild-linux-s390x: 0.14.43
1566 | esbuild-netbsd-64: 0.14.43
1567 | esbuild-openbsd-64: 0.14.43
1568 | esbuild-sunos-64: 0.14.43
1569 | esbuild-windows-32: 0.14.43
1570 | esbuild-windows-64: 0.14.43
1571 | esbuild-windows-arm64: 0.14.43
1572 |
1573 | /escalade/3.1.1:
1574 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
1575 | engines: {node: '>=6'}
1576 | dev: false
1577 |
1578 | /escape-string-regexp/1.0.5:
1579 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
1580 | engines: {node: '>=0.8.0'}
1581 |
1582 | /escape-string-regexp/4.0.0:
1583 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
1584 | engines: {node: '>=10'}
1585 | dev: true
1586 |
1587 | /escape-string-regexp/5.0.0:
1588 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
1589 | engines: {node: '>=12'}
1590 | dev: true
1591 |
1592 | /eslint-import-resolver-node/0.3.6:
1593 | resolution: {integrity: sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==}
1594 | dependencies:
1595 | debug: 3.2.7
1596 | resolve: 1.22.0
1597 | transitivePeerDependencies:
1598 | - supports-color
1599 | dev: true
1600 |
1601 | /eslint-module-utils/2.7.3_5uhabtgzo3akfzi73a5jap3i6a:
1602 | resolution: {integrity: sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==}
1603 | engines: {node: '>=4'}
1604 | peerDependencies:
1605 | '@typescript-eslint/parser': '*'
1606 | eslint-import-resolver-node: '*'
1607 | eslint-import-resolver-typescript: '*'
1608 | eslint-import-resolver-webpack: '*'
1609 | peerDependenciesMeta:
1610 | '@typescript-eslint/parser':
1611 | optional: true
1612 | eslint-import-resolver-node:
1613 | optional: true
1614 | eslint-import-resolver-typescript:
1615 | optional: true
1616 | eslint-import-resolver-webpack:
1617 | optional: true
1618 | dependencies:
1619 | '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
1620 | debug: 3.2.7
1621 | eslint-import-resolver-node: 0.3.6
1622 | find-up: 2.1.0
1623 | transitivePeerDependencies:
1624 | - supports-color
1625 | dev: true
1626 |
1627 | /eslint-plugin-es/4.1.0_eslint@8.17.0:
1628 | resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==}
1629 | engines: {node: '>=8.10.0'}
1630 | peerDependencies:
1631 | eslint: '>=4.19.1'
1632 | dependencies:
1633 | eslint: 8.17.0
1634 | eslint-utils: 2.1.0
1635 | regexpp: 3.2.0
1636 | dev: true
1637 |
1638 | /eslint-plugin-eslint-comments/3.2.0_eslint@8.17.0:
1639 | resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==}
1640 | engines: {node: '>=6.5.0'}
1641 | peerDependencies:
1642 | eslint: '>=4.19.1'
1643 | dependencies:
1644 | escape-string-regexp: 1.0.5
1645 | eslint: 8.17.0
1646 | ignore: 5.2.0
1647 | dev: true
1648 |
1649 | /eslint-plugin-html/6.2.0:
1650 | resolution: {integrity: sha512-vi3NW0E8AJombTvt8beMwkL1R/fdRWl4QSNRNMhVQKWm36/X0KF0unGNAY4mqUF06mnwVWZcIcerrCnfn9025g==}
1651 | dependencies:
1652 | htmlparser2: 7.2.0
1653 | dev: true
1654 |
1655 | /eslint-plugin-import/2.26.0_pv5w3e62ssxduf5aiwxbc3knra:
1656 | resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==}
1657 | engines: {node: '>=4'}
1658 | peerDependencies:
1659 | '@typescript-eslint/parser': '*'
1660 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
1661 | peerDependenciesMeta:
1662 | '@typescript-eslint/parser':
1663 | optional: true
1664 | dependencies:
1665 | '@typescript-eslint/parser': 5.27.1_ud6rd4xtew5bv4yhvkvu24pzm4
1666 | array-includes: 3.1.5
1667 | array.prototype.flat: 1.3.0
1668 | debug: 2.6.9
1669 | doctrine: 2.1.0
1670 | eslint: 8.17.0
1671 | eslint-import-resolver-node: 0.3.6
1672 | eslint-module-utils: 2.7.3_5uhabtgzo3akfzi73a5jap3i6a
1673 | has: 1.0.3
1674 | is-core-module: 2.9.0
1675 | is-glob: 4.0.3
1676 | minimatch: 3.1.2
1677 | object.values: 1.1.5
1678 | resolve: 1.22.0
1679 | tsconfig-paths: 3.14.1
1680 | transitivePeerDependencies:
1681 | - eslint-import-resolver-typescript
1682 | - eslint-import-resolver-webpack
1683 | - supports-color
1684 | dev: true
1685 |
1686 | /eslint-plugin-jsonc/2.3.0_eslint@8.17.0:
1687 | resolution: {integrity: sha512-QqHj7Chw8vsALsCOhFxecRIepxpbcpmMon9yA1+GaYk1Am0GanHAwnTkeVX+/ysAb4QTkeGMZ+ZPK4TKrZ/VSw==}
1688 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1689 | peerDependencies:
1690 | eslint: '>=6.0.0'
1691 | dependencies:
1692 | eslint: 8.17.0
1693 | eslint-utils: 3.0.0_eslint@8.17.0
1694 | jsonc-eslint-parser: 2.1.0
1695 | natural-compare: 1.4.0
1696 | dev: true
1697 |
1698 | /eslint-plugin-markdown/2.2.1_eslint@8.17.0:
1699 | resolution: {integrity: sha512-FgWp4iyYvTFxPwfbxofTvXxgzPsDuSKHQy2S+a8Ve6savbujey+lgrFFbXQA0HPygISpRYWYBjooPzhYSF81iA==}
1700 | engines: {node: ^8.10.0 || ^10.12.0 || >= 12.0.0}
1701 | peerDependencies:
1702 | eslint: '>=6.0.0'
1703 | dependencies:
1704 | eslint: 8.17.0
1705 | mdast-util-from-markdown: 0.8.5
1706 | transitivePeerDependencies:
1707 | - supports-color
1708 | dev: true
1709 |
1710 | /eslint-plugin-n/15.2.2_eslint@8.17.0:
1711 | resolution: {integrity: sha512-MLjZVAv4TiCIoXqjibNqCJjLkGHfrOY3XZ0ZBLoW0OnS3o98PUBnzB/kfp8dCz/4A4Y18jjX50PRnqI4ACFY1Q==}
1712 | engines: {node: '>=12.22.0'}
1713 | peerDependencies:
1714 | eslint: '>=7.0.0'
1715 | dependencies:
1716 | builtins: 5.0.1
1717 | eslint: 8.17.0
1718 | eslint-plugin-es: 4.1.0_eslint@8.17.0
1719 | eslint-utils: 3.0.0_eslint@8.17.0
1720 | ignore: 5.2.0
1721 | is-core-module: 2.9.0
1722 | minimatch: 3.1.2
1723 | resolve: 1.22.0
1724 | semver: 7.3.7
1725 | dev: true
1726 |
1727 | /eslint-plugin-promise/6.0.0_eslint@8.17.0:
1728 | resolution: {integrity: sha512-7GPezalm5Bfi/E22PnQxDWH2iW9GTvAlUNTztemeHb6c1BniSyoeTrM87JkC0wYdi6aQrZX9p2qEiAno8aTcbw==}
1729 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1730 | peerDependencies:
1731 | eslint: ^7.0.0 || ^8.0.0
1732 | dependencies:
1733 | eslint: 8.17.0
1734 | dev: true
1735 |
1736 | /eslint-plugin-react/7.30.0_eslint@8.17.0:
1737 | resolution: {integrity: sha512-RgwH7hjW48BleKsYyHK5vUAvxtE9SMPDKmcPRQgtRCYaZA0XQPt5FSkrU3nhz5ifzMZcA8opwmRJ2cmOO8tr5A==}
1738 | engines: {node: '>=4'}
1739 | peerDependencies:
1740 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
1741 | dependencies:
1742 | array-includes: 3.1.5
1743 | array.prototype.flatmap: 1.3.0
1744 | doctrine: 2.1.0
1745 | eslint: 8.17.0
1746 | estraverse: 5.3.0
1747 | jsx-ast-utils: 3.3.0
1748 | minimatch: 3.1.2
1749 | object.entries: 1.1.5
1750 | object.fromentries: 2.0.5
1751 | object.hasown: 1.1.1
1752 | object.values: 1.1.5
1753 | prop-types: 15.8.1
1754 | resolve: 2.0.0-next.3
1755 | semver: 6.3.0
1756 | string.prototype.matchall: 4.0.7
1757 | dev: true
1758 |
1759 | /eslint-plugin-unicorn/42.0.0_eslint@8.17.0:
1760 | resolution: {integrity: sha512-ixBsbhgWuxVaNlPTT8AyfJMlhyC5flCJFjyK3oKE8TRrwBnaHvUbuIkCM1lqg8ryYrFStL/T557zfKzX4GKSlg==}
1761 | engines: {node: '>=12'}
1762 | peerDependencies:
1763 | eslint: '>=8.8.0'
1764 | dependencies:
1765 | '@babel/helper-validator-identifier': 7.16.7
1766 | ci-info: 3.3.1
1767 | clean-regexp: 1.0.0
1768 | eslint: 8.17.0
1769 | eslint-utils: 3.0.0_eslint@8.17.0
1770 | esquery: 1.4.0
1771 | indent-string: 4.0.0
1772 | is-builtin-module: 3.1.0
1773 | lodash: 4.17.21
1774 | pluralize: 8.0.0
1775 | read-pkg-up: 7.0.1
1776 | regexp-tree: 0.1.24
1777 | safe-regex: 2.1.1
1778 | semver: 7.3.7
1779 | strip-indent: 3.0.0
1780 | dev: true
1781 |
1782 | /eslint-plugin-vue/8.7.1_eslint@8.17.0:
1783 | resolution: {integrity: sha512-28sbtm4l4cOzoO1LtzQPxfxhQABararUb1JtqusQqObJpWX2e/gmVyeYVfepizPFne0Q5cILkYGiBoV36L12Wg==}
1784 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1785 | peerDependencies:
1786 | eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
1787 | dependencies:
1788 | eslint: 8.17.0
1789 | eslint-utils: 3.0.0_eslint@8.17.0
1790 | natural-compare: 1.4.0
1791 | nth-check: 2.1.1
1792 | postcss-selector-parser: 6.0.10
1793 | semver: 7.3.7
1794 | vue-eslint-parser: 8.3.0_eslint@8.17.0
1795 | transitivePeerDependencies:
1796 | - supports-color
1797 | dev: true
1798 |
1799 | /eslint-plugin-yml/0.14.0_eslint@8.17.0:
1800 | resolution: {integrity: sha512-+0+bBV/07txENbxfrHF9olGoLCHez64vmnOmjWOoLwmXOwfdaSRleBSPIi4nWQs7WwX8lm/fSLadOjbVEcsXQQ==}
1801 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1802 | peerDependencies:
1803 | eslint: '>=6.0.0'
1804 | dependencies:
1805 | debug: 4.3.4
1806 | eslint: 8.17.0
1807 | lodash: 4.17.21
1808 | natural-compare: 1.4.0
1809 | yaml-eslint-parser: 0.5.0
1810 | transitivePeerDependencies:
1811 | - supports-color
1812 | dev: true
1813 |
1814 | /eslint-scope/5.1.1:
1815 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
1816 | engines: {node: '>=8.0.0'}
1817 | dependencies:
1818 | esrecurse: 4.3.0
1819 | estraverse: 4.3.0
1820 | dev: true
1821 |
1822 | /eslint-scope/7.1.1:
1823 | resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==}
1824 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1825 | dependencies:
1826 | esrecurse: 4.3.0
1827 | estraverse: 5.3.0
1828 | dev: true
1829 |
1830 | /eslint-utils/2.1.0:
1831 | resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==}
1832 | engines: {node: '>=6'}
1833 | dependencies:
1834 | eslint-visitor-keys: 1.3.0
1835 | dev: true
1836 |
1837 | /eslint-utils/3.0.0_eslint@8.17.0:
1838 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==}
1839 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
1840 | peerDependencies:
1841 | eslint: '>=5'
1842 | dependencies:
1843 | eslint: 8.17.0
1844 | eslint-visitor-keys: 2.1.0
1845 | dev: true
1846 |
1847 | /eslint-visitor-keys/1.3.0:
1848 | resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==}
1849 | engines: {node: '>=4'}
1850 | dev: true
1851 |
1852 | /eslint-visitor-keys/2.1.0:
1853 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==}
1854 | engines: {node: '>=10'}
1855 | dev: true
1856 |
1857 | /eslint-visitor-keys/3.3.0:
1858 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==}
1859 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1860 | dev: true
1861 |
1862 | /eslint/8.17.0:
1863 | resolution: {integrity: sha512-gq0m0BTJfci60Fz4nczYxNAlED+sMcihltndR8t9t1evnU/azx53x3t2UHXC/uRjcbvRw/XctpaNygSTcQD+Iw==}
1864 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1865 | hasBin: true
1866 | dependencies:
1867 | '@eslint/eslintrc': 1.3.0
1868 | '@humanwhocodes/config-array': 0.9.5
1869 | ajv: 6.12.6
1870 | chalk: 4.1.2
1871 | cross-spawn: 7.0.3
1872 | debug: 4.3.4
1873 | doctrine: 3.0.0
1874 | escape-string-regexp: 4.0.0
1875 | eslint-scope: 7.1.1
1876 | eslint-utils: 3.0.0_eslint@8.17.0
1877 | eslint-visitor-keys: 3.3.0
1878 | espree: 9.3.2
1879 | esquery: 1.4.0
1880 | esutils: 2.0.3
1881 | fast-deep-equal: 3.1.3
1882 | file-entry-cache: 6.0.1
1883 | functional-red-black-tree: 1.0.1
1884 | glob-parent: 6.0.2
1885 | globals: 13.15.0
1886 | ignore: 5.2.0
1887 | import-fresh: 3.3.0
1888 | imurmurhash: 0.1.4
1889 | is-glob: 4.0.3
1890 | js-yaml: 4.1.0
1891 | json-stable-stringify-without-jsonify: 1.0.1
1892 | levn: 0.4.1
1893 | lodash.merge: 4.6.2
1894 | minimatch: 3.1.2
1895 | natural-compare: 1.4.0
1896 | optionator: 0.9.1
1897 | regexpp: 3.2.0
1898 | strip-ansi: 6.0.1
1899 | strip-json-comments: 3.1.1
1900 | text-table: 0.2.0
1901 | v8-compile-cache: 2.3.0
1902 | transitivePeerDependencies:
1903 | - supports-color
1904 | dev: true
1905 |
1906 | /espree/9.3.2:
1907 | resolution: {integrity: sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==}
1908 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1909 | dependencies:
1910 | acorn: 8.7.1
1911 | acorn-jsx: 5.3.2_acorn@8.7.1
1912 | eslint-visitor-keys: 3.3.0
1913 | dev: true
1914 |
1915 | /esquery/1.4.0:
1916 | resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==}
1917 | engines: {node: '>=0.10'}
1918 | dependencies:
1919 | estraverse: 5.3.0
1920 | dev: true
1921 |
1922 | /esrecurse/4.3.0:
1923 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
1924 | engines: {node: '>=4.0'}
1925 | dependencies:
1926 | estraverse: 5.3.0
1927 | dev: true
1928 |
1929 | /estraverse/4.3.0:
1930 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
1931 | engines: {node: '>=4.0'}
1932 | dev: true
1933 |
1934 | /estraverse/5.3.0:
1935 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
1936 | engines: {node: '>=4.0'}
1937 | dev: true
1938 |
1939 | /estree-walker/1.0.1:
1940 | resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==}
1941 | dev: false
1942 |
1943 | /estree-walker/2.0.2:
1944 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
1945 |
1946 | /esutils/2.0.3:
1947 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
1948 | engines: {node: '>=0.10.0'}
1949 | dev: true
1950 |
1951 | /execa/6.1.0:
1952 | resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==}
1953 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
1954 | dependencies:
1955 | cross-spawn: 7.0.3
1956 | get-stream: 6.0.1
1957 | human-signals: 3.0.1
1958 | is-stream: 3.0.0
1959 | merge-stream: 2.0.0
1960 | npm-run-path: 5.1.0
1961 | onetime: 6.0.0
1962 | signal-exit: 3.0.7
1963 | strip-final-newline: 3.0.0
1964 | dev: true
1965 |
1966 | /fast-deep-equal/3.1.3:
1967 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
1968 | dev: true
1969 |
1970 | /fast-glob/3.2.11:
1971 | resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==}
1972 | engines: {node: '>=8.6.0'}
1973 | dependencies:
1974 | '@nodelib/fs.stat': 2.0.5
1975 | '@nodelib/fs.walk': 1.2.8
1976 | glob-parent: 5.1.2
1977 | merge2: 1.4.1
1978 | micromatch: 4.0.5
1979 |
1980 | /fast-json-stable-stringify/2.1.0:
1981 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
1982 | dev: true
1983 |
1984 | /fast-levenshtein/2.0.6:
1985 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
1986 | dev: true
1987 |
1988 | /fastq/1.13.0:
1989 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==}
1990 | dependencies:
1991 | reusify: 1.0.4
1992 |
1993 | /file-entry-cache/6.0.1:
1994 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
1995 | engines: {node: ^10.12.0 || >=12.0.0}
1996 | dependencies:
1997 | flat-cache: 3.0.4
1998 | dev: true
1999 |
2000 | /fill-range/7.0.1:
2001 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
2002 | engines: {node: '>=8'}
2003 | dependencies:
2004 | to-regex-range: 5.0.1
2005 |
2006 | /find-up/2.1.0:
2007 | resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==}
2008 | engines: {node: '>=4'}
2009 | dependencies:
2010 | locate-path: 2.0.0
2011 | dev: true
2012 |
2013 | /find-up/4.1.0:
2014 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
2015 | engines: {node: '>=8'}
2016 | dependencies:
2017 | locate-path: 5.0.0
2018 | path-exists: 4.0.0
2019 | dev: true
2020 |
2021 | /flat-cache/3.0.4:
2022 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==}
2023 | engines: {node: ^10.12.0 || >=12.0.0}
2024 | dependencies:
2025 | flatted: 3.2.5
2026 | rimraf: 3.0.2
2027 | dev: true
2028 |
2029 | /flatted/3.2.5:
2030 | resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==}
2031 | dev: true
2032 |
2033 | /fs-extra/10.1.0:
2034 | resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
2035 | engines: {node: '>=12'}
2036 | dependencies:
2037 | graceful-fs: 4.2.10
2038 | jsonfile: 6.1.0
2039 | universalify: 2.0.0
2040 | dev: false
2041 |
2042 | /fs.realpath/1.0.0:
2043 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
2044 |
2045 | /fsevents/2.3.2:
2046 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
2047 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
2048 | os: [darwin]
2049 | requiresBuild: true
2050 | optional: true
2051 |
2052 | /function-bind/1.1.1:
2053 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
2054 |
2055 | /function.prototype.name/1.1.5:
2056 | resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==}
2057 | engines: {node: '>= 0.4'}
2058 | dependencies:
2059 | call-bind: 1.0.2
2060 | define-properties: 1.1.4
2061 | es-abstract: 1.20.1
2062 | functions-have-names: 1.2.3
2063 | dev: true
2064 |
2065 | /functional-red-black-tree/1.0.1:
2066 | resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==}
2067 | dev: true
2068 |
2069 | /functions-have-names/1.2.3:
2070 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
2071 | dev: true
2072 |
2073 | /gensync/1.0.0-beta.2:
2074 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
2075 | engines: {node: '>=6.9.0'}
2076 | dev: false
2077 |
2078 | /get-func-name/2.0.0:
2079 | resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==}
2080 | dev: true
2081 |
2082 | /get-intrinsic/1.1.2:
2083 | resolution: {integrity: sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==}
2084 | dependencies:
2085 | function-bind: 1.1.1
2086 | has: 1.0.3
2087 | has-symbols: 1.0.3
2088 | dev: true
2089 |
2090 | /get-stream/6.0.1:
2091 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
2092 | engines: {node: '>=10'}
2093 | dev: true
2094 |
2095 | /get-symbol-description/1.0.0:
2096 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
2097 | engines: {node: '>= 0.4'}
2098 | dependencies:
2099 | call-bind: 1.0.2
2100 | get-intrinsic: 1.1.2
2101 | dev: true
2102 |
2103 | /glob-parent/5.1.2:
2104 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
2105 | engines: {node: '>= 6'}
2106 | dependencies:
2107 | is-glob: 4.0.3
2108 |
2109 | /glob-parent/6.0.2:
2110 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
2111 | engines: {node: '>=10.13.0'}
2112 | dependencies:
2113 | is-glob: 4.0.3
2114 | dev: true
2115 |
2116 | /glob/7.2.3:
2117 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
2118 | dependencies:
2119 | fs.realpath: 1.0.0
2120 | inflight: 1.0.6
2121 | inherits: 2.0.4
2122 | minimatch: 3.1.2
2123 | once: 1.4.0
2124 | path-is-absolute: 1.0.1
2125 |
2126 | /globals/11.12.0:
2127 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
2128 | engines: {node: '>=4'}
2129 | dev: false
2130 |
2131 | /globals/13.15.0:
2132 | resolution: {integrity: sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==}
2133 | engines: {node: '>=8'}
2134 | dependencies:
2135 | type-fest: 0.20.2
2136 | dev: true
2137 |
2138 | /globby/11.1.0:
2139 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
2140 | engines: {node: '>=10'}
2141 | dependencies:
2142 | array-union: 2.1.0
2143 | dir-glob: 3.0.1
2144 | fast-glob: 3.2.11
2145 | ignore: 5.2.0
2146 | merge2: 1.4.1
2147 | slash: 3.0.0
2148 |
2149 | /graceful-fs/4.2.10:
2150 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
2151 | dev: false
2152 |
2153 | /has-bigints/1.0.2:
2154 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
2155 | dev: true
2156 |
2157 | /has-flag/3.0.0:
2158 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
2159 | engines: {node: '>=4'}
2160 |
2161 | /has-flag/4.0.0:
2162 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
2163 | engines: {node: '>=8'}
2164 | dev: true
2165 |
2166 | /has-property-descriptors/1.0.0:
2167 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
2168 | dependencies:
2169 | get-intrinsic: 1.1.2
2170 | dev: true
2171 |
2172 | /has-symbols/1.0.3:
2173 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
2174 | engines: {node: '>= 0.4'}
2175 | dev: true
2176 |
2177 | /has-tostringtag/1.0.0:
2178 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
2179 | engines: {node: '>= 0.4'}
2180 | dependencies:
2181 | has-symbols: 1.0.3
2182 | dev: true
2183 |
2184 | /has/1.0.3:
2185 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
2186 | engines: {node: '>= 0.4.0'}
2187 | dependencies:
2188 | function-bind: 1.1.1
2189 |
2190 | /hookable/5.1.1:
2191 | resolution: {integrity: sha512-7qam9XBFb+DijNBthaL1k/7lHU2TEMZkWSyuqmU3sCQze1wFm5w9AlEx30PD7a+QVAjOy6Ec2goFwe1YVyk2uA==}
2192 | dev: false
2193 |
2194 | /hosted-git-info/2.8.9:
2195 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
2196 | dev: true
2197 |
2198 | /htmlparser2/7.2.0:
2199 | resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==}
2200 | dependencies:
2201 | domelementtype: 2.3.0
2202 | domhandler: 4.3.1
2203 | domutils: 2.8.0
2204 | entities: 3.0.1
2205 | dev: true
2206 |
2207 | /human-signals/3.0.1:
2208 | resolution: {integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==}
2209 | engines: {node: '>=12.20.0'}
2210 | dev: true
2211 |
2212 | /husky/8.0.1:
2213 | resolution: {integrity: sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw==}
2214 | engines: {node: '>=14'}
2215 | hasBin: true
2216 | dev: true
2217 |
2218 | /ignore/5.2.0:
2219 | resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
2220 | engines: {node: '>= 4'}
2221 |
2222 | /import-fresh/3.3.0:
2223 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
2224 | engines: {node: '>=6'}
2225 | dependencies:
2226 | parent-module: 1.0.1
2227 | resolve-from: 4.0.0
2228 | dev: true
2229 |
2230 | /imurmurhash/0.1.4:
2231 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
2232 | engines: {node: '>=0.8.19'}
2233 | dev: true
2234 |
2235 | /indent-string/4.0.0:
2236 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
2237 | engines: {node: '>=8'}
2238 | dev: true
2239 |
2240 | /inflight/1.0.6:
2241 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
2242 | dependencies:
2243 | once: 1.4.0
2244 | wrappy: 1.0.2
2245 |
2246 | /inherits/2.0.4:
2247 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
2248 |
2249 | /internal-slot/1.0.3:
2250 | resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==}
2251 | engines: {node: '>= 0.4'}
2252 | dependencies:
2253 | get-intrinsic: 1.1.2
2254 | has: 1.0.3
2255 | side-channel: 1.0.4
2256 | dev: true
2257 |
2258 | /is-alphabetical/1.0.4:
2259 | resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==}
2260 | dev: true
2261 |
2262 | /is-alphanumerical/1.0.4:
2263 | resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==}
2264 | dependencies:
2265 | is-alphabetical: 1.0.4
2266 | is-decimal: 1.0.4
2267 | dev: true
2268 |
2269 | /is-arrayish/0.2.1:
2270 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
2271 | dev: true
2272 |
2273 | /is-bigint/1.0.4:
2274 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
2275 | dependencies:
2276 | has-bigints: 1.0.2
2277 | dev: true
2278 |
2279 | /is-binary-path/2.1.0:
2280 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
2281 | engines: {node: '>=8'}
2282 | dependencies:
2283 | binary-extensions: 2.2.0
2284 | dev: true
2285 |
2286 | /is-boolean-object/1.1.2:
2287 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
2288 | engines: {node: '>= 0.4'}
2289 | dependencies:
2290 | call-bind: 1.0.2
2291 | has-tostringtag: 1.0.0
2292 | dev: true
2293 |
2294 | /is-builtin-module/3.1.0:
2295 | resolution: {integrity: sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==}
2296 | engines: {node: '>=6'}
2297 | dependencies:
2298 | builtin-modules: 3.3.0
2299 |
2300 | /is-callable/1.2.4:
2301 | resolution: {integrity: sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==}
2302 | engines: {node: '>= 0.4'}
2303 | dev: true
2304 |
2305 | /is-core-module/2.9.0:
2306 | resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==}
2307 | dependencies:
2308 | has: 1.0.3
2309 |
2310 | /is-date-object/1.0.5:
2311 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
2312 | engines: {node: '>= 0.4'}
2313 | dependencies:
2314 | has-tostringtag: 1.0.0
2315 | dev: true
2316 |
2317 | /is-decimal/1.0.4:
2318 | resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==}
2319 | dev: true
2320 |
2321 | /is-extglob/2.1.1:
2322 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
2323 | engines: {node: '>=0.10.0'}
2324 |
2325 | /is-fullwidth-code-point/3.0.0:
2326 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
2327 | engines: {node: '>=8'}
2328 | dev: true
2329 |
2330 | /is-fullwidth-code-point/4.0.0:
2331 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
2332 | engines: {node: '>=12'}
2333 | dev: true
2334 |
2335 | /is-glob/4.0.3:
2336 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
2337 | engines: {node: '>=0.10.0'}
2338 | dependencies:
2339 | is-extglob: 2.1.1
2340 |
2341 | /is-hexadecimal/1.0.4:
2342 | resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==}
2343 | dev: true
2344 |
2345 | /is-module/1.0.0:
2346 | resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
2347 | dev: false
2348 |
2349 | /is-negative-zero/2.0.2:
2350 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
2351 | engines: {node: '>= 0.4'}
2352 | dev: true
2353 |
2354 | /is-number-object/1.0.7:
2355 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
2356 | engines: {node: '>= 0.4'}
2357 | dependencies:
2358 | has-tostringtag: 1.0.0
2359 | dev: true
2360 |
2361 | /is-number/7.0.0:
2362 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
2363 | engines: {node: '>=0.12.0'}
2364 |
2365 | /is-reference/1.2.1:
2366 | resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
2367 | dependencies:
2368 | '@types/estree': 0.0.51
2369 | dev: false
2370 |
2371 | /is-regex/1.1.4:
2372 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
2373 | engines: {node: '>= 0.4'}
2374 | dependencies:
2375 | call-bind: 1.0.2
2376 | has-tostringtag: 1.0.0
2377 | dev: true
2378 |
2379 | /is-shared-array-buffer/1.0.2:
2380 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
2381 | dependencies:
2382 | call-bind: 1.0.2
2383 | dev: true
2384 |
2385 | /is-stream/3.0.0:
2386 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
2387 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
2388 | dev: true
2389 |
2390 | /is-string/1.0.7:
2391 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
2392 | engines: {node: '>= 0.4'}
2393 | dependencies:
2394 | has-tostringtag: 1.0.0
2395 | dev: true
2396 |
2397 | /is-symbol/1.0.4:
2398 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
2399 | engines: {node: '>= 0.4'}
2400 | dependencies:
2401 | has-symbols: 1.0.3
2402 | dev: true
2403 |
2404 | /is-weakref/1.0.2:
2405 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
2406 | dependencies:
2407 | call-bind: 1.0.2
2408 | dev: true
2409 |
2410 | /isexe/2.0.0:
2411 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
2412 | dev: true
2413 |
2414 | /jiti/1.13.0:
2415 | resolution: {integrity: sha512-/n9mNxZj/HDSrincJ6RP+L+yXbpnB8FybySBa+IjIaoH9FIxBbrbRT5XUbe8R7zuVM2AQqNMNDDqz0bzx3znOQ==}
2416 | hasBin: true
2417 | dev: false
2418 |
2419 | /joycon/3.1.1:
2420 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
2421 | engines: {node: '>=10'}
2422 | dev: false
2423 |
2424 | /js-tokens/4.0.0:
2425 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
2426 |
2427 | /js-yaml/4.1.0:
2428 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
2429 | hasBin: true
2430 | dependencies:
2431 | argparse: 2.0.1
2432 | dev: true
2433 |
2434 | /jsesc/2.5.2:
2435 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
2436 | engines: {node: '>=4'}
2437 | hasBin: true
2438 | dev: false
2439 |
2440 | /json-parse-even-better-errors/2.3.1:
2441 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
2442 | dev: true
2443 |
2444 | /json-schema-traverse/0.4.1:
2445 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
2446 | dev: true
2447 |
2448 | /json-stable-stringify-without-jsonify/1.0.1:
2449 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
2450 | dev: true
2451 |
2452 | /json5/1.0.1:
2453 | resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==}
2454 | hasBin: true
2455 | dependencies:
2456 | minimist: 1.2.6
2457 | dev: true
2458 |
2459 | /json5/2.2.1:
2460 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
2461 | engines: {node: '>=6'}
2462 | hasBin: true
2463 | dev: false
2464 |
2465 | /jsonc-eslint-parser/2.1.0:
2466 | resolution: {integrity: sha512-qCRJWlbP2v6HbmKW7R3lFbeiVWHo+oMJ0j+MizwvauqnCV/EvtAeEeuCgoc/ErtsuoKgYB8U4Ih8AxJbXoE6/g==}
2467 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
2468 | dependencies:
2469 | acorn: 8.7.1
2470 | eslint-visitor-keys: 3.3.0
2471 | espree: 9.3.2
2472 | semver: 7.3.7
2473 | dev: true
2474 |
2475 | /jsonc-parser/3.0.0:
2476 | resolution: {integrity: sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==}
2477 |
2478 | /jsonfile/6.1.0:
2479 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
2480 | dependencies:
2481 | universalify: 2.0.0
2482 | optionalDependencies:
2483 | graceful-fs: 4.2.10
2484 | dev: false
2485 |
2486 | /jsx-ast-utils/3.3.0:
2487 | resolution: {integrity: sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q==}
2488 | engines: {node: '>=4.0'}
2489 | dependencies:
2490 | array-includes: 3.1.5
2491 | object.assign: 4.1.2
2492 | dev: true
2493 |
2494 | /kleur/3.0.3:
2495 | resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
2496 | engines: {node: '>=6'}
2497 | dev: true
2498 |
2499 | /kleur/4.1.4:
2500 | resolution: {integrity: sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==}
2501 | engines: {node: '>=6'}
2502 | dev: true
2503 |
2504 | /levn/0.4.1:
2505 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
2506 | engines: {node: '>= 0.8.0'}
2507 | dependencies:
2508 | prelude-ls: 1.2.1
2509 | type-check: 0.4.0
2510 | dev: true
2511 |
2512 | /lilconfig/2.0.5:
2513 | resolution: {integrity: sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==}
2514 | engines: {node: '>=10'}
2515 | dev: true
2516 |
2517 | /lines-and-columns/1.2.4:
2518 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
2519 | dev: true
2520 |
2521 | /lint-staged/13.0.1:
2522 | resolution: {integrity: sha512-Ykaf4QTi0a02BF7cnq7JIPGOJxH4TkNMWhSlJdH9wOekd0X+gog47Jfh/0L31DqZe5AiydLGC7LkPqpaNm+Kvg==}
2523 | engines: {node: ^14.13.1 || >=16.0.0}
2524 | hasBin: true
2525 | dependencies:
2526 | cli-truncate: 3.1.0
2527 | colorette: 2.0.19
2528 | commander: 9.3.0
2529 | debug: 4.3.4
2530 | execa: 6.1.0
2531 | lilconfig: 2.0.5
2532 | listr2: 4.0.5
2533 | micromatch: 4.0.5
2534 | normalize-path: 3.0.0
2535 | object-inspect: 1.12.2
2536 | pidtree: 0.6.0
2537 | string-argv: 0.3.1
2538 | yaml: 2.1.1
2539 | transitivePeerDependencies:
2540 | - enquirer
2541 | - supports-color
2542 | dev: true
2543 |
2544 | /listr2/4.0.5:
2545 | resolution: {integrity: sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==}
2546 | engines: {node: '>=12'}
2547 | peerDependencies:
2548 | enquirer: '>= 2.3.0 < 3'
2549 | peerDependenciesMeta:
2550 | enquirer:
2551 | optional: true
2552 | dependencies:
2553 | cli-truncate: 2.1.0
2554 | colorette: 2.0.19
2555 | log-update: 4.0.0
2556 | p-map: 4.0.0
2557 | rfdc: 1.3.0
2558 | rxjs: 7.5.5
2559 | through: 2.3.8
2560 | wrap-ansi: 7.0.0
2561 | dev: true
2562 |
2563 | /local-pkg/0.4.1:
2564 | resolution: {integrity: sha512-lL87ytIGP2FU5PWwNDo0w3WhIo2gopIAxPg9RxDYF7m4rr5ahuZxP22xnJHIvaLTe4Z9P6uKKY2UHiwyB4pcrw==}
2565 | engines: {node: '>=14'}
2566 | dev: true
2567 |
2568 | /locate-path/2.0.0:
2569 | resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
2570 | engines: {node: '>=4'}
2571 | dependencies:
2572 | p-locate: 2.0.0
2573 | path-exists: 3.0.0
2574 | dev: true
2575 |
2576 | /locate-path/5.0.0:
2577 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
2578 | engines: {node: '>=8'}
2579 | dependencies:
2580 | p-locate: 4.1.0
2581 | dev: true
2582 |
2583 | /lodash.merge/4.6.2:
2584 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
2585 | dev: true
2586 |
2587 | /lodash/4.17.21:
2588 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
2589 | dev: true
2590 |
2591 | /log-update/4.0.0:
2592 | resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==}
2593 | engines: {node: '>=10'}
2594 | dependencies:
2595 | ansi-escapes: 4.3.2
2596 | cli-cursor: 3.1.0
2597 | slice-ansi: 4.0.0
2598 | wrap-ansi: 6.2.0
2599 | dev: true
2600 |
2601 | /loose-envify/1.4.0:
2602 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
2603 | hasBin: true
2604 | dependencies:
2605 | js-tokens: 4.0.0
2606 | dev: true
2607 |
2608 | /loupe/2.3.4:
2609 | resolution: {integrity: sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==}
2610 | dependencies:
2611 | get-func-name: 2.0.0
2612 | dev: true
2613 |
2614 | /lru-cache/6.0.0:
2615 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
2616 | engines: {node: '>=10'}
2617 | dependencies:
2618 | yallist: 4.0.0
2619 | dev: true
2620 |
2621 | /magic-string/0.25.9:
2622 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
2623 | dependencies:
2624 | sourcemap-codec: 1.4.8
2625 | dev: false
2626 |
2627 | /magic-string/0.26.2:
2628 | resolution: {integrity: sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==}
2629 | engines: {node: '>=12'}
2630 | dependencies:
2631 | sourcemap-codec: 1.4.8
2632 |
2633 | /mdast-util-from-markdown/0.8.5:
2634 | resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==}
2635 | dependencies:
2636 | '@types/mdast': 3.0.10
2637 | mdast-util-to-string: 2.0.0
2638 | micromark: 2.11.4
2639 | parse-entities: 2.0.0
2640 | unist-util-stringify-position: 2.0.3
2641 | transitivePeerDependencies:
2642 | - supports-color
2643 | dev: true
2644 |
2645 | /mdast-util-to-string/2.0.0:
2646 | resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==}
2647 | dev: true
2648 |
2649 | /merge-stream/2.0.0:
2650 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
2651 | dev: true
2652 |
2653 | /merge2/1.4.1:
2654 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
2655 | engines: {node: '>= 8'}
2656 |
2657 | /micromark/2.11.4:
2658 | resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==}
2659 | dependencies:
2660 | debug: 4.3.4
2661 | parse-entities: 2.0.0
2662 | transitivePeerDependencies:
2663 | - supports-color
2664 | dev: true
2665 |
2666 | /micromatch/4.0.5:
2667 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
2668 | engines: {node: '>=8.6'}
2669 | dependencies:
2670 | braces: 3.0.2
2671 | picomatch: 2.3.1
2672 |
2673 | /mimic-fn/2.1.0:
2674 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
2675 | engines: {node: '>=6'}
2676 | dev: true
2677 |
2678 | /mimic-fn/4.0.0:
2679 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
2680 | engines: {node: '>=12'}
2681 | dev: true
2682 |
2683 | /min-indent/1.0.1:
2684 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
2685 | engines: {node: '>=4'}
2686 | dev: true
2687 |
2688 | /minimatch/3.1.2:
2689 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
2690 | dependencies:
2691 | brace-expansion: 1.1.11
2692 |
2693 | /minimist/1.2.6:
2694 | resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==}
2695 | dev: true
2696 |
2697 | /mkdirp/1.0.4:
2698 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
2699 | engines: {node: '>=10'}
2700 | hasBin: true
2701 | dev: false
2702 |
2703 | /mkdist/0.3.10_typescript@4.7.3:
2704 | resolution: {integrity: sha512-Aoc6hjILr2JPUJU2OUvBiD5sZ/CG1FeiXwk6KKPqE0iSTjBCrjrVK/fP5ig+TB3AKHvh2aA2QXXGeXVCJBdSwg==}
2705 | hasBin: true
2706 | peerDependencies:
2707 | typescript: '>=3.7'
2708 | peerDependenciesMeta:
2709 | typescript:
2710 | optional: true
2711 | dependencies:
2712 | defu: 5.0.1
2713 | esbuild: 0.13.15
2714 | fs-extra: 10.1.0
2715 | globby: 11.1.0
2716 | jiti: 1.13.0
2717 | mri: 1.2.0
2718 | pathe: 0.2.0
2719 | typescript: 4.7.3
2720 | dev: false
2721 |
2722 | /mlly/0.3.19:
2723 | resolution: {integrity: sha512-zMq5n3cOf4fOzA4WoeulxagbAgMChdev3MgP6K51k7M0u2whTXxupfIY4VVzws4vxkiWhwH1rVQcsw7zDGfRhA==}
2724 |
2725 | /mlly/0.5.2:
2726 | resolution: {integrity: sha512-4GTELSSErv6ZZJYU98fZNuIBJcXSz+ktHdRrCYEqU1m6ZlebOCG0jwZ+IEd9vOrbpYsVBBMC5OTrEyLnKRcauQ==}
2727 | dependencies:
2728 | pathe: 0.2.0
2729 | pkg-types: 0.3.2
2730 |
2731 | /mri/1.2.0:
2732 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
2733 | engines: {node: '>=4'}
2734 | dev: false
2735 |
2736 | /ms/2.0.0:
2737 | resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
2738 | dev: true
2739 |
2740 | /ms/2.1.2:
2741 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
2742 |
2743 | /nanoid/3.3.4:
2744 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
2745 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
2746 | hasBin: true
2747 | dev: true
2748 |
2749 | /nanoid/4.0.0:
2750 | resolution: {integrity: sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==}
2751 | engines: {node: ^14 || ^16 || >=18}
2752 | hasBin: true
2753 | dev: false
2754 |
2755 | /natural-compare/1.4.0:
2756 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
2757 | dev: true
2758 |
2759 | /node-releases/2.0.5:
2760 | resolution: {integrity: sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==}
2761 | dev: false
2762 |
2763 | /normalize-package-data/2.5.0:
2764 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
2765 | dependencies:
2766 | hosted-git-info: 2.8.9
2767 | resolve: 1.22.0
2768 | semver: 5.7.1
2769 | validate-npm-package-license: 3.0.4
2770 | dev: true
2771 |
2772 | /normalize-path/3.0.0:
2773 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
2774 | engines: {node: '>=0.10.0'}
2775 | dev: true
2776 |
2777 | /npm-run-path/5.1.0:
2778 | resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
2779 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
2780 | dependencies:
2781 | path-key: 4.0.0
2782 | dev: true
2783 |
2784 | /nth-check/2.1.1:
2785 | resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
2786 | dependencies:
2787 | boolbase: 1.0.0
2788 | dev: true
2789 |
2790 | /object-assign/4.1.1:
2791 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
2792 | engines: {node: '>=0.10.0'}
2793 | dev: true
2794 |
2795 | /object-inspect/1.12.2:
2796 | resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==}
2797 | dev: true
2798 |
2799 | /object-keys/1.1.1:
2800 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
2801 | engines: {node: '>= 0.4'}
2802 | dev: true
2803 |
2804 | /object.assign/4.1.2:
2805 | resolution: {integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==}
2806 | engines: {node: '>= 0.4'}
2807 | dependencies:
2808 | call-bind: 1.0.2
2809 | define-properties: 1.1.4
2810 | has-symbols: 1.0.3
2811 | object-keys: 1.1.1
2812 | dev: true
2813 |
2814 | /object.entries/1.1.5:
2815 | resolution: {integrity: sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==}
2816 | engines: {node: '>= 0.4'}
2817 | dependencies:
2818 | call-bind: 1.0.2
2819 | define-properties: 1.1.4
2820 | es-abstract: 1.20.1
2821 | dev: true
2822 |
2823 | /object.fromentries/2.0.5:
2824 | resolution: {integrity: sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==}
2825 | engines: {node: '>= 0.4'}
2826 | dependencies:
2827 | call-bind: 1.0.2
2828 | define-properties: 1.1.4
2829 | es-abstract: 1.20.1
2830 | dev: true
2831 |
2832 | /object.hasown/1.1.1:
2833 | resolution: {integrity: sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==}
2834 | dependencies:
2835 | define-properties: 1.1.4
2836 | es-abstract: 1.20.1
2837 | dev: true
2838 |
2839 | /object.values/1.1.5:
2840 | resolution: {integrity: sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==}
2841 | engines: {node: '>= 0.4'}
2842 | dependencies:
2843 | call-bind: 1.0.2
2844 | define-properties: 1.1.4
2845 | es-abstract: 1.20.1
2846 | dev: true
2847 |
2848 | /once/1.4.0:
2849 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
2850 | dependencies:
2851 | wrappy: 1.0.2
2852 |
2853 | /onetime/5.1.2:
2854 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
2855 | engines: {node: '>=6'}
2856 | dependencies:
2857 | mimic-fn: 2.1.0
2858 | dev: true
2859 |
2860 | /onetime/6.0.0:
2861 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
2862 | engines: {node: '>=12'}
2863 | dependencies:
2864 | mimic-fn: 4.0.0
2865 | dev: true
2866 |
2867 | /optionator/0.9.1:
2868 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==}
2869 | engines: {node: '>= 0.8.0'}
2870 | dependencies:
2871 | deep-is: 0.1.4
2872 | fast-levenshtein: 2.0.6
2873 | levn: 0.4.1
2874 | prelude-ls: 1.2.1
2875 | type-check: 0.4.0
2876 | word-wrap: 1.2.3
2877 | dev: true
2878 |
2879 | /p-limit/1.3.0:
2880 | resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==}
2881 | engines: {node: '>=4'}
2882 | dependencies:
2883 | p-try: 1.0.0
2884 | dev: true
2885 |
2886 | /p-limit/2.3.0:
2887 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
2888 | engines: {node: '>=6'}
2889 | dependencies:
2890 | p-try: 2.2.0
2891 | dev: true
2892 |
2893 | /p-locate/2.0.0:
2894 | resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
2895 | engines: {node: '>=4'}
2896 | dependencies:
2897 | p-limit: 1.3.0
2898 | dev: true
2899 |
2900 | /p-locate/4.1.0:
2901 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
2902 | engines: {node: '>=8'}
2903 | dependencies:
2904 | p-limit: 2.3.0
2905 | dev: true
2906 |
2907 | /p-map/4.0.0:
2908 | resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
2909 | engines: {node: '>=10'}
2910 | dependencies:
2911 | aggregate-error: 3.1.0
2912 | dev: true
2913 |
2914 | /p-try/1.0.0:
2915 | resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==}
2916 | engines: {node: '>=4'}
2917 | dev: true
2918 |
2919 | /p-try/2.2.0:
2920 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
2921 | engines: {node: '>=6'}
2922 | dev: true
2923 |
2924 | /parent-module/1.0.1:
2925 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
2926 | engines: {node: '>=6'}
2927 | dependencies:
2928 | callsites: 3.1.0
2929 | dev: true
2930 |
2931 | /parse-entities/2.0.0:
2932 | resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==}
2933 | dependencies:
2934 | character-entities: 1.2.4
2935 | character-entities-legacy: 1.1.4
2936 | character-reference-invalid: 1.1.4
2937 | is-alphanumerical: 1.0.4
2938 | is-decimal: 1.0.4
2939 | is-hexadecimal: 1.0.4
2940 | dev: true
2941 |
2942 | /parse-json/5.2.0:
2943 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
2944 | engines: {node: '>=8'}
2945 | dependencies:
2946 | '@babel/code-frame': 7.16.7
2947 | error-ex: 1.3.2
2948 | json-parse-even-better-errors: 2.3.1
2949 | lines-and-columns: 1.2.4
2950 | dev: true
2951 |
2952 | /path-exists/3.0.0:
2953 | resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
2954 | engines: {node: '>=4'}
2955 | dev: true
2956 |
2957 | /path-exists/4.0.0:
2958 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
2959 | engines: {node: '>=8'}
2960 | dev: true
2961 |
2962 | /path-is-absolute/1.0.1:
2963 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
2964 | engines: {node: '>=0.10.0'}
2965 |
2966 | /path-key/3.1.1:
2967 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
2968 | engines: {node: '>=8'}
2969 | dev: true
2970 |
2971 | /path-key/4.0.0:
2972 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
2973 | engines: {node: '>=12'}
2974 | dev: true
2975 |
2976 | /path-parse/1.0.7:
2977 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
2978 |
2979 | /path-type/4.0.0:
2980 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
2981 | engines: {node: '>=8'}
2982 |
2983 | /pathe/0.2.0:
2984 | resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==}
2985 |
2986 | /pathe/0.3.0:
2987 | resolution: {integrity: sha512-3vUjp552BJzCw9vqKsO5sttHkbYqqsZtH0x1PNtItgqx8BXEXzoY1SYRKcL6BTyVh4lGJGLj0tM42elUDMvcYA==}
2988 | dev: true
2989 |
2990 | /pathval/1.1.1:
2991 | resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
2992 | dev: true
2993 |
2994 | /picocolors/1.0.0:
2995 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
2996 |
2997 | /picomatch/2.3.1:
2998 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
2999 | engines: {node: '>=8.6'}
3000 |
3001 | /pidtree/0.6.0:
3002 | resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
3003 | engines: {node: '>=0.10'}
3004 | hasBin: true
3005 | dev: true
3006 |
3007 | /pkg-types/0.3.2:
3008 | resolution: {integrity: sha512-eBYzX/7NYsQEOR2alWY4rnQB49G62oHzFpoi9Som56aUr8vB8UGcmcIia9v8fpBeuhH3Ltentuk2OGpp4IQV3Q==}
3009 | dependencies:
3010 | jsonc-parser: 3.0.0
3011 | mlly: 0.3.19
3012 | pathe: 0.2.0
3013 |
3014 | /pluralize/8.0.0:
3015 | resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
3016 | engines: {node: '>=4'}
3017 | dev: true
3018 |
3019 | /postcss-selector-parser/6.0.10:
3020 | resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==}
3021 | engines: {node: '>=4'}
3022 | dependencies:
3023 | cssesc: 3.0.0
3024 | util-deprecate: 1.0.2
3025 | dev: true
3026 |
3027 | /postcss/8.4.14:
3028 | resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==}
3029 | engines: {node: ^10 || ^12 || >=14}
3030 | dependencies:
3031 | nanoid: 3.3.4
3032 | picocolors: 1.0.0
3033 | source-map-js: 1.0.2
3034 | dev: true
3035 |
3036 | /prelude-ls/1.2.1:
3037 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
3038 | engines: {node: '>= 0.8.0'}
3039 | dev: true
3040 |
3041 | /pretty-bytes/6.0.0:
3042 | resolution: {integrity: sha512-6UqkYefdogmzqAZWzJ7laYeJnaXDy2/J+ZqiiMtS7t7OfpXWTlaeGMwX8U6EFvPV/YWWEKRkS8hKS4k60WHTOg==}
3043 | engines: {node: ^14.13.1 || >=16.0.0}
3044 | dev: false
3045 |
3046 | /prompts/2.4.2:
3047 | resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
3048 | engines: {node: '>= 6'}
3049 | dependencies:
3050 | kleur: 3.0.3
3051 | sisteransi: 1.0.5
3052 | dev: true
3053 |
3054 | /prop-types/15.8.1:
3055 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
3056 | dependencies:
3057 | loose-envify: 1.4.0
3058 | object-assign: 4.1.1
3059 | react-is: 16.13.1
3060 | dev: true
3061 |
3062 | /punycode/2.1.1:
3063 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==}
3064 | engines: {node: '>=6'}
3065 | dev: true
3066 |
3067 | /queue-microtask/1.2.3:
3068 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
3069 |
3070 | /react-is/16.13.1:
3071 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
3072 | dev: true
3073 |
3074 | /read-pkg-up/7.0.1:
3075 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
3076 | engines: {node: '>=8'}
3077 | dependencies:
3078 | find-up: 4.1.0
3079 | read-pkg: 5.2.0
3080 | type-fest: 0.8.1
3081 | dev: true
3082 |
3083 | /read-pkg/5.2.0:
3084 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
3085 | engines: {node: '>=8'}
3086 | dependencies:
3087 | '@types/normalize-package-data': 2.4.1
3088 | normalize-package-data: 2.5.0
3089 | parse-json: 5.2.0
3090 | type-fest: 0.6.0
3091 | dev: true
3092 |
3093 | /readdirp/3.6.0:
3094 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
3095 | engines: {node: '>=8.10.0'}
3096 | dependencies:
3097 | picomatch: 2.3.1
3098 | dev: true
3099 |
3100 | /regexp-tree/0.1.24:
3101 | resolution: {integrity: sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==}
3102 | hasBin: true
3103 | dev: true
3104 |
3105 | /regexp.prototype.flags/1.4.3:
3106 | resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==}
3107 | engines: {node: '>= 0.4'}
3108 | dependencies:
3109 | call-bind: 1.0.2
3110 | define-properties: 1.1.4
3111 | functions-have-names: 1.2.3
3112 | dev: true
3113 |
3114 | /regexpp/3.2.0:
3115 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==}
3116 | engines: {node: '>=8'}
3117 | dev: true
3118 |
3119 | /resolve-from/4.0.0:
3120 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
3121 | engines: {node: '>=4'}
3122 | dev: true
3123 |
3124 | /resolve/1.22.0:
3125 | resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==}
3126 | hasBin: true
3127 | dependencies:
3128 | is-core-module: 2.9.0
3129 | path-parse: 1.0.7
3130 | supports-preserve-symlinks-flag: 1.0.0
3131 |
3132 | /resolve/2.0.0-next.3:
3133 | resolution: {integrity: sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==}
3134 | dependencies:
3135 | is-core-module: 2.9.0
3136 | path-parse: 1.0.7
3137 | dev: true
3138 |
3139 | /restore-cursor/3.1.0:
3140 | resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
3141 | engines: {node: '>=8'}
3142 | dependencies:
3143 | onetime: 5.1.2
3144 | signal-exit: 3.0.7
3145 | dev: true
3146 |
3147 | /reusify/1.0.4:
3148 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
3149 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
3150 |
3151 | /rfdc/1.3.0:
3152 | resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==}
3153 | dev: true
3154 |
3155 | /rimraf/3.0.2:
3156 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
3157 | hasBin: true
3158 | dependencies:
3159 | glob: 7.2.3
3160 |
3161 | /rollup-plugin-dts/4.2.2_fgms252lqu3rk7srzpqqayl4ya:
3162 | resolution: {integrity: sha512-A3g6Rogyko/PXeKoUlkjxkP++8UDVpgA7C+Tdl77Xj4fgEaIjPSnxRmR53EzvoYy97VMVwLAOcWJudaVAuxneQ==}
3163 | engines: {node: '>=v12.22.11'}
3164 | peerDependencies:
3165 | rollup: ^2.55
3166 | typescript: ^4.1
3167 | dependencies:
3168 | magic-string: 0.26.2
3169 | rollup: 2.75.6
3170 | typescript: 4.7.3
3171 | optionalDependencies:
3172 | '@babel/code-frame': 7.16.7
3173 | dev: false
3174 |
3175 | /rollup-plugin-esbuild/4.9.1_2uefy6dldbldonrghlgjus4ieu:
3176 | resolution: {integrity: sha512-qn/x7Wz9p3Xnva99qcb+nopH0d2VJwVnsxJTGEg+Sh2Z3tqQl33MhOwzekVo1YTKgv+yAmosjcBRJygMfGrtLw==}
3177 | engines: {node: '>=12'}
3178 | peerDependencies:
3179 | esbuild: '>=0.10.1'
3180 | rollup: ^1.20.0 || ^2.0.0
3181 | dependencies:
3182 | '@rollup/pluginutils': 4.2.1
3183 | debug: 4.3.4
3184 | es-module-lexer: 0.9.3
3185 | esbuild: 0.14.43
3186 | joycon: 3.1.1
3187 | jsonc-parser: 3.0.0
3188 | rollup: 2.75.6
3189 | transitivePeerDependencies:
3190 | - supports-color
3191 | dev: false
3192 |
3193 | /rollup/2.75.6:
3194 | resolution: {integrity: sha512-OEf0TgpC9vU6WGROJIk1JA3LR5vk/yvqlzxqdrE2CzzXnqKXNzbAwlWUXis8RS3ZPe7LAq+YUxsRa0l3r27MLA==}
3195 | engines: {node: '>=10.0.0'}
3196 | hasBin: true
3197 | optionalDependencies:
3198 | fsevents: 2.3.2
3199 |
3200 | /run-parallel/1.2.0:
3201 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
3202 | dependencies:
3203 | queue-microtask: 1.2.3
3204 |
3205 | /rxjs/7.5.5:
3206 | resolution: {integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==}
3207 | dependencies:
3208 | tslib: 2.4.0
3209 | dev: true
3210 |
3211 | /safe-buffer/5.1.2:
3212 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
3213 | dev: false
3214 |
3215 | /safe-regex/2.1.1:
3216 | resolution: {integrity: sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==}
3217 | dependencies:
3218 | regexp-tree: 0.1.24
3219 | dev: true
3220 |
3221 | /scule/0.2.1:
3222 | resolution: {integrity: sha512-M9gnWtn3J0W+UhJOHmBxBTwv8mZCan5i1Himp60t6vvZcor0wr+IM0URKmIglsWJ7bRujNAVVN77fp+uZaWoKg==}
3223 |
3224 | /semver/5.7.1:
3225 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
3226 | hasBin: true
3227 | dev: true
3228 |
3229 | /semver/6.3.0:
3230 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
3231 | hasBin: true
3232 |
3233 | /semver/7.3.7:
3234 | resolution: {integrity: sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==}
3235 | engines: {node: '>=10'}
3236 | hasBin: true
3237 | dependencies:
3238 | lru-cache: 6.0.0
3239 | dev: true
3240 |
3241 | /shebang-command/2.0.0:
3242 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
3243 | engines: {node: '>=8'}
3244 | dependencies:
3245 | shebang-regex: 3.0.0
3246 | dev: true
3247 |
3248 | /shebang-regex/3.0.0:
3249 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
3250 | engines: {node: '>=8'}
3251 | dev: true
3252 |
3253 | /side-channel/1.0.4:
3254 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
3255 | dependencies:
3256 | call-bind: 1.0.2
3257 | get-intrinsic: 1.1.2
3258 | object-inspect: 1.12.2
3259 | dev: true
3260 |
3261 | /signal-exit/3.0.7:
3262 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
3263 | dev: true
3264 |
3265 | /sisteransi/1.0.5:
3266 | resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
3267 | dev: true
3268 |
3269 | /slash/3.0.0:
3270 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
3271 | engines: {node: '>=8'}
3272 |
3273 | /slice-ansi/3.0.0:
3274 | resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==}
3275 | engines: {node: '>=8'}
3276 | dependencies:
3277 | ansi-styles: 4.3.0
3278 | astral-regex: 2.0.0
3279 | is-fullwidth-code-point: 3.0.0
3280 | dev: true
3281 |
3282 | /slice-ansi/4.0.0:
3283 | resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
3284 | engines: {node: '>=10'}
3285 | dependencies:
3286 | ansi-styles: 4.3.0
3287 | astral-regex: 2.0.0
3288 | is-fullwidth-code-point: 3.0.0
3289 | dev: true
3290 |
3291 | /slice-ansi/5.0.0:
3292 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
3293 | engines: {node: '>=12'}
3294 | dependencies:
3295 | ansi-styles: 6.1.0
3296 | is-fullwidth-code-point: 4.0.0
3297 | dev: true
3298 |
3299 | /source-map-js/1.0.2:
3300 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
3301 | engines: {node: '>=0.10.0'}
3302 | dev: true
3303 |
3304 | /sourcemap-codec/1.4.8:
3305 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
3306 |
3307 | /spdx-correct/3.1.1:
3308 | resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==}
3309 | dependencies:
3310 | spdx-expression-parse: 3.0.1
3311 | spdx-license-ids: 3.0.11
3312 | dev: true
3313 |
3314 | /spdx-exceptions/2.3.0:
3315 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
3316 | dev: true
3317 |
3318 | /spdx-expression-parse/3.0.1:
3319 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
3320 | dependencies:
3321 | spdx-exceptions: 2.3.0
3322 | spdx-license-ids: 3.0.11
3323 | dev: true
3324 |
3325 | /spdx-license-ids/3.0.11:
3326 | resolution: {integrity: sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==}
3327 | dev: true
3328 |
3329 | /string-argv/0.3.1:
3330 | resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==}
3331 | engines: {node: '>=0.6.19'}
3332 | dev: true
3333 |
3334 | /string-width/4.2.3:
3335 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
3336 | engines: {node: '>=8'}
3337 | dependencies:
3338 | emoji-regex: 8.0.0
3339 | is-fullwidth-code-point: 3.0.0
3340 | strip-ansi: 6.0.1
3341 | dev: true
3342 |
3343 | /string-width/5.1.2:
3344 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
3345 | engines: {node: '>=12'}
3346 | dependencies:
3347 | eastasianwidth: 0.2.0
3348 | emoji-regex: 9.2.2
3349 | strip-ansi: 7.0.1
3350 | dev: true
3351 |
3352 | /string.prototype.matchall/4.0.7:
3353 | resolution: {integrity: sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==}
3354 | dependencies:
3355 | call-bind: 1.0.2
3356 | define-properties: 1.1.4
3357 | es-abstract: 1.20.1
3358 | get-intrinsic: 1.1.2
3359 | has-symbols: 1.0.3
3360 | internal-slot: 1.0.3
3361 | regexp.prototype.flags: 1.4.3
3362 | side-channel: 1.0.4
3363 | dev: true
3364 |
3365 | /string.prototype.trimend/1.0.5:
3366 | resolution: {integrity: sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==}
3367 | dependencies:
3368 | call-bind: 1.0.2
3369 | define-properties: 1.1.4
3370 | es-abstract: 1.20.1
3371 | dev: true
3372 |
3373 | /string.prototype.trimstart/1.0.5:
3374 | resolution: {integrity: sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==}
3375 | dependencies:
3376 | call-bind: 1.0.2
3377 | define-properties: 1.1.4
3378 | es-abstract: 1.20.1
3379 | dev: true
3380 |
3381 | /strip-ansi/6.0.1:
3382 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
3383 | engines: {node: '>=8'}
3384 | dependencies:
3385 | ansi-regex: 5.0.1
3386 | dev: true
3387 |
3388 | /strip-ansi/7.0.1:
3389 | resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==}
3390 | engines: {node: '>=12'}
3391 | dependencies:
3392 | ansi-regex: 6.0.1
3393 | dev: true
3394 |
3395 | /strip-bom/3.0.0:
3396 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
3397 | engines: {node: '>=4'}
3398 | dev: true
3399 |
3400 | /strip-final-newline/3.0.0:
3401 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
3402 | engines: {node: '>=12'}
3403 | dev: true
3404 |
3405 | /strip-indent/3.0.0:
3406 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
3407 | engines: {node: '>=8'}
3408 | dependencies:
3409 | min-indent: 1.0.1
3410 | dev: true
3411 |
3412 | /strip-json-comments/3.1.1:
3413 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
3414 | engines: {node: '>=8'}
3415 | dev: true
3416 |
3417 | /strip-literal/0.4.0:
3418 | resolution: {integrity: sha512-ql/sBDoJOybTKSIOWrrh8kgUEMjXMwRAkZTD0EwiwxQH/6tTPkZvMIEjp0CRlpi6V5FMiJyvxeRkEi1KrGISoA==}
3419 | dependencies:
3420 | acorn: 8.7.1
3421 | dev: true
3422 |
3423 | /supports-color/5.5.0:
3424 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
3425 | engines: {node: '>=4'}
3426 | dependencies:
3427 | has-flag: 3.0.0
3428 |
3429 | /supports-color/7.2.0:
3430 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
3431 | engines: {node: '>=8'}
3432 | dependencies:
3433 | has-flag: 4.0.0
3434 | dev: true
3435 |
3436 | /supports-preserve-symlinks-flag/1.0.0:
3437 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
3438 | engines: {node: '>= 0.4'}
3439 |
3440 | /text-table/0.2.0:
3441 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
3442 | dev: true
3443 |
3444 | /through/2.3.8:
3445 | resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
3446 | dev: true
3447 |
3448 | /tinypool/0.1.3:
3449 | resolution: {integrity: sha512-2IfcQh7CP46XGWGGbdyO4pjcKqsmVqFAPcXfPxcPXmOWt9cYkTP9HcDmGgsfijYoAEc4z9qcpM/BaBz46Y9/CQ==}
3450 | engines: {node: '>=14.0.0'}
3451 | dev: true
3452 |
3453 | /tinyspy/0.3.3:
3454 | resolution: {integrity: sha512-gRiUR8fuhUf0W9lzojPf1N1euJYA30ISebSfgca8z76FOvXtVXqd5ojEIaKLWbDQhAaC3ibxZIjqbyi4ybjcTw==}
3455 | engines: {node: '>=14.0.0'}
3456 | dev: true
3457 |
3458 | /to-fast-properties/2.0.0:
3459 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
3460 | engines: {node: '>=4'}
3461 | dev: false
3462 |
3463 | /to-regex-range/5.0.1:
3464 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
3465 | engines: {node: '>=8.0'}
3466 | dependencies:
3467 | is-number: 7.0.0
3468 |
3469 | /tsconfig-paths/3.14.1:
3470 | resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==}
3471 | dependencies:
3472 | '@types/json5': 0.0.29
3473 | json5: 1.0.1
3474 | minimist: 1.2.6
3475 | strip-bom: 3.0.0
3476 | dev: true
3477 |
3478 | /tslib/1.14.1:
3479 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
3480 | dev: true
3481 |
3482 | /tslib/2.4.0:
3483 | resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
3484 | dev: true
3485 |
3486 | /tsutils/3.21.0_typescript@4.7.3:
3487 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
3488 | engines: {node: '>= 6'}
3489 | peerDependencies:
3490 | 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'
3491 | dependencies:
3492 | tslib: 1.14.1
3493 | typescript: 4.7.3
3494 | dev: true
3495 |
3496 | /type-check/0.4.0:
3497 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
3498 | engines: {node: '>= 0.8.0'}
3499 | dependencies:
3500 | prelude-ls: 1.2.1
3501 | dev: true
3502 |
3503 | /type-detect/4.0.8:
3504 | resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
3505 | engines: {node: '>=4'}
3506 | dev: true
3507 |
3508 | /type-fest/0.20.2:
3509 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
3510 | engines: {node: '>=10'}
3511 | dev: true
3512 |
3513 | /type-fest/0.21.3:
3514 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
3515 | engines: {node: '>=10'}
3516 | dev: true
3517 |
3518 | /type-fest/0.6.0:
3519 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
3520 | engines: {node: '>=8'}
3521 | dev: true
3522 |
3523 | /type-fest/0.8.1:
3524 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
3525 | engines: {node: '>=8'}
3526 | dev: true
3527 |
3528 | /typescript/4.7.3:
3529 | resolution: {integrity: sha512-WOkT3XYvrpXx4vMMqlD+8R8R37fZkjyLGlxavMc4iB8lrl8L0DeTcHbYgw/v0N/z9wAFsgBhcsF0ruoySS22mA==}
3530 | engines: {node: '>=4.2.0'}
3531 | hasBin: true
3532 |
3533 | /unbox-primitive/1.0.2:
3534 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
3535 | dependencies:
3536 | call-bind: 1.0.2
3537 | has-bigints: 1.0.2
3538 | has-symbols: 1.0.3
3539 | which-boxed-primitive: 1.0.2
3540 | dev: true
3541 |
3542 | /unbuild/0.7.4:
3543 | resolution: {integrity: sha512-gJvfMw4h5Q7xieMCeW/d3wtNKZDpFyDR9651s8kL+AGp95sMNhAFRLxy24AUKC3b5EQbB74vaDoU5R+XwsZC6A==}
3544 | hasBin: true
3545 | dependencies:
3546 | '@rollup/plugin-alias': 3.1.9_rollup@2.75.6
3547 | '@rollup/plugin-commonjs': 21.1.0_rollup@2.75.6
3548 | '@rollup/plugin-json': 4.1.0_rollup@2.75.6
3549 | '@rollup/plugin-node-resolve': 13.3.0_rollup@2.75.6
3550 | '@rollup/plugin-replace': 4.0.0_rollup@2.75.6
3551 | '@rollup/pluginutils': 4.2.1
3552 | chalk: 5.0.1
3553 | consola: 2.15.3
3554 | defu: 6.0.0
3555 | esbuild: 0.14.43
3556 | hookable: 5.1.1
3557 | jiti: 1.13.0
3558 | magic-string: 0.26.2
3559 | mkdirp: 1.0.4
3560 | mkdist: 0.3.10_typescript@4.7.3
3561 | mlly: 0.5.2
3562 | mri: 1.2.0
3563 | pathe: 0.2.0
3564 | pkg-types: 0.3.2
3565 | pretty-bytes: 6.0.0
3566 | rimraf: 3.0.2
3567 | rollup: 2.75.6
3568 | rollup-plugin-dts: 4.2.2_fgms252lqu3rk7srzpqqayl4ya
3569 | rollup-plugin-esbuild: 4.9.1_2uefy6dldbldonrghlgjus4ieu
3570 | scule: 0.2.1
3571 | typescript: 4.7.3
3572 | untyped: 0.4.4
3573 | transitivePeerDependencies:
3574 | - supports-color
3575 | dev: false
3576 |
3577 | /unimport/0.2.9:
3578 | resolution: {integrity: sha512-5SLmZZL2rwaNOQa/yTGaG0QI0meRhb6MDdIlS9s1uHPSYO6Gfzr7ugl5Rf35/CJioW6wYiNJsN9dru5JMzaD8w==}
3579 | dependencies:
3580 | '@rollup/pluginutils': 4.2.1
3581 | escape-string-regexp: 5.0.0
3582 | fast-glob: 3.2.11
3583 | local-pkg: 0.4.1
3584 | magic-string: 0.26.2
3585 | mlly: 0.5.2
3586 | pathe: 0.3.0
3587 | scule: 0.2.1
3588 | strip-literal: 0.4.0
3589 | unplugin: 0.7.0
3590 | transitivePeerDependencies:
3591 | - esbuild
3592 | - rollup
3593 | - vite
3594 | - webpack
3595 | dev: true
3596 |
3597 | /unist-util-stringify-position/2.0.3:
3598 | resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==}
3599 | dependencies:
3600 | '@types/unist': 2.0.6
3601 | dev: true
3602 |
3603 | /universalify/2.0.0:
3604 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
3605 | engines: {node: '>= 10.0.0'}
3606 | dev: false
3607 |
3608 | /unplugin-auto-import/0.8.8:
3609 | resolution: {integrity: sha512-cVZ79zMR1v4VCZ9emFTUnltmazCc2B4hObyVrxJdlgJ2sK8qub6JfjFt38rCF6MVEddkHiWCU6wZR1qbdqe+ig==}
3610 | engines: {node: '>=14'}
3611 | peerDependencies:
3612 | '@vueuse/core': '*'
3613 | peerDependenciesMeta:
3614 | '@vueuse/core':
3615 | optional: true
3616 | dependencies:
3617 | '@antfu/utils': 0.5.2
3618 | '@rollup/pluginutils': 4.2.1
3619 | local-pkg: 0.4.1
3620 | magic-string: 0.26.2
3621 | unimport: 0.2.9
3622 | unplugin: 0.7.0
3623 | transitivePeerDependencies:
3624 | - esbuild
3625 | - rollup
3626 | - vite
3627 | - webpack
3628 | dev: true
3629 |
3630 | /unplugin/0.7.0:
3631 | resolution: {integrity: sha512-OsiFrgybmqm5bGuaodvbLYhqUrvGuRHRMZDhddKEXTDbuQ1x+hR7M1WpQguXj03whVYjEYChhFo738cZH5RNig==}
3632 | peerDependencies:
3633 | esbuild: '>=0.13'
3634 | rollup: ^2.50.0
3635 | vite: ^2.3.0
3636 | webpack: 4 || 5
3637 | peerDependenciesMeta:
3638 | esbuild:
3639 | optional: true
3640 | rollup:
3641 | optional: true
3642 | vite:
3643 | optional: true
3644 | webpack:
3645 | optional: true
3646 | dependencies:
3647 | acorn: 8.7.1
3648 | chokidar: 3.5.3
3649 | webpack-sources: 3.2.3
3650 | webpack-virtual-modules: 0.4.3
3651 | dev: true
3652 |
3653 | /untyped/0.4.4:
3654 | resolution: {integrity: sha512-sY6u8RedwfLfBis0copfU/fzROieyAndqPs8Kn2PfyzTjtA88vCk81J1b5z+8/VJc+cwfGy23/AqOCpvAbkNVw==}
3655 | dependencies:
3656 | '@babel/core': 7.18.5
3657 | '@babel/standalone': 7.18.5
3658 | '@babel/types': 7.18.4
3659 | scule: 0.2.1
3660 | transitivePeerDependencies:
3661 | - supports-color
3662 | dev: false
3663 |
3664 | /uri-js/4.4.1:
3665 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
3666 | dependencies:
3667 | punycode: 2.1.1
3668 | dev: true
3669 |
3670 | /util-deprecate/1.0.2:
3671 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
3672 | dev: true
3673 |
3674 | /v8-compile-cache/2.3.0:
3675 | resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==}
3676 | dev: true
3677 |
3678 | /validate-npm-package-license/3.0.4:
3679 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
3680 | dependencies:
3681 | spdx-correct: 3.1.1
3682 | spdx-expression-parse: 3.0.1
3683 | dev: true
3684 |
3685 | /vite/2.9.12:
3686 | resolution: {integrity: sha512-suxC36dQo9Rq1qMB2qiRorNJtJAdxguu5TMvBHOc/F370KvqAe9t48vYp+/TbPKRNrMh/J55tOUmkuIqstZaew==}
3687 | engines: {node: '>=12.2.0'}
3688 | hasBin: true
3689 | peerDependencies:
3690 | less: '*'
3691 | sass: '*'
3692 | stylus: '*'
3693 | peerDependenciesMeta:
3694 | less:
3695 | optional: true
3696 | sass:
3697 | optional: true
3698 | stylus:
3699 | optional: true
3700 | dependencies:
3701 | esbuild: 0.14.43
3702 | postcss: 8.4.14
3703 | resolve: 1.22.0
3704 | rollup: 2.75.6
3705 | optionalDependencies:
3706 | fsevents: 2.3.2
3707 | dev: true
3708 |
3709 | /vitest/0.15.1:
3710 | resolution: {integrity: sha512-NaNFi93JKSuvV4YGnfQ0l0GKYxH0EsLcTrrXaCzd6qfVEZM/RJpjwSevg6waNFqu2DyN6e0aHHdrCZW5/vh5NA==}
3711 | engines: {node: '>=v14.16.0'}
3712 | hasBin: true
3713 | peerDependencies:
3714 | '@vitest/ui': '*'
3715 | c8: '*'
3716 | happy-dom: '*'
3717 | jsdom: '*'
3718 | peerDependenciesMeta:
3719 | '@vitest/ui':
3720 | optional: true
3721 | c8:
3722 | optional: true
3723 | happy-dom:
3724 | optional: true
3725 | jsdom:
3726 | optional: true
3727 | dependencies:
3728 | '@types/chai': 4.3.1
3729 | '@types/chai-subset': 1.3.3
3730 | '@types/node': 17.0.42
3731 | chai: 4.3.6
3732 | debug: 4.3.4
3733 | local-pkg: 0.4.1
3734 | tinypool: 0.1.3
3735 | tinyspy: 0.3.3
3736 | vite: 2.9.12
3737 | transitivePeerDependencies:
3738 | - less
3739 | - sass
3740 | - stylus
3741 | - supports-color
3742 | dev: true
3743 |
3744 | /vue-eslint-parser/8.3.0_eslint@8.17.0:
3745 | resolution: {integrity: sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==}
3746 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
3747 | peerDependencies:
3748 | eslint: '>=6.0.0'
3749 | dependencies:
3750 | debug: 4.3.4
3751 | eslint: 8.17.0
3752 | eslint-scope: 7.1.1
3753 | eslint-visitor-keys: 3.3.0
3754 | espree: 9.3.2
3755 | esquery: 1.4.0
3756 | lodash: 4.17.21
3757 | semver: 7.3.7
3758 | transitivePeerDependencies:
3759 | - supports-color
3760 | dev: true
3761 |
3762 | /webpack-sources/3.2.3:
3763 | resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
3764 | engines: {node: '>=10.13.0'}
3765 | dev: true
3766 |
3767 | /webpack-virtual-modules/0.4.3:
3768 | resolution: {integrity: sha512-5NUqC2JquIL2pBAAo/VfBP6KuGkHIZQXW/lNKupLPfhViwh8wNsu0BObtl09yuKZszeEUfbXz8xhrHvSG16Nqw==}
3769 | dev: true
3770 |
3771 | /which-boxed-primitive/1.0.2:
3772 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
3773 | dependencies:
3774 | is-bigint: 1.0.4
3775 | is-boolean-object: 1.1.2
3776 | is-number-object: 1.0.7
3777 | is-string: 1.0.7
3778 | is-symbol: 1.0.4
3779 | dev: true
3780 |
3781 | /which/2.0.2:
3782 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
3783 | engines: {node: '>= 8'}
3784 | hasBin: true
3785 | dependencies:
3786 | isexe: 2.0.0
3787 | dev: true
3788 |
3789 | /word-wrap/1.2.3:
3790 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
3791 | engines: {node: '>=0.10.0'}
3792 | dev: true
3793 |
3794 | /wrap-ansi/6.2.0:
3795 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
3796 | engines: {node: '>=8'}
3797 | dependencies:
3798 | ansi-styles: 4.3.0
3799 | string-width: 4.2.3
3800 | strip-ansi: 6.0.1
3801 | dev: true
3802 |
3803 | /wrap-ansi/7.0.0:
3804 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
3805 | engines: {node: '>=10'}
3806 | dependencies:
3807 | ansi-styles: 4.3.0
3808 | string-width: 4.2.3
3809 | strip-ansi: 6.0.1
3810 | dev: true
3811 |
3812 | /wrappy/1.0.2:
3813 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
3814 |
3815 | /yallist/4.0.0:
3816 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
3817 | dev: true
3818 |
3819 | /yaml-eslint-parser/0.5.0:
3820 | resolution: {integrity: sha512-nJeyLA3YHAzhBTZbRAbu3W6xrSCucyxExmA+ZDtEdUFpGllxAZpto2Zxo2IG0r0eiuEiBM4e+wiAdxTziTq94g==}
3821 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
3822 | dependencies:
3823 | eslint-visitor-keys: 3.3.0
3824 | lodash: 4.17.21
3825 | yaml: 1.10.2
3826 | dev: true
3827 |
3828 | /yaml/1.10.2:
3829 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
3830 | engines: {node: '>= 6'}
3831 | dev: true
3832 |
3833 | /yaml/2.1.1:
3834 | resolution: {integrity: sha512-o96x3OPo8GjWeSLF+wOAbrPfhFOGY0W00GNaxCDv+9hkcDJEnev1yh8S7pgHF0ik6zc8sQLuL8hjHjJULZp8bw==}
3835 | engines: {node: '>= 14'}
3836 | dev: true
3837 |
--------------------------------------------------------------------------------
/src/EventHandlers/base.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine } from '../canvasEngine'
2 | import { warn } from '../helper/warn'
3 | import type { EventFn, EventName, ShapeClassType, ValidEventType } from '../types'
4 |
5 | interface ShouldTriggerEvent { shape: ShapeClassType; handler: EventFn }
6 |
7 | export type TriggerReturnType = (event: ValidEventType) => false | ShouldTriggerEvent
8 |
9 | export interface EventBase {
10 | shape: ShapeClassType
11 | handler: TriggerReturnType
12 | }
13 |
14 | /**
15 | * EventHandler 基类
16 | */
17 | export abstract class BaseEventHandler {
18 | abstract eventName: EventName
19 | engine: CanvasEngine
20 | events: EventBase[] = []
21 | domEventListener!: EventFn | null
22 | constructor(engine: CanvasEngine) {
23 | this.engine = engine
24 | }
25 | /**
26 | * 收集事件处理函数
27 | *
28 | * @param shape 图形
29 | * @returns {boolean} 是否收集成功
30 | */
31 | abstract track(shape: ShapeClassType, cbFn: EventFn): void
32 |
33 | /**
34 | * 触发事件的处理函数,注意:该函数只能由 track 函数所调用
35 | * @param shape 图形
36 | * @param cbFn 事件的处理函数
37 | * @returns TriggerReturnType 返回一个函数或者 false
38 | */
39 | protected abstract trigger(shape: ShapeClassType, cbFn: EventFn): TriggerReturnType
40 |
41 | /**
42 | * 初始化的时候,为 canvas dom 添加对应的事件监听
43 | */
44 | protected initDomEventListener() {
45 | const dom = this.engine.getCanvasDom()
46 | this.domEventListener = (e: ValidEventType) => {
47 | // 根据 shape.zIndex 进行排序,然后只需要触发图层最大的那一个就好了
48 | const shouldTriggerEvents: ShouldTriggerEvent[] = []
49 | this.events.forEach((i) => {
50 | const res = i.handler(e)
51 | if (res) shouldTriggerEvents.push(res)
52 | })
53 | shouldTriggerEvents.sort((a, b) => b.shape.innerZIndex - a.shape.innerZIndex)
54 | if (shouldTriggerEvents.length) {
55 | const { handler } = shouldTriggerEvents[0]
56 | handler(e)
57 | }
58 | }
59 | dom.addEventListener(this.eventName, this.domEventListener)
60 | }
61 |
62 | /**
63 | * 根据传入的 fn ,删除此 fn
64 | * @param fn 事件处理函数
65 | */
66 | removeListener(fn: EventFn) {
67 | const index = this.events.findIndex(evt => evt.handler === fn)
68 | if (index === -1)
69 | return warn(`${this.eventName} 事件监听函数不存在`)
70 | this.events.splice(index, 1)
71 | }
72 |
73 | /**
74 | * 判断 event 是否为空,如果为空,则取消此 dom 的事件监听
75 | */
76 | checkEmpty() {
77 | if (!this.events.length) {
78 | const dom = this.engine.getCanvasDom()
79 | dom.removeEventListener(this.eventName, this.domEventListener!)
80 | this.domEventListener = null
81 | }
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/src/EventHandlers/click.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine } from '../canvasEngine'
2 | import type { EventFn, ShapeClassType } from '../types'
3 | import { EventName } from '../types'
4 | import type { TriggerReturnType } from './base'
5 | import { BaseEventHandler } from './base'
6 | import { getCanvasCheckApi } from './helper'
7 |
8 | export class ClickEventHandler extends BaseEventHandler {
9 | eventName = EventName.click
10 |
11 | constructor(engine: CanvasEngine) {
12 | super(engine)
13 | }
14 |
15 | track(shape: ShapeClassType, cbFn: EventFn): void {
16 | if (!this.events.length) this.initDomEventListener()
17 | const fn = this.trigger(shape, cbFn)
18 | this.events.push({
19 | shape,
20 | handler: fn,
21 | })
22 | }
23 |
24 | trigger(shape: ShapeClassType, cbFn: EventFn): TriggerReturnType {
25 | return (e: MouseEvent) => {
26 | this.engine.updateCanvasOffset()
27 | const { clientX, clientY } = e
28 | const { leftOffset, topOffset } = this.engine.canvasDomInfo
29 | const { renderMode = 'fill' } = shape.shapeInfo
30 | const api = getCanvasCheckApi(this.engine.ctx)
31 | let isIn = false
32 | const params = {
33 | x: clientX - leftOffset,
34 | y: clientY - topOffset,
35 | }
36 | if (renderMode === 'fill') isIn = api(shape.path2D, params.x, params.y)
37 | else if (renderMode === 'stroke') isIn = api(params.x, params.y)
38 | if (isIn) {
39 | return {
40 | shape,
41 | handler: cbFn.bind(cbFn, e),
42 | }
43 | }
44 | else {
45 | return false
46 | }
47 | }
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/EventHandlers/helper.ts:
--------------------------------------------------------------------------------
1 | import type { baseShape } from '../types'
2 |
3 | export function getCanvasCheckApi(ctx: CanvasRenderingContext2D, renderMode: baseShape['renderMode'] = 'fill') {
4 | const mapping = {
5 | fill: ctx.isPointInPath,
6 | stroke: ctx.isPointInStroke,
7 | }
8 | return mapping[renderMode].bind(ctx)
9 | }
10 |
--------------------------------------------------------------------------------
/src/EventHandlers/index.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine } from '../canvasEngine'
2 | import type {
3 | EventFn,
4 | EventName,
5 | ShapeClassType,
6 | } from '../types'
7 | import type { BaseEventHandler } from './base'
8 | import { ClickEventHandler } from './click'
9 |
10 | type HandlerInstanceCache = {
11 | [key in EventName]: BaseEventHandler
12 | }
13 |
14 | export class EventHandler {
15 | engine: CanvasEngine
16 | handlerInstances!: HandlerInstanceCache
17 |
18 | constructor(engine: CanvasEngine) {
19 | this.engine = engine
20 | this.initHandlerInstance(this.engine)
21 | }
22 |
23 | initHandlerInstance(engine: CanvasEngine) {
24 | this.handlerInstances = {
25 | click: new ClickEventHandler(engine),
26 | dblclick: new ClickEventHandler(engine),
27 | }
28 | }
29 |
30 | pushEvent(shape: ShapeClassType, eventName: EventName, cbFn: EventFn) {
31 | const handlerInstance = this.handlerInstances[eventName]
32 | handlerInstance.track(shape, cbFn)
33 | // 让 shape 也存在此 listener 的缓存
34 | let shapeEvents = shape.events[eventName]
35 | if (!shapeEvents) shapeEvents = shape.events[eventName] = new Set()
36 | shapeEvents.add(cbFn)
37 | return () => {
38 | handlerInstance.removeListener(cbFn)
39 | }
40 | }
41 |
42 | removeListener(shape: ShapeClassType, evtName: EventName): void {
43 | const eventSet = shape.events[evtName]
44 | if (!eventSet) return
45 | const handlerInstance = this.handlerInstances[evtName]
46 | handlerInstance.events = handlerInstance.events.filter(e => e.shape.id !== shape.id)
47 | eventSet.clear()
48 | handlerInstance.checkEmpty()
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/Shapes/arc.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine, RenderOptions } from '../canvasEngine'
2 | import type { ArcShape, Position } from '../types'
3 | import { ShapeType } from '../types'
4 | import { BaseShape } from './base'
5 |
6 | export interface ArcOptions {
7 | x: number
8 | y: number
9 | radius: number
10 | zIndex: number
11 | }
12 |
13 | export class Arc extends BaseShape {
14 | id = Symbol('Arc')
15 | shapeInfo = {} as ArcShape
16 |
17 | constructor(x: number, y: number, radius: number, zIndex: number)
18 | constructor(options: ArcOptions)
19 | constructor(
20 | options: ArcOptions | number,
21 | y?: number,
22 | radius?: number,
23 | zIndex?: number,
24 | ) {
25 | super()
26 | const op = this.generateConfiguration(options, y, radius, zIndex)
27 | this.injectShapeInfo(op)
28 | this.machiningGraphics(op)
29 | this.zIndex = op.zIndex || -1
30 | }
31 |
32 | generateConfiguration(
33 | options: ArcOptions | number,
34 | y?: number,
35 | radius?: number,
36 | zIndex?: number,
37 | ) {
38 | let op: ArcOptions
39 | if (typeof options === 'object') {
40 | op = options
41 | }
42 | else if (typeof options === 'number') {
43 | op = {
44 | x: options,
45 | y: y!,
46 | radius: radius!,
47 | zIndex: zIndex!,
48 | }
49 | }
50 | return op!
51 | }
52 |
53 | machiningGraphics(options: ArcOptions) {
54 | const { x, y, radius } = options
55 | this.path2D.arc(x, y, radius, 0, Math.PI * 2)
56 | }
57 |
58 | render(canvasEngine: CanvasEngine, opt: RenderOptions) {
59 | const {
60 | options: { color },
61 | cb,
62 | } = opt
63 | canvasEngine.ctx.fillStyle = color || ''
64 | canvasEngine.ctx.fill(this.path2D)
65 | cb()
66 | }
67 |
68 | injectShapeInfo(options: ArcOptions) {
69 | const { radius, x, y } = options
70 | const top: Position = {
71 | x,
72 | y: y - radius,
73 | }
74 | const left = {
75 | x: x - radius,
76 | y,
77 | }
78 | const right: Position = {
79 | x: x + radius,
80 | y,
81 | }
82 | const bottom: Position = {
83 | x,
84 | y: y + radius,
85 | }
86 | this.shapeInfo = {
87 | ...options,
88 | shape: ShapeType.Arc,
89 | top,
90 | left,
91 | right,
92 | bottom,
93 | }
94 | }
95 | }
96 |
--------------------------------------------------------------------------------
/src/Shapes/base.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine, RenderOptions } from '../canvasEngine'
2 | import type { EventHandlerFn, EventName } from '../types'
3 |
4 | export abstract class BaseShape {
5 | path2D: Path2D = new Path2D()
6 | abstract id: symbol
7 | abstract shapeInfo: S
8 | zIndex = -1
9 | events = {} as Record>
10 | // 内部需要用到的 zIndex
11 | public innerZIndex = -1
12 | constructor() { }
13 | protected abstract injectShapeInfo(info: T): void
14 | protected abstract machiningGraphics(info: T): void
15 | abstract render(canvasEngine: CanvasEngine, options: RenderOptions): void
16 | beforeRender(_: CanvasEngine, __: RenderOptions): void { }
17 | }
18 |
--------------------------------------------------------------------------------
/src/Shapes/image.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine, RenderOptions } from '../canvasEngine'
2 | import type { Position, RectShape } from '../types'
3 | import { ShapeType } from '../types'
4 | import { BaseShape } from './base'
5 |
6 | export interface ImageCanvas {
7 | x: number
8 | y: number
9 | w: number
10 | h: number
11 | src: string
12 | zIndex: number
13 | }
14 |
15 | export class Img extends BaseShape {
16 | shapeInfo = {} as RectShape & ImageCanvas
17 | id = Symbol('ImageCanvas')
18 | constructor(x: number, y: number, w: number, h: number, src: string, zIndex: number)
19 | constructor(options: ImageCanvas)
20 | constructor(
21 | options: ImageCanvas | number,
22 | y?: number,
23 | w?: number,
24 | h?: number,
25 | src?: string,
26 | zIndex?: number,
27 | ) {
28 | super()
29 | const completeConfiguration = this.generateConfiguration(
30 | options,
31 | y,
32 | w,
33 | h,
34 | src,
35 | zIndex,
36 | )
37 | this.injectShapeInfo(completeConfiguration)
38 | this.machiningGraphics(completeConfiguration)
39 | }
40 |
41 | generateConfiguration(
42 | options: ImageCanvas | number,
43 | y?: number,
44 | w?: number,
45 | h?: number,
46 | src?: string,
47 | zIndex?: number,
48 | ) {
49 | let completeConfiguration: ImageCanvas
50 | if (typeof options === 'object') {
51 | completeConfiguration = options
52 | }
53 | else {
54 | completeConfiguration = {
55 | x: options,
56 | y: y!,
57 | w: w!,
58 | h: h!,
59 | src: src!,
60 | zIndex: zIndex!,
61 | }
62 | }
63 | return completeConfiguration
64 | }
65 |
66 | protected machiningGraphics(options: ImageCanvas) {
67 | const { x, y, w, h } = options
68 | this.path2D.rect(x, y, w, h)
69 | }
70 |
71 | protected injectShapeInfo(info: ImageCanvas) {
72 | const { x, y, w, h, src, zIndex } = info
73 | const topCenter: Position = { x: (x + w) / 2, y }
74 | const bottomCenter: Position = { x: (x + w) / 2, y: y + h }
75 | const leftCenter: Position = { x, y: (y + h) / 2 }
76 | const rightCenter: Position = { x: x + w, y: (y + h) / 2 }
77 | this.shapeInfo = {
78 | ...info,
79 | shape: ShapeType.Rect,
80 | topCenter,
81 | bottomCenter,
82 | leftCenter,
83 | rightCenter,
84 | src,
85 | }
86 |
87 | this.zIndex = zIndex
88 | }
89 |
90 | render(canvasEngine: CanvasEngine, _: RenderOptions) {
91 | const image = new Image(this.shapeInfo.w, this.shapeInfo.h)
92 | image.src = this.shapeInfo.src
93 | image.onload = () => {
94 | canvasEngine.ctx.fillStyle = 'rgba(0,0,0,0)'
95 | canvasEngine.ctx.fill(this.path2D)
96 | canvasEngine.ctx.drawImage(image, this.shapeInfo.x, this.shapeInfo.y, this.shapeInfo.w, this.shapeInfo.h)
97 | }
98 | }
99 | }
100 |
--------------------------------------------------------------------------------
/src/Shapes/index.ts:
--------------------------------------------------------------------------------
1 | export * from './arc'
2 | export * from './line'
3 | export * from './rect'
4 | export * from './image'
5 |
--------------------------------------------------------------------------------
/src/Shapes/line.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine, RenderOptions } from '../canvasEngine'
2 | import type { LineShape } from '../types'
3 | import { ShapeType } from '../types'
4 | import { BaseShape } from './base'
5 |
6 | export interface LineOptions {
7 | x: number
8 | y: number
9 | thickness?: number
10 | zIndex?: number
11 | lineWidth?: number
12 | }
13 |
14 | export class Line extends BaseShape {
15 | id = Symbol('Line')
16 | shapeInfo = {} as LineShape
17 |
18 | constructor(
19 | x: number,
20 | y: number,
21 | thickness?: number,
22 | lineWidth?: number,
23 | zIndex?: number
24 | )
25 | constructor(options: LineOptions)
26 | constructor(
27 | options: LineOptions | number,
28 | y?: number,
29 | thickness?: number,
30 | lineWidth?: number,
31 | zIndex?: number,
32 | ) {
33 | super()
34 | const op = this.generateConfiguration(
35 | options,
36 | y,
37 | thickness,
38 | lineWidth,
39 | zIndex,
40 | )
41 | this.injectShapeInfo(op)
42 | }
43 |
44 | generateConfiguration(
45 | options: LineOptions | number,
46 | y?: number,
47 | thickness?: number,
48 | lineWidth?: number,
49 | zIndex?: number,
50 | ) {
51 | let op: LineOptions
52 | if (typeof options === 'number') {
53 | op = {
54 | x: options,
55 | y: y!,
56 | thickness,
57 | lineWidth,
58 | zIndex,
59 | }
60 | }
61 | else {
62 | op = options
63 | }
64 |
65 | return op
66 | }
67 |
68 | machiningGraphics(_: LineOptions) { }
69 |
70 | injectShapeInfo(options: LineOptions) {
71 | const { x, y, zIndex = -1, lineWidth } = options
72 | this.shapeInfo = {
73 | x,
74 | y,
75 | end: { x, y },
76 | zIndex,
77 | shape: ShapeType.Line,
78 | track: [],
79 | lineWidth,
80 | renderMode: 'fill',
81 | }
82 | }
83 |
84 | move(toX: number, toY: number) {
85 | const { x: nowX, y: nowY } = this.shapeInfo.end
86 | const track = { x: nowX + toX, y: nowY + toY }
87 | this.shapeInfo.end = track
88 | this.shapeInfo.track.push(track)
89 | return this
90 | }
91 |
92 | render(engine: CanvasEngine, { options: { color = '', mode = 'fill' }, cb }: RenderOptions) {
93 | engine.ctx.beginPath()
94 | const len = this.shapeInfo.track.length
95 | for (let i = 0; i < len; i++) {
96 | const { x, y } = this.shapeInfo.track[i]
97 | this.path2D.lineTo(x, y)
98 | }
99 | engine.ctx.lineWidth = this.shapeInfo.lineWidth || 1
100 | if (mode === 'fill') {
101 | engine.ctx.fillStyle = color
102 | engine.ctx.fill(this.path2D)
103 | }
104 | else if (mode === 'stroke') {
105 | engine.ctx.strokeStyle = color
106 | engine.ctx.stroke(this.path2D)
107 | }
108 |
109 | this.shapeInfo.renderMode = mode
110 | engine.ctx.closePath()
111 | cb()
112 | }
113 | }
114 |
--------------------------------------------------------------------------------
/src/Shapes/rect.ts:
--------------------------------------------------------------------------------
1 | import type { CanvasEngine, RenderOptions } from '../canvasEngine'
2 | import type { Position, RectShape } from '../types'
3 | import { ShapeType } from '../types'
4 | import { BaseShape } from './base'
5 |
6 | export interface RectOptions {
7 | x: number
8 | y: number
9 | w: number
10 | h: number
11 | zIndex: number
12 | }
13 |
14 | export class Rect extends BaseShape {
15 | shapeInfo = {} as RectShape
16 | id = Symbol('Rect')
17 | constructor(x: number, y: number, w: number, h: number, zIndex: number)
18 | constructor(options: RectOptions)
19 | constructor(
20 | options: RectOptions | number,
21 | y?: number,
22 | w?: number,
23 | h?: number,
24 | zIndex?: number,
25 | ) {
26 | super()
27 | const completeConfiguration = this.generateConfiguration(
28 | options,
29 | y,
30 | w,
31 | h,
32 | zIndex,
33 | )
34 | this.injectShapeInfo(completeConfiguration)
35 | this.machiningGraphics(completeConfiguration)
36 | }
37 |
38 | generateConfiguration(
39 | options: RectOptions | number,
40 | y?: number,
41 | w?: number,
42 | h?: number,
43 | zIndex?: number,
44 | ) {
45 | let completeConfiguration: RectOptions
46 | if (typeof options === 'object') {
47 | completeConfiguration = options
48 | }
49 | else {
50 | completeConfiguration = {
51 | x: options,
52 | y: y!,
53 | w: w!,
54 | h: h!,
55 | zIndex: zIndex!,
56 | }
57 | }
58 | return completeConfiguration
59 | }
60 |
61 | protected machiningGraphics(options: RectOptions) {
62 | const { x, y, w, h } = options
63 | this.path2D.rect(x, y, w, h)
64 | }
65 |
66 | protected injectShapeInfo(info: RectOptions) {
67 | const { x, y, w, h, zIndex } = info
68 | const topCenter: Position = { x: (x + w) / 2, y }
69 | const bottomCenter: Position = { x: (x + w) / 2, y: y + h }
70 | const leftCenter: Position = { x, y: (y + h) / 2 }
71 | const rightCenter: Position = { x: x + w, y: (y + h) / 2 }
72 | this.shapeInfo = {
73 | ...info,
74 | shape: ShapeType.Rect,
75 | topCenter,
76 | bottomCenter,
77 | leftCenter,
78 | rightCenter,
79 | }
80 |
81 | this.zIndex = zIndex
82 | }
83 |
84 | render(canvasEngine: CanvasEngine, options: RenderOptions) {
85 | const {
86 | options: { color },
87 | cb,
88 | } = options
89 | canvasEngine.ctx.fillStyle = color || ''
90 | canvasEngine.ctx.fill(this.path2D)
91 | cb()
92 | }
93 | }
94 |
--------------------------------------------------------------------------------
/src/canvasEngine.ts:
--------------------------------------------------------------------------------
1 | import { EventHandler } from './EventHandlers'
2 | import type { BaseShape } from './Shapes/base'
3 | import type { Rect } from './Shapes/rect'
4 | import type { EventFn, EventName } from './types/event'
5 | import type { ShapeClassType } from './types/shape'
6 |
7 | // todo
8 | // 移动元素
9 | // 切换图层
10 |
11 | export interface CanvasEngineProps {
12 | w?: string
13 | h?: string
14 | canvasTarget?: string | HTMLCanvasElement
15 | }
16 |
17 | export interface DrawDependencyGraphMap {
18 | id: symbol
19 | path2D: Path2D
20 | shapeInfo: BaseShape
21 | }
22 |
23 | export interface RenderOptions {
24 | options: {
25 | color?: string
26 | mode?: 'fill' | 'stroke'
27 | }
28 | cb: (...args: any[]) => unknown
29 | }
30 |
31 | export interface CanvasDomInfo {
32 | canvasHeight: number
33 | canvasWidth: number
34 | leftOffset: number
35 | topOffset: number
36 | }
37 |
38 | export class CanvasEngine {
39 | private maxZIndex = -1
40 |
41 | public canvasDomInfo: CanvasDomInfo = {
42 | canvasHeight: 0,
43 | canvasWidth: 0,
44 | leftOffset: 0,
45 | topOffset: 0,
46 | }
47 |
48 | // 绘画图
49 | private drawDependencyGraphsMap: Map = new Map()
50 |
51 | // canvas dom
52 | private rawCanvasDom!: HTMLCanvasElement
53 | // canvas ctx
54 | public ctx!: CanvasRenderingContext2D
55 | // 事件map
56 | public eventsMap: Map> = new Map()
57 | // 渲染队列
58 | private renderQueue: {
59 | graphical: BaseShape
60 | options: RenderOptions
61 | }[] = []
62 |
63 | isRender = false
64 |
65 | private eventHandler
66 |
67 | constructor(public options: CanvasEngineProps) {
68 | this.initCanvasSize(options)
69 | this.initCtx()
70 | this.eventHandler = new EventHandler(this)
71 | }
72 |
73 | private initCanvasSize(options: CanvasEngineProps) {
74 | const { w, h, canvasTarget } = options
75 | const canvasDom = typeof canvasTarget === 'string'
76 | ? (document.querySelector(
77 | canvasTarget || '#canvas',
78 | ) as HTMLCanvasElement)
79 | : canvasTarget
80 |
81 | if (canvasDom) {
82 | canvasDom.setAttribute('width', w || '500')
83 | canvasDom.setAttribute('height', h || '500')
84 | }
85 | else {
86 | throw new Error('请选择正确的 canvas id 获取dom元素')
87 | }
88 | this.rawCanvasDom = canvasDom
89 | this.initCanvasDomInfo(options, canvasDom)
90 | }
91 |
92 | private initCanvasDomInfo(options: CanvasEngineProps, _: HTMLCanvasElement) {
93 | const { w, h } = options
94 | this.canvasDomInfo.canvasWidth = Number(w || '500')
95 | this.canvasDomInfo.canvasHeight = Number(h || '500')
96 | this.updateCanvasOffset()
97 | }
98 |
99 | public updateCanvasOffset() {
100 | const { left, top } = this.rawCanvasDom.getClientRects()[0]
101 | this.canvasDomInfo.leftOffset = left
102 | this.canvasDomInfo.topOffset = top
103 | }
104 |
105 | private sortRenderQueue() {
106 | this.renderQueue.sort((a, b) => {
107 | return a.graphical.zIndex - b.graphical.zIndex
108 | })
109 | }
110 |
111 | private initCtx() {
112 | this.ctx = this.rawCanvasDom.getContext('2d') as CanvasRenderingContext2D
113 | }
114 |
115 | private renderingQueue() {
116 | this.sortRenderQueue()
117 | this.renderQueue.forEach((render) => {
118 | render.graphical.innerZIndex = ++this.maxZIndex
119 | render.graphical.beforeRender(this, render.options)
120 | render.graphical.render(this, render.options)
121 | })
122 | }
123 |
124 | public getCanvasDom(): HTMLCanvasElement {
125 | return this.rawCanvasDom
126 | }
127 |
128 | public render(
129 | graphical: ShapeClassType,
130 | options: RenderOptions['options'],
131 | cb: RenderOptions['cb'] = () => {},
132 | ) {
133 | this.drawDependencyGraphsMap.set(graphical.id, graphical)
134 | this.renderQueue.push({
135 | graphical,
136 | options: {
137 | options,
138 | cb,
139 | },
140 | })
141 | this.runRenderTask()
142 | }
143 |
144 | public addEventListener(
145 | graphical: ShapeClassType,
146 | eventType: EventName,
147 | fn: EventFn,
148 | ) {
149 | return this.eventHandler.pushEvent(graphical, eventType, fn)
150 | }
151 |
152 | public clear(graphical: ShapeClassType) {
153 | const index = this.renderQueue.findIndex(
154 | it => it.graphical.id === graphical.id,
155 | )
156 | if (index === -1) return
157 | this.renderQueue.splice(index, 1)
158 | this.emptyEvents(graphical)
159 | this.runRenderTask()
160 | }
161 |
162 | public emptyEvents(graphical: ShapeClassType) {
163 | const { events } = graphical
164 | Object.keys(events).forEach((eventName) => {
165 | this.clearEvents(graphical, eventName as EventName)
166 | })
167 | }
168 |
169 | public clearEvents(graphical: ShapeClassType, eventType: EventName) {
170 | this.eventHandler.removeListener(graphical, eventType)
171 | }
172 |
173 | public reload() {
174 | this.clearView()
175 | this.renderingQueue()
176 | }
177 |
178 | public clearView() {
179 | const { canvasWidth, canvasHeight } = this.canvasDomInfo
180 | this.ctx.clearRect(0, 0, canvasWidth, canvasHeight)
181 | }
182 |
183 | public modifyShapeLayer(graphical: Rect, zIndex: number) {
184 | graphical.zIndex = zIndex
185 | this.runRenderTask()
186 | }
187 |
188 | private runRenderTask() {
189 | if (!this.isRender) {
190 | this.isRender = true
191 | Promise.resolve().then(() => {
192 | this.reload()
193 | this.isRender = false
194 | })
195 | }
196 | }
197 |
198 | public getCtx() {
199 | return this.ctx
200 | }
201 | }
202 |
--------------------------------------------------------------------------------
/src/helper/warn.ts:
--------------------------------------------------------------------------------
1 | export function warn(message: string) {
2 | console.warn(`[CanvasEngine warn] ${message}`)
3 | }
4 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './canvasEngine'
2 | export * from './Shapes'
3 | export * from './types'
4 |
--------------------------------------------------------------------------------
/src/types/event.ts:
--------------------------------------------------------------------------------
1 | import type { ShapeClassType } from './shape'
2 |
3 | export enum EventName {
4 | click = 'click',
5 | dblclick = 'dblclick',
6 | }
7 |
8 | export type ValidEventType = MouseEvent
9 |
10 | export type EventFn = (event: ValidEventType) => unknown
11 |
12 | export type Noop = () => {}
13 |
14 | export type EventHandlerFn = (e: ValidEventType, shape: ShapeClassType) => void
15 | export type NormalEventHandlerFn = (ev: MouseEvent) => any
16 |
--------------------------------------------------------------------------------
/src/types/index.ts:
--------------------------------------------------------------------------------
1 | export * from './event'
2 | export * from './shape'
3 |
--------------------------------------------------------------------------------
/src/types/shape.ts:
--------------------------------------------------------------------------------
1 | import type { BaseShape } from '../Shapes/base'
2 |
3 | export enum ShapeType {
4 | Rect,
5 | Arc,
6 | Line,
7 | }
8 |
9 | export interface Size {
10 | w: number
11 | h: number
12 | }
13 |
14 | export interface baseShape {
15 | shape: ShapeType
16 | x: number
17 | y: number
18 | renderMode?: 'fill' | 'stroke'
19 | }
20 |
21 | export type ShapeClassType = BaseShape
22 |
23 | export interface Position {
24 | x: number
25 | y: number
26 | }
27 |
28 | export interface RectShape extends baseShape, Size {
29 | leftCenter: Position
30 | rightCenter: Position
31 | bottomCenter: Position
32 | topCenter: Position
33 | }
34 |
35 | /**
36 | * @param {number} x, y 圆心
37 | * @param {number} radius 半径
38 | */
39 | export interface ArcShape extends baseShape {
40 | radius: number
41 | top: Position
42 | left: Position
43 | right: Position
44 | bottom: Position
45 | }
46 |
47 | export interface LineShape extends baseShape {
48 | end: { x: number; y: number }
49 | zIndex: number
50 | track: { x: number; y: number }[]
51 | lineWidth?: number
52 | }
53 |
--------------------------------------------------------------------------------
/test/index.spec.ts:
--------------------------------------------------------------------------------
1 | it('name', () => {
2 | expect(1).toBe(1)
3 | })
4 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Projects */
6 | // "incremental": true, /* Enable incremental compilation */
7 | // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
8 | // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
9 | // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
10 | // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
11 | // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
12 |
13 | /* Language and Environment */
14 | "target": "ESNext" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
15 | // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
16 | // "jsx": "preserve", /* Specify what JSX code is generated. */
17 | // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
18 | // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
19 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
20 | // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
21 | // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
22 | // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
23 | // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
24 | // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
25 |
26 | /* Modules */
27 | "module": "commonjs" /* Specify what module code is generated. */,
28 | // "rootDir": "./", /* Specify the root folder within your source files. */
29 | // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
30 | // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
31 | // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
32 | // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
33 | // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
34 | "types": ["vitest/globals", "vitest/importMeta"],
35 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
36 | // "resolveJsonModule": true, /* Enable importing .json files */
37 | // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
38 |
39 | /* JavaScript Support */
40 | // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
41 | // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
42 | // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
43 |
44 | /* Emit */
45 | // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
46 | // "declarationMap": true, /* Create sourcemaps for d.ts files. */
47 | // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
48 | // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
49 | // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
50 | // "outDir": "./", /* Specify an output folder for all emitted files. */
51 | // "removeComments": true, /* Disable emitting comments. */
52 | // "noEmit": true, /* Disable emitting files from a compilation. */
53 | // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
54 | // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
55 | // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
56 | // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
57 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
58 | // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
59 | // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
60 | // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
61 | // "newLine": "crlf", /* Set the newline character for emitting files. */
62 | // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
63 | // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
64 | // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
65 | // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
66 | // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
67 | // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
68 |
69 | /* Interop Constraints */
70 | // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
71 | // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
72 | "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */,
73 | // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
74 | "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
75 |
76 | /* Type Checking */
77 | "strict": true /* Enable all strict type-checking options. */,
78 | // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
79 | // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
80 | // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
81 | // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
82 | // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
83 | // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
84 | // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
85 | // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
86 | // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
87 | // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
88 | // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
89 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
90 | // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
91 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
92 | // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
93 | // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
94 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
95 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
96 |
97 | /* Completeness */
98 | // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
99 | "skipLibCheck": true /* Skip type checking all .d.ts files. */
100 | }
101 | }
102 |
--------------------------------------------------------------------------------
/vitest.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vitest/config'
2 | import AutoImport from 'unplugin-auto-import/vite'
3 |
4 | export default defineConfig({
5 | plugins: [
6 | AutoImport({
7 | imports: ['vitest'],
8 | }),
9 | ],
10 | test: {
11 | includeSource: ['test/**/*'],
12 | },
13 | })
14 |
--------------------------------------------------------------------------------