├── .gitignore ├── index.html ├── package.json ├── pnpm-lock.yaml ├── public └── vite.svg ├── src ├── App.css ├── App.tsx ├── assets │ └── react.svg ├── createElement.ts ├── index.css ├── main.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 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite + React + TS 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-vite-4-react", 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 | "react": "^18.2.0", 13 | "react-dom": "^18.2.0" 14 | }, 15 | "devDependencies": { 16 | "@crxjs/vite-plugin": "^2.0.0-beta.14", 17 | "@types/chrome": "^0.0.222", 18 | "@types/react": "^18.0.27", 19 | "@types/react-dom": "^18.0.10", 20 | "@vitejs/plugin-react": "^3.1.0", 21 | "typescript": "^4.9.3", 22 | "vite": "^4.1.0" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | '@crxjs/vite-plugin': ^2.0.0-beta.14 5 | '@types/chrome': ^0.0.222 6 | '@types/react': ^18.0.27 7 | '@types/react-dom': ^18.0.10 8 | '@vitejs/plugin-react': ^3.1.0 9 | react: ^18.2.0 10 | react-dom: ^18.2.0 11 | typescript: ^4.9.3 12 | vite: ^4.1.0 13 | 14 | dependencies: 15 | react: 18.2.0 16 | react-dom: 18.2.0_react@18.2.0 17 | 18 | devDependencies: 19 | '@crxjs/vite-plugin': 2.0.0-beta.14 20 | '@types/chrome': 0.0.222 21 | '@types/react': 18.0.28 22 | '@types/react-dom': 18.0.11 23 | '@vitejs/plugin-react': 3.1.0_vite@4.1.4 24 | typescript: 4.9.5 25 | vite: 4.1.4 26 | 27 | packages: 28 | 29 | /@ampproject/remapping/2.2.0: 30 | resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} 31 | engines: {node: '>=6.0.0'} 32 | dependencies: 33 | '@jridgewell/gen-mapping': 0.1.1 34 | '@jridgewell/trace-mapping': 0.3.17 35 | dev: true 36 | 37 | /@babel/code-frame/7.18.6: 38 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} 39 | engines: {node: '>=6.9.0'} 40 | dependencies: 41 | '@babel/highlight': 7.18.6 42 | dev: true 43 | 44 | /@babel/compat-data/7.21.0: 45 | resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} 46 | engines: {node: '>=6.9.0'} 47 | dev: true 48 | 49 | /@babel/core/7.21.0: 50 | resolution: {integrity: sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==} 51 | engines: {node: '>=6.9.0'} 52 | dependencies: 53 | '@ampproject/remapping': 2.2.0 54 | '@babel/code-frame': 7.18.6 55 | '@babel/generator': 7.21.1 56 | '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.0 57 | '@babel/helper-module-transforms': 7.21.2 58 | '@babel/helpers': 7.21.0 59 | '@babel/parser': 7.21.2 60 | '@babel/template': 7.20.7 61 | '@babel/traverse': 7.21.2 62 | '@babel/types': 7.21.2 63 | convert-source-map: 1.9.0 64 | debug: 4.3.4 65 | gensync: 1.0.0-beta.2 66 | json5: 2.2.3 67 | semver: 6.3.0 68 | transitivePeerDependencies: 69 | - supports-color 70 | dev: true 71 | 72 | /@babel/generator/7.21.1: 73 | resolution: {integrity: sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==} 74 | engines: {node: '>=6.9.0'} 75 | dependencies: 76 | '@babel/types': 7.21.2 77 | '@jridgewell/gen-mapping': 0.3.2 78 | '@jridgewell/trace-mapping': 0.3.17 79 | jsesc: 2.5.2 80 | dev: true 81 | 82 | /@babel/helper-compilation-targets/7.20.7_@babel+core@7.21.0: 83 | resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} 84 | engines: {node: '>=6.9.0'} 85 | peerDependencies: 86 | '@babel/core': ^7.0.0 87 | dependencies: 88 | '@babel/compat-data': 7.21.0 89 | '@babel/core': 7.21.0 90 | '@babel/helper-validator-option': 7.21.0 91 | browserslist: 4.21.5 92 | lru-cache: 5.1.1 93 | semver: 6.3.0 94 | dev: true 95 | 96 | /@babel/helper-environment-visitor/7.18.9: 97 | resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} 98 | engines: {node: '>=6.9.0'} 99 | dev: true 100 | 101 | /@babel/helper-function-name/7.21.0: 102 | resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} 103 | engines: {node: '>=6.9.0'} 104 | dependencies: 105 | '@babel/template': 7.20.7 106 | '@babel/types': 7.21.2 107 | dev: true 108 | 109 | /@babel/helper-hoist-variables/7.18.6: 110 | resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} 111 | engines: {node: '>=6.9.0'} 112 | dependencies: 113 | '@babel/types': 7.21.2 114 | dev: true 115 | 116 | /@babel/helper-module-imports/7.18.6: 117 | resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} 118 | engines: {node: '>=6.9.0'} 119 | dependencies: 120 | '@babel/types': 7.21.2 121 | dev: true 122 | 123 | /@babel/helper-module-transforms/7.21.2: 124 | resolution: {integrity: sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==} 125 | engines: {node: '>=6.9.0'} 126 | dependencies: 127 | '@babel/helper-environment-visitor': 7.18.9 128 | '@babel/helper-module-imports': 7.18.6 129 | '@babel/helper-simple-access': 7.20.2 130 | '@babel/helper-split-export-declaration': 7.18.6 131 | '@babel/helper-validator-identifier': 7.19.1 132 | '@babel/template': 7.20.7 133 | '@babel/traverse': 7.21.2 134 | '@babel/types': 7.21.2 135 | transitivePeerDependencies: 136 | - supports-color 137 | dev: true 138 | 139 | /@babel/helper-plugin-utils/7.20.2: 140 | resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} 141 | engines: {node: '>=6.9.0'} 142 | dev: true 143 | 144 | /@babel/helper-simple-access/7.20.2: 145 | resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} 146 | engines: {node: '>=6.9.0'} 147 | dependencies: 148 | '@babel/types': 7.21.2 149 | dev: true 150 | 151 | /@babel/helper-split-export-declaration/7.18.6: 152 | resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} 153 | engines: {node: '>=6.9.0'} 154 | dependencies: 155 | '@babel/types': 7.21.2 156 | dev: true 157 | 158 | /@babel/helper-string-parser/7.19.4: 159 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} 160 | engines: {node: '>=6.9.0'} 161 | dev: true 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 | dev: true 167 | 168 | /@babel/helper-validator-option/7.21.0: 169 | resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} 170 | engines: {node: '>=6.9.0'} 171 | dev: true 172 | 173 | /@babel/helpers/7.21.0: 174 | resolution: {integrity: sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==} 175 | engines: {node: '>=6.9.0'} 176 | dependencies: 177 | '@babel/template': 7.20.7 178 | '@babel/traverse': 7.21.2 179 | '@babel/types': 7.21.2 180 | transitivePeerDependencies: 181 | - supports-color 182 | dev: true 183 | 184 | /@babel/highlight/7.18.6: 185 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} 186 | engines: {node: '>=6.9.0'} 187 | dependencies: 188 | '@babel/helper-validator-identifier': 7.19.1 189 | chalk: 2.4.2 190 | js-tokens: 4.0.0 191 | dev: true 192 | 193 | /@babel/parser/7.21.2: 194 | resolution: {integrity: sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==} 195 | engines: {node: '>=6.0.0'} 196 | hasBin: true 197 | dependencies: 198 | '@babel/types': 7.21.2 199 | dev: true 200 | 201 | /@babel/plugin-transform-react-jsx-self/7.21.0_@babel+core@7.21.0: 202 | resolution: {integrity: sha512-f/Eq+79JEu+KUANFks9UZCcvydOOGMgF7jBrcwjHa5jTZD8JivnhCJYvmlhR/WTXBWonDExPoW0eO/CR4QJirA==} 203 | engines: {node: '>=6.9.0'} 204 | peerDependencies: 205 | '@babel/core': ^7.0.0-0 206 | dependencies: 207 | '@babel/core': 7.21.0 208 | '@babel/helper-plugin-utils': 7.20.2 209 | dev: true 210 | 211 | /@babel/plugin-transform-react-jsx-source/7.19.6_@babel+core@7.21.0: 212 | resolution: {integrity: sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==} 213 | engines: {node: '>=6.9.0'} 214 | peerDependencies: 215 | '@babel/core': ^7.0.0-0 216 | dependencies: 217 | '@babel/core': 7.21.0 218 | '@babel/helper-plugin-utils': 7.20.2 219 | dev: true 220 | 221 | /@babel/template/7.20.7: 222 | resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} 223 | engines: {node: '>=6.9.0'} 224 | dependencies: 225 | '@babel/code-frame': 7.18.6 226 | '@babel/parser': 7.21.2 227 | '@babel/types': 7.21.2 228 | dev: true 229 | 230 | /@babel/traverse/7.21.2: 231 | resolution: {integrity: sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==} 232 | engines: {node: '>=6.9.0'} 233 | dependencies: 234 | '@babel/code-frame': 7.18.6 235 | '@babel/generator': 7.21.1 236 | '@babel/helper-environment-visitor': 7.18.9 237 | '@babel/helper-function-name': 7.21.0 238 | '@babel/helper-hoist-variables': 7.18.6 239 | '@babel/helper-split-export-declaration': 7.18.6 240 | '@babel/parser': 7.21.2 241 | '@babel/types': 7.21.2 242 | debug: 4.3.4 243 | globals: 11.12.0 244 | transitivePeerDependencies: 245 | - supports-color 246 | dev: true 247 | 248 | /@babel/types/7.21.2: 249 | resolution: {integrity: sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==} 250 | engines: {node: '>=6.9.0'} 251 | dependencies: 252 | '@babel/helper-string-parser': 7.19.4 253 | '@babel/helper-validator-identifier': 7.19.1 254 | to-fast-properties: 2.0.0 255 | dev: true 256 | 257 | /@crxjs/vite-plugin/2.0.0-beta.14: 258 | resolution: {integrity: sha512-DPhlMbWLjM5lK4VceEWGmlMA82HECHeCfCQOFd+5KmL+2HEJXVpeB3rKpVRQ7GoWhnC3blC6CS0URk6lulLbTQ==} 259 | dependencies: 260 | '@rollup/pluginutils': 4.2.1 261 | '@webcomponents/custom-elements': 1.5.1 262 | acorn-walk: 8.2.0 263 | cheerio: 1.0.0-rc.12 264 | connect-injector: 0.4.4 265 | debug: 4.3.4 266 | es-module-lexer: 0.10.5 267 | fast-glob: 3.2.12 268 | fs-extra: 10.1.0 269 | jsesc: 3.0.2 270 | magic-string: 0.26.7 271 | picocolors: 1.0.0 272 | react-refresh: 0.13.0 273 | rollup: 2.78.1 274 | rxjs: 7.5.7 275 | transitivePeerDependencies: 276 | - supports-color 277 | dev: true 278 | 279 | /@esbuild/android-arm/0.16.17: 280 | resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} 281 | engines: {node: '>=12'} 282 | cpu: [arm] 283 | os: [android] 284 | requiresBuild: true 285 | dev: true 286 | optional: true 287 | 288 | /@esbuild/android-arm64/0.16.17: 289 | resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} 290 | engines: {node: '>=12'} 291 | cpu: [arm64] 292 | os: [android] 293 | requiresBuild: true 294 | dev: true 295 | optional: true 296 | 297 | /@esbuild/android-x64/0.16.17: 298 | resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} 299 | engines: {node: '>=12'} 300 | cpu: [x64] 301 | os: [android] 302 | requiresBuild: true 303 | dev: true 304 | optional: true 305 | 306 | /@esbuild/darwin-arm64/0.16.17: 307 | resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} 308 | engines: {node: '>=12'} 309 | cpu: [arm64] 310 | os: [darwin] 311 | requiresBuild: true 312 | dev: true 313 | optional: true 314 | 315 | /@esbuild/darwin-x64/0.16.17: 316 | resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} 317 | engines: {node: '>=12'} 318 | cpu: [x64] 319 | os: [darwin] 320 | requiresBuild: true 321 | dev: true 322 | optional: true 323 | 324 | /@esbuild/freebsd-arm64/0.16.17: 325 | resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} 326 | engines: {node: '>=12'} 327 | cpu: [arm64] 328 | os: [freebsd] 329 | requiresBuild: true 330 | dev: true 331 | optional: true 332 | 333 | /@esbuild/freebsd-x64/0.16.17: 334 | resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} 335 | engines: {node: '>=12'} 336 | cpu: [x64] 337 | os: [freebsd] 338 | requiresBuild: true 339 | dev: true 340 | optional: true 341 | 342 | /@esbuild/linux-arm/0.16.17: 343 | resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} 344 | engines: {node: '>=12'} 345 | cpu: [arm] 346 | os: [linux] 347 | requiresBuild: true 348 | dev: true 349 | optional: true 350 | 351 | /@esbuild/linux-arm64/0.16.17: 352 | resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} 353 | engines: {node: '>=12'} 354 | cpu: [arm64] 355 | os: [linux] 356 | requiresBuild: true 357 | dev: true 358 | optional: true 359 | 360 | /@esbuild/linux-ia32/0.16.17: 361 | resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} 362 | engines: {node: '>=12'} 363 | cpu: [ia32] 364 | os: [linux] 365 | requiresBuild: true 366 | dev: true 367 | optional: true 368 | 369 | /@esbuild/linux-loong64/0.16.17: 370 | resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} 371 | engines: {node: '>=12'} 372 | cpu: [loong64] 373 | os: [linux] 374 | requiresBuild: true 375 | dev: true 376 | optional: true 377 | 378 | /@esbuild/linux-mips64el/0.16.17: 379 | resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} 380 | engines: {node: '>=12'} 381 | cpu: [mips64el] 382 | os: [linux] 383 | requiresBuild: true 384 | dev: true 385 | optional: true 386 | 387 | /@esbuild/linux-ppc64/0.16.17: 388 | resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} 389 | engines: {node: '>=12'} 390 | cpu: [ppc64] 391 | os: [linux] 392 | requiresBuild: true 393 | dev: true 394 | optional: true 395 | 396 | /@esbuild/linux-riscv64/0.16.17: 397 | resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} 398 | engines: {node: '>=12'} 399 | cpu: [riscv64] 400 | os: [linux] 401 | requiresBuild: true 402 | dev: true 403 | optional: true 404 | 405 | /@esbuild/linux-s390x/0.16.17: 406 | resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} 407 | engines: {node: '>=12'} 408 | cpu: [s390x] 409 | os: [linux] 410 | requiresBuild: true 411 | dev: true 412 | optional: true 413 | 414 | /@esbuild/linux-x64/0.16.17: 415 | resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} 416 | engines: {node: '>=12'} 417 | cpu: [x64] 418 | os: [linux] 419 | requiresBuild: true 420 | dev: true 421 | optional: true 422 | 423 | /@esbuild/netbsd-x64/0.16.17: 424 | resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} 425 | engines: {node: '>=12'} 426 | cpu: [x64] 427 | os: [netbsd] 428 | requiresBuild: true 429 | dev: true 430 | optional: true 431 | 432 | /@esbuild/openbsd-x64/0.16.17: 433 | resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} 434 | engines: {node: '>=12'} 435 | cpu: [x64] 436 | os: [openbsd] 437 | requiresBuild: true 438 | dev: true 439 | optional: true 440 | 441 | /@esbuild/sunos-x64/0.16.17: 442 | resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} 443 | engines: {node: '>=12'} 444 | cpu: [x64] 445 | os: [sunos] 446 | requiresBuild: true 447 | dev: true 448 | optional: true 449 | 450 | /@esbuild/win32-arm64/0.16.17: 451 | resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} 452 | engines: {node: '>=12'} 453 | cpu: [arm64] 454 | os: [win32] 455 | requiresBuild: true 456 | dev: true 457 | optional: true 458 | 459 | /@esbuild/win32-ia32/0.16.17: 460 | resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} 461 | engines: {node: '>=12'} 462 | cpu: [ia32] 463 | os: [win32] 464 | requiresBuild: true 465 | dev: true 466 | optional: true 467 | 468 | /@esbuild/win32-x64/0.16.17: 469 | resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} 470 | engines: {node: '>=12'} 471 | cpu: [x64] 472 | os: [win32] 473 | requiresBuild: true 474 | dev: true 475 | optional: true 476 | 477 | /@jridgewell/gen-mapping/0.1.1: 478 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} 479 | engines: {node: '>=6.0.0'} 480 | dependencies: 481 | '@jridgewell/set-array': 1.1.2 482 | '@jridgewell/sourcemap-codec': 1.4.14 483 | dev: true 484 | 485 | /@jridgewell/gen-mapping/0.3.2: 486 | resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} 487 | engines: {node: '>=6.0.0'} 488 | dependencies: 489 | '@jridgewell/set-array': 1.1.2 490 | '@jridgewell/sourcemap-codec': 1.4.14 491 | '@jridgewell/trace-mapping': 0.3.17 492 | dev: true 493 | 494 | /@jridgewell/resolve-uri/3.1.0: 495 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 496 | engines: {node: '>=6.0.0'} 497 | dev: true 498 | 499 | /@jridgewell/set-array/1.1.2: 500 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 501 | engines: {node: '>=6.0.0'} 502 | dev: true 503 | 504 | /@jridgewell/sourcemap-codec/1.4.14: 505 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 506 | dev: true 507 | 508 | /@jridgewell/trace-mapping/0.3.17: 509 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} 510 | dependencies: 511 | '@jridgewell/resolve-uri': 3.1.0 512 | '@jridgewell/sourcemap-codec': 1.4.14 513 | dev: true 514 | 515 | /@nodelib/fs.scandir/2.1.5: 516 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 517 | engines: {node: '>= 8'} 518 | dependencies: 519 | '@nodelib/fs.stat': 2.0.5 520 | run-parallel: 1.2.0 521 | dev: true 522 | 523 | /@nodelib/fs.stat/2.0.5: 524 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 525 | engines: {node: '>= 8'} 526 | dev: true 527 | 528 | /@nodelib/fs.walk/1.2.8: 529 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 530 | engines: {node: '>= 8'} 531 | dependencies: 532 | '@nodelib/fs.scandir': 2.1.5 533 | fastq: 1.15.0 534 | dev: true 535 | 536 | /@rollup/pluginutils/4.2.1: 537 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 538 | engines: {node: '>= 8.0.0'} 539 | dependencies: 540 | estree-walker: 2.0.2 541 | picomatch: 2.3.1 542 | dev: true 543 | 544 | /@types/chrome/0.0.222: 545 | resolution: {integrity: sha512-7XQnS85od1P0aBz0nrl5L7B+p4mKG/g4ya8nrJOJFVFRfVfqZTnp1B8c9JP6gAbHv7LRAeu9/BTPzMLLjHLiZQ==} 546 | dependencies: 547 | '@types/filesystem': 0.0.32 548 | '@types/har-format': 1.2.10 549 | dev: true 550 | 551 | /@types/filesystem/0.0.32: 552 | resolution: {integrity: sha512-Yuf4jR5YYMR2DVgwuCiP11s0xuVRyPKmz8vo6HBY3CGdeMj8af93CFZX+T82+VD1+UqHOxTq31lO7MI7lepBtQ==} 553 | dependencies: 554 | '@types/filewriter': 0.0.29 555 | dev: true 556 | 557 | /@types/filewriter/0.0.29: 558 | resolution: {integrity: sha512-BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ==} 559 | dev: true 560 | 561 | /@types/har-format/1.2.10: 562 | resolution: {integrity: sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==} 563 | dev: true 564 | 565 | /@types/prop-types/15.7.5: 566 | resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} 567 | dev: true 568 | 569 | /@types/react-dom/18.0.11: 570 | resolution: {integrity: sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==} 571 | dependencies: 572 | '@types/react': 18.0.28 573 | dev: true 574 | 575 | /@types/react/18.0.28: 576 | resolution: {integrity: sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==} 577 | dependencies: 578 | '@types/prop-types': 15.7.5 579 | '@types/scheduler': 0.16.2 580 | csstype: 3.1.1 581 | dev: true 582 | 583 | /@types/scheduler/0.16.2: 584 | resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} 585 | dev: true 586 | 587 | /@vitejs/plugin-react/3.1.0_vite@4.1.4: 588 | resolution: {integrity: sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==} 589 | engines: {node: ^14.18.0 || >=16.0.0} 590 | peerDependencies: 591 | vite: ^4.1.0-beta.0 592 | dependencies: 593 | '@babel/core': 7.21.0 594 | '@babel/plugin-transform-react-jsx-self': 7.21.0_@babel+core@7.21.0 595 | '@babel/plugin-transform-react-jsx-source': 7.19.6_@babel+core@7.21.0 596 | magic-string: 0.27.0 597 | react-refresh: 0.14.0 598 | vite: 4.1.4 599 | transitivePeerDependencies: 600 | - supports-color 601 | dev: true 602 | 603 | /@webcomponents/custom-elements/1.5.1: 604 | resolution: {integrity: sha512-6T/XT3S1UHDlRWFSxRXdeSoYWczEl78sygNPS7jDyHVrfZcF/pUtWGYgxF4uviH59iPVw1eOWbhubm8CqO0MpA==} 605 | dev: true 606 | 607 | /acorn-walk/8.2.0: 608 | resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} 609 | engines: {node: '>=0.4.0'} 610 | dev: true 611 | 612 | /ansi-styles/3.2.1: 613 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 614 | engines: {node: '>=4'} 615 | dependencies: 616 | color-convert: 1.9.3 617 | dev: true 618 | 619 | /boolbase/1.0.0: 620 | resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} 621 | dev: true 622 | 623 | /braces/3.0.2: 624 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 625 | engines: {node: '>=8'} 626 | dependencies: 627 | fill-range: 7.0.1 628 | dev: true 629 | 630 | /browserslist/4.21.5: 631 | resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} 632 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 633 | hasBin: true 634 | dependencies: 635 | caniuse-lite: 1.0.30001464 636 | electron-to-chromium: 1.4.328 637 | node-releases: 2.0.10 638 | update-browserslist-db: 1.0.10_browserslist@4.21.5 639 | dev: true 640 | 641 | /caniuse-lite/1.0.30001464: 642 | resolution: {integrity: sha512-oww27MtUmusatpRpCGSOneQk2/l5czXANDSFvsc7VuOQ86s3ANhZetpwXNf1zY/zdfP63Xvjz325DAdAoES13g==} 643 | dev: true 644 | 645 | /chalk/2.4.2: 646 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 647 | engines: {node: '>=4'} 648 | dependencies: 649 | ansi-styles: 3.2.1 650 | escape-string-regexp: 1.0.5 651 | supports-color: 5.5.0 652 | dev: true 653 | 654 | /cheerio-select/2.1.0: 655 | resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} 656 | dependencies: 657 | boolbase: 1.0.0 658 | css-select: 5.1.0 659 | css-what: 6.1.0 660 | domelementtype: 2.3.0 661 | domhandler: 5.0.3 662 | domutils: 3.0.1 663 | dev: true 664 | 665 | /cheerio/1.0.0-rc.12: 666 | resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} 667 | engines: {node: '>= 6'} 668 | dependencies: 669 | cheerio-select: 2.1.0 670 | dom-serializer: 2.0.0 671 | domhandler: 5.0.3 672 | domutils: 3.0.1 673 | htmlparser2: 8.0.1 674 | parse5: 7.1.2 675 | parse5-htmlparser2-tree-adapter: 7.0.0 676 | dev: true 677 | 678 | /color-convert/1.9.3: 679 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 680 | dependencies: 681 | color-name: 1.1.3 682 | dev: true 683 | 684 | /color-name/1.1.3: 685 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 686 | dev: true 687 | 688 | /connect-injector/0.4.4: 689 | resolution: {integrity: sha512-hdBG8nXop42y2gWCqOV8y1O3uVk4cIU+SoxLCPyCUKRImyPiScoNiSulpHjoktRU1BdI0UzoUdxUa87thrcmHw==} 690 | engines: {node: '>= 0.8.0'} 691 | dependencies: 692 | debug: 2.6.9 693 | q: 1.5.1 694 | stream-buffers: 0.2.6 695 | uberproto: 1.2.0 696 | transitivePeerDependencies: 697 | - supports-color 698 | dev: true 699 | 700 | /convert-source-map/1.9.0: 701 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} 702 | dev: true 703 | 704 | /css-select/5.1.0: 705 | resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} 706 | dependencies: 707 | boolbase: 1.0.0 708 | css-what: 6.1.0 709 | domhandler: 5.0.3 710 | domutils: 3.0.1 711 | nth-check: 2.1.1 712 | dev: true 713 | 714 | /css-what/6.1.0: 715 | resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} 716 | engines: {node: '>= 6'} 717 | dev: true 718 | 719 | /csstype/3.1.1: 720 | resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} 721 | dev: true 722 | 723 | /debug/2.6.9: 724 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} 725 | peerDependencies: 726 | supports-color: '*' 727 | peerDependenciesMeta: 728 | supports-color: 729 | optional: true 730 | dependencies: 731 | ms: 2.0.0 732 | dev: true 733 | 734 | /debug/4.3.4: 735 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 736 | engines: {node: '>=6.0'} 737 | peerDependencies: 738 | supports-color: '*' 739 | peerDependenciesMeta: 740 | supports-color: 741 | optional: true 742 | dependencies: 743 | ms: 2.1.2 744 | dev: true 745 | 746 | /dom-serializer/2.0.0: 747 | resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} 748 | dependencies: 749 | domelementtype: 2.3.0 750 | domhandler: 5.0.3 751 | entities: 4.4.0 752 | dev: true 753 | 754 | /domelementtype/2.3.0: 755 | resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} 756 | dev: true 757 | 758 | /domhandler/5.0.3: 759 | resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} 760 | engines: {node: '>= 4'} 761 | dependencies: 762 | domelementtype: 2.3.0 763 | dev: true 764 | 765 | /domutils/3.0.1: 766 | resolution: {integrity: sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==} 767 | dependencies: 768 | dom-serializer: 2.0.0 769 | domelementtype: 2.3.0 770 | domhandler: 5.0.3 771 | dev: true 772 | 773 | /electron-to-chromium/1.4.328: 774 | resolution: {integrity: sha512-DE9tTy2PNmy1v55AZAO542ui+MLC2cvINMK4P2LXGsJdput/ThVG9t+QGecPuAZZSgC8XoI+Jh9M1OG9IoNSCw==} 775 | dev: true 776 | 777 | /entities/4.4.0: 778 | resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} 779 | engines: {node: '>=0.12'} 780 | dev: true 781 | 782 | /es-module-lexer/0.10.5: 783 | resolution: {integrity: sha512-+7IwY/kiGAacQfY+YBhKMvEmyAJnw5grTUgjG85Pe7vcUI/6b7pZjZG8nQ7+48YhzEAEqrEgD2dCz/JIK+AYvw==} 784 | dev: true 785 | 786 | /esbuild/0.16.17: 787 | resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} 788 | engines: {node: '>=12'} 789 | hasBin: true 790 | requiresBuild: true 791 | optionalDependencies: 792 | '@esbuild/android-arm': 0.16.17 793 | '@esbuild/android-arm64': 0.16.17 794 | '@esbuild/android-x64': 0.16.17 795 | '@esbuild/darwin-arm64': 0.16.17 796 | '@esbuild/darwin-x64': 0.16.17 797 | '@esbuild/freebsd-arm64': 0.16.17 798 | '@esbuild/freebsd-x64': 0.16.17 799 | '@esbuild/linux-arm': 0.16.17 800 | '@esbuild/linux-arm64': 0.16.17 801 | '@esbuild/linux-ia32': 0.16.17 802 | '@esbuild/linux-loong64': 0.16.17 803 | '@esbuild/linux-mips64el': 0.16.17 804 | '@esbuild/linux-ppc64': 0.16.17 805 | '@esbuild/linux-riscv64': 0.16.17 806 | '@esbuild/linux-s390x': 0.16.17 807 | '@esbuild/linux-x64': 0.16.17 808 | '@esbuild/netbsd-x64': 0.16.17 809 | '@esbuild/openbsd-x64': 0.16.17 810 | '@esbuild/sunos-x64': 0.16.17 811 | '@esbuild/win32-arm64': 0.16.17 812 | '@esbuild/win32-ia32': 0.16.17 813 | '@esbuild/win32-x64': 0.16.17 814 | dev: true 815 | 816 | /escalade/3.1.1: 817 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 818 | engines: {node: '>=6'} 819 | dev: true 820 | 821 | /escape-string-regexp/1.0.5: 822 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 823 | engines: {node: '>=0.8.0'} 824 | dev: true 825 | 826 | /estree-walker/2.0.2: 827 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 828 | dev: true 829 | 830 | /fast-glob/3.2.12: 831 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 832 | engines: {node: '>=8.6.0'} 833 | dependencies: 834 | '@nodelib/fs.stat': 2.0.5 835 | '@nodelib/fs.walk': 1.2.8 836 | glob-parent: 5.1.2 837 | merge2: 1.4.1 838 | micromatch: 4.0.5 839 | dev: true 840 | 841 | /fastq/1.15.0: 842 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 843 | dependencies: 844 | reusify: 1.0.4 845 | dev: true 846 | 847 | /fill-range/7.0.1: 848 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 849 | engines: {node: '>=8'} 850 | dependencies: 851 | to-regex-range: 5.0.1 852 | dev: true 853 | 854 | /fs-extra/10.1.0: 855 | resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} 856 | engines: {node: '>=12'} 857 | dependencies: 858 | graceful-fs: 4.2.10 859 | jsonfile: 6.1.0 860 | universalify: 2.0.0 861 | dev: true 862 | 863 | /fsevents/2.3.2: 864 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 865 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 866 | os: [darwin] 867 | requiresBuild: true 868 | dev: true 869 | optional: true 870 | 871 | /function-bind/1.1.1: 872 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 873 | dev: true 874 | 875 | /gensync/1.0.0-beta.2: 876 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 877 | engines: {node: '>=6.9.0'} 878 | dev: true 879 | 880 | /glob-parent/5.1.2: 881 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 882 | engines: {node: '>= 6'} 883 | dependencies: 884 | is-glob: 4.0.3 885 | dev: true 886 | 887 | /globals/11.12.0: 888 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 889 | engines: {node: '>=4'} 890 | dev: true 891 | 892 | /graceful-fs/4.2.10: 893 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 894 | dev: true 895 | 896 | /has-flag/3.0.0: 897 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 898 | engines: {node: '>=4'} 899 | dev: true 900 | 901 | /has/1.0.3: 902 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 903 | engines: {node: '>= 0.4.0'} 904 | dependencies: 905 | function-bind: 1.1.1 906 | dev: true 907 | 908 | /htmlparser2/8.0.1: 909 | resolution: {integrity: sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==} 910 | dependencies: 911 | domelementtype: 2.3.0 912 | domhandler: 5.0.3 913 | domutils: 3.0.1 914 | entities: 4.4.0 915 | dev: true 916 | 917 | /is-core-module/2.11.0: 918 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 919 | dependencies: 920 | has: 1.0.3 921 | dev: true 922 | 923 | /is-extglob/2.1.1: 924 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 925 | engines: {node: '>=0.10.0'} 926 | dev: true 927 | 928 | /is-glob/4.0.3: 929 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 930 | engines: {node: '>=0.10.0'} 931 | dependencies: 932 | is-extglob: 2.1.1 933 | dev: true 934 | 935 | /is-number/7.0.0: 936 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 937 | engines: {node: '>=0.12.0'} 938 | dev: true 939 | 940 | /js-tokens/4.0.0: 941 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 942 | 943 | /jsesc/2.5.2: 944 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 945 | engines: {node: '>=4'} 946 | hasBin: true 947 | dev: true 948 | 949 | /jsesc/3.0.2: 950 | resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} 951 | engines: {node: '>=6'} 952 | hasBin: true 953 | dev: true 954 | 955 | /json5/2.2.3: 956 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} 957 | engines: {node: '>=6'} 958 | hasBin: true 959 | dev: true 960 | 961 | /jsonfile/6.1.0: 962 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 963 | dependencies: 964 | universalify: 2.0.0 965 | optionalDependencies: 966 | graceful-fs: 4.2.10 967 | dev: true 968 | 969 | /loose-envify/1.4.0: 970 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 971 | hasBin: true 972 | dependencies: 973 | js-tokens: 4.0.0 974 | dev: false 975 | 976 | /lru-cache/5.1.1: 977 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} 978 | dependencies: 979 | yallist: 3.1.1 980 | dev: true 981 | 982 | /magic-string/0.26.7: 983 | resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} 984 | engines: {node: '>=12'} 985 | dependencies: 986 | sourcemap-codec: 1.4.8 987 | dev: true 988 | 989 | /magic-string/0.27.0: 990 | resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} 991 | engines: {node: '>=12'} 992 | dependencies: 993 | '@jridgewell/sourcemap-codec': 1.4.14 994 | dev: true 995 | 996 | /merge2/1.4.1: 997 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 998 | engines: {node: '>= 8'} 999 | dev: true 1000 | 1001 | /micromatch/4.0.5: 1002 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1003 | engines: {node: '>=8.6'} 1004 | dependencies: 1005 | braces: 3.0.2 1006 | picomatch: 2.3.1 1007 | dev: true 1008 | 1009 | /ms/2.0.0: 1010 | resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} 1011 | dev: true 1012 | 1013 | /ms/2.1.2: 1014 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1015 | dev: true 1016 | 1017 | /nanoid/3.3.4: 1018 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 1019 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1020 | hasBin: true 1021 | dev: true 1022 | 1023 | /node-releases/2.0.10: 1024 | resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} 1025 | dev: true 1026 | 1027 | /nth-check/2.1.1: 1028 | resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} 1029 | dependencies: 1030 | boolbase: 1.0.0 1031 | dev: true 1032 | 1033 | /parse5-htmlparser2-tree-adapter/7.0.0: 1034 | resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} 1035 | dependencies: 1036 | domhandler: 5.0.3 1037 | parse5: 7.1.2 1038 | dev: true 1039 | 1040 | /parse5/7.1.2: 1041 | resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} 1042 | dependencies: 1043 | entities: 4.4.0 1044 | dev: true 1045 | 1046 | /path-parse/1.0.7: 1047 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1048 | dev: true 1049 | 1050 | /picocolors/1.0.0: 1051 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 1052 | dev: true 1053 | 1054 | /picomatch/2.3.1: 1055 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1056 | engines: {node: '>=8.6'} 1057 | dev: true 1058 | 1059 | /postcss/8.4.21: 1060 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} 1061 | engines: {node: ^10 || ^12 || >=14} 1062 | dependencies: 1063 | nanoid: 3.3.4 1064 | picocolors: 1.0.0 1065 | source-map-js: 1.0.2 1066 | dev: true 1067 | 1068 | /q/1.5.1: 1069 | resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} 1070 | engines: {node: '>=0.6.0', teleport: '>=0.2.0'} 1071 | dev: true 1072 | 1073 | /queue-microtask/1.2.3: 1074 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1075 | dev: true 1076 | 1077 | /react-dom/18.2.0_react@18.2.0: 1078 | resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} 1079 | peerDependencies: 1080 | react: ^18.2.0 1081 | dependencies: 1082 | loose-envify: 1.4.0 1083 | react: 18.2.0 1084 | scheduler: 0.23.0 1085 | dev: false 1086 | 1087 | /react-refresh/0.13.0: 1088 | resolution: {integrity: sha512-XP8A9BT0CpRBD+NYLLeIhld/RqG9+gktUjW1FkE+Vm7OCinbG1SshcK5tb9ls4kzvjZr9mOQc7HYgBngEyPAXg==} 1089 | engines: {node: '>=0.10.0'} 1090 | dev: true 1091 | 1092 | /react-refresh/0.14.0: 1093 | resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} 1094 | engines: {node: '>=0.10.0'} 1095 | dev: true 1096 | 1097 | /react/18.2.0: 1098 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} 1099 | engines: {node: '>=0.10.0'} 1100 | dependencies: 1101 | loose-envify: 1.4.0 1102 | dev: false 1103 | 1104 | /resolve/1.22.1: 1105 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1106 | hasBin: true 1107 | dependencies: 1108 | is-core-module: 2.11.0 1109 | path-parse: 1.0.7 1110 | supports-preserve-symlinks-flag: 1.0.0 1111 | dev: true 1112 | 1113 | /reusify/1.0.4: 1114 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1115 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1116 | dev: true 1117 | 1118 | /rollup/2.78.1: 1119 | resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==} 1120 | engines: {node: '>=10.0.0'} 1121 | hasBin: true 1122 | optionalDependencies: 1123 | fsevents: 2.3.2 1124 | dev: true 1125 | 1126 | /rollup/3.19.1: 1127 | resolution: {integrity: sha512-lAbrdN7neYCg/8WaoWn/ckzCtz+jr70GFfYdlf50OF7387HTg+wiuiqJRFYawwSPpqfqDNYqK7smY/ks2iAudg==} 1128 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 1129 | hasBin: true 1130 | optionalDependencies: 1131 | fsevents: 2.3.2 1132 | dev: true 1133 | 1134 | /run-parallel/1.2.0: 1135 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1136 | dependencies: 1137 | queue-microtask: 1.2.3 1138 | dev: true 1139 | 1140 | /rxjs/7.5.7: 1141 | resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} 1142 | dependencies: 1143 | tslib: 2.5.0 1144 | dev: true 1145 | 1146 | /scheduler/0.23.0: 1147 | resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} 1148 | dependencies: 1149 | loose-envify: 1.4.0 1150 | dev: false 1151 | 1152 | /semver/6.3.0: 1153 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 1154 | hasBin: true 1155 | dev: true 1156 | 1157 | /source-map-js/1.0.2: 1158 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1159 | engines: {node: '>=0.10.0'} 1160 | dev: true 1161 | 1162 | /sourcemap-codec/1.4.8: 1163 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} 1164 | deprecated: Please use @jridgewell/sourcemap-codec instead 1165 | dev: true 1166 | 1167 | /stream-buffers/0.2.6: 1168 | resolution: {integrity: sha512-ZRpmWyuCdg0TtNKk8bEqvm13oQvXMmzXDsfD4cBgcx5LouborvU5pm3JMkdTP3HcszyUI08AM1dHMXA5r2g6Sg==} 1169 | engines: {node: '>= 0.3.0'} 1170 | dev: true 1171 | 1172 | /supports-color/5.5.0: 1173 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 1174 | engines: {node: '>=4'} 1175 | dependencies: 1176 | has-flag: 3.0.0 1177 | dev: true 1178 | 1179 | /supports-preserve-symlinks-flag/1.0.0: 1180 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1181 | engines: {node: '>= 0.4'} 1182 | dev: true 1183 | 1184 | /to-fast-properties/2.0.0: 1185 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 1186 | engines: {node: '>=4'} 1187 | dev: true 1188 | 1189 | /to-regex-range/5.0.1: 1190 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1191 | engines: {node: '>=8.0'} 1192 | dependencies: 1193 | is-number: 7.0.0 1194 | dev: true 1195 | 1196 | /tslib/2.5.0: 1197 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} 1198 | dev: true 1199 | 1200 | /typescript/4.9.5: 1201 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 1202 | engines: {node: '>=4.2.0'} 1203 | hasBin: true 1204 | dev: true 1205 | 1206 | /uberproto/1.2.0: 1207 | resolution: {integrity: sha512-pGtPAQmLwh+R9w81WVHzui1FfedpQWQpiaIIfPCwhtsBez4q6DYbJFfyXPVHPUTNFnedAvNEnkoFiLuhXIR94w==} 1208 | dev: true 1209 | 1210 | /universalify/2.0.0: 1211 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} 1212 | engines: {node: '>= 10.0.0'} 1213 | dev: true 1214 | 1215 | /update-browserslist-db/1.0.10_browserslist@4.21.5: 1216 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} 1217 | hasBin: true 1218 | peerDependencies: 1219 | browserslist: '>= 4.21.0' 1220 | dependencies: 1221 | browserslist: 4.21.5 1222 | escalade: 3.1.1 1223 | picocolors: 1.0.0 1224 | dev: true 1225 | 1226 | /vite/4.1.4: 1227 | resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==} 1228 | engines: {node: ^14.18.0 || >=16.0.0} 1229 | hasBin: true 1230 | peerDependencies: 1231 | '@types/node': '>= 14' 1232 | less: '*' 1233 | sass: '*' 1234 | stylus: '*' 1235 | sugarss: '*' 1236 | terser: ^5.4.0 1237 | peerDependenciesMeta: 1238 | '@types/node': 1239 | optional: true 1240 | less: 1241 | optional: true 1242 | sass: 1243 | optional: true 1244 | stylus: 1245 | optional: true 1246 | sugarss: 1247 | optional: true 1248 | terser: 1249 | optional: true 1250 | dependencies: 1251 | esbuild: 0.16.17 1252 | postcss: 8.4.21 1253 | resolve: 1.22.1 1254 | rollup: 3.19.1 1255 | optionalDependencies: 1256 | fsevents: 2.3.2 1257 | dev: true 1258 | 1259 | /yallist/3.1.1: 1260 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 1261 | dev: true 1262 | -------------------------------------------------------------------------------- /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 | transition: filter 300ms; 13 | } 14 | .logo:hover { 15 | filter: drop-shadow(0 0 2em #646cffaa); 16 | } 17 | .logo.react:hover { 18 | filter: drop-shadow(0 0 2em #61dafbaa); 19 | } 20 | 21 | @keyframes logo-spin { 22 | from { 23 | transform: rotate(0deg); 24 | } 25 | to { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | 30 | @media (prefers-reduced-motion: no-preference) { 31 | a:nth-of-type(2) .logo { 32 | animation: logo-spin infinite 20s linear; 33 | } 34 | } 35 | 36 | .card { 37 | padding: 2em; 38 | } 39 | 40 | .read-the-docs { 41 | color: #888; 42 | } 43 | -------------------------------------------------------------------------------- /src/App.tsx: -------------------------------------------------------------------------------- 1 | import { useState } from 'react' 2 | import reactLogo from './assets/react.svg' 3 | import './App.css' 4 | 5 | const getURL = chrome.runtime.getURL ?? ((path: string) => path) 6 | 7 | const reactLogoUrl = getURL(reactLogo); 8 | const viteLogoUrl = getURL("/vite.svg") 9 | 10 | function App() { 11 | const [count, setCount] = useState(0) 12 | 13 | return ( 14 |
15 |
16 | 17 | Vite logo 18 | 19 | 20 | React logo 21 | 22 |
23 |

Vite + React + CRXJS

24 |
25 | 28 |

29 | Edit src/App.tsx and save to test HMR 30 |

31 |
32 |

33 | Click on the Vite and React logos to learn more 34 |

35 |
36 | ) 37 | } 38 | 39 | export default App 40 | -------------------------------------------------------------------------------- /src/assets/react.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/createElement.ts: -------------------------------------------------------------------------------- 1 | const parser = new DOMParser(); 2 | 3 | export function createDomElement( 4 | html: string 5 | ): TElement { 6 | const element = parser.parseFromString(html, "text/html").body 7 | .firstElementChild as TElement | null; 8 | if (!element) 9 | throw new Error("HTML input string does not contain an element"); 10 | return element; 11 | } 12 | -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | :root { 2 | font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; 3 | line-height: 1.5; 4 | font-weight: 400; 5 | 6 | color-scheme: light dark; 7 | color: rgba(255, 255, 255, 0.87); 8 | background-color: #242424; 9 | 10 | font-synthesis: none; 11 | text-rendering: optimizeLegibility; 12 | -webkit-font-smoothing: antialiased; 13 | -moz-osx-font-smoothing: grayscale; 14 | -webkit-text-size-adjust: 100%; 15 | } 16 | 17 | a { 18 | font-weight: 500; 19 | color: #646cff; 20 | text-decoration: inherit; 21 | } 22 | a:hover { 23 | color: #535bf2; 24 | } 25 | 26 | body { 27 | margin: 0; 28 | display: flex; 29 | place-items: center; 30 | min-width: 320px; 31 | min-height: 100vh; 32 | } 33 | 34 | h1 { 35 | font-size: 3.2em; 36 | line-height: 1.1; 37 | } 38 | 39 | button { 40 | border-radius: 8px; 41 | border: 1px solid transparent; 42 | padding: 0.6em 1.2em; 43 | font-size: 1em; 44 | font-weight: 500; 45 | font-family: inherit; 46 | background-color: #1a1a1a; 47 | cursor: pointer; 48 | transition: border-color 0.25s; 49 | } 50 | button:hover { 51 | border-color: #646cff; 52 | } 53 | button:focus, 54 | button:focus-visible { 55 | outline: 4px auto -webkit-focus-ring-color; 56 | } 57 | 58 | @media (prefers-color-scheme: light) { 59 | :root { 60 | color: #213547; 61 | background-color: #ffffff; 62 | } 63 | a:hover { 64 | color: #747bff; 65 | } 66 | button { 67 | background-color: #f9f9f9; 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /src/main.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import App from "./App"; 4 | import { createDomElement } from "./createElement"; 5 | import "./index.css"; 6 | 7 | let root = document.getElementById("root") as HTMLElement; 8 | if (!root) { 9 | root = createDomElement(`
`); 10 | document.body.append(root); 11 | } 12 | 13 | ReactDOM.createRoot(root).render( 14 | 15 | 16 | 17 | ); 18 | -------------------------------------------------------------------------------- /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 | import { crx, defineManifest } from "@crxjs/vite-plugin"; 4 | 5 | const manifest = defineManifest({ 6 | manifest_version: 3, 7 | name: "test-react-vite-4", 8 | version: "1.0.0", 9 | action: { default_popup: "index.html" }, 10 | content_scripts: [{ js: ["src/main.tsx"], matches: ["https://*/*"] }], 11 | }); 12 | 13 | // https://vitejs.dev/config/ 14 | export default defineConfig({ 15 | plugins: [ 16 | react(), 17 | crx({ 18 | manifest, 19 | }), 20 | ], 21 | }); 22 | --------------------------------------------------------------------------------