o simple thing, where have you gone?
Seto Elkahfi committed
Dec 29, 2024 at 02:05 UTC
08fb54563ebe5c8fa11025a42ad16ed6e8ee659d
49 files changed
+63
-21835
.firebaserc
deleted
-5
@@ -1,5 +0,0 @@
1
-{
2
- "projects": {
3
- "default": "blazing-fire-5965"
4
- }
5
-}
.gitignore
deleted
-27
@@ -1,27 +0,0 @@
1
-# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2
-
3
-# firebase
4
-.firebase/*
5
-
6
-# dependencies
7
-/node_modules
8
-/.pnp
9
-.pnp.js
10
-
11
-# testing
12
-/coverage
13
-
14
-# production
15
-/build
16
-/server/build/*
17
-
18
-# misc
19
-.DS_Store
20
-.env.local
21
-.env.development.local
22
-.env.test.local
23
-.env.production.local
24
-
25
-npm-debug.log*
26
-yarn-debug.log*
27
-yarn-error.log*
.nvmrc
deleted
-1
@@ -1 +0,0 @@
1
-v20.5.0
.smb/nginx-setoelkahfi.com
+3
-6
@@ -3,17 +3,14 @@ server {
3
listen 443 ssl;
4
5
server_name setoelkahfi.com;
6
+ root /var/www/setoelkahfi.com;
7
+ index index.html
8
9
ssl_certificate /etc/letsencrypt/live/setoelkahfi.com/fullchain.pem;
10
ssl_certificate_key /etc/letsencrypt/live/setoelkahfi.com/privkey.pem;
11
12
location / {
11
- proxy_pass http://localhost:3003;
12
- proxy_http_version 1.1;
13
- proxy_set_header Upgrade $http_upgrade;
14
- proxy_set_header Connection 'upgrade';
15
- proxy_set_header Host $host;
16
- proxy_cache_bypass $http_upgrade;
13
+ try_files $uri $uri/ =404;
14
}
15
}
16
.smb/post-receive
deleted
-53
@@ -1,53 +0,0 @@
1
-#!/bin/bash
2
-
3
-# The bare git directory
4
-GIT_DIR=/home/deploy/setoelkahfi.com
5
-# The app directory
6
-WORK_TREE=/home/deploy/apps/ssr/setoelkahfi.com
7
-
8
-# Put environment variabels here
9
-. ~/.profile
10
-
11
-while read oldrev newrev ref
12
-do
13
- if [[ $ref =~ .*/main$ ]];
14
- then
15
- echo "🚀 Main ref received. Deploying main branch to production..."
16
- mkdir -p $WORK_TREE
17
- git --work-tree=$WORK_TREE --git-dir=$GIT_DIR checkout -f main
18
-
19
- # start deploy tasks
20
- cd $WORK_TREE
21
- # Configure nvm
22
- nvm install $(cat .nvmrc)
23
- nvm use
24
-
25
- # Install dependencies and build the app
26
- npm install
27
- npm run build
28
-
29
- # Check if SETOELKAHFI_COM_PORT defined in the environment variable.
30
- # If not, cancel the deployment.
31
- if [ -z ${SETOELKAHFI_COM_PORT+x} ]; then
32
- echo "❌ Deployment failed. SETOELKAHFI_COM_PORT is not defined."
33
- exit 1
34
- fi
35
-
36
- # Check if SETOELKAHFI_COM_PORT is a number.
37
- # If not, cancel the deployment.
38
- if ! [[ "$SETOELKAHFI_COM_PORT" =~ ^[0-9]+$ ]]; then
39
- echo "❌ Deployment failed. SETOELKAHFI_COM_PORT is not a number."
40
- exit 1
41
- fi
42
-
43
- # Kill existing SETOELKAHFI_COM_PORT process and start the server
44
- echo "🚀 Killing existing setoelkahfi.com process..."
45
- kill $(lsof -t -i:$SETOELKAHFI_COM_PORT)
46
- echo "🚀 Starting server..."
47
- npm run start > /dev/null 2>&1 &
48
-
49
- echo "✅ Deployment complete."
50
- else
51
- echo "Ref $ref successfully received. Doing nothing: only the main branch may be deployed on this server."
52
- fi
53
-done
README.md
+18
-77
@@ -1,87 +1,28 @@
1
-This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app) and deployed to the Firebase Hosting.
1
+# personal-website
2
3
-## Deployment
3
+This is the source and **nginx** config files for my personal website.
4
5
-1. Install Firebase CLI tool.
6
-2. Run `firebase login`.
7
-3. Run `npm run build` to build the project.
8
-4. RUn `firebase deploy` to deploy the new build.
5
+## deployment
6
10
-## SSR
7
+Given you have the key to the server:
8
12
-https://ui.dev/react-router-server-rendering
9
+```bash
10
+$ scp index.html deploy@api.smbcloud.xyz:/var/www/setoelkahfi.com
11
+```
12
14
-## Available Scripts
13
+Of course that will not work because of permission denied error. So, upload to home folder:
14
16
-In the project directory, you can run:
15
+```bash
16
+$ scp index.html deploy@api.smbcloud.xyz:
17
+$ scp -r src deploy@api.smbcloud.xyz:
18
+```
19
18
-### `npm start`
20
+Then move them to `/var/www/setoelkahfi.com/`.
21
20
-Runs the app in the development mode.<br>
21
-Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
22
+## nginx
23
23
-The page will reload if you make edits.<br>
24
-You will also see any lint errors in the console.
24
+Download the **nginx** config for this website:
25
26
-### `npm test`
27
-
28
-Launches the test runner in the interactive watch mode.<br>
29
-See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
30
-
31
-### `npm run build`
32
-
33
-Builds the app for production to the `build` folder.<br>
34
-It correctly bundles React in production mode and optimizes the build for the best performance.
35
-
36
-The build is minified and the filenames include the hashes.<br>
37
-Your app is ready to be deployed!
38
-
39
-See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
40
-
41
-### `npm run eject`
42
-
43
-**Note: this is a one-way operation. Once you `eject`, you can’t go back!**
44
-
45
-If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
46
-
47
-Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
48
-
49
-You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
50
-
51
-## Learn More
52
-
53
-You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
54
-
55
-To learn React, check out the [React documentation](https://reactjs.org/).
56
-
57
-### Code Splitting
58
-
59
-This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting
60
-
61
-### Analyzing the Bundle Size
62
-
63
-This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size
64
-
65
-### Making a Progressive Web App
66
-
67
-This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app
68
-
69
-### Advanced Configuration
70
-
71
-This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration
72
-
73
-### Deployment
74
-
75
-This section has moved here: https://facebook.github.io/create-react-app/docs/deployment
76
-
77
-### `npm run build` fails to minify
78
-
79
-This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify
80
-
81
-
82
-## Firebase Integration
83
-
84
-Follow this instruction here https://www.robinwieruch.de/complete-firebase-authentication-react-tutorial
85
-
86
-Tldr;
87
-We use React Context API to provide a Firebase instance once at the top-level of the component hierarchy.
\ No newline at end of file
26
+```bash
27
+$ scp deploy@api.smbcloud.xyz:/etc/nginx/sites-enabled/setoelkahfi.com .smb/nginx-setoelkahfi.com
28
+```
\ No newline at end of file
firebase.json
deleted
-16
@@ -1,16 +0,0 @@
1
-{
2
- "hosting": {
3
- "public": "build",
4
- "ignore": [
5
- "firebase.json",
6
- "**/.*",
7
- "**/node_modules/**"
8
- ],
9
- "rewrites": [
10
- {
11
- "source": "**",
12
- "destination": "/index.html"
13
- }
14
- ]
15
- }
16
-}
index.html
new
+24
@@ -0,0 +1,24 @@
1
+<!DOCTYPE html>
2
+<html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <title>Error</title>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <link rel="stylesheet" href="src/style.css" />
8
+ </head>
9
+ <body>
10
+ <pre>
11
+ TypeError: Cannot read properties of undefined (reading 'length')
12
+ <div>
13
+ at Home.render (/home/deploy/apps/<a href="https://www.scandinasia.eu/kunci-untuk-memahami-kenapa-framework-seperti-nextjs-ada/">ssr</a>/setoelkahfi.com/build/src/components/Home.js:141:19)
14
+ at processChild (/home/deploy/apps/ssr/setoelkahfi.com/node_modules/react-dom/cjs/react-dom-server.node.development.js:3134:18)
15
+ at resolve (/home/deploy/apps/ssr/setoelkahfi.com/node_modules/react-dom/cjs/react-dom-server.node.development.js:2960:5)
16
+ at ReactDOMServerRenderer.render (/home/<a href="https://www.scandinasia.eu/push-to-deploy/">deploy</a>/apps/ssr/setoelkahfi.com/node_modules/react-dom/cjs/react-dom-server.node.development.js:3435:22)
17
+ at ReactDOMServerRenderer.read (/home/deploy/apps/ssr/setoelkahfi.com/node_modules/react-dom/cjs/react-dom-server.node.development.js:3373:29)
18
+ at Object.renderToString (/home/deploy/apps/ssr/setoelkahfi.com/node_modules/react-dom/cjs/react-dom-server.node.development.js:3988:27)
19
+ at /home/deploy/apps/ssr/setoelkahfi.com/build/server/server.js:55:38
20
+ at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
21
+ </div>
22
+ </pre>
23
+ </body>
24
+</html>
package-lock.json
deleted
-19640
@@ -1,19640 +0,0 @@
1
-{
2
- "name": "setoelkahfi.com",
3
- "version": "0.3.0",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "": {
8
- "name": "setoelkahfi.com",
9
- "version": "0.3.0",
10
- "dependencies": {
11
- "@babel/runtime": "^7.16.7",
12
- "@types/jest": "^24.9.1",
13
- "@types/node": "^13.13.52",
14
- "@types/react": "^16.14.43",
15
- "@types/react-dom": "^16.9.14",
16
- "@types/react-router-dom": "^5.3.2",
17
- "axios": "^0.25.0",
18
- "bootstrap": "5.1.3",
19
- "dexie": "^3.2.0",
20
- "express": "^4.18.2",
21
- "firebase": "^8.6.2",
22
- "react": "^16.14.0",
23
- "react-bootstrap": "^2.1.1",
24
- "react-dom": "^16.14.0",
25
- "react-icons": "^4.3.1",
26
- "react-intl": "^2.9.0",
27
- "react-rotating-text": "^1.4.1",
28
- "react-router-dom": "^5.3.0",
29
- "react-scripts": "^5.0.0",
30
- "react-youtube": "^7.14.0",
31
- "tone": "^14.7.77",
32
- "typescript": "^4.0.0"
33
- },
34
- "devDependencies": {
35
- "@types/express": "^4.17.17",
36
- "@types/react-intl": "^3.0.0"
37
- }
38
- },
39
- "node_modules/@aashutoshrathi/word-wrap": {
40
- "version": "1.2.6",
41
- "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
42
- "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
43
- "engines": {
44
- "node": ">=0.10.0"
45
- }
46
- },
47
- "node_modules/@alloc/quick-lru": {
48
- "version": "5.2.0",
49
- "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
50
- "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
51
- "engines": {
52
- "node": ">=10"
53
- },
54
- "funding": {
55
- "url": "https://github.com/sponsors/sindresorhus"
56
- }
57
- },
58
- "node_modules/@ampproject/remapping": {
59
- "version": "2.2.1",
60
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
61
- "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
62
- "dependencies": {
63
- "@jridgewell/gen-mapping": "^0.3.0",
64
- "@jridgewell/trace-mapping": "^0.3.9"
65
- },
66
- "engines": {
67
- "node": ">=6.0.0"
68
- }
69
- },
70
- "node_modules/@babel/code-frame": {
71
- "version": "7.16.7",
72
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
73
- "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
74
- "dependencies": {
75
- "@babel/highlight": "^7.16.7"
76
- },
77
- "engines": {
78
- "node": ">=6.9.0"
79
- }
80
- },
81
- "node_modules/@babel/compat-data": {
82
- "version": "7.22.9",
83
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz",
84
- "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==",
85
- "engines": {
86
- "node": ">=6.9.0"
87
- }
88
- },
89
- "node_modules/@babel/core": {
90
- "version": "7.22.9",
91
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz",
92
- "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==",
93
- "dependencies": {
94
- "@ampproject/remapping": "^2.2.0",
95
- "@babel/code-frame": "^7.22.5",
96
- "@babel/generator": "^7.22.9",
97
- "@babel/helper-compilation-targets": "^7.22.9",
98
- "@babel/helper-module-transforms": "^7.22.9",
99
- "@babel/helpers": "^7.22.6",
100
- "@babel/parser": "^7.22.7",
101
- "@babel/template": "^7.22.5",
102
- "@babel/traverse": "^7.22.8",
103
- "@babel/types": "^7.22.5",
104
- "convert-source-map": "^1.7.0",
105
- "debug": "^4.1.0",
106
- "gensync": "^1.0.0-beta.2",
107
- "json5": "^2.2.2",
108
- "semver": "^6.3.1"
109
- },
110
- "engines": {
111
- "node": ">=6.9.0"
112
- },
113
- "funding": {
114
- "type": "opencollective",
115
- "url": "https://opencollective.com/babel"
116
- }
117
- },
118
- "node_modules/@babel/core/node_modules/@babel/code-frame": {
119
- "version": "7.22.5",
120
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz",
121
- "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",
122
- "dependencies": {
123
- "@babel/highlight": "^7.22.5"
124
- },
125
- "engines": {
126
- "node": ">=6.9.0"
127
- }
128
- },
129
- "node_modules/@babel/core/node_modules/semver": {
130
- "version": "6.3.1",
131
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
132
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
133
- "bin": {
134
- "semver": "bin/semver.js"
135
- }
136
- },
137
- "node_modules/@babel/eslint-parser": {
138
- "version": "7.22.9",
139
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.9.tgz",
140
- "integrity": "sha512-xdMkt39/nviO/4vpVdrEYPwXCsYIXSSAr6mC7WQsNIlGnuxKyKE7GZjalcnbSWiC4OXGNNN3UQPeHfjSC6sTDA==",
141
- "dependencies": {
142
- "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1",
143
- "eslint-visitor-keys": "^2.1.0",
144
- "semver": "^6.3.1"
145
- },
146
- "engines": {
147
- "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
148
- },
149
- "peerDependencies": {
150
- "@babel/core": ">=7.11.0",
151
- "eslint": "^7.5.0 || ^8.0.0"
152
- }
153
- },
154
- "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": {
155
- "version": "2.1.0",
156
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
157
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
158
- "engines": {
159
- "node": ">=10"
160
- }
161
- },
162
- "node_modules/@babel/eslint-parser/node_modules/semver": {
163
- "version": "6.3.1",
164
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
165
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
166
- "bin": {
167
- "semver": "bin/semver.js"
168
- }
169
- },
170
- "node_modules/@babel/generator": {
171
- "version": "7.22.9",
172
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz",
173
- "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==",
174
- "dependencies": {
175
- "@babel/types": "^7.22.5",
176
- "@jridgewell/gen-mapping": "^0.3.2",
177
- "@jridgewell/trace-mapping": "^0.3.17",
178
- "jsesc": "^2.5.1"
179
- },
180
- "engines": {
181
- "node": ">=6.9.0"
182
- }
183
- },
184
- "node_modules/@babel/helper-annotate-as-pure": {
185
- "version": "7.16.7",
186
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz",
187
- "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==",
188
- "dependencies": {
189
- "@babel/types": "^7.16.7"
190
- },
191
- "engines": {
192
- "node": ">=6.9.0"
193
- }
194
- },
195
- "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
196
- "version": "7.16.7",
197
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz",
198
- "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==",
199
- "dependencies": {
200
- "@babel/helper-explode-assignable-expression": "^7.16.7",
201
- "@babel/types": "^7.16.7"
202
- },
203
- "engines": {
204
- "node": ">=6.9.0"
205
- }
206
- },
207
- "node_modules/@babel/helper-compilation-targets": {
208
- "version": "7.22.9",
209
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz",
210
- "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==",
211
- "dependencies": {
212
- "@babel/compat-data": "^7.22.9",
213
- "@babel/helper-validator-option": "^7.22.5",
214
- "browserslist": "^4.21.9",
215
- "lru-cache": "^5.1.1",
216
- "semver": "^6.3.1"
217
- },
218
- "engines": {
219
- "node": ">=6.9.0"
220
- },
221
- "peerDependencies": {
222
- "@babel/core": "^7.0.0"
223
- }
224
- },
225
- "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
226
- "version": "6.3.1",
227
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
228
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
229
- "bin": {
230
- "semver": "bin/semver.js"
231
- }
232
- },
233
- "node_modules/@babel/helper-create-class-features-plugin": {
234
- "version": "7.16.10",
235
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.10.tgz",
236
- "integrity": "sha512-wDeej0pu3WN/ffTxMNCPW5UCiOav8IcLRxSIyp/9+IF2xJUM9h/OYjg0IJLHaL6F8oU8kqMz9nc1vryXhMsgXg==",
237
- "dependencies": {
238
- "@babel/helper-annotate-as-pure": "^7.16.7",
239
- "@babel/helper-environment-visitor": "^7.16.7",
240
- "@babel/helper-function-name": "^7.16.7",
241
- "@babel/helper-member-expression-to-functions": "^7.16.7",
242
- "@babel/helper-optimise-call-expression": "^7.16.7",
243
- "@babel/helper-replace-supers": "^7.16.7",
244
- "@babel/helper-split-export-declaration": "^7.16.7"
245
- },
246
- "engines": {
247
- "node": ">=6.9.0"
248
- },
249
- "peerDependencies": {
250
- "@babel/core": "^7.0.0"
251
- }
252
- },
253
- "node_modules/@babel/helper-create-regexp-features-plugin": {
254
- "version": "7.16.7",
255
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.7.tgz",
256
- "integrity": "sha512-fk5A6ymfp+O5+p2yCkXAu5Kyj6v0xh0RBeNcAkYUMDvvAAoxvSKXn+Jb37t/yWFiQVDFK1ELpUTD8/aLhCPu+g==",
257
- "dependencies": {
258
- "@babel/helper-annotate-as-pure": "^7.16.7",
259
- "regexpu-core": "^4.7.1"
260
- },
261
- "engines": {
262
- "node": ">=6.9.0"
263
- },
264
- "peerDependencies": {
265
- "@babel/core": "^7.0.0"
266
- }
267
- },
268
- "node_modules/@babel/helper-define-polyfill-provider": {
269
- "version": "0.3.1",
270
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
271
- "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
272
- "dependencies": {
273
- "@babel/helper-compilation-targets": "^7.13.0",
274
- "@babel/helper-module-imports": "^7.12.13",
275
- "@babel/helper-plugin-utils": "^7.13.0",
276
- "@babel/traverse": "^7.13.0",
277
- "debug": "^4.1.1",
278
- "lodash.debounce": "^4.0.8",
279
- "resolve": "^1.14.2",
280
- "semver": "^6.1.2"
281
- },
282
- "peerDependencies": {
283
- "@babel/core": "^7.4.0-0"
284
- }
285
- },
286
- "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": {
287
- "version": "6.3.0",
288
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
289
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
290
- "bin": {
291
- "semver": "bin/semver.js"
292
- }
293
- },
294
- "node_modules/@babel/helper-environment-visitor": {
295
- "version": "7.22.5",
296
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz",
297
- "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==",
298
- "engines": {
299
- "node": ">=6.9.0"
300
- }
301
- },
302
- "node_modules/@babel/helper-explode-assignable-expression": {
303
- "version": "7.16.7",
304
- "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz",
305
- "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==",
306
- "dependencies": {
307
- "@babel/types": "^7.16.7"
308
- },
309
- "engines": {
310
- "node": ">=6.9.0"
311
- }
312
- },
313
- "node_modules/@babel/helper-function-name": {
314
- "version": "7.22.5",
315
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz",
316
- "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==",
317
- "dependencies": {
318
- "@babel/template": "^7.22.5",
319
- "@babel/types": "^7.22.5"
320
- },
321
- "engines": {
322
- "node": ">=6.9.0"
323
- }
324
- },
325
- "node_modules/@babel/helper-hoist-variables": {
326
- "version": "7.22.5",
327
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
328
- "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
329
- "dependencies": {
330
- "@babel/types": "^7.22.5"
331
- },
332
- "engines": {
333
- "node": ">=6.9.0"
334
- }
335
- },
336
- "node_modules/@babel/helper-member-expression-to-functions": {
337
- "version": "7.16.7",
338
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.7.tgz",
339
- "integrity": "sha512-VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q==",
340
- "dependencies": {
341
- "@babel/types": "^7.16.7"
342
- },
343
- "engines": {
344
- "node": ">=6.9.0"
345
- }
346
- },
347
- "node_modules/@babel/helper-module-imports": {
348
- "version": "7.22.5",
349
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz",
350
- "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==",
351
- "dependencies": {
352
- "@babel/types": "^7.22.5"
353
- },
354
- "engines": {
355
- "node": ">=6.9.0"
356
- }
357
- },
358
- "node_modules/@babel/helper-module-transforms": {
359
- "version": "7.22.9",
360
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz",
361
- "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==",
362
- "dependencies": {
363
- "@babel/helper-environment-visitor": "^7.22.5",
364
- "@babel/helper-module-imports": "^7.22.5",
365
- "@babel/helper-simple-access": "^7.22.5",
366
- "@babel/helper-split-export-declaration": "^7.22.6",
367
- "@babel/helper-validator-identifier": "^7.22.5"
368
- },
369
- "engines": {
370
- "node": ">=6.9.0"
371
- },
372
- "peerDependencies": {
373
- "@babel/core": "^7.0.0"
374
- }
375
- },
376
- "node_modules/@babel/helper-optimise-call-expression": {
377
- "version": "7.16.7",
378
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz",
379
- "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==",
380
- "dependencies": {
381
- "@babel/types": "^7.16.7"
382
- },
383
- "engines": {
384
- "node": ">=6.9.0"
385
- }
386
- },
387
- "node_modules/@babel/helper-plugin-utils": {
388
- "version": "7.16.7",
389
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
390
- "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==",
391
- "engines": {
392
- "node": ">=6.9.0"
393
- }
394
- },
395
- "node_modules/@babel/helper-remap-async-to-generator": {
396
- "version": "7.16.8",
397
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz",
398
- "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==",
399
- "dependencies": {
400
- "@babel/helper-annotate-as-pure": "^7.16.7",
401
- "@babel/helper-wrap-function": "^7.16.8",
402
- "@babel/types": "^7.16.8"
403
- },
404
- "engines": {
405
- "node": ">=6.9.0"
406
- }
407
- },
408
- "node_modules/@babel/helper-replace-supers": {
409
- "version": "7.16.7",
410
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz",
411
- "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==",
412
- "dependencies": {
413
- "@babel/helper-environment-visitor": "^7.16.7",
414
- "@babel/helper-member-expression-to-functions": "^7.16.7",
415
- "@babel/helper-optimise-call-expression": "^7.16.7",
416
- "@babel/traverse": "^7.16.7",
417
- "@babel/types": "^7.16.7"
418
- },
419
- "engines": {
420
- "node": ">=6.9.0"
421
- }
422
- },
423
- "node_modules/@babel/helper-simple-access": {
424
- "version": "7.22.5",
425
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz",
426
- "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==",
427
- "dependencies": {
428
- "@babel/types": "^7.22.5"
429
- },
430
- "engines": {
431
- "node": ">=6.9.0"
432
- }
433
- },
434
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
435
- "version": "7.16.0",
436
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz",
437
- "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==",
438
- "dependencies": {
439
- "@babel/types": "^7.16.0"
440
- },
441
- "engines": {
442
- "node": ">=6.9.0"
443
- }
444
- },
445
- "node_modules/@babel/helper-split-export-declaration": {
446
- "version": "7.22.6",
447
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
448
- "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
449
- "dependencies": {
450
- "@babel/types": "^7.22.5"
451
- },
452
- "engines": {
453
- "node": ">=6.9.0"
454
- }
455
- },
456
- "node_modules/@babel/helper-string-parser": {
457
- "version": "7.22.5",
458
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz",
459
- "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",
460
- "engines": {
461
- "node": ">=6.9.0"
462
- }
463
- },
464
- "node_modules/@babel/helper-validator-identifier": {
465
- "version": "7.22.5",
466
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz",
467
- "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==",
468
- "engines": {
469
- "node": ">=6.9.0"
470
- }
471
- },
472
- "node_modules/@babel/helper-validator-option": {
473
- "version": "7.22.5",
474
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz",
475
- "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==",
476
- "engines": {
477
- "node": ">=6.9.0"
478
- }
479
- },
480
- "node_modules/@babel/helper-wrap-function": {
481
- "version": "7.16.8",
482
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz",
483
- "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==",
484
- "dependencies": {
485
- "@babel/helper-function-name": "^7.16.7",
486
- "@babel/template": "^7.16.7",
487
- "@babel/traverse": "^7.16.8",
488
- "@babel/types": "^7.16.8"
489
- },
490
- "engines": {
491
- "node": ">=6.9.0"
492
- }
493
- },
494
- "node_modules/@babel/helpers": {
495
- "version": "7.22.6",
496
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz",
497
- "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==",
498
- "dependencies": {
499
- "@babel/template": "^7.22.5",
500
- "@babel/traverse": "^7.22.6",
501
- "@babel/types": "^7.22.5"
502
- },
503
- "engines": {
504
- "node": ">=6.9.0"
505
- }
506
- },
507
- "node_modules/@babel/highlight": {
508
- "version": "7.22.5",
509
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz",
510
- "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==",
511
- "dependencies": {
512
- "@babel/helper-validator-identifier": "^7.22.5",
513
- "chalk": "^2.0.0",
514
- "js-tokens": "^4.0.0"
515
- },
516
- "engines": {
517
- "node": ">=6.9.0"
518
- }
519
- },
520
- "node_modules/@babel/parser": {
521
- "version": "7.22.7",
522
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz",
523
- "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==",
524
- "bin": {
525
- "parser": "bin/babel-parser.js"
526
- },
527
- "engines": {
528
- "node": ">=6.0.0"
529
- }
530
- },
531
- "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
532
- "version": "7.16.7",
533
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz",
534
- "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==",
535
- "dependencies": {
536
- "@babel/helper-plugin-utils": "^7.16.7"
537
- },
538
- "engines": {
539
- "node": ">=6.9.0"
540
- },
541
- "peerDependencies": {
542
- "@babel/core": "^7.0.0"
543
- }
544
- },
545
- "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
546
- "version": "7.16.7",
547
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz",
548
- "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==",
549
- "dependencies": {
550
- "@babel/helper-plugin-utils": "^7.16.7",
551
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
552
- "@babel/plugin-proposal-optional-chaining": "^7.16.7"
553
- },
554
- "engines": {
555
- "node": ">=6.9.0"
556
- },
557
- "peerDependencies": {
558
- "@babel/core": "^7.13.0"
559
- }
560
- },
561
- "node_modules/@babel/plugin-proposal-async-generator-functions": {
562
- "version": "7.16.8",
563
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz",
564
- "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==",
565
- "dependencies": {
566
- "@babel/helper-plugin-utils": "^7.16.7",
567
- "@babel/helper-remap-async-to-generator": "^7.16.8",
568
- "@babel/plugin-syntax-async-generators": "^7.8.4"
569
- },
570
- "engines": {
571
- "node": ">=6.9.0"
572
- },
573
- "peerDependencies": {
574
- "@babel/core": "^7.0.0-0"
575
- }
576
- },
577
- "node_modules/@babel/plugin-proposal-class-properties": {
578
- "version": "7.16.7",
579
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz",
580
- "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==",
581
- "dependencies": {
582
- "@babel/helper-create-class-features-plugin": "^7.16.7",
583
- "@babel/helper-plugin-utils": "^7.16.7"
584
- },
585
- "engines": {
586
- "node": ">=6.9.0"
587
- },
588
- "peerDependencies": {
589
- "@babel/core": "^7.0.0-0"
590
- }
591
- },
592
- "node_modules/@babel/plugin-proposal-class-static-block": {
593
- "version": "7.16.7",
594
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.7.tgz",
595
- "integrity": "sha512-dgqJJrcZoG/4CkMopzhPJjGxsIe9A8RlkQLnL/Vhhx8AA9ZuaRwGSlscSh42hazc7WSrya/IK7mTeoF0DP9tEw==",
596
- "dependencies": {
597
- "@babel/helper-create-class-features-plugin": "^7.16.7",
598
- "@babel/helper-plugin-utils": "^7.16.7",
599
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
600
- },
601
- "engines": {
602
- "node": ">=6.9.0"
603
- },
604
- "peerDependencies": {
605
- "@babel/core": "^7.12.0"
606
- }
607
- },
608
- "node_modules/@babel/plugin-proposal-decorators": {
609
- "version": "7.16.7",
610
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.16.7.tgz",
611
- "integrity": "sha512-DoEpnuXK14XV9btI1k8tzNGCutMclpj4yru8aXKoHlVmbO1s+2A+g2+h4JhcjrxkFJqzbymnLG6j/niOf3iFXQ==",
612
- "dependencies": {
613
- "@babel/helper-create-class-features-plugin": "^7.16.7",
614
- "@babel/helper-plugin-utils": "^7.16.7",
615
- "@babel/plugin-syntax-decorators": "^7.16.7"
616
- },
617
- "engines": {
618
- "node": ">=6.9.0"
619
- },
620
- "peerDependencies": {
621
- "@babel/core": "^7.0.0-0"
622
- }
623
- },
624
- "node_modules/@babel/plugin-proposal-dynamic-import": {
625
- "version": "7.16.7",
626
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz",
627
- "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==",
628
- "dependencies": {
629
- "@babel/helper-plugin-utils": "^7.16.7",
630
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
631
- },
632
- "engines": {
633
- "node": ">=6.9.0"
634
- },
635
- "peerDependencies": {
636
- "@babel/core": "^7.0.0-0"
637
- }
638
- },
639
- "node_modules/@babel/plugin-proposal-export-namespace-from": {
640
- "version": "7.16.7",
641
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz",
642
- "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==",
643
- "dependencies": {
644
- "@babel/helper-plugin-utils": "^7.16.7",
645
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
646
- },
647
- "engines": {
648
- "node": ">=6.9.0"
649
- },
650
- "peerDependencies": {
651
- "@babel/core": "^7.0.0-0"
652
- }
653
- },
654
- "node_modules/@babel/plugin-proposal-json-strings": {
655
- "version": "7.16.7",
656
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz",
657
- "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==",
658
- "dependencies": {
659
- "@babel/helper-plugin-utils": "^7.16.7",
660
- "@babel/plugin-syntax-json-strings": "^7.8.3"
661
- },
662
- "engines": {
663
- "node": ">=6.9.0"
664
- },
665
- "peerDependencies": {
666
- "@babel/core": "^7.0.0-0"
667
- }
668
- },
669
- "node_modules/@babel/plugin-proposal-logical-assignment-operators": {
670
- "version": "7.16.7",
671
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz",
672
- "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==",
673
- "dependencies": {
674
- "@babel/helper-plugin-utils": "^7.16.7",
675
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
676
- },
677
- "engines": {
678
- "node": ">=6.9.0"
679
- },
680
- "peerDependencies": {
681
- "@babel/core": "^7.0.0-0"
682
- }
683
- },
684
- "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": {
685
- "version": "7.16.7",
686
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz",
687
- "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==",
688
- "dependencies": {
689
- "@babel/helper-plugin-utils": "^7.16.7",
690
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
691
- },
692
- "engines": {
693
- "node": ">=6.9.0"
694
- },
695
- "peerDependencies": {
696
- "@babel/core": "^7.0.0-0"
697
- }
698
- },
699
- "node_modules/@babel/plugin-proposal-numeric-separator": {
700
- "version": "7.16.7",
701
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz",
702
- "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==",
703
- "dependencies": {
704
- "@babel/helper-plugin-utils": "^7.16.7",
705
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
706
- },
707
- "engines": {
708
- "node": ">=6.9.0"
709
- },
710
- "peerDependencies": {
711
- "@babel/core": "^7.0.0-0"
712
- }
713
- },
714
- "node_modules/@babel/plugin-proposal-object-rest-spread": {
715
- "version": "7.16.7",
716
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.7.tgz",
717
- "integrity": "sha512-3O0Y4+dw94HA86qSg9IHfyPktgR7q3gpNVAeiKQd+8jBKFaU5NQS1Yatgo4wY+UFNuLjvxcSmzcsHqrhgTyBUA==",
718
- "dependencies": {
719
- "@babel/compat-data": "^7.16.4",
720
- "@babel/helper-compilation-targets": "^7.16.7",
721
- "@babel/helper-plugin-utils": "^7.16.7",
722
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
723
- "@babel/plugin-transform-parameters": "^7.16.7"
724
- },
725
- "engines": {
726
- "node": ">=6.9.0"
727
- },
728
- "peerDependencies": {
729
- "@babel/core": "^7.0.0-0"
730
- }
731
- },
732
- "node_modules/@babel/plugin-proposal-optional-catch-binding": {
733
- "version": "7.16.7",
734
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz",
735
- "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==",
736
- "dependencies": {
737
- "@babel/helper-plugin-utils": "^7.16.7",
738
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
739
- },
740
- "engines": {
741
- "node": ">=6.9.0"
742
- },
743
- "peerDependencies": {
744
- "@babel/core": "^7.0.0-0"
745
- }
746
- },
747
- "node_modules/@babel/plugin-proposal-optional-chaining": {
748
- "version": "7.16.7",
749
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz",
750
- "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==",
751
- "dependencies": {
752
- "@babel/helper-plugin-utils": "^7.16.7",
753
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
754
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
755
- },
756
- "engines": {
757
- "node": ">=6.9.0"
758
- },
759
- "peerDependencies": {
760
- "@babel/core": "^7.0.0-0"
761
- }
762
- },
763
- "node_modules/@babel/plugin-proposal-private-methods": {
764
- "version": "7.16.7",
765
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.7.tgz",
766
- "integrity": "sha512-7twV3pzhrRxSwHeIvFE6coPgvo+exNDOiGUMg39o2LiLo1Y+4aKpfkcLGcg1UHonzorCt7SNXnoMyCnnIOA8Sw==",
767
- "dependencies": {
768
- "@babel/helper-create-class-features-plugin": "^7.16.7",
769
- "@babel/helper-plugin-utils": "^7.16.7"
770
- },
771
- "engines": {
772
- "node": ">=6.9.0"
773
- },
774
- "peerDependencies": {
775
- "@babel/core": "^7.0.0-0"
776
- }
777
- },
778
- "node_modules/@babel/plugin-proposal-private-property-in-object": {
779
- "version": "7.16.7",
780
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz",
781
- "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==",
782
- "dependencies": {
783
- "@babel/helper-annotate-as-pure": "^7.16.7",
784
- "@babel/helper-create-class-features-plugin": "^7.16.7",
785
- "@babel/helper-plugin-utils": "^7.16.7",
786
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
787
- },
788
- "engines": {
789
- "node": ">=6.9.0"
790
- },
791
- "peerDependencies": {
792
- "@babel/core": "^7.0.0-0"
793
- }
794
- },
795
- "node_modules/@babel/plugin-proposal-unicode-property-regex": {
796
- "version": "7.16.7",
797
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz",
798
- "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==",
799
- "dependencies": {
800
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
801
- "@babel/helper-plugin-utils": "^7.16.7"
802
- },
803
- "engines": {
804
- "node": ">=4"
805
- },
806
- "peerDependencies": {
807
- "@babel/core": "^7.0.0-0"
808
- }
809
- },
810
- "node_modules/@babel/plugin-syntax-async-generators": {
811
- "version": "7.8.4",
812
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
813
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
814
- "dependencies": {
815
- "@babel/helper-plugin-utils": "^7.8.0"
816
- },
817
- "peerDependencies": {
818
- "@babel/core": "^7.0.0-0"
819
- }
820
- },
821
- "node_modules/@babel/plugin-syntax-bigint": {
822
- "version": "7.8.3",
823
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
824
- "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
825
- "dependencies": {
826
- "@babel/helper-plugin-utils": "^7.8.0"
827
- },
828
- "peerDependencies": {
829
- "@babel/core": "^7.0.0-0"
830
- }
831
- },
832
- "node_modules/@babel/plugin-syntax-class-properties": {
833
- "version": "7.12.13",
834
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
835
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
836
- "dependencies": {
837
- "@babel/helper-plugin-utils": "^7.12.13"
838
- },
839
- "peerDependencies": {
840
- "@babel/core": "^7.0.0-0"
841
- }
842
- },
843
- "node_modules/@babel/plugin-syntax-class-static-block": {
844
- "version": "7.14.5",
845
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
846
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
847
- "dependencies": {
848
- "@babel/helper-plugin-utils": "^7.14.5"
849
- },
850
- "engines": {
851
- "node": ">=6.9.0"
852
- },
853
- "peerDependencies": {
854
- "@babel/core": "^7.0.0-0"
855
- }
856
- },
857
- "node_modules/@babel/plugin-syntax-decorators": {
858
- "version": "7.16.7",
859
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.16.7.tgz",
860
- "integrity": "sha512-vQ+PxL+srA7g6Rx6I1e15m55gftknl2X8GCUW1JTlkTaXZLJOS0UcaY0eK9jYT7IYf4awn6qwyghVHLDz1WyMw==",
861
- "dependencies": {
862
- "@babel/helper-plugin-utils": "^7.16.7"
863
- },
864
- "engines": {
865
- "node": ">=6.9.0"
866
- },
867
- "peerDependencies": {
868
- "@babel/core": "^7.0.0-0"
869
- }
870
- },
871
- "node_modules/@babel/plugin-syntax-dynamic-import": {
872
- "version": "7.8.3",
873
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
874
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
875
- "dependencies": {
876
- "@babel/helper-plugin-utils": "^7.8.0"
877
- },
878
- "peerDependencies": {
879
- "@babel/core": "^7.0.0-0"
880
- }
881
- },
882
- "node_modules/@babel/plugin-syntax-export-namespace-from": {
883
- "version": "7.8.3",
884
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
885
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
886
- "dependencies": {
887
- "@babel/helper-plugin-utils": "^7.8.3"
888
- },
889
- "peerDependencies": {
890
- "@babel/core": "^7.0.0-0"
891
- }
892
- },
893
- "node_modules/@babel/plugin-syntax-flow": {
894
- "version": "7.16.7",
895
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.16.7.tgz",
896
- "integrity": "sha512-UDo3YGQO0jH6ytzVwgSLv9i/CzMcUjbKenL67dTrAZPPv6GFAtDhe6jqnvmoKzC/7htNTohhos+onPtDMqJwaQ==",
897
- "dependencies": {
898
- "@babel/helper-plugin-utils": "^7.16.7"
899
- },
900
- "engines": {
901
- "node": ">=6.9.0"
902
- },
903
- "peerDependencies": {
904
- "@babel/core": "^7.0.0-0"
905
- }
906
- },
907
- "node_modules/@babel/plugin-syntax-import-meta": {
908
- "version": "7.10.4",
909
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
910
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
911
- "dependencies": {
912
- "@babel/helper-plugin-utils": "^7.10.4"
913
- },
914
- "peerDependencies": {
915
- "@babel/core": "^7.0.0-0"
916
- }
917
- },
918
- "node_modules/@babel/plugin-syntax-json-strings": {
919
- "version": "7.8.3",
920
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
921
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
922
- "dependencies": {
923
- "@babel/helper-plugin-utils": "^7.8.0"
924
- },
925
- "peerDependencies": {
926
- "@babel/core": "^7.0.0-0"
927
- }
928
- },
929
- "node_modules/@babel/plugin-syntax-jsx": {
930
- "version": "7.16.7",
931
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
932
- "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
933
- "dependencies": {
934
- "@babel/helper-plugin-utils": "^7.16.7"
935
- },
936
- "engines": {
937
- "node": ">=6.9.0"
938
- },
939
- "peerDependencies": {
940
- "@babel/core": "^7.0.0-0"
941
- }
942
- },
943
- "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
944
- "version": "7.10.4",
945
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
946
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
947
- "dependencies": {
948
- "@babel/helper-plugin-utils": "^7.10.4"
949
- },
950
- "peerDependencies": {
951
- "@babel/core": "^7.0.0-0"
952
- }
953
- },
954
- "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
955
- "version": "7.8.3",
956
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
957
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
958
- "dependencies": {
959
- "@babel/helper-plugin-utils": "^7.8.0"
960
- },
961
- "peerDependencies": {
962
- "@babel/core": "^7.0.0-0"
963
- }
964
- },
965
- "node_modules/@babel/plugin-syntax-numeric-separator": {
966
- "version": "7.10.4",
967
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
968
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
969
- "dependencies": {
970
- "@babel/helper-plugin-utils": "^7.10.4"
971
- },
972
- "peerDependencies": {
973
- "@babel/core": "^7.0.0-0"
974
- }
975
- },
976
- "node_modules/@babel/plugin-syntax-object-rest-spread": {
977
- "version": "7.8.3",
978
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
979
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
980
- "dependencies": {
981
- "@babel/helper-plugin-utils": "^7.8.0"
982
- },
983
- "peerDependencies": {
984
- "@babel/core": "^7.0.0-0"
985
- }
986
- },
987
- "node_modules/@babel/plugin-syntax-optional-catch-binding": {
988
- "version": "7.8.3",
989
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
990
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
991
- "dependencies": {
992
- "@babel/helper-plugin-utils": "^7.8.0"
993
- },
994
- "peerDependencies": {
995
- "@babel/core": "^7.0.0-0"
996
- }
997
- },
998
- "node_modules/@babel/plugin-syntax-optional-chaining": {
999
- "version": "7.8.3",
1000
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
1001
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
1002
- "dependencies": {
1003
- "@babel/helper-plugin-utils": "^7.8.0"
1004
- },
1005
- "peerDependencies": {
1006
- "@babel/core": "^7.0.0-0"
1007
- }
1008
- },
1009
- "node_modules/@babel/plugin-syntax-private-property-in-object": {
1010
- "version": "7.14.5",
1011
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
1012
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
1013
- "dependencies": {
1014
- "@babel/helper-plugin-utils": "^7.14.5"
1015
- },
1016
- "engines": {
1017
- "node": ">=6.9.0"
1018
- },
1019
- "peerDependencies": {
1020
- "@babel/core": "^7.0.0-0"
1021
- }
1022
- },
1023
- "node_modules/@babel/plugin-syntax-top-level-await": {
1024
- "version": "7.14.5",
1025
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
1026
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
1027
- "dependencies": {
1028
- "@babel/helper-plugin-utils": "^7.14.5"
1029
- },
1030
- "engines": {
1031
- "node": ">=6.9.0"
1032
- },
1033
- "peerDependencies": {
1034
- "@babel/core": "^7.0.0-0"
1035
- }
1036
- },
1037
- "node_modules/@babel/plugin-syntax-typescript": {
1038
- "version": "7.16.7",
1039
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz",
1040
- "integrity": "sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==",
1041
- "dependencies": {
1042
- "@babel/helper-plugin-utils": "^7.16.7"
1043
- },
1044
- "engines": {
1045
- "node": ">=6.9.0"
1046
- },
1047
- "peerDependencies": {
1048
- "@babel/core": "^7.0.0-0"
1049
- }
1050
- },
1051
- "node_modules/@babel/plugin-transform-arrow-functions": {
1052
- "version": "7.16.7",
1053
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz",
1054
- "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==",
1055
- "dependencies": {
1056
- "@babel/helper-plugin-utils": "^7.16.7"
1057
- },
1058
- "engines": {
1059
- "node": ">=6.9.0"
1060
- },
1061
- "peerDependencies": {
1062
- "@babel/core": "^7.0.0-0"
1063
- }
1064
- },
1065
- "node_modules/@babel/plugin-transform-async-to-generator": {
1066
- "version": "7.16.8",
1067
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz",
1068
- "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==",
1069
- "dependencies": {
1070
- "@babel/helper-module-imports": "^7.16.7",
1071
- "@babel/helper-plugin-utils": "^7.16.7",
1072
- "@babel/helper-remap-async-to-generator": "^7.16.8"
1073
- },
1074
- "engines": {
1075
- "node": ">=6.9.0"
1076
- },
1077
- "peerDependencies": {
1078
- "@babel/core": "^7.0.0-0"
1079
- }
1080
- },
1081
- "node_modules/@babel/plugin-transform-block-scoped-functions": {
1082
- "version": "7.16.7",
1083
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz",
1084
- "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==",
1085
- "dependencies": {
1086
- "@babel/helper-plugin-utils": "^7.16.7"
1087
- },
1088
- "engines": {
1089
- "node": ">=6.9.0"
1090
- },
1091
- "peerDependencies": {
1092
- "@babel/core": "^7.0.0-0"
1093
- }
1094
- },
1095
- "node_modules/@babel/plugin-transform-block-scoping": {
1096
- "version": "7.16.7",
1097
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz",
1098
- "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==",
1099
- "dependencies": {
1100
- "@babel/helper-plugin-utils": "^7.16.7"
1101
- },
1102
- "engines": {
1103
- "node": ">=6.9.0"
1104
- },
1105
- "peerDependencies": {
1106
- "@babel/core": "^7.0.0-0"
1107
- }
1108
- },
1109
- "node_modules/@babel/plugin-transform-classes": {
1110
- "version": "7.16.7",
1111
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz",
1112
- "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==",
1113
- "dependencies": {
1114
- "@babel/helper-annotate-as-pure": "^7.16.7",
1115
- "@babel/helper-environment-visitor": "^7.16.7",
1116
- "@babel/helper-function-name": "^7.16.7",
1117
- "@babel/helper-optimise-call-expression": "^7.16.7",
1118
- "@babel/helper-plugin-utils": "^7.16.7",
1119
- "@babel/helper-replace-supers": "^7.16.7",
1120
- "@babel/helper-split-export-declaration": "^7.16.7",
1121
- "globals": "^11.1.0"
1122
- },
1123
- "engines": {
1124
- "node": ">=6.9.0"
1125
- },
1126
- "peerDependencies": {
1127
- "@babel/core": "^7.0.0-0"
1128
- }
1129
- },
1130
- "node_modules/@babel/plugin-transform-computed-properties": {
1131
- "version": "7.16.7",
1132
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz",
1133
- "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==",
1134
- "dependencies": {
1135
- "@babel/helper-plugin-utils": "^7.16.7"
1136
- },
1137
- "engines": {
1138
- "node": ">=6.9.0"
1139
- },
1140
- "peerDependencies": {
1141
- "@babel/core": "^7.0.0-0"
1142
- }
1143
- },
1144
- "node_modules/@babel/plugin-transform-destructuring": {
1145
- "version": "7.16.7",
1146
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.7.tgz",
1147
- "integrity": "sha512-VqAwhTHBnu5xBVDCvrvqJbtLUa++qZaWC0Fgr2mqokBlulZARGyIvZDoqbPlPaKImQ9dKAcCzbv+ul//uqu70A==",
1148
- "dependencies": {
1149
- "@babel/helper-plugin-utils": "^7.16.7"
1150
- },
1151
- "engines": {
1152
- "node": ">=6.9.0"
1153
- },
1154
- "peerDependencies": {
1155
- "@babel/core": "^7.0.0-0"
1156
- }
1157
- },
1158
- "node_modules/@babel/plugin-transform-dotall-regex": {
1159
- "version": "7.16.7",
1160
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz",
1161
- "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==",
1162
- "dependencies": {
1163
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
1164
- "@babel/helper-plugin-utils": "^7.16.7"
1165
- },
1166
- "engines": {
1167
- "node": ">=6.9.0"
1168
- },
1169
- "peerDependencies": {
1170
- "@babel/core": "^7.0.0-0"
1171
- }
1172
- },
1173
- "node_modules/@babel/plugin-transform-duplicate-keys": {
1174
- "version": "7.16.7",
1175
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz",
1176
- "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==",
1177
- "dependencies": {
1178
- "@babel/helper-plugin-utils": "^7.16.7"
1179
- },
1180
- "engines": {
1181
- "node": ">=6.9.0"
1182
- },
1183
- "peerDependencies": {
1184
- "@babel/core": "^7.0.0-0"
1185
- }
1186
- },
1187
- "node_modules/@babel/plugin-transform-exponentiation-operator": {
1188
- "version": "7.16.7",
1189
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz",
1190
- "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==",
1191
- "dependencies": {
1192
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7",
1193
- "@babel/helper-plugin-utils": "^7.16.7"
1194
- },
1195
- "engines": {
1196
- "node": ">=6.9.0"
1197
- },
1198
- "peerDependencies": {
1199
- "@babel/core": "^7.0.0-0"
1200
- }
1201
- },
1202
- "node_modules/@babel/plugin-transform-flow-strip-types": {
1203
- "version": "7.16.7",
1204
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.16.7.tgz",
1205
- "integrity": "sha512-mzmCq3cNsDpZZu9FADYYyfZJIOrSONmHcop2XEKPdBNMa4PDC4eEvcOvzZaCNcjKu72v0XQlA5y1g58aLRXdYg==",
1206
- "dependencies": {
1207
- "@babel/helper-plugin-utils": "^7.16.7",
1208
- "@babel/plugin-syntax-flow": "^7.16.7"
1209
- },
1210
- "engines": {
1211
- "node": ">=6.9.0"
1212
- },
1213
- "peerDependencies": {
1214
- "@babel/core": "^7.0.0-0"
1215
- }
1216
- },
1217
- "node_modules/@babel/plugin-transform-for-of": {
1218
- "version": "7.16.7",
1219
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz",
1220
- "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==",
1221
- "dependencies": {
1222
- "@babel/helper-plugin-utils": "^7.16.7"
1223
- },
1224
- "engines": {
1225
- "node": ">=6.9.0"
1226
- },
1227
- "peerDependencies": {
1228
- "@babel/core": "^7.0.0-0"
1229
- }
1230
- },
1231
- "node_modules/@babel/plugin-transform-function-name": {
1232
- "version": "7.16.7",
1233
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz",
1234
- "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==",
1235
- "dependencies": {
1236
- "@babel/helper-compilation-targets": "^7.16.7",
1237
- "@babel/helper-function-name": "^7.16.7",
1238
- "@babel/helper-plugin-utils": "^7.16.7"
1239
- },
1240
- "engines": {
1241
- "node": ">=6.9.0"
1242
- },
1243
- "peerDependencies": {
1244
- "@babel/core": "^7.0.0-0"
1245
- }
1246
- },
1247
- "node_modules/@babel/plugin-transform-literals": {
1248
- "version": "7.16.7",
1249
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz",
1250
- "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==",
1251
- "dependencies": {
1252
- "@babel/helper-plugin-utils": "^7.16.7"
1253
- },
1254
- "engines": {
1255
- "node": ">=6.9.0"
1256
- },
1257
- "peerDependencies": {
1258
- "@babel/core": "^7.0.0-0"
1259
- }
1260
- },
1261
- "node_modules/@babel/plugin-transform-member-expression-literals": {
1262
- "version": "7.16.7",
1263
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz",
1264
- "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==",
1265
- "dependencies": {
1266
- "@babel/helper-plugin-utils": "^7.16.7"
1267
- },
1268
- "engines": {
1269
- "node": ">=6.9.0"
1270
- },
1271
- "peerDependencies": {
1272
- "@babel/core": "^7.0.0-0"
1273
- }
1274
- },
1275
- "node_modules/@babel/plugin-transform-modules-amd": {
1276
- "version": "7.16.7",
1277
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz",
1278
- "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==",
1279
- "dependencies": {
1280
- "@babel/helper-module-transforms": "^7.16.7",
1281
- "@babel/helper-plugin-utils": "^7.16.7",
1282
- "babel-plugin-dynamic-import-node": "^2.3.3"
1283
- },
1284
- "engines": {
1285
- "node": ">=6.9.0"
1286
- },
1287
- "peerDependencies": {
1288
- "@babel/core": "^7.0.0-0"
1289
- }
1290
- },
1291
- "node_modules/@babel/plugin-transform-modules-commonjs": {
1292
- "version": "7.16.8",
1293
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.8.tgz",
1294
- "integrity": "sha512-oflKPvsLT2+uKQopesJt3ApiaIS2HW+hzHFcwRNtyDGieAeC/dIHZX8buJQ2J2X1rxGPy4eRcUijm3qcSPjYcA==",
1295
- "dependencies": {
1296
- "@babel/helper-module-transforms": "^7.16.7",
1297
- "@babel/helper-plugin-utils": "^7.16.7",
1298
- "@babel/helper-simple-access": "^7.16.7",
1299
- "babel-plugin-dynamic-import-node": "^2.3.3"
1300
- },
1301
- "engines": {
1302
- "node": ">=6.9.0"
1303
- },
1304
- "peerDependencies": {
1305
- "@babel/core": "^7.0.0-0"
1306
- }
1307
- },
1308
- "node_modules/@babel/plugin-transform-modules-systemjs": {
1309
- "version": "7.16.7",
1310
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz",
1311
- "integrity": "sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==",
1312
- "dependencies": {
1313
- "@babel/helper-hoist-variables": "^7.16.7",
1314
- "@babel/helper-module-transforms": "^7.16.7",
1315
- "@babel/helper-plugin-utils": "^7.16.7",
1316
- "@babel/helper-validator-identifier": "^7.16.7",
1317
- "babel-plugin-dynamic-import-node": "^2.3.3"
1318
- },
1319
- "engines": {
1320
- "node": ">=6.9.0"
1321
- },
1322
- "peerDependencies": {
1323
- "@babel/core": "^7.0.0-0"
1324
- }
1325
- },
1326
- "node_modules/@babel/plugin-transform-modules-umd": {
1327
- "version": "7.16.7",
1328
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz",
1329
- "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==",
1330
- "dependencies": {
1331
- "@babel/helper-module-transforms": "^7.16.7",
1332
- "@babel/helper-plugin-utils": "^7.16.7"
1333
- },
1334
- "engines": {
1335
- "node": ">=6.9.0"
1336
- },
1337
- "peerDependencies": {
1338
- "@babel/core": "^7.0.0-0"
1339
- }
1340
- },
1341
- "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
1342
- "version": "7.16.8",
1343
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz",
1344
- "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==",
1345
- "dependencies": {
1346
- "@babel/helper-create-regexp-features-plugin": "^7.16.7"
1347
- },
1348
- "engines": {
1349
- "node": ">=6.9.0"
1350
- },
1351
- "peerDependencies": {
1352
- "@babel/core": "^7.0.0"
1353
- }
1354
- },
1355
- "node_modules/@babel/plugin-transform-new-target": {
1356
- "version": "7.16.7",
1357
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz",
1358
- "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==",
1359
- "dependencies": {
1360
- "@babel/helper-plugin-utils": "^7.16.7"
1361
- },
1362
- "engines": {
1363
- "node": ">=6.9.0"
1364
- },
1365
- "peerDependencies": {
1366
- "@babel/core": "^7.0.0-0"
1367
- }
1368
- },
1369
- "node_modules/@babel/plugin-transform-object-super": {
1370
- "version": "7.16.7",
1371
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz",
1372
- "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==",
1373
- "dependencies": {
1374
- "@babel/helper-plugin-utils": "^7.16.7",
1375
- "@babel/helper-replace-supers": "^7.16.7"
1376
- },
1377
- "engines": {
1378
- "node": ">=6.9.0"
1379
- },
1380
- "peerDependencies": {
1381
- "@babel/core": "^7.0.0-0"
1382
- }
1383
- },
1384
- "node_modules/@babel/plugin-transform-parameters": {
1385
- "version": "7.16.7",
1386
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz",
1387
- "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==",
1388
- "dependencies": {
1389
- "@babel/helper-plugin-utils": "^7.16.7"
1390
- },
1391
- "engines": {
1392
- "node": ">=6.9.0"
1393
- },
1394
- "peerDependencies": {
1395
- "@babel/core": "^7.0.0-0"
1396
- }
1397
- },
1398
- "node_modules/@babel/plugin-transform-property-literals": {
1399
- "version": "7.16.7",
1400
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz",
1401
- "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==",
1402
- "dependencies": {
1403
- "@babel/helper-plugin-utils": "^7.16.7"
1404
- },
1405
- "engines": {
1406
- "node": ">=6.9.0"
1407
- },
1408
- "peerDependencies": {
1409
- "@babel/core": "^7.0.0-0"
1410
- }
1411
- },
1412
- "node_modules/@babel/plugin-transform-react-constant-elements": {
1413
- "version": "7.16.7",
1414
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.16.7.tgz",
1415
- "integrity": "sha512-lF+cfsyTgwWkcw715J88JhMYJ5GpysYNLhLP1PkvkhTRN7B3e74R/1KsDxFxhRpSn0UUD3IWM4GvdBR2PEbbQQ==",
1416
- "dependencies": {
1417
- "@babel/helper-plugin-utils": "^7.16.7"
1418
- },
1419
- "engines": {
1420
- "node": ">=6.9.0"
1421
- },
1422
- "peerDependencies": {
1423
- "@babel/core": "^7.0.0-0"
1424
- }
1425
- },
1426
- "node_modules/@babel/plugin-transform-react-display-name": {
1427
- "version": "7.16.7",
1428
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz",
1429
- "integrity": "sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==",
1430
- "dependencies": {
1431
- "@babel/helper-plugin-utils": "^7.16.7"
1432
- },
1433
- "engines": {
1434
- "node": ">=6.9.0"
1435
- },
1436
- "peerDependencies": {
1437
- "@babel/core": "^7.0.0-0"
1438
- }
1439
- },
1440
- "node_modules/@babel/plugin-transform-react-jsx": {
1441
- "version": "7.16.7",
1442
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.7.tgz",
1443
- "integrity": "sha512-8D16ye66fxiE8m890w0BpPpngG9o9OVBBy0gH2E+2AR7qMR2ZpTYJEqLxAsoroenMId0p/wMW+Blc0meDgu0Ag==",
1444
- "dependencies": {
1445
- "@babel/helper-annotate-as-pure": "^7.16.7",
1446
- "@babel/helper-module-imports": "^7.16.7",
1447
- "@babel/helper-plugin-utils": "^7.16.7",
1448
- "@babel/plugin-syntax-jsx": "^7.16.7",
1449
- "@babel/types": "^7.16.7"
1450
- },
1451
- "engines": {
1452
- "node": ">=6.9.0"
1453
- },
1454
- "peerDependencies": {
1455
- "@babel/core": "^7.0.0-0"
1456
- }
1457
- },
1458
- "node_modules/@babel/plugin-transform-react-jsx-development": {
1459
- "version": "7.16.7",
1460
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz",
1461
- "integrity": "sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==",
1462
- "dependencies": {
1463
- "@babel/plugin-transform-react-jsx": "^7.16.7"
1464
- },
1465
- "engines": {
1466
- "node": ">=6.9.0"
1467
- },
1468
- "peerDependencies": {
1469
- "@babel/core": "^7.0.0-0"
1470
- }
1471
- },
1472
- "node_modules/@babel/plugin-transform-react-pure-annotations": {
1473
- "version": "7.16.7",
1474
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.16.7.tgz",
1475
- "integrity": "sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==",
1476
- "dependencies": {
1477
- "@babel/helper-annotate-as-pure": "^7.16.7",
1478
- "@babel/helper-plugin-utils": "^7.16.7"
1479
- },
1480
- "engines": {
1481
- "node": ">=6.9.0"
1482
- },
1483
- "peerDependencies": {
1484
- "@babel/core": "^7.0.0-0"
1485
- }
1486
- },
1487
- "node_modules/@babel/plugin-transform-regenerator": {
1488
- "version": "7.16.7",
1489
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz",
1490
- "integrity": "sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==",
1491
- "dependencies": {
1492
- "regenerator-transform": "^0.14.2"
1493
- },
1494
- "engines": {
1495
- "node": ">=6.9.0"
1496
- },
1497
- "peerDependencies": {
1498
- "@babel/core": "^7.0.0-0"
1499
- }
1500
- },
1501
- "node_modules/@babel/plugin-transform-reserved-words": {
1502
- "version": "7.16.7",
1503
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz",
1504
- "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==",
1505
- "dependencies": {
1506
- "@babel/helper-plugin-utils": "^7.16.7"
1507
- },
1508
- "engines": {
1509
- "node": ">=6.9.0"
1510
- },
1511
- "peerDependencies": {
1512
- "@babel/core": "^7.0.0-0"
1513
- }
1514
- },
1515
- "node_modules/@babel/plugin-transform-runtime": {
1516
- "version": "7.16.10",
1517
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.10.tgz",
1518
- "integrity": "sha512-9nwTiqETv2G7xI4RvXHNfpGdr8pAA+Q/YtN3yLK7OoK7n9OibVm/xymJ838a9A6E/IciOLPj82lZk0fW6O4O7w==",
1519
- "dependencies": {
1520
- "@babel/helper-module-imports": "^7.16.7",
1521
- "@babel/helper-plugin-utils": "^7.16.7",
1522
- "babel-plugin-polyfill-corejs2": "^0.3.0",
1523
- "babel-plugin-polyfill-corejs3": "^0.5.0",
1524
- "babel-plugin-polyfill-regenerator": "^0.3.0",
1525
- "semver": "^6.3.0"
1526
- },
1527
- "engines": {
1528
- "node": ">=6.9.0"
1529
- },
1530
- "peerDependencies": {
1531
- "@babel/core": "^7.0.0-0"
1532
- }
1533
- },
1534
- "node_modules/@babel/plugin-transform-runtime/node_modules/semver": {
1535
- "version": "6.3.0",
1536
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1537
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1538
- "bin": {
1539
- "semver": "bin/semver.js"
1540
- }
1541
- },
1542
- "node_modules/@babel/plugin-transform-shorthand-properties": {
1543
- "version": "7.16.7",
1544
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz",
1545
- "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==",
1546
- "dependencies": {
1547
- "@babel/helper-plugin-utils": "^7.16.7"
1548
- },
1549
- "engines": {
1550
- "node": ">=6.9.0"
1551
- },
1552
- "peerDependencies": {
1553
- "@babel/core": "^7.0.0-0"
1554
- }
1555
- },
1556
- "node_modules/@babel/plugin-transform-spread": {
1557
- "version": "7.16.7",
1558
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz",
1559
- "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==",
1560
- "dependencies": {
1561
- "@babel/helper-plugin-utils": "^7.16.7",
1562
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0"
1563
- },
1564
- "engines": {
1565
- "node": ">=6.9.0"
1566
- },
1567
- "peerDependencies": {
1568
- "@babel/core": "^7.0.0-0"
1569
- }
1570
- },
1571
- "node_modules/@babel/plugin-transform-sticky-regex": {
1572
- "version": "7.16.7",
1573
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz",
1574
- "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==",
1575
- "dependencies": {
1576
- "@babel/helper-plugin-utils": "^7.16.7"
1577
- },
1578
- "engines": {
1579
- "node": ">=6.9.0"
1580
- },
1581
- "peerDependencies": {
1582
- "@babel/core": "^7.0.0-0"
1583
- }
1584
- },
1585
- "node_modules/@babel/plugin-transform-template-literals": {
1586
- "version": "7.16.7",
1587
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz",
1588
- "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==",
1589
- "dependencies": {
1590
- "@babel/helper-plugin-utils": "^7.16.7"
1591
- },
1592
- "engines": {
1593
- "node": ">=6.9.0"
1594
- },
1595
- "peerDependencies": {
1596
- "@babel/core": "^7.0.0-0"
1597
- }
1598
- },
1599
- "node_modules/@babel/plugin-transform-typeof-symbol": {
1600
- "version": "7.16.7",
1601
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz",
1602
- "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==",
1603
- "dependencies": {
1604
- "@babel/helper-plugin-utils": "^7.16.7"
1605
- },
1606
- "engines": {
1607
- "node": ">=6.9.0"
1608
- },
1609
- "peerDependencies": {
1610
- "@babel/core": "^7.0.0-0"
1611
- }
1612
- },
1613
- "node_modules/@babel/plugin-transform-typescript": {
1614
- "version": "7.16.8",
1615
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz",
1616
- "integrity": "sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==",
1617
- "dependencies": {
1618
- "@babel/helper-create-class-features-plugin": "^7.16.7",
1619
- "@babel/helper-plugin-utils": "^7.16.7",
1620
- "@babel/plugin-syntax-typescript": "^7.16.7"
1621
- },
1622
- "engines": {
1623
- "node": ">=6.9.0"
1624
- },
1625
- "peerDependencies": {
1626
- "@babel/core": "^7.0.0-0"
1627
- }
1628
- },
1629
- "node_modules/@babel/plugin-transform-unicode-escapes": {
1630
- "version": "7.16.7",
1631
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz",
1632
- "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==",
1633
- "dependencies": {
1634
- "@babel/helper-plugin-utils": "^7.16.7"
1635
- },
1636
- "engines": {
1637
- "node": ">=6.9.0"
1638
- },
1639
- "peerDependencies": {
1640
- "@babel/core": "^7.0.0-0"
1641
- }
1642
- },
1643
- "node_modules/@babel/plugin-transform-unicode-regex": {
1644
- "version": "7.16.7",
1645
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz",
1646
- "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==",
1647
- "dependencies": {
1648
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
1649
- "@babel/helper-plugin-utils": "^7.16.7"
1650
- },
1651
- "engines": {
1652
- "node": ">=6.9.0"
1653
- },
1654
- "peerDependencies": {
1655
- "@babel/core": "^7.0.0-0"
1656
- }
1657
- },
1658
- "node_modules/@babel/preset-env": {
1659
- "version": "7.16.10",
1660
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.10.tgz",
1661
- "integrity": "sha512-iCac3fZn9oOcLqc1N2/copPiX7aoxzsvjeDdXoZobrlbQ6YGgS3bL9HyldOJ8V8AY5P7pFynCATrn7M4dMw0Yg==",
1662
- "dependencies": {
1663
- "@babel/compat-data": "^7.16.8",
1664
- "@babel/helper-compilation-targets": "^7.16.7",
1665
- "@babel/helper-plugin-utils": "^7.16.7",
1666
- "@babel/helper-validator-option": "^7.16.7",
1667
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7",
1668
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7",
1669
- "@babel/plugin-proposal-async-generator-functions": "^7.16.8",
1670
- "@babel/plugin-proposal-class-properties": "^7.16.7",
1671
- "@babel/plugin-proposal-class-static-block": "^7.16.7",
1672
- "@babel/plugin-proposal-dynamic-import": "^7.16.7",
1673
- "@babel/plugin-proposal-export-namespace-from": "^7.16.7",
1674
- "@babel/plugin-proposal-json-strings": "^7.16.7",
1675
- "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7",
1676
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7",
1677
- "@babel/plugin-proposal-numeric-separator": "^7.16.7",
1678
- "@babel/plugin-proposal-object-rest-spread": "^7.16.7",
1679
- "@babel/plugin-proposal-optional-catch-binding": "^7.16.7",
1680
- "@babel/plugin-proposal-optional-chaining": "^7.16.7",
1681
- "@babel/plugin-proposal-private-methods": "^7.16.7",
1682
- "@babel/plugin-proposal-private-property-in-object": "^7.16.7",
1683
- "@babel/plugin-proposal-unicode-property-regex": "^7.16.7",
1684
- "@babel/plugin-syntax-async-generators": "^7.8.4",
1685
- "@babel/plugin-syntax-class-properties": "^7.12.13",
1686
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
1687
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
1688
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
1689
- "@babel/plugin-syntax-json-strings": "^7.8.3",
1690
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
1691
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
1692
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
1693
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
1694
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
1695
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
1696
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
1697
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
1698
- "@babel/plugin-transform-arrow-functions": "^7.16.7",
1699
- "@babel/plugin-transform-async-to-generator": "^7.16.8",
1700
- "@babel/plugin-transform-block-scoped-functions": "^7.16.7",
1701
- "@babel/plugin-transform-block-scoping": "^7.16.7",
1702
- "@babel/plugin-transform-classes": "^7.16.7",
1703
- "@babel/plugin-transform-computed-properties": "^7.16.7",
1704
- "@babel/plugin-transform-destructuring": "^7.16.7",
1705
- "@babel/plugin-transform-dotall-regex": "^7.16.7",
1706
- "@babel/plugin-transform-duplicate-keys": "^7.16.7",
1707
- "@babel/plugin-transform-exponentiation-operator": "^7.16.7",
1708
- "@babel/plugin-transform-for-of": "^7.16.7",
1709
- "@babel/plugin-transform-function-name": "^7.16.7",
1710
- "@babel/plugin-transform-literals": "^7.16.7",
1711
- "@babel/plugin-transform-member-expression-literals": "^7.16.7",
1712
- "@babel/plugin-transform-modules-amd": "^7.16.7",
1713
- "@babel/plugin-transform-modules-commonjs": "^7.16.8",
1714
- "@babel/plugin-transform-modules-systemjs": "^7.16.7",
1715
- "@babel/plugin-transform-modules-umd": "^7.16.7",
1716
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8",
1717
- "@babel/plugin-transform-new-target": "^7.16.7",
1718
- "@babel/plugin-transform-object-super": "^7.16.7",
1719
- "@babel/plugin-transform-parameters": "^7.16.7",
1720
- "@babel/plugin-transform-property-literals": "^7.16.7",
1721
- "@babel/plugin-transform-regenerator": "^7.16.7",
1722
- "@babel/plugin-transform-reserved-words": "^7.16.7",
1723
- "@babel/plugin-transform-shorthand-properties": "^7.16.7",
1724
- "@babel/plugin-transform-spread": "^7.16.7",
1725
- "@babel/plugin-transform-sticky-regex": "^7.16.7",
1726
- "@babel/plugin-transform-template-literals": "^7.16.7",
1727
- "@babel/plugin-transform-typeof-symbol": "^7.16.7",
1728
- "@babel/plugin-transform-unicode-escapes": "^7.16.7",
1729
- "@babel/plugin-transform-unicode-regex": "^7.16.7",
1730
- "@babel/preset-modules": "^0.1.5",
1731
- "@babel/types": "^7.16.8",
1732
- "babel-plugin-polyfill-corejs2": "^0.3.0",
1733
- "babel-plugin-polyfill-corejs3": "^0.5.0",
1734
- "babel-plugin-polyfill-regenerator": "^0.3.0",
1735
- "core-js-compat": "^3.20.2",
1736
- "semver": "^6.3.0"
1737
- },
1738
- "engines": {
1739
- "node": ">=6.9.0"
1740
- },
1741
- "peerDependencies": {
1742
- "@babel/core": "^7.0.0-0"
1743
- }
1744
- },
1745
- "node_modules/@babel/preset-env/node_modules/semver": {
1746
- "version": "6.3.0",
1747
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1748
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1749
- "bin": {
1750
- "semver": "bin/semver.js"
1751
- }
1752
- },
1753
- "node_modules/@babel/preset-modules": {
1754
- "version": "0.1.5",
1755
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz",
1756
- "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==",
1757
- "dependencies": {
1758
- "@babel/helper-plugin-utils": "^7.0.0",
1759
- "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
1760
- "@babel/plugin-transform-dotall-regex": "^7.4.4",
1761
- "@babel/types": "^7.4.4",
1762
- "esutils": "^2.0.2"
1763
- },
1764
- "peerDependencies": {
1765
- "@babel/core": "^7.0.0-0"
1766
- }
1767
- },
1768
- "node_modules/@babel/preset-react": {
1769
- "version": "7.16.7",
1770
- "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.16.7.tgz",
1771
- "integrity": "sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==",
1772
- "dependencies": {
1773
- "@babel/helper-plugin-utils": "^7.16.7",
1774
- "@babel/helper-validator-option": "^7.16.7",
1775
- "@babel/plugin-transform-react-display-name": "^7.16.7",
1776
- "@babel/plugin-transform-react-jsx": "^7.16.7",
1777
- "@babel/plugin-transform-react-jsx-development": "^7.16.7",
1778
- "@babel/plugin-transform-react-pure-annotations": "^7.16.7"
1779
- },
1780
- "engines": {
1781
- "node": ">=6.9.0"
1782
- },
1783
- "peerDependencies": {
1784
- "@babel/core": "^7.0.0-0"
1785
- }
1786
- },
1787
- "node_modules/@babel/preset-typescript": {
1788
- "version": "7.16.7",
1789
- "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.16.7.tgz",
1790
- "integrity": "sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==",
1791
- "dependencies": {
1792
- "@babel/helper-plugin-utils": "^7.16.7",
1793
- "@babel/helper-validator-option": "^7.16.7",
1794
- "@babel/plugin-transform-typescript": "^7.16.7"
1795
- },
1796
- "engines": {
1797
- "node": ">=6.9.0"
1798
- },
1799
- "peerDependencies": {
1800
- "@babel/core": "^7.0.0-0"
1801
- }
1802
- },
1803
- "node_modules/@babel/runtime": {
1804
- "version": "7.22.6",
1805
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz",
1806
- "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==",
1807
- "dependencies": {
1808
- "regenerator-runtime": "^0.13.11"
1809
- },
1810
- "engines": {
1811
- "node": ">=6.9.0"
1812
- }
1813
- },
1814
- "node_modules/@babel/template": {
1815
- "version": "7.22.5",
1816
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz",
1817
- "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==",
1818
- "dependencies": {
1819
- "@babel/code-frame": "^7.22.5",
1820
- "@babel/parser": "^7.22.5",
1821
- "@babel/types": "^7.22.5"
1822
- },
1823
- "engines": {
1824
- "node": ">=6.9.0"
1825
- }
1826
- },
1827
- "node_modules/@babel/template/node_modules/@babel/code-frame": {
1828
- "version": "7.22.5",
1829
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz",
1830
- "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",
1831
- "dependencies": {
1832
- "@babel/highlight": "^7.22.5"
1833
- },
1834
- "engines": {
1835
- "node": ">=6.9.0"
1836
- }
1837
- },
1838
- "node_modules/@babel/traverse": {
1839
- "version": "7.22.8",
1840
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz",
1841
- "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==",
1842
- "dependencies": {
1843
- "@babel/code-frame": "^7.22.5",
1844
- "@babel/generator": "^7.22.7",
1845
- "@babel/helper-environment-visitor": "^7.22.5",
1846
- "@babel/helper-function-name": "^7.22.5",
1847
- "@babel/helper-hoist-variables": "^7.22.5",
1848
- "@babel/helper-split-export-declaration": "^7.22.6",
1849
- "@babel/parser": "^7.22.7",
1850
- "@babel/types": "^7.22.5",
1851
- "debug": "^4.1.0",
1852
- "globals": "^11.1.0"
1853
- },
1854
- "engines": {
1855
- "node": ">=6.9.0"
1856
- }
1857
- },
1858
- "node_modules/@babel/traverse/node_modules/@babel/code-frame": {
1859
- "version": "7.22.5",
1860
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz",
1861
- "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",
1862
- "dependencies": {
1863
- "@babel/highlight": "^7.22.5"
1864
- },
1865
- "engines": {
1866
- "node": ">=6.9.0"
1867
- }
1868
- },
1869
- "node_modules/@babel/types": {
1870
- "version": "7.22.5",
1871
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz",
1872
- "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==",
1873
- "dependencies": {
1874
- "@babel/helper-string-parser": "^7.22.5",
1875
- "@babel/helper-validator-identifier": "^7.22.5",
1876
- "to-fast-properties": "^2.0.0"
1877
- },
1878
- "engines": {
1879
- "node": ">=6.9.0"
1880
- }
1881
- },
1882
- "node_modules/@bcoe/v8-coverage": {
1883
- "version": "0.2.3",
1884
- "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
1885
- "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="
1886
- },
1887
- "node_modules/@csstools/normalize.css": {
1888
- "version": "12.0.0",
1889
- "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.0.0.tgz",
1890
- "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg=="
1891
- },
1892
- "node_modules/@csstools/postcss-cascade-layers": {
1893
- "version": "1.1.1",
1894
- "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz",
1895
- "integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==",
1896
- "dependencies": {
1897
- "@csstools/selector-specificity": "^2.0.2",
1898
- "postcss-selector-parser": "^6.0.10"
1899
- },
1900
- "engines": {
1901
- "node": "^12 || ^14 || >=16"
1902
- },
1903
- "funding": {
1904
- "type": "opencollective",
1905
- "url": "https://opencollective.com/csstools"
1906
- },
1907
- "peerDependencies": {
1908
- "postcss": "^8.2"
1909
- }
1910
- },
1911
- "node_modules/@csstools/postcss-color-function": {
1912
- "version": "1.1.1",
1913
- "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz",
1914
- "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==",
1915
- "dependencies": {
1916
- "@csstools/postcss-progressive-custom-properties": "^1.1.0",
1917
- "postcss-value-parser": "^4.2.0"
1918
- },
1919
- "engines": {
1920
- "node": "^12 || ^14 || >=16"
1921
- },
1922
- "funding": {
1923
- "type": "opencollective",
1924
- "url": "https://opencollective.com/csstools"
1925
- },
1926
- "peerDependencies": {
1927
- "postcss": "^8.2"
1928
- }
1929
- },
1930
- "node_modules/@csstools/postcss-font-format-keywords": {
1931
- "version": "1.0.1",
1932
- "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz",
1933
- "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==",
1934
- "dependencies": {
1935
- "postcss-value-parser": "^4.2.0"
1936
- },
1937
- "engines": {
1938
- "node": "^12 || ^14 || >=16"
1939
- },
1940
- "funding": {
1941
- "type": "opencollective",
1942
- "url": "https://opencollective.com/csstools"
1943
- },
1944
- "peerDependencies": {
1945
- "postcss": "^8.2"
1946
- }
1947
- },
1948
- "node_modules/@csstools/postcss-hwb-function": {
1949
- "version": "1.0.2",
1950
- "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz",
1951
- "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==",
1952
- "dependencies": {
1953
- "postcss-value-parser": "^4.2.0"
1954
- },
1955
- "engines": {
1956
- "node": "^12 || ^14 || >=16"
1957
- },
1958
- "funding": {
1959
- "type": "opencollective",
1960
- "url": "https://opencollective.com/csstools"
1961
- },
1962
- "peerDependencies": {
1963
- "postcss": "^8.2"
1964
- }
1965
- },
1966
- "node_modules/@csstools/postcss-ic-unit": {
1967
- "version": "1.0.1",
1968
- "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz",
1969
- "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==",
1970
- "dependencies": {
1971
- "@csstools/postcss-progressive-custom-properties": "^1.1.0",
1972
- "postcss-value-parser": "^4.2.0"
1973
- },
1974
- "engines": {
1975
- "node": "^12 || ^14 || >=16"
1976
- },
1977
- "funding": {
1978
- "type": "opencollective",
1979
- "url": "https://opencollective.com/csstools"
1980
- },
1981
- "peerDependencies": {
1982
- "postcss": "^8.2"
1983
- }
1984
- },
1985
- "node_modules/@csstools/postcss-is-pseudo-class": {
1986
- "version": "2.0.7",
1987
- "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz",
1988
- "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==",
1989
- "dependencies": {
1990
- "@csstools/selector-specificity": "^2.0.0",
1991
- "postcss-selector-parser": "^6.0.10"
1992
- },
1993
- "engines": {
1994
- "node": "^12 || ^14 || >=16"
1995
- },
1996
- "funding": {
1997
- "type": "opencollective",
1998
- "url": "https://opencollective.com/csstools"
1999
- },
2000
- "peerDependencies": {
2001
- "postcss": "^8.2"
2002
- }
2003
- },
2004
- "node_modules/@csstools/postcss-nested-calc": {
2005
- "version": "1.0.0",
2006
- "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz",
2007
- "integrity": "sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==",
2008
- "dependencies": {
2009
- "postcss-value-parser": "^4.2.0"
2010
- },
2011
- "engines": {
2012
- "node": "^12 || ^14 || >=16"
2013
- },
2014
- "funding": {
2015
- "type": "opencollective",
2016
- "url": "https://opencollective.com/csstools"
2017
- },
2018
- "peerDependencies": {
2019
- "postcss": "^8.2"
2020
- }
2021
- },
2022
- "node_modules/@csstools/postcss-normalize-display-values": {
2023
- "version": "1.0.1",
2024
- "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz",
2025
- "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==",
2026
- "dependencies": {
2027
- "postcss-value-parser": "^4.2.0"
2028
- },
2029
- "engines": {
2030
- "node": "^12 || ^14 || >=16"
2031
- },
2032
- "funding": {
2033
- "type": "opencollective",
2034
- "url": "https://opencollective.com/csstools"
2035
- },
2036
- "peerDependencies": {
2037
- "postcss": "^8.2"
2038
- }
2039
- },
2040
- "node_modules/@csstools/postcss-oklab-function": {
2041
- "version": "1.1.1",
2042
- "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz",
2043
- "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==",
2044
- "dependencies": {
2045
- "@csstools/postcss-progressive-custom-properties": "^1.1.0",
2046
- "postcss-value-parser": "^4.2.0"
2047
- },
2048
- "engines": {
2049
- "node": "^12 || ^14 || >=16"
2050
- },
2051
- "funding": {
2052
- "type": "opencollective",
2053
- "url": "https://opencollective.com/csstools"
2054
- },
2055
- "peerDependencies": {
2056
- "postcss": "^8.2"
2057
- }
2058
- },
2059
- "node_modules/@csstools/postcss-progressive-custom-properties": {
2060
- "version": "1.3.0",
2061
- "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz",
2062
- "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==",
2063
- "dependencies": {
2064
- "postcss-value-parser": "^4.2.0"
2065
- },
2066
- "engines": {
2067
- "node": "^12 || ^14 || >=16"
2068
- },
2069
- "peerDependencies": {
2070
- "postcss": "^8.3"
2071
- }
2072
- },
2073
- "node_modules/@csstools/postcss-stepped-value-functions": {
2074
- "version": "1.0.1",
2075
- "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz",
2076
- "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==",
2077
- "dependencies": {
2078
- "postcss-value-parser": "^4.2.0"
2079
- },
2080
- "engines": {
2081
- "node": "^12 || ^14 || >=16"
2082
- },
2083
- "funding": {
2084
- "type": "opencollective",
2085
- "url": "https://opencollective.com/csstools"
2086
- },
2087
- "peerDependencies": {
2088
- "postcss": "^8.2"
2089
- }
2090
- },
2091
- "node_modules/@csstools/postcss-text-decoration-shorthand": {
2092
- "version": "1.0.0",
2093
- "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz",
2094
- "integrity": "sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==",
2095
- "dependencies": {
2096
- "postcss-value-parser": "^4.2.0"
2097
- },
2098
- "engines": {
2099
- "node": "^12 || ^14 || >=16"
2100
- },
2101
- "funding": {
2102
- "type": "opencollective",
2103
- "url": "https://opencollective.com/csstools"
2104
- },
2105
- "peerDependencies": {
2106
- "postcss": "^8.2"
2107
- }
2108
- },
2109
- "node_modules/@csstools/postcss-trigonometric-functions": {
2110
- "version": "1.0.2",
2111
- "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz",
2112
- "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==",
2113
- "dependencies": {
2114
- "postcss-value-parser": "^4.2.0"
2115
- },
2116
- "engines": {
2117
- "node": "^14 || >=16"
2118
- },
2119
- "funding": {
2120
- "type": "opencollective",
2121
- "url": "https://opencollective.com/csstools"
2122
- },
2123
- "peerDependencies": {
2124
- "postcss": "^8.2"
2125
- }
2126
- },
2127
- "node_modules/@csstools/postcss-unset-value": {
2128
- "version": "1.0.2",
2129
- "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz",
2130
- "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==",
2131
- "engines": {
2132
- "node": "^12 || ^14 || >=16"
2133
- },
2134
- "funding": {
2135
- "type": "opencollective",
2136
- "url": "https://opencollective.com/csstools"
2137
- },
2138
- "peerDependencies": {
2139
- "postcss": "^8.2"
2140
- }
2141
- },
2142
- "node_modules/@csstools/selector-specificity": {
2143
- "version": "2.2.0",
2144
- "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz",
2145
- "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==",
2146
- "engines": {
2147
- "node": "^14 || ^16 || >=18"
2148
- },
2149
- "funding": {
2150
- "type": "opencollective",
2151
- "url": "https://opencollective.com/csstools"
2152
- },
2153
- "peerDependencies": {
2154
- "postcss-selector-parser": "^6.0.10"
2155
- }
2156
- },
2157
- "node_modules/@eslint-community/eslint-utils": {
2158
- "version": "4.4.0",
2159
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
2160
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
2161
- "dependencies": {
2162
- "eslint-visitor-keys": "^3.3.0"
2163
- },
2164
- "engines": {
2165
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
2166
- },
2167
- "peerDependencies": {
2168
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
2169
- }
2170
- },
2171
- "node_modules/@eslint-community/regexpp": {
2172
- "version": "4.6.2",
2173
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz",
2174
- "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==",
2175
- "engines": {
2176
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
2177
- }
2178
- },
2179
- "node_modules/@eslint/eslintrc": {
2180
- "version": "2.1.1",
2181
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz",
2182
- "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==",
2183
- "dependencies": {
2184
- "ajv": "^6.12.4",
2185
- "debug": "^4.3.2",
2186
- "espree": "^9.6.0",
2187
- "globals": "^13.19.0",
2188
- "ignore": "^5.2.0",
2189
- "import-fresh": "^3.2.1",
2190
- "js-yaml": "^4.1.0",
2191
- "minimatch": "^3.1.2",
2192
- "strip-json-comments": "^3.1.1"
2193
- },
2194
- "engines": {
2195
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
2196
- },
2197
- "funding": {
2198
- "url": "https://opencollective.com/eslint"
2199
- }
2200
- },
2201
- "node_modules/@eslint/eslintrc/node_modules/argparse": {
2202
- "version": "2.0.1",
2203
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
2204
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
2205
- },
2206
- "node_modules/@eslint/eslintrc/node_modules/globals": {
2207
- "version": "13.20.0",
2208
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
2209
- "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
2210
- "dependencies": {
2211
- "type-fest": "^0.20.2"
2212
- },
2213
- "engines": {
2214
- "node": ">=8"
2215
- },
2216
- "funding": {
2217
- "url": "https://github.com/sponsors/sindresorhus"
2218
- }
2219
- },
2220
- "node_modules/@eslint/eslintrc/node_modules/js-yaml": {
2221
- "version": "4.1.0",
2222
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
2223
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
2224
- "dependencies": {
2225
- "argparse": "^2.0.1"
2226
- },
2227
- "bin": {
2228
- "js-yaml": "bin/js-yaml.js"
2229
- }
2230
- },
2231
- "node_modules/@eslint/eslintrc/node_modules/type-fest": {
2232
- "version": "0.20.2",
2233
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
2234
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
2235
- "engines": {
2236
- "node": ">=10"
2237
- },
2238
- "funding": {
2239
- "url": "https://github.com/sponsors/sindresorhus"
2240
- }
2241
- },
2242
- "node_modules/@eslint/js": {
2243
- "version": "8.46.0",
2244
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz",
2245
- "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==",
2246
- "engines": {
2247
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
2248
- }
2249
- },
2250
- "node_modules/@firebase/analytics": {
2251
- "version": "0.6.18",
2252
- "resolved": "https://registry.npmjs.org/@firebase/analytics/-/analytics-0.6.18.tgz",
2253
- "integrity": "sha512-FXNtYDxbs9ynPbzUVuG94BjFPOPpgJ7156660uvCBuKgoBCIVcNqKkJQQ7TH8384fqvGjbjdcgARY9jgAHbtog==",
2254
- "dependencies": {
2255
- "@firebase/analytics-types": "0.6.0",
2256
- "@firebase/component": "0.5.6",
2257
- "@firebase/installations": "0.4.32",
2258
- "@firebase/logger": "0.2.6",
2259
- "@firebase/util": "1.3.0",
2260
- "tslib": "^2.1.0"
2261
- },
2262
- "peerDependencies": {
2263
- "@firebase/app": "0.x",
2264
- "@firebase/app-types": "0.x"
2265
- }
2266
- },
2267
- "node_modules/@firebase/analytics-types": {
2268
- "version": "0.6.0",
2269
- "resolved": "https://registry.npmjs.org/@firebase/analytics-types/-/analytics-types-0.6.0.tgz",
2270
- "integrity": "sha512-kbMawY0WRPyL/lbknBkme4CNLl+Gw+E9G4OpNeXAauqoQiNkBgpIvZYy7BRT4sNGhZbxdxXxXbruqUwDzLmvTw=="
2271
- },
2272
- "node_modules/@firebase/app": {
2273
- "version": "0.6.30",
2274
- "resolved": "https://registry.npmjs.org/@firebase/app/-/app-0.6.30.tgz",
2275
- "integrity": "sha512-uAYEDXyK0mmpZ8hWQj5TNd7WVvfsU8PgsqKpGljbFBG/HhsH8KbcykWAAA+c1PqL7dt/dbt0Reh1y9zEdYzMhg==",
2276
- "dependencies": {
2277
- "@firebase/app-types": "0.6.3",
2278
- "@firebase/component": "0.5.6",
2279
- "@firebase/logger": "0.2.6",
2280
- "@firebase/util": "1.3.0",
2281
- "dom-storage": "2.1.0",
2282
- "tslib": "^2.1.0",
2283
- "xmlhttprequest": "1.8.0"
2284
- }
2285
- },
2286
- "node_modules/@firebase/app-check": {
2287
- "version": "0.3.2",
2288
- "resolved": "https://registry.npmjs.org/@firebase/app-check/-/app-check-0.3.2.tgz",
2289
- "integrity": "sha512-YjpsnV1xVTO1B836IKijRcDeceLgHQNJ/DWa+Vky9UHkm1Mi4qosddX8LZzldaWRTWKX7BN1MbZOLY8r7M/MZQ==",
2290
- "dependencies": {
2291
- "@firebase/app-check-interop-types": "0.1.0",
2292
- "@firebase/app-check-types": "0.3.1",
2293
- "@firebase/component": "0.5.6",
2294
- "@firebase/logger": "0.2.6",
2295
- "@firebase/util": "1.3.0",
2296
- "tslib": "^2.1.0"
2297
- },
2298
- "peerDependencies": {
2299
- "@firebase/app": "0.x",
2300
- "@firebase/app-types": "0.x"
2301
- }
2302
- },
2303
- "node_modules/@firebase/app-check-interop-types": {
2304
- "version": "0.1.0",
2305
- "resolved": "https://registry.npmjs.org/@firebase/app-check-interop-types/-/app-check-interop-types-0.1.0.tgz",
2306
- "integrity": "sha512-uZfn9s4uuRsaX5Lwx+gFP3B6YsyOKUE+Rqa6z9ojT4VSRAsZFko9FRn6OxQUA1z5t5d08fY4pf+/+Dkd5wbdbA=="
2307
- },
2308
- "node_modules/@firebase/app-check-types": {
2309
- "version": "0.3.1",
2310
- "resolved": "https://registry.npmjs.org/@firebase/app-check-types/-/app-check-types-0.3.1.tgz",
2311
- "integrity": "sha512-KJ+BqJbdNsx4QT/JIT1yDj5p6D+QN97iJs3GuHnORrqL+DU3RWc9nSYQsrY6Tv9jVWcOkMENXAgDT484vzsm2w=="
2312
- },
2313
- "node_modules/@firebase/app-types": {
2314
- "version": "0.6.3",
2315
- "resolved": "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.6.3.tgz",
2316
- "integrity": "sha512-/M13DPPati7FQHEQ9Minjk1HGLm/4K4gs9bR4rzLCWJg64yGtVC0zNg9gDpkw9yc2cvol/mNFxqTtd4geGrwdw=="
2317
- },
2318
- "node_modules/@firebase/auth": {
2319
- "version": "0.16.8",
2320
- "resolved": "https://registry.npmjs.org/@firebase/auth/-/auth-0.16.8.tgz",
2321
- "integrity": "sha512-mR0UXG4LirWIfOiCWxVmvz1o23BuKGxeItQ2cCUgXLTjNtWJXdcky/356iTUsd7ZV5A78s2NHeN5tIDDG6H4rg==",
2322
- "dependencies": {
2323
- "@firebase/auth-types": "0.10.3"
2324
- },
2325
- "peerDependencies": {
2326
- "@firebase/app": "0.x"
2327
- }
2328
- },
2329
- "node_modules/@firebase/auth-interop-types": {
2330
- "version": "0.1.6",
2331
- "resolved": "https://registry.npmjs.org/@firebase/auth-interop-types/-/auth-interop-types-0.1.6.tgz",
2332
- "integrity": "sha512-etIi92fW3CctsmR9e3sYM3Uqnoq861M0Id9mdOPF6PWIg38BXL5k4upCNBggGUpLIS0H1grMOvy/wn1xymwe2g==",
2333
- "peerDependencies": {
2334
- "@firebase/app-types": "0.x",
2335
- "@firebase/util": "1.x"
2336
- }
2337
- },
2338
- "node_modules/@firebase/auth-types": {
2339
- "version": "0.10.3",
2340
- "resolved": "https://registry.npmjs.org/@firebase/auth-types/-/auth-types-0.10.3.tgz",
2341
- "integrity": "sha512-zExrThRqyqGUbXOFrH/sowuh2rRtfKHp9SBVY2vOqKWdCX1Ztn682n9WLtlUDsiYVIbBcwautYWk2HyCGFv0OA==",
2342
- "peerDependencies": {
2343
- "@firebase/app-types": "0.x",
2344
- "@firebase/util": "1.x"
2345
- }
2346
- },
2347
- "node_modules/@firebase/component": {
2348
- "version": "0.5.6",
2349
- "resolved": "https://registry.npmjs.org/@firebase/component/-/component-0.5.6.tgz",
2350
- "integrity": "sha512-GyQJ+2lrhsDqeGgd1VdS7W+Y6gNYyI0B51ovNTxeZVG/W8I7t9MwEiCWsCvfm5wQgfsKp9dkzOcJrL5k8oVO/Q==",
2351
- "dependencies": {
2352
- "@firebase/util": "1.3.0",
2353
- "tslib": "^2.1.0"
2354
- }
2355
- },
2356
- "node_modules/@firebase/database": {
2357
- "version": "0.11.0",
2358
- "resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.11.0.tgz",
2359
- "integrity": "sha512-b/kwvCubr6G9coPlo48PbieBDln7ViFBHOGeVt/bt82yuv5jYZBEYAac/mtOVSxpf14aMo/tAN+Edl6SWqXApw==",
2360
- "dependencies": {
2361
- "@firebase/auth-interop-types": "0.1.6",
2362
- "@firebase/component": "0.5.6",
2363
- "@firebase/database-types": "0.8.0",
2364
- "@firebase/logger": "0.2.6",
2365
- "@firebase/util": "1.3.0",
2366
- "faye-websocket": "0.11.3",
2367
- "tslib": "^2.1.0"
2368
- }
2369
- },
2370
- "node_modules/@firebase/database-types": {
2371
- "version": "0.8.0",
2372
- "resolved": "https://registry.npmjs.org/@firebase/database-types/-/database-types-0.8.0.tgz",
2373
- "integrity": "sha512-7IdjAFRfPWyG3b4wcXyghb3Y1CLCSJFZIg1xl5GbTVMttSQFT4B5NYdhsfA34JwAsv5pMzPpjOaS3/K9XJ2KiA==",
2374
- "dependencies": {
2375
- "@firebase/app-types": "0.6.3",
2376
- "@firebase/util": "1.3.0"
2377
- }
2378
- },
2379
- "node_modules/@firebase/firestore": {
2380
- "version": "2.4.0",
2381
- "resolved": "https://registry.npmjs.org/@firebase/firestore/-/firestore-2.4.0.tgz",
2382
- "integrity": "sha512-PQ6+lWNrvh74GvFTHT4gCutFipDmtu8D1tNNawKe+/SyL6XFgeuMYgZIpKQgkTSezVDogC7EGQTJBFnewF9pOg==",
2383
- "dependencies": {
2384
- "@firebase/component": "0.5.6",
2385
- "@firebase/firestore-types": "2.4.0",
2386
- "@firebase/logger": "0.2.6",
2387
- "@firebase/util": "1.3.0",
2388
- "@firebase/webchannel-wrapper": "0.5.1",
2389
- "@grpc/grpc-js": "^1.3.2",
2390
- "@grpc/proto-loader": "^0.6.0",
2391
- "node-fetch": "2.6.1",
2392
- "tslib": "^2.1.0"
2393
- },
2394
- "engines": {
2395
- "node": "^8.13.0 || >=10.10.0"
2396
- },
2397
- "peerDependencies": {
2398
- "@firebase/app": "0.x",
2399
- "@firebase/app-types": "0.x"
2400
- }
2401
- },
2402
- "node_modules/@firebase/firestore-types": {
2403
- "version": "2.4.0",
2404
- "resolved": "https://registry.npmjs.org/@firebase/firestore-types/-/firestore-types-2.4.0.tgz",
2405
- "integrity": "sha512-0dgwfuNP7EN6/OlK2HSNSQiQNGLGaRBH0gvgr1ngtKKJuJFuq0Z48RBMeJX9CGjV4TP9h2KaB+KrUKJ5kh1hMg==",
2406
- "peerDependencies": {
2407
- "@firebase/app-types": "0.x",
2408
- "@firebase/util": "1.x"
2409
- }
2410
- },
2411
- "node_modules/@firebase/functions": {
2412
- "version": "0.6.15",
2413
- "resolved": "https://registry.npmjs.org/@firebase/functions/-/functions-0.6.15.tgz",
2414
- "integrity": "sha512-b7RpLwFXi0N+HgkfK8cmkarSOoBeSrc1jNdadkCacQt+vIePkKM3E9EJXF4roWSa8GwTruodpBsvH+lK9iCAKQ==",
2415
- "dependencies": {
2416
- "@firebase/component": "0.5.6",
2417
- "@firebase/functions-types": "0.4.0",
2418
- "@firebase/messaging-types": "0.5.0",
2419
- "node-fetch": "2.6.1",
2420
- "tslib": "^2.1.0"
2421
- },
2422
- "peerDependencies": {
2423
- "@firebase/app": "0.x",
2424
- "@firebase/app-types": "0.x"
2425
- }
2426
- },
2427
- "node_modules/@firebase/functions-types": {
2428
- "version": "0.4.0",
2429
- "resolved": "https://registry.npmjs.org/@firebase/functions-types/-/functions-types-0.4.0.tgz",
2430
- "integrity": "sha512-3KElyO3887HNxtxNF1ytGFrNmqD+hheqjwmT3sI09FaDCuaxGbOnsXAXH2eQ049XRXw9YQpHMgYws/aUNgXVyQ=="
2431
- },
2432
- "node_modules/@firebase/installations": {
2433
- "version": "0.4.32",
2434
- "resolved": "https://registry.npmjs.org/@firebase/installations/-/installations-0.4.32.tgz",
2435
- "integrity": "sha512-K4UlED1Vrhd2rFQQJih+OgEj8OTtrtH4+Izkx7ip2bhXSc+unk8ZhnF69D0kmh7zjXAqEDJrmHs9O5fI3rV6Tw==",
2436
- "dependencies": {
2437
- "@firebase/component": "0.5.6",
2438
- "@firebase/installations-types": "0.3.4",
2439
- "@firebase/util": "1.3.0",
2440
- "idb": "3.0.2",
2441
- "tslib": "^2.1.0"
2442
- },
2443
- "peerDependencies": {
2444
- "@firebase/app": "0.x",
2445
- "@firebase/app-types": "0.x"
2446
- }
2447
- },
2448
- "node_modules/@firebase/installations-types": {
2449
- "version": "0.3.4",
2450
- "resolved": "https://registry.npmjs.org/@firebase/installations-types/-/installations-types-0.3.4.tgz",
2451
- "integrity": "sha512-RfePJFovmdIXb6rYwtngyxuEcWnOrzdZd9m7xAW0gRxDIjBT20n3BOhjpmgRWXo/DAxRmS7bRjWAyTHY9cqN7Q==",
2452
- "peerDependencies": {
2453
- "@firebase/app-types": "0.x"
2454
- }
2455
- },
2456
- "node_modules/@firebase/logger": {
2457
- "version": "0.2.6",
2458
- "resolved": "https://registry.npmjs.org/@firebase/logger/-/logger-0.2.6.tgz",
2459
- "integrity": "sha512-KIxcUvW/cRGWlzK9Vd2KB864HlUnCfdTH0taHE0sXW5Xl7+W68suaeau1oKNEqmc3l45azkd4NzXTCWZRZdXrw=="
2460
- },
2461
- "node_modules/@firebase/messaging": {
2462
- "version": "0.8.0",
2463
- "resolved": "https://registry.npmjs.org/@firebase/messaging/-/messaging-0.8.0.tgz",
2464
- "integrity": "sha512-hkFHDyVe1kMcY9KEG+prjCbvS6MtLUgVFUbbQqq7JQfiv58E07YCzRUcMrJolbNi/1QHH6Jv16DxNWjJB9+/qA==",
2465
- "dependencies": {
2466
- "@firebase/component": "0.5.6",
2467
- "@firebase/installations": "0.4.32",
2468
- "@firebase/messaging-types": "0.5.0",
2469
- "@firebase/util": "1.3.0",
2470
- "idb": "3.0.2",
2471
- "tslib": "^2.1.0"
2472
- },
2473
- "peerDependencies": {
2474
- "@firebase/app": "0.x",
2475
- "@firebase/app-types": "0.x"
2476
- }
2477
- },
2478
- "node_modules/@firebase/messaging-types": {
2479
- "version": "0.5.0",
2480
- "resolved": "https://registry.npmjs.org/@firebase/messaging-types/-/messaging-types-0.5.0.tgz",
2481
- "integrity": "sha512-QaaBswrU6umJYb/ZYvjR5JDSslCGOH6D9P136PhabFAHLTR4TWjsaACvbBXuvwrfCXu10DtcjMxqfhdNIB1Xfg==",
2482
- "peerDependencies": {
2483
- "@firebase/app-types": "0.x"
2484
- }
2485
- },
2486
- "node_modules/@firebase/performance": {
2487
- "version": "0.4.18",
2488
- "resolved": "https://registry.npmjs.org/@firebase/performance/-/performance-0.4.18.tgz",
2489
- "integrity": "sha512-lvZW/TVDne2TyOpWbv++zjRn277HZpbjxbIPfwtnmKjVY1gJ+H77Qi1c2avVIc9hg80uGX/5tNf4pOApNDJLVg==",
2490
- "dependencies": {
2491
- "@firebase/component": "0.5.6",
2492
- "@firebase/installations": "0.4.32",
2493
- "@firebase/logger": "0.2.6",
2494
- "@firebase/performance-types": "0.0.13",
2495
- "@firebase/util": "1.3.0",
2496
- "tslib": "^2.1.0"
2497
- },
2498
- "peerDependencies": {
2499
- "@firebase/app": "0.x",
2500
- "@firebase/app-types": "0.x"
2501
- }
2502
- },
2503
- "node_modules/@firebase/performance-types": {
2504
- "version": "0.0.13",
2505
- "resolved": "https://registry.npmjs.org/@firebase/performance-types/-/performance-types-0.0.13.tgz",
2506
- "integrity": "sha512-6fZfIGjQpwo9S5OzMpPyqgYAUZcFzZxHFqOyNtorDIgNXq33nlldTL/vtaUZA8iT9TT5cJlCrF/jthKU7X21EA=="
2507
- },
2508
- "node_modules/@firebase/polyfill": {
2509
- "version": "0.3.36",
2510
- "resolved": "https://registry.npmjs.org/@firebase/polyfill/-/polyfill-0.3.36.tgz",
2511
- "integrity": "sha512-zMM9oSJgY6cT2jx3Ce9LYqb0eIpDE52meIzd/oe/y70F+v9u1LDqk5kUF5mf16zovGBWMNFmgzlsh6Wj0OsFtg==",
2512
- "dependencies": {
2513
- "core-js": "3.6.5",
2514
- "promise-polyfill": "8.1.3",
2515
- "whatwg-fetch": "2.0.4"
2516
- }
2517
- },
2518
- "node_modules/@firebase/remote-config": {
2519
- "version": "0.1.43",
2520
- "resolved": "https://registry.npmjs.org/@firebase/remote-config/-/remote-config-0.1.43.tgz",
2521
- "integrity": "sha512-laNM4MN0CfeSp7XCVNjYOC4DdV6mj0l2rzUh42x4v2wLTweCoJ/kc1i4oWMX9TI7Jw8Am5Wl71Awn1J2pVe5xA==",
2522
- "dependencies": {
2523
- "@firebase/component": "0.5.6",
2524
- "@firebase/installations": "0.4.32",
2525
- "@firebase/logger": "0.2.6",
2526
- "@firebase/remote-config-types": "0.1.9",
2527
- "@firebase/util": "1.3.0",
2528
- "tslib": "^2.1.0"
2529
- },
2530
- "peerDependencies": {
2531
- "@firebase/app": "0.x",
2532
- "@firebase/app-types": "0.x"
2533
- }
2534
- },
2535
- "node_modules/@firebase/remote-config-types": {
2536
- "version": "0.1.9",
2537
- "resolved": "https://registry.npmjs.org/@firebase/remote-config-types/-/remote-config-types-0.1.9.tgz",
2538
- "integrity": "sha512-G96qnF3RYGbZsTRut7NBX0sxyczxt1uyCgXQuH/eAfUCngxjEGcZQnBdy6mvSdqdJh5mC31rWPO4v9/s7HwtzA=="
2539
- },
2540
- "node_modules/@firebase/storage": {
2541
- "version": "0.7.0",
2542
- "resolved": "https://registry.npmjs.org/@firebase/storage/-/storage-0.7.0.tgz",
2543
- "integrity": "sha512-ebDFKJbM5HOxVtZV+RhVEBVtlWHK+Z5L3kA5uDBA2jMYcn+8NV/crozJnEE+iRsGEco6dLK5JS+Er4qtKLpH5A==",
2544
- "dependencies": {
2545
- "@firebase/component": "0.5.6",
2546
- "@firebase/storage-types": "0.5.0",
2547
- "@firebase/util": "1.3.0",
2548
- "node-fetch": "2.6.1",
2549
- "tslib": "^2.1.0"
2550
- },
2551
- "peerDependencies": {
2552
- "@firebase/app": "0.x",
2553
- "@firebase/app-types": "0.x"
2554
- }
2555
- },
2556
- "node_modules/@firebase/storage-types": {
2557
- "version": "0.5.0",
2558
- "resolved": "https://registry.npmjs.org/@firebase/storage-types/-/storage-types-0.5.0.tgz",
2559
- "integrity": "sha512-6Wv3Lu7s18hsgW7HG4BFwycTquZ3m/C8bjBoOsmPu0TD6M1GKwCzOC7qBdN7L6tRYPh8ipTj5+rPFrmhGfUVKA==",
2560
- "peerDependencies": {
2561
- "@firebase/app-types": "0.x",
2562
- "@firebase/util": "1.x"
2563
- }
2564
- },
2565
- "node_modules/@firebase/util": {
2566
- "version": "1.3.0",
2567
- "resolved": "https://registry.npmjs.org/@firebase/util/-/util-1.3.0.tgz",
2568
- "integrity": "sha512-SESvmYwuKOVCZ1ZxLbberbx+9cnbxpCa4CG2FUSQYqN6Ab8KyltegMDIsqMw5KyIBZ4n1phfHoOa22xo5NzAlQ==",
2569
- "dependencies": {
2570
- "tslib": "^2.1.0"
2571
- }
2572
- },
2573
- "node_modules/@firebase/webchannel-wrapper": {
2574
- "version": "0.5.1",
2575
- "resolved": "https://registry.npmjs.org/@firebase/webchannel-wrapper/-/webchannel-wrapper-0.5.1.tgz",
2576
- "integrity": "sha512-dZMzN0uAjwJXWYYAcnxIwXqRTZw3o14hGe7O6uhwjD1ZQWPVYA5lASgnNskEBra0knVBsOXB4KXg+HnlKewN/A=="
2577
- },
2578
- "node_modules/@grpc/grpc-js": {
2579
- "version": "1.5.2",
2580
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.2.tgz",
2581
- "integrity": "sha512-JlBkWqm2qVtZTg6OQU9g0o9C3jR6Us0TekZlTVCESxq5wUbFUjrW5GijXPDpwLqdmabCRJ0xm9Ayyj+b9T9pow==",
2582
- "dependencies": {
2583
- "@grpc/proto-loader": "^0.6.4",
2584
- "@types/node": ">=12.12.47"
2585
- },
2586
- "engines": {
2587
- "node": "^8.13.0 || >=10.10.0"
2588
- }
2589
- },
2590
- "node_modules/@grpc/proto-loader": {
2591
- "version": "0.6.9",
2592
- "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz",
2593
- "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==",
2594
- "dependencies": {
2595
- "@types/long": "^4.0.1",
2596
- "lodash.camelcase": "^4.3.0",
2597
- "long": "^4.0.0",
2598
- "protobufjs": "^6.10.0",
2599
- "yargs": "^16.2.0"
2600
- },
2601
- "bin": {
2602
- "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js"
2603
- },
2604
- "engines": {
2605
- "node": ">=6"
2606
- }
2607
- },
2608
- "node_modules/@humanwhocodes/config-array": {
2609
- "version": "0.11.10",
2610
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz",
2611
- "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==",
2612
- "dependencies": {
2613
- "@humanwhocodes/object-schema": "^1.2.1",
2614
- "debug": "^4.1.1",
2615
- "minimatch": "^3.0.5"
2616
- },
2617
- "engines": {
2618
- "node": ">=10.10.0"
2619
- }
2620
- },
2621
- "node_modules/@humanwhocodes/module-importer": {
2622
- "version": "1.0.1",
2623
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
2624
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
2625
- "engines": {
2626
- "node": ">=12.22"
2627
- },
2628
- "funding": {
2629
- "type": "github",
2630
- "url": "https://github.com/sponsors/nzakas"
2631
- }
2632
- },
2633
- "node_modules/@humanwhocodes/object-schema": {
2634
- "version": "1.2.1",
2635
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
2636
- "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA=="
2637
- },
2638
- "node_modules/@istanbuljs/load-nyc-config": {
2639
- "version": "1.1.0",
2640
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
2641
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
2642
- "dependencies": {
2643
- "camelcase": "^5.3.1",
2644
- "find-up": "^4.1.0",
2645
- "get-package-type": "^0.1.0",
2646
- "js-yaml": "^3.13.1",
2647
- "resolve-from": "^5.0.0"
2648
- },
2649
- "engines": {
2650
- "node": ">=8"
2651
- }
2652
- },
2653
- "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": {
2654
- "version": "5.3.1",
2655
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
2656
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
2657
- "engines": {
2658
- "node": ">=6"
2659
- }
2660
- },
2661
- "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": {
2662
- "version": "4.1.0",
2663
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
2664
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
2665
- "dependencies": {
2666
- "locate-path": "^5.0.0",
2667
- "path-exists": "^4.0.0"
2668
- },
2669
- "engines": {
2670
- "node": ">=8"
2671
- }
2672
- },
2673
- "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": {
2674
- "version": "5.0.0",
2675
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
2676
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
2677
- "dependencies": {
2678
- "p-locate": "^4.1.0"
2679
- },
2680
- "engines": {
2681
- "node": ">=8"
2682
- }
2683
- },
2684
- "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": {
2685
- "version": "2.3.0",
2686
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
2687
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
2688
- "dependencies": {
2689
- "p-try": "^2.0.0"
2690
- },
2691
- "engines": {
2692
- "node": ">=6"
2693
- },
2694
- "funding": {
2695
- "url": "https://github.com/sponsors/sindresorhus"
2696
- }
2697
- },
2698
- "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": {
2699
- "version": "4.1.0",
2700
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
2701
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
2702
- "dependencies": {
2703
- "p-limit": "^2.2.0"
2704
- },
2705
- "engines": {
2706
- "node": ">=8"
2707
- }
2708
- },
2709
- "node_modules/@istanbuljs/schema": {
2710
- "version": "0.1.3",
2711
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
2712
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
2713
- "engines": {
2714
- "node": ">=8"
2715
- }
2716
- },
2717
- "node_modules/@jest/console": {
2718
- "version": "27.5.1",
2719
- "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz",
2720
- "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==",
2721
- "dependencies": {
2722
- "@jest/types": "^27.5.1",
2723
- "@types/node": "*",
2724
- "chalk": "^4.0.0",
2725
- "jest-message-util": "^27.5.1",
2726
- "jest-util": "^27.5.1",
2727
- "slash": "^3.0.0"
2728
- },
2729
- "engines": {
2730
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2731
- }
2732
- },
2733
- "node_modules/@jest/console/node_modules/@jest/types": {
2734
- "version": "27.5.1",
2735
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
2736
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
2737
- "dependencies": {
2738
- "@types/istanbul-lib-coverage": "^2.0.0",
2739
- "@types/istanbul-reports": "^3.0.0",
2740
- "@types/node": "*",
2741
- "@types/yargs": "^16.0.0",
2742
- "chalk": "^4.0.0"
2743
- },
2744
- "engines": {
2745
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2746
- }
2747
- },
2748
- "node_modules/@jest/console/node_modules/@types/istanbul-reports": {
2749
- "version": "3.0.1",
2750
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
2751
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
2752
- "dependencies": {
2753
- "@types/istanbul-lib-report": "*"
2754
- }
2755
- },
2756
- "node_modules/@jest/console/node_modules/@types/yargs": {
2757
- "version": "16.0.5",
2758
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
2759
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
2760
- "dependencies": {
2761
- "@types/yargs-parser": "*"
2762
- }
2763
- },
2764
- "node_modules/@jest/console/node_modules/ansi-styles": {
2765
- "version": "4.3.0",
2766
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2767
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2768
- "dependencies": {
2769
- "color-convert": "^2.0.1"
2770
- },
2771
- "engines": {
2772
- "node": ">=8"
2773
- },
2774
- "funding": {
2775
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2776
- }
2777
- },
2778
- "node_modules/@jest/console/node_modules/chalk": {
2779
- "version": "4.1.2",
2780
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2781
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2782
- "dependencies": {
2783
- "ansi-styles": "^4.1.0",
2784
- "supports-color": "^7.1.0"
2785
- },
2786
- "engines": {
2787
- "node": ">=10"
2788
- },
2789
- "funding": {
2790
- "url": "https://github.com/chalk/chalk?sponsor=1"
2791
- }
2792
- },
2793
- "node_modules/@jest/console/node_modules/color-convert": {
2794
- "version": "2.0.1",
2795
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2796
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2797
- "dependencies": {
2798
- "color-name": "~1.1.4"
2799
- },
2800
- "engines": {
2801
- "node": ">=7.0.0"
2802
- }
2803
- },
2804
- "node_modules/@jest/console/node_modules/color-name": {
2805
- "version": "1.1.4",
2806
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2807
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2808
- },
2809
- "node_modules/@jest/console/node_modules/has-flag": {
2810
- "version": "4.0.0",
2811
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2812
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2813
- "engines": {
2814
- "node": ">=8"
2815
- }
2816
- },
2817
- "node_modules/@jest/console/node_modules/supports-color": {
2818
- "version": "7.2.0",
2819
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2820
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2821
- "dependencies": {
2822
- "has-flag": "^4.0.0"
2823
- },
2824
- "engines": {
2825
- "node": ">=8"
2826
- }
2827
- },
2828
- "node_modules/@jest/core": {
2829
- "version": "27.5.1",
2830
- "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz",
2831
- "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==",
2832
- "dependencies": {
2833
- "@jest/console": "^27.5.1",
2834
- "@jest/reporters": "^27.5.1",
2835
- "@jest/test-result": "^27.5.1",
2836
- "@jest/transform": "^27.5.1",
2837
- "@jest/types": "^27.5.1",
2838
- "@types/node": "*",
2839
- "ansi-escapes": "^4.2.1",
2840
- "chalk": "^4.0.0",
2841
- "emittery": "^0.8.1",
2842
- "exit": "^0.1.2",
2843
- "graceful-fs": "^4.2.9",
2844
- "jest-changed-files": "^27.5.1",
2845
- "jest-config": "^27.5.1",
2846
- "jest-haste-map": "^27.5.1",
2847
- "jest-message-util": "^27.5.1",
2848
- "jest-regex-util": "^27.5.1",
2849
- "jest-resolve": "^27.5.1",
2850
- "jest-resolve-dependencies": "^27.5.1",
2851
- "jest-runner": "^27.5.1",
2852
- "jest-runtime": "^27.5.1",
2853
- "jest-snapshot": "^27.5.1",
2854
- "jest-util": "^27.5.1",
2855
- "jest-validate": "^27.5.1",
2856
- "jest-watcher": "^27.5.1",
2857
- "micromatch": "^4.0.4",
2858
- "rimraf": "^3.0.0",
2859
- "slash": "^3.0.0",
2860
- "strip-ansi": "^6.0.0"
2861
- },
2862
- "engines": {
2863
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2864
- },
2865
- "peerDependencies": {
2866
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
2867
- },
2868
- "peerDependenciesMeta": {
2869
- "node-notifier": {
2870
- "optional": true
2871
- }
2872
- }
2873
- },
2874
- "node_modules/@jest/core/node_modules/@jest/types": {
2875
- "version": "27.5.1",
2876
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
2877
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
2878
- "dependencies": {
2879
- "@types/istanbul-lib-coverage": "^2.0.0",
2880
- "@types/istanbul-reports": "^3.0.0",
2881
- "@types/node": "*",
2882
- "@types/yargs": "^16.0.0",
2883
- "chalk": "^4.0.0"
2884
- },
2885
- "engines": {
2886
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2887
- }
2888
- },
2889
- "node_modules/@jest/core/node_modules/@types/istanbul-reports": {
2890
- "version": "3.0.1",
2891
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
2892
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
2893
- "dependencies": {
2894
- "@types/istanbul-lib-report": "*"
2895
- }
2896
- },
2897
- "node_modules/@jest/core/node_modules/@types/yargs": {
2898
- "version": "16.0.5",
2899
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
2900
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
2901
- "dependencies": {
2902
- "@types/yargs-parser": "*"
2903
- }
2904
- },
2905
- "node_modules/@jest/core/node_modules/ansi-styles": {
2906
- "version": "4.3.0",
2907
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2908
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2909
- "dependencies": {
2910
- "color-convert": "^2.0.1"
2911
- },
2912
- "engines": {
2913
- "node": ">=8"
2914
- },
2915
- "funding": {
2916
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2917
- }
2918
- },
2919
- "node_modules/@jest/core/node_modules/chalk": {
2920
- "version": "4.1.2",
2921
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
2922
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
2923
- "dependencies": {
2924
- "ansi-styles": "^4.1.0",
2925
- "supports-color": "^7.1.0"
2926
- },
2927
- "engines": {
2928
- "node": ">=10"
2929
- },
2930
- "funding": {
2931
- "url": "https://github.com/chalk/chalk?sponsor=1"
2932
- }
2933
- },
2934
- "node_modules/@jest/core/node_modules/color-convert": {
2935
- "version": "2.0.1",
2936
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
2937
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
2938
- "dependencies": {
2939
- "color-name": "~1.1.4"
2940
- },
2941
- "engines": {
2942
- "node": ">=7.0.0"
2943
- }
2944
- },
2945
- "node_modules/@jest/core/node_modules/color-name": {
2946
- "version": "1.1.4",
2947
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
2948
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
2949
- },
2950
- "node_modules/@jest/core/node_modules/has-flag": {
2951
- "version": "4.0.0",
2952
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2953
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2954
- "engines": {
2955
- "node": ">=8"
2956
- }
2957
- },
2958
- "node_modules/@jest/core/node_modules/supports-color": {
2959
- "version": "7.2.0",
2960
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
2961
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2962
- "dependencies": {
2963
- "has-flag": "^4.0.0"
2964
- },
2965
- "engines": {
2966
- "node": ">=8"
2967
- }
2968
- },
2969
- "node_modules/@jest/environment": {
2970
- "version": "27.5.1",
2971
- "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz",
2972
- "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==",
2973
- "dependencies": {
2974
- "@jest/fake-timers": "^27.5.1",
2975
- "@jest/types": "^27.5.1",
2976
- "@types/node": "*",
2977
- "jest-mock": "^27.5.1"
2978
- },
2979
- "engines": {
2980
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2981
- }
2982
- },
2983
- "node_modules/@jest/environment/node_modules/@jest/types": {
2984
- "version": "27.5.1",
2985
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
2986
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
2987
- "dependencies": {
2988
- "@types/istanbul-lib-coverage": "^2.0.0",
2989
- "@types/istanbul-reports": "^3.0.0",
2990
- "@types/node": "*",
2991
- "@types/yargs": "^16.0.0",
2992
- "chalk": "^4.0.0"
2993
- },
2994
- "engines": {
2995
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
2996
- }
2997
- },
2998
- "node_modules/@jest/environment/node_modules/@types/istanbul-reports": {
2999
- "version": "3.0.1",
3000
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3001
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3002
- "dependencies": {
3003
- "@types/istanbul-lib-report": "*"
3004
- }
3005
- },
3006
- "node_modules/@jest/environment/node_modules/@types/yargs": {
3007
- "version": "16.0.5",
3008
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3009
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3010
- "dependencies": {
3011
- "@types/yargs-parser": "*"
3012
- }
3013
- },
3014
- "node_modules/@jest/environment/node_modules/ansi-styles": {
3015
- "version": "4.3.0",
3016
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3017
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3018
- "dependencies": {
3019
- "color-convert": "^2.0.1"
3020
- },
3021
- "engines": {
3022
- "node": ">=8"
3023
- },
3024
- "funding": {
3025
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3026
- }
3027
- },
3028
- "node_modules/@jest/environment/node_modules/chalk": {
3029
- "version": "4.1.2",
3030
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3031
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3032
- "dependencies": {
3033
- "ansi-styles": "^4.1.0",
3034
- "supports-color": "^7.1.0"
3035
- },
3036
- "engines": {
3037
- "node": ">=10"
3038
- },
3039
- "funding": {
3040
- "url": "https://github.com/chalk/chalk?sponsor=1"
3041
- }
3042
- },
3043
- "node_modules/@jest/environment/node_modules/color-convert": {
3044
- "version": "2.0.1",
3045
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3046
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3047
- "dependencies": {
3048
- "color-name": "~1.1.4"
3049
- },
3050
- "engines": {
3051
- "node": ">=7.0.0"
3052
- }
3053
- },
3054
- "node_modules/@jest/environment/node_modules/color-name": {
3055
- "version": "1.1.4",
3056
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3057
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3058
- },
3059
- "node_modules/@jest/environment/node_modules/has-flag": {
3060
- "version": "4.0.0",
3061
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3062
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3063
- "engines": {
3064
- "node": ">=8"
3065
- }
3066
- },
3067
- "node_modules/@jest/environment/node_modules/supports-color": {
3068
- "version": "7.2.0",
3069
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3070
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3071
- "dependencies": {
3072
- "has-flag": "^4.0.0"
3073
- },
3074
- "engines": {
3075
- "node": ">=8"
3076
- }
3077
- },
3078
- "node_modules/@jest/fake-timers": {
3079
- "version": "27.5.1",
3080
- "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz",
3081
- "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==",
3082
- "dependencies": {
3083
- "@jest/types": "^27.5.1",
3084
- "@sinonjs/fake-timers": "^8.0.1",
3085
- "@types/node": "*",
3086
- "jest-message-util": "^27.5.1",
3087
- "jest-mock": "^27.5.1",
3088
- "jest-util": "^27.5.1"
3089
- },
3090
- "engines": {
3091
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3092
- }
3093
- },
3094
- "node_modules/@jest/fake-timers/node_modules/@jest/types": {
3095
- "version": "27.5.1",
3096
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
3097
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
3098
- "dependencies": {
3099
- "@types/istanbul-lib-coverage": "^2.0.0",
3100
- "@types/istanbul-reports": "^3.0.0",
3101
- "@types/node": "*",
3102
- "@types/yargs": "^16.0.0",
3103
- "chalk": "^4.0.0"
3104
- },
3105
- "engines": {
3106
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3107
- }
3108
- },
3109
- "node_modules/@jest/fake-timers/node_modules/@types/istanbul-reports": {
3110
- "version": "3.0.1",
3111
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3112
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3113
- "dependencies": {
3114
- "@types/istanbul-lib-report": "*"
3115
- }
3116
- },
3117
- "node_modules/@jest/fake-timers/node_modules/@types/yargs": {
3118
- "version": "16.0.5",
3119
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3120
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3121
- "dependencies": {
3122
- "@types/yargs-parser": "*"
3123
- }
3124
- },
3125
- "node_modules/@jest/fake-timers/node_modules/ansi-styles": {
3126
- "version": "4.3.0",
3127
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3128
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3129
- "dependencies": {
3130
- "color-convert": "^2.0.1"
3131
- },
3132
- "engines": {
3133
- "node": ">=8"
3134
- },
3135
- "funding": {
3136
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3137
- }
3138
- },
3139
- "node_modules/@jest/fake-timers/node_modules/chalk": {
3140
- "version": "4.1.2",
3141
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3142
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3143
- "dependencies": {
3144
- "ansi-styles": "^4.1.0",
3145
- "supports-color": "^7.1.0"
3146
- },
3147
- "engines": {
3148
- "node": ">=10"
3149
- },
3150
- "funding": {
3151
- "url": "https://github.com/chalk/chalk?sponsor=1"
3152
- }
3153
- },
3154
- "node_modules/@jest/fake-timers/node_modules/color-convert": {
3155
- "version": "2.0.1",
3156
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3157
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3158
- "dependencies": {
3159
- "color-name": "~1.1.4"
3160
- },
3161
- "engines": {
3162
- "node": ">=7.0.0"
3163
- }
3164
- },
3165
- "node_modules/@jest/fake-timers/node_modules/color-name": {
3166
- "version": "1.1.4",
3167
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3168
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3169
- },
3170
- "node_modules/@jest/fake-timers/node_modules/has-flag": {
3171
- "version": "4.0.0",
3172
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3173
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3174
- "engines": {
3175
- "node": ">=8"
3176
- }
3177
- },
3178
- "node_modules/@jest/fake-timers/node_modules/supports-color": {
3179
- "version": "7.2.0",
3180
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3181
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3182
- "dependencies": {
3183
- "has-flag": "^4.0.0"
3184
- },
3185
- "engines": {
3186
- "node": ">=8"
3187
- }
3188
- },
3189
- "node_modules/@jest/globals": {
3190
- "version": "27.5.1",
3191
- "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz",
3192
- "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==",
3193
- "dependencies": {
3194
- "@jest/environment": "^27.5.1",
3195
- "@jest/types": "^27.5.1",
3196
- "expect": "^27.5.1"
3197
- },
3198
- "engines": {
3199
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3200
- }
3201
- },
3202
- "node_modules/@jest/globals/node_modules/@jest/types": {
3203
- "version": "27.5.1",
3204
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
3205
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
3206
- "dependencies": {
3207
- "@types/istanbul-lib-coverage": "^2.0.0",
3208
- "@types/istanbul-reports": "^3.0.0",
3209
- "@types/node": "*",
3210
- "@types/yargs": "^16.0.0",
3211
- "chalk": "^4.0.0"
3212
- },
3213
- "engines": {
3214
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3215
- }
3216
- },
3217
- "node_modules/@jest/globals/node_modules/@types/istanbul-reports": {
3218
- "version": "3.0.1",
3219
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3220
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3221
- "dependencies": {
3222
- "@types/istanbul-lib-report": "*"
3223
- }
3224
- },
3225
- "node_modules/@jest/globals/node_modules/@types/yargs": {
3226
- "version": "16.0.5",
3227
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3228
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3229
- "dependencies": {
3230
- "@types/yargs-parser": "*"
3231
- }
3232
- },
3233
- "node_modules/@jest/globals/node_modules/ansi-styles": {
3234
- "version": "4.3.0",
3235
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3236
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3237
- "dependencies": {
3238
- "color-convert": "^2.0.1"
3239
- },
3240
- "engines": {
3241
- "node": ">=8"
3242
- },
3243
- "funding": {
3244
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3245
- }
3246
- },
3247
- "node_modules/@jest/globals/node_modules/chalk": {
3248
- "version": "4.1.2",
3249
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3250
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3251
- "dependencies": {
3252
- "ansi-styles": "^4.1.0",
3253
- "supports-color": "^7.1.0"
3254
- },
3255
- "engines": {
3256
- "node": ">=10"
3257
- },
3258
- "funding": {
3259
- "url": "https://github.com/chalk/chalk?sponsor=1"
3260
- }
3261
- },
3262
- "node_modules/@jest/globals/node_modules/color-convert": {
3263
- "version": "2.0.1",
3264
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3265
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3266
- "dependencies": {
3267
- "color-name": "~1.1.4"
3268
- },
3269
- "engines": {
3270
- "node": ">=7.0.0"
3271
- }
3272
- },
3273
- "node_modules/@jest/globals/node_modules/color-name": {
3274
- "version": "1.1.4",
3275
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3276
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3277
- },
3278
- "node_modules/@jest/globals/node_modules/has-flag": {
3279
- "version": "4.0.0",
3280
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3281
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3282
- "engines": {
3283
- "node": ">=8"
3284
- }
3285
- },
3286
- "node_modules/@jest/globals/node_modules/supports-color": {
3287
- "version": "7.2.0",
3288
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3289
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3290
- "dependencies": {
3291
- "has-flag": "^4.0.0"
3292
- },
3293
- "engines": {
3294
- "node": ">=8"
3295
- }
3296
- },
3297
- "node_modules/@jest/reporters": {
3298
- "version": "27.5.1",
3299
- "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz",
3300
- "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==",
3301
- "dependencies": {
3302
- "@bcoe/v8-coverage": "^0.2.3",
3303
- "@jest/console": "^27.5.1",
3304
- "@jest/test-result": "^27.5.1",
3305
- "@jest/transform": "^27.5.1",
3306
- "@jest/types": "^27.5.1",
3307
- "@types/node": "*",
3308
- "chalk": "^4.0.0",
3309
- "collect-v8-coverage": "^1.0.0",
3310
- "exit": "^0.1.2",
3311
- "glob": "^7.1.2",
3312
- "graceful-fs": "^4.2.9",
3313
- "istanbul-lib-coverage": "^3.0.0",
3314
- "istanbul-lib-instrument": "^5.1.0",
3315
- "istanbul-lib-report": "^3.0.0",
3316
- "istanbul-lib-source-maps": "^4.0.0",
3317
- "istanbul-reports": "^3.1.3",
3318
- "jest-haste-map": "^27.5.1",
3319
- "jest-resolve": "^27.5.1",
3320
- "jest-util": "^27.5.1",
3321
- "jest-worker": "^27.5.1",
3322
- "slash": "^3.0.0",
3323
- "source-map": "^0.6.0",
3324
- "string-length": "^4.0.1",
3325
- "terminal-link": "^2.0.0",
3326
- "v8-to-istanbul": "^8.1.0"
3327
- },
3328
- "engines": {
3329
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3330
- },
3331
- "peerDependencies": {
3332
- "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
3333
- },
3334
- "peerDependenciesMeta": {
3335
- "node-notifier": {
3336
- "optional": true
3337
- }
3338
- }
3339
- },
3340
- "node_modules/@jest/reporters/node_modules/@jest/types": {
3341
- "version": "27.5.1",
3342
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
3343
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
3344
- "dependencies": {
3345
- "@types/istanbul-lib-coverage": "^2.0.0",
3346
- "@types/istanbul-reports": "^3.0.0",
3347
- "@types/node": "*",
3348
- "@types/yargs": "^16.0.0",
3349
- "chalk": "^4.0.0"
3350
- },
3351
- "engines": {
3352
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3353
- }
3354
- },
3355
- "node_modules/@jest/reporters/node_modules/@types/istanbul-reports": {
3356
- "version": "3.0.1",
3357
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3358
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3359
- "dependencies": {
3360
- "@types/istanbul-lib-report": "*"
3361
- }
3362
- },
3363
- "node_modules/@jest/reporters/node_modules/@types/yargs": {
3364
- "version": "16.0.5",
3365
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3366
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3367
- "dependencies": {
3368
- "@types/yargs-parser": "*"
3369
- }
3370
- },
3371
- "node_modules/@jest/reporters/node_modules/ansi-styles": {
3372
- "version": "4.3.0",
3373
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3374
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3375
- "dependencies": {
3376
- "color-convert": "^2.0.1"
3377
- },
3378
- "engines": {
3379
- "node": ">=8"
3380
- },
3381
- "funding": {
3382
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3383
- }
3384
- },
3385
- "node_modules/@jest/reporters/node_modules/chalk": {
3386
- "version": "4.1.2",
3387
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3388
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3389
- "dependencies": {
3390
- "ansi-styles": "^4.1.0",
3391
- "supports-color": "^7.1.0"
3392
- },
3393
- "engines": {
3394
- "node": ">=10"
3395
- },
3396
- "funding": {
3397
- "url": "https://github.com/chalk/chalk?sponsor=1"
3398
- }
3399
- },
3400
- "node_modules/@jest/reporters/node_modules/color-convert": {
3401
- "version": "2.0.1",
3402
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3403
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3404
- "dependencies": {
3405
- "color-name": "~1.1.4"
3406
- },
3407
- "engines": {
3408
- "node": ">=7.0.0"
3409
- }
3410
- },
3411
- "node_modules/@jest/reporters/node_modules/color-name": {
3412
- "version": "1.1.4",
3413
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3414
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3415
- },
3416
- "node_modules/@jest/reporters/node_modules/has-flag": {
3417
- "version": "4.0.0",
3418
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3419
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3420
- "engines": {
3421
- "node": ">=8"
3422
- }
3423
- },
3424
- "node_modules/@jest/reporters/node_modules/supports-color": {
3425
- "version": "7.2.0",
3426
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3427
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3428
- "dependencies": {
3429
- "has-flag": "^4.0.0"
3430
- },
3431
- "engines": {
3432
- "node": ">=8"
3433
- }
3434
- },
3435
- "node_modules/@jest/schemas": {
3436
- "version": "28.1.3",
3437
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz",
3438
- "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==",
3439
- "dependencies": {
3440
- "@sinclair/typebox": "^0.24.1"
3441
- },
3442
- "engines": {
3443
- "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0"
3444
- }
3445
- },
3446
- "node_modules/@jest/source-map": {
3447
- "version": "27.5.1",
3448
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz",
3449
- "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==",
3450
- "dependencies": {
3451
- "callsites": "^3.0.0",
3452
- "graceful-fs": "^4.2.9",
3453
- "source-map": "^0.6.0"
3454
- },
3455
- "engines": {
3456
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3457
- }
3458
- },
3459
- "node_modules/@jest/test-result": {
3460
- "version": "27.5.1",
3461
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz",
3462
- "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==",
3463
- "dependencies": {
3464
- "@jest/console": "^27.5.1",
3465
- "@jest/types": "^27.5.1",
3466
- "@types/istanbul-lib-coverage": "^2.0.0",
3467
- "collect-v8-coverage": "^1.0.0"
3468
- },
3469
- "engines": {
3470
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3471
- }
3472
- },
3473
- "node_modules/@jest/test-result/node_modules/@jest/types": {
3474
- "version": "27.5.1",
3475
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
3476
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
3477
- "dependencies": {
3478
- "@types/istanbul-lib-coverage": "^2.0.0",
3479
- "@types/istanbul-reports": "^3.0.0",
3480
- "@types/node": "*",
3481
- "@types/yargs": "^16.0.0",
3482
- "chalk": "^4.0.0"
3483
- },
3484
- "engines": {
3485
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3486
- }
3487
- },
3488
- "node_modules/@jest/test-result/node_modules/@types/istanbul-reports": {
3489
- "version": "3.0.1",
3490
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3491
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3492
- "dependencies": {
3493
- "@types/istanbul-lib-report": "*"
3494
- }
3495
- },
3496
- "node_modules/@jest/test-result/node_modules/@types/yargs": {
3497
- "version": "16.0.5",
3498
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3499
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3500
- "dependencies": {
3501
- "@types/yargs-parser": "*"
3502
- }
3503
- },
3504
- "node_modules/@jest/test-result/node_modules/ansi-styles": {
3505
- "version": "4.3.0",
3506
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3507
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3508
- "dependencies": {
3509
- "color-convert": "^2.0.1"
3510
- },
3511
- "engines": {
3512
- "node": ">=8"
3513
- },
3514
- "funding": {
3515
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3516
- }
3517
- },
3518
- "node_modules/@jest/test-result/node_modules/chalk": {
3519
- "version": "4.1.2",
3520
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3521
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3522
- "dependencies": {
3523
- "ansi-styles": "^4.1.0",
3524
- "supports-color": "^7.1.0"
3525
- },
3526
- "engines": {
3527
- "node": ">=10"
3528
- },
3529
- "funding": {
3530
- "url": "https://github.com/chalk/chalk?sponsor=1"
3531
- }
3532
- },
3533
- "node_modules/@jest/test-result/node_modules/color-convert": {
3534
- "version": "2.0.1",
3535
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3536
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3537
- "dependencies": {
3538
- "color-name": "~1.1.4"
3539
- },
3540
- "engines": {
3541
- "node": ">=7.0.0"
3542
- }
3543
- },
3544
- "node_modules/@jest/test-result/node_modules/color-name": {
3545
- "version": "1.1.4",
3546
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3547
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3548
- },
3549
- "node_modules/@jest/test-result/node_modules/has-flag": {
3550
- "version": "4.0.0",
3551
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3552
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3553
- "engines": {
3554
- "node": ">=8"
3555
- }
3556
- },
3557
- "node_modules/@jest/test-result/node_modules/supports-color": {
3558
- "version": "7.2.0",
3559
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3560
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3561
- "dependencies": {
3562
- "has-flag": "^4.0.0"
3563
- },
3564
- "engines": {
3565
- "node": ">=8"
3566
- }
3567
- },
3568
- "node_modules/@jest/test-sequencer": {
3569
- "version": "27.5.1",
3570
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz",
3571
- "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==",
3572
- "dependencies": {
3573
- "@jest/test-result": "^27.5.1",
3574
- "graceful-fs": "^4.2.9",
3575
- "jest-haste-map": "^27.5.1",
3576
- "jest-runtime": "^27.5.1"
3577
- },
3578
- "engines": {
3579
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3580
- }
3581
- },
3582
- "node_modules/@jest/transform": {
3583
- "version": "27.5.1",
3584
- "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz",
3585
- "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==",
3586
- "dependencies": {
3587
- "@babel/core": "^7.1.0",
3588
- "@jest/types": "^27.5.1",
3589
- "babel-plugin-istanbul": "^6.1.1",
3590
- "chalk": "^4.0.0",
3591
- "convert-source-map": "^1.4.0",
3592
- "fast-json-stable-stringify": "^2.0.0",
3593
- "graceful-fs": "^4.2.9",
3594
- "jest-haste-map": "^27.5.1",
3595
- "jest-regex-util": "^27.5.1",
3596
- "jest-util": "^27.5.1",
3597
- "micromatch": "^4.0.4",
3598
- "pirates": "^4.0.4",
3599
- "slash": "^3.0.0",
3600
- "source-map": "^0.6.1",
3601
- "write-file-atomic": "^3.0.0"
3602
- },
3603
- "engines": {
3604
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3605
- }
3606
- },
3607
- "node_modules/@jest/transform/node_modules/@jest/types": {
3608
- "version": "27.5.1",
3609
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
3610
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
3611
- "dependencies": {
3612
- "@types/istanbul-lib-coverage": "^2.0.0",
3613
- "@types/istanbul-reports": "^3.0.0",
3614
- "@types/node": "*",
3615
- "@types/yargs": "^16.0.0",
3616
- "chalk": "^4.0.0"
3617
- },
3618
- "engines": {
3619
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
3620
- }
3621
- },
3622
- "node_modules/@jest/transform/node_modules/@types/istanbul-reports": {
3623
- "version": "3.0.1",
3624
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
3625
- "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
3626
- "dependencies": {
3627
- "@types/istanbul-lib-report": "*"
3628
- }
3629
- },
3630
- "node_modules/@jest/transform/node_modules/@types/yargs": {
3631
- "version": "16.0.5",
3632
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz",
3633
- "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==",
3634
- "dependencies": {
3635
- "@types/yargs-parser": "*"
3636
- }
3637
- },
3638
- "node_modules/@jest/transform/node_modules/ansi-styles": {
3639
- "version": "4.3.0",
3640
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
3641
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
3642
- "dependencies": {
3643
- "color-convert": "^2.0.1"
3644
- },
3645
- "engines": {
3646
- "node": ">=8"
3647
- },
3648
- "funding": {
3649
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
3650
- }
3651
- },
3652
- "node_modules/@jest/transform/node_modules/chalk": {
3653
- "version": "4.1.2",
3654
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
3655
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
3656
- "dependencies": {
3657
- "ansi-styles": "^4.1.0",
3658
- "supports-color": "^7.1.0"
3659
- },
3660
- "engines": {
3661
- "node": ">=10"
3662
- },
3663
- "funding": {
3664
- "url": "https://github.com/chalk/chalk?sponsor=1"
3665
- }
3666
- },
3667
- "node_modules/@jest/transform/node_modules/color-convert": {
3668
- "version": "2.0.1",
3669
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
3670
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
3671
- "dependencies": {
3672
- "color-name": "~1.1.4"
3673
- },
3674
- "engines": {
3675
- "node": ">=7.0.0"
3676
- }
3677
- },
3678
- "node_modules/@jest/transform/node_modules/color-name": {
3679
- "version": "1.1.4",
3680
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
3681
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
3682
- },
3683
- "node_modules/@jest/transform/node_modules/has-flag": {
3684
- "version": "4.0.0",
3685
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
3686
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
3687
- "engines": {
3688
- "node": ">=8"
3689
- }
3690
- },
3691
- "node_modules/@jest/transform/node_modules/supports-color": {
3692
- "version": "7.2.0",
3693
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
3694
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
3695
- "dependencies": {
3696
- "has-flag": "^4.0.0"
3697
- },
3698
- "engines": {
3699
- "node": ">=8"
3700
- }
3701
- },
3702
- "node_modules/@jest/types": {
3703
- "version": "24.9.0",
3704
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz",
3705
- "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==",
3706
- "dependencies": {
3707
- "@types/istanbul-lib-coverage": "^2.0.0",
3708
- "@types/istanbul-reports": "^1.1.1",
3709
- "@types/yargs": "^13.0.0"
3710
- },
3711
- "engines": {
3712
- "node": ">= 6"
3713
- }
3714
- },
3715
- "node_modules/@jridgewell/gen-mapping": {
3716
- "version": "0.3.3",
3717
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
3718
- "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
3719
- "dependencies": {
3720
- "@jridgewell/set-array": "^1.0.1",
3721
- "@jridgewell/sourcemap-codec": "^1.4.10",
3722
- "@jridgewell/trace-mapping": "^0.3.9"
3723
- },
3724
- "engines": {
3725
- "node": ">=6.0.0"
3726
- }
3727
- },
3728
- "node_modules/@jridgewell/resolve-uri": {
3729
- "version": "3.1.0",
3730
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
3731
- "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
3732
- "engines": {
3733
- "node": ">=6.0.0"
3734
- }
3735
- },
3736
- "node_modules/@jridgewell/set-array": {
3737
- "version": "1.1.2",
3738
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
3739
- "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
3740
- "engines": {
3741
- "node": ">=6.0.0"
3742
- }
3743
- },
3744
- "node_modules/@jridgewell/source-map": {
3745
- "version": "0.3.5",
3746
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz",
3747
- "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==",
3748
- "dependencies": {
3749
- "@jridgewell/gen-mapping": "^0.3.0",
3750
- "@jridgewell/trace-mapping": "^0.3.9"
3751
- }
3752
- },
3753
- "node_modules/@jridgewell/sourcemap-codec": {
3754
- "version": "1.4.15",
3755
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
3756
- "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
3757
- },
3758
- "node_modules/@jridgewell/trace-mapping": {
3759
- "version": "0.3.18",
3760
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
3761
- "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==",
3762
- "dependencies": {
3763
- "@jridgewell/resolve-uri": "3.1.0",
3764
- "@jridgewell/sourcemap-codec": "1.4.14"
3765
- }
3766
- },
3767
- "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": {
3768
- "version": "1.4.14",
3769
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
3770
- "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
3771
- },
3772
- "node_modules/@leichtgewicht/ip-codec": {
3773
- "version": "2.0.4",
3774
- "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz",
3775
- "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A=="
3776
- },
3777
- "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": {
3778
- "version": "5.1.1-v1",
3779
- "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz",
3780
- "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==",
3781
- "dependencies": {
3782
- "eslint-scope": "5.1.1"
3783
- }
3784
- },
3785
- "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope": {
3786
- "version": "5.1.1",
3787
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
3788
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
3789
- "dependencies": {
3790
- "esrecurse": "^4.3.0",
3791
- "estraverse": "^4.1.1"
3792
- },
3793
- "engines": {
3794
- "node": ">=8.0.0"
3795
- }
3796
- },
3797
- "node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/estraverse": {
3798
- "version": "4.3.0",
3799
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
3800
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
3801
- "engines": {
3802
- "node": ">=4.0"
3803
- }
3804
- },
3805
- "node_modules/@nodelib/fs.scandir": {
3806
- "version": "2.1.5",
3807
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
3808
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
3809
- "dependencies": {
3810
- "@nodelib/fs.stat": "2.0.5",
3811
- "run-parallel": "^1.1.9"
3812
- },
3813
- "engines": {
3814
- "node": ">= 8"
3815
- }
3816
- },
3817
- "node_modules/@nodelib/fs.stat": {
3818
- "version": "2.0.5",
3819
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
3820
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
3821
- "engines": {
3822
- "node": ">= 8"
3823
- }
3824
- },
3825
- "node_modules/@nodelib/fs.walk": {
3826
- "version": "1.2.8",
3827
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
3828
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
3829
- "dependencies": {
3830
- "@nodelib/fs.scandir": "2.1.5",
3831
- "fastq": "^1.6.0"
3832
- },
3833
- "engines": {
3834
- "node": ">= 8"
3835
- }
3836
- },
3837
- "node_modules/@pmmmwh/react-refresh-webpack-plugin": {
3838
- "version": "0.5.10",
3839
- "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.10.tgz",
3840
- "integrity": "sha512-j0Ya0hCFZPd4x40qLzbhGsh9TMtdb+CJQiso+WxLOPNasohq9cc5SNUcwsZaRH6++Xh91Xkm/xHCkuIiIu0LUA==",
3841
- "dependencies": {
3842
- "ansi-html-community": "^0.0.8",
3843
- "common-path-prefix": "^3.0.0",
3844
- "core-js-pure": "^3.23.3",
3845
- "error-stack-parser": "^2.0.6",
3846
- "find-up": "^5.0.0",
3847
- "html-entities": "^2.1.0",
3848
- "loader-utils": "^2.0.4",
3849
- "schema-utils": "^3.0.0",
3850
- "source-map": "^0.7.3"
3851
- },
3852
- "engines": {
3853
- "node": ">= 10.13"
3854
- },
3855
- "peerDependencies": {
3856
- "@types/webpack": "4.x || 5.x",
3857
- "react-refresh": ">=0.10.0 <1.0.0",
3858
- "sockjs-client": "^1.4.0",
3859
- "type-fest": ">=0.17.0 <4.0.0",
3860
- "webpack": ">=4.43.0 <6.0.0",
3861
- "webpack-dev-server": "3.x || 4.x",
3862
- "webpack-hot-middleware": "2.x",
3863
- "webpack-plugin-serve": "0.x || 1.x"
3864
- },
3865
- "peerDependenciesMeta": {
3866
- "@types/webpack": {
3867
- "optional": true
3868
- },
3869
- "sockjs-client": {
3870
- "optional": true
3871
- },
3872
- "type-fest": {
3873
- "optional": true
3874
- },
3875
- "webpack-dev-server": {
3876
- "optional": true
3877
- },
3878
- "webpack-hot-middleware": {
3879
- "optional": true
3880
- },
3881
- "webpack-plugin-serve": {
3882
- "optional": true
3883
- }
3884
- }
3885
- },
3886
- "node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/loader-utils": {
3887
- "version": "2.0.4",
3888
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
3889
- "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
3890
- "dependencies": {
3891
- "big.js": "^5.2.2",
3892
- "emojis-list": "^3.0.0",
3893
- "json5": "^2.1.2"
3894
- },
3895
- "engines": {
3896
- "node": ">=8.9.0"
3897
- }
3898
- },
3899
- "node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/source-map": {
3900
- "version": "0.7.4",
3901
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
3902
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
3903
- "engines": {
3904
- "node": ">= 8"
3905
- }
3906
- },
3907
- "node_modules/@popperjs/core": {
3908
- "version": "2.11.8",
3909
- "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
3910
- "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
3911
- "funding": {
3912
- "type": "opencollective",
3913
- "url": "https://opencollective.com/popperjs"
3914
- }
3915
- },
3916
- "node_modules/@protobufjs/aspromise": {
3917
- "version": "1.1.2",
3918
- "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
3919
- "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78= sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ=="
3920
- },
3921
- "node_modules/@protobufjs/base64": {
3922
- "version": "1.1.2",
3923
- "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
3924
- "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg=="
3925
- },
3926
- "node_modules/@protobufjs/codegen": {
3927
- "version": "2.0.4",
3928
- "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
3929
- "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg=="
3930
- },
3931
- "node_modules/@protobufjs/eventemitter": {
3932
- "version": "1.1.0",
3933
- "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
3934
- "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A= sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q=="
3935
- },
3936
- "node_modules/@protobufjs/fetch": {
3937
- "version": "1.1.0",
3938
- "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
3939
- "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU= sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
3940
- "dependencies": {
3941
- "@protobufjs/aspromise": "^1.1.1",
3942
- "@protobufjs/inquire": "^1.1.0"
3943
- }
3944
- },
3945
- "node_modules/@protobufjs/float": {
3946
- "version": "1.0.2",
3947
- "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
3948
- "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E= sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ=="
3949
- },
3950
- "node_modules/@protobufjs/inquire": {
3951
- "version": "1.1.0",
3952
- "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
3953
- "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik= sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q=="
3954
- },
3955
- "node_modules/@protobufjs/path": {
3956
- "version": "1.1.2",
3957
- "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
3958
- "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0= sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA=="
3959
- },
3960
- "node_modules/@protobufjs/pool": {
3961
- "version": "1.1.0",
3962
- "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
3963
- "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q= sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw=="
3964
- },
3965
- "node_modules/@protobufjs/utf8": {
3966
- "version": "1.1.0",
3967
- "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
3968
- "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
3969
- },
3970
- "node_modules/@react-aria/ssr": {
3971
- "version": "3.1.0",
3972
- "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.1.0.tgz",
3973
- "integrity": "sha512-RxqQKmE8sO7TGdrcSlHTcVzMP450hqowtBSd2bBS9oPlcokVkaGq28c3Rwa8ty5ctw4EBCjXqjP7xdcKMGDzug==",
3974
- "dependencies": {
3975
- "@babel/runtime": "^7.6.2"
3976
- },
3977
- "peerDependencies": {
3978
- "react": "^16.8.0 || ^17.0.0-rc.1"
3979
- }
3980
- },
3981
- "node_modules/@restart/hooks": {
3982
- "version": "0.4.5",
3983
- "resolved": "https://registry.npmjs.org/@restart/hooks/-/hooks-0.4.5.tgz",
3984
- "integrity": "sha512-tLGtY0aHeIfT7aPwUkvQuhIy3+q3w4iqmUzFLPlOAf/vNUacLaBt1j/S//jv/dQhenRh8jvswyMojCwmLvJw8A==",
3985
- "dependencies": {
3986
- "dequal": "^2.0.2"
3987
- },
3988
- "peerDependencies": {
3989
- "react": ">=16.8.0"
3990
- }
3991
- },
3992
- "node_modules/@restart/ui": {
3993
- "version": "0.2.6",
3994
- "resolved": "https://registry.npmjs.org/@restart/ui/-/ui-0.2.6.tgz",
3995
- "integrity": "sha512-lcutEWPvsxz0uEyRxuysCbHBfXDFnMKNMNTsnuPmLFjZXgW9fVmhksS6rpFklXHMwxOM9g6hRTBq0gS3QRKgzQ==",
3996
- "dependencies": {
3997
- "@babel/runtime": "^7.13.16",
3998
- "@popperjs/core": "^2.10.1",
3999
- "@react-aria/ssr": "^3.0.1",
4000
- "@restart/hooks": "^0.4.0",
4001
- "@types/warning": "^3.0.0",
4002
- "dequal": "^2.0.2",
4003
- "dom-helpers": "^5.2.0",
4004
- "prop-types": "^15.7.2",
4005
- "uncontrollable": "^7.2.1",
4006
- "warning": "^4.0.3"
4007
- },
4008
- "peerDependencies": {
4009
- "react": ">=16.14.0",
4010
- "react-dom": ">=16.14.0"
4011
- }
4012
- },
4013
- "node_modules/@rollup/plugin-babel": {
4014
- "version": "5.3.1",
4015
- "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz",
4016
- "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==",
4017
- "dependencies": {
4018
- "@babel/helper-module-imports": "^7.10.4",
4019
- "@rollup/pluginutils": "^3.1.0"
4020
- },
4021
- "engines": {
4022
- "node": ">= 10.0.0"
4023
- },
4024
- "peerDependencies": {
4025
- "@babel/core": "^7.0.0",
4026
- "@types/babel__core": "^7.1.9",
4027
- "rollup": "^1.20.0||^2.0.0"
4028
- },
4029
- "peerDependenciesMeta": {
4030
- "@types/babel__core": {
4031
- "optional": true
4032
- }
4033
- }
4034
- },
4035
- "node_modules/@rollup/plugin-node-resolve": {
4036
- "version": "11.2.1",
4037
- "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz",
4038
- "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==",
4039
- "dependencies": {
4040
- "@rollup/pluginutils": "^3.1.0",
4041
- "@types/resolve": "1.17.1",
4042
- "builtin-modules": "^3.1.0",
4043
- "deepmerge": "^4.2.2",
4044
- "is-module": "^1.0.0",
4045
- "resolve": "^1.19.0"
4046
- },
4047
- "engines": {
4048
- "node": ">= 10.0.0"
4049
- },
4050
- "peerDependencies": {
4051
- "rollup": "^1.20.0||^2.0.0"
4052
- }
4053
- },
4054
- "node_modules/@rollup/plugin-replace": {
4055
- "version": "2.4.2",
4056
- "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz",
4057
- "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==",
4058
- "dependencies": {
4059
- "@rollup/pluginutils": "^3.1.0",
4060
- "magic-string": "^0.25.7"
4061
- },
4062
- "peerDependencies": {
4063
- "rollup": "^1.20.0 || ^2.0.0"
4064
- }
4065
- },
4066
- "node_modules/@rollup/pluginutils": {
4067
- "version": "3.1.0",
4068
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
4069
- "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
4070
- "dependencies": {
4071
- "@types/estree": "0.0.39",
4072
- "estree-walker": "^1.0.1",
4073
- "picomatch": "^2.2.2"
4074
- },
4075
- "engines": {
4076
- "node": ">= 8.0.0"
4077
- },
4078
- "peerDependencies": {
4079
- "rollup": "^1.20.0||^2.0.0"
4080
- }
4081
- },
4082
- "node_modules/@rollup/pluginutils/node_modules/@types/estree": {
4083
- "version": "0.0.39",
4084
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
4085
- "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw=="
4086
- },
4087
- "node_modules/@rushstack/eslint-patch": {
4088
- "version": "1.3.2",
4089
- "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.3.2.tgz",
4090
- "integrity": "sha512-V+MvGwaHH03hYhY+k6Ef/xKd6RYlc4q8WBx+2ANmipHJcKuktNcI/NgEsJgdSUF6Lw32njT6OnrRsKYCdgHjYw=="
4091
- },
4092
- "node_modules/@sinclair/typebox": {
4093
- "version": "0.24.51",
4094
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz",
4095
- "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA=="
4096
- },
4097
- "node_modules/@sinonjs/commons": {
4098
- "version": "1.8.6",
4099
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz",
4100
- "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==",
4101
- "dependencies": {
4102
- "type-detect": "4.0.8"
4103
- }
4104
- },
4105
- "node_modules/@sinonjs/fake-timers": {
4106
- "version": "8.1.0",
4107
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz",
4108
- "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==",
4109
- "dependencies": {
4110
- "@sinonjs/commons": "^1.7.0"
4111
- }
4112
- },
4113
- "node_modules/@surma/rollup-plugin-off-main-thread": {
4114
- "version": "2.2.3",
4115
- "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz",
4116
- "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==",
4117
- "dependencies": {
4118
- "ejs": "^3.1.6",
4119
- "json5": "^2.2.0",
4120
- "magic-string": "^0.25.0",
4121
- "string.prototype.matchall": "^4.0.6"
4122
- }
4123
- },
4124
- "node_modules/@svgr/babel-plugin-add-jsx-attribute": {
4125
- "version": "5.4.0",
4126
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz",
4127
- "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==",
4128
- "engines": {
4129
- "node": ">=10"
4130
- },
4131
- "funding": {
4132
- "type": "github",
4133
- "url": "https://github.com/sponsors/gregberge"
4134
- }
4135
- },
4136
- "node_modules/@svgr/babel-plugin-remove-jsx-attribute": {
4137
- "version": "5.4.0",
4138
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz",
4139
- "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==",
4140
- "engines": {
4141
- "node": ">=10"
4142
- },
4143
- "funding": {
4144
- "type": "github",
4145
- "url": "https://github.com/sponsors/gregberge"
4146
- }
4147
- },
4148
- "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": {
4149
- "version": "5.0.1",
4150
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz",
4151
- "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==",
4152
- "engines": {
4153
- "node": ">=10"
4154
- },
4155
- "funding": {
4156
- "type": "github",
4157
- "url": "https://github.com/sponsors/gregberge"
4158
- }
4159
- },
4160
- "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": {
4161
- "version": "5.0.1",
4162
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz",
4163
- "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==",
4164
- "engines": {
4165
- "node": ">=10"
4166
- },
4167
- "funding": {
4168
- "type": "github",
4169
- "url": "https://github.com/sponsors/gregberge"
4170
- }
4171
- },
4172
- "node_modules/@svgr/babel-plugin-svg-dynamic-title": {
4173
- "version": "5.4.0",
4174
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz",
4175
- "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==",
4176
- "engines": {
4177
- "node": ">=10"
4178
- },
4179
- "funding": {
4180
- "type": "github",
4181
- "url": "https://github.com/sponsors/gregberge"
4182
- }
4183
- },
4184
- "node_modules/@svgr/babel-plugin-svg-em-dimensions": {
4185
- "version": "5.4.0",
4186
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz",
4187
- "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==",
4188
- "engines": {
4189
- "node": ">=10"
4190
- },
4191
- "funding": {
4192
- "type": "github",
4193
- "url": "https://github.com/sponsors/gregberge"
4194
- }
4195
- },
4196
- "node_modules/@svgr/babel-plugin-transform-react-native-svg": {
4197
- "version": "5.4.0",
4198
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz",
4199
- "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==",
4200
- "engines": {
4201
- "node": ">=10"
4202
- },
4203
- "funding": {
4204
- "type": "github",
4205
- "url": "https://github.com/sponsors/gregberge"
4206
- }
4207
- },
4208
- "node_modules/@svgr/babel-plugin-transform-svg-component": {
4209
- "version": "5.5.0",
4210
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz",
4211
- "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==",
4212
- "engines": {
4213
- "node": ">=10"
4214
- },
4215
- "funding": {
4216
- "type": "github",
4217
- "url": "https://github.com/sponsors/gregberge"
4218
- }
4219
- },
4220
- "node_modules/@svgr/babel-preset": {
4221
- "version": "5.5.0",
4222
- "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz",
4223
- "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==",
4224
- "dependencies": {
4225
- "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0",
4226
- "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0",
4227
- "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1",
4228
- "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1",
4229
- "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0",
4230
- "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0",
4231
- "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0",
4232
- "@svgr/babel-plugin-transform-svg-component": "^5.5.0"
4233
- },
4234
- "engines": {
4235
- "node": ">=10"
4236
- },
4237
- "funding": {
4238
- "type": "github",
4239
- "url": "https://github.com/sponsors/gregberge"
4240
- }
4241
- },
4242
- "node_modules/@svgr/core": {
4243
- "version": "5.5.0",
4244
- "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz",
4245
- "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==",
4246
- "dependencies": {
4247
- "@svgr/plugin-jsx": "^5.5.0",
4248
- "camelcase": "^6.2.0",
4249
- "cosmiconfig": "^7.0.0"
4250
- },
4251
- "engines": {
4252
- "node": ">=10"
4253
- },
4254
- "funding": {
4255
- "type": "github",
4256
- "url": "https://github.com/sponsors/gregberge"
4257
- }
4258
- },
4259
- "node_modules/@svgr/hast-util-to-babel-ast": {
4260
- "version": "5.5.0",
4261
- "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz",
4262
- "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==",
4263
- "dependencies": {
4264
- "@babel/types": "^7.12.6"
4265
- },
4266
- "engines": {
4267
- "node": ">=10"
4268
- },
4269
- "funding": {
4270
- "type": "github",
4271
- "url": "https://github.com/sponsors/gregberge"
4272
- }
4273
- },
4274
- "node_modules/@svgr/plugin-jsx": {
4275
- "version": "5.5.0",
4276
- "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz",
4277
- "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==",
4278
- "dependencies": {
4279
- "@babel/core": "^7.12.3",
4280
- "@svgr/babel-preset": "^5.5.0",
4281
- "@svgr/hast-util-to-babel-ast": "^5.5.0",
4282
- "svg-parser": "^2.0.2"
4283
- },
4284
- "engines": {
4285
- "node": ">=10"
4286
- },
4287
- "funding": {
4288
- "type": "github",
4289
- "url": "https://github.com/sponsors/gregberge"
4290
- }
4291
- },
4292
- "node_modules/@svgr/plugin-svgo": {
4293
- "version": "5.5.0",
4294
- "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz",
4295
- "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==",
4296
- "dependencies": {
4297
- "cosmiconfig": "^7.0.0",
4298
- "deepmerge": "^4.2.2",
4299
- "svgo": "^1.2.2"
4300
- },
4301
- "engines": {
4302
- "node": ">=10"
4303
- },
4304
- "funding": {
4305
- "type": "github",
4306
- "url": "https://github.com/sponsors/gregberge"
4307
- }
4308
- },
4309
- "node_modules/@svgr/webpack": {
4310
- "version": "5.5.0",
4311
- "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz",
4312
- "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==",
4313
- "dependencies": {
4314
- "@babel/core": "^7.12.3",
4315
- "@babel/plugin-transform-react-constant-elements": "^7.12.1",
4316
- "@babel/preset-env": "^7.12.1",
4317
- "@babel/preset-react": "^7.12.5",
4318
- "@svgr/core": "^5.5.0",
4319
- "@svgr/plugin-jsx": "^5.5.0",
4320
- "@svgr/plugin-svgo": "^5.5.0",
4321
- "loader-utils": "^2.0.0"
4322
- },
4323
- "engines": {
4324
- "node": ">=10"
4325
- },
4326
- "funding": {
4327
- "type": "github",
4328
- "url": "https://github.com/sponsors/gregberge"
4329
- }
4330
- },
4331
- "node_modules/@tootallnate/once": {
4332
- "version": "1.1.2",
4333
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
4334
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
4335
- "engines": {
4336
- "node": ">= 6"
4337
- }
4338
- },
4339
- "node_modules/@trysound/sax": {
4340
- "version": "0.2.0",
4341
- "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
4342
- "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
4343
- "engines": {
4344
- "node": ">=10.13.0"
4345
- }
4346
- },
4347
- "node_modules/@types/babel__core": {
4348
- "version": "7.20.1",
4349
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz",
4350
- "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==",
4351
- "dependencies": {
4352
- "@babel/parser": "^7.20.7",
4353
- "@babel/types": "^7.20.7",
4354
- "@types/babel__generator": "*",
4355
- "@types/babel__template": "*",
4356
- "@types/babel__traverse": "*"
4357
- }
4358
- },
4359
- "node_modules/@types/babel__generator": {
4360
- "version": "7.6.4",
4361
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz",
4362
- "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==",
4363
- "dependencies": {
4364
- "@babel/types": "^7.0.0"
4365
- }
4366
- },
4367
- "node_modules/@types/babel__template": {
4368
- "version": "7.4.1",
4369
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
4370
- "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
4371
- "dependencies": {
4372
- "@babel/parser": "^7.1.0",
4373
- "@babel/types": "^7.0.0"
4374
- }
4375
- },
4376
- "node_modules/@types/babel__traverse": {
4377
- "version": "7.20.1",
4378
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz",
4379
- "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==",
4380
- "dependencies": {
4381
- "@babel/types": "^7.20.7"
4382
- }
4383
- },
4384
- "node_modules/@types/body-parser": {
4385
- "version": "1.19.2",
4386
- "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",
4387
- "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==",
4388
- "dependencies": {
4389
- "@types/connect": "*",
4390
- "@types/node": "*"
4391
- }
4392
- },
4393
- "node_modules/@types/bonjour": {
4394
- "version": "3.5.10",
4395
- "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz",
4396
- "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==",
4397
- "dependencies": {
4398
- "@types/node": "*"
4399
- }
4400
- },
4401
- "node_modules/@types/connect": {
4402
- "version": "3.4.35",
4403
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz",
4404
- "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==",
4405
- "dependencies": {
4406
- "@types/node": "*"
4407
- }
4408
- },
4409
- "node_modules/@types/connect-history-api-fallback": {
4410
- "version": "1.5.0",
4411
- "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz",
4412
- "integrity": "sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==",
4413
- "dependencies": {
4414
- "@types/express-serve-static-core": "*",
4415
- "@types/node": "*"
4416
- }
4417
- },
4418
- "node_modules/@types/eslint": {
4419
- "version": "8.44.1",
4420
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz",
4421
- "integrity": "sha512-XpNDc4Z5Tb4x+SW1MriMVeIsMoONHCkWFMkR/aPJbzEsxqHy+4Glu/BqTdPrApfDeMaXbtNh6bseNgl5KaWrSg==",
4422
- "dependencies": {
4423
- "@types/estree": "*",
4424
- "@types/json-schema": "*"
4425
- }
4426
- },
4427
- "node_modules/@types/eslint-scope": {
4428
- "version": "3.7.4",
4429
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz",
4430
- "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==",
4431
- "dependencies": {
4432
- "@types/eslint": "*",
4433
- "@types/estree": "*"
4434
- }
4435
- },
4436
- "node_modules/@types/estree": {
4437
- "version": "1.0.1",
4438
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz",
4439
- "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA=="
4440
- },
4441
- "node_modules/@types/express": {
4442
- "version": "4.17.17",
4443
- "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz",
4444
- "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==",
4445
- "dependencies": {
4446
- "@types/body-parser": "*",
4447
- "@types/express-serve-static-core": "^4.17.33",
4448
- "@types/qs": "*",
4449
- "@types/serve-static": "*"
4450
- }
4451
- },
4452
- "node_modules/@types/express-serve-static-core": {
4453
- "version": "4.17.35",
4454
- "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz",
4455
- "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==",
4456
- "dependencies": {
4457
- "@types/node": "*",
4458
- "@types/qs": "*",
4459
- "@types/range-parser": "*",
4460
- "@types/send": "*"
4461
- }
4462
- },
4463
- "node_modules/@types/graceful-fs": {
4464
- "version": "4.1.6",
4465
- "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz",
4466
- "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==",
4467
- "dependencies": {
4468
- "@types/node": "*"
4469
- }
4470
- },
4471
- "node_modules/@types/history": {
4472
- "version": "4.7.11",
4473
- "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz",
4474
- "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA=="
4475
- },
4476
- "node_modules/@types/html-minifier-terser": {
4477
- "version": "6.1.0",
4478
- "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
4479
- "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg=="
4480
- },
4481
- "node_modules/@types/http-errors": {
4482
- "version": "2.0.1",
4483
- "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.1.tgz",
4484
- "integrity": "sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ=="
4485
- },
4486
- "node_modules/@types/http-proxy": {
4487
- "version": "1.17.11",
4488
- "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.11.tgz",
4489
- "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==",
4490
- "dependencies": {
4491
- "@types/node": "*"
4492
- }
4493
- },
4494
- "node_modules/@types/invariant": {
4495
- "version": "2.2.35",
4496
- "resolved": "https://registry.npmjs.org/@types/invariant/-/invariant-2.2.35.tgz",
4497
- "integrity": "sha512-DxX1V9P8zdJPYQat1gHyY0xj3efl8gnMVjiM9iCY6y27lj+PoQWkgjt8jDqmovPqULkKVpKRg8J36iQiA+EtEg=="
4498
- },
4499
- "node_modules/@types/istanbul-lib-coverage": {
4500
- "version": "2.0.4",
4501
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
4502
- "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g=="
4503
- },
4504
- "node_modules/@types/istanbul-lib-report": {
4505
- "version": "3.0.0",
4506
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
4507
- "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
4508
- "dependencies": {
4509
- "@types/istanbul-lib-coverage": "*"
4510
- }
4511
- },
4512
- "node_modules/@types/istanbul-reports": {
4513
- "version": "1.1.2",
4514
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz",
4515
- "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==",
4516
- "dependencies": {
4517
- "@types/istanbul-lib-coverage": "*",
4518
- "@types/istanbul-lib-report": "*"
4519
- }
4520
- },
4521
- "node_modules/@types/jest": {
4522
- "version": "24.9.1",
4523
- "resolved": "https://registry.npmjs.org/@types/jest/-/jest-24.9.1.tgz",
4524
- "integrity": "sha512-Fb38HkXSVA4L8fGKEZ6le5bB8r6MRWlOCZbVuWZcmOMSCd2wCYOwN1ibj8daIoV9naq7aaOZjrLCoCMptKU/4Q==",
4525
- "dependencies": {
4526
- "jest-diff": "^24.3.0"
4527
- }
4528
- },
4529
- "node_modules/@types/json-schema": {
4530
- "version": "7.0.12",
4531
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz",
4532
- "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA=="
4533
- },
4534
- "node_modules/@types/json5": {
4535
- "version": "0.0.29",
4536
- "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
4537
- "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
4538
- },
4539
- "node_modules/@types/long": {
4540
- "version": "4.0.1",
4541
- "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
4542
- "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w=="
4543
- },
4544
- "node_modules/@types/mime": {
4545
- "version": "1.3.2",
4546
- "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz",
4547
- "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw=="
4548
- },
4549
- "node_modules/@types/node": {
4550
- "version": "13.13.52",
4551
- "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz",
4552
- "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ=="
4553
- },
4554
- "node_modules/@types/parse-json": {
4555
- "version": "4.0.0",
4556
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
4557
- "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA=="
4558
- },
4559
- "node_modules/@types/prettier": {
4560
- "version": "2.7.3",
4561
- "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz",
4562
- "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA=="
4563
- },
4564
- "node_modules/@types/prop-types": {
4565
- "version": "15.7.4",
4566
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
4567
- "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ=="
4568
- },
4569
- "node_modules/@types/q": {
4570
- "version": "1.5.5",
4571
- "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz",
4572
- "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ=="
4573
- },
4574
- "node_modules/@types/qs": {
4575
- "version": "6.9.7",
4576
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
4577
- "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw=="
4578
- },
4579
- "node_modules/@types/range-parser": {
4580
- "version": "1.2.4",
4581
- "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz",
4582
- "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw=="
4583
- },
4584
- "node_modules/@types/react": {
4585
- "version": "16.14.43",
4586
- "resolved": "https://registry.npmjs.org/@types/react/-/react-16.14.43.tgz",
4587
- "integrity": "sha512-7zdjv7jvoLLQg1tTvpQsm+hyNUMT2mPlNV1+d0I8fbGhkJl82spopMyBlu4wb1dviZAxpGdk5eHu/muacknnfw==",
4588
- "dependencies": {
4589
- "@types/prop-types": "*",
4590
- "@types/scheduler": "*",
4591
- "csstype": "^3.0.2"
4592
- }
4593
- },
4594
- "node_modules/@types/react-dom": {
4595
- "version": "16.9.14",
4596
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.14.tgz",
4597
- "integrity": "sha512-FIX2AVmPTGP30OUJ+0vadeIFJJ07Mh1m+U0rxfgyW34p3rTlXI+nlenvAxNn4BP36YyI9IJ/+UJ7Wu22N1pI7A==",
4598
- "dependencies": {
4599
- "@types/react": "^16"
4600
- }
4601
- },
4602
- "node_modules/@types/react-intl": {
4603
- "version": "3.0.0",
4604
- "resolved": "https://registry.npmjs.org/@types/react-intl/-/react-intl-3.0.0.tgz",
4605
- "integrity": "sha512-k8F3d05XQGEqSWIfK97bBjZe4z9RruXU9Wa7OZ2iUC5pdeIpzuQDZe/9C2J3Xir5//ZtAkhcv08Wfx3n5TBTQg==",
4606
- "deprecated": "This is a stub types definition. react-intl provides its own type definitions, so you do not need this installed.",
4607
- "dev": true,
4608
- "dependencies": {
4609
- "react-intl": "*"
4610
- }
4611
- },
4612
- "node_modules/@types/react-router": {
4613
- "version": "5.1.18",
4614
- "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.18.tgz",
4615
- "integrity": "sha512-YYknwy0D0iOwKQgz9v8nOzt2J6l4gouBmDnWqUUznltOTaon+r8US8ky8HvN0tXvc38U9m6z/t2RsVsnd1zM0g==",
4616
- "dependencies": {
4617
- "@types/history": "^4.7.11",
4618
- "@types/react": "*"
4619
- }
4620
- },
4621
- "node_modules/@types/react-router-dom": {
4622
- "version": "5.3.3",
4623
- "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz",
4624
- "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==",
4625
- "dependencies": {
4626
- "@types/history": "^4.7.11",
4627
- "@types/react": "*",
4628
- "@types/react-router": "*"
4629
- }
4630
- },
4631
- "node_modules/@types/react-transition-group": {
4632
- "version": "4.4.4",
4633
- "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.4.tgz",
4634
- "integrity": "sha512-7gAPz7anVK5xzbeQW9wFBDg7G++aPLAFY0QaSMOou9rJZpbuI58WAuJrgu+qR92l61grlnCUe7AFX8KGahAgug==",
4635
- "dependencies": {
4636
- "@types/react": "*"
4637
- }
4638
- },
4639
- "node_modules/@types/resolve": {
4640
- "version": "1.17.1",
4641
- "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
4642
- "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==",
4643
- "dependencies": {
4644
- "@types/node": "*"
4645
- }
4646
- },
4647
- "node_modules/@types/retry": {
4648
- "version": "0.12.0",
4649
- "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz",
4650
- "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA=="
4651
- },
4652
- "node_modules/@types/scheduler": {
4653
- "version": "0.16.2",
4654
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
4655
- "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
4656
- },
4657
- "node_modules/@types/semver": {
4658
- "version": "7.5.0",
4659
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz",
4660
- "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw=="
4661
- },
4662
- "node_modules/@types/send": {
4663
- "version": "0.17.1",
4664
- "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz",
4665
- "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==",
4666
- "dependencies": {
4667
- "@types/mime": "^1",
4668
- "@types/node": "*"
4669
- }
4670
- },
4671
- "node_modules/@types/serve-index": {
4672
- "version": "1.9.1",
4673
- "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz",
4674
- "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==",
4675
- "dependencies": {
4676
- "@types/express": "*"
4677
- }
4678
- },
4679
- "node_modules/@types/serve-static": {
4680
- "version": "1.15.2",
4681
- "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.2.tgz",
4682
- "integrity": "sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==",
4683
- "dependencies": {
4684
- "@types/http-errors": "*",
4685
- "@types/mime": "*",
4686
- "@types/node": "*"
4687
- }
4688
- },
4689
- "node_modules/@types/sockjs": {
4690
- "version": "0.3.33",
4691
- "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz",
4692
- "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==",
4693
- "dependencies": {
4694
- "@types/node": "*"
4695
- }
4696
- },
4697
- "node_modules/@types/stack-utils": {
4698
- "version": "2.0.1",
4699
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
4700
- "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw=="
4701
- },
4702
- "node_modules/@types/trusted-types": {
4703
- "version": "2.0.3",
4704
- "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz",
4705
- "integrity": "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g=="
4706
- },
4707
- "node_modules/@types/warning": {
4708
- "version": "3.0.0",
4709
- "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz",
4710
- "integrity": "sha1-DSUBJorY+ZYrdA04fEZU9fjiPlI= sha512-t/Tvs5qR47OLOr+4E9ckN8AmP2Tf16gWq+/qA4iUGS/OOyHVO8wv2vjJuX8SNOUTJyWb+2t7wJm6cXILFnOROA=="
4711
- },
4712
- "node_modules/@types/ws": {
4713
- "version": "8.5.5",
4714
- "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.5.tgz",
4715
- "integrity": "sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==",
4716
- "dependencies": {
4717
- "@types/node": "*"
4718
- }
4719
- },
4720
- "node_modules/@types/yargs": {
4721
- "version": "13.0.12",
4722
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.12.tgz",
4723
- "integrity": "sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ==",
4724
- "dependencies": {
4725
- "@types/yargs-parser": "*"
4726
- }
4727
- },
4728
- "node_modules/@types/yargs-parser": {
4729
- "version": "20.2.1",
4730
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz",
4731
- "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw=="
4732
- },
4733
- "node_modules/@typescript-eslint/eslint-plugin": {
4734
- "version": "5.62.0",
4735
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
4736
- "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
4737
- "dependencies": {
4738
- "@eslint-community/regexpp": "^4.4.0",
4739
- "@typescript-eslint/scope-manager": "5.62.0",
4740
- "@typescript-eslint/type-utils": "5.62.0",
4741
- "@typescript-eslint/utils": "5.62.0",
4742
- "debug": "^4.3.4",
4743
- "graphemer": "^1.4.0",
4744
- "ignore": "^5.2.0",
4745
- "natural-compare-lite": "^1.4.0",
4746
- "semver": "^7.3.7",
4747
- "tsutils": "^3.21.0"
4748
- },
4749
- "engines": {
4750
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4751
- },
4752
- "funding": {
4753
- "type": "opencollective",
4754
- "url": "https://opencollective.com/typescript-eslint"
4755
- },
4756
- "peerDependencies": {
4757
- "@typescript-eslint/parser": "^5.0.0",
4758
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
4759
- },
4760
- "peerDependenciesMeta": {
4761
- "typescript": {
4762
- "optional": true
4763
- }
4764
- }
4765
- },
4766
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": {
4767
- "version": "4.3.4",
4768
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4769
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4770
- "dependencies": {
4771
- "ms": "2.1.2"
4772
- },
4773
- "engines": {
4774
- "node": ">=6.0"
4775
- },
4776
- "peerDependenciesMeta": {
4777
- "supports-color": {
4778
- "optional": true
4779
- }
4780
- }
4781
- },
4782
- "node_modules/@typescript-eslint/experimental-utils": {
4783
- "version": "5.62.0",
4784
- "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.62.0.tgz",
4785
- "integrity": "sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==",
4786
- "dependencies": {
4787
- "@typescript-eslint/utils": "5.62.0"
4788
- },
4789
- "engines": {
4790
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4791
- },
4792
- "funding": {
4793
- "type": "opencollective",
4794
- "url": "https://opencollective.com/typescript-eslint"
4795
- },
4796
- "peerDependencies": {
4797
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
4798
- }
4799
- },
4800
- "node_modules/@typescript-eslint/parser": {
4801
- "version": "5.62.0",
4802
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
4803
- "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==",
4804
- "dependencies": {
4805
- "@typescript-eslint/scope-manager": "5.62.0",
4806
- "@typescript-eslint/types": "5.62.0",
4807
- "@typescript-eslint/typescript-estree": "5.62.0",
4808
- "debug": "^4.3.4"
4809
- },
4810
- "engines": {
4811
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4812
- },
4813
- "funding": {
4814
- "type": "opencollective",
4815
- "url": "https://opencollective.com/typescript-eslint"
4816
- },
4817
- "peerDependencies": {
4818
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
4819
- },
4820
- "peerDependenciesMeta": {
4821
- "typescript": {
4822
- "optional": true
4823
- }
4824
- }
4825
- },
4826
- "node_modules/@typescript-eslint/parser/node_modules/debug": {
4827
- "version": "4.3.4",
4828
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4829
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4830
- "dependencies": {
4831
- "ms": "2.1.2"
4832
- },
4833
- "engines": {
4834
- "node": ">=6.0"
4835
- },
4836
- "peerDependenciesMeta": {
4837
- "supports-color": {
4838
- "optional": true
4839
- }
4840
- }
4841
- },
4842
- "node_modules/@typescript-eslint/scope-manager": {
4843
- "version": "5.62.0",
4844
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz",
4845
- "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==",
4846
- "dependencies": {
4847
- "@typescript-eslint/types": "5.62.0",
4848
- "@typescript-eslint/visitor-keys": "5.62.0"
4849
- },
4850
- "engines": {
4851
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4852
- },
4853
- "funding": {
4854
- "type": "opencollective",
4855
- "url": "https://opencollective.com/typescript-eslint"
4856
- }
4857
- },
4858
- "node_modules/@typescript-eslint/type-utils": {
4859
- "version": "5.62.0",
4860
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz",
4861
- "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==",
4862
- "dependencies": {
4863
- "@typescript-eslint/typescript-estree": "5.62.0",
4864
- "@typescript-eslint/utils": "5.62.0",
4865
- "debug": "^4.3.4",
4866
- "tsutils": "^3.21.0"
4867
- },
4868
- "engines": {
4869
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4870
- },
4871
- "funding": {
4872
- "type": "opencollective",
4873
- "url": "https://opencollective.com/typescript-eslint"
4874
- },
4875
- "peerDependencies": {
4876
- "eslint": "*"
4877
- },
4878
- "peerDependenciesMeta": {
4879
- "typescript": {
4880
- "optional": true
4881
- }
4882
- }
4883
- },
4884
- "node_modules/@typescript-eslint/type-utils/node_modules/debug": {
4885
- "version": "4.3.4",
4886
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4887
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4888
- "dependencies": {
4889
- "ms": "2.1.2"
4890
- },
4891
- "engines": {
4892
- "node": ">=6.0"
4893
- },
4894
- "peerDependenciesMeta": {
4895
- "supports-color": {
4896
- "optional": true
4897
- }
4898
- }
4899
- },
4900
- "node_modules/@typescript-eslint/types": {
4901
- "version": "5.62.0",
4902
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz",
4903
- "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==",
4904
- "engines": {
4905
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4906
- },
4907
- "funding": {
4908
- "type": "opencollective",
4909
- "url": "https://opencollective.com/typescript-eslint"
4910
- }
4911
- },
4912
- "node_modules/@typescript-eslint/typescript-estree": {
4913
- "version": "5.62.0",
4914
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz",
4915
- "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==",
4916
- "dependencies": {
4917
- "@typescript-eslint/types": "5.62.0",
4918
- "@typescript-eslint/visitor-keys": "5.62.0",
4919
- "debug": "^4.3.4",
4920
- "globby": "^11.1.0",
4921
- "is-glob": "^4.0.3",
4922
- "semver": "^7.3.7",
4923
- "tsutils": "^3.21.0"
4924
- },
4925
- "engines": {
4926
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4927
- },
4928
- "funding": {
4929
- "type": "opencollective",
4930
- "url": "https://opencollective.com/typescript-eslint"
4931
- },
4932
- "peerDependenciesMeta": {
4933
- "typescript": {
4934
- "optional": true
4935
- }
4936
- }
4937
- },
4938
- "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
4939
- "version": "4.3.4",
4940
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
4941
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
4942
- "dependencies": {
4943
- "ms": "2.1.2"
4944
- },
4945
- "engines": {
4946
- "node": ">=6.0"
4947
- },
4948
- "peerDependenciesMeta": {
4949
- "supports-color": {
4950
- "optional": true
4951
- }
4952
- }
4953
- },
4954
- "node_modules/@typescript-eslint/utils": {
4955
- "version": "5.62.0",
4956
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz",
4957
- "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==",
4958
- "dependencies": {
4959
- "@eslint-community/eslint-utils": "^4.2.0",
4960
- "@types/json-schema": "^7.0.9",
4961
- "@types/semver": "^7.3.12",
4962
- "@typescript-eslint/scope-manager": "5.62.0",
4963
- "@typescript-eslint/types": "5.62.0",
4964
- "@typescript-eslint/typescript-estree": "5.62.0",
4965
- "eslint-scope": "^5.1.1",
4966
- "semver": "^7.3.7"
4967
- },
4968
- "engines": {
4969
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
4970
- },
4971
- "funding": {
4972
- "type": "opencollective",
4973
- "url": "https://opencollective.com/typescript-eslint"
4974
- },
4975
- "peerDependencies": {
4976
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
4977
- }
4978
- },
4979
- "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": {
4980
- "version": "5.1.1",
4981
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
4982
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
4983
- "dependencies": {
4984
- "esrecurse": "^4.3.0",
4985
- "estraverse": "^4.1.1"
4986
- },
4987
- "engines": {
4988
- "node": ">=8.0.0"
4989
- }
4990
- },
4991
- "node_modules/@typescript-eslint/utils/node_modules/estraverse": {
4992
- "version": "4.3.0",
4993
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
4994
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
4995
- "engines": {
4996
- "node": ">=4.0"
4997
- }
4998
- },
4999
- "node_modules/@typescript-eslint/visitor-keys": {
This file is too large to show in full.
package.json
deleted
-54
@@ -1,54 +0,0 @@
1
-{
2
- "name": "setoelkahfi.com",
3
- "version": "0.3.0",
4
- "private": true,
5
- "dependencies": {
6
- "@babel/runtime": "^7.16.7",
7
- "@types/jest": "^24.9.1",
8
- "@types/node": "^13.13.52",
9
- "@types/react": "^16.14.43",
10
- "@types/react-dom": "^16.9.14",
11
- "@types/react-router-dom": "^5.3.2",
12
- "axios": "^0.25.0",
13
- "bootstrap": "5.1.3",
14
- "dexie": "^3.2.0",
15
- "express": "^4.18.2",
16
- "firebase": "^8.6.2",
17
- "react": "^16.14.0",
18
- "react-bootstrap": "^2.1.1",
19
- "react-dom": "^16.14.0",
20
- "react-icons": "^4.3.1",
21
- "react-intl": "^2.9.0",
22
- "react-rotating-text": "^1.4.1",
23
- "react-router-dom": "^5.3.0",
24
- "react-scripts": "^5.0.0",
25
- "react-youtube": "^7.14.0",
26
- "tone": "^14.7.77",
27
- "typescript": "^4.0.0"
28
- },
29
- "scripts": {
30
- "client:start": "PORT=3002 react-scripts start",
31
- "client:build": "react-scripts build",
32
- "client:test": "react-scripts test",
33
- "client:eject": "react-scripts eject",
34
- "server:build": "npx tsc --project ./tsconfig.server.json --outDir ./build",
35
- "start": "node ./build/server/server.js",
36
- "build": "npm run client:build && npm run server:build"
37
- },
38
- "eslintConfig": {
39
- "extends": "react-app"
40
- },
41
- "browserslist": [
42
- ">0.2%",
43
- "not dead",
44
- "not ie <= 11",
45
- "not op_mini all"
46
- ],
47
- "devDependencies": {
48
- "@types/express": "^4.17.17",
49
- "@types/react-intl": "^3.0.0"
50
- },
51
- "overrides": {
52
- "autoprefixer": "10.4.5"
53
-}
54
-}
public/favicon.ico
Binary files a/public/favicon.ico and /dev/null differ
public/index.html
deleted
-20
@@ -1,20 +0,0 @@
1
-<!DOCTYPE html>
2
-<html lang="en" id="lang">
3
- <head>
4
- <meta charset="utf-8" />
5
- <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" />
6
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
7
- <meta name="theme-color" content="#000000" />
8
- <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
9
- <title>Seto Elkahfi</title>
10
- <link rel="stylesheet" href="//cdn.jsdelivr.net/jquery.supersized/3.2.7/core/css/supersized.core.css">
11
- <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
12
- <script src="https://cdn.jsdelivr.net/jquery.supersized/3.2.7/core/js/supersized.core.3.2.1.min.js"></script>
13
- <script type="text/javascript">$(function(e){e.supersized({start_slide:0,new_window:1,image_protect:1,min_width:0,min_height:0,vertical_center:1,horizontal_center:1,fit_always:0,fit_portrait:1,fit_landscape:0,slides:[{image:"https://buildinternet.s3.amazonaws.com/projects/supersized/3.2/slides/kazvan-1.jpg",title:"Image Credit: Maria Kazvan"},{image:"https://buildinternet.s3.amazonaws.com/projects/supersized/3.2/slides/kazvan-3.jpg",title:"Image Credit: Maria Kazvan"},{image:"https://buildinternet.s3.amazonaws.com/projects/supersized/3.2/slides/wojno-1.jpg",title:"Image Credit: Colin Wojno"},{image:"https://buildinternet.s3.amazonaws.com/projects/supersized/3.2/slides/wojno-2.jpg",title:"Image Credit: Colin Wojno"},{image:"https://buildinternet.s3.amazonaws.com/projects/supersized/3.2/slides/wojno-3.jpg",title:"Image Credit: Colin Wojno"}]})});</script>
14
- <script id="initial-data"></script>
15
- </head>
16
- <body>
17
- <noscript>You need to enable JavaScript to run this app.</noscript>
18
- <div id="root"></div>
19
- </body>
20
-</html>
public/manifest.json
deleted
-15
@@ -1,15 +0,0 @@
1
-{
2
- "short_name": "Seto Elkahfi",
3
- "name": "Seto Elkahfi Personal Page",
4
- "icons": [
5
- {
6
- "src": "favicon.ico",
7
- "sizes": "64x64 32x32 24x24 16x16",
8
- "type": "image/x-icon"
9
- }
10
- ],
11
- "start_url": ".",
12
- "display": "standalone",
13
- "theme_color": "#000000",
14
- "background_color": "#ffffff"
15
-}
server/server.tsx
deleted
-87
@@ -1,87 +0,0 @@
1
-import express from 'express'
2
-import React from 'react'
3
-import ReactDOMServer from 'react-dom/server'
4
-import App from '../src/components/App'
5
-import path from 'path';
6
-import fs from 'fs';
7
-import { StaticRouter, matchPath } from 'react-router-dom';
8
-import routes, { Path } from '../src/shared/routes';
9
-import Firebase from '../src/components/Firebase';
10
-import firebaseInstance from '../src/components/Firebase/config';
11
-import { determineUserLang } from '../src/shared/i18n';
12
-
13
-const server = express();
14
-
15
-server.use('/static', express.static('./build/static'));
16
-server.use('/favicon.ico', express.static('./build/favicon.ico'));
17
-server.use('/manifest.json', express.static('./build/manifest.json'));
18
-
19
-server.get('/*', (req, res, next) => {
20
-
21
- const acceptsLanguages = req.acceptsLanguages();
22
- console.log('SERVER#acceptsLanguages', acceptsLanguages);
23
- const language = determineUserLang(acceptsLanguages);
24
- console.log('SERVER#language', language);
25
-
26
- const activeRoute = routes.find((route) => {
27
- const cleanUrl = req.url.split('?')[0];
28
- console.log('cleanUrl', cleanUrl);
29
- return matchPath(route.path, cleanUrl)
30
- })
31
-
32
- const firebase = new Firebase(language, firebaseInstance.database());
33
-
34
- if (!activeRoute) {
35
- console.log('!activeRoute');
36
- return next();
37
- }
38
-
39
- // We have check the for validity of the path,
40
- // so we can cast it to Path.
41
- const ourPath: Path = req.path as Path;
42
- console.log('req.path', req.path);
43
- console.log('ourPath', ourPath);
44
-
45
- activeRoute
46
- .fetchInitialData(ourPath, firebase)
47
- .then((initialData) => {
48
-
49
- console.log('data', initialData);
50
- console.log('data, stringify', JSON.stringify(initialData));
51
-
52
- const app = ReactDOMServer.renderToString(
53
- <StaticRouter location={req.url}>
54
- <App initialData={initialData} />
55
- </StaticRouter>
56
- );
57
-
58
- const indexFile = path.resolve('./build/index.html');
59
-
60
- fs.readFile(indexFile, 'utf8', (err, data) => {
61
- if (err) {
62
- console.error('Something went wrong:', err);
63
- return res.status(500).send('Oops, better luck next time!');
64
- }
65
- return res.send(
66
- data
67
- .replace(
68
- '<div id="root"></div>',
69
- `<div id="root">${app}</div>`
70
- )
71
- .replace(
72
- '<script id="initial-data"></script>',
73
- `<script>
74
- window.__DATA__=${JSON.stringify(initialData)}
75
- </script>`
76
- )
77
- );
78
- });
79
- })
80
- .catch(next);
81
-});
82
-// Run on PORT 3002 unless SETOELKAHFI_COM_PORT is set
83
-const port = process.env.SETOELKAHFI_COM_PORT || 3002;
84
-
85
-server.listen(port, () => {
86
- console.log(`Server running on http://localhost:${port}`)
87
-})
\ No newline at end of file
src/App.test.js
deleted
-9
@@ -1,9 +0,0 @@
1
-import React from 'react';
2
-import ReactDOM from 'react-dom';
3
-import App from './App';
4
-
5
-it('renders without crashing', () => {
6
- const div = document.createElement('div');
7
- ReactDOM.render(<App />, div);
8
- ReactDOM.unmountComponentAtNode(div);
9
-});
src/components/About.tsx
deleted
-80
@@ -1,80 +0,0 @@
1
-import React, { Component } from 'react';
2
-import { FormattedMessage } from 'react-intl';
3
-import Firebase from './Firebase';
4
-import app from 'firebase/app';
5
-import { InitialData, Path } from '../shared/routes';
6
-
7
-type AboutProps = {
8
- firebase?: Firebase
9
- initialData?: InitialData
10
-}
11
-
12
-type AboutState = {
13
- contentMain: string,
14
- contentSkills: string,
15
- updatedAt: string
16
-}
17
-
18
-class About extends Component<AboutProps, AboutState> {
19
-
20
- aboutRef: app.database.Reference | undefined;
21
-
22
- constructor(props: AboutProps) {
23
- super(props);
24
- this.aboutRef = this.props.firebase?.aboutRef();
25
- if (this.props.initialData?.path === Path.ABOUT) {
26
- console.log('SERVER#ABOUT', this.props.initialData);
27
- this.state = {
28
- contentMain: this.props.initialData.data['contentMain'],
29
- contentSkills: this.props.initialData.data['contentSkills'],
30
- updatedAt: this.props.initialData.data['updatedAt']
31
- }
32
- } else {
33
- console.log('CLIENT#ABOUT');
34
- this.state = {
35
- contentMain: "Loading ...",
36
- contentSkills: "Loading ...",
37
- updatedAt: "Loading ..."
38
- }
39
- }
40
- }
41
-
42
- componentDidMount() {
43
- if (this.props.initialData?.path === Path.ABOUT)
44
- return;
45
-
46
- this.aboutRef?.on('value', (snapshot) => {
47
- let items = snapshot?.val();
48
- this.setState({
49
- contentMain: items.contentMain,
50
- contentSkills: items.contentSkills,
51
- updatedAt: items.updatedAt
52
- });
53
- });
54
- }
55
-
56
- componentWillUnmount() {
57
- this.aboutRef?.off();
58
- }
59
-
60
- render() {
61
- return (
62
- <div>
63
- <h1>
64
- <FormattedMessage id="about.title"
65
- defaultMessage="About"
66
- description="About page title"/>
67
- </h1>
68
- <p style={{lineHeight: "150%"}}>{this.state.contentMain}</p>
69
- <h2 style={{marginTop: 8}}>
70
- <FormattedMessage id="about.skills"
71
- defaultMessage="Skills"
72
- description="About page skills"/>
73
- </h2>
74
- <p style={{lineHeight: "150%"}}>{this.state.contentSkills}</p>
75
- </div>
76
- );
77
- }
78
-}
79
-
80
-export default About;
src/components/App.tsx
deleted
-90
@@ -1,90 +0,0 @@
1
-import React, { Component } from 'react';
2
-import Header from './Header';
3
-import Main from './Main';
4
-import FooterLinks from './FooterLinks';
5
-import { IntlProvider, addLocaleData } from 'react-intl';
6
-import Firebase, { FirebaseContext } from '../components/Firebase';
7
-import localeEn from 'react-intl/locale-data/en';
8
-import localeSe from 'react-intl/locale-data/se';
9
-import localeId from 'react-intl/locale-data/id';
10
-import localeDe from 'react-intl/locale-data/de';
11
-import localeFr from 'react-intl/locale-data/fr';
12
-import localeZh from 'react-intl/locale-data/zh';
13
-import localeEs from 'react-intl/locale-data/es';
14
-import localeJa from 'react-intl/locale-data/ja';
15
-import messages_sv from "../shared/translations/sv.json";
16
-import messages_id from "../shared/translations/id.json";
17
-import messages_en from "../shared/translations/en.json";
18
-import messagesDe from "../shared/translations/de.json";
19
-import messagesFr from "../shared/translations/fr.json";
20
-import messagesZh from "../shared/translations/zh.json";
21
-import messagesEs from "../shared/translations/es.json";
22
-import messagesJa from "../shared/translations/ja.json";
23
-import { InitialData } from '../shared/routes';
24
-
25
-addLocaleData([
26
- ...localeEn,
27
- ...localeId,
28
- ...localeSe,
29
- ...localeDe,
30
- ...localeFr,
31
- ...localeZh,
32
- ...localeEs,
33
- ...localeJa
34
-]);
35
-
36
-let i18nConfig = {
37
- language: 'en',
38
- messages: messages_en
39
-};
40
-
41
-export type AppProps = {
42
- firebase?: Firebase
43
- initialData?: InitialData
44
-}
45
-
46
-type AppState = {
47
- language: string
48
-}
49
-
50
-class App extends Component<AppProps, AppState> {
51
-
52
- onChangeLanguage(language: string) {
53
- switch (language) {
54
- case 'se': i18nConfig.messages = messages_sv; break;
55
- case 'en': i18nConfig.messages = messages_en; break;
56
- case 'id': i18nConfig.messages = messages_id; break;
57
- case 'de': i18nConfig.messages = messagesDe; break;
58
- case 'fr': i18nConfig.messages = messagesFr; break;
59
- case 'zh': i18nConfig.messages = messagesZh; break;
60
- case 'es': i18nConfig.messages = messagesEs; break;
61
- case 'ja': i18nConfig.messages = messagesJa; break;
62
- default: i18nConfig.messages = messages_en; break;
63
- }
64
- i18nConfig.language = language;
65
- this.setState({ language: language })
66
- if (this.props.firebase) {
67
- this.props.firebase.setLanguage(language)
68
- }
69
- }
70
-
71
- render() {
72
- return (
73
- <IntlProvider locale={this.props.firebase?.language} messages={i18nConfig.messages}>
74
- <FirebaseContext.Provider value={this.props.firebase}>
75
- <Header
76
- onChangeLanguage={this.onChangeLanguage.bind(this)}
77
- selectedLanguage={this.props.firebase?.language || 'en'}
78
- />
79
- <Main
80
- firebase={this.props.firebase}
81
- initialData={this.props.initialData}
82
- />
83
- <FooterLinks />
84
- </FirebaseContext.Provider>
85
- </IntlProvider >
86
- );
87
- }
88
-}
89
-
90
-export default App;
\ No newline at end of file
src/components/AudioPlayer.tsx
deleted
-437
@@ -1,437 +0,0 @@
1
-/* eslint-disable no-script-url */
2
-/* eslint-disable jsx-a11y/anchor-is-valid */
3
-import axios from 'axios';
4
-import React, { CSSProperties } from 'react';
5
-import { Component } from 'react';
6
-import { Col, Row, Spinner } from 'react-bootstrap';
7
-import YouTube, { Options } from 'react-youtube';
8
-import { GiMicrophone, GiDrumKit, GiGuitarHead, GiGuitarBassHead, GiPianoKeys, GiPlayButton, GiPauseButton } from 'react-icons/gi';
9
-import { IconContext } from 'react-icons';
10
-import { db, AudioFiles } from './db';
11
-import { FormattedMessage } from 'react-intl';
12
-import { Channel, Player} from 'tone';
13
-
14
-const buttonStyle: CSSProperties = {
15
-
16
-}
17
-
18
-interface Result {
19
- source_file: string,
20
- filename: string
21
-}
22
-
23
-interface AudioFile {
24
- youtube_video_id: string,
25
- results: Result[]
26
-}
27
-
28
-interface YouTubeEventTarget {
29
- pauseVideo: () => void,
30
- playVideo: () => void,
31
- seekTo: (arg0: number) => void,
32
- getPlayerState: () => YouTubePlayerState,
33
- getCurrentTime: () => number
34
-
35
-}
36
-
37
-// https://developers.google.com/youtube/iframe_api_reference#Playback_status
38
-enum YouTubePlayerState {
39
- unstarted = -1, ended, playing, paused, buffering, videoCued
40
-}
41
-
42
-type AudioProps = {
43
- audioFileId: string
44
-}
45
-
46
-type AudioState = {
47
- audioFile: AudioFile | null,
48
- playerTime: number,
49
- isPlayerReady: boolean,
50
- isYoutubePlayerReady: boolean,
51
- isPlaying: boolean
52
- vocalAudioOn: boolean
53
- guitarAudioOn: boolean
54
- bassAudioOn: boolean
55
- drumsAudioOn: boolean
56
- pianoAudioOn: boolean
57
-}
58
-
59
-export enum Mode {
60
- vocalist, bassist, guitarist, drummer, keyboardist
61
-}
62
-
63
-class AudioPlayer extends Component<AudioProps, AudioState> {
64
-
65
- vocalPlayer: Player | null = null;
66
- otherPlayer: Player | null = null;
67
- bassPlayer: Player | null = null;
68
- drumsPlayer: Player | null = null;
69
- pianoPlayer: Player | null = null;
70
-
71
- youTubeEventTarget: YouTubeEventTarget | null = null
72
- updateYouTubePlayerStatusIntervalId: any | null = null
73
-
74
- constructor(props: AudioProps) {
75
- super(props);
76
- this.state = {
77
- audioFile: null,
78
- playerTime: 0,
79
- isPlayerReady: false,
80
- isYoutubePlayerReady: false,
81
- isPlaying: false,
82
- vocalAudioOn: true,
83
- guitarAudioOn: true,
84
- bassAudioOn: true,
85
- drumsAudioOn: true,
86
- pianoAudioOn: true,
87
- }
88
- }
89
-
90
- componentDidMount() {
91
- axios.get(`/splitfire/${this.props.audioFileId}`)
92
- .then(res => {
93
- // console.log("Get results", res);
94
- const audioFile = res.data.audio_file;
95
- this.setState({ audioFile });
96
- // console.log(this.state);
97
- this.downloadAudioFilesIfNeeded();
98
- });
99
- }
100
-
101
- componentWillUnmount() {
102
- this.setState({isPlaying: false})
103
- this.vocalPlayer?.stop()
104
- this.bassPlayer?.stop()
105
- this.drumsPlayer?.stop()
106
- this.pianoPlayer?.stop()
107
- this.otherPlayer?.stop()
108
- }
109
-
110
- downloadAudioFilesIfNeeded() {
111
- this._prepareAudio(Mode.vocalist);
112
- this._prepareAudio(Mode.bassist);
113
- this._prepareAudio(Mode.drummer);
114
- this._prepareAudio(Mode.guitarist);
115
- this._prepareAudio(Mode.keyboardist);
116
- }
117
-
118
- async _downloadFile(type: Mode) {
119
- // console.log('_downloadFile', type);
120
- let audioFile: Result | undefined;
121
- switch (type) {
122
- case Mode.vocalist:
123
- audioFile = this.state.audioFile?.results.find(obj => { return obj.filename.startsWith('vocals') });
124
- break;
125
- case Mode.bassist:
126
- audioFile = this.state.audioFile?.results.find(obj => { return obj.filename.startsWith('bass') });
127
- break;
128
- case Mode.drummer:
129
- audioFile = this.state.audioFile?.results.find(obj => { return obj.filename.startsWith('drums') });
130
- break;
131
- case Mode.guitarist:
132
- audioFile = this.state.audioFile?.results.find(obj => { return obj.filename.startsWith('other') });
133
- break;
134
- case Mode.keyboardist:
135
- audioFile = this.state.audioFile?.results.find(obj => { return obj.filename.startsWith('piano') });
136
- break;
137
- }
138
-
139
- const audioFileId = this.props.audioFileId;
140
- // console.log("Download url", audioFile?.source_file);
141
- axios({
142
- url: audioFile?.source_file,
143
- method: 'GET',
144
- responseType: 'blob',
145
- }).then((response) => {
146
- const file = new Blob([response.data], { type: 'audio/mp3' });
147
- const item: AudioFiles = {
148
- audioFileId, type: type, file
149
- }
150
- db.audioFiles.add(item);
151
- // console.log('File Downloaded', file);
152
- this._setAudioSrc(type, file);
153
- }).catch(error => {
154
- // console.log(error);
155
- });
156
- }
157
-
158
- async _prepareAudio(type: Mode) {
159
- const audioFileId = this.props.audioFileId;
160
- db.audioFiles
161
- .get({ audioFileId: audioFileId, type: type })
162
- .then(record => {
163
- if (record?.file === undefined) {
164
- this._downloadFile(type);
165
- return
166
- }
167
- this._setAudioSrc(type, record.file)
168
- })
169
- .catch(onrejected => {
170
- // console.log("Rejected", onrejected);
171
- });
172
- }
173
-
174
- _setAudioSrc(type: Mode, file: Blob) {
175
- // Get window.URL object
176
- const URL = window.URL || window.webkitURL;
177
- // Create and revoke ObjectURL
178
- const audioFileURL = URL.createObjectURL(file);
179
- const channel = new Channel().toDestination();
180
-
181
- switch (type) {
182
- case Mode.vocalist:
183
- this.vocalPlayer = new Player({ url: audioFileURL, onload: this._updatePlayerStatus })
184
- this.vocalPlayer.connect(channel);
185
- break;
186
- case Mode.bassist:
187
- this.bassPlayer = new Player({ url: audioFileURL, onload: this._updatePlayerStatus })
188
- this.bassPlayer.connect(channel);
189
- break;
190
- case Mode.drummer:
191
- this.drumsPlayer = new Player({ url: audioFileURL, onload: this._updatePlayerStatus })
192
- this.drumsPlayer.connect(channel);
193
- break;
194
- case Mode.guitarist:
195
- this.otherPlayer = new Player({ url: audioFileURL, onload: this._updatePlayerStatus })
196
- this.otherPlayer.connect(channel);
197
- break;
198
- case Mode.keyboardist:
199
- this.pianoPlayer = new Player({ url: audioFileURL, onload: this._updatePlayerStatus })
200
- this.pianoPlayer.connect(channel);
201
- break;
202
- }
203
- }
204
-
205
- _updatePlayerStatus: (() => void) = () => {
206
- if (
207
- this.vocalPlayer?.loaded &&
208
- this.drumsPlayer?.loaded &&
209
- this.otherPlayer?.loaded &&
210
- this.bassPlayer?.loaded &&
211
- this.pianoPlayer?.loaded
212
- ) {
213
- this.setState({ isPlayerReady: true });
214
- }
215
- }
216
-
217
- togglePlayAudio() {
218
- this.setState({isPlaying: !this.state.isPlaying})
219
- if (this.state.isPlaying) {
220
- this.vocalPlayer?.stop()
221
- this.bassPlayer?.stop()
222
- this.drumsPlayer?.stop()
223
- this.pianoPlayer?.stop()
224
- this.otherPlayer?.stop()
225
- this.youTubeEventTarget?.pauseVideo()
226
- } else {
227
- this.youTubeEventTarget?.seekTo(0)
228
- this.youTubeEventTarget?.playVideo()
229
- this.vocalPlayer?.start();
230
- this.bassPlayer?.start();
231
- this.drumsPlayer?.start();
232
- this.pianoPlayer?.start();
233
- this.otherPlayer?.start();
234
- }
235
- }
236
-
237
- setToggleInstrument(mode: Mode) {
238
- switch (mode) {
239
- case Mode.vocalist:
240
- if (!this.vocalPlayer) return;
241
- this.setState({ vocalAudioOn: !this.state.vocalAudioOn });
242
- this.vocalPlayer.mute = this.state.vocalAudioOn;
243
- break;
244
- case Mode.bassist:
245
- if (!this.bassPlayer) return;
246
- this.setState({ bassAudioOn: !this.state.bassAudioOn });
247
- this.bassPlayer.mute = this.state.bassAudioOn;
248
- break;
249
- case Mode.guitarist:
250
- if (!this.otherPlayer) return;
251
- this.setState({ guitarAudioOn: !this.state.guitarAudioOn });
252
- this.otherPlayer.mute = this.state.guitarAudioOn;
253
- break;
254
- case Mode.keyboardist:
255
- if (!this.pianoPlayer) return;
256
- this.setState({ pianoAudioOn: !this.state.pianoAudioOn });
257
- this.pianoPlayer.mute = this.state.pianoAudioOn;;
258
- break;
259
- case Mode.drummer:
260
- if (!this.drumsPlayer) return;
261
- this.setState({ drumsAudioOn: !this.state.drumsAudioOn });
262
- this.drumsPlayer.mute = this.state.drumsAudioOn;
263
- break;
264
- }
265
- }
266
-
267
- render() {
268
- if (this.state.isPlayerReady) {
269
- const opts: Options = {
270
- width: '100%',
271
- playerVars: {
272
- // https://developers.google.com/youtube/player_parameters
273
- autoplay: 0,
274
- mute: 1,
275
- controls: 0,
276
- rel: 0,
277
- showinfo: 0
278
- },
279
- };
280
- let togglePlayButton = <div>
281
- <p>
282
- <FormattedMessage id="player.loadingYoutube"
283
- defaultMessage="Waiting for YouTube..."
284
- description="Loading message"/>
285
- </p>
286
- <Spinner animation='grow' variant="danger"></Spinner>
287
- </div>
288
- if (this.state.isYoutubePlayerReady) {
289
- let button
290
- if (this.state.isPlaying) {
291
- button = <Col>
292
- <GiPauseButton
293
- color={this.state.isPlaying ? `white` : `red`}
294
- onClick={() => this.togglePlayAudio() }
295
- style={buttonStyle} />
296
- </Col>
297
- } else {
298
- button = <Col>
299
- <GiPlayButton
300
- color={this.state.isPlaying ? `white` : `red`}
301
- onClick={() => this.togglePlayAudio() }
302
- style={buttonStyle} />
303
- </Col>
304
- }
305
- togglePlayButton = <Col>
306
- <p>
307
- <FormattedMessage id="player.instruction"
308
- defaultMessage="Click isntrument icon to mute part of the song."
309
- description="Instruction message"/>
310
- </p>
311
- {button}
312
- </Col>
313
- }
314
-
315
- return (
316
- <IconContext.Provider value={{ size: "2em", color: "white", className: "global-class-name" }}>
317
- <Header/>
318
- <Row className="mb-3 mt-3">
319
- {togglePlayButton}
320
- </Row>
321
- <Row className="mb-3 mt-3">
322
- <Col>
323
- <GiMicrophone
324
- color={this.state.vocalAudioOn ? `white` : `red`}
325
- onClick={() => this.setToggleInstrument(Mode.vocalist)}
326
- style={buttonStyle} />
327
- </Col>
328
- <Col>
329
- <GiDrumKit
330
- color={this.state.drumsAudioOn ? `white` : `red`}
331
- onClick={() => this.setToggleInstrument(Mode.drummer)}
332
- style={buttonStyle} />
333
- </Col>
334
- <Col>
335
- <GiGuitarBassHead
336
- color={this.state.bassAudioOn ? `white` : `red`}
337
- onClick={() => this.setToggleInstrument(Mode.bassist)}
338
- style={buttonStyle} />
339
- </Col>
340
- <Col>
341
- <GiGuitarHead
342
- color={this.state.guitarAudioOn ? `white` : `red`}
343
- onClick={() => this.setToggleInstrument(Mode.guitarist)}
344
- style={buttonStyle} />
345
- </Col>
346
- <Col>
347
- <GiPianoKeys
348
- color={this.state.pianoAudioOn ? `white` : `red`}
349
- onClick={() => this.setToggleInstrument(Mode.keyboardist)}
350
- style={buttonStyle} />
351
- </Col>
352
- </Row>
353
- <Row>
354
- <Col style={{display: this.state.isYoutubePlayerReady ? 'block' : 'none', pointerEvents: 'none'}}>
355
- <YouTube
356
- videoId={this.state.audioFile?.youtube_video_id}
357
- opts={opts}
358
- onReady={this._onReady.bind(this)}
359
- onStateChange={this._onStateChange.bind(this)}
360
- />
361
- </Col>
362
- </Row>
363
- </IconContext.Provider>
364
- )
365
- } else {
366
- return (
367
- <Row>
368
- <Header/>
369
- <Col className="mb-3 mt-3">
370
- <p>
371
- <FormattedMessage id="player.loading"
372
- defaultMessage="🤖 I'm doing my business..."
373
- description="Loading message"/>
374
- </p>
375
- <Spinner animation='grow' variant="danger"></Spinner>
376
- </Col>
377
- </Row>
378
- )
379
- }
380
- }
381
-
382
- _onReady(event: any) {
383
- // console.log('YouTube ready: ', event)
384
- this.youTubeEventTarget = event.target
385
- this.youTubeEventTarget?.playVideo()
386
- this.updateYouTubePlayerStatusIntervalId = setInterval(() => {
387
- if (!this.state.isYoutubePlayerReady) {
388
- this._updateYouTubePlayerStatusIfNeeded()
389
- }
390
- }, 2000)
391
- }
392
-
393
- _onStateChange(event: any) {
394
- // console.log('State changed: ', event)
395
- // console.log('getCurrentTime: ', event.target.getCurrentTime())
396
- // console.log('getPlayerState: ', event.target.getPlayerState())
397
- if (!this.youTubeEventTarget) return
398
-
399
- if (this.youTubeEventTarget.getPlayerState() === YouTubePlayerState.ended) {
400
- this.setState({ isPlaying: false })
401
- }
402
- }
403
-
404
- _updateYouTubePlayerStatusIfNeeded() {
405
-
406
- if (this.state.isYoutubePlayerReady) return
407
- if (!this.youTubeEventTarget) return
408
-
409
- // Let's say 5 seconds buffer is enough.
410
- if (this.youTubeEventTarget?.getCurrentTime() > 5) {
411
- this.setState({ isYoutubePlayerReady: true })
412
- this.youTubeEventTarget?.pauseVideo()
413
-
414
- if (this.updateYouTubePlayerStatusIntervalId)
415
- clearInterval(this.updateYouTubePlayerStatusIntervalId)
416
- }
417
- }
418
-
419
-}
420
-
421
-const Header = () => (
422
- <Row className="mb-3 mt-3">
423
- <Col>
424
- <h1>SplitFire AI</h1>
425
- <p>
426
- <FormattedMessage id="splitfire.whatIs"
427
- defaultMessage="I'm an artificial intelligence software who will split your favorite music to its separate components."
428
- description="Explanation message"/>
429
- </p>
430
- <a href="https://testflight.apple.com/join/4cb0rDIo" target={`__blank`}>
431
- <img src='https://splitfire.ai/packs/media/images/Pre-order_on_the_App_Store_Badge_US-UK_RGB_blk_121217-5fb138d3f649c68f7b3250e3887dbef5.svg' />
432
- </a>
433
- </Col>
434
- </Row>
435
-)
436
-
437
-export default AudioPlayer;
\ No newline at end of file
src/components/Contact.tsx
deleted
-65
@@ -1,65 +0,0 @@
1
-import React, { Component } from 'react';
2
-import { FormattedMessage } from 'react-intl';
3
-import Firebase from './Firebase';
4
-import app from 'firebase/app';
5
-import { InitialData, Path } from '../shared/routes';
6
-
7
-type ContactProps = {
8
- firebase?: Firebase
9
- initialData?: InitialData
10
-}
11
-
12
-type ContactState = {
13
- content: string
14
-}
15
-
16
-class Contact extends Component<ContactProps, ContactState> {
17
-
18
- contactRef: app.database.Reference | undefined;
19
-
20
- constructor(props: ContactProps) {
21
- super(props);
22
- this.contactRef = this.props.firebase?.contactRef();
23
- if (props.initialData?.path === Path.CONTACT) {
24
- this.state = {
25
- content: props.initialData?.data.content
26
- }
27
- } else {
28
- this.state = {
29
- content: "Loading ..."
30
- }
31
- }
32
- }
33
-
34
- componentDidMount() {
35
- if (this.props.initialData?.path === Path.CONTACT) {
36
- return;
37
- }
38
-
39
- this.contactRef?.on('value', (snapshot) => {
40
- let items = snapshot?.val();
41
- this.setState({
42
- content: items.content
43
- });
44
- });
45
- }
46
-
47
- componentWillUnmount() {
48
- this.contactRef?.off();
49
- }
50
-
51
- render() {
52
- return (
53
- <div>
54
- <h1>
55
- <FormattedMessage id="contact.title"
56
- defaultMessage="Contact"
57
- description="Contact page title"/>
58
- </h1>
59
- <p style={{lineHeight: "150%"}}>{this.state.content}</p>
60
- </div>
61
- );
62
- }
63
-}
64
-
65
-export default Contact;
src/components/Cv.tsx
deleted
-65
@@ -1,65 +0,0 @@
1
-import React, { Component } from 'react';
2
-import { FormattedMessage } from 'react-intl';
3
-import Firebase from './Firebase';
4
-import app from 'firebase/app';
5
-import { InitialData, Path } from '../shared/routes';
6
-
7
-type CvProps = {
8
- firebase?: Firebase
9
- initialData?: InitialData
10
-}
11
-
12
-type CvState = {
13
- content: string
14
-}
15
-
16
-class Cv extends Component<CvProps, CvState> {
17
-
18
- cvRef: app.database.Reference | undefined;
19
-
20
- constructor(props: CvProps) {
21
- super(props);
22
- this.cvRef = this.props.firebase?.cvRef();
23
- if (props.initialData?.path === Path.CV) {
24
- this.state = {
25
- content: props.initialData?.data.content
26
- }
27
- } else {
28
- this.state = {
29
- content: "Loading ..."
30
- }
31
- }
32
- }
33
-
34
- componentDidMount() {
35
- if (this.props.initialData?.path === Path.CV) {
36
- return;
37
- }
38
-
39
- this.cvRef?.on('value', (snapshot) => {
40
- let items = snapshot?.val();
41
- this.setState({
42
- content: items.content
43
- });
44
- });
45
- }
46
-
47
- componentWillUnmount() {
48
- this.cvRef?.off();
49
- }
50
-
51
- render() {
52
- return (
53
- <div>
54
- <h1>
55
- <FormattedMessage id="cv.title"
56
- defaultMessage="CV"
57
- description="CV page title"/>
58
- </h1>
59
- <p style={{lineHeight: "150%"}}>{this.state.content}</p>
60
- </div>
61
- );
62
- }
63
-}
64
-
65
-export default Cv;
src/components/Firebase/config.ts
deleted
-14
@@ -1,14 +0,0 @@
1
-import app from 'firebase/app';
2
-import 'firebase/database';
3
-
4
-// Initialize Firebase
5
-const config = {
6
- apiKey: "AIzaSyBDMgSgpCGpPQVs2ziPm5igl2nL8I6jdeQ",
7
- authDomain: "blazing-fire-5965.firebaseapp.com",
8
- databaseURL: "https://blazing-fire-5965.firebaseio.com",
9
- projectId: "blazing-fire-5965",
10
- storageBucket: "blazing-fire-5965.appspot.com",
11
- messagingSenderId: "1043865982157"
12
- };
13
-
14
-export default !app.apps.length ? app.initializeApp(config) : app;
\ No newline at end of file
src/components/Firebase/context.ts
deleted
-6
@@ -1,6 +0,0 @@
1
-import React from 'react';
2
-import Firebase from './firebase';
3
-
4
-const FirebaseContext = React.createContext<Firebase | undefined>(undefined);
5
-
6
-export default FirebaseContext;
\ No newline at end of file
src/components/Firebase/firebase.ts
deleted
-42
@@ -1,42 +0,0 @@
1
-import app from 'firebase/app';
2
-import 'firebase/database';
3
-
4
-class Firebase {
5
-
6
- db!: app.database.Database;
7
- language!: string;
8
-
9
- public onLanguageChangedCallback: (() => void) | null = null
10
- private static instance: Firebase
11
-
12
- constructor(language: string, db: app.database.Database) {
13
-
14
- if (Firebase.instance)
15
- return Firebase.instance
16
-
17
- this.db = db;
18
- this.language = language;
19
- Firebase.instance = this;
20
- }
21
-
22
- setLanguage(language: string) {
23
- this.language = language
24
-
25
- if (this.onLanguageChangedCallback)
26
- this.onLanguageChangedCallback()
27
- }
28
-
29
- rootRef(): app.database.Reference {
30
- return this.db.ref('setoelkahfi-web-id').child(this.language);
31
- }
32
-
33
- whoAmIRef(): app.database.Reference {
34
- return this.rootRef().child('i am');
35
- }
36
-
37
- aboutRef = () => this.rootRef().child('about');
38
- cvRef = () => this.rootRef().child('cv');
39
- contactRef = () => this.rootRef().child('contact');
40
-}
41
-
42
-export default Firebase;
src/components/Firebase/index.ts
deleted
-6
@@ -1,6 +0,0 @@
1
-import FirebaseContext from './context';
2
-import Firebase from './firebase';
3
-
4
-export default Firebase;
5
-
6
-export { FirebaseContext };
\ No newline at end of file
src/components/FooterLinks.tsx
deleted
-59
@@ -1,59 +0,0 @@
1
-import React from 'react';
2
-import { Link } from 'react-router-dom';
3
-import { FormattedMessage } from 'react-intl';
4
-
5
-const linkStyle = {
6
- display: 'inline-block',
7
- margin: 4,
8
- fontSize: '10pt',
9
- textDecoration: 'none',
10
- outline: 'none',
11
- color: '#ddd',
12
- background: '#222',
13
- borderTop: '1px solid #333',
14
- padding: '5px 8px',
15
- MozBorderRadius: '3px',
16
- WebkitBorderRadius: '3px',
17
- borderRadius: '3px',
18
- MozBoxShadow: '0px 1px 1px #000',
19
- WebkitBoxShadow: '0px 1px 1px #000',
20
- boxShadow: '0px 1px 1px #000'
21
-};
22
-
23
-const FooterLinks = () => (
24
- <footer className="text-muted py-5">
25
- <div className="container">
26
- <p className="float-end mb-1">
27
- <button style={linkStyle}>
28
- <FormattedMessage id="footer.toTop"
29
- defaultMessage="Back to top"
30
- description="To top link" />
31
- </button>
32
- </p>
33
- <p className="mb-0">
34
- <Link to='/' style={linkStyle}>
35
- <FormattedMessage id="header.home"
36
- defaultMessage="Home"
37
- description="Home link" />
38
- </Link>
39
- <Link to='/about' style={linkStyle}>
40
- <FormattedMessage id="header.about"
41
- defaultMessage="About"
42
- description="About link" />
43
- </Link>
44
- <Link to='/cv' style={linkStyle}>
45
- <FormattedMessage id="header.cv"
46
- defaultMessage="CV"
47
- description="CV link" />
48
- </Link>
49
- <Link to='/contact' style={linkStyle}>
50
- <FormattedMessage id="header.contact"
51
- defaultMessage="Contact"
52
- description="Contact link" />
53
- </Link>
54
- </p>
55
- </div>
56
- </footer>
57
-);
58
-
59
-export default FooterLinks;
\ No newline at end of file
src/components/Header.tsx
deleted
-85
@@ -1,85 +0,0 @@
1
-import React, { Component } from 'react';
2
-import { FormattedMessage } from 'react-intl';
3
-import LanguageDropdown from './LanguageDropdown';
4
-
5
-type HeaderProps = {
6
- onChangeLanguage: (language: string) => void
7
- selectedLanguage: string
8
-}
9
-
10
-type HeaderState = {
11
- expand: boolean
12
-}
13
-
14
-class Header extends Component<HeaderProps, HeaderState> {
15
-
16
- constructor(props: HeaderProps | Readonly<HeaderProps>) {
17
- super(props);
18
- this.state = { expand: false };
19
- }
20
-
21
- toggleExpand() {
22
- this.setState({ expand: !this.state.expand })
23
- }
24
-
25
- render() {
26
- return (
27
- <header>
28
- <div className={`collapse bg-dark ${this.state.expand ? 'show' : ''}`} id="navbarHeader">
29
- <div className="container">
30
- <div className="row">
31
- <div className="col-sm-6 col-md-6 py-4">
32
- <h4 className="text-white">
33
- <FormattedMessage id="about.title"
34
- defaultMessage="About"
35
- description="About page title" /></h4>
36
- <p className="text-muted">We buy things we don't need, with money we don't have, to impress people we don't like.</p>
37
- <p className="text-muted"><a href="https://hetzner.cloud/?ref=WwAE3O6U53DF" target={`__blank`} >Get your proper VM</a>.</p>
38
- </div>
39
- <div className="col-sm-2 offset-md-1 py-4">
40
- <h4 className="text-white">
41
- <FormattedMessage id="header.fun"
42
- defaultMessage="Fun projects"
43
- description="Fun projects title"/></h4>
44
- <ul className="list-unstyled">
45
- <li><a className="text-white" href="https://musik88.com/" title="Musik88" target="_blank" rel="noopener noreferrer">Musik88</a></li>
46
- <li><a className="text-white" href="https://splitfire.ai/" title="SplitFire AI" target="_blank" rel="noopener noreferrer">SplitFire AI</a></li>
47
- <li><a className="text-white" href="https://smbpndk.com/" title="SumbuPendek" target="_blank" rel="noopener noreferrer">SumbuPendek</a></li>
48
- <li><a className="text-white" href="https://scandinasia.eu/" title="SumbuPendek" target="_blank" rel="noopener noreferrer">United States of Scandinasia</a></li>
49
- </ul>
50
- </div>
51
- <div className="col-sm-2 py-4">
52
- <h4 className="text-white">
53
- <FormattedMessage id="contact.title"
54
- defaultMessage="Contact"
55
- description="Contact page title"/></h4>
56
- <ul className="list-unstyled">
57
- <li><a className="text-white" href="https://stackoverflow.com/users/1137814/seto" title="StackOverflow" target="_blank" rel="noopener noreferrer">StackOverflow</a></li>
58
- <li><a className="text-white" href="https://github.com/setoelkahfi" title="GitHub" target="_blank" rel="noopener noreferrer">GitHub</a></li>
59
- <li><a className="text-white" href="https://medium.com/@setoelkahfi" title="Medium" target="_blank" rel="noopener noreferrer">Medium</a></li>
60
- <li><a className="text-white" href="https://id.linkedin.com/in/setoelkahfi" title="LinkedIn" target="_blank" rel="noopener noreferrer">LinkedIn</a></li>
61
- </ul>
62
- </div>
63
- </div>
64
- </div>
65
- </div>
66
- <div className="navbar navbar-dark bg-dark shadow-sm">
67
- <div className="container">
68
- <a href={`https://musik88.com/@seto`} target={`__blank`} className="navbar-brand d-flex align-items-center">
69
- <strong>@seto</strong>
70
- </a>
71
- <LanguageDropdown
72
- onChangeLanguage={this.props.onChangeLanguage}
73
- selectedLanguage={this.props.selectedLanguage}
74
- />
75
- <button className="navbar-toggler" onClick={this.toggleExpand.bind(this)} type="button" data-bs-toggle="collapse" data-bs-target="#navbarHeader" aria-controls="navbarHeader" aria-expanded={this.state.expand} aria-label="Toggle navigation">
76
- <span className="navbar-toggler-icon"></span>
77
- </button>
78
- </div>
79
- </div>
80
- </header>
81
- )
82
- }
83
-}
84
-
85
-export default Header;
src/components/Home.tsx
deleted
-193
@@ -1,193 +0,0 @@
1
-import React, { Component, CSSProperties } from 'react';
2
-import ReactRotatingText from 'react-rotating-text';
3
-import { FormattedMessage } from 'react-intl';
4
-import Firebase from './Firebase';
5
-import app from 'firebase/app';
6
-import axios from 'axios';
7
-import { Button, Carousel, Spinner } from 'react-bootstrap';
8
-import { InitialData, Path } from '../shared/routes';
9
-
10
-const pStyle: CSSProperties = {
11
- lineHeight: '32pt',
12
- marginTop: '10pt',
13
- fontSize: '20pt',
14
- textDecoration: 'none',
15
- outline: 'none',
16
-};
17
-const wordStyle = {
18
- color: '#FECD01',
19
- background: '#006BA8',
20
- padding: '5px 8px',
21
- MozBoxShadow: '0px 1px 1px #000',
22
- WebkitBoxShadow: '0px 1px 1px #000',
23
- boxShadow: '0px 1px 1px #000'
24
-};
25
-
26
-const initialValues: any = {
27
- "en": ["an Android developer", "an iOS developer"],
28
- "id": ["pengembang aplikasi Android", "pengembang aplikasi iOS"],
29
- "sv": ["är Android-utvecklare", "är iOS-utvecklare"],
30
- "es": ["an Android developer", "an iOS developer"],
31
- "de": ["an Android developer", "an iOS developer"],
32
- "fr": ["an Android developer", "an iOS developer"],
33
-};
34
-
35
-
36
-type HomeProps = {
37
- firebase?: Firebase
38
- initialData?: InitialData
39
-}
40
-
41
-type HomeState = {
42
- pStyle: any,
43
- wordStyle: any,
44
- alterEgos: any,
45
- files: any[]
46
-}
47
-
48
-class Home extends Component<HomeProps, HomeState> {
49
-
50
- whoAmIRef: app.database.Reference | undefined
51
-
52
- onLanguageChangedCallback = () => {
53
- // console.log("onLanguageChangedCallback")
54
- }
55
-
56
- constructor(props: HomeProps) {
57
- super(props);
58
- if (props.initialData?.path === Path.HOME) {
59
- console.log('SERVER#HOME', this.props.initialData);
60
- this.state = {
61
- pStyle: pStyle,
62
- wordStyle: wordStyle,
63
- alterEgos: this.shuffle(props.initialData.data['whoAmI']),
64
- files: props.initialData.data['carousel']
65
- }
66
- } else {
67
- console.log('CLIENT#HOME');
68
- this.whoAmIRef = this.props.firebase?.whoAmIRef();
69
- this.state = {
70
- pStyle: pStyle,
71
- wordStyle: wordStyle,
72
- alterEgos: initialValues[this.props.firebase?.language ?? 'en'],
73
- files: []
74
- }
75
-
76
- if (this.props.firebase)
77
- this.props.firebase.onLanguageChangedCallback = this.onLanguageChangedCallback.bind(this)
78
- }
79
- }
80
-
81
- componentDidMount() {
82
- if (this.props.initialData?.path === Path.HOME)
83
- return;
84
-
85
- this._updateTranslationIfNeeded()
86
- axios.get(`/carousel`)
87
- .then(res => {
88
- console.log(res);
89
- const files = res.data.audio_files;
90
- this.setState({ files });
91
- })
92
- .catch(error => {
93
- console.log(error);
94
- });
95
- }
96
-
97
- componentWillUnmount() {
98
- this.whoAmIRef?.off();
99
- if (this.props.firebase)
100
- this.props.firebase.onLanguageChangedCallback = null
101
- }
102
-
103
- _updateTranslationIfNeeded() {
104
- this.whoAmIRef?.on('value', (snapshot) => {
105
- let items = snapshot?.val();
106
- let whoAmI = [];
107
- for (let item in items) {
108
- whoAmI.push(items[item].content);
109
- }
110
- this.setState({
111
- alterEgos: this.shuffle(whoAmI)
112
- });
113
- })
114
- }
115
-
116
- shuffle(array: any[]) {
117
- var currentIndex = array.length, temporaryValue, randomIndex;
118
-
119
- // While there remain elements to shuffle...
120
- while (0 !== currentIndex) {
121
-
122
- // Pick a remaining element...
123
- randomIndex = Math.floor(Math.random() * currentIndex);
124
- currentIndex -= 1;
125
-
126
- // And swap it with the current element.
127
- temporaryValue = array[currentIndex];
128
- array[currentIndex] = array[randomIndex];
129
- array[randomIndex] = temporaryValue;
130
- }
131
-
132
- return array;
133
- }
134
-
135
- render() {
136
- const { files } = this.state
137
-
138
- let caraoselContent: any = <div>
139
- <p>
140
- <FormattedMessage id="home.loading"
141
- defaultMessage="Loading SplitFire AI..."
142
- description="Loading message"/>
143
- </p>
144
- <Spinner animation='grow' variant="danger"></Spinner>
145
- </div>
146
-
147
- if (files.length > 0) {
148
- caraoselContent = <div>
149
- <h2>SplitFire AI</h2>
150
- <p>
151
- <FormattedMessage id="splitfire.whatIs"
152
- defaultMessage="I'm an artificial intelligence software that can split your favorite music to its separate components."
153
- description="Explanation message"/>
154
- </p>
155
- <Carousel>
156
- {files.slice(0, 5).map(item => (
157
- <Carousel.Item key={item.id} style={{ padding: '20px' }}>
158
- <img
159
- className="d-block w-100"
160
- src={item.image_url}
161
- alt="First slide"
162
- />
163
- <Carousel.Caption>
164
- <a href={`https://splitfire.ai/split/${item.id}`} target={`__blank`}>
165
- <Button variant="dark">{item.name}</Button>
166
- </a>
167
- </Carousel.Caption>
168
- </Carousel.Item>
169
- ))}
170
- </Carousel>
171
- </div>
172
- }
173
-
174
- return (
175
- <div>
176
- <h1>
177
- <FormattedMessage id="home.title"
178
- defaultMessage="Hello, my name is {name}"
179
- description="Welcome message"
180
- values={{ name: 'Seto Elkahfi' }} />
181
- </h1>
182
- <p style={this.state.pStyle}>
183
- <FormattedMessage id="home.iam"
184
- defaultMessage="I'm "
185
- description="My self description" />
186
- <ReactRotatingText style={this.state.wordStyle} items={this.state.alterEgos} /></p>
187
- {caraoselContent}
188
- </div>
189
- );
190
- }
191
-}
192
-
193
-export default Home;
src/components/LanguageDropdown.tsx
deleted
-64
@@ -1,64 +0,0 @@
1
-import React, { Component } from 'react'
2
-import { supportedLangs } from '../shared/i18n'
3
-
4
-const listStyle = {
5
- listStyle: 'none'
6
-}
7
-
8
-type OptionProps = {
9
- value: string
10
- name: string
11
-}
12
-
13
-class LanguageOption extends Component<OptionProps> {
14
-
15
- render() {
16
- return (
17
- <option value={this.props.value}>{this.props.name}</option>
18
- )
19
- }
20
-}
21
-
22
-type LanguageDropdownProps = {
23
- onChangeLanguage: (language: string) => void
24
- selectedLanguage: string
25
-}
26
-
27
-type LanguageDropdownState = {}
28
-
29
-class LanguageDropdown extends Component<LanguageDropdownProps, LanguageDropdownState> {
30
-
31
- getLanguageList(): OptionProps[] {
32
- const languageList: OptionProps[] = supportedLangs.map((lang) => {
33
- return {
34
- value: lang.code,
35
- name: lang.name
36
- }
37
- })
38
-
39
- return languageList
40
- }
41
-
42
- render() {
43
-
44
- var languageList = [];
45
-
46
- for (let language of this.getLanguageList()) {
47
- languageList.push(<LanguageOption name={language.name} value={language.value} key={language.value}/>);
48
- }
49
-
50
- return (
51
- <div>
52
- <select
53
- style={listStyle}
54
- onChange={ e => this.props.onChangeLanguage(e.currentTarget.value) }
55
- value={this.props.selectedLanguage}
56
- >
57
- {languageList}
58
- </select>
59
- </div>
60
- )
61
- }
62
-}
63
-
64
-export default LanguageDropdown;
\ No newline at end of file
src/components/Main.tsx
deleted
-47
@@ -1,47 +0,0 @@
1
-import React from 'react';
2
-import { Switch, Route } from 'react-router-dom';
3
-import routes from '../shared/routes';
4
-import { AppProps } from './App';
5
-
6
-const mainStyle = {
7
- marginTop: 20,
8
- marginBottom: 20,
9
- marginLeft: 5,
10
- marginRight: 5,
11
- color: '#fff',
12
- font: '11pt "Helvetica Neue", "Helvetica", Arial, sans-serif',
13
-};
14
-
15
-const contentStyle = {
16
- borderRadius: '20px!important',
17
- backgroundColor: 'rgba(52, 52, 52, 0.6)'
18
-}
19
-
20
-const Main = (props: AppProps) => {
21
-
22
- // console.log('MAIN', props.initialData);
23
-
24
- return (
25
- <main style={mainStyle}>
26
- <section className="py-5 text-center container">
27
- <div className="row py-lg-5">
28
- <div className="col-lg-6 col-md-8 mx-auto" style={contentStyle}>
29
- <Switch>
30
- {
31
- routes.map((route, index) => (
32
- <Route key={index} exact={route.exact} path={route.path} >
33
- <route.component
34
- firebase={props.firebase}
35
- initialData={props.initialData}
36
- />
37
- </Route>
38
- ))
39
- }
40
- </Switch>
41
- </div>
42
- </div>
43
- </section>
44
- </main>
45
-)};
46
-
47
-export default Main;
\ No newline at end of file
src/components/db.ts
deleted
-24
@@ -1,24 +0,0 @@
1
-import Dexie, { Table } from 'dexie';
2
-import { Mode } from './AudioPlayer';
3
-
4
-export interface AudioFiles {
5
- id?: number;
6
- audioFileId: string,
7
- type: Mode,
8
- file: Blob
9
-}
10
-
11
-export class MySubClassedDexie extends Dexie {
12
- // 'friends' is added by dexie when declaring the stores()
13
- // We just tell the typing system this is the case
14
- audioFiles!: Table<AudioFiles>;
15
-
16
- constructor() {
17
- super('splitfireDB');
18
- this.version(2).stores({
19
- audioFiles: '++id, [audioFileId+type]' // Primary key and indexed props
20
- });
21
- }
22
-}
23
-
24
-export const db = new MySubClassedDexie();
\ No newline at end of file
src/index.tsx
deleted
-38
@@ -1,38 +0,0 @@
1
-import React from 'react';
2
-import { hydrate } from 'react-dom';
3
-import App from './components/App';
4
-//import * as serviceWorker from './serviceWorker';
5
-import 'bootstrap/dist/css/bootstrap.css';
6
-import axios from 'axios';
7
-import { BrowserRouter } from 'react-router-dom';
8
-import Firebase from './components/Firebase';
9
-import firebaseInstance from './components/Firebase/config';
10
-import { InitialData } from './shared/routes';
11
-import { determineUserLang } from './shared/i18n';
12
-
13
-axios.defaults.baseURL = 'https://api.musik88.com/api/v1/';
14
-
15
-declare global {
16
- interface Window { __DATA__?: InitialData; }
17
-}
18
-
19
-console.log('window.__DATA__', window.__DATA__);
20
-const languages = navigator.languages || [];
21
-console.log('CLIENT#languages', languages);
22
-const language = determineUserLang([...languages]);
23
-console.log('CLIENT#lang', language);
24
-
25
-hydrate(
26
- <BrowserRouter>
27
- <App
28
- firebase={new Firebase(language, firebaseInstance.database())}
29
- initialData={window.__DATA__}
30
- />
31
- </BrowserRouter>,
32
- document.getElementById('root')
33
-);
34
-
35
-// If you want your app to work offline and load faster, you can change
36
-// unregister() to register() below. Note this comes with some pitfalls.
37
-// Learn more about service workers: http://bit.ly/CRA-PWA
38
-//serviceWorker.unregister();
src/react-app-env.d.ts
deleted
-1
@@ -1 +0,0 @@
1
-/// <reference types="react-scripts" />
src/serviceWorker.js
deleted
-135
@@ -1,135 +0,0 @@
1
-// This optional code is used to register a service worker.
2
-// register() is not called by default.
3
-
4
-// This lets the app load faster on subsequent visits in production, and gives
5
-// it offline capabilities. However, it also means that developers (and users)
6
-// will only see deployed updates on subsequent visits to a page, after all the
7
-// existing tabs open on the page have been closed, since previously cached
8
-// resources are updated in the background.
9
-
10
-// To learn more about the benefits of this model and instructions on how to
11
-// opt-in, read http://bit.ly/CRA-PWA
12
-
13
-const isLocalhost = Boolean(
14
- window.location.hostname === 'localhost' ||
15
- // [::1] is the IPv6 localhost address.
16
- window.location.hostname === '[::1]' ||
17
- // 127.0.0.1/8 is considered localhost for IPv4.
18
- window.location.hostname.match(
19
- /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/
20
- )
21
-);
22
-
23
-export function register(config) {
24
- if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {
25
- // The URL constructor is available in all browsers that support SW.
26
- const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);
27
- if (publicUrl.origin !== window.location.origin) {
28
- // Our service worker won't work if PUBLIC_URL is on a different origin
29
- // from what our page is served on. This might happen if a CDN is used to
30
- // serve assets; see https://github.com/facebook/create-react-app/issues/2374
31
- return;
32
- }
33
-
34
- window.addEventListener('load', () => {
35
- const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;
36
-
37
- if (isLocalhost) {
38
- // This is running on localhost. Let's check if a service worker still exists or not.
39
- checkValidServiceWorker(swUrl, config);
40
-
41
- // Add some additional logging to localhost, pointing developers to the
42
- // service worker/PWA documentation.
43
- navigator.serviceWorker.ready.then(() => {
44
- console.log(
45
- 'This web app is being served cache-first by a service ' +
46
- 'worker. To learn more, visit http://bit.ly/CRA-PWA'
47
- );
48
- });
49
- } else {
50
- // Is not localhost. Just register service worker
51
- registerValidSW(swUrl, config);
52
- }
53
- });
54
- }
55
-}
56
-
57
-function registerValidSW(swUrl, config) {
58
- navigator.serviceWorker
59
- .register(swUrl)
60
- .then(registration => {
61
- registration.onupdatefound = () => {
62
- const installingWorker = registration.installing;
63
- if (installingWorker == null) {
64
- return;
65
- }
66
- installingWorker.onstatechange = () => {
67
- if (installingWorker.state === 'installed') {
68
- if (navigator.serviceWorker.controller) {
69
- // At this point, the updated precached content has been fetched,
70
- // but the previous service worker will still serve the older
71
- // content until all client tabs are closed.
72
- console.log(
73
- 'New content is available and will be used when all ' +
74
- 'tabs for this page are closed. See http://bit.ly/CRA-PWA.'
75
- );
76
-
77
- // Execute callback
78
- if (config && config.onUpdate) {
79
- config.onUpdate(registration);
80
- }
81
- } else {
82
- // At this point, everything has been precached.
83
- // It's the perfect time to display a
84
- // "Content is cached for offline use." message.
85
- console.log('Content is cached for offline use.');
86
-
87
- // Execute callback
88
- if (config && config.onSuccess) {
89
- config.onSuccess(registration);
90
- }
91
- }
92
- }
93
- };
94
- };
95
- })
96
- .catch(error => {
97
- console.error('Error during service worker registration:', error);
98
- });
99
-}
100
-
101
-function checkValidServiceWorker(swUrl, config) {
102
- // Check if the service worker can be found. If it can't reload the page.
103
- fetch(swUrl)
104
- .then(response => {
105
- // Ensure service worker exists, and that we really are getting a JS file.
106
- const contentType = response.headers.get('content-type');
107
- if (
108
- response.status === 404 ||
109
- (contentType != null && contentType.indexOf('javascript') === -1)
110
- ) {
111
- // No service worker found. Probably a different app. Reload the page.
112
- navigator.serviceWorker.ready.then(registration => {
113
- registration.unregister().then(() => {
114
- window.location.reload();
115
- });
116
- });
117
- } else {
118
- // Service worker found. Proceed as normal.
119
- registerValidSW(swUrl, config);
120
- }
121
- })
122
- .catch(() => {
123
- console.log(
124
- 'No internet connection found. App is running in offline mode.'
125
- );
126
- });
127
-}
128
-
129
-export function unregister() {
130
- if ('serviceWorker' in navigator) {
131
- navigator.serviceWorker.ready.then(registration => {
132
- registration.unregister();
133
- });
134
- }
135
-}
src/shared/api.ts
deleted
-59
@@ -1,59 +0,0 @@
1
-import axios from "axios";
2
-import Firebase from "../components/Firebase";
3
-import { Path } from "./routes";
4
-
5
-axios.defaults.baseURL = 'https://api.musik88.com/api/v1/';
6
-
7
-export const getHome = (path: Path, firebase: Firebase) => {
8
- return Promise.all([
9
- firebase.whoAmIRef().once('value'),
10
- axios.get(`/carousel`),
11
- ]).then((values) => {
12
- const whoAmI = values[0].val();
13
- const files = values[1].data.audio_files;
14
- const obj = {
15
- path: path,
16
- data: {
17
- whoAmI: whoAmI,
18
- carousel: files
19
- }
20
- };
21
- return obj;
22
- });
23
-}
24
-
25
-export const getAbout = (path: Path, firebase: Firebase) => {
26
- return firebase
27
- .aboutRef()
28
- .once('value')
29
- .then((snapshot) => {
30
- return {
31
- path: path,
32
- data: snapshot.val()
33
- }
34
- });
35
-}
36
-
37
-export const getContact = (path: Path, firebase: Firebase) => {
38
- return firebase
39
- .contactRef()
40
- .once('value')
41
- .then((snapshot) => {
42
- return {
43
- path: path,
44
- data: snapshot.val()
45
- }
46
- });
47
-}
48
-
49
-export const getCv = (path: Path, firebase: Firebase) => {
50
- return firebase
51
- .cvRef()
52
- .once('value')
53
- .then((snapshot) => {
54
- return {
55
- path: path,
56
- data: snapshot.val()
57
- }
58
- });
59
-}
\ No newline at end of file
src/shared/i18n.ts
deleted
-44
@@ -1,44 +0,0 @@
1
-export const defaultLang = "en";
2
-
3
-interface Lang {
4
- code: string;
5
- name: string;
6
-}
7
-
8
-export const supportedLangs: Lang[] = [
9
- { code: "en", name: "🇺🇸 English" },
10
- { code: "id", name: "🇮🇩 Indonesian" },
11
- { code: "se", name: "🇸🇪 Swedish" },
12
- { code: "de", name: "🇩🇪 German" },
13
- { code: "fr", name: "🇫🇷 French" },
14
- { code: "zh", name: "🇨🇳 Chinese" },
15
- { code: "es", name: "🇪🇸 Spanish" },
16
- { code: "ja", name: "🇯🇵 Japanese" },
17
-];
18
-
19
-export function determineUserLang(acceptedLangs: string[]) {
20
-
21
- const acceptedLangCodes = acceptedLangs.map(stripCountry);
22
-
23
- const supportedLangCodes = Object.keys(supportedLangs);
24
-
25
- const matchingLangCode = acceptedLangCodes.find(code =>
26
-
27
- supportedLangCodes.includes(code),
28
-
29
- );
30
-
31
- return matchingLangCode || defaultLang;
32
-
33
-}
34
-
35
-function stripCountry(lang: string) {
36
- return lang
37
-
38
- .trim()
39
-
40
- .replace("_", "-")
41
-
42
- .split("-")[0];
43
-
44
-}
\ No newline at end of file
src/shared/routes.tsx
deleted
-53
@@ -1,53 +0,0 @@
1
-import Home from '../components/Home';
2
-import About from '../components/About';
3
-import React from 'react';
4
-import { getAbout, getHome, getContact, getCv } from './api';
5
-import Contact from '../components/Contact';
6
-import Cv from '../components/Cv';
7
-import Firebase from '../components/Firebase';
8
-
9
-export interface Route {
10
- path: Path;
11
- component: React.ComponentType<any>;
12
- exact?: boolean;
13
- fetchInitialData: (path: Path, firebase: Firebase) => Promise<InitialData>;
14
-}
15
-
16
-export type InitialData = {
17
- data: any;
18
- path: Path;
19
-}
20
-
21
-export enum Path {
22
- HOME = '/',
23
- ABOUT = '/about',
24
- CONTACT = '/contact',
25
- CV = '/cv'
26
-}
27
-
28
-// Desc: Routes for the application
29
-const routes: Route[] = [
30
- {
31
- path: Path.HOME,
32
- component: Home,
33
- exact: true,
34
- fetchInitialData: getHome
35
- },
36
- {
37
- path: Path.ABOUT,
38
- component: About,
39
- fetchInitialData: getAbout
40
- },
41
- {
42
- path: Path.CONTACT,
43
- component: Contact,
44
- fetchInitialData: getContact
45
- },
46
- {
47
- path: Path.CV,
48
- component: Cv,
49
- fetchInitialData: getCv
50
- }
51
-];
52
-
53
-export default routes;
\ No newline at end of file
src/shared/translations/de.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "Heim",
3
- "header.about": "Etwa",
4
- "header.cv": "CV",
5
- "header.contact": "Kontakt",
6
- "header.fun": "Lustige Projekte",
7
- "home.title": "Hallo, mein Name ist {name}.",
8
- "home.iam": "Ich bin ",
9
- "about.title": "Etwa",
10
- "about.skills": "Fähigkeiten",
11
- "cv.title": "CV",
12
- "contact.title": "Kontakt",
13
- "player.instruction": "Klicken Sie auf das Instrumentensymbol, um es aus dem Song zu entfernen.",
14
- "home.loading": "SplitFire AI wird geladen...",
15
- "player.loadingYoutube": "Warten auf YouTube...",
16
- "footer.toTop": "Zurück nach oben",
17
- "splitfire.whatIs": "Ich bin eine Software für künstliche Intelligenz, die Ihre Lieblingsmusik in ihre einzelnen Komponenten aufteilt.",
18
- "player.loading": "🤖 Ich mache mein Geschäft..."
19
-}
src/shared/translations/en.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "Home",
3
- "header.about": "About",
4
- "header.cv": "CV",
5
- "header.contact": "Contact",
6
- "header.fun": "Fun projects",
7
- "home.title": "Hello, my name is {name}.",
8
- "home.iam": "I'm ",
9
- "about.title": "About",
10
- "about.skills": "Skills",
11
- "cv.title": "CV",
12
- "contact.title": "Contact",
13
- "player.instruction": "Click the instrument icon to remove it from the song.",
14
- "home.loading": "Loading SplitFire AI...",
15
- "player.loadingYoutube": "Waiting for YouTube...",
16
- "footer.toTop": "Back to top",
17
- "splitfire.whatIs": "I'm an artificial intelligence software who will split your favorite music to its separate components.",
18
- "player.loading": "🤖 I'm doing my job..."
19
-}
src/shared/translations/es.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "Casa",
3
- "header.about": "Sobre",
4
- "header.cv": "CV",
5
- "header.contact": "Contacto",
6
- "header.fun": "Proyectos divertidos",
7
- "home.title": "Hola, mi nombre es {name}.",
8
- "home.iam": "Estoy ",
9
- "about.title": "Acerca de",
10
- "about.skills": "Habilidades",
11
- "cv.title": "CV",
12
- "contact.title": "Contacto",
13
- "player.instruction": "Haz clic en el ícono del instrumento para eliminarlo de la canción.",
14
- "home.loading": "Cargando SplitFire IA...",
15
- "player.loadingYoutube": "Esperando YouTube...",
16
- "footer.toTop": "Volver al principio",
17
- "splitfire.whatIs": "Soy un software de inteligencia artificial que dividirá tu música favorita en sus componentes separados",
18
- "player.loading": "🤖 Estoy haciendo mi trabajo..."
19
-}
src/shared/translations/fr.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "Accueil",
3
- "header.about": "Sur",
4
- "header.cv": "CV",
5
- "header.contact": "Contact",
6
- "header.fun": "Projets amusants",
7
- "home.title": "Bonjour, je m'appelle {name}.",
8
- "home.iam": "Je suis ",
9
- "about.title": "Sur",
10
- "about.skills": "Compétences",
11
- "cv.title": "CV",
12
- "contact.title": "Contact",
13
- "player.instruction": "Cliquez sur l'icône de l'instrument pour le supprimer du morceau.",
14
- "home.loading": "Chargement de SplitFire AI...",
15
- "player.loadingYoutube": "En attente de YouTube...",
16
- "footer.toTop": "Retour en haut",
17
- "splitfire.whatIs": "Je suis un logiciel d'intelligence artificielle qui divisera votre musique préférée en ses composants séparés.",
18
- "player.loading": "🤖 Je fais mes affaires..."
19
-}
src/shared/translations/id.json
deleted
-19
@@ -1,19 +0,0 @@
1
- {
2
- "header.home": "Beranda",
3
- "header.about": "Tentang",
4
- "header.cv": "CV",
5
- "header.contact": "Kontak",
6
- "header.fun": "Iseng-iseng berhadiah",
7
- "home.title": "Halo, nama saya {name}.",
8
- "home.iam": "Saya ",
9
- "about.title": "Tentang",
10
- "about.skills": "Keterampilan",
11
- "cv.title": "CV",
12
- "contact.title": "Kontak",
13
- "player.instruction": "Klik ikon instrumen untuk menghapusnya dari lagu.",
14
- "home.loading": "Memuat SplitFire AI...",
15
- "player.loadingYoutube": "Menunggu YouTube...",
16
- "footer.toTop": "Kembali ke atas",
17
- "splitfire.whatIs": "Saya adalah perangkat lunak kecerdasan buatan yang akan membagi musik favorit Anda ke komponen terpisah.",
18
- "player.loading": "🤖 Saya sedang melakukan pekerjaan saya..."
19
- }
src/shared/translations/ja.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "ホーム",
3
- "header.about": "約",
4
- "header.cv": "CV",
5
- "header.contact": "連絡先",
6
- "header.fun": "楽しいプロジェクト",
7
- "home.title": "こんにちは,私の名前は{name}です。",
8
- "home.iam": "私は",
9
- "about.title": "約",
10
- "about.skills": "スキル",
11
- "cv.title": "CV",
12
- "contact.title": "連絡先",
13
- "player.instruction": "楽器のアイコンをクリックして,曲から削除します。",
14
- "home.loading": "SplitFire AIを読み込んでいます...",
15
- "player.loadingYoutube": "YouTubeを待っています...",
16
- "footer.toTop": "トップに戻る",
17
- "splitfire.whatIs": "私は,お気に入りの音楽を個別のコンポーネントに分割する人工知能ソフトウェアです。",
18
- "player.loading": "🤖私は自分の仕事をしています..."
19
-}
src/shared/translations/sv.json
deleted
-19
@@ -1,19 +0,0 @@
1
- {
2
- "header.home": "Hem",
3
- "header.about": "Om",
4
- "header.cv": "CV",
5
- "header.contact": "Kontakt",
6
- "header.fun": "Roliga projekt",
7
- "home.title": "Tjena, jag heter {name}.",
8
- "home.iam": "Jag ",
9
- "about.title": "Om",
10
- "about.skills": "Kompetens",
11
- "cv.title": "CV",
12
- "contact.title": "Kontakt",
13
- "player.instruction": "Klicka på instrumentikonen för att ta bort den från låten.",
14
- "home.loading": "Laddar SplitFire AI...",
15
- "player.loadingYoutube": "Väntar på YouTube...",
16
- "footer.toTop": "Tillbaka till toppen",
17
- "splitfire.whatIs": "Jag är en programvara för artificiell intelligens som delar upp din favoritmusik till dess separata komponenter.",
18
- "player.loading": "🤖 Jag gör min job..."
19
- }
\ No newline at end of file
src/shared/translations/zh.json
deleted
-19
@@ -1,19 +0,0 @@
1
-{
2
- "header.home": "家",
3
- "header.about": "关于",
4
- "header.cv": "CV",
5
- "header.contact": "接触",
6
- "header.fun": "有趣的项目",
7
- "home.title": "你好我的名字是 {name}.",
8
- "home.iam": "我是",
9
- "about.title": "关于",
10
- "about.skills": "技能",
11
- "cv.title": "CV",
12
- "contact.title": "接触",
13
- "player.instruction": "点击乐器图标将其从歌曲中移除。",
14
- "home.loading": "正在加载 SplitFire AI...",
15
- "player.loadingYoutube": "正在等待 YouTube...",
16
- "footer.toTop": "回到顶部",
17
- "splitfire.whatIs": "我是一个人工智能软件,可以将你最喜欢的音乐拆分成不同的组件.",
18
- "player.loading": "🤖 我在做我的事......"
19
-}
src/style.css
new
+18
@@ -0,0 +1,18 @@
1
+body {
2
+ background: #000000;
3
+ margin: 0;
4
+ padding: 0;
5
+ height: 100vh;
6
+ color: white;
7
+ display: flex;
8
+}
9
+
10
+div {
11
+ padding-left: 20px;
12
+ margin-top: -28px;
13
+}
14
+
15
+a {
16
+ color: blue;
17
+ text-decoration: none;
18
+}
\ No newline at end of file
tsconfig.json
deleted
-34
@@ -1,34 +0,0 @@
1
-{
2
- "compilerOptions": {
3
- "target": "es5",
4
- "lib": [
5
- "dom",
6
- "dom.iterable",
7
- "esnext"
8
- ],
9
- "allowJs": true,
10
- "skipLibCheck": true,
11
- "esModuleInterop": true,
12
- "allowSyntheticDefaultImports": true,
13
- "strict": true,
14
- "forceConsistentCasingInFileNames": true,
15
- "module": "esnext",
16
- "moduleResolution": "node",
17
- "resolveJsonModule": true,
18
- "isolatedModules": true,
19
- "noEmit": true,
20
- "jsx": "react",
21
- "typeRoots": [
22
- "./types",
23
- "./node_modules/@types"
24
- ],
25
- "noFallthroughCasesInSwitch": true
26
- },
27
- "include": [
28
- "src", "server"
29
- ],
30
- "exclude": [
31
- "node_modules",
32
- "types"
33
- ]
34
-}
tsconfig.server.json
deleted
-22
@@ -1,22 +0,0 @@
1
-{
2
- "include": ["server"], // compile TS files in server directory
3
- "compilerOptions": {
4
- "module": "commonjs", // classic format that Node.js understands
5
- "esModuleInterop": true, // allow imports of modules in ES format
6
- "skipLibCheck": true, // only check types we refer to from our code
7
- "forceConsistentCasingInFileNames": true, // prevents cross-OS problems
8
- "resolveJsonModule": true, // enable import of JSON files
9
- "lib": ["es6", "dom"], // use JavaScript API ES6
10
- "target": "es6", // compile to ES6
11
- "jsx": "react", // compile JSX to React.createElement statements for SSR
12
- "allowJs": true, // allow import of JS modules
13
- // enable strict type checking
14
- "strict": true,
15
- "strictNullChecks": true,
16
- "noImplicitAny": true,
17
- "typeRoots": [
18
- "./types",
19
- "./node_modules/@types"
20
- ],
21
- }
22
- }
\ No newline at end of file
types/react-intl/index.d.ts
deleted
-9
@@ -1,9 +0,0 @@
1
-declare module 'react-intl';
2
-declare module 'react-intl/locale-data/se';
3
-declare module 'react-intl/locale-data/en';
4
-declare module 'react-intl/locale-data/id';
5
-declare module 'react-intl/locale-data/de';
6
-declare module 'react-intl/locale-data/fr';
7
-declare module 'react-intl/locale-data/zh';
8
-declare module 'react-intl/locale-data/es';
9
-declare module 'react-intl/locale-data/ja';
\ No newline at end of file
types/react-rotating-text/index.d.ts
deleted
-1
@@ -1 +0,0 @@
1
-declare module 'react-rotating-text';
\ No newline at end of file