├── .github
└── workflows
│ └── main.yml
├── .gitignore
├── .prettierrc
├── .travis.yml
├── LICENSE
├── README.md
├── assets
├── conical-polar.gif
├── countdown-circle.gif
└── multiple-gauges.gif
├── example
├── .gitignore
├── README.md
├── package-lock.json
├── package.json
├── src
│ ├── conical-gradient
│ │ ├── conical-gradient.scss
│ │ ├── conical-gradient.ts
│ │ └── index.html
│ ├── countdown-gauge
│ │ ├── countdown-gauge.scss
│ │ ├── countdown-gauge.ts
│ │ └── index.html
│ ├── favicon.svg
│ ├── index.css
│ ├── index.html
│ ├── logo.svg
│ ├── main.tsx
│ ├── multiple-gauges
│ │ ├── index.html
│ │ ├── multiple-gauge.scss
│ │ └── multiple-gauge.ts
│ ├── progress-with-shadow-chart
│ │ ├── index.html
│ │ ├── index.tsx
│ │ └── progress-with-shadow-chart.tsx
│ └── vite-env.d.ts
├── tsconfig.json
└── vite.config.ts
├── jest.config.js
├── package-lock.json
├── package.json
├── rollup.config.js
├── src
├── gauge.test.ts
├── gauge.ts
├── index.ts
├── math.test.ts
├── math.ts
└── request-timeout.ts
├── tsconfig.json
└── tslint.json
/.github/workflows/main.yml:
--------------------------------------------------------------------------------
1 | name: tests
2 |
3 | on:
4 | push:
5 | branches: [ master ]
6 | pull_request:
7 | branches: [ master ]
8 |
9 | jobs:
10 | build:
11 | runs-on: ubuntu-latest
12 |
13 | strategy:
14 | matrix:
15 | node-version: [16.x]
16 |
17 | steps:
18 | - uses: actions/checkout@v2
19 |
20 | - name: Use Node.js ${{ matrix.node-version }}
21 | uses: actions/setup-node@v1
22 | with:
23 | node-version: ${{ matrix.node-version }}
24 |
25 | - name: Build
26 | run: npm i
27 |
28 | - name: TypeScript
29 | run: npm run typecheck
30 |
31 | - name: Test
32 | run: npm test
33 |
34 | - name: Check size
35 | run: npm run build && npm run bundlesize
36 |
37 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | lib
3 | .idea
4 | dist
5 | .cache
6 | examples/node_modules
7 | examples/.cache
8 | examples/dist
9 | types
10 | example/node_modules
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "singleQuote": true,
3 | "printWidth": 90
4 | }
5 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 |
3 | node_js:
4 | - '10'
5 |
6 | before_script:
7 | - npm install
8 | - cd examples && npm install && cd ..
9 |
10 | script:
11 | - npm run lint
12 | - npm run typecheck
13 | - npm run test
14 | - npm run build && npm run bundlesize
15 | - cd examples && npm run test
16 |
17 | notifications:
18 | email: false
19 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Egor Gorbachev
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 | ## gauge-chart-js [](https://npmjs.org/package/gauge-chart-js) [](https://travis-ci.org/kubk/gauge-chart-js) [](https://github.com/prettier/prettier)
2 |
3 | A tiny (<2kb gzipped) library for rendering gauge charts. Supports conical/polar gradients, animation timing functions, custom labels/tooltips. No external dependencies required.
4 |
5 | ### Examples
6 | | [Conical (Polar) gradient](example/src/conical-gradient) | [Multiple gauges + labels](example/src/multiple-gauges) | [Countdown circle](example/src/countdown-gauge) |
7 | | ------------- | -------------| -------------|
8 | | |
|
|
9 |
10 | These are GIFs, therefore FPS is low.
11 |
12 | ### Installation
13 | `npm install gauge-chart-js`
14 |
15 | ### Basic usage
16 | ```typescript
17 | import { cubicBezier, Gauge } from 'gauge-chart-js';
18 |
19 | const gauge = new Gauge({
20 | container: document.querySelector('.root'),
21 | color: '#0f0'
22 | });
23 |
24 | gauge.setValue(50);
25 |
26 | ```
27 |
28 | ### Customise easing
29 | ```typescript
30 | import { cubicBezier, Gauge } from 'gauge-chart-js';
31 |
32 | const easeIn = cubicBezier(0, 0, 0.2, 1);
33 | const gauge = new Gauge({
34 | // ...
35 | easing: easeIn
36 | })
37 | ```
38 |
39 | Easing functions cheat sheet: https://cubic-bezier.com/#.17,.67,.83,.67
40 |
41 | ### Options
42 | | Name | Description | Required | Default value | Type |
43 | | --- | --- | --- | --- | --- |
44 | | `container` | The HTML element that act as a container for the gauge | Yes | - | `HTMLElement` |
45 | | `fromAngle` | Gauge start angle in degrees | No | 220 | `number` |
46 | | `toAngle` | Gauge end angle in degrees | No | 500 | `number` |
47 | | `animationDuration` | Animation duration in milliseconds | No | 600 | `number` |
48 | | `animationDelay`| Animation delay in milliseconds. Pass 0 for no animation. | No | 0 | `number` |
49 | | `lineWidth`| Thickness of the gauge | No | 3.5 | `number` |
50 | | `easing`| The easing function that will be used when animating | No | linear | `(timeFraction: number) => number` |
51 | | `gaugeRadius`| Gauge radius | No | 35 | `number` |
52 | | `color`| Gauge color supported by SVG's [fill](https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Fills_and_Strokes) attribute | No | - | `string` |
53 | | `colors`| Gauge colors supported by SVG's [fill](https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Fills_and_Strokes) attribute | No | - | `string[]` |
54 |
55 | ### Programmatic API
56 | Available methods:
57 | - `setValue(value)` Sets chart value.
58 | - `getElementAtValue(value)` Returns SVG element for given `value` with additional information: angle and relative position to its parent container.
59 | - `insertAdjacentToRoot(where, html)` Inserts HTML to SVG root. Can be used for custom labels.
60 | - `dispose()` Disposes chart.
61 |
62 | ### How to integrate it with framework X?
63 | The library is framework-agnostic and do not require any framework-specific integration. If you are using Angular make sure chart is rendered outside zone.js:
64 | ```typescript
65 | class ExampleComponent implements OnInit {
66 | constructor(private ngZone: NgZone) {}
67 |
68 | ngOnInit() {
69 | const gauge = new Gauge({ ... });
70 | this.ngZone.runOutsideAngular(() => {
71 | gauge.draw();
72 | });
73 | }
74 | }
75 | ```
76 |
77 | ### Run examples:
78 | - `cd example`
79 | - `npm run dev`
80 | - Open demo Conical gauge: http://localhost:3000/conical-gradient/
81 | - Open demo React + shadowed center: http://localhost:3000/progress-with-shadow-chart/
82 | - Open demo Multiple gauges + labels: http://localhost:3000/multiple-gauges/
83 | - Open demo Countdown gauge: http://localhost:3000/countdown-gauge/
84 |
85 |
--------------------------------------------------------------------------------
/assets/conical-polar.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kubk/gauge-chart-js/d1799caa7020a11ec4c739d617d709321cb86b49/assets/conical-polar.gif
--------------------------------------------------------------------------------
/assets/countdown-circle.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kubk/gauge-chart-js/d1799caa7020a11ec4c739d617d709321cb86b49/assets/countdown-circle.gif
--------------------------------------------------------------------------------
/assets/multiple-gauges.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kubk/gauge-chart-js/d1799caa7020a11ec4c739d617d709321cb86b49/assets/multiple-gauges.gif
--------------------------------------------------------------------------------
/example/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
3 | dist
4 | dist-ssr
5 | *.local
6 |
--------------------------------------------------------------------------------
/example/README.md:
--------------------------------------------------------------------------------
1 | # Installation
2 |
3 | - npm i
4 | - npm run dev
5 | ## Examples
6 | - Conical gauge: http://localhost:3000/conical-gradient/
7 | - React + shadowed center: http://localhost:3000/progress-with-shadow-chart/
8 | - Multiple gauges + labels: http://localhost:3000/multiple-gauges/
9 | - Countdown gauge: http://localhost:3000/countdown-gauge/
10 |
--------------------------------------------------------------------------------
/example/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "demo-vite",
3 | "version": "0.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "demo-vite",
9 | "version": "0.0.0",
10 | "dependencies": {
11 | "@emotion/css": "^11.7.1",
12 | "gradstop": "^2.2.3",
13 | "react": "^17.0.0",
14 | "react-dom": "^17.0.0"
15 | },
16 | "devDependencies": {
17 | "@types/node": "^16.9.1",
18 | "@types/react": "^17.0.0",
19 | "@types/react-dom": "^17.0.0",
20 | "@vitejs/plugin-react-refresh": "^1.3.6",
21 | "sass": "^1.49.7",
22 | "typescript": "^4.5.5",
23 | "vite": "^2.7.13"
24 | }
25 | },
26 | "node_modules/@babel/code-frame": {
27 | "version": "7.14.5",
28 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz",
29 | "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==",
30 | "dependencies": {
31 | "@babel/highlight": "^7.14.5"
32 | },
33 | "engines": {
34 | "node": ">=6.9.0"
35 | }
36 | },
37 | "node_modules/@babel/compat-data": {
38 | "version": "7.15.0",
39 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz",
40 | "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==",
41 | "engines": {
42 | "node": ">=6.9.0"
43 | }
44 | },
45 | "node_modules/@babel/core": {
46 | "version": "7.15.5",
47 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz",
48 | "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==",
49 | "dependencies": {
50 | "@babel/code-frame": "^7.14.5",
51 | "@babel/generator": "^7.15.4",
52 | "@babel/helper-compilation-targets": "^7.15.4",
53 | "@babel/helper-module-transforms": "^7.15.4",
54 | "@babel/helpers": "^7.15.4",
55 | "@babel/parser": "^7.15.5",
56 | "@babel/template": "^7.15.4",
57 | "@babel/traverse": "^7.15.4",
58 | "@babel/types": "^7.15.4",
59 | "convert-source-map": "^1.7.0",
60 | "debug": "^4.1.0",
61 | "gensync": "^1.0.0-beta.2",
62 | "json5": "^2.1.2",
63 | "semver": "^6.3.0",
64 | "source-map": "^0.5.0"
65 | },
66 | "engines": {
67 | "node": ">=6.9.0"
68 | },
69 | "funding": {
70 | "type": "opencollective",
71 | "url": "https://opencollective.com/babel"
72 | }
73 | },
74 | "node_modules/@babel/generator": {
75 | "version": "7.15.4",
76 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz",
77 | "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==",
78 | "dependencies": {
79 | "@babel/types": "^7.15.4",
80 | "jsesc": "^2.5.1",
81 | "source-map": "^0.5.0"
82 | },
83 | "engines": {
84 | "node": ">=6.9.0"
85 | }
86 | },
87 | "node_modules/@babel/helper-compilation-targets": {
88 | "version": "7.15.4",
89 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz",
90 | "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==",
91 | "dependencies": {
92 | "@babel/compat-data": "^7.15.0",
93 | "@babel/helper-validator-option": "^7.14.5",
94 | "browserslist": "^4.16.6",
95 | "semver": "^6.3.0"
96 | },
97 | "engines": {
98 | "node": ">=6.9.0"
99 | },
100 | "peerDependencies": {
101 | "@babel/core": "^7.0.0"
102 | }
103 | },
104 | "node_modules/@babel/helper-function-name": {
105 | "version": "7.15.4",
106 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz",
107 | "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==",
108 | "dependencies": {
109 | "@babel/helper-get-function-arity": "^7.15.4",
110 | "@babel/template": "^7.15.4",
111 | "@babel/types": "^7.15.4"
112 | },
113 | "engines": {
114 | "node": ">=6.9.0"
115 | }
116 | },
117 | "node_modules/@babel/helper-get-function-arity": {
118 | "version": "7.15.4",
119 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz",
120 | "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==",
121 | "dependencies": {
122 | "@babel/types": "^7.15.4"
123 | },
124 | "engines": {
125 | "node": ">=6.9.0"
126 | }
127 | },
128 | "node_modules/@babel/helper-hoist-variables": {
129 | "version": "7.15.4",
130 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz",
131 | "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==",
132 | "dependencies": {
133 | "@babel/types": "^7.15.4"
134 | },
135 | "engines": {
136 | "node": ">=6.9.0"
137 | }
138 | },
139 | "node_modules/@babel/helper-member-expression-to-functions": {
140 | "version": "7.15.4",
141 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz",
142 | "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==",
143 | "dependencies": {
144 | "@babel/types": "^7.15.4"
145 | },
146 | "engines": {
147 | "node": ">=6.9.0"
148 | }
149 | },
150 | "node_modules/@babel/helper-module-imports": {
151 | "version": "7.15.4",
152 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz",
153 | "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==",
154 | "dependencies": {
155 | "@babel/types": "^7.15.4"
156 | },
157 | "engines": {
158 | "node": ">=6.9.0"
159 | }
160 | },
161 | "node_modules/@babel/helper-module-transforms": {
162 | "version": "7.15.4",
163 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.4.tgz",
164 | "integrity": "sha512-9fHHSGE9zTC++KuXLZcB5FKgvlV83Ox+NLUmQTawovwlJ85+QMhk1CnVk406CQVj97LaWod6KVjl2Sfgw9Aktw==",
165 | "dependencies": {
166 | "@babel/helper-module-imports": "^7.15.4",
167 | "@babel/helper-replace-supers": "^7.15.4",
168 | "@babel/helper-simple-access": "^7.15.4",
169 | "@babel/helper-split-export-declaration": "^7.15.4",
170 | "@babel/helper-validator-identifier": "^7.14.9",
171 | "@babel/template": "^7.15.4",
172 | "@babel/traverse": "^7.15.4",
173 | "@babel/types": "^7.15.4"
174 | },
175 | "engines": {
176 | "node": ">=6.9.0"
177 | }
178 | },
179 | "node_modules/@babel/helper-optimise-call-expression": {
180 | "version": "7.15.4",
181 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz",
182 | "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==",
183 | "dependencies": {
184 | "@babel/types": "^7.15.4"
185 | },
186 | "engines": {
187 | "node": ">=6.9.0"
188 | }
189 | },
190 | "node_modules/@babel/helper-plugin-utils": {
191 | "version": "7.16.7",
192 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
193 | "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==",
194 | "engines": {
195 | "node": ">=6.9.0"
196 | }
197 | },
198 | "node_modules/@babel/helper-replace-supers": {
199 | "version": "7.15.4",
200 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz",
201 | "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==",
202 | "dependencies": {
203 | "@babel/helper-member-expression-to-functions": "^7.15.4",
204 | "@babel/helper-optimise-call-expression": "^7.15.4",
205 | "@babel/traverse": "^7.15.4",
206 | "@babel/types": "^7.15.4"
207 | },
208 | "engines": {
209 | "node": ">=6.9.0"
210 | }
211 | },
212 | "node_modules/@babel/helper-simple-access": {
213 | "version": "7.15.4",
214 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz",
215 | "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==",
216 | "dependencies": {
217 | "@babel/types": "^7.15.4"
218 | },
219 | "engines": {
220 | "node": ">=6.9.0"
221 | }
222 | },
223 | "node_modules/@babel/helper-split-export-declaration": {
224 | "version": "7.15.4",
225 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz",
226 | "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==",
227 | "dependencies": {
228 | "@babel/types": "^7.15.4"
229 | },
230 | "engines": {
231 | "node": ">=6.9.0"
232 | }
233 | },
234 | "node_modules/@babel/helper-validator-identifier": {
235 | "version": "7.14.9",
236 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz",
237 | "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==",
238 | "engines": {
239 | "node": ">=6.9.0"
240 | }
241 | },
242 | "node_modules/@babel/helper-validator-option": {
243 | "version": "7.14.5",
244 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz",
245 | "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==",
246 | "engines": {
247 | "node": ">=6.9.0"
248 | }
249 | },
250 | "node_modules/@babel/helpers": {
251 | "version": "7.15.4",
252 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz",
253 | "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==",
254 | "dependencies": {
255 | "@babel/template": "^7.15.4",
256 | "@babel/traverse": "^7.15.4",
257 | "@babel/types": "^7.15.4"
258 | },
259 | "engines": {
260 | "node": ">=6.9.0"
261 | }
262 | },
263 | "node_modules/@babel/highlight": {
264 | "version": "7.14.5",
265 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz",
266 | "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==",
267 | "dependencies": {
268 | "@babel/helper-validator-identifier": "^7.14.5",
269 | "chalk": "^2.0.0",
270 | "js-tokens": "^4.0.0"
271 | },
272 | "engines": {
273 | "node": ">=6.9.0"
274 | }
275 | },
276 | "node_modules/@babel/parser": {
277 | "version": "7.15.6",
278 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.6.tgz",
279 | "integrity": "sha512-S/TSCcsRuCkmpUuoWijua0Snt+f3ewU/8spLo+4AXJCZfT0bVCzLD5MuOKdrx0mlAptbKzn5AdgEIIKXxXkz9Q==",
280 | "bin": {
281 | "parser": "bin/babel-parser.js"
282 | },
283 | "engines": {
284 | "node": ">=6.0.0"
285 | }
286 | },
287 | "node_modules/@babel/plugin-syntax-jsx": {
288 | "version": "7.16.7",
289 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
290 | "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
291 | "dependencies": {
292 | "@babel/helper-plugin-utils": "^7.16.7"
293 | },
294 | "engines": {
295 | "node": ">=6.9.0"
296 | },
297 | "peerDependencies": {
298 | "@babel/core": "^7.0.0-0"
299 | }
300 | },
301 | "node_modules/@babel/plugin-transform-react-jsx-self": {
302 | "version": "7.14.9",
303 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.14.9.tgz",
304 | "integrity": "sha512-Fqqu0f8zv9W+RyOnx29BX/RlEsBRANbOf5xs5oxb2aHP4FKbLXxIaVPUiCti56LAR1IixMH4EyaixhUsKqoBHw==",
305 | "dev": true,
306 | "dependencies": {
307 | "@babel/helper-plugin-utils": "^7.14.5"
308 | },
309 | "engines": {
310 | "node": ">=6.9.0"
311 | },
312 | "peerDependencies": {
313 | "@babel/core": "^7.0.0-0"
314 | }
315 | },
316 | "node_modules/@babel/plugin-transform-react-jsx-source": {
317 | "version": "7.14.5",
318 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.14.5.tgz",
319 | "integrity": "sha512-1TpSDnD9XR/rQ2tzunBVPThF5poaYT9GqP+of8fAtguYuI/dm2RkrMBDemsxtY0XBzvW7nXjYM0hRyKX9QYj7Q==",
320 | "dev": true,
321 | "dependencies": {
322 | "@babel/helper-plugin-utils": "^7.14.5"
323 | },
324 | "engines": {
325 | "node": ">=6.9.0"
326 | },
327 | "peerDependencies": {
328 | "@babel/core": "^7.0.0-0"
329 | }
330 | },
331 | "node_modules/@babel/runtime": {
332 | "version": "7.17.0",
333 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.0.tgz",
334 | "integrity": "sha512-etcO/ohMNaNA2UBdaXBBSX/3aEzFMRrVfaPv8Ptc0k+cWpWW0QFiGZ2XnVqQZI1Cf734LbPGmqBKWESfW4x/dQ==",
335 | "dependencies": {
336 | "regenerator-runtime": "^0.13.4"
337 | },
338 | "engines": {
339 | "node": ">=6.9.0"
340 | }
341 | },
342 | "node_modules/@babel/template": {
343 | "version": "7.15.4",
344 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz",
345 | "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==",
346 | "dependencies": {
347 | "@babel/code-frame": "^7.14.5",
348 | "@babel/parser": "^7.15.4",
349 | "@babel/types": "^7.15.4"
350 | },
351 | "engines": {
352 | "node": ">=6.9.0"
353 | }
354 | },
355 | "node_modules/@babel/traverse": {
356 | "version": "7.15.4",
357 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz",
358 | "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==",
359 | "dependencies": {
360 | "@babel/code-frame": "^7.14.5",
361 | "@babel/generator": "^7.15.4",
362 | "@babel/helper-function-name": "^7.15.4",
363 | "@babel/helper-hoist-variables": "^7.15.4",
364 | "@babel/helper-split-export-declaration": "^7.15.4",
365 | "@babel/parser": "^7.15.4",
366 | "@babel/types": "^7.15.4",
367 | "debug": "^4.1.0",
368 | "globals": "^11.1.0"
369 | },
370 | "engines": {
371 | "node": ">=6.9.0"
372 | }
373 | },
374 | "node_modules/@babel/types": {
375 | "version": "7.15.6",
376 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz",
377 | "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==",
378 | "dependencies": {
379 | "@babel/helper-validator-identifier": "^7.14.9",
380 | "to-fast-properties": "^2.0.0"
381 | },
382 | "engines": {
383 | "node": ">=6.9.0"
384 | }
385 | },
386 | "node_modules/@emotion/babel-plugin": {
387 | "version": "11.7.2",
388 | "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.7.2.tgz",
389 | "integrity": "sha512-6mGSCWi9UzXut/ZAN6lGFu33wGR3SJisNl3c0tvlmb8XChH1b2SUvxvnOh7hvLpqyRdHHU9AiazV3Cwbk5SXKQ==",
390 | "dependencies": {
391 | "@babel/helper-module-imports": "^7.12.13",
392 | "@babel/plugin-syntax-jsx": "^7.12.13",
393 | "@babel/runtime": "^7.13.10",
394 | "@emotion/hash": "^0.8.0",
395 | "@emotion/memoize": "^0.7.5",
396 | "@emotion/serialize": "^1.0.2",
397 | "babel-plugin-macros": "^2.6.1",
398 | "convert-source-map": "^1.5.0",
399 | "escape-string-regexp": "^4.0.0",
400 | "find-root": "^1.1.0",
401 | "source-map": "^0.5.7",
402 | "stylis": "4.0.13"
403 | },
404 | "peerDependencies": {
405 | "@babel/core": "^7.0.0"
406 | }
407 | },
408 | "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": {
409 | "version": "4.0.0",
410 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
411 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
412 | "engines": {
413 | "node": ">=10"
414 | },
415 | "funding": {
416 | "url": "https://github.com/sponsors/sindresorhus"
417 | }
418 | },
419 | "node_modules/@emotion/cache": {
420 | "version": "11.7.1",
421 | "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.7.1.tgz",
422 | "integrity": "sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A==",
423 | "dependencies": {
424 | "@emotion/memoize": "^0.7.4",
425 | "@emotion/sheet": "^1.1.0",
426 | "@emotion/utils": "^1.0.0",
427 | "@emotion/weak-memoize": "^0.2.5",
428 | "stylis": "4.0.13"
429 | }
430 | },
431 | "node_modules/@emotion/css": {
432 | "version": "11.7.1",
433 | "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.7.1.tgz",
434 | "integrity": "sha512-RUUgPlMZunlc7SE5A6Hg+VWRzb2cU6O9xlV78KCFgcnl25s7Qz/20oQg71iKudpLqk7xj0vhbJlwcJJMT0BOZg==",
435 | "dependencies": {
436 | "@emotion/babel-plugin": "^11.7.1",
437 | "@emotion/cache": "^11.7.1",
438 | "@emotion/serialize": "^1.0.0",
439 | "@emotion/sheet": "^1.0.3",
440 | "@emotion/utils": "^1.0.0"
441 | },
442 | "peerDependencies": {
443 | "@babel/core": "^7.0.0"
444 | },
445 | "peerDependenciesMeta": {
446 | "@babel/core": {
447 | "optional": true
448 | }
449 | }
450 | },
451 | "node_modules/@emotion/hash": {
452 | "version": "0.8.0",
453 | "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
454 | "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
455 | },
456 | "node_modules/@emotion/memoize": {
457 | "version": "0.7.5",
458 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
459 | "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
460 | },
461 | "node_modules/@emotion/serialize": {
462 | "version": "1.0.2",
463 | "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz",
464 | "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==",
465 | "dependencies": {
466 | "@emotion/hash": "^0.8.0",
467 | "@emotion/memoize": "^0.7.4",
468 | "@emotion/unitless": "^0.7.5",
469 | "@emotion/utils": "^1.0.0",
470 | "csstype": "^3.0.2"
471 | }
472 | },
473 | "node_modules/@emotion/sheet": {
474 | "version": "1.1.0",
475 | "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.1.0.tgz",
476 | "integrity": "sha512-u0AX4aSo25sMAygCuQTzS+HsImZFuS8llY8O7b9MDRzbJM0kVJlAz6KNDqcG7pOuQZJmj/8X/rAW+66kMnMW+g=="
477 | },
478 | "node_modules/@emotion/unitless": {
479 | "version": "0.7.5",
480 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
481 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
482 | },
483 | "node_modules/@emotion/utils": {
484 | "version": "1.0.0",
485 | "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz",
486 | "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA=="
487 | },
488 | "node_modules/@emotion/weak-memoize": {
489 | "version": "0.2.5",
490 | "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
491 | "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
492 | },
493 | "node_modules/@rollup/pluginutils": {
494 | "version": "4.1.1",
495 | "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz",
496 | "integrity": "sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==",
497 | "dev": true,
498 | "dependencies": {
499 | "estree-walker": "^2.0.1",
500 | "picomatch": "^2.2.2"
501 | },
502 | "engines": {
503 | "node": ">= 8.0.0"
504 | }
505 | },
506 | "node_modules/@types/node": {
507 | "version": "16.9.1",
508 | "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.1.tgz",
509 | "integrity": "sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==",
510 | "dev": true
511 | },
512 | "node_modules/@types/parse-json": {
513 | "version": "4.0.0",
514 | "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
515 | "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
516 | },
517 | "node_modules/@types/prop-types": {
518 | "version": "15.7.4",
519 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
520 | "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==",
521 | "dev": true
522 | },
523 | "node_modules/@types/react": {
524 | "version": "17.0.20",
525 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.20.tgz",
526 | "integrity": "sha512-wWZrPlihslrPpcKyCSlmIlruakxr57/buQN1RjlIeaaTWDLtJkTtRW429MoQJergvVKc4IWBpRhWw7YNh/7GVA==",
527 | "dev": true,
528 | "dependencies": {
529 | "@types/prop-types": "*",
530 | "@types/scheduler": "*",
531 | "csstype": "^3.0.2"
532 | }
533 | },
534 | "node_modules/@types/react-dom": {
535 | "version": "17.0.9",
536 | "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.9.tgz",
537 | "integrity": "sha512-wIvGxLfgpVDSAMH5utdL9Ngm5Owu0VsGmldro3ORLXV8CShrL8awVj06NuEXFQ5xyaYfdca7Sgbk/50Ri1GdPg==",
538 | "dev": true,
539 | "dependencies": {
540 | "@types/react": "*"
541 | }
542 | },
543 | "node_modules/@types/scheduler": {
544 | "version": "0.16.2",
545 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
546 | "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
547 | "dev": true
548 | },
549 | "node_modules/@vitejs/plugin-react-refresh": {
550 | "version": "1.3.6",
551 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-refresh/-/plugin-react-refresh-1.3.6.tgz",
552 | "integrity": "sha512-iNR/UqhUOmFFxiezt0em9CgmiJBdWR+5jGxB2FihaoJfqGt76kiwaKoVOJVU5NYcDWMdN06LbyN2VIGIoYdsEA==",
553 | "dev": true,
554 | "dependencies": {
555 | "@babel/core": "^7.14.8",
556 | "@babel/plugin-transform-react-jsx-self": "^7.14.5",
557 | "@babel/plugin-transform-react-jsx-source": "^7.14.5",
558 | "@rollup/pluginutils": "^4.1.1",
559 | "react-refresh": "^0.10.0"
560 | },
561 | "engines": {
562 | "node": ">=12.0.0"
563 | }
564 | },
565 | "node_modules/ansi-styles": {
566 | "version": "3.2.1",
567 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
568 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
569 | "dependencies": {
570 | "color-convert": "^1.9.0"
571 | },
572 | "engines": {
573 | "node": ">=4"
574 | }
575 | },
576 | "node_modules/anymatch": {
577 | "version": "3.1.2",
578 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
579 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
580 | "dev": true,
581 | "dependencies": {
582 | "normalize-path": "^3.0.0",
583 | "picomatch": "^2.0.4"
584 | },
585 | "engines": {
586 | "node": ">= 8"
587 | }
588 | },
589 | "node_modules/babel-plugin-macros": {
590 | "version": "2.8.0",
591 | "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
592 | "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
593 | "dependencies": {
594 | "@babel/runtime": "^7.7.2",
595 | "cosmiconfig": "^6.0.0",
596 | "resolve": "^1.12.0"
597 | }
598 | },
599 | "node_modules/binary-extensions": {
600 | "version": "2.2.0",
601 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
602 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
603 | "dev": true,
604 | "engines": {
605 | "node": ">=8"
606 | }
607 | },
608 | "node_modules/braces": {
609 | "version": "3.0.2",
610 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
611 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
612 | "dev": true,
613 | "dependencies": {
614 | "fill-range": "^7.0.1"
615 | },
616 | "engines": {
617 | "node": ">=8"
618 | }
619 | },
620 | "node_modules/browserslist": {
621 | "version": "4.17.0",
622 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.0.tgz",
623 | "integrity": "sha512-g2BJ2a0nEYvEFQC208q8mVAhfNwpZ5Mu8BwgtCdZKO3qx98HChmeg448fPdUzld8aFmfLgVh7yymqV+q1lJZ5g==",
624 | "dependencies": {
625 | "caniuse-lite": "^1.0.30001254",
626 | "colorette": "^1.3.0",
627 | "electron-to-chromium": "^1.3.830",
628 | "escalade": "^3.1.1",
629 | "node-releases": "^1.1.75"
630 | },
631 | "bin": {
632 | "browserslist": "cli.js"
633 | },
634 | "engines": {
635 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
636 | },
637 | "funding": {
638 | "type": "opencollective",
639 | "url": "https://opencollective.com/browserslist"
640 | }
641 | },
642 | "node_modules/callsites": {
643 | "version": "3.1.0",
644 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
645 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
646 | "engines": {
647 | "node": ">=6"
648 | }
649 | },
650 | "node_modules/caniuse-lite": {
651 | "version": "1.0.30001256",
652 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001256.tgz",
653 | "integrity": "sha512-QirrvMLmB4txNnxiaG/xbm6FSzv9LqOZ3Jp9VtCYb3oPIfCHpr/oGn38pFq0udwlkctvXQgPthaXqJ76DaYGnA==",
654 | "funding": {
655 | "type": "opencollective",
656 | "url": "https://opencollective.com/browserslist"
657 | }
658 | },
659 | "node_modules/chalk": {
660 | "version": "2.4.2",
661 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
662 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
663 | "dependencies": {
664 | "ansi-styles": "^3.2.1",
665 | "escape-string-regexp": "^1.0.5",
666 | "supports-color": "^5.3.0"
667 | },
668 | "engines": {
669 | "node": ">=4"
670 | }
671 | },
672 | "node_modules/chokidar": {
673 | "version": "3.5.3",
674 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
675 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
676 | "dev": true,
677 | "funding": [
678 | {
679 | "type": "individual",
680 | "url": "https://paulmillr.com/funding/"
681 | }
682 | ],
683 | "dependencies": {
684 | "anymatch": "~3.1.2",
685 | "braces": "~3.0.2",
686 | "glob-parent": "~5.1.2",
687 | "is-binary-path": "~2.1.0",
688 | "is-glob": "~4.0.1",
689 | "normalize-path": "~3.0.0",
690 | "readdirp": "~3.6.0"
691 | },
692 | "engines": {
693 | "node": ">= 8.10.0"
694 | },
695 | "optionalDependencies": {
696 | "fsevents": "~2.3.2"
697 | }
698 | },
699 | "node_modules/color-convert": {
700 | "version": "1.9.3",
701 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
702 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
703 | "dependencies": {
704 | "color-name": "1.1.3"
705 | }
706 | },
707 | "node_modules/color-name": {
708 | "version": "1.1.3",
709 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
710 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
711 | },
712 | "node_modules/colorette": {
713 | "version": "1.4.0",
714 | "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz",
715 | "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g=="
716 | },
717 | "node_modules/convert-source-map": {
718 | "version": "1.8.0",
719 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
720 | "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
721 | "dependencies": {
722 | "safe-buffer": "~5.1.1"
723 | }
724 | },
725 | "node_modules/cosmiconfig": {
726 | "version": "6.0.0",
727 | "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
728 | "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
729 | "dependencies": {
730 | "@types/parse-json": "^4.0.0",
731 | "import-fresh": "^3.1.0",
732 | "parse-json": "^5.0.0",
733 | "path-type": "^4.0.0",
734 | "yaml": "^1.7.2"
735 | },
736 | "engines": {
737 | "node": ">=8"
738 | }
739 | },
740 | "node_modules/csstype": {
741 | "version": "3.0.8",
742 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
743 | "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
744 | },
745 | "node_modules/debug": {
746 | "version": "4.3.2",
747 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
748 | "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
749 | "dependencies": {
750 | "ms": "2.1.2"
751 | },
752 | "engines": {
753 | "node": ">=6.0"
754 | },
755 | "peerDependenciesMeta": {
756 | "supports-color": {
757 | "optional": true
758 | }
759 | }
760 | },
761 | "node_modules/electron-to-chromium": {
762 | "version": "1.3.836",
763 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.836.tgz",
764 | "integrity": "sha512-Ney3pHOJBWkG/AqYjrW0hr2AUCsao+2uvq9HUlRP8OlpSdk/zOHOUJP7eu0icDvePC9DlgffuelP4TnOJmMRUg=="
765 | },
766 | "node_modules/error-ex": {
767 | "version": "1.3.2",
768 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
769 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
770 | "dependencies": {
771 | "is-arrayish": "^0.2.1"
772 | }
773 | },
774 | "node_modules/esbuild": {
775 | "version": "0.13.15",
776 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.15.tgz",
777 | "integrity": "sha512-raCxt02HBKv8RJxE8vkTSCXGIyKHdEdGfUmiYb8wnabnaEmHzyW7DCHb5tEN0xU8ryqg5xw54mcwnYkC4x3AIw==",
778 | "dev": true,
779 | "hasInstallScript": true,
780 | "bin": {
781 | "esbuild": "bin/esbuild"
782 | },
783 | "optionalDependencies": {
784 | "esbuild-android-arm64": "0.13.15",
785 | "esbuild-darwin-64": "0.13.15",
786 | "esbuild-darwin-arm64": "0.13.15",
787 | "esbuild-freebsd-64": "0.13.15",
788 | "esbuild-freebsd-arm64": "0.13.15",
789 | "esbuild-linux-32": "0.13.15",
790 | "esbuild-linux-64": "0.13.15",
791 | "esbuild-linux-arm": "0.13.15",
792 | "esbuild-linux-arm64": "0.13.15",
793 | "esbuild-linux-mips64le": "0.13.15",
794 | "esbuild-linux-ppc64le": "0.13.15",
795 | "esbuild-netbsd-64": "0.13.15",
796 | "esbuild-openbsd-64": "0.13.15",
797 | "esbuild-sunos-64": "0.13.15",
798 | "esbuild-windows-32": "0.13.15",
799 | "esbuild-windows-64": "0.13.15",
800 | "esbuild-windows-arm64": "0.13.15"
801 | }
802 | },
803 | "node_modules/esbuild-android-arm64": {
804 | "version": "0.13.15",
805 | "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.15.tgz",
806 | "integrity": "sha512-m602nft/XXeO8YQPUDVoHfjyRVPdPgjyyXOxZ44MK/agewFFkPa8tUo6lAzSWh5Ui5PB4KR9UIFTSBKh/RrCmg==",
807 | "cpu": [
808 | "arm64"
809 | ],
810 | "dev": true,
811 | "optional": true,
812 | "os": [
813 | "android"
814 | ]
815 | },
816 | "node_modules/esbuild-darwin-64": {
817 | "version": "0.13.15",
818 | "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.15.tgz",
819 | "integrity": "sha512-ihOQRGs2yyp7t5bArCwnvn2Atr6X4axqPpEdCFPVp7iUj4cVSdisgvEKdNR7yH3JDjW6aQDw40iQFoTqejqxvQ==",
820 | "cpu": [
821 | "x64"
822 | ],
823 | "dev": true,
824 | "optional": true,
825 | "os": [
826 | "darwin"
827 | ]
828 | },
829 | "node_modules/esbuild-darwin-arm64": {
830 | "version": "0.13.15",
831 | "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.15.tgz",
832 | "integrity": "sha512-i1FZssTVxUqNlJ6cBTj5YQj4imWy3m49RZRnHhLpefFIh0To05ow9DTrXROTE1urGTQCloFUXTX8QfGJy1P8dQ==",
833 | "cpu": [
834 | "arm64"
835 | ],
836 | "dev": true,
837 | "optional": true,
838 | "os": [
839 | "darwin"
840 | ]
841 | },
842 | "node_modules/esbuild-freebsd-64": {
843 | "version": "0.13.15",
844 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.15.tgz",
845 | "integrity": "sha512-G3dLBXUI6lC6Z09/x+WtXBXbOYQZ0E8TDBqvn7aMaOCzryJs8LyVXKY4CPnHFXZAbSwkCbqiPuSQ1+HhrNk7EA==",
846 | "cpu": [
847 | "x64"
848 | ],
849 | "dev": true,
850 | "optional": true,
851 | "os": [
852 | "freebsd"
853 | ]
854 | },
855 | "node_modules/esbuild-freebsd-arm64": {
856 | "version": "0.13.15",
857 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.15.tgz",
858 | "integrity": "sha512-KJx0fzEDf1uhNOZQStV4ujg30WlnwqUASaGSFPhznLM/bbheu9HhqZ6mJJZM32lkyfGJikw0jg7v3S0oAvtvQQ==",
859 | "cpu": [
860 | "arm64"
861 | ],
862 | "dev": true,
863 | "optional": true,
864 | "os": [
865 | "freebsd"
866 | ]
867 | },
868 | "node_modules/esbuild-linux-32": {
869 | "version": "0.13.15",
870 | "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.15.tgz",
871 | "integrity": "sha512-ZvTBPk0YWCLMCXiFmD5EUtB30zIPvC5Itxz0mdTu/xZBbbHJftQgLWY49wEPSn2T/TxahYCRDWun5smRa0Tu+g==",
872 | "cpu": [
873 | "ia32"
874 | ],
875 | "dev": true,
876 | "optional": true,
877 | "os": [
878 | "linux"
879 | ]
880 | },
881 | "node_modules/esbuild-linux-64": {
882 | "version": "0.13.15",
883 | "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.15.tgz",
884 | "integrity": "sha512-eCKzkNSLywNeQTRBxJRQ0jxRCl2YWdMB3+PkWFo2BBQYC5mISLIVIjThNtn6HUNqua1pnvgP5xX0nHbZbPj5oA==",
885 | "cpu": [
886 | "x64"
887 | ],
888 | "dev": true,
889 | "optional": true,
890 | "os": [
891 | "linux"
892 | ]
893 | },
894 | "node_modules/esbuild-linux-arm": {
895 | "version": "0.13.15",
896 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.15.tgz",
897 | "integrity": "sha512-wUHttDi/ol0tD8ZgUMDH8Ef7IbDX+/UsWJOXaAyTdkT7Yy9ZBqPg8bgB/Dn3CZ9SBpNieozrPRHm0BGww7W/jA==",
898 | "cpu": [
899 | "arm"
900 | ],
901 | "dev": true,
902 | "optional": true,
903 | "os": [
904 | "linux"
905 | ]
906 | },
907 | "node_modules/esbuild-linux-arm64": {
908 | "version": "0.13.15",
909 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.15.tgz",
910 | "integrity": "sha512-bYpuUlN6qYU9slzr/ltyLTR9YTBS7qUDymO8SV7kjeNext61OdmqFAzuVZom+OLW1HPHseBfJ/JfdSlx8oTUoA==",
911 | "cpu": [
912 | "arm64"
913 | ],
914 | "dev": true,
915 | "optional": true,
916 | "os": [
917 | "linux"
918 | ]
919 | },
920 | "node_modules/esbuild-linux-mips64le": {
921 | "version": "0.13.15",
922 | "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.15.tgz",
923 | "integrity": "sha512-KlVjIG828uFPyJkO/8gKwy9RbXhCEUeFsCGOJBepUlpa7G8/SeZgncUEz/tOOUJTcWMTmFMtdd3GElGyAtbSWg==",
924 | "cpu": [
925 | "mips64el"
926 | ],
927 | "dev": true,
928 | "optional": true,
929 | "os": [
930 | "linux"
931 | ]
932 | },
933 | "node_modules/esbuild-linux-ppc64le": {
934 | "version": "0.13.15",
935 | "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.15.tgz",
936 | "integrity": "sha512-h6gYF+OsaqEuBjeesTBtUPw0bmiDu7eAeuc2OEH9S6mV9/jPhPdhOWzdeshb0BskRZxPhxPOjqZ+/OqLcxQwEQ==",
937 | "cpu": [
938 | "ppc64"
939 | ],
940 | "dev": true,
941 | "optional": true,
942 | "os": [
943 | "linux"
944 | ]
945 | },
946 | "node_modules/esbuild-netbsd-64": {
947 | "version": "0.13.15",
948 | "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.15.tgz",
949 | "integrity": "sha512-3+yE9emwoevLMyvu+iR3rsa+Xwhie7ZEHMGDQ6dkqP/ndFzRHkobHUKTe+NCApSqG5ce2z4rFu+NX/UHnxlh3w==",
950 | "cpu": [
951 | "x64"
952 | ],
953 | "dev": true,
954 | "optional": true,
955 | "os": [
956 | "netbsd"
957 | ]
958 | },
959 | "node_modules/esbuild-openbsd-64": {
960 | "version": "0.13.15",
961 | "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.15.tgz",
962 | "integrity": "sha512-wTfvtwYJYAFL1fSs8yHIdf5GEE4NkbtbXtjLWjM3Cw8mmQKqsg8kTiqJ9NJQe5NX/5Qlo7Xd9r1yKMMkHllp5g==",
963 | "cpu": [
964 | "x64"
965 | ],
966 | "dev": true,
967 | "optional": true,
968 | "os": [
969 | "openbsd"
970 | ]
971 | },
972 | "node_modules/esbuild-sunos-64": {
973 | "version": "0.13.15",
974 | "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.15.tgz",
975 | "integrity": "sha512-lbivT9Bx3t1iWWrSnGyBP9ODriEvWDRiweAs69vI+miJoeKwHWOComSRukttbuzjZ8r1q0mQJ8Z7yUsDJ3hKdw==",
976 | "cpu": [
977 | "x64"
978 | ],
979 | "dev": true,
980 | "optional": true,
981 | "os": [
982 | "sunos"
983 | ]
984 | },
985 | "node_modules/esbuild-windows-32": {
986 | "version": "0.13.15",
987 | "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.15.tgz",
988 | "integrity": "sha512-fDMEf2g3SsJ599MBr50cY5ve5lP1wyVwTe6aLJsM01KtxyKkB4UT+fc5MXQFn3RLrAIAZOG+tHC+yXObpSn7Nw==",
989 | "cpu": [
990 | "ia32"
991 | ],
992 | "dev": true,
993 | "optional": true,
994 | "os": [
995 | "win32"
996 | ]
997 | },
998 | "node_modules/esbuild-windows-64": {
999 | "version": "0.13.15",
1000 | "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.15.tgz",
1001 | "integrity": "sha512-9aMsPRGDWCd3bGjUIKG/ZOJPKsiztlxl/Q3C1XDswO6eNX/Jtwu4M+jb6YDH9hRSUflQWX0XKAfWzgy5Wk54JQ==",
1002 | "cpu": [
1003 | "x64"
1004 | ],
1005 | "dev": true,
1006 | "optional": true,
1007 | "os": [
1008 | "win32"
1009 | ]
1010 | },
1011 | "node_modules/esbuild-windows-arm64": {
1012 | "version": "0.13.15",
1013 | "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.15.tgz",
1014 | "integrity": "sha512-zzvyCVVpbwQQATaf3IG8mu1IwGEiDxKkYUdA4FpoCHi1KtPa13jeScYDjlW0Qh+ebWzpKfR2ZwvqAQkSWNcKjA==",
1015 | "cpu": [
1016 | "arm64"
1017 | ],
1018 | "dev": true,
1019 | "optional": true,
1020 | "os": [
1021 | "win32"
1022 | ]
1023 | },
1024 | "node_modules/escalade": {
1025 | "version": "3.1.1",
1026 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
1027 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
1028 | "engines": {
1029 | "node": ">=6"
1030 | }
1031 | },
1032 | "node_modules/escape-string-regexp": {
1033 | "version": "1.0.5",
1034 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1035 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1036 | "engines": {
1037 | "node": ">=0.8.0"
1038 | }
1039 | },
1040 | "node_modules/estree-walker": {
1041 | "version": "2.0.2",
1042 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
1043 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
1044 | "dev": true
1045 | },
1046 | "node_modules/fill-range": {
1047 | "version": "7.0.1",
1048 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1049 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1050 | "dev": true,
1051 | "dependencies": {
1052 | "to-regex-range": "^5.0.1"
1053 | },
1054 | "engines": {
1055 | "node": ">=8"
1056 | }
1057 | },
1058 | "node_modules/find-root": {
1059 | "version": "1.1.0",
1060 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
1061 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
1062 | },
1063 | "node_modules/fsevents": {
1064 | "version": "2.3.2",
1065 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
1066 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
1067 | "dev": true,
1068 | "hasInstallScript": true,
1069 | "optional": true,
1070 | "os": [
1071 | "darwin"
1072 | ],
1073 | "engines": {
1074 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1075 | }
1076 | },
1077 | "node_modules/function-bind": {
1078 | "version": "1.1.1",
1079 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1080 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1081 | },
1082 | "node_modules/gensync": {
1083 | "version": "1.0.0-beta.2",
1084 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
1085 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
1086 | "engines": {
1087 | "node": ">=6.9.0"
1088 | }
1089 | },
1090 | "node_modules/glob-parent": {
1091 | "version": "5.1.2",
1092 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
1093 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1094 | "dev": true,
1095 | "dependencies": {
1096 | "is-glob": "^4.0.1"
1097 | },
1098 | "engines": {
1099 | "node": ">= 6"
1100 | }
1101 | },
1102 | "node_modules/globals": {
1103 | "version": "11.12.0",
1104 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
1105 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
1106 | "engines": {
1107 | "node": ">=4"
1108 | }
1109 | },
1110 | "node_modules/gradstop": {
1111 | "version": "2.2.3",
1112 | "resolved": "https://registry.npmjs.org/gradstop/-/gradstop-2.2.3.tgz",
1113 | "integrity": "sha512-omtiHZCI/vykWcXNDYdrHhe7VUnnZvya94wAHRLI8ciDkAviXYrT+pwP7ybYqK7uwYir59auBCY5ggwBlVSmsg=="
1114 | },
1115 | "node_modules/has": {
1116 | "version": "1.0.3",
1117 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1118 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1119 | "dependencies": {
1120 | "function-bind": "^1.1.1"
1121 | },
1122 | "engines": {
1123 | "node": ">= 0.4.0"
1124 | }
1125 | },
1126 | "node_modules/has-flag": {
1127 | "version": "3.0.0",
1128 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1129 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1130 | "engines": {
1131 | "node": ">=4"
1132 | }
1133 | },
1134 | "node_modules/immutable": {
1135 | "version": "4.0.0",
1136 | "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz",
1137 | "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==",
1138 | "dev": true
1139 | },
1140 | "node_modules/import-fresh": {
1141 | "version": "3.3.0",
1142 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
1143 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1144 | "dependencies": {
1145 | "parent-module": "^1.0.0",
1146 | "resolve-from": "^4.0.0"
1147 | },
1148 | "engines": {
1149 | "node": ">=6"
1150 | },
1151 | "funding": {
1152 | "url": "https://github.com/sponsors/sindresorhus"
1153 | }
1154 | },
1155 | "node_modules/is-arrayish": {
1156 | "version": "0.2.1",
1157 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
1158 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
1159 | },
1160 | "node_modules/is-binary-path": {
1161 | "version": "2.1.0",
1162 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1163 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1164 | "dev": true,
1165 | "dependencies": {
1166 | "binary-extensions": "^2.0.0"
1167 | },
1168 | "engines": {
1169 | "node": ">=8"
1170 | }
1171 | },
1172 | "node_modules/is-core-module": {
1173 | "version": "2.6.0",
1174 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz",
1175 | "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==",
1176 | "dependencies": {
1177 | "has": "^1.0.3"
1178 | },
1179 | "funding": {
1180 | "url": "https://github.com/sponsors/ljharb"
1181 | }
1182 | },
1183 | "node_modules/is-extglob": {
1184 | "version": "2.1.1",
1185 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1186 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
1187 | "dev": true,
1188 | "engines": {
1189 | "node": ">=0.10.0"
1190 | }
1191 | },
1192 | "node_modules/is-glob": {
1193 | "version": "4.0.3",
1194 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1195 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1196 | "dev": true,
1197 | "dependencies": {
1198 | "is-extglob": "^2.1.1"
1199 | },
1200 | "engines": {
1201 | "node": ">=0.10.0"
1202 | }
1203 | },
1204 | "node_modules/is-number": {
1205 | "version": "7.0.0",
1206 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1207 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1208 | "dev": true,
1209 | "engines": {
1210 | "node": ">=0.12.0"
1211 | }
1212 | },
1213 | "node_modules/js-tokens": {
1214 | "version": "4.0.0",
1215 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1216 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1217 | },
1218 | "node_modules/jsesc": {
1219 | "version": "2.5.2",
1220 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
1221 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
1222 | "bin": {
1223 | "jsesc": "bin/jsesc"
1224 | },
1225 | "engines": {
1226 | "node": ">=4"
1227 | }
1228 | },
1229 | "node_modules/json-parse-even-better-errors": {
1230 | "version": "2.3.1",
1231 | "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
1232 | "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
1233 | },
1234 | "node_modules/json5": {
1235 | "version": "2.2.0",
1236 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
1237 | "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
1238 | "dependencies": {
1239 | "minimist": "^1.2.5"
1240 | },
1241 | "bin": {
1242 | "json5": "lib/cli.js"
1243 | },
1244 | "engines": {
1245 | "node": ">=6"
1246 | }
1247 | },
1248 | "node_modules/lines-and-columns": {
1249 | "version": "1.2.4",
1250 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
1251 | "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
1252 | },
1253 | "node_modules/loose-envify": {
1254 | "version": "1.4.0",
1255 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1256 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1257 | "dependencies": {
1258 | "js-tokens": "^3.0.0 || ^4.0.0"
1259 | },
1260 | "bin": {
1261 | "loose-envify": "cli.js"
1262 | }
1263 | },
1264 | "node_modules/minimist": {
1265 | "version": "1.2.5",
1266 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
1267 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
1268 | },
1269 | "node_modules/ms": {
1270 | "version": "2.1.2",
1271 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1272 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1273 | },
1274 | "node_modules/nanoid": {
1275 | "version": "3.2.0",
1276 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz",
1277 | "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==",
1278 | "dev": true,
1279 | "bin": {
1280 | "nanoid": "bin/nanoid.cjs"
1281 | },
1282 | "engines": {
1283 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1284 | }
1285 | },
1286 | "node_modules/node-releases": {
1287 | "version": "1.1.75",
1288 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz",
1289 | "integrity": "sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw=="
1290 | },
1291 | "node_modules/normalize-path": {
1292 | "version": "3.0.0",
1293 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
1294 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
1295 | "dev": true,
1296 | "engines": {
1297 | "node": ">=0.10.0"
1298 | }
1299 | },
1300 | "node_modules/object-assign": {
1301 | "version": "4.1.1",
1302 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1303 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
1304 | "engines": {
1305 | "node": ">=0.10.0"
1306 | }
1307 | },
1308 | "node_modules/parent-module": {
1309 | "version": "1.0.1",
1310 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1311 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1312 | "dependencies": {
1313 | "callsites": "^3.0.0"
1314 | },
1315 | "engines": {
1316 | "node": ">=6"
1317 | }
1318 | },
1319 | "node_modules/parse-json": {
1320 | "version": "5.2.0",
1321 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
1322 | "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
1323 | "dependencies": {
1324 | "@babel/code-frame": "^7.0.0",
1325 | "error-ex": "^1.3.1",
1326 | "json-parse-even-better-errors": "^2.3.0",
1327 | "lines-and-columns": "^1.1.6"
1328 | },
1329 | "engines": {
1330 | "node": ">=8"
1331 | },
1332 | "funding": {
1333 | "url": "https://github.com/sponsors/sindresorhus"
1334 | }
1335 | },
1336 | "node_modules/path-parse": {
1337 | "version": "1.0.7",
1338 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1339 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
1340 | },
1341 | "node_modules/path-type": {
1342 | "version": "4.0.0",
1343 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
1344 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
1345 | "engines": {
1346 | "node": ">=8"
1347 | }
1348 | },
1349 | "node_modules/picocolors": {
1350 | "version": "1.0.0",
1351 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1352 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
1353 | "dev": true
1354 | },
1355 | "node_modules/picomatch": {
1356 | "version": "2.3.0",
1357 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
1358 | "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
1359 | "dev": true,
1360 | "engines": {
1361 | "node": ">=8.6"
1362 | },
1363 | "funding": {
1364 | "url": "https://github.com/sponsors/jonschlinkert"
1365 | }
1366 | },
1367 | "node_modules/postcss": {
1368 | "version": "8.4.6",
1369 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
1370 | "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
1371 | "dev": true,
1372 | "dependencies": {
1373 | "nanoid": "^3.2.0",
1374 | "picocolors": "^1.0.0",
1375 | "source-map-js": "^1.0.2"
1376 | },
1377 | "engines": {
1378 | "node": "^10 || ^12 || >=14"
1379 | },
1380 | "funding": {
1381 | "type": "opencollective",
1382 | "url": "https://opencollective.com/postcss/"
1383 | }
1384 | },
1385 | "node_modules/react": {
1386 | "version": "17.0.2",
1387 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
1388 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
1389 | "dependencies": {
1390 | "loose-envify": "^1.1.0",
1391 | "object-assign": "^4.1.1"
1392 | },
1393 | "engines": {
1394 | "node": ">=0.10.0"
1395 | }
1396 | },
1397 | "node_modules/react-dom": {
1398 | "version": "17.0.2",
1399 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
1400 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
1401 | "dependencies": {
1402 | "loose-envify": "^1.1.0",
1403 | "object-assign": "^4.1.1",
1404 | "scheduler": "^0.20.2"
1405 | },
1406 | "peerDependencies": {
1407 | "react": "17.0.2"
1408 | }
1409 | },
1410 | "node_modules/react-refresh": {
1411 | "version": "0.10.0",
1412 | "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.10.0.tgz",
1413 | "integrity": "sha512-PgidR3wST3dDYKr6b4pJoqQFpPGNKDSCDx4cZoshjXipw3LzO7mG1My2pwEzz2JVkF+inx3xRpDeQLFQGH/hsQ==",
1414 | "dev": true,
1415 | "engines": {
1416 | "node": ">=0.10.0"
1417 | }
1418 | },
1419 | "node_modules/readdirp": {
1420 | "version": "3.6.0",
1421 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
1422 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
1423 | "dev": true,
1424 | "dependencies": {
1425 | "picomatch": "^2.2.1"
1426 | },
1427 | "engines": {
1428 | "node": ">=8.10.0"
1429 | }
1430 | },
1431 | "node_modules/regenerator-runtime": {
1432 | "version": "0.13.9",
1433 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
1434 | "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
1435 | },
1436 | "node_modules/resolve": {
1437 | "version": "1.20.0",
1438 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
1439 | "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
1440 | "dependencies": {
1441 | "is-core-module": "^2.2.0",
1442 | "path-parse": "^1.0.6"
1443 | },
1444 | "funding": {
1445 | "url": "https://github.com/sponsors/ljharb"
1446 | }
1447 | },
1448 | "node_modules/resolve-from": {
1449 | "version": "4.0.0",
1450 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1451 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1452 | "engines": {
1453 | "node": ">=4"
1454 | }
1455 | },
1456 | "node_modules/rollup": {
1457 | "version": "2.67.0",
1458 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.67.0.tgz",
1459 | "integrity": "sha512-W83AaERwvDiHwHEF/dfAfS3z1Be5wf7n+pO3ZAO5IQadCT2lBTr7WQ2MwZZe+nodbD+n3HtC4OCOAdsOPPcKZQ==",
1460 | "dev": true,
1461 | "bin": {
1462 | "rollup": "dist/bin/rollup"
1463 | },
1464 | "engines": {
1465 | "node": ">=10.0.0"
1466 | },
1467 | "optionalDependencies": {
1468 | "fsevents": "~2.3.2"
1469 | }
1470 | },
1471 | "node_modules/safe-buffer": {
1472 | "version": "5.1.2",
1473 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
1474 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
1475 | },
1476 | "node_modules/sass": {
1477 | "version": "1.49.7",
1478 | "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.7.tgz",
1479 | "integrity": "sha512-13dml55EMIR2rS4d/RDHHP0sXMY3+30e1TKsyXaSz3iLWVoDWEoboY8WzJd5JMnxrRHffKO3wq2mpJ0jxRJiEQ==",
1480 | "dev": true,
1481 | "dependencies": {
1482 | "chokidar": ">=3.0.0 <4.0.0",
1483 | "immutable": "^4.0.0",
1484 | "source-map-js": ">=0.6.2 <2.0.0"
1485 | },
1486 | "bin": {
1487 | "sass": "sass.js"
1488 | },
1489 | "engines": {
1490 | "node": ">=12.0.0"
1491 | }
1492 | },
1493 | "node_modules/scheduler": {
1494 | "version": "0.20.2",
1495 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
1496 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
1497 | "dependencies": {
1498 | "loose-envify": "^1.1.0",
1499 | "object-assign": "^4.1.1"
1500 | }
1501 | },
1502 | "node_modules/semver": {
1503 | "version": "6.3.0",
1504 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1505 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1506 | "bin": {
1507 | "semver": "bin/semver.js"
1508 | }
1509 | },
1510 | "node_modules/source-map": {
1511 | "version": "0.5.7",
1512 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
1513 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
1514 | "engines": {
1515 | "node": ">=0.10.0"
1516 | }
1517 | },
1518 | "node_modules/source-map-js": {
1519 | "version": "1.0.2",
1520 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
1521 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
1522 | "dev": true,
1523 | "engines": {
1524 | "node": ">=0.10.0"
1525 | }
1526 | },
1527 | "node_modules/stylis": {
1528 | "version": "4.0.13",
1529 | "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
1530 | "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
1531 | },
1532 | "node_modules/supports-color": {
1533 | "version": "5.5.0",
1534 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
1535 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
1536 | "dependencies": {
1537 | "has-flag": "^3.0.0"
1538 | },
1539 | "engines": {
1540 | "node": ">=4"
1541 | }
1542 | },
1543 | "node_modules/to-fast-properties": {
1544 | "version": "2.0.0",
1545 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
1546 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
1547 | "engines": {
1548 | "node": ">=4"
1549 | }
1550 | },
1551 | "node_modules/to-regex-range": {
1552 | "version": "5.0.1",
1553 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
1554 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
1555 | "dev": true,
1556 | "dependencies": {
1557 | "is-number": "^7.0.0"
1558 | },
1559 | "engines": {
1560 | "node": ">=8.0"
1561 | }
1562 | },
1563 | "node_modules/typescript": {
1564 | "version": "4.5.5",
1565 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz",
1566 | "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==",
1567 | "dev": true,
1568 | "bin": {
1569 | "tsc": "bin/tsc",
1570 | "tsserver": "bin/tsserver"
1571 | },
1572 | "engines": {
1573 | "node": ">=4.2.0"
1574 | }
1575 | },
1576 | "node_modules/vite": {
1577 | "version": "2.7.13",
1578 | "resolved": "https://registry.npmjs.org/vite/-/vite-2.7.13.tgz",
1579 | "integrity": "sha512-Mq8et7f3aK0SgSxjDNfOAimZGW9XryfHRa/uV0jseQSilg+KhYDSoNb9h1rknOy6SuMkvNDLKCYAYYUMCE+IgQ==",
1580 | "dev": true,
1581 | "dependencies": {
1582 | "esbuild": "^0.13.12",
1583 | "postcss": "^8.4.5",
1584 | "resolve": "^1.20.0",
1585 | "rollup": "^2.59.0"
1586 | },
1587 | "bin": {
1588 | "vite": "bin/vite.js"
1589 | },
1590 | "engines": {
1591 | "node": ">=12.2.0"
1592 | },
1593 | "optionalDependencies": {
1594 | "fsevents": "~2.3.2"
1595 | },
1596 | "peerDependencies": {
1597 | "less": "*",
1598 | "sass": "*",
1599 | "stylus": "*"
1600 | },
1601 | "peerDependenciesMeta": {
1602 | "less": {
1603 | "optional": true
1604 | },
1605 | "sass": {
1606 | "optional": true
1607 | },
1608 | "stylus": {
1609 | "optional": true
1610 | }
1611 | }
1612 | },
1613 | "node_modules/yaml": {
1614 | "version": "1.10.2",
1615 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
1616 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
1617 | "engines": {
1618 | "node": ">= 6"
1619 | }
1620 | }
1621 | },
1622 | "dependencies": {
1623 | "@babel/code-frame": {
1624 | "version": "7.14.5",
1625 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz",
1626 | "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==",
1627 | "requires": {
1628 | "@babel/highlight": "^7.14.5"
1629 | }
1630 | },
1631 | "@babel/compat-data": {
1632 | "version": "7.15.0",
1633 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz",
1634 | "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA=="
1635 | },
1636 | "@babel/core": {
1637 | "version": "7.15.5",
1638 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz",
1639 | "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==",
1640 | "requires": {
1641 | "@babel/code-frame": "^7.14.5",
1642 | "@babel/generator": "^7.15.4",
1643 | "@babel/helper-compilation-targets": "^7.15.4",
1644 | "@babel/helper-module-transforms": "^7.15.4",
1645 | "@babel/helpers": "^7.15.4",
1646 | "@babel/parser": "^7.15.5",
1647 | "@babel/template": "^7.15.4",
1648 | "@babel/traverse": "^7.15.4",
1649 | "@babel/types": "^7.15.4",
1650 | "convert-source-map": "^1.7.0",
1651 | "debug": "^4.1.0",
1652 | "gensync": "^1.0.0-beta.2",
1653 | "json5": "^2.1.2",
1654 | "semver": "^6.3.0",
1655 | "source-map": "^0.5.0"
1656 | }
1657 | },
1658 | "@babel/generator": {
1659 | "version": "7.15.4",
1660 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz",
1661 | "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==",
1662 | "requires": {
1663 | "@babel/types": "^7.15.4",
1664 | "jsesc": "^2.5.1",
1665 | "source-map": "^0.5.0"
1666 | }
1667 | },
1668 | "@babel/helper-compilation-targets": {
1669 | "version": "7.15.4",
1670 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz",
1671 | "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==",
1672 | "requires": {
1673 | "@babel/compat-data": "^7.15.0",
1674 | "@babel/helper-validator-option": "^7.14.5",
1675 | "browserslist": "^4.16.6",
1676 | "semver": "^6.3.0"
1677 | }
1678 | },
1679 | "@babel/helper-function-name": {
1680 | "version": "7.15.4",
1681 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz",
1682 | "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==",
1683 | "requires": {
1684 | "@babel/helper-get-function-arity": "^7.15.4",
1685 | "@babel/template": "^7.15.4",
1686 | "@babel/types": "^7.15.4"
1687 | }
1688 | },
1689 | "@babel/helper-get-function-arity": {
1690 | "version": "7.15.4",
1691 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz",
1692 | "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==",
1693 | "requires": {
1694 | "@babel/types": "^7.15.4"
1695 | }
1696 | },
1697 | "@babel/helper-hoist-variables": {
1698 | "version": "7.15.4",
1699 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz",
1700 | "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==",
1701 | "requires": {
1702 | "@babel/types": "^7.15.4"
1703 | }
1704 | },
1705 | "@babel/helper-member-expression-to-functions": {
1706 | "version": "7.15.4",
1707 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz",
1708 | "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==",
1709 | "requires": {
1710 | "@babel/types": "^7.15.4"
1711 | }
1712 | },
1713 | "@babel/helper-module-imports": {
1714 | "version": "7.15.4",
1715 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz",
1716 | "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==",
1717 | "requires": {
1718 | "@babel/types": "^7.15.4"
1719 | }
1720 | },
1721 | "@babel/helper-module-transforms": {
1722 | "version": "7.15.4",
1723 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.4.tgz",
1724 | "integrity": "sha512-9fHHSGE9zTC++KuXLZcB5FKgvlV83Ox+NLUmQTawovwlJ85+QMhk1CnVk406CQVj97LaWod6KVjl2Sfgw9Aktw==",
1725 | "requires": {
1726 | "@babel/helper-module-imports": "^7.15.4",
1727 | "@babel/helper-replace-supers": "^7.15.4",
1728 | "@babel/helper-simple-access": "^7.15.4",
1729 | "@babel/helper-split-export-declaration": "^7.15.4",
1730 | "@babel/helper-validator-identifier": "^7.14.9",
1731 | "@babel/template": "^7.15.4",
1732 | "@babel/traverse": "^7.15.4",
1733 | "@babel/types": "^7.15.4"
1734 | }
1735 | },
1736 | "@babel/helper-optimise-call-expression": {
1737 | "version": "7.15.4",
1738 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz",
1739 | "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==",
1740 | "requires": {
1741 | "@babel/types": "^7.15.4"
1742 | }
1743 | },
1744 | "@babel/helper-plugin-utils": {
1745 | "version": "7.16.7",
1746 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
1747 | "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA=="
1748 | },
1749 | "@babel/helper-replace-supers": {
1750 | "version": "7.15.4",
1751 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz",
1752 | "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==",
1753 | "requires": {
1754 | "@babel/helper-member-expression-to-functions": "^7.15.4",
1755 | "@babel/helper-optimise-call-expression": "^7.15.4",
1756 | "@babel/traverse": "^7.15.4",
1757 | "@babel/types": "^7.15.4"
1758 | }
1759 | },
1760 | "@babel/helper-simple-access": {
1761 | "version": "7.15.4",
1762 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz",
1763 | "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==",
1764 | "requires": {
1765 | "@babel/types": "^7.15.4"
1766 | }
1767 | },
1768 | "@babel/helper-split-export-declaration": {
1769 | "version": "7.15.4",
1770 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz",
1771 | "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==",
1772 | "requires": {
1773 | "@babel/types": "^7.15.4"
1774 | }
1775 | },
1776 | "@babel/helper-validator-identifier": {
1777 | "version": "7.14.9",
1778 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz",
1779 | "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g=="
1780 | },
1781 | "@babel/helper-validator-option": {
1782 | "version": "7.14.5",
1783 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz",
1784 | "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow=="
1785 | },
1786 | "@babel/helpers": {
1787 | "version": "7.15.4",
1788 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz",
1789 | "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==",
1790 | "requires": {
1791 | "@babel/template": "^7.15.4",
1792 | "@babel/traverse": "^7.15.4",
1793 | "@babel/types": "^7.15.4"
1794 | }
1795 | },
1796 | "@babel/highlight": {
1797 | "version": "7.14.5",
1798 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz",
1799 | "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==",
1800 | "requires": {
1801 | "@babel/helper-validator-identifier": "^7.14.5",
1802 | "chalk": "^2.0.0",
1803 | "js-tokens": "^4.0.0"
1804 | }
1805 | },
1806 | "@babel/parser": {
1807 | "version": "7.15.6",
1808 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.6.tgz",
1809 | "integrity": "sha512-S/TSCcsRuCkmpUuoWijua0Snt+f3ewU/8spLo+4AXJCZfT0bVCzLD5MuOKdrx0mlAptbKzn5AdgEIIKXxXkz9Q=="
1810 | },
1811 | "@babel/plugin-syntax-jsx": {
1812 | "version": "7.16.7",
1813 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
1814 | "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
1815 | "requires": {
1816 | "@babel/helper-plugin-utils": "^7.16.7"
1817 | }
1818 | },
1819 | "@babel/plugin-transform-react-jsx-self": {
1820 | "version": "7.14.9",
1821 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.14.9.tgz",
1822 | "integrity": "sha512-Fqqu0f8zv9W+RyOnx29BX/RlEsBRANbOf5xs5oxb2aHP4FKbLXxIaVPUiCti56LAR1IixMH4EyaixhUsKqoBHw==",
1823 | "dev": true,
1824 | "requires": {
1825 | "@babel/helper-plugin-utils": "^7.14.5"
1826 | }
1827 | },
1828 | "@babel/plugin-transform-react-jsx-source": {
1829 | "version": "7.14.5",
1830 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.14.5.tgz",
1831 | "integrity": "sha512-1TpSDnD9XR/rQ2tzunBVPThF5poaYT9GqP+of8fAtguYuI/dm2RkrMBDemsxtY0XBzvW7nXjYM0hRyKX9QYj7Q==",
1832 | "dev": true,
1833 | "requires": {
1834 | "@babel/helper-plugin-utils": "^7.14.5"
1835 | }
1836 | },
1837 | "@babel/runtime": {
1838 | "version": "7.17.0",
1839 | "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.0.tgz",
1840 | "integrity": "sha512-etcO/ohMNaNA2UBdaXBBSX/3aEzFMRrVfaPv8Ptc0k+cWpWW0QFiGZ2XnVqQZI1Cf734LbPGmqBKWESfW4x/dQ==",
1841 | "requires": {
1842 | "regenerator-runtime": "^0.13.4"
1843 | }
1844 | },
1845 | "@babel/template": {
1846 | "version": "7.15.4",
1847 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz",
1848 | "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==",
1849 | "requires": {
1850 | "@babel/code-frame": "^7.14.5",
1851 | "@babel/parser": "^7.15.4",
1852 | "@babel/types": "^7.15.4"
1853 | }
1854 | },
1855 | "@babel/traverse": {
1856 | "version": "7.15.4",
1857 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz",
1858 | "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==",
1859 | "requires": {
1860 | "@babel/code-frame": "^7.14.5",
1861 | "@babel/generator": "^7.15.4",
1862 | "@babel/helper-function-name": "^7.15.4",
1863 | "@babel/helper-hoist-variables": "^7.15.4",
1864 | "@babel/helper-split-export-declaration": "^7.15.4",
1865 | "@babel/parser": "^7.15.4",
1866 | "@babel/types": "^7.15.4",
1867 | "debug": "^4.1.0",
1868 | "globals": "^11.1.0"
1869 | }
1870 | },
1871 | "@babel/types": {
1872 | "version": "7.15.6",
1873 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz",
1874 | "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==",
1875 | "requires": {
1876 | "@babel/helper-validator-identifier": "^7.14.9",
1877 | "to-fast-properties": "^2.0.0"
1878 | }
1879 | },
1880 | "@emotion/babel-plugin": {
1881 | "version": "11.7.2",
1882 | "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.7.2.tgz",
1883 | "integrity": "sha512-6mGSCWi9UzXut/ZAN6lGFu33wGR3SJisNl3c0tvlmb8XChH1b2SUvxvnOh7hvLpqyRdHHU9AiazV3Cwbk5SXKQ==",
1884 | "requires": {
1885 | "@babel/helper-module-imports": "^7.12.13",
1886 | "@babel/plugin-syntax-jsx": "^7.12.13",
1887 | "@babel/runtime": "^7.13.10",
1888 | "@emotion/hash": "^0.8.0",
1889 | "@emotion/memoize": "^0.7.5",
1890 | "@emotion/serialize": "^1.0.2",
1891 | "babel-plugin-macros": "^2.6.1",
1892 | "convert-source-map": "^1.5.0",
1893 | "escape-string-regexp": "^4.0.0",
1894 | "find-root": "^1.1.0",
1895 | "source-map": "^0.5.7",
1896 | "stylis": "4.0.13"
1897 | },
1898 | "dependencies": {
1899 | "escape-string-regexp": {
1900 | "version": "4.0.0",
1901 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
1902 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
1903 | }
1904 | }
1905 | },
1906 | "@emotion/cache": {
1907 | "version": "11.7.1",
1908 | "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.7.1.tgz",
1909 | "integrity": "sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A==",
1910 | "requires": {
1911 | "@emotion/memoize": "^0.7.4",
1912 | "@emotion/sheet": "^1.1.0",
1913 | "@emotion/utils": "^1.0.0",
1914 | "@emotion/weak-memoize": "^0.2.5",
1915 | "stylis": "4.0.13"
1916 | }
1917 | },
1918 | "@emotion/css": {
1919 | "version": "11.7.1",
1920 | "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.7.1.tgz",
1921 | "integrity": "sha512-RUUgPlMZunlc7SE5A6Hg+VWRzb2cU6O9xlV78KCFgcnl25s7Qz/20oQg71iKudpLqk7xj0vhbJlwcJJMT0BOZg==",
1922 | "requires": {
1923 | "@emotion/babel-plugin": "^11.7.1",
1924 | "@emotion/cache": "^11.7.1",
1925 | "@emotion/serialize": "^1.0.0",
1926 | "@emotion/sheet": "^1.0.3",
1927 | "@emotion/utils": "^1.0.0"
1928 | }
1929 | },
1930 | "@emotion/hash": {
1931 | "version": "0.8.0",
1932 | "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
1933 | "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow=="
1934 | },
1935 | "@emotion/memoize": {
1936 | "version": "0.7.5",
1937 | "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz",
1938 | "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
1939 | },
1940 | "@emotion/serialize": {
1941 | "version": "1.0.2",
1942 | "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.0.2.tgz",
1943 | "integrity": "sha512-95MgNJ9+/ajxU7QIAruiOAdYNjxZX7G2mhgrtDWswA21VviYIRP1R5QilZ/bDY42xiKsaktP4egJb3QdYQZi1A==",
1944 | "requires": {
1945 | "@emotion/hash": "^0.8.0",
1946 | "@emotion/memoize": "^0.7.4",
1947 | "@emotion/unitless": "^0.7.5",
1948 | "@emotion/utils": "^1.0.0",
1949 | "csstype": "^3.0.2"
1950 | }
1951 | },
1952 | "@emotion/sheet": {
1953 | "version": "1.1.0",
1954 | "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.1.0.tgz",
1955 | "integrity": "sha512-u0AX4aSo25sMAygCuQTzS+HsImZFuS8llY8O7b9MDRzbJM0kVJlAz6KNDqcG7pOuQZJmj/8X/rAW+66kMnMW+g=="
1956 | },
1957 | "@emotion/unitless": {
1958 | "version": "0.7.5",
1959 | "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
1960 | "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
1961 | },
1962 | "@emotion/utils": {
1963 | "version": "1.0.0",
1964 | "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.0.0.tgz",
1965 | "integrity": "sha512-mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA=="
1966 | },
1967 | "@emotion/weak-memoize": {
1968 | "version": "0.2.5",
1969 | "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz",
1970 | "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA=="
1971 | },
1972 | "@rollup/pluginutils": {
1973 | "version": "4.1.1",
1974 | "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.1.tgz",
1975 | "integrity": "sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==",
1976 | "dev": true,
1977 | "requires": {
1978 | "estree-walker": "^2.0.1",
1979 | "picomatch": "^2.2.2"
1980 | }
1981 | },
1982 | "@types/node": {
1983 | "version": "16.9.1",
1984 | "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.1.tgz",
1985 | "integrity": "sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==",
1986 | "dev": true
1987 | },
1988 | "@types/parse-json": {
1989 | "version": "4.0.0",
1990 | "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
1991 | "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
1992 | },
1993 | "@types/prop-types": {
1994 | "version": "15.7.4",
1995 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
1996 | "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==",
1997 | "dev": true
1998 | },
1999 | "@types/react": {
2000 | "version": "17.0.20",
2001 | "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.20.tgz",
2002 | "integrity": "sha512-wWZrPlihslrPpcKyCSlmIlruakxr57/buQN1RjlIeaaTWDLtJkTtRW429MoQJergvVKc4IWBpRhWw7YNh/7GVA==",
2003 | "dev": true,
2004 | "requires": {
2005 | "@types/prop-types": "*",
2006 | "@types/scheduler": "*",
2007 | "csstype": "^3.0.2"
2008 | }
2009 | },
2010 | "@types/react-dom": {
2011 | "version": "17.0.9",
2012 | "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.9.tgz",
2013 | "integrity": "sha512-wIvGxLfgpVDSAMH5utdL9Ngm5Owu0VsGmldro3ORLXV8CShrL8awVj06NuEXFQ5xyaYfdca7Sgbk/50Ri1GdPg==",
2014 | "dev": true,
2015 | "requires": {
2016 | "@types/react": "*"
2017 | }
2018 | },
2019 | "@types/scheduler": {
2020 | "version": "0.16.2",
2021 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
2022 | "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
2023 | "dev": true
2024 | },
2025 | "@vitejs/plugin-react-refresh": {
2026 | "version": "1.3.6",
2027 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-refresh/-/plugin-react-refresh-1.3.6.tgz",
2028 | "integrity": "sha512-iNR/UqhUOmFFxiezt0em9CgmiJBdWR+5jGxB2FihaoJfqGt76kiwaKoVOJVU5NYcDWMdN06LbyN2VIGIoYdsEA==",
2029 | "dev": true,
2030 | "requires": {
2031 | "@babel/core": "^7.14.8",
2032 | "@babel/plugin-transform-react-jsx-self": "^7.14.5",
2033 | "@babel/plugin-transform-react-jsx-source": "^7.14.5",
2034 | "@rollup/pluginutils": "^4.1.1",
2035 | "react-refresh": "^0.10.0"
2036 | }
2037 | },
2038 | "ansi-styles": {
2039 | "version": "3.2.1",
2040 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
2041 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
2042 | "requires": {
2043 | "color-convert": "^1.9.0"
2044 | }
2045 | },
2046 | "anymatch": {
2047 | "version": "3.1.2",
2048 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
2049 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
2050 | "dev": true,
2051 | "requires": {
2052 | "normalize-path": "^3.0.0",
2053 | "picomatch": "^2.0.4"
2054 | }
2055 | },
2056 | "babel-plugin-macros": {
2057 | "version": "2.8.0",
2058 | "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz",
2059 | "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==",
2060 | "requires": {
2061 | "@babel/runtime": "^7.7.2",
2062 | "cosmiconfig": "^6.0.0",
2063 | "resolve": "^1.12.0"
2064 | }
2065 | },
2066 | "binary-extensions": {
2067 | "version": "2.2.0",
2068 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
2069 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
2070 | "dev": true
2071 | },
2072 | "braces": {
2073 | "version": "3.0.2",
2074 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
2075 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
2076 | "dev": true,
2077 | "requires": {
2078 | "fill-range": "^7.0.1"
2079 | }
2080 | },
2081 | "browserslist": {
2082 | "version": "4.17.0",
2083 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.0.tgz",
2084 | "integrity": "sha512-g2BJ2a0nEYvEFQC208q8mVAhfNwpZ5Mu8BwgtCdZKO3qx98HChmeg448fPdUzld8aFmfLgVh7yymqV+q1lJZ5g==",
2085 | "requires": {
2086 | "caniuse-lite": "^1.0.30001254",
2087 | "colorette": "^1.3.0",
2088 | "electron-to-chromium": "^1.3.830",
2089 | "escalade": "^3.1.1",
2090 | "node-releases": "^1.1.75"
2091 | }
2092 | },
2093 | "callsites": {
2094 | "version": "3.1.0",
2095 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
2096 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
2097 | },
2098 | "caniuse-lite": {
2099 | "version": "1.0.30001256",
2100 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001256.tgz",
2101 | "integrity": "sha512-QirrvMLmB4txNnxiaG/xbm6FSzv9LqOZ3Jp9VtCYb3oPIfCHpr/oGn38pFq0udwlkctvXQgPthaXqJ76DaYGnA=="
2102 | },
2103 | "chalk": {
2104 | "version": "2.4.2",
2105 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
2106 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
2107 | "requires": {
2108 | "ansi-styles": "^3.2.1",
2109 | "escape-string-regexp": "^1.0.5",
2110 | "supports-color": "^5.3.0"
2111 | }
2112 | },
2113 | "chokidar": {
2114 | "version": "3.5.3",
2115 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
2116 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
2117 | "dev": true,
2118 | "requires": {
2119 | "anymatch": "~3.1.2",
2120 | "braces": "~3.0.2",
2121 | "fsevents": "~2.3.2",
2122 | "glob-parent": "~5.1.2",
2123 | "is-binary-path": "~2.1.0",
2124 | "is-glob": "~4.0.1",
2125 | "normalize-path": "~3.0.0",
2126 | "readdirp": "~3.6.0"
2127 | }
2128 | },
2129 | "color-convert": {
2130 | "version": "1.9.3",
2131 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
2132 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
2133 | "requires": {
2134 | "color-name": "1.1.3"
2135 | }
2136 | },
2137 | "color-name": {
2138 | "version": "1.1.3",
2139 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
2140 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
2141 | },
2142 | "colorette": {
2143 | "version": "1.4.0",
2144 | "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz",
2145 | "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g=="
2146 | },
2147 | "convert-source-map": {
2148 | "version": "1.8.0",
2149 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
2150 | "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
2151 | "requires": {
2152 | "safe-buffer": "~5.1.1"
2153 | }
2154 | },
2155 | "cosmiconfig": {
2156 | "version": "6.0.0",
2157 | "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
2158 | "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
2159 | "requires": {
2160 | "@types/parse-json": "^4.0.0",
2161 | "import-fresh": "^3.1.0",
2162 | "parse-json": "^5.0.0",
2163 | "path-type": "^4.0.0",
2164 | "yaml": "^1.7.2"
2165 | }
2166 | },
2167 | "csstype": {
2168 | "version": "3.0.8",
2169 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz",
2170 | "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw=="
2171 | },
2172 | "debug": {
2173 | "version": "4.3.2",
2174 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
2175 | "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
2176 | "requires": {
2177 | "ms": "2.1.2"
2178 | }
2179 | },
2180 | "electron-to-chromium": {
2181 | "version": "1.3.836",
2182 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.836.tgz",
2183 | "integrity": "sha512-Ney3pHOJBWkG/AqYjrW0hr2AUCsao+2uvq9HUlRP8OlpSdk/zOHOUJP7eu0icDvePC9DlgffuelP4TnOJmMRUg=="
2184 | },
2185 | "error-ex": {
2186 | "version": "1.3.2",
2187 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
2188 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
2189 | "requires": {
2190 | "is-arrayish": "^0.2.1"
2191 | }
2192 | },
2193 | "esbuild": {
2194 | "version": "0.13.15",
2195 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.15.tgz",
2196 | "integrity": "sha512-raCxt02HBKv8RJxE8vkTSCXGIyKHdEdGfUmiYb8wnabnaEmHzyW7DCHb5tEN0xU8ryqg5xw54mcwnYkC4x3AIw==",
2197 | "dev": true,
2198 | "requires": {
2199 | "esbuild-android-arm64": "0.13.15",
2200 | "esbuild-darwin-64": "0.13.15",
2201 | "esbuild-darwin-arm64": "0.13.15",
2202 | "esbuild-freebsd-64": "0.13.15",
2203 | "esbuild-freebsd-arm64": "0.13.15",
2204 | "esbuild-linux-32": "0.13.15",
2205 | "esbuild-linux-64": "0.13.15",
2206 | "esbuild-linux-arm": "0.13.15",
2207 | "esbuild-linux-arm64": "0.13.15",
2208 | "esbuild-linux-mips64le": "0.13.15",
2209 | "esbuild-linux-ppc64le": "0.13.15",
2210 | "esbuild-netbsd-64": "0.13.15",
2211 | "esbuild-openbsd-64": "0.13.15",
2212 | "esbuild-sunos-64": "0.13.15",
2213 | "esbuild-windows-32": "0.13.15",
2214 | "esbuild-windows-64": "0.13.15",
2215 | "esbuild-windows-arm64": "0.13.15"
2216 | }
2217 | },
2218 | "esbuild-android-arm64": {
2219 | "version": "0.13.15",
2220 | "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.15.tgz",
2221 | "integrity": "sha512-m602nft/XXeO8YQPUDVoHfjyRVPdPgjyyXOxZ44MK/agewFFkPa8tUo6lAzSWh5Ui5PB4KR9UIFTSBKh/RrCmg==",
2222 | "dev": true,
2223 | "optional": true
2224 | },
2225 | "esbuild-darwin-64": {
2226 | "version": "0.13.15",
2227 | "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.15.tgz",
2228 | "integrity": "sha512-ihOQRGs2yyp7t5bArCwnvn2Atr6X4axqPpEdCFPVp7iUj4cVSdisgvEKdNR7yH3JDjW6aQDw40iQFoTqejqxvQ==",
2229 | "dev": true,
2230 | "optional": true
2231 | },
2232 | "esbuild-darwin-arm64": {
2233 | "version": "0.13.15",
2234 | "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.15.tgz",
2235 | "integrity": "sha512-i1FZssTVxUqNlJ6cBTj5YQj4imWy3m49RZRnHhLpefFIh0To05ow9DTrXROTE1urGTQCloFUXTX8QfGJy1P8dQ==",
2236 | "dev": true,
2237 | "optional": true
2238 | },
2239 | "esbuild-freebsd-64": {
2240 | "version": "0.13.15",
2241 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.15.tgz",
2242 | "integrity": "sha512-G3dLBXUI6lC6Z09/x+WtXBXbOYQZ0E8TDBqvn7aMaOCzryJs8LyVXKY4CPnHFXZAbSwkCbqiPuSQ1+HhrNk7EA==",
2243 | "dev": true,
2244 | "optional": true
2245 | },
2246 | "esbuild-freebsd-arm64": {
2247 | "version": "0.13.15",
2248 | "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.15.tgz",
2249 | "integrity": "sha512-KJx0fzEDf1uhNOZQStV4ujg30WlnwqUASaGSFPhznLM/bbheu9HhqZ6mJJZM32lkyfGJikw0jg7v3S0oAvtvQQ==",
2250 | "dev": true,
2251 | "optional": true
2252 | },
2253 | "esbuild-linux-32": {
2254 | "version": "0.13.15",
2255 | "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.15.tgz",
2256 | "integrity": "sha512-ZvTBPk0YWCLMCXiFmD5EUtB30zIPvC5Itxz0mdTu/xZBbbHJftQgLWY49wEPSn2T/TxahYCRDWun5smRa0Tu+g==",
2257 | "dev": true,
2258 | "optional": true
2259 | },
2260 | "esbuild-linux-64": {
2261 | "version": "0.13.15",
2262 | "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.15.tgz",
2263 | "integrity": "sha512-eCKzkNSLywNeQTRBxJRQ0jxRCl2YWdMB3+PkWFo2BBQYC5mISLIVIjThNtn6HUNqua1pnvgP5xX0nHbZbPj5oA==",
2264 | "dev": true,
2265 | "optional": true
2266 | },
2267 | "esbuild-linux-arm": {
2268 | "version": "0.13.15",
2269 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.15.tgz",
2270 | "integrity": "sha512-wUHttDi/ol0tD8ZgUMDH8Ef7IbDX+/UsWJOXaAyTdkT7Yy9ZBqPg8bgB/Dn3CZ9SBpNieozrPRHm0BGww7W/jA==",
2271 | "dev": true,
2272 | "optional": true
2273 | },
2274 | "esbuild-linux-arm64": {
2275 | "version": "0.13.15",
2276 | "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.15.tgz",
2277 | "integrity": "sha512-bYpuUlN6qYU9slzr/ltyLTR9YTBS7qUDymO8SV7kjeNext61OdmqFAzuVZom+OLW1HPHseBfJ/JfdSlx8oTUoA==",
2278 | "dev": true,
2279 | "optional": true
2280 | },
2281 | "esbuild-linux-mips64le": {
2282 | "version": "0.13.15",
2283 | "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.15.tgz",
2284 | "integrity": "sha512-KlVjIG828uFPyJkO/8gKwy9RbXhCEUeFsCGOJBepUlpa7G8/SeZgncUEz/tOOUJTcWMTmFMtdd3GElGyAtbSWg==",
2285 | "dev": true,
2286 | "optional": true
2287 | },
2288 | "esbuild-linux-ppc64le": {
2289 | "version": "0.13.15",
2290 | "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.15.tgz",
2291 | "integrity": "sha512-h6gYF+OsaqEuBjeesTBtUPw0bmiDu7eAeuc2OEH9S6mV9/jPhPdhOWzdeshb0BskRZxPhxPOjqZ+/OqLcxQwEQ==",
2292 | "dev": true,
2293 | "optional": true
2294 | },
2295 | "esbuild-netbsd-64": {
2296 | "version": "0.13.15",
2297 | "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.15.tgz",
2298 | "integrity": "sha512-3+yE9emwoevLMyvu+iR3rsa+Xwhie7ZEHMGDQ6dkqP/ndFzRHkobHUKTe+NCApSqG5ce2z4rFu+NX/UHnxlh3w==",
2299 | "dev": true,
2300 | "optional": true
2301 | },
2302 | "esbuild-openbsd-64": {
2303 | "version": "0.13.15",
2304 | "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.15.tgz",
2305 | "integrity": "sha512-wTfvtwYJYAFL1fSs8yHIdf5GEE4NkbtbXtjLWjM3Cw8mmQKqsg8kTiqJ9NJQe5NX/5Qlo7Xd9r1yKMMkHllp5g==",
2306 | "dev": true,
2307 | "optional": true
2308 | },
2309 | "esbuild-sunos-64": {
2310 | "version": "0.13.15",
2311 | "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.15.tgz",
2312 | "integrity": "sha512-lbivT9Bx3t1iWWrSnGyBP9ODriEvWDRiweAs69vI+miJoeKwHWOComSRukttbuzjZ8r1q0mQJ8Z7yUsDJ3hKdw==",
2313 | "dev": true,
2314 | "optional": true
2315 | },
2316 | "esbuild-windows-32": {
2317 | "version": "0.13.15",
2318 | "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.15.tgz",
2319 | "integrity": "sha512-fDMEf2g3SsJ599MBr50cY5ve5lP1wyVwTe6aLJsM01KtxyKkB4UT+fc5MXQFn3RLrAIAZOG+tHC+yXObpSn7Nw==",
2320 | "dev": true,
2321 | "optional": true
2322 | },
2323 | "esbuild-windows-64": {
2324 | "version": "0.13.15",
2325 | "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.15.tgz",
2326 | "integrity": "sha512-9aMsPRGDWCd3bGjUIKG/ZOJPKsiztlxl/Q3C1XDswO6eNX/Jtwu4M+jb6YDH9hRSUflQWX0XKAfWzgy5Wk54JQ==",
2327 | "dev": true,
2328 | "optional": true
2329 | },
2330 | "esbuild-windows-arm64": {
2331 | "version": "0.13.15",
2332 | "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.15.tgz",
2333 | "integrity": "sha512-zzvyCVVpbwQQATaf3IG8mu1IwGEiDxKkYUdA4FpoCHi1KtPa13jeScYDjlW0Qh+ebWzpKfR2ZwvqAQkSWNcKjA==",
2334 | "dev": true,
2335 | "optional": true
2336 | },
2337 | "escalade": {
2338 | "version": "3.1.1",
2339 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
2340 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
2341 | },
2342 | "escape-string-regexp": {
2343 | "version": "1.0.5",
2344 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
2345 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
2346 | },
2347 | "estree-walker": {
2348 | "version": "2.0.2",
2349 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
2350 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
2351 | "dev": true
2352 | },
2353 | "fill-range": {
2354 | "version": "7.0.1",
2355 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
2356 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
2357 | "dev": true,
2358 | "requires": {
2359 | "to-regex-range": "^5.0.1"
2360 | }
2361 | },
2362 | "find-root": {
2363 | "version": "1.1.0",
2364 | "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
2365 | "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
2366 | },
2367 | "fsevents": {
2368 | "version": "2.3.2",
2369 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
2370 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
2371 | "dev": true,
2372 | "optional": true
2373 | },
2374 | "function-bind": {
2375 | "version": "1.1.1",
2376 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
2377 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
2378 | },
2379 | "gensync": {
2380 | "version": "1.0.0-beta.2",
2381 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
2382 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="
2383 | },
2384 | "glob-parent": {
2385 | "version": "5.1.2",
2386 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
2387 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
2388 | "dev": true,
2389 | "requires": {
2390 | "is-glob": "^4.0.1"
2391 | }
2392 | },
2393 | "globals": {
2394 | "version": "11.12.0",
2395 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
2396 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
2397 | },
2398 | "gradstop": {
2399 | "version": "2.2.3",
2400 | "resolved": "https://registry.npmjs.org/gradstop/-/gradstop-2.2.3.tgz",
2401 | "integrity": "sha512-omtiHZCI/vykWcXNDYdrHhe7VUnnZvya94wAHRLI8ciDkAviXYrT+pwP7ybYqK7uwYir59auBCY5ggwBlVSmsg=="
2402 | },
2403 | "has": {
2404 | "version": "1.0.3",
2405 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
2406 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
2407 | "requires": {
2408 | "function-bind": "^1.1.1"
2409 | }
2410 | },
2411 | "has-flag": {
2412 | "version": "3.0.0",
2413 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
2414 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
2415 | },
2416 | "immutable": {
2417 | "version": "4.0.0",
2418 | "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz",
2419 | "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==",
2420 | "dev": true
2421 | },
2422 | "import-fresh": {
2423 | "version": "3.3.0",
2424 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
2425 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
2426 | "requires": {
2427 | "parent-module": "^1.0.0",
2428 | "resolve-from": "^4.0.0"
2429 | }
2430 | },
2431 | "is-arrayish": {
2432 | "version": "0.2.1",
2433 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
2434 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
2435 | },
2436 | "is-binary-path": {
2437 | "version": "2.1.0",
2438 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
2439 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
2440 | "dev": true,
2441 | "requires": {
2442 | "binary-extensions": "^2.0.0"
2443 | }
2444 | },
2445 | "is-core-module": {
2446 | "version": "2.6.0",
2447 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz",
2448 | "integrity": "sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ==",
2449 | "requires": {
2450 | "has": "^1.0.3"
2451 | }
2452 | },
2453 | "is-extglob": {
2454 | "version": "2.1.1",
2455 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2456 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
2457 | "dev": true
2458 | },
2459 | "is-glob": {
2460 | "version": "4.0.3",
2461 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
2462 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
2463 | "dev": true,
2464 | "requires": {
2465 | "is-extglob": "^2.1.1"
2466 | }
2467 | },
2468 | "is-number": {
2469 | "version": "7.0.0",
2470 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
2471 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
2472 | "dev": true
2473 | },
2474 | "js-tokens": {
2475 | "version": "4.0.0",
2476 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
2477 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
2478 | },
2479 | "jsesc": {
2480 | "version": "2.5.2",
2481 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
2482 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
2483 | },
2484 | "json-parse-even-better-errors": {
2485 | "version": "2.3.1",
2486 | "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
2487 | "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
2488 | },
2489 | "json5": {
2490 | "version": "2.2.0",
2491 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
2492 | "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
2493 | "requires": {
2494 | "minimist": "^1.2.5"
2495 | }
2496 | },
2497 | "lines-and-columns": {
2498 | "version": "1.2.4",
2499 | "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
2500 | "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
2501 | },
2502 | "loose-envify": {
2503 | "version": "1.4.0",
2504 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
2505 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
2506 | "requires": {
2507 | "js-tokens": "^3.0.0 || ^4.0.0"
2508 | }
2509 | },
2510 | "minimist": {
2511 | "version": "1.2.5",
2512 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
2513 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
2514 | },
2515 | "ms": {
2516 | "version": "2.1.2",
2517 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2518 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
2519 | },
2520 | "nanoid": {
2521 | "version": "3.2.0",
2522 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz",
2523 | "integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==",
2524 | "dev": true
2525 | },
2526 | "node-releases": {
2527 | "version": "1.1.75",
2528 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz",
2529 | "integrity": "sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw=="
2530 | },
2531 | "normalize-path": {
2532 | "version": "3.0.0",
2533 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
2534 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
2535 | "dev": true
2536 | },
2537 | "object-assign": {
2538 | "version": "4.1.1",
2539 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
2540 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
2541 | },
2542 | "parent-module": {
2543 | "version": "1.0.1",
2544 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2545 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2546 | "requires": {
2547 | "callsites": "^3.0.0"
2548 | }
2549 | },
2550 | "parse-json": {
2551 | "version": "5.2.0",
2552 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
2553 | "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
2554 | "requires": {
2555 | "@babel/code-frame": "^7.0.0",
2556 | "error-ex": "^1.3.1",
2557 | "json-parse-even-better-errors": "^2.3.0",
2558 | "lines-and-columns": "^1.1.6"
2559 | }
2560 | },
2561 | "path-parse": {
2562 | "version": "1.0.7",
2563 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
2564 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
2565 | },
2566 | "path-type": {
2567 | "version": "4.0.0",
2568 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
2569 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
2570 | },
2571 | "picocolors": {
2572 | "version": "1.0.0",
2573 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
2574 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
2575 | "dev": true
2576 | },
2577 | "picomatch": {
2578 | "version": "2.3.0",
2579 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
2580 | "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
2581 | "dev": true
2582 | },
2583 | "postcss": {
2584 | "version": "8.4.6",
2585 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
2586 | "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
2587 | "dev": true,
2588 | "requires": {
2589 | "nanoid": "^3.2.0",
2590 | "picocolors": "^1.0.0",
2591 | "source-map-js": "^1.0.2"
2592 | }
2593 | },
2594 | "react": {
2595 | "version": "17.0.2",
2596 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
2597 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
2598 | "requires": {
2599 | "loose-envify": "^1.1.0",
2600 | "object-assign": "^4.1.1"
2601 | }
2602 | },
2603 | "react-dom": {
2604 | "version": "17.0.2",
2605 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
2606 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
2607 | "requires": {
2608 | "loose-envify": "^1.1.0",
2609 | "object-assign": "^4.1.1",
2610 | "scheduler": "^0.20.2"
2611 | }
2612 | },
2613 | "react-refresh": {
2614 | "version": "0.10.0",
2615 | "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.10.0.tgz",
2616 | "integrity": "sha512-PgidR3wST3dDYKr6b4pJoqQFpPGNKDSCDx4cZoshjXipw3LzO7mG1My2pwEzz2JVkF+inx3xRpDeQLFQGH/hsQ==",
2617 | "dev": true
2618 | },
2619 | "readdirp": {
2620 | "version": "3.6.0",
2621 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
2622 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
2623 | "dev": true,
2624 | "requires": {
2625 | "picomatch": "^2.2.1"
2626 | }
2627 | },
2628 | "regenerator-runtime": {
2629 | "version": "0.13.9",
2630 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
2631 | "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
2632 | },
2633 | "resolve": {
2634 | "version": "1.20.0",
2635 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
2636 | "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==",
2637 | "requires": {
2638 | "is-core-module": "^2.2.0",
2639 | "path-parse": "^1.0.6"
2640 | }
2641 | },
2642 | "resolve-from": {
2643 | "version": "4.0.0",
2644 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2645 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
2646 | },
2647 | "rollup": {
2648 | "version": "2.67.0",
2649 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.67.0.tgz",
2650 | "integrity": "sha512-W83AaERwvDiHwHEF/dfAfS3z1Be5wf7n+pO3ZAO5IQadCT2lBTr7WQ2MwZZe+nodbD+n3HtC4OCOAdsOPPcKZQ==",
2651 | "dev": true,
2652 | "requires": {
2653 | "fsevents": "~2.3.2"
2654 | }
2655 | },
2656 | "safe-buffer": {
2657 | "version": "5.1.2",
2658 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
2659 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
2660 | },
2661 | "sass": {
2662 | "version": "1.49.7",
2663 | "resolved": "https://registry.npmjs.org/sass/-/sass-1.49.7.tgz",
2664 | "integrity": "sha512-13dml55EMIR2rS4d/RDHHP0sXMY3+30e1TKsyXaSz3iLWVoDWEoboY8WzJd5JMnxrRHffKO3wq2mpJ0jxRJiEQ==",
2665 | "dev": true,
2666 | "requires": {
2667 | "chokidar": ">=3.0.0 <4.0.0",
2668 | "immutable": "^4.0.0",
2669 | "source-map-js": ">=0.6.2 <2.0.0"
2670 | }
2671 | },
2672 | "scheduler": {
2673 | "version": "0.20.2",
2674 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
2675 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
2676 | "requires": {
2677 | "loose-envify": "^1.1.0",
2678 | "object-assign": "^4.1.1"
2679 | }
2680 | },
2681 | "semver": {
2682 | "version": "6.3.0",
2683 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2684 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
2685 | },
2686 | "source-map": {
2687 | "version": "0.5.7",
2688 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
2689 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
2690 | },
2691 | "source-map-js": {
2692 | "version": "1.0.2",
2693 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
2694 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
2695 | "dev": true
2696 | },
2697 | "stylis": {
2698 | "version": "4.0.13",
2699 | "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
2700 | "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
2701 | },
2702 | "supports-color": {
2703 | "version": "5.5.0",
2704 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2705 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2706 | "requires": {
2707 | "has-flag": "^3.0.0"
2708 | }
2709 | },
2710 | "to-fast-properties": {
2711 | "version": "2.0.0",
2712 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
2713 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4="
2714 | },
2715 | "to-regex-range": {
2716 | "version": "5.0.1",
2717 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
2718 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2719 | "dev": true,
2720 | "requires": {
2721 | "is-number": "^7.0.0"
2722 | }
2723 | },
2724 | "typescript": {
2725 | "version": "4.5.5",
2726 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz",
2727 | "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==",
2728 | "dev": true
2729 | },
2730 | "vite": {
2731 | "version": "2.7.13",
2732 | "resolved": "https://registry.npmjs.org/vite/-/vite-2.7.13.tgz",
2733 | "integrity": "sha512-Mq8et7f3aK0SgSxjDNfOAimZGW9XryfHRa/uV0jseQSilg+KhYDSoNb9h1rknOy6SuMkvNDLKCYAYYUMCE+IgQ==",
2734 | "dev": true,
2735 | "requires": {
2736 | "esbuild": "^0.13.12",
2737 | "fsevents": "~2.3.2",
2738 | "postcss": "^8.4.5",
2739 | "resolve": "^1.20.0",
2740 | "rollup": "^2.59.0"
2741 | }
2742 | },
2743 | "yaml": {
2744 | "version": "1.10.2",
2745 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
2746 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
2747 | }
2748 | }
2749 | }
2750 |
--------------------------------------------------------------------------------
/example/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "demo-vite",
3 | "version": "0.0.0",
4 | "scripts": {
5 | "dev": "vite",
6 | "build": "tsc && vite build",
7 | "serve": "vite preview"
8 | },
9 | "dependencies": {
10 | "@emotion/css": "^11.7.1",
11 | "gradstop": "^2.2.3",
12 | "react": "^17.0.0",
13 | "react-dom": "^17.0.0"
14 | },
15 | "devDependencies": {
16 | "@types/node": "^16.9.1",
17 | "@types/react": "^17.0.0",
18 | "@types/react-dom": "^17.0.0",
19 | "@vitejs/plugin-react-refresh": "^1.3.6",
20 | "sass": "^1.49.7",
21 | "typescript": "^4.5.5",
22 | "vite": "^2.7.13"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/example/src/conical-gradient/conical-gradient.scss:
--------------------------------------------------------------------------------
1 | @use 'sass:math';
2 |
3 | .conical-gauge-wrapper {
4 | $chart-size: 400px;
5 | $chart-padding: 100px;
6 | $label-width: 160px;
7 | $font-family: 'Open Sans', sans-serif;
8 | $color-accent: #7199e3;
9 | $color-white: #fff;
10 | $color-text: #0f3e48;
11 |
12 | background-color: $color-white;
13 | width: $chart-size + $chart-padding;
14 | height: $chart-size + $chart-padding;
15 | font-family: $font-family;
16 | position: relative;
17 |
18 | .conical-gauge {
19 | position: relative;
20 | width: $chart-size;
21 | height: $chart-size;
22 | left: math.div($chart-padding, 2);
23 | top: math.div($chart-padding, 2);
24 | }
25 |
26 | .label {
27 | color: $color-text;
28 | font-size: 66px;
29 | letter-spacing: -1.5px;
30 | position: absolute;
31 | left: 50%;
32 | top: 50%;
33 | transform: translate(-50%, -60%);
34 | }
35 |
36 | .controls {
37 | position: absolute;
38 | display: flex;
39 | left: 50%;
40 | transform: translateX(-50%);
41 | bottom: 65px;
42 |
43 | .control {
44 | font-size: 16px;
45 | padding: 3px 20px;
46 | text-decoration: none;
47 | border: 1px solid $color-accent;
48 | color: $color-accent;
49 | font-family: $font-family;
50 | text-align: center;
51 | cursor: pointer;
52 | background-color: $color-white;
53 | transition: 0.2s all;
54 |
55 | &:first-child {
56 | border-radius: 7px 0 0 7px;
57 | }
58 |
59 | &:not(:first-child) {
60 | margin-left: -2px;
61 | }
62 |
63 | &:last-child {
64 | border-radius: 0 7px 7px 0;
65 | }
66 |
67 | &:focus {
68 | box-shadow: none;
69 | outline: none;
70 | background-color: $color-accent;
71 | border-color: $color-accent;
72 | color: $color-white;
73 | }
74 |
75 | &::-moz-focus-inner {
76 | border: 0;
77 | }
78 |
79 | &:active {
80 | background-color: darken($color-accent, 10%);
81 | }
82 | }
83 | }
84 | }
85 |
--------------------------------------------------------------------------------
/example/src/conical-gradient/conical-gradient.ts:
--------------------------------------------------------------------------------
1 | import './conical-gradient.scss';
2 | import { cubicBezier, Gauge } from '../../../src';
3 | import gradstop from 'gradstop';
4 |
5 | function clamp(from: number, to: number, value: number) {
6 | if (value < from) {
7 | return from;
8 | }
9 | if (value > to) {
10 | return to;
11 | }
12 | return value;
13 | }
14 |
15 | function updatePercentNode(value: number) {
16 | const element = document.querySelector('.label') as HTMLElement;
17 | element.innerHTML = parseInt(value.toString()) + '%';
18 | }
19 |
20 | function setControlDisabled(disabled: boolean) {
21 | Array.from(document.querySelectorAll('.control')).forEach(node => {
22 | if (disabled) {
23 | node.setAttribute('disabled', '');
24 | } else {
25 | node.removeAttribute('disabled');
26 | }
27 | });
28 | }
29 |
30 | document.addEventListener('DOMContentLoaded', () => {
31 | const step = 70;
32 | const fromAngle = 220;
33 | const toAngle = 500;
34 | const maxValue = toAngle - fromAngle;
35 | let value = maxValue * 0.2;
36 | updatePercentNode((value / maxValue) * 100);
37 | const container = document.querySelector('.conical-gauge') as HTMLElement;
38 | const sharedConfig = {
39 | lineWidth: 4,
40 | container,
41 | fromAngle,
42 | toAngle,
43 | easing: cubicBezier(0.165, 0.84, 0.44, 1)
44 | };
45 |
46 | const gaugeBackground = new Gauge({
47 | ...sharedConfig,
48 | color: '#f5f5f5'
49 | });
50 | gaugeBackground.setValue(maxValue);
51 |
52 | const gaugeMain = new Gauge({
53 | ...sharedConfig,
54 | colors: gradstop({
55 | stops: maxValue,
56 | colorArray: ['#D16BA5', '#86A8E7', '#5FFBF1']
57 | })
58 | });
59 | gaugeMain.setValue(value);
60 |
61 | const controls = document.querySelector('.controls') as HTMLElement;
62 | controls.addEventListener('click', event => {
63 | setControlDisabled(true);
64 | const target = event.target as HTMLElement;
65 | if (target.classList.contains('increase')) {
66 | value = clamp(0, maxValue, value + step);
67 | }
68 | if (target.classList.contains('decrease')) {
69 | value = clamp(0, maxValue, value - step);
70 | }
71 | gaugeMain.setValue(value).then(() => {
72 | setControlDisabled(false);
73 | });
74 | updatePercentNode((value / maxValue) * 100);
75 | });
76 | });
77 |
--------------------------------------------------------------------------------
/example/src/conical-gradient/index.html:
--------------------------------------------------------------------------------
1 |
2 |