├── .gitignore
├── .prettierrc.json
├── index.html
├── package.json
├── pnpm-lock.yaml
├── public
└── vite.svg
├── src
├── App.css
├── App.tsx
├── assets
│ └── react.svg
├── index.css
├── interceptors
│ ├── axios.interceptor.tsx
│ └── index.ts
├── main.tsx
├── models
│ ├── index.ts
│ └── type-with-key.ts
├── services
│ └── testing.service.tsx
├── utilities
│ ├── get-validation-error.tsx
│ ├── index.ts
│ ├── local-storage-manager.tsx
│ └── snackbar-manager.tsx
└── vite-env.d.ts
├── tsconfig.json
├── tsconfig.node.json
└── vite.config.ts
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 140,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "tabWidth": 2
6 | }
7 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Vite + React + TS
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "axiosinterceptor",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "dev": "vite",
8 | "build": "tsc && vite build",
9 | "preview": "vite preview"
10 | },
11 | "dependencies": {
12 | "@babel/core": "^7.0.0",
13 | "@emotion/react": "^11.10.5",
14 | "@emotion/styled": "^11.10.5",
15 | "@mui/material": "^5.0.0",
16 | "axios": "^1.1.3",
17 | "notistack": "^2.0.8",
18 | "react": "^18.2.0",
19 | "react-dom": "^18.2.0",
20 | "rxjs": "^7.5.7"
21 | },
22 | "devDependencies": {
23 | "@types/react": "^18.0.24",
24 | "@types/react-dom": "^18.0.8",
25 | "@vitejs/plugin-react": "^2.2.0",
26 | "typescript": "^4.6.4",
27 | "vite": "^3.2.3"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | specifiers:
4 | '@babel/core': ^7.0.0
5 | '@emotion/react': ^11.10.5
6 | '@emotion/styled': ^11.10.5
7 | '@mui/material': ^5.0.0
8 | '@types/react': ^18.0.24
9 | '@types/react-dom': ^18.0.8
10 | '@vitejs/plugin-react': ^2.2.0
11 | axios: ^1.1.3
12 | notistack: ^2.0.8
13 | react: ^18.2.0
14 | react-dom: ^18.2.0
15 | rxjs: ^7.5.7
16 | typescript: ^4.6.4
17 | vite: ^3.2.3
18 |
19 | dependencies:
20 | '@babel/core': 7.20.2
21 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
22 | '@emotion/styled': 11.10.5_hmjty4frusbltjhl3xd7udcm2y
23 | '@mui/material': 5.10.14_thp4wrxo45nyllusrnt46mid4u
24 | axios: 1.1.3
25 | notistack: 2.0.8_i2zh6h4kh2d4dfsph2ys5bh2ha
26 | react: 18.2.0
27 | react-dom: 18.2.0_react@18.2.0
28 | rxjs: 7.5.7
29 |
30 | devDependencies:
31 | '@types/react': 18.0.25
32 | '@types/react-dom': 18.0.9
33 | '@vitejs/plugin-react': 2.2.0_vite@3.2.4
34 | typescript: 4.9.3
35 | vite: 3.2.4
36 |
37 | packages:
38 |
39 | /@ampproject/remapping/2.2.0:
40 | resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==}
41 | engines: {node: '>=6.0.0'}
42 | dependencies:
43 | '@jridgewell/gen-mapping': 0.1.1
44 | '@jridgewell/trace-mapping': 0.3.17
45 |
46 | /@babel/code-frame/7.18.6:
47 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==}
48 | engines: {node: '>=6.9.0'}
49 | dependencies:
50 | '@babel/highlight': 7.18.6
51 |
52 | /@babel/compat-data/7.20.1:
53 | resolution: {integrity: sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==}
54 | engines: {node: '>=6.9.0'}
55 |
56 | /@babel/core/7.20.2:
57 | resolution: {integrity: sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==}
58 | engines: {node: '>=6.9.0'}
59 | dependencies:
60 | '@ampproject/remapping': 2.2.0
61 | '@babel/code-frame': 7.18.6
62 | '@babel/generator': 7.20.4
63 | '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2
64 | '@babel/helper-module-transforms': 7.20.2
65 | '@babel/helpers': 7.20.1
66 | '@babel/parser': 7.20.3
67 | '@babel/template': 7.18.10
68 | '@babel/traverse': 7.20.1
69 | '@babel/types': 7.20.2
70 | convert-source-map: 1.9.0
71 | debug: 4.3.4
72 | gensync: 1.0.0-beta.2
73 | json5: 2.2.1
74 | semver: 6.3.0
75 | transitivePeerDependencies:
76 | - supports-color
77 |
78 | /@babel/generator/7.20.4:
79 | resolution: {integrity: sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==}
80 | engines: {node: '>=6.9.0'}
81 | dependencies:
82 | '@babel/types': 7.20.2
83 | '@jridgewell/gen-mapping': 0.3.2
84 | jsesc: 2.5.2
85 |
86 | /@babel/helper-annotate-as-pure/7.18.6:
87 | resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==}
88 | engines: {node: '>=6.9.0'}
89 | dependencies:
90 | '@babel/types': 7.20.2
91 | dev: true
92 |
93 | /@babel/helper-compilation-targets/7.20.0_@babel+core@7.20.2:
94 | resolution: {integrity: sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==}
95 | engines: {node: '>=6.9.0'}
96 | peerDependencies:
97 | '@babel/core': ^7.0.0
98 | dependencies:
99 | '@babel/compat-data': 7.20.1
100 | '@babel/core': 7.20.2
101 | '@babel/helper-validator-option': 7.18.6
102 | browserslist: 4.21.4
103 | semver: 6.3.0
104 |
105 | /@babel/helper-environment-visitor/7.18.9:
106 | resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==}
107 | engines: {node: '>=6.9.0'}
108 |
109 | /@babel/helper-function-name/7.19.0:
110 | resolution: {integrity: sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==}
111 | engines: {node: '>=6.9.0'}
112 | dependencies:
113 | '@babel/template': 7.18.10
114 | '@babel/types': 7.20.2
115 |
116 | /@babel/helper-hoist-variables/7.18.6:
117 | resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==}
118 | engines: {node: '>=6.9.0'}
119 | dependencies:
120 | '@babel/types': 7.20.2
121 |
122 | /@babel/helper-module-imports/7.18.6:
123 | resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==}
124 | engines: {node: '>=6.9.0'}
125 | dependencies:
126 | '@babel/types': 7.20.2
127 |
128 | /@babel/helper-module-transforms/7.20.2:
129 | resolution: {integrity: sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==}
130 | engines: {node: '>=6.9.0'}
131 | dependencies:
132 | '@babel/helper-environment-visitor': 7.18.9
133 | '@babel/helper-module-imports': 7.18.6
134 | '@babel/helper-simple-access': 7.20.2
135 | '@babel/helper-split-export-declaration': 7.18.6
136 | '@babel/helper-validator-identifier': 7.19.1
137 | '@babel/template': 7.18.10
138 | '@babel/traverse': 7.20.1
139 | '@babel/types': 7.20.2
140 | transitivePeerDependencies:
141 | - supports-color
142 |
143 | /@babel/helper-plugin-utils/7.20.2:
144 | resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==}
145 | engines: {node: '>=6.9.0'}
146 |
147 | /@babel/helper-simple-access/7.20.2:
148 | resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==}
149 | engines: {node: '>=6.9.0'}
150 | dependencies:
151 | '@babel/types': 7.20.2
152 |
153 | /@babel/helper-split-export-declaration/7.18.6:
154 | resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==}
155 | engines: {node: '>=6.9.0'}
156 | dependencies:
157 | '@babel/types': 7.20.2
158 |
159 | /@babel/helper-string-parser/7.19.4:
160 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==}
161 | engines: {node: '>=6.9.0'}
162 |
163 | /@babel/helper-validator-identifier/7.19.1:
164 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
165 | engines: {node: '>=6.9.0'}
166 |
167 | /@babel/helper-validator-option/7.18.6:
168 | resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==}
169 | engines: {node: '>=6.9.0'}
170 |
171 | /@babel/helpers/7.20.1:
172 | resolution: {integrity: sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==}
173 | engines: {node: '>=6.9.0'}
174 | dependencies:
175 | '@babel/template': 7.18.10
176 | '@babel/traverse': 7.20.1
177 | '@babel/types': 7.20.2
178 | transitivePeerDependencies:
179 | - supports-color
180 |
181 | /@babel/highlight/7.18.6:
182 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==}
183 | engines: {node: '>=6.9.0'}
184 | dependencies:
185 | '@babel/helper-validator-identifier': 7.19.1
186 | chalk: 2.4.2
187 | js-tokens: 4.0.0
188 |
189 | /@babel/parser/7.20.3:
190 | resolution: {integrity: sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==}
191 | engines: {node: '>=6.0.0'}
192 | hasBin: true
193 | dependencies:
194 | '@babel/types': 7.20.2
195 |
196 | /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.2:
197 | resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==}
198 | engines: {node: '>=6.9.0'}
199 | peerDependencies:
200 | '@babel/core': ^7.0.0-0
201 | dependencies:
202 | '@babel/core': 7.20.2
203 | '@babel/helper-plugin-utils': 7.20.2
204 |
205 | /@babel/plugin-transform-react-jsx-development/7.18.6_@babel+core@7.20.2:
206 | resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==}
207 | engines: {node: '>=6.9.0'}
208 | peerDependencies:
209 | '@babel/core': ^7.0.0-0
210 | dependencies:
211 | '@babel/core': 7.20.2
212 | '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2
213 | dev: true
214 |
215 | /@babel/plugin-transform-react-jsx-self/7.18.6_@babel+core@7.20.2:
216 | resolution: {integrity: sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==}
217 | engines: {node: '>=6.9.0'}
218 | peerDependencies:
219 | '@babel/core': ^7.0.0-0
220 | dependencies:
221 | '@babel/core': 7.20.2
222 | '@babel/helper-plugin-utils': 7.20.2
223 | dev: true
224 |
225 | /@babel/plugin-transform-react-jsx-source/7.19.6_@babel+core@7.20.2:
226 | resolution: {integrity: sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==}
227 | engines: {node: '>=6.9.0'}
228 | peerDependencies:
229 | '@babel/core': ^7.0.0-0
230 | dependencies:
231 | '@babel/core': 7.20.2
232 | '@babel/helper-plugin-utils': 7.20.2
233 | dev: true
234 |
235 | /@babel/plugin-transform-react-jsx/7.19.0_@babel+core@7.20.2:
236 | resolution: {integrity: sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==}
237 | engines: {node: '>=6.9.0'}
238 | peerDependencies:
239 | '@babel/core': ^7.0.0-0
240 | dependencies:
241 | '@babel/core': 7.20.2
242 | '@babel/helper-annotate-as-pure': 7.18.6
243 | '@babel/helper-module-imports': 7.18.6
244 | '@babel/helper-plugin-utils': 7.20.2
245 | '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.2
246 | '@babel/types': 7.20.2
247 | dev: true
248 |
249 | /@babel/runtime/7.20.1:
250 | resolution: {integrity: sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==}
251 | engines: {node: '>=6.9.0'}
252 | dependencies:
253 | regenerator-runtime: 0.13.11
254 | dev: false
255 |
256 | /@babel/template/7.18.10:
257 | resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==}
258 | engines: {node: '>=6.9.0'}
259 | dependencies:
260 | '@babel/code-frame': 7.18.6
261 | '@babel/parser': 7.20.3
262 | '@babel/types': 7.20.2
263 |
264 | /@babel/traverse/7.20.1:
265 | resolution: {integrity: sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==}
266 | engines: {node: '>=6.9.0'}
267 | dependencies:
268 | '@babel/code-frame': 7.18.6
269 | '@babel/generator': 7.20.4
270 | '@babel/helper-environment-visitor': 7.18.9
271 | '@babel/helper-function-name': 7.19.0
272 | '@babel/helper-hoist-variables': 7.18.6
273 | '@babel/helper-split-export-declaration': 7.18.6
274 | '@babel/parser': 7.20.3
275 | '@babel/types': 7.20.2
276 | debug: 4.3.4
277 | globals: 11.12.0
278 | transitivePeerDependencies:
279 | - supports-color
280 |
281 | /@babel/types/7.20.2:
282 | resolution: {integrity: sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==}
283 | engines: {node: '>=6.9.0'}
284 | dependencies:
285 | '@babel/helper-string-parser': 7.19.4
286 | '@babel/helper-validator-identifier': 7.19.1
287 | to-fast-properties: 2.0.0
288 |
289 | /@emotion/babel-plugin/11.10.5_@babel+core@7.20.2:
290 | resolution: {integrity: sha512-xE7/hyLHJac7D2Ve9dKroBBZqBT7WuPQmWcq7HSGb84sUuP4mlOWoB8dvVfD9yk5DHkU1m6RW7xSoDtnQHNQeA==}
291 | peerDependencies:
292 | '@babel/core': ^7.0.0
293 | dependencies:
294 | '@babel/core': 7.20.2
295 | '@babel/helper-module-imports': 7.18.6
296 | '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.2
297 | '@babel/runtime': 7.20.1
298 | '@emotion/hash': 0.9.0
299 | '@emotion/memoize': 0.8.0
300 | '@emotion/serialize': 1.1.1
301 | babel-plugin-macros: 3.1.0
302 | convert-source-map: 1.9.0
303 | escape-string-regexp: 4.0.0
304 | find-root: 1.1.0
305 | source-map: 0.5.7
306 | stylis: 4.1.3
307 | dev: false
308 |
309 | /@emotion/cache/11.10.5:
310 | resolution: {integrity: sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==}
311 | dependencies:
312 | '@emotion/memoize': 0.8.0
313 | '@emotion/sheet': 1.2.1
314 | '@emotion/utils': 1.2.0
315 | '@emotion/weak-memoize': 0.3.0
316 | stylis: 4.1.3
317 | dev: false
318 |
319 | /@emotion/hash/0.9.0:
320 | resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==}
321 | dev: false
322 |
323 | /@emotion/is-prop-valid/1.2.0:
324 | resolution: {integrity: sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==}
325 | dependencies:
326 | '@emotion/memoize': 0.8.0
327 | dev: false
328 |
329 | /@emotion/memoize/0.8.0:
330 | resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==}
331 | dev: false
332 |
333 | /@emotion/react/11.10.5_cuziicjcvwawlf5iuhzacuhqcy:
334 | resolution: {integrity: sha512-TZs6235tCJ/7iF6/rvTaOH4oxQg2gMAcdHemjwLKIjKz4rRuYe1HJ2TQJKnAcRAfOUDdU8XoDadCe1rl72iv8A==}
335 | peerDependencies:
336 | '@babel/core': ^7.0.0
337 | '@types/react': '*'
338 | react: '>=16.8.0'
339 | peerDependenciesMeta:
340 | '@babel/core':
341 | optional: true
342 | '@types/react':
343 | optional: true
344 | dependencies:
345 | '@babel/core': 7.20.2
346 | '@babel/runtime': 7.20.1
347 | '@emotion/babel-plugin': 11.10.5_@babel+core@7.20.2
348 | '@emotion/cache': 11.10.5
349 | '@emotion/serialize': 1.1.1
350 | '@emotion/use-insertion-effect-with-fallbacks': 1.0.0_react@18.2.0
351 | '@emotion/utils': 1.2.0
352 | '@emotion/weak-memoize': 0.3.0
353 | '@types/react': 18.0.25
354 | hoist-non-react-statics: 3.3.2
355 | react: 18.2.0
356 | dev: false
357 |
358 | /@emotion/serialize/1.1.1:
359 | resolution: {integrity: sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==}
360 | dependencies:
361 | '@emotion/hash': 0.9.0
362 | '@emotion/memoize': 0.8.0
363 | '@emotion/unitless': 0.8.0
364 | '@emotion/utils': 1.2.0
365 | csstype: 3.1.1
366 | dev: false
367 |
368 | /@emotion/sheet/1.2.1:
369 | resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==}
370 | dev: false
371 |
372 | /@emotion/styled/11.10.5_hmjty4frusbltjhl3xd7udcm2y:
373 | resolution: {integrity: sha512-8EP6dD7dMkdku2foLoruPCNkRevzdcBaY6q0l0OsbyJK+x8D9HWjX27ARiSIKNF634hY9Zdoedh8bJCiva8yZw==}
374 | peerDependencies:
375 | '@babel/core': ^7.0.0
376 | '@emotion/react': ^11.0.0-rc.0
377 | '@types/react': '*'
378 | react: '>=16.8.0'
379 | peerDependenciesMeta:
380 | '@babel/core':
381 | optional: true
382 | '@types/react':
383 | optional: true
384 | dependencies:
385 | '@babel/core': 7.20.2
386 | '@babel/runtime': 7.20.1
387 | '@emotion/babel-plugin': 11.10.5_@babel+core@7.20.2
388 | '@emotion/is-prop-valid': 1.2.0
389 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
390 | '@emotion/serialize': 1.1.1
391 | '@emotion/use-insertion-effect-with-fallbacks': 1.0.0_react@18.2.0
392 | '@emotion/utils': 1.2.0
393 | '@types/react': 18.0.25
394 | react: 18.2.0
395 | dev: false
396 |
397 | /@emotion/unitless/0.8.0:
398 | resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==}
399 | dev: false
400 |
401 | /@emotion/use-insertion-effect-with-fallbacks/1.0.0_react@18.2.0:
402 | resolution: {integrity: sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==}
403 | peerDependencies:
404 | react: '>=16.8.0'
405 | dependencies:
406 | react: 18.2.0
407 | dev: false
408 |
409 | /@emotion/utils/1.2.0:
410 | resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==}
411 | dev: false
412 |
413 | /@emotion/weak-memoize/0.3.0:
414 | resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==}
415 | dev: false
416 |
417 | /@esbuild/android-arm/0.15.14:
418 | resolution: {integrity: sha512-+Rb20XXxRGisNu2WmNKk+scpanb7nL5yhuI1KR9wQFiC43ddPj/V1fmNyzlFC9bKiG4mYzxW7egtoHVcynr+OA==}
419 | engines: {node: '>=12'}
420 | cpu: [arm]
421 | os: [android]
422 | requiresBuild: true
423 | dev: true
424 | optional: true
425 |
426 | /@esbuild/linux-loong64/0.15.14:
427 | resolution: {integrity: sha512-eQi9rosGNVQFJyJWV0HCA5WZae/qWIQME7s8/j8DMvnylfBv62Pbu+zJ2eUDqNf2O4u3WB+OEXyfkpBoe194sg==}
428 | engines: {node: '>=12'}
429 | cpu: [loong64]
430 | os: [linux]
431 | requiresBuild: true
432 | dev: true
433 | optional: true
434 |
435 | /@jridgewell/gen-mapping/0.1.1:
436 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==}
437 | engines: {node: '>=6.0.0'}
438 | dependencies:
439 | '@jridgewell/set-array': 1.1.2
440 | '@jridgewell/sourcemap-codec': 1.4.14
441 |
442 | /@jridgewell/gen-mapping/0.3.2:
443 | resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==}
444 | engines: {node: '>=6.0.0'}
445 | dependencies:
446 | '@jridgewell/set-array': 1.1.2
447 | '@jridgewell/sourcemap-codec': 1.4.14
448 | '@jridgewell/trace-mapping': 0.3.17
449 |
450 | /@jridgewell/resolve-uri/3.1.0:
451 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
452 | engines: {node: '>=6.0.0'}
453 |
454 | /@jridgewell/set-array/1.1.2:
455 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
456 | engines: {node: '>=6.0.0'}
457 |
458 | /@jridgewell/sourcemap-codec/1.4.14:
459 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
460 |
461 | /@jridgewell/trace-mapping/0.3.17:
462 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==}
463 | dependencies:
464 | '@jridgewell/resolve-uri': 3.1.0
465 | '@jridgewell/sourcemap-codec': 1.4.14
466 |
467 | /@mui/base/5.0.0-alpha.106_2zx2umvpluuhvlq44va5bta2da:
468 | resolution: {integrity: sha512-xJQQtwPCPwr6hGWTBdvDwHYwExn3Bw7nPQkN8Fuz8kHpZqoMVWQvvaFS557AIkkI2AFLV3DxVIMjbCvrIntBWg==}
469 | engines: {node: '>=12.0.0'}
470 | peerDependencies:
471 | '@types/react': ^17.0.0 || ^18.0.0
472 | react: ^17.0.0 || ^18.0.0
473 | react-dom: ^17.0.0 || ^18.0.0
474 | peerDependenciesMeta:
475 | '@types/react':
476 | optional: true
477 | dependencies:
478 | '@babel/runtime': 7.20.1
479 | '@emotion/is-prop-valid': 1.2.0
480 | '@mui/types': 7.2.1_@types+react@18.0.25
481 | '@mui/utils': 5.10.14_react@18.2.0
482 | '@popperjs/core': 2.11.6
483 | '@types/react': 18.0.25
484 | clsx: 1.2.1
485 | prop-types: 15.8.1
486 | react: 18.2.0
487 | react-dom: 18.2.0_react@18.2.0
488 | react-is: 18.2.0
489 | dev: false
490 |
491 | /@mui/core-downloads-tracker/5.10.14:
492 | resolution: {integrity: sha512-qLgIJNOR9Dre8JiZ/neVzOf4jf88J6YtOkQqugtMrleLjbfRVUSS4LWl9CSOjNq76quYdmYWnSDgfQqOooT2cQ==}
493 | dev: false
494 |
495 | /@mui/material/5.10.14_thp4wrxo45nyllusrnt46mid4u:
496 | resolution: {integrity: sha512-HWzKVAykePMx54WtxVwZyL1W4k3xlHYIqwMw0CaXAvgB3UE9yjABZuuGr8vG5Z6CSNWamzd+s1x8u7pQPFl9og==}
497 | engines: {node: '>=12.0.0'}
498 | peerDependencies:
499 | '@emotion/react': ^11.5.0
500 | '@emotion/styled': ^11.3.0
501 | '@types/react': ^17.0.0 || ^18.0.0
502 | react: ^17.0.0 || ^18.0.0
503 | react-dom: ^17.0.0 || ^18.0.0
504 | peerDependenciesMeta:
505 | '@emotion/react':
506 | optional: true
507 | '@emotion/styled':
508 | optional: true
509 | '@types/react':
510 | optional: true
511 | dependencies:
512 | '@babel/runtime': 7.20.1
513 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
514 | '@emotion/styled': 11.10.5_hmjty4frusbltjhl3xd7udcm2y
515 | '@mui/base': 5.0.0-alpha.106_2zx2umvpluuhvlq44va5bta2da
516 | '@mui/core-downloads-tracker': 5.10.14
517 | '@mui/system': 5.10.14_v64nlmo6pkqfmpmxge6otzlg54
518 | '@mui/types': 7.2.1_@types+react@18.0.25
519 | '@mui/utils': 5.10.14_react@18.2.0
520 | '@types/react': 18.0.25
521 | '@types/react-transition-group': 4.4.5
522 | clsx: 1.2.1
523 | csstype: 3.1.1
524 | prop-types: 15.8.1
525 | react: 18.2.0
526 | react-dom: 18.2.0_react@18.2.0
527 | react-is: 18.2.0
528 | react-transition-group: 4.4.5_biqbaboplfbrettd7655fr4n2y
529 | dev: false
530 |
531 | /@mui/private-theming/5.10.14_fan5qbzahqtxlm5dzefqlqx5ia:
532 | resolution: {integrity: sha512-3aIBe8WK65CwAPDY8nB11hYnzE1CZMymi76UnaFrA/DdGDwl5Y8F6uB+StKrkVmsqF1po7Mp2odqVkHj320gXw==}
533 | engines: {node: '>=12.0.0'}
534 | peerDependencies:
535 | '@types/react': ^17.0.0 || ^18.0.0
536 | react: ^17.0.0 || ^18.0.0
537 | peerDependenciesMeta:
538 | '@types/react':
539 | optional: true
540 | dependencies:
541 | '@babel/runtime': 7.20.1
542 | '@mui/utils': 5.10.14_react@18.2.0
543 | '@types/react': 18.0.25
544 | prop-types: 15.8.1
545 | react: 18.2.0
546 | dev: false
547 |
548 | /@mui/styled-engine/5.10.14_dovxhg2tvkkxkdnqyoum6wzcxm:
549 | resolution: {integrity: sha512-bgKdM57ExogWpIfhL/ngSlzF4FhbH00vYF+Y5VALTob4uslFqje0xzoWmbfcCn4cZt2NXxZJIwhsq4vzo5itlw==}
550 | engines: {node: '>=12.0.0'}
551 | peerDependencies:
552 | '@emotion/react': ^11.4.1
553 | '@emotion/styled': ^11.3.0
554 | react: ^17.0.0 || ^18.0.0
555 | peerDependenciesMeta:
556 | '@emotion/react':
557 | optional: true
558 | '@emotion/styled':
559 | optional: true
560 | dependencies:
561 | '@babel/runtime': 7.20.1
562 | '@emotion/cache': 11.10.5
563 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
564 | '@emotion/styled': 11.10.5_hmjty4frusbltjhl3xd7udcm2y
565 | csstype: 3.1.1
566 | prop-types: 15.8.1
567 | react: 18.2.0
568 | dev: false
569 |
570 | /@mui/system/5.10.14_v64nlmo6pkqfmpmxge6otzlg54:
571 | resolution: {integrity: sha512-2de7XCjRb1j8Od0Stmo0LwFMLpOMNT4wzfINuExXI1TVSuyxXIXUxiC5FEgJW3GMvf/a7SUR8VOiMoKlKWzukw==}
572 | engines: {node: '>=12.0.0'}
573 | peerDependencies:
574 | '@emotion/react': ^11.5.0
575 | '@emotion/styled': ^11.3.0
576 | '@types/react': ^17.0.0 || ^18.0.0
577 | react: ^17.0.0 || ^18.0.0
578 | peerDependenciesMeta:
579 | '@emotion/react':
580 | optional: true
581 | '@emotion/styled':
582 | optional: true
583 | '@types/react':
584 | optional: true
585 | dependencies:
586 | '@babel/runtime': 7.20.1
587 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
588 | '@emotion/styled': 11.10.5_hmjty4frusbltjhl3xd7udcm2y
589 | '@mui/private-theming': 5.10.14_fan5qbzahqtxlm5dzefqlqx5ia
590 | '@mui/styled-engine': 5.10.14_dovxhg2tvkkxkdnqyoum6wzcxm
591 | '@mui/types': 7.2.1_@types+react@18.0.25
592 | '@mui/utils': 5.10.14_react@18.2.0
593 | '@types/react': 18.0.25
594 | clsx: 1.2.1
595 | csstype: 3.1.1
596 | prop-types: 15.8.1
597 | react: 18.2.0
598 | dev: false
599 |
600 | /@mui/types/7.2.1_@types+react@18.0.25:
601 | resolution: {integrity: sha512-c5mSM7ivD8EsqK6HUi9hQPr5V7TJ/IRThUQ9nWNYPdhCGriTSQV4vL6DflT99LkM+wLiIS1rVjphpEWxERep7A==}
602 | peerDependencies:
603 | '@types/react': '*'
604 | peerDependenciesMeta:
605 | '@types/react':
606 | optional: true
607 | dependencies:
608 | '@types/react': 18.0.25
609 | dev: false
610 |
611 | /@mui/utils/5.10.14_react@18.2.0:
612 | resolution: {integrity: sha512-12p59+wDZpA++XVJmKwqsZmrA1nmUQ5d0a1yQWtcDjxNyER1EDzozYN/db+FY2i5ceQh2TynPTEwGms2mXDwFg==}
613 | engines: {node: '>=12.0.0'}
614 | peerDependencies:
615 | react: ^17.0.0 || ^18.0.0
616 | dependencies:
617 | '@babel/runtime': 7.20.1
618 | '@types/prop-types': 15.7.5
619 | '@types/react-is': 17.0.3
620 | prop-types: 15.8.1
621 | react: 18.2.0
622 | react-is: 18.2.0
623 | dev: false
624 |
625 | /@popperjs/core/2.11.6:
626 | resolution: {integrity: sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==}
627 | dev: false
628 |
629 | /@types/parse-json/4.0.0:
630 | resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==}
631 | dev: false
632 |
633 | /@types/prop-types/15.7.5:
634 | resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==}
635 |
636 | /@types/react-dom/18.0.9:
637 | resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==}
638 | dependencies:
639 | '@types/react': 18.0.25
640 | dev: true
641 |
642 | /@types/react-is/17.0.3:
643 | resolution: {integrity: sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==}
644 | dependencies:
645 | '@types/react': 18.0.25
646 | dev: false
647 |
648 | /@types/react-transition-group/4.4.5:
649 | resolution: {integrity: sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==}
650 | dependencies:
651 | '@types/react': 18.0.25
652 | dev: false
653 |
654 | /@types/react/18.0.25:
655 | resolution: {integrity: sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g==}
656 | dependencies:
657 | '@types/prop-types': 15.7.5
658 | '@types/scheduler': 0.16.2
659 | csstype: 3.1.1
660 |
661 | /@types/scheduler/0.16.2:
662 | resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==}
663 |
664 | /@vitejs/plugin-react/2.2.0_vite@3.2.4:
665 | resolution: {integrity: sha512-FFpefhvExd1toVRlokZgxgy2JtnBOdp4ZDsq7ldCWaqGSGn9UhWMAVm/1lxPL14JfNS5yGz+s9yFrQY6shoStA==}
666 | engines: {node: ^14.18.0 || >=16.0.0}
667 | peerDependencies:
668 | vite: ^3.0.0
669 | dependencies:
670 | '@babel/core': 7.20.2
671 | '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2
672 | '@babel/plugin-transform-react-jsx-development': 7.18.6_@babel+core@7.20.2
673 | '@babel/plugin-transform-react-jsx-self': 7.18.6_@babel+core@7.20.2
674 | '@babel/plugin-transform-react-jsx-source': 7.19.6_@babel+core@7.20.2
675 | magic-string: 0.26.7
676 | react-refresh: 0.14.0
677 | vite: 3.2.4
678 | transitivePeerDependencies:
679 | - supports-color
680 | dev: true
681 |
682 | /ansi-styles/3.2.1:
683 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
684 | engines: {node: '>=4'}
685 | dependencies:
686 | color-convert: 1.9.3
687 |
688 | /asynckit/0.4.0:
689 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
690 | dev: false
691 |
692 | /axios/1.1.3:
693 | resolution: {integrity: sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==}
694 | dependencies:
695 | follow-redirects: 1.15.2
696 | form-data: 4.0.0
697 | proxy-from-env: 1.1.0
698 | transitivePeerDependencies:
699 | - debug
700 | dev: false
701 |
702 | /babel-plugin-macros/3.1.0:
703 | resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==}
704 | engines: {node: '>=10', npm: '>=6'}
705 | dependencies:
706 | '@babel/runtime': 7.20.1
707 | cosmiconfig: 7.1.0
708 | resolve: 1.22.1
709 | dev: false
710 |
711 | /browserslist/4.21.4:
712 | resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==}
713 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
714 | hasBin: true
715 | dependencies:
716 | caniuse-lite: 1.0.30001431
717 | electron-to-chromium: 1.4.284
718 | node-releases: 2.0.6
719 | update-browserslist-db: 1.0.10_browserslist@4.21.4
720 |
721 | /callsites/3.1.0:
722 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
723 | engines: {node: '>=6'}
724 | dev: false
725 |
726 | /caniuse-lite/1.0.30001431:
727 | resolution: {integrity: sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==}
728 |
729 | /chalk/2.4.2:
730 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
731 | engines: {node: '>=4'}
732 | dependencies:
733 | ansi-styles: 3.2.1
734 | escape-string-regexp: 1.0.5
735 | supports-color: 5.5.0
736 |
737 | /clsx/1.2.1:
738 | resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==}
739 | engines: {node: '>=6'}
740 | dev: false
741 |
742 | /color-convert/1.9.3:
743 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
744 | dependencies:
745 | color-name: 1.1.3
746 |
747 | /color-name/1.1.3:
748 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
749 |
750 | /combined-stream/1.0.8:
751 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
752 | engines: {node: '>= 0.8'}
753 | dependencies:
754 | delayed-stream: 1.0.0
755 | dev: false
756 |
757 | /convert-source-map/1.9.0:
758 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
759 |
760 | /cosmiconfig/7.1.0:
761 | resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
762 | engines: {node: '>=10'}
763 | dependencies:
764 | '@types/parse-json': 4.0.0
765 | import-fresh: 3.3.0
766 | parse-json: 5.2.0
767 | path-type: 4.0.0
768 | yaml: 1.10.2
769 | dev: false
770 |
771 | /csstype/3.1.1:
772 | resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==}
773 |
774 | /debug/4.3.4:
775 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
776 | engines: {node: '>=6.0'}
777 | peerDependencies:
778 | supports-color: '*'
779 | peerDependenciesMeta:
780 | supports-color:
781 | optional: true
782 | dependencies:
783 | ms: 2.1.2
784 |
785 | /delayed-stream/1.0.0:
786 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
787 | engines: {node: '>=0.4.0'}
788 | dev: false
789 |
790 | /dom-helpers/5.2.1:
791 | resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==}
792 | dependencies:
793 | '@babel/runtime': 7.20.1
794 | csstype: 3.1.1
795 | dev: false
796 |
797 | /electron-to-chromium/1.4.284:
798 | resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==}
799 |
800 | /error-ex/1.3.2:
801 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
802 | dependencies:
803 | is-arrayish: 0.2.1
804 | dev: false
805 |
806 | /esbuild-android-64/0.15.14:
807 | resolution: {integrity: sha512-HuilVIb4rk9abT4U6bcFdU35UHOzcWVGLSjEmC58OVr96q5UiRqzDtWjPlCMugjhgUGKEs8Zf4ueIvYbOStbIg==}
808 | engines: {node: '>=12'}
809 | cpu: [x64]
810 | os: [android]
811 | requiresBuild: true
812 | dev: true
813 | optional: true
814 |
815 | /esbuild-android-arm64/0.15.14:
816 | resolution: {integrity: sha512-/QnxRVxsR2Vtf3XottAHj7hENAMW2wCs6S+OZcAbc/8nlhbAL/bCQRCVD78VtI5mdwqWkVi3wMqM94kScQCgqg==}
817 | engines: {node: '>=12'}
818 | cpu: [arm64]
819 | os: [android]
820 | requiresBuild: true
821 | dev: true
822 | optional: true
823 |
824 | /esbuild-darwin-64/0.15.14:
825 | resolution: {integrity: sha512-ToNuf1uifu8hhwWvoZJGCdLIX/1zpo8cOGnT0XAhDQXiKOKYaotVNx7pOVB1f+wHoWwTLInrOmh3EmA7Fd+8Vg==}
826 | engines: {node: '>=12'}
827 | cpu: [x64]
828 | os: [darwin]
829 | requiresBuild: true
830 | dev: true
831 | optional: true
832 |
833 | /esbuild-darwin-arm64/0.15.14:
834 | resolution: {integrity: sha512-KgGP+y77GszfYJgceO0Wi/PiRtYo5y2Xo9rhBUpxTPaBgWDJ14gqYN0+NMbu+qC2fykxXaipHxN4Scaj9tUS1A==}
835 | engines: {node: '>=12'}
836 | cpu: [arm64]
837 | os: [darwin]
838 | requiresBuild: true
839 | dev: true
840 | optional: true
841 |
842 | /esbuild-freebsd-64/0.15.14:
843 | resolution: {integrity: sha512-xr0E2n5lyWw3uFSwwUXHc0EcaBDtsal/iIfLioflHdhAe10KSctV978Te7YsfnsMKzcoGeS366+tqbCXdqDHQA==}
844 | engines: {node: '>=12'}
845 | cpu: [x64]
846 | os: [freebsd]
847 | requiresBuild: true
848 | dev: true
849 | optional: true
850 |
851 | /esbuild-freebsd-arm64/0.15.14:
852 | resolution: {integrity: sha512-8XH96sOQ4b1LhMlO10eEWOjEngmZ2oyw3pW4o8kvBcpF6pULr56eeYVP5radtgw54g3T8nKHDHYEI5AItvskZg==}
853 | engines: {node: '>=12'}
854 | cpu: [arm64]
855 | os: [freebsd]
856 | requiresBuild: true
857 | dev: true
858 | optional: true
859 |
860 | /esbuild-linux-32/0.15.14:
861 | resolution: {integrity: sha512-6ssnvwaTAi8AzKN8By2V0nS+WF5jTP7SfuK6sStGnDP7MCJo/4zHgM9oE1eQTS2jPmo3D673rckuCzRlig+HMA==}
862 | engines: {node: '>=12'}
863 | cpu: [ia32]
864 | os: [linux]
865 | requiresBuild: true
866 | dev: true
867 | optional: true
868 |
869 | /esbuild-linux-64/0.15.14:
870 | resolution: {integrity: sha512-ONySx3U0wAJOJuxGUlXBWxVKFVpWv88JEv0NZ6NlHknmDd1yCbf4AEdClSgLrqKQDXYywmw4gYDvdLsS6z0hcw==}
871 | engines: {node: '>=12'}
872 | cpu: [x64]
873 | os: [linux]
874 | requiresBuild: true
875 | dev: true
876 | optional: true
877 |
878 | /esbuild-linux-arm/0.15.14:
879 | resolution: {integrity: sha512-D2LImAIV3QzL7lHURyCHBkycVFbKwkDb1XEUWan+2fb4qfW7qAeUtul7ZIcIwFKZgPcl+6gKZmvLgPSj26RQ2Q==}
880 | engines: {node: '>=12'}
881 | cpu: [arm]
882 | os: [linux]
883 | requiresBuild: true
884 | dev: true
885 | optional: true
886 |
887 | /esbuild-linux-arm64/0.15.14:
888 | resolution: {integrity: sha512-kle2Ov6a1e5AjlHlMQl1e+c4myGTeggrRzArQFmWp6O6JoqqB9hT+B28EW4tjFWgV/NxUq46pWYpgaWXsXRPAg==}
889 | engines: {node: '>=12'}
890 | cpu: [arm64]
891 | os: [linux]
892 | requiresBuild: true
893 | dev: true
894 | optional: true
895 |
896 | /esbuild-linux-mips64le/0.15.14:
897 | resolution: {integrity: sha512-FVdMYIzOLXUq+OE7XYKesuEAqZhmAIV6qOoYahvUp93oXy0MOVTP370ECbPfGXXUdlvc0TNgkJa3YhEwyZ6MRA==}
898 | engines: {node: '>=12'}
899 | cpu: [mips64el]
900 | os: [linux]
901 | requiresBuild: true
902 | dev: true
903 | optional: true
904 |
905 | /esbuild-linux-ppc64le/0.15.14:
906 | resolution: {integrity: sha512-2NzH+iuzMDA+jjtPjuIz/OhRDf8tzbQ1tRZJI//aT25o1HKc0reMMXxKIYq/8nSHXiJSnYV4ODzTiv45s+h73w==}
907 | engines: {node: '>=12'}
908 | cpu: [ppc64]
909 | os: [linux]
910 | requiresBuild: true
911 | dev: true
912 | optional: true
913 |
914 | /esbuild-linux-riscv64/0.15.14:
915 | resolution: {integrity: sha512-VqxvutZNlQxmUNS7Ac+aczttLEoHBJ9e3OYGqnULrfipRvG97qLrAv9EUY9iSrRKBqeEbSvS9bSfstZqwz0T4Q==}
916 | engines: {node: '>=12'}
917 | cpu: [riscv64]
918 | os: [linux]
919 | requiresBuild: true
920 | dev: true
921 | optional: true
922 |
923 | /esbuild-linux-s390x/0.15.14:
924 | resolution: {integrity: sha512-+KVHEUshX5n6VP6Vp/AKv9fZIl5kr2ph8EUFmQUJnDpHwcfTSn2AQgYYm0HTBR2Mr4d0Wlr0FxF/Cs5pbFgiOw==}
925 | engines: {node: '>=12'}
926 | cpu: [s390x]
927 | os: [linux]
928 | requiresBuild: true
929 | dev: true
930 | optional: true
931 |
932 | /esbuild-netbsd-64/0.15.14:
933 | resolution: {integrity: sha512-6D/dr17piEgevIm1xJfZP2SjB9Z+g8ERhNnBdlZPBWZl+KSPUKLGF13AbvC+nzGh8IxOH2TyTIdRMvKMP0nEzQ==}
934 | engines: {node: '>=12'}
935 | cpu: [x64]
936 | os: [netbsd]
937 | requiresBuild: true
938 | dev: true
939 | optional: true
940 |
941 | /esbuild-openbsd-64/0.15.14:
942 | resolution: {integrity: sha512-rREQBIlMibBetgr2E9Lywt2Qxv2ZdpmYahR4IUlAQ1Efv/A5gYdO0/VIN3iowDbCNTLxp0bb57Vf0LFcffD6kA==}
943 | engines: {node: '>=12'}
944 | cpu: [x64]
945 | os: [openbsd]
946 | requiresBuild: true
947 | dev: true
948 | optional: true
949 |
950 | /esbuild-sunos-64/0.15.14:
951 | resolution: {integrity: sha512-DNVjSp/BY4IfwtdUAvWGIDaIjJXY5KI4uD82+15v6k/w7px9dnaDaJJ2R6Mu+KCgr5oklmFc0KjBjh311Gxl9Q==}
952 | engines: {node: '>=12'}
953 | cpu: [x64]
954 | os: [sunos]
955 | requiresBuild: true
956 | dev: true
957 | optional: true
958 |
959 | /esbuild-windows-32/0.15.14:
960 | resolution: {integrity: sha512-pHBWrcA+/oLgvViuG9FO3kNPO635gkoVrRQwe6ZY1S0jdET07xe2toUvQoJQ8KT3/OkxqUasIty5hpuKFLD+eg==}
961 | engines: {node: '>=12'}
962 | cpu: [ia32]
963 | os: [win32]
964 | requiresBuild: true
965 | dev: true
966 | optional: true
967 |
968 | /esbuild-windows-64/0.15.14:
969 | resolution: {integrity: sha512-CszIGQVk/P8FOS5UgAH4hKc9zOaFo69fe+k1rqgBHx3CSK3Opyk5lwYriIamaWOVjBt7IwEP6NALz+tkVWdFog==}
970 | engines: {node: '>=12'}
971 | cpu: [x64]
972 | os: [win32]
973 | requiresBuild: true
974 | dev: true
975 | optional: true
976 |
977 | /esbuild-windows-arm64/0.15.14:
978 | resolution: {integrity: sha512-KW9W4psdZceaS9A7Jsgl4WialOznSURvqX/oHZk3gOP7KbjtHLSsnmSvNdzagGJfxbAe30UVGXRe8q8nDsOSQw==}
979 | engines: {node: '>=12'}
980 | cpu: [arm64]
981 | os: [win32]
982 | requiresBuild: true
983 | dev: true
984 | optional: true
985 |
986 | /esbuild/0.15.14:
987 | resolution: {integrity: sha512-pJN8j42fvWLFWwSMG4luuupl2Me7mxciUOsMegKvwCmhEbJ2covUdFnihxm0FMIBV+cbwbtMoHgMCCI+pj1btQ==}
988 | engines: {node: '>=12'}
989 | hasBin: true
990 | requiresBuild: true
991 | optionalDependencies:
992 | '@esbuild/android-arm': 0.15.14
993 | '@esbuild/linux-loong64': 0.15.14
994 | esbuild-android-64: 0.15.14
995 | esbuild-android-arm64: 0.15.14
996 | esbuild-darwin-64: 0.15.14
997 | esbuild-darwin-arm64: 0.15.14
998 | esbuild-freebsd-64: 0.15.14
999 | esbuild-freebsd-arm64: 0.15.14
1000 | esbuild-linux-32: 0.15.14
1001 | esbuild-linux-64: 0.15.14
1002 | esbuild-linux-arm: 0.15.14
1003 | esbuild-linux-arm64: 0.15.14
1004 | esbuild-linux-mips64le: 0.15.14
1005 | esbuild-linux-ppc64le: 0.15.14
1006 | esbuild-linux-riscv64: 0.15.14
1007 | esbuild-linux-s390x: 0.15.14
1008 | esbuild-netbsd-64: 0.15.14
1009 | esbuild-openbsd-64: 0.15.14
1010 | esbuild-sunos-64: 0.15.14
1011 | esbuild-windows-32: 0.15.14
1012 | esbuild-windows-64: 0.15.14
1013 | esbuild-windows-arm64: 0.15.14
1014 | dev: true
1015 |
1016 | /escalade/3.1.1:
1017 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
1018 | engines: {node: '>=6'}
1019 |
1020 | /escape-string-regexp/1.0.5:
1021 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
1022 | engines: {node: '>=0.8.0'}
1023 |
1024 | /escape-string-regexp/4.0.0:
1025 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
1026 | engines: {node: '>=10'}
1027 | dev: false
1028 |
1029 | /find-root/1.1.0:
1030 | resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
1031 | dev: false
1032 |
1033 | /follow-redirects/1.15.2:
1034 | resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==}
1035 | engines: {node: '>=4.0'}
1036 | peerDependencies:
1037 | debug: '*'
1038 | peerDependenciesMeta:
1039 | debug:
1040 | optional: true
1041 | dev: false
1042 |
1043 | /form-data/4.0.0:
1044 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
1045 | engines: {node: '>= 6'}
1046 | dependencies:
1047 | asynckit: 0.4.0
1048 | combined-stream: 1.0.8
1049 | mime-types: 2.1.35
1050 | dev: false
1051 |
1052 | /fsevents/2.3.2:
1053 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
1054 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
1055 | os: [darwin]
1056 | requiresBuild: true
1057 | dev: true
1058 | optional: true
1059 |
1060 | /function-bind/1.1.1:
1061 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
1062 |
1063 | /gensync/1.0.0-beta.2:
1064 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
1065 | engines: {node: '>=6.9.0'}
1066 |
1067 | /globals/11.12.0:
1068 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
1069 | engines: {node: '>=4'}
1070 |
1071 | /has-flag/3.0.0:
1072 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
1073 | engines: {node: '>=4'}
1074 |
1075 | /has/1.0.3:
1076 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
1077 | engines: {node: '>= 0.4.0'}
1078 | dependencies:
1079 | function-bind: 1.1.1
1080 |
1081 | /hoist-non-react-statics/3.3.2:
1082 | resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
1083 | dependencies:
1084 | react-is: 16.13.1
1085 | dev: false
1086 |
1087 | /import-fresh/3.3.0:
1088 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
1089 | engines: {node: '>=6'}
1090 | dependencies:
1091 | parent-module: 1.0.1
1092 | resolve-from: 4.0.0
1093 | dev: false
1094 |
1095 | /is-arrayish/0.2.1:
1096 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
1097 | dev: false
1098 |
1099 | /is-core-module/2.11.0:
1100 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
1101 | dependencies:
1102 | has: 1.0.3
1103 |
1104 | /js-tokens/4.0.0:
1105 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1106 |
1107 | /jsesc/2.5.2:
1108 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
1109 | engines: {node: '>=4'}
1110 | hasBin: true
1111 |
1112 | /json-parse-even-better-errors/2.3.1:
1113 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
1114 | dev: false
1115 |
1116 | /json5/2.2.1:
1117 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
1118 | engines: {node: '>=6'}
1119 | hasBin: true
1120 |
1121 | /lines-and-columns/1.2.4:
1122 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
1123 | dev: false
1124 |
1125 | /loose-envify/1.4.0:
1126 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
1127 | hasBin: true
1128 | dependencies:
1129 | js-tokens: 4.0.0
1130 | dev: false
1131 |
1132 | /magic-string/0.26.7:
1133 | resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==}
1134 | engines: {node: '>=12'}
1135 | dependencies:
1136 | sourcemap-codec: 1.4.8
1137 | dev: true
1138 |
1139 | /mime-db/1.52.0:
1140 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
1141 | engines: {node: '>= 0.6'}
1142 | dev: false
1143 |
1144 | /mime-types/2.1.35:
1145 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
1146 | engines: {node: '>= 0.6'}
1147 | dependencies:
1148 | mime-db: 1.52.0
1149 | dev: false
1150 |
1151 | /ms/2.1.2:
1152 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
1153 |
1154 | /nanoid/3.3.4:
1155 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
1156 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1157 | hasBin: true
1158 | dev: true
1159 |
1160 | /node-releases/2.0.6:
1161 | resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==}
1162 |
1163 | /notistack/2.0.8_i2zh6h4kh2d4dfsph2ys5bh2ha:
1164 | resolution: {integrity: sha512-/IY14wkFp5qjPgKNvAdfL5Jp6q90+MjgKTPh4c81r/lW70KeuX6b9pE/4f8L4FG31cNudbN9siiFS5ql1aSLRw==}
1165 | peerDependencies:
1166 | '@emotion/react': ^11.4.1
1167 | '@emotion/styled': ^11.3.0
1168 | '@mui/material': ^5.0.0
1169 | react: ^16.8.0 || ^17.0.0 || ^18.0.0
1170 | react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
1171 | peerDependenciesMeta:
1172 | '@emotion/react':
1173 | optional: true
1174 | '@emotion/styled':
1175 | optional: true
1176 | dependencies:
1177 | '@emotion/react': 11.10.5_cuziicjcvwawlf5iuhzacuhqcy
1178 | '@emotion/styled': 11.10.5_hmjty4frusbltjhl3xd7udcm2y
1179 | '@mui/material': 5.10.14_thp4wrxo45nyllusrnt46mid4u
1180 | clsx: 1.2.1
1181 | hoist-non-react-statics: 3.3.2
1182 | react: 18.2.0
1183 | react-dom: 18.2.0_react@18.2.0
1184 | dev: false
1185 |
1186 | /object-assign/4.1.1:
1187 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
1188 | engines: {node: '>=0.10.0'}
1189 | dev: false
1190 |
1191 | /parent-module/1.0.1:
1192 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1193 | engines: {node: '>=6'}
1194 | dependencies:
1195 | callsites: 3.1.0
1196 | dev: false
1197 |
1198 | /parse-json/5.2.0:
1199 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
1200 | engines: {node: '>=8'}
1201 | dependencies:
1202 | '@babel/code-frame': 7.18.6
1203 | error-ex: 1.3.2
1204 | json-parse-even-better-errors: 2.3.1
1205 | lines-and-columns: 1.2.4
1206 | dev: false
1207 |
1208 | /path-parse/1.0.7:
1209 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1210 |
1211 | /path-type/4.0.0:
1212 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
1213 | engines: {node: '>=8'}
1214 | dev: false
1215 |
1216 | /picocolors/1.0.0:
1217 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1218 |
1219 | /postcss/8.4.19:
1220 | resolution: {integrity: sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==}
1221 | engines: {node: ^10 || ^12 || >=14}
1222 | dependencies:
1223 | nanoid: 3.3.4
1224 | picocolors: 1.0.0
1225 | source-map-js: 1.0.2
1226 | dev: true
1227 |
1228 | /prop-types/15.8.1:
1229 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
1230 | dependencies:
1231 | loose-envify: 1.4.0
1232 | object-assign: 4.1.1
1233 | react-is: 16.13.1
1234 | dev: false
1235 |
1236 | /proxy-from-env/1.1.0:
1237 | resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
1238 | dev: false
1239 |
1240 | /react-dom/18.2.0_react@18.2.0:
1241 | resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
1242 | peerDependencies:
1243 | react: ^18.2.0
1244 | dependencies:
1245 | loose-envify: 1.4.0
1246 | react: 18.2.0
1247 | scheduler: 0.23.0
1248 | dev: false
1249 |
1250 | /react-is/16.13.1:
1251 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
1252 | dev: false
1253 |
1254 | /react-is/18.2.0:
1255 | resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
1256 | dev: false
1257 |
1258 | /react-refresh/0.14.0:
1259 | resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==}
1260 | engines: {node: '>=0.10.0'}
1261 | dev: true
1262 |
1263 | /react-transition-group/4.4.5_biqbaboplfbrettd7655fr4n2y:
1264 | resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==}
1265 | peerDependencies:
1266 | react: '>=16.6.0'
1267 | react-dom: '>=16.6.0'
1268 | dependencies:
1269 | '@babel/runtime': 7.20.1
1270 | dom-helpers: 5.2.1
1271 | loose-envify: 1.4.0
1272 | prop-types: 15.8.1
1273 | react: 18.2.0
1274 | react-dom: 18.2.0_react@18.2.0
1275 | dev: false
1276 |
1277 | /react/18.2.0:
1278 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
1279 | engines: {node: '>=0.10.0'}
1280 | dependencies:
1281 | loose-envify: 1.4.0
1282 | dev: false
1283 |
1284 | /regenerator-runtime/0.13.11:
1285 | resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==}
1286 | dev: false
1287 |
1288 | /resolve-from/4.0.0:
1289 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1290 | engines: {node: '>=4'}
1291 | dev: false
1292 |
1293 | /resolve/1.22.1:
1294 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
1295 | hasBin: true
1296 | dependencies:
1297 | is-core-module: 2.11.0
1298 | path-parse: 1.0.7
1299 | supports-preserve-symlinks-flag: 1.0.0
1300 |
1301 | /rollup/2.79.1:
1302 | resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
1303 | engines: {node: '>=10.0.0'}
1304 | hasBin: true
1305 | optionalDependencies:
1306 | fsevents: 2.3.2
1307 | dev: true
1308 |
1309 | /rxjs/7.5.7:
1310 | resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==}
1311 | dependencies:
1312 | tslib: 2.4.1
1313 | dev: false
1314 |
1315 | /scheduler/0.23.0:
1316 | resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
1317 | dependencies:
1318 | loose-envify: 1.4.0
1319 | dev: false
1320 |
1321 | /semver/6.3.0:
1322 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
1323 | hasBin: true
1324 |
1325 | /source-map-js/1.0.2:
1326 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
1327 | engines: {node: '>=0.10.0'}
1328 | dev: true
1329 |
1330 | /source-map/0.5.7:
1331 | resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==}
1332 | engines: {node: '>=0.10.0'}
1333 | dev: false
1334 |
1335 | /sourcemap-codec/1.4.8:
1336 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
1337 | dev: true
1338 |
1339 | /stylis/4.1.3:
1340 | resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==}
1341 | dev: false
1342 |
1343 | /supports-color/5.5.0:
1344 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1345 | engines: {node: '>=4'}
1346 | dependencies:
1347 | has-flag: 3.0.0
1348 |
1349 | /supports-preserve-symlinks-flag/1.0.0:
1350 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1351 | engines: {node: '>= 0.4'}
1352 |
1353 | /to-fast-properties/2.0.0:
1354 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1355 | engines: {node: '>=4'}
1356 |
1357 | /tslib/2.4.1:
1358 | resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==}
1359 | dev: false
1360 |
1361 | /typescript/4.9.3:
1362 | resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==}
1363 | engines: {node: '>=4.2.0'}
1364 | hasBin: true
1365 | dev: true
1366 |
1367 | /update-browserslist-db/1.0.10_browserslist@4.21.4:
1368 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==}
1369 | hasBin: true
1370 | peerDependencies:
1371 | browserslist: '>= 4.21.0'
1372 | dependencies:
1373 | browserslist: 4.21.4
1374 | escalade: 3.1.1
1375 | picocolors: 1.0.0
1376 |
1377 | /vite/3.2.4:
1378 | resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==}
1379 | engines: {node: ^14.18.0 || >=16.0.0}
1380 | hasBin: true
1381 | peerDependencies:
1382 | '@types/node': '>= 14'
1383 | less: '*'
1384 | sass: '*'
1385 | stylus: '*'
1386 | sugarss: '*'
1387 | terser: ^5.4.0
1388 | peerDependenciesMeta:
1389 | '@types/node':
1390 | optional: true
1391 | less:
1392 | optional: true
1393 | sass:
1394 | optional: true
1395 | stylus:
1396 | optional: true
1397 | sugarss:
1398 | optional: true
1399 | terser:
1400 | optional: true
1401 | dependencies:
1402 | esbuild: 0.15.14
1403 | postcss: 8.4.19
1404 | resolve: 1.22.1
1405 | rollup: 2.79.1
1406 | optionalDependencies:
1407 | fsevents: 2.3.2
1408 | dev: true
1409 |
1410 | /yaml/1.10.2:
1411 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
1412 | engines: {node: '>= 6'}
1413 | dev: false
1414 |
--------------------------------------------------------------------------------
/public/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | #root {
2 | max-width: 1280px;
3 | margin: 0 auto;
4 | padding: 2rem;
5 | text-align: center;
6 | }
7 |
8 | .logo {
9 | height: 6em;
10 | padding: 1.5em;
11 | will-change: filter;
12 | }
13 | .logo:hover {
14 | filter: drop-shadow(0 0 2em #646cffaa);
15 | }
16 | .logo.react:hover {
17 | filter: drop-shadow(0 0 2em #61dafbaa);
18 | }
19 |
20 | @keyframes logo-spin {
21 | from {
22 | transform: rotate(0deg);
23 | }
24 | to {
25 | transform: rotate(360deg);
26 | }
27 | }
28 |
29 | @media (prefers-reduced-motion: no-preference) {
30 | a:nth-of-type(2) .logo {
31 | animation: logo-spin infinite 20s linear;
32 | }
33 | }
34 |
35 | .card {
36 | padding: 2em;
37 | }
38 |
39 | .read-the-docs {
40 | color: #888;
41 | }
42 |
--------------------------------------------------------------------------------
/src/App.tsx:
--------------------------------------------------------------------------------
1 | import { SnackbarProvider } from 'notistack';
2 | import { useEffect, useState } from 'react';
3 | import './App.css';
4 | import { testingService } from './services/testing.service';
5 | import { SnackbarUtilitiesConfigurator } from './utilities/snackbar-manager';
6 |
7 | function App() {
8 | const [morty, setMorty] = useState({} as any);
9 | const fetchMorty = async () => {
10 | const { data } = await testingService();
11 | setMorty(data);
12 | };
13 |
14 | useEffect(() => {
15 | fetchMorty();
16 | }, []);
17 | return (
18 |
19 |
20 | {JSON.stringify(morty)}
21 |
22 | );
23 | }
24 |
25 | export default App;
26 |
--------------------------------------------------------------------------------
/src/assets/react.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | :root {
2 | font-family: Inter, Avenir, Helvetica, Arial, sans-serif;
3 | font-size: 16px;
4 | line-height: 24px;
5 | font-weight: 400;
6 |
7 | color-scheme: light dark;
8 | color: rgba(255, 255, 255, 0.87);
9 | background-color: #242424;
10 |
11 | font-synthesis: none;
12 | text-rendering: optimizeLegibility;
13 | -webkit-font-smoothing: antialiased;
14 | -moz-osx-font-smoothing: grayscale;
15 | -webkit-text-size-adjust: 100%;
16 | }
17 |
18 | a {
19 | font-weight: 500;
20 | color: #646cff;
21 | text-decoration: inherit;
22 | }
23 | a:hover {
24 | color: #535bf2;
25 | }
26 |
27 | body {
28 | margin: 0;
29 | display: flex;
30 | place-items: center;
31 | min-width: 320px;
32 | min-height: 100vh;
33 | }
34 |
35 | h1 {
36 | font-size: 3.2em;
37 | line-height: 1.1;
38 | }
39 |
40 | button {
41 | border-radius: 8px;
42 | border: 1px solid transparent;
43 | padding: 0.6em 1.2em;
44 | font-size: 1em;
45 | font-weight: 500;
46 | font-family: inherit;
47 | background-color: #1a1a1a;
48 | cursor: pointer;
49 | transition: border-color 0.25s;
50 | }
51 | button:hover {
52 | border-color: #646cff;
53 | }
54 | button:focus,
55 | button:focus-visible {
56 | outline: 4px auto -webkit-focus-ring-color;
57 | }
58 |
59 | @media (prefers-color-scheme: light) {
60 | :root {
61 | color: #213547;
62 | background-color: #ffffff;
63 | }
64 | a:hover {
65 | color: #747bff;
66 | }
67 | button {
68 | background-color: #f9f9f9;
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/src/interceptors/axios.interceptor.tsx:
--------------------------------------------------------------------------------
1 | import axios, { AxiosRequestConfig } from 'axios';
2 | import { getInLocalStorage, getValidationError, LocalStorageKeys, saveInLocalStorage } from '../utilities';
3 | import { SnackbarUtilities } from '../utilities/snackbar-manager';
4 |
5 | export const AxiosInterceptor = () => {
6 | saveInLocalStorage(LocalStorageKeys.TOKEN, '123123123123');
7 |
8 | const updateHeader = (request: AxiosRequestConfig) => {
9 | const token = getInLocalStorage(LocalStorageKeys.TOKEN);
10 | const newHeaders = {
11 | Authorization: token,
12 | 'Content-Type': 'application/json'
13 | };
14 | request.headers = newHeaders;
15 | return request;
16 | };
17 |
18 | axios.interceptors.request.use((request) => {
19 | if (request.url?.includes('assets')) return request;
20 | return updateHeader(request);
21 | });
22 |
23 | axios.interceptors.response.use(
24 | (response) => {
25 | console.log('response', response);
26 | SnackbarUtilities.success('Success');
27 | return response;
28 | },
29 | (error) => {
30 | SnackbarUtilities.error(getValidationError(error.code));
31 | return Promise.reject(error);
32 | }
33 | );
34 | };
35 |
--------------------------------------------------------------------------------
/src/interceptors/index.ts:
--------------------------------------------------------------------------------
1 | export * from './axios.interceptor';
2 |
--------------------------------------------------------------------------------
/src/main.tsx:
--------------------------------------------------------------------------------
1 | import ReactDOM from "react-dom/client";
2 | import App from "./App";
3 | import "./index.css";
4 | import { AxiosInterceptor } from "./interceptors/axios.interceptor";
5 |
6 | AxiosInterceptor();
7 |
8 | ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render(
9 |
10 | );
11 |
--------------------------------------------------------------------------------
/src/models/index.ts:
--------------------------------------------------------------------------------
1 | export * from './type-with-key';
2 |
--------------------------------------------------------------------------------
/src/models/type-with-key.ts:
--------------------------------------------------------------------------------
1 | export type TypeWithKey = { [key: string]: T };
2 |
--------------------------------------------------------------------------------
/src/services/testing.service.tsx:
--------------------------------------------------------------------------------
1 | import axios from "axios";
2 | import { getInLocalStorage, LocalStorageKeys } from "../utilities";
3 |
4 | export const testingService = () => {
5 | return axios.get("https://rickandmortyapi.com/api/character/2");
6 | };
7 |
8 | export const refreshToken = () => {
9 | return axios.post(
10 | "https://rickandmortyapi.com/api/refreshtoken",
11 | {},
12 | {
13 | headers: {
14 | Authorization: getInLocalStorage(LocalStorageKeys.REFRESH_TOKEN),
15 | },
16 | }
17 | );
18 | };
19 |
--------------------------------------------------------------------------------
/src/utilities/get-validation-error.tsx:
--------------------------------------------------------------------------------
1 | import { TypeWithKey } from '../models';
2 |
3 | export const getValidationError = (errorCode: any) => {
4 | const codeMatcher: TypeWithKey = {
5 | ERR_NETWORK: 'Se rompió la red',
6 | ERR_TIMEOUT: 'Se acabó el tiempo',
7 | ERR_CANCEL: 'Se canceló la petición',
8 | ERR_UNKNOWN: 'Error desconocido',
9 | ERR_400: 'Error 400',
10 | ERR_401: 'Error 401',
11 | ERR_403: 'Error 403'
12 | };
13 |
14 | return codeMatcher[errorCode];
15 | };
16 |
--------------------------------------------------------------------------------
/src/utilities/index.ts:
--------------------------------------------------------------------------------
1 | export * from './get-validation-error';
2 | export * from './local-storage-manager';
3 | export * from './snackbar-manager';
4 |
--------------------------------------------------------------------------------
/src/utilities/local-storage-manager.tsx:
--------------------------------------------------------------------------------
1 | export enum LocalStorageKeys {
2 | REFRESH_TOKEN = "refreshToken",
3 | TOKEN = "token",
4 | }
5 |
6 | export const saveInLocalStorage = (key: string, value: string) => {
7 | localStorage.setItem(key, value);
8 | };
9 |
10 | export const getInLocalStorage = (key: string) => {
11 | const result = localStorage.getItem(key);
12 | return !!result && JSON.parse(result);
13 | };
14 |
15 | export const clearLocalStorage = () => {
16 | localStorage.clear();
17 | };
18 |
--------------------------------------------------------------------------------
/src/utilities/snackbar-manager.tsx:
--------------------------------------------------------------------------------
1 | import { useSnackbar, VariantType, WithSnackbarProps } from "notistack";
2 |
3 | let useSnackbarRef: WithSnackbarProps;
4 | export const SnackbarUtilitiesConfigurator: React.FC = () => {
5 | useSnackbarRef = useSnackbar();
6 | return null;
7 | };
8 |
9 | export const SnackbarUtilities = {
10 | toast(msg: string, variant: VariantType = "default") {
11 | useSnackbarRef.enqueueSnackbar(msg, { variant });
12 | },
13 | success(msg: string) {
14 | this.toast(msg, "success");
15 | },
16 | error(msg: string) {
17 | this.toast(msg, "error");
18 | },
19 | info(msg: string) {
20 | this.toast(msg, "info");
21 | },
22 | warning(msg: string) {
23 | this.toast(msg, "warning");
24 | },
25 | };
26 |
--------------------------------------------------------------------------------
/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ESNext",
4 | "useDefineForClassFields": true,
5 | "lib": ["DOM", "DOM.Iterable", "ESNext"],
6 | "allowJs": false,
7 | "skipLibCheck": true,
8 | "esModuleInterop": false,
9 | "allowSyntheticDefaultImports": true,
10 | "strict": true,
11 | "forceConsistentCasingInFileNames": true,
12 | "module": "ESNext",
13 | "moduleResolution": "Node",
14 | "resolveJsonModule": true,
15 | "isolatedModules": true,
16 | "noEmit": true,
17 | "jsx": "react-jsx"
18 | },
19 | "include": ["src"],
20 | "references": [{ "path": "./tsconfig.node.json" }]
21 | }
22 |
--------------------------------------------------------------------------------
/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "module": "ESNext",
5 | "moduleResolution": "Node",
6 | "allowSyntheticDefaultImports": true
7 | },
8 | "include": ["vite.config.ts"]
9 | }
10 |
--------------------------------------------------------------------------------
/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import react from '@vitejs/plugin-react'
3 |
4 | // https://vitejs.dev/config/
5 | export default defineConfig({
6 | plugins: [react()]
7 | })
8 |
--------------------------------------------------------------------------------