From 05f8ef93fc5154496cdceeb9de51770fd10abd31 Mon Sep 17 00:00:00 2001 From: Poorna Chandra2000 Date: Tue, 15 Oct 2024 01:28:51 +0530 Subject: [PATCH 1/3] Fullstack Drinks Internship done --- package-lock.json | 2581 ++++++++++++++++- package.json | 3 + src/App.css | 129 +- src/App.js | 37 +- src/assets/bar-close-up-beer-52251475.webp | Bin 0 -> 23252 bytes ...ablishment-generative-ai_188544-12375.avif | Bin 0 -> 23563 bytes src/beerDetails.js | 33 + src/components/BeerDetail.css | 36 + src/components/BeerDetail.js | 40 + src/components/BeerList.css | 59 + src/components/BeerList.js | 49 + src/components/Header.js | 14 + src/components/HomePage.css | 58 + src/components/HomePage.js | 37 + src/components/NewBeerForm.css | 43 + src/components/NewBeerForm.js | 68 + src/components/RandomBeer.css | 32 + src/components/RandomBeer.js | 38 + src/newBeerForm.js | 78 + src/randomBeer.js | 30 + 20 files changed, 3285 insertions(+), 80 deletions(-) create mode 100644 src/assets/bar-close-up-beer-52251475.webp create mode 100644 src/assets/nightlife-celebration-multi-colored-bar-establishment-generative-ai_188544-12375.avif create mode 100644 src/beerDetails.js create mode 100644 src/components/BeerDetail.css create mode 100644 src/components/BeerDetail.js create mode 100644 src/components/BeerList.css create mode 100644 src/components/BeerList.js create mode 100644 src/components/Header.js create mode 100644 src/components/HomePage.css create mode 100644 src/components/HomePage.js create mode 100644 src/components/NewBeerForm.css create mode 100644 src/components/NewBeerForm.js create mode 100644 src/components/RandomBeer.css create mode 100644 src/components/RandomBeer.js create mode 100644 src/newBeerForm.js create mode 100644 src/randomBeer.js diff --git a/package-lock.json b/package-lock.json index 3c65e57..c2efcef 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,8 +11,11 @@ "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", + "axios": "^1.7.7", "react": "^18.2.0", + "react-devtools": "^5.0.0", "react-dom": "^18.2.0", + "react-router-dom": "^6.22.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" } @@ -2132,6 +2135,63 @@ "postcss-selector-parser": "^6.0.10" } }, + "node_modules/@electron/get": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", + "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/get/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@electron/get/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/get/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@electron/get/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/@eslint/eslintrc": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", @@ -3085,6 +3145,14 @@ } } }, + "node_modules/@remix-run/router": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.15.0.tgz", + "integrity": "sha512-HOil5aFtme37dVQTB6M34G95kPM3MMuqSmIRVCC52eKV+Y/tGSqw9P3rWhlAx6A+mz+MoX+XxsGsNJbaI5qCgQ==", + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -3169,6 +3237,17 @@ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.47.tgz", "integrity": "sha512-J4Xw0xYK4h7eC34MNOPQi6IkNxGRck6n4VJpWDzXIFVTW8I/D43Gf+NfWz/v/7NHlzWOPd3+T4PJ4OqklQ2u7A==" }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -3403,6 +3482,17 @@ "url": "https://github.com/sponsors/gregberge" } }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@testing-library/dom": { "version": "8.19.0", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.19.0.tgz", @@ -3690,6 +3780,17 @@ "@types/node": "*" } }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, "node_modules/@types/connect": { "version": "3.4.35", "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", @@ -3764,6 +3865,11 @@ "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==" + }, "node_modules/@types/http-proxy": { "version": "1.17.9", "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", @@ -4034,6 +4140,14 @@ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/mime": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", @@ -4100,6 +4214,14 @@ "@types/node": "*" } }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", @@ -4179,6 +4301,15 @@ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.40.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.1.tgz", @@ -4719,6 +4850,53 @@ "ajv": "^6.9.1" } }, + "node_modules/ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha512-TdlOggdA/zURfMYa7ABC66j+oqfMew58KpJMbUlH3bcZP1b+cBHIHDDn5uH9INsxrHBPjsqM0tDB4jPTF/vgJA==", + "dependencies": { + "string-width": "^2.0.0" + } + }, + "node_modules/ansi-align/node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-align/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-align/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -4951,6 +5129,30 @@ "node": ">=4" } }, + "node_modules/axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axios/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", @@ -5352,6 +5554,76 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "optional": true + }, + "node_modules/boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dependencies": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/boxen/node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/boxen/node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/boxen/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/boxen/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/boxen/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -5412,6 +5684,14 @@ "node-int64": "^0.4.0" } }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "engines": { + "node": "*" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -5436,6 +5716,45 @@ "node": ">= 0.8" } }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -5510,6 +5829,17 @@ } ] }, + "node_modules/capture-stack-trace": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.2.tgz", + "integrity": "sha512-X/WM2UQs6VMHUtjUDnZTRI+i1crWteJySFzr9UpGoQa4WQffXVTTXuekjl7TjZRlcF2XfjgITT0HxZ9RnxeT0w==", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/case-sensitive-paths-webpack-plugin": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", @@ -5618,6 +5948,14 @@ "node": ">=0.10.0" } }, + "node_modules/cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -5628,6 +5966,17 @@ "wrap-ansi": "^7.0.0" } }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -5766,6 +6115,70 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, + "node_modules/configstore": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.5.tgz", + "integrity": "sha512-nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA==", + "dependencies": { + "dot-prop": "^4.2.1", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/configstore/node_modules/crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/configstore/node_modules/make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/configstore/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/configstore/node_modules/unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", + "dependencies": { + "crypto-random-string": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/configstore/node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, "node_modules/confusing-browser-globals": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", @@ -5868,6 +6281,17 @@ "node": ">=10" } }, + "node_modules/create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha512-gYTKKexFO3kh200H1Nit76sRwRtOY32vQd3jpAQKpLtZqyNsSQNfI4N7o3eP2wUjV35pTWKRYqFUDBvUha/Pkw==", + "dependencies": { + "capture-stack-trace": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -6317,20 +6741,53 @@ "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.2.tgz", "integrity": "sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==" }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" - }, - "node_modules/deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "engines": { "node": ">=0.10.0" } @@ -6346,6 +6803,14 @@ "node": ">= 10" } }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "engines": { + "node": ">=10" + } + }, "node_modules/define-lazy-prop": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", @@ -6608,6 +7073,17 @@ "tslib": "^2.0.3" } }, + "node_modules/dot-prop": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", + "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", + "dependencies": { + "is-obj": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/dotenv": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", @@ -6626,6 +7102,11 @@ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -6645,11 +7126,33 @@ "node": ">=0.10.0" } }, + "node_modules/electron": { + "version": "23.3.13", + "resolved": "https://registry.npmjs.org/electron/-/electron-23.3.13.tgz", + "integrity": "sha512-BaXtHEb+KYKLouUXlUVDa/lj9pj4F5kiE0kwFdJV84Y2EU7euIDgPthfKtchhr5MVHmjtavRMIV/zAwEiSQ9rQ==", + "hasInstallScript": true, + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^16.11.26", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, "node_modules/electron-to-chromium": { "version": "1.4.284", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==" }, + "node_modules/electron/node_modules/@types/node": { + "version": "16.18.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.80.tgz", + "integrity": "sha512-vFxJ1Iyl7A0+xB0uW1r1v504yItKZLdqg/VZELUZ4H02U0bXAgBisSQ8Erf0DMruNFz9ggoiEv6T8Ll9bTg8Jw==" + }, "node_modules/emittery": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", @@ -6682,6 +7185,14 @@ "node": ">= 0.8" } }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, "node_modules/enhanced-resolve": { "version": "5.10.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", @@ -6702,6 +7213,14 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -6789,6 +7308,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "optional": true + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -7684,6 +8209,39 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extract-zip/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -7752,6 +8310,14 @@ "bser": "2.1.1" } }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "dependencies": { + "pend": "~1.2.0" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -7907,15 +8473,16 @@ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", "funding": [ { "type": "individual", "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -8291,6 +8858,34 @@ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", + "dependencies": { + "ini": "^1.3.4" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", @@ -8334,6 +8929,21 @@ "node": ">=4" } }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "optional": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/globby": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", @@ -8353,6 +8963,30 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -8585,6 +9219,11 @@ "entities": "^2.0.0" } }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, "node_modules/http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", @@ -8659,6 +9298,18 @@ } } }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, "node_modules/https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -8757,6 +9408,14 @@ "node": ">=4" } }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "engines": { + "node": ">=4" + } + }, "node_modules/import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -8823,6 +9482,11 @@ "node": ">= 0.4" } }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, "node_modules/ipaddr.js": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", @@ -8884,6 +9548,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-ci": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "dependencies": { + "ci-info": "^1.5.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-ci/node_modules/ci-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==" + }, "node_modules/is-core-module": { "version": "2.11.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", @@ -8958,6 +9638,18 @@ "node": ">=0.10.0" } }, + "node_modules/is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha512-ERNhMg+i/XgDwPIPF3u24qpajVreaiSuvpb1Uu0jugw7KKcxGyCX8cgp8P5fwTmAuXku6beDHHECdKArjlg7tw==", + "dependencies": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -8974,6 +9666,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha512-9r39FIr3d+KD9SbX0sfMsHzb5PP3uimOiwr3YupUaUFG4W0l1U57Rx3utpttV7qz5U3jmrO5auUa04LU9pyHsg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -9004,6 +9704,17 @@ "node": ">=0.10.0" } }, + "node_modules/is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", + "dependencies": { + "path-is-inside": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-plain-obj": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", @@ -9020,6 +9731,14 @@ "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, + "node_modules/is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha512-cr/SlUEe5zOGmzvj9bUyC4LVvkNVAXu4GytXLNMr1pny+a65MpQ9IJzFHD5vi7FyJgb4qt27+eS3TuQnqB+RQw==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", @@ -9043,6 +9762,14 @@ "node": ">=0.10.0" } }, + "node_modules/is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-root": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", @@ -11270,6 +11997,11 @@ "node": ">=4" } }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -11290,6 +12022,12 @@ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "optional": true + }, "node_modules/json5": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", @@ -11332,6 +12070,14 @@ "node": ">=4.0" } }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -11369,6 +12115,17 @@ "language-subtag-registry": "~0.3.2" } }, + "node_modules/latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha512-Be1YRHWWlZaSsrz2U+VInk+tO0EwLIyV+23RhWLINJYwg/UIikxjlj3MhH37/6/EDCAusjajvMkMMUXRaMWl/w==", + "dependencies": { + "package-json": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -11486,6 +12243,14 @@ "tslib": "^2.0.3" } }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -11543,6 +12308,30 @@ "tmpl": "1.0.5" } }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/matcher/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", @@ -11643,6 +12432,14 @@ "node": ">=6" } }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -12081,6 +12878,22 @@ "node": ">= 0.8.0" } }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "engines": { + "node": ">=4" + } + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -12129,29 +12942,96 @@ "node": ">=6" } }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "node_modules/package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==", "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dependencies": { - "callsites": "^3.0.0" - }, + "node_modules/package-json/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "node_modules/package-json/node_modules/got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha512-Y/K3EDuiQN9rTZhBvPRWMLXIKdeD1Rj0nzunfoi0Yyn5WBEbzxXKU9Ub2X41oZBagVWOBU3MuDonFMgPWQFnwg==", + "dependencies": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/package-json/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/package-json/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dependencies": { "@babel/code-frame": "^7.0.0", @@ -12204,6 +13084,11 @@ "node": ">=0.10.0" } }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -12230,6 +13115,11 @@ "node": ">=8" } }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" + }, "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -13565,6 +14455,14 @@ "node": ">= 0.8.0" } }, + "node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", @@ -13614,6 +14512,14 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/promise": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/promise/-/promise-8.2.0.tgz", @@ -13669,11 +14575,30 @@ "node": ">= 0.10" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -13797,6 +14722,28 @@ "node": ">=0.10.0" } }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/react": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", @@ -13941,6 +14888,85 @@ "node": ">=8" } }, + "node_modules/react-devtools": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/react-devtools/-/react-devtools-5.0.0.tgz", + "integrity": "sha512-AN24OgEHaS06cbVYxTa/DH1B86TlKwIO483WIJ06jYfUL0QCv3oyX+FpP5mzAI4abcBNrtOORKsRsJ0JnhrEsg==", + "dependencies": { + "cross-spawn": "^5.0.1", + "electron": "^23.1.2", + "ip": "^1.1.4", + "minimist": "^1.2.3", + "react-devtools-core": "5.0.0", + "update-notifier": "^2.1.0" + }, + "bin": { + "react-devtools": "bin.js" + } + }, + "node_modules/react-devtools-core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-5.0.0.tgz", + "integrity": "sha512-SAAMLacNDfFjMJjmbXURNWtrTyARi9xTqGkY48Btw5cIWlr1wgxfWYZKxoUZav1qqmhbpgTzSmmF+cpMHGHY3A==", + "dependencies": { + "shell-quote": "^1.6.1", + "ws": "^7" + } + }, + "node_modules/react-devtools/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/react-devtools/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/react-devtools/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-devtools/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-devtools/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/react-devtools/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, "node_modules/react-dom": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", @@ -13971,6 +14997,36 @@ "node": ">=0.10.0" } }, + "node_modules/react-router": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.22.0.tgz", + "integrity": "sha512-q2yemJeg6gw/YixRlRnVx6IRJWZD6fonnfZhN1JIOhV2iJCPeRNSH3V1ISwHf+JWcESzLC3BOLD1T07tmO5dmg==", + "dependencies": { + "@remix-run/router": "1.15.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.22.0.tgz", + "integrity": "sha512-z2w+M4tH5wlcLmH3BMMOMdrtrJ9T3oJJNsAlBJbwk+8Syxd5WFJ7J5dxMEW0/GEXD1BBis4uXRrNIz3mORr0ag==", + "dependencies": { + "@remix-run/router": "1.15.0", + "react-router": "6.22.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, "node_modules/react-scripts": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-5.0.1.tgz", @@ -14186,6 +15242,26 @@ "node": ">=4" } }, + "node_modules/registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "dependencies": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", + "dependencies": { + "rc": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/regjsgen": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", @@ -14267,6 +15343,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==" + }, "node_modules/resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", @@ -14350,6 +15431,17 @@ "node": ">=10" } }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -14381,6 +15473,29 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/roarr/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "optional": true + }, "node_modules/rollup": { "version": "2.79.1", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", @@ -14621,6 +15736,31 @@ "node": ">=10" } }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "optional": true + }, + "node_modules/semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha512-gL8F8L4ORwsS0+iQ34yCYv///jsOq0ZL7WP55d1HnJ32o7tyFYEFQZQA22mrLIacZdU6xecaBBZ+uEiffGNyXw==", + "dependencies": { + "semver": "^5.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } + }, "node_modules/send": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", @@ -14662,6 +15802,33 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serialize-error/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/serialize-javascript": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", @@ -15088,6 +16255,14 @@ "node": ">=10" } }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -15148,6 +16323,17 @@ "postcss": "^8.2.15" } }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -15379,6 +16565,123 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha512-7dPUZQGy/+m3/wjVz3ZW5dobSoD/02NxJpoXUX0WIyjfVS3l0c+b/+9phIDFA7FHzkYtwtMFgeGZ/Y8jVTeqQQ==", + "dependencies": { + "execa": "^0.7.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size/node_modules/cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "dependencies": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "node_modules/term-size/node_modules/execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", + "dependencies": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size/node_modules/get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/term-size/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/term-size/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/term-size/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/term-size/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/term-size/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/term-size/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, "node_modules/terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -15477,6 +16780,14 @@ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, + "node_modules/timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -15746,6 +17057,14 @@ "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" }, + "node_modules/unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha512-N0XH6lqDtFH84JxptQoZYmloF4nzrQqqrAymNj+/gW60AO2AZgOcf4O/nUXJcYfyQkqvMo9lSupBZmmgvuVXlw==", + "engines": { + "node": ">=4" + } + }, "node_modules/upath": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", @@ -15780,6 +17099,26 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dependencies": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -15797,6 +17136,17 @@ "requires-port": "^1.0.0" } }, + "node_modules/url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==", + "dependencies": { + "prepend-http": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -16319,6 +17669,56 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "dependencies": { + "string-width": "^2.1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/widest-line/node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/widest-line/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/widest-line/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/widest-line/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -16703,6 +18103,14 @@ } } }, + "node_modules/xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ==", + "engines": { + "node": ">=4" + } + }, "node_modules/xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", @@ -16767,6 +18175,15 @@ "node": ">=10" } }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -18147,6 +19564,51 @@ "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", "requires": {} }, + "@electron/get": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", + "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", + "requires": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "global-agent": "^3.0.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==" + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + } + } + }, "@eslint/eslintrc": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", @@ -18835,6 +20297,11 @@ "source-map": "^0.7.3" } }, + "@remix-run/router": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.15.0.tgz", + "integrity": "sha512-HOil5aFtme37dVQTB6M34G95kPM3MMuqSmIRVCC52eKV+Y/tGSqw9P3rWhlAx6A+mz+MoX+XxsGsNJbaI5qCgQ==" + }, "@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -18893,6 +20360,11 @@ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.47.tgz", "integrity": "sha512-J4Xw0xYK4h7eC34MNOPQi6IkNxGRck6n4VJpWDzXIFVTW8I/D43Gf+NfWz/v/7NHlzWOPd3+T4PJ4OqklQ2u7A==" }, + "@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==" + }, "@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -19029,6 +20501,14 @@ "loader-utils": "^2.0.0" } }, + "@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "requires": { + "defer-to-connect": "^2.0.0" + } + }, "@testing-library/dom": { "version": "8.19.0", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.19.0.tgz", @@ -19247,6 +20727,17 @@ "@types/node": "*" } }, + "@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "requires": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, "@types/connect": { "version": "3.4.35", "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", @@ -19321,6 +20812,11 @@ "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" }, + "@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==" + }, "@types/http-proxy": { "version": "1.17.9", "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", @@ -19538,6 +21034,14 @@ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" }, + "@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "requires": { + "@types/node": "*" + } + }, "@types/mime": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", @@ -19604,6 +21108,14 @@ "@types/node": "*" } }, + "@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "requires": { + "@types/node": "*" + } + }, "@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", @@ -19683,6 +21195,15 @@ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" }, + "@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "optional": true, + "requires": { + "@types/node": "*" + } + }, "@typescript-eslint/eslint-plugin": { "version": "5.40.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.1.tgz", @@ -20071,6 +21592,43 @@ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "requires": {} }, + "ansi-align": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", + "integrity": "sha512-TdlOggdA/zURfMYa7ABC66j+oqfMew58KpJMbUlH3bcZP1b+cBHIHDDn5uH9INsxrHBPjsqM0tDB4jPTF/vgJA==", + "requires": { + "string-width": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -20227,6 +21785,28 @@ "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.3.tgz", "integrity": "sha512-32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w==" }, + "axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "requires": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + }, + "dependencies": { + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, "axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", @@ -20543,6 +22123,60 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, + "boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "optional": true + }, + "boxen": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", + "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "requires": { + "ansi-align": "^2.0.0", + "camelcase": "^4.0.0", + "chalk": "^2.0.1", + "cli-boxes": "^1.0.0", + "string-width": "^2.0.0", + "term-size": "^1.2.0", + "widest-line": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -20584,6 +22218,11 @@ "node-int64": "^0.4.0" } }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==" + }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -20599,6 +22238,35 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" }, + "cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==" + }, + "cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "dependencies": { + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + } + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -20648,6 +22316,11 @@ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001422.tgz", "integrity": "sha512-hSesn02u1QacQHhaxl/kNMZwqVG35Sz/8DgvmgedxSH8z9UUpcDYSPYgsj3x5dQNRcNp6BwpSfQfVzYUTm+fog==" }, + "capture-stack-trace": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.2.tgz", + "integrity": "sha512-X/WM2UQs6VMHUtjUDnZTRI+i1crWteJySFzr9UpGoQa4WQffXVTTXuekjl7TjZRlcF2XfjgITT0HxZ9RnxeT0w==" + }, "case-sensitive-paths-webpack-plugin": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", @@ -20728,6 +22401,11 @@ } } }, + "cli-boxes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", + "integrity": "sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg==" + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -20738,6 +22416,14 @@ "wrap-ansi": "^7.0.0" } }, + "clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "requires": { + "mimic-response": "^1.0.0" + } + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", @@ -20856,6 +22542,57 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, + "configstore": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.5.tgz", + "integrity": "sha512-nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA==", + "requires": { + "dot-prop": "^4.2.1", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==" + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==" + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + } + } + }, "confusing-browser-globals": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", @@ -20929,6 +22666,14 @@ "yaml": "^1.10.0" } }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha512-gYTKKexFO3kh200H1Nit76sRwRtOY32vQd3jpAQKpLtZqyNsSQNfI4N7o3eP2wUjV35pTWKRYqFUDBvUha/Pkw==", + "requires": { + "capture-stack-trace": "^1.0.0" + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -21229,11 +22974,31 @@ "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.2.tgz", "integrity": "sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==" }, + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + }, + "dependencies": { + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + } + } + }, "dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -21252,6 +23017,11 @@ "execa": "^5.0.0" } }, + "defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" + }, "define-lazy-prop": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", @@ -21444,6 +23214,14 @@ "tslib": "^2.0.3" } }, + "dot-prop": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.1.tgz", + "integrity": "sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ==", + "requires": { + "is-obj": "^1.0.0" + } + }, "dotenv": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", @@ -21459,6 +23237,11 @@ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" }, + "duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -21472,6 +23255,23 @@ "jake": "^10.8.5" } }, + "electron": { + "version": "23.3.13", + "resolved": "https://registry.npmjs.org/electron/-/electron-23.3.13.tgz", + "integrity": "sha512-BaXtHEb+KYKLouUXlUVDa/lj9pj4F5kiE0kwFdJV84Y2EU7euIDgPthfKtchhr5MVHmjtavRMIV/zAwEiSQ9rQ==", + "requires": { + "@electron/get": "^2.0.0", + "@types/node": "^16.11.26", + "extract-zip": "^2.0.1" + }, + "dependencies": { + "@types/node": { + "version": "16.18.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.80.tgz", + "integrity": "sha512-vFxJ1Iyl7A0+xB0uW1r1v504yItKZLdqg/VZELUZ4H02U0bXAgBisSQ8Erf0DMruNFz9ggoiEv6T8Ll9bTg8Jw==" + } + } + }, "electron-to-chromium": { "version": "1.4.284", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", @@ -21497,6 +23297,14 @@ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, "enhanced-resolve": { "version": "5.10.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", @@ -21511,6 +23319,11 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -21586,6 +23399,12 @@ "is-symbol": "^1.0.2" } }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "optional": true + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -22234,6 +24053,27 @@ } } }, + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "dependencies": { + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + } + } + }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -22295,6 +24135,14 @@ "bser": "2.1.1" } }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "requires": { + "pend": "~1.2.0" + } + }, "file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -22414,9 +24262,9 @@ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" }, "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==" }, "fork-ts-checker-webpack-plugin": { "version": "6.5.2", @@ -22663,6 +24511,28 @@ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" }, + "global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "optional": true, + "requires": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + } + }, + "global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", + "requires": { + "ini": "^1.3.4" + } + }, "global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", @@ -22696,6 +24566,15 @@ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "optional": true, + "requires": { + "define-properties": "^1.1.3" + } + }, "globby": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", @@ -22709,6 +24588,24 @@ "slash": "^3.0.0" } }, + "got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "requires": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + } + }, "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", @@ -22881,6 +24778,11 @@ "entities": "^2.0.0" } }, + "http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", @@ -22935,6 +24837,15 @@ "micromatch": "^4.0.2" } }, + "http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "requires": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + } + }, "https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -23002,6 +24913,11 @@ } } }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" + }, "import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -23050,6 +24966,11 @@ "side-channel": "^1.0.4" } }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, "ipaddr.js": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", @@ -23090,6 +25011,21 @@ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, + "is-ci": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", + "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", + "requires": { + "ci-info": "^1.5.0" + }, + "dependencies": { + "ci-info": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", + "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==" + } + } + }, "is-core-module": { "version": "2.11.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", @@ -23134,6 +25070,15 @@ "is-extglob": "^2.1.1" } }, + "is-installed-globally": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", + "integrity": "sha512-ERNhMg+i/XgDwPIPF3u24qpajVreaiSuvpb1Uu0jugw7KKcxGyCX8cgp8P5fwTmAuXku6beDHHECdKArjlg7tw==", + "requires": { + "global-dirs": "^0.1.0", + "is-path-inside": "^1.0.0" + } + }, "is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -23144,6 +25089,11 @@ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" }, + "is-npm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", + "integrity": "sha512-9r39FIr3d+KD9SbX0sfMsHzb5PP3uimOiwr3YupUaUFG4W0l1U57Rx3utpttV7qz5U3jmrO5auUa04LU9pyHsg==" + }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -23162,6 +25112,14 @@ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", + "requires": { + "path-is-inside": "^1.0.1" + } + }, "is-plain-obj": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", @@ -23172,6 +25130,11 @@ "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha512-cr/SlUEe5zOGmzvj9bUyC4LVvkNVAXu4GytXLNMr1pny+a65MpQ9IJzFHD5vi7FyJgb4qt27+eS3TuQnqB+RQw==" + }, "is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", @@ -23186,6 +25149,11 @@ "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + }, "is-root": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", @@ -24811,6 +26779,11 @@ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, "json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -24831,6 +26804,12 @@ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "optional": true + }, "json5": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", @@ -24859,6 +26838,14 @@ "object.assign": "^4.1.3" } }, + "keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "requires": { + "json-buffer": "3.0.1" + } + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -24887,6 +26874,14 @@ "language-subtag-registry": "~0.3.2" } }, + "latest-version": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", + "integrity": "sha512-Be1YRHWWlZaSsrz2U+VInk+tO0EwLIyV+23RhWLINJYwg/UIikxjlj3MhH37/6/EDCAusjajvMkMMUXRaMWl/w==", + "requires": { + "package-json": "^4.0.0" + } + }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -24980,6 +26975,11 @@ "tslib": "^2.0.3" } }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -25024,6 +27024,23 @@ "tmpl": "1.0.5" } }, + "matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "optional": true, + "requires": { + "escape-string-regexp": "^4.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "optional": true + } + } + }, "mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", @@ -25094,6 +27111,11 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -25402,6 +27424,16 @@ "word-wrap": "^1.2.3" } }, + "p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==" + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -25432,6 +27464,57 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, + "package-json": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", + "integrity": "sha512-q/R5GrMek0vzgoomq6rm9OX+3PQve8sLwTirmK30YB3Cu0Bbt9OX9M/SIUnroN5BGJkzwGsFwDaRGD9EwBOlCA==", + "requires": { + "got": "^6.7.1", + "registry-auth-token": "^3.0.1", + "registry-url": "^3.0.3", + "semver": "^5.1.0" + }, + "dependencies": { + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==" + }, + "got": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", + "integrity": "sha512-Y/K3EDuiQN9rTZhBvPRWMLXIKdeD1Rj0nzunfoi0Yyn5WBEbzxXKU9Ub2X41oZBagVWOBU3MuDonFMgPWQFnwg==", + "requires": { + "create-error-class": "^3.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^3.0.0", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "safe-buffer": "^5.0.1", + "timed-out": "^4.0.0", + "unzip-response": "^2.0.1", + "url-parse-lax": "^1.0.0" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==" + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" + } + } + }, "param-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", @@ -25489,6 +27572,11 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -25509,6 +27597,11 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -26283,6 +28376,11 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==" + }, "pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", @@ -26319,6 +28417,11 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, "promise": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/promise/-/promise-8.2.0.tgz", @@ -26369,11 +28472,30 @@ } } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -26454,6 +28576,24 @@ } } }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" + } + } + }, "react": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", @@ -26561,6 +28701,75 @@ } } }, + "react-devtools": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/react-devtools/-/react-devtools-5.0.0.tgz", + "integrity": "sha512-AN24OgEHaS06cbVYxTa/DH1B86TlKwIO483WIJ06jYfUL0QCv3oyX+FpP5mzAI4abcBNrtOORKsRsJ0JnhrEsg==", + "requires": { + "cross-spawn": "^5.0.1", + "electron": "^23.1.2", + "ip": "^1.1.4", + "minimist": "^1.2.3", + "react-devtools-core": "5.0.0", + "update-notifier": "^2.1.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + } + } + }, + "react-devtools-core": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-5.0.0.tgz", + "integrity": "sha512-SAAMLacNDfFjMJjmbXURNWtrTyARi9xTqGkY48Btw5cIWlr1wgxfWYZKxoUZav1qqmhbpgTzSmmF+cpMHGHY3A==", + "requires": { + "shell-quote": "^1.6.1", + "ws": "^7" + } + }, "react-dom": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", @@ -26585,6 +28794,23 @@ "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz", "integrity": "sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==" }, + "react-router": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.22.0.tgz", + "integrity": "sha512-q2yemJeg6gw/YixRlRnVx6IRJWZD6fonnfZhN1JIOhV2iJCPeRNSH3V1ISwHf+JWcESzLC3BOLD1T07tmO5dmg==", + "requires": { + "@remix-run/router": "1.15.0" + } + }, + "react-router-dom": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.22.0.tgz", + "integrity": "sha512-z2w+M4tH5wlcLmH3BMMOMdrtrJ9T3oJJNsAlBJbwk+8Syxd5WFJ7J5dxMEW0/GEXD1BBis4uXRrNIz3mORr0ag==", + "requires": { + "@remix-run/router": "1.15.0", + "react-router": "6.22.0" + } + }, "react-scripts": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-5.0.1.tgz", @@ -26752,6 +28978,23 @@ "unicode-match-property-value-ecmascript": "^2.0.0" } }, + "registry-auth-token": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.4.0.tgz", + "integrity": "sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A==", + "requires": { + "rc": "^1.1.6", + "safe-buffer": "^5.0.1" + } + }, + "registry-url": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", + "integrity": "sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==", + "requires": { + "rc": "^1.0.1" + } + }, "regjsgen": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", @@ -26814,6 +29057,11 @@ "supports-preserve-symlinks-flag": "^1.0.0" } }, + "resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==" + }, "resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", @@ -26865,6 +29113,14 @@ "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==" }, + "responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "requires": { + "lowercase-keys": "^2.0.0" + } + }, "retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -26883,6 +29139,28 @@ "glob": "^7.1.3" } }, + "roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "optional": true, + "requires": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "optional": true + } + } + }, "rollup": { "version": "2.79.1", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", @@ -27029,6 +29307,27 @@ "lru-cache": "^6.0.0" } }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "optional": true + }, + "semver-diff": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", + "integrity": "sha512-gL8F8L4ORwsS0+iQ34yCYv///jsOq0ZL7WP55d1HnJ32o7tyFYEFQZQA22mrLIacZdU6xecaBBZ+uEiffGNyXw==", + "requires": { + "semver": "^5.0.3" + }, + "dependencies": { + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" + } + } + }, "send": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", @@ -27071,6 +29370,23 @@ } } }, + "serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "optional": true, + "requires": { + "type-fest": "^0.13.1" + }, + "dependencies": { + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "optional": true + } + } + }, "serialize-javascript": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", @@ -27416,6 +29732,11 @@ "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz", "integrity": "sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==" }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==" + }, "strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -27449,6 +29770,14 @@ "postcss-selector-parser": "^6.0.4" } }, + "sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "requires": { + "debug": "^4.1.0" + } + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -27631,6 +29960,98 @@ } } }, + "term-size": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", + "integrity": "sha512-7dPUZQGy/+m3/wjVz3ZW5dobSoD/02NxJpoXUX0WIyjfVS3l0c+b/+9phIDFA7FHzkYtwtMFgeGZ/Y8jVTeqQQ==", + "requires": { + "execa": "^0.7.0" + }, + "dependencies": { + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==", + "requires": { + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==" + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + } + } + }, "terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -27695,6 +30116,11 @@ "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==" + }, "tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -27894,6 +30320,11 @@ "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" }, + "unzip-response": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", + "integrity": "sha512-N0XH6lqDtFH84JxptQoZYmloF4nzrQqqrAymNj+/gW60AO2AZgOcf4O/nUXJcYfyQkqvMo9lSupBZmmgvuVXlw==" + }, "upath": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", @@ -27908,6 +30339,23 @@ "picocolors": "^1.0.0" } }, + "update-notifier": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", + "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "requires": { + "boxen": "^1.2.1", + "chalk": "^2.0.1", + "configstore": "^3.0.0", + "import-lazy": "^2.1.0", + "is-ci": "^1.0.10", + "is-installed-globally": "^0.1.0", + "is-npm": "^1.0.0", + "latest-version": "^3.0.0", + "semver-diff": "^2.0.0", + "xdg-basedir": "^3.0.0" + } + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -27925,6 +30373,14 @@ "requires-port": "^1.0.0" } }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA==", + "requires": { + "prepend-http": "^1.0.1" + } + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -28305,6 +30761,43 @@ "is-symbol": "^1.0.3" } }, + "widest-line": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", + "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "requires": { + "string-width": "^2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -28635,6 +31128,11 @@ "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "requires": {} }, + "xdg-basedir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", + "integrity": "sha512-1Dly4xqlulvPD3fZUQJLY+FUIeqN3N2MM3uqe4rCJftAvOjFa3jFGfctOgluGx4ahPbUCsZkmJILiP0Vi4T6lQ==" + }, "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", @@ -28684,6 +31182,15 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 022d9bf..e49bed4 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,11 @@ "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", + "axios": "^1.7.7", "react": "^18.2.0", + "react-devtools": "^5.0.0", "react-dom": "^18.2.0", + "react-router-dom": "^6.22.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" }, diff --git a/src/App.css b/src/App.css index 74b5e05..c8c1f0b 100644 --- a/src/App.css +++ b/src/App.css @@ -1,38 +1,115 @@ -.App { +/* src/styles.css */ + +/* Header */ + + +header { + background-color: #2e65e6; + color: #fff; + padding: 10px 0; + text-align: center; +} + +header nav a { + color: #ffffff; + text-decoration: none; + font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif; + font-size: larger; + margin: 0 10px; +} + +/* Home Page */ +.home-page { text-align: center; } -.App-logo { - height: 40vmin; - pointer-events: none; +.home-page h1 { + margin-top: 50px; +} + +.home-page a { + display: block; + margin: 20px auto; + width: 200px; + padding: 10px; + background-color: #333; + color: #fff; + text-decoration: none; +} + +/* Beer List */ +.beer-list { + margin-top: 20px; +} + +.beer-list input[type="text"] { + margin-bottom: 20px; + padding: 8px; + width: 100%; +} + +.beer-list ul { + list-style-type: none; + padding: 0; +} + +.beer-list li { + margin-bottom: 20px; + border: 1px solid #ccc; + padding: 10px; +} + +.beer-list img { + width: 50px; + border-radius: 3px; + margin-right: 10px; + vertical-align: middle; +} + +/* Beer Detail */ +.beer-detail { + margin-top: 20px; +} + +.beer-detail img { + margin-bottom: 10px; + display: block; + margin: 0 auto; +} + +/* Random Beer */ +.random-beer { + margin-top: 20px; +} + +.random-beer img { + margin-bottom: 10px; + display: block; + margin: 0 auto; } -@media (prefers-reduced-motion: no-preference) { - .App-logo { - animation: App-logo-spin infinite 20s linear; - } +/* New Beer Form */ +.new-beer-form { + margin-top: 20px; } -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; +.new-beer-form input[type="text"], +.new-beer-form input[type="number"], +.new-beer-form textarea, +.new-beer-form button { + margin-bottom: 10px; + padding: 8px; + width: 100%; } -.App-link { - color: #61dafb; +.new-beer-form button { + background-color: #333; + color: #fff; + border: none; + padding: 10px; + cursor: pointer; } -@keyframes App-logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } +.new-beer-form button:hover { + background-color: #555; } diff --git a/src/App.js b/src/App.js index 3784575..be98694 100644 --- a/src/App.js +++ b/src/App.js @@ -1,24 +1,27 @@ -import logo from './logo.svg'; import './App.css'; +import React from 'react'; +import { BrowserRouter as Router, Route, Routes } from 'react-router-dom'; +import HomePage from './components/HomePage'; +import Header from './components/Header'; +import BeerList from './components/BeerList'; +import BeerDetail from './components/BeerDetail'; +import RandomBeer from './components/RandomBeer'; +import NewBeerForm from './components/NewBeerForm'; function App() { return ( -
-
- logo -

- Edit src/App.js and save to reload. -

- - Learn React - -
-
+ +
+
+ + + + + + + +
+
); } diff --git a/src/assets/bar-close-up-beer-52251475.webp b/src/assets/bar-close-up-beer-52251475.webp new file mode 100644 index 0000000000000000000000000000000000000000..91e818a6e7d9cdc40218f3fe5d9eb1e3916bfbd2 GIT binary patch literal 23252 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 XJVJG;lR6d2l)_p7)+%NY000000oNc6 literal 0 HcmV?d00001 diff --git a/src/assets/nightlife-celebration-multi-colored-bar-establishment-generative-ai_188544-12375.avif b/src/assets/nightlife-celebration-multi-colored-bar-establishment-generative-ai_188544-12375.avif new file mode 100644 index 0000000000000000000000000000000000000000..b2a3aa0a7fb2d64cf52fd2e7b38859b3d9730e26 GIT binary patch literal 23563 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 { + const { beerId } = useParams(); + const [beer, setBeer] = useState(null); + + useEffect(() => { + // Fetch data for the selected beer + fetch(`https://ih-beers-api2.herokuapp.com/beers/${beerId}`) + .then((response) => response.json()) + .then((data) => setBeer(data)) + .catch((error) => console.error('Error fetching beer details:', error)); + }, [beerId]); + + if (!beer) { + return

Loading...
; + } + + return ( +
+

{beer.name}

+ {beer.name} +

{beer.tagline}

+

First Brewed: {beer.first_brewed}

+

Attenuation Level: {beer.attenuation_level}

+

Description: {beer.description}

+

Contributed by: {beer.contributed_by}

+
+ ); +}; + +export default BeerDetails; \ No newline at end of file diff --git a/src/components/BeerDetail.css b/src/components/BeerDetail.css new file mode 100644 index 0000000..5ef2d02 --- /dev/null +++ b/src/components/BeerDetail.css @@ -0,0 +1,36 @@ +.beer-detail-container { + max-width: 600px; + margin: 0 auto; + padding: 20px; +} + +.beer-detail { + text-align: center; + background-color: #f9f9f9; + padding: 20px; + border-radius: 5px; +} + +.beer-detail img { + display: block; + margin: 0 auto; + width: 150px; + max-width: 300px; + border-radius: 5px; + margin-bottom: 20px; +} + +.beer-detail h2 { + margin-top: 20px; + font-size: 24px; +} + +.beer-detail p { + margin: 10px 0; + line-height: 1.5; +} + +.beer-detail p strong { + font-weight: bold; +} + \ No newline at end of file diff --git a/src/components/BeerDetail.js b/src/components/BeerDetail.js new file mode 100644 index 0000000..b9a5810 --- /dev/null +++ b/src/components/BeerDetail.js @@ -0,0 +1,40 @@ +import React, { useState, useEffect } from 'react'; +import { useParams } from 'react-router-dom'; +import axios from 'axios'; +import "./BeerDetail.css"; + +const BeerDetail = () => { + const [beer, setBeer] = useState(null); + const { id } = useParams(); + + useEffect(() => { + const fetchBeer = async () => { + try { + const response = await axios.get(`https://ih-beers-api2.herokuapp.com/beers/${id}`); + setBeer(response.data); + } catch (error) { + console.error('Error fetching beer:', error); + } + }; + + fetchBeer(); + }, [id]); + + return ( +
+ {beer && ( +
+ {beer.name} +

{beer.name}

+

{beer.tagline}

+

First Brewed: {beer.first_brewed}

+

Attenuation Level: {beer.attenuation_level}

+

Description: {beer.description}

+

Contributed by: {beer.contributed_by}

+
+ )} +
+ ); +} + +export default BeerDetail; diff --git a/src/components/BeerList.css b/src/components/BeerList.css new file mode 100644 index 0000000..d910d75 --- /dev/null +++ b/src/components/BeerList.css @@ -0,0 +1,59 @@ +.beer-list-container { + max-width: 800px; + margin: 0 auto; + padding: 20px; +} + +h2 { + text-align: center; + margin-bottom: 20px; +} + +input[type="text"] { + width: 100%; + padding: 8px; + margin-bottom: 20px; + border-radius: 5px; + border: 1px solid #ccc; +} + +ul { + list-style: none; + padding: 0; +} + +li { + margin-bottom: 20px; + border-radius: 5px; + border: 1px solid #ccc; + overflow: hidden; +} + +li a { + display: flex; + align-items: center; + text-decoration: none; + color: #333; +} + +li a:hover { + background-color: #f9f9f9; +} + +li img { + width: 50px; + margin: 20px 20px 20px 20px; +} + +li div { + flex-grow: 1; +} + +li h3 { + margin: 0; +} + +li p { + margin: 5px 0; + color: #666; +} \ No newline at end of file diff --git a/src/components/BeerList.js b/src/components/BeerList.js new file mode 100644 index 0000000..3608567 --- /dev/null +++ b/src/components/BeerList.js @@ -0,0 +1,49 @@ +import React, { useState, useEffect } from 'react'; +import axios from 'axios'; +import { Link } from 'react-router-dom'; +import './BeerList.css'; + +const BeerList = () => { + const [beers, setBeers] = useState([]); + const [searchQuery, setSearchQuery] = useState(''); + + useEffect(() => { + const fetchBeers = async () => { + try { + const response = await axios.get(`https://ih-beers-api2.herokuapp.com/beers${searchQuery ? `/search?q=${searchQuery}` : ''}`); + setBeers(response.data); + } catch (error) { + console.error('Error fetching beers:', error); + } + }; + + fetchBeers(); + }, [searchQuery]); + + const handleSearch = (e) => { + setSearchQuery(e.target.value); + }; + + return ( +
+

All Beers

+ +
    + {beers.map(beer => ( +
  • + + {beer.name} +
    +

    {beer.name}

    +

    {beer.tagline}

    +

    Contributed by: {beer.contributed_by}

    +
    + +
  • + ))} +
+
+ ); +} + +export default BeerList; diff --git a/src/components/Header.js b/src/components/Header.js new file mode 100644 index 0000000..7b5a490 --- /dev/null +++ b/src/components/Header.js @@ -0,0 +1,14 @@ +import React from 'react'; +import { Link } from 'react-router-dom'; + +const Header = () => { + return ( +
+ +
+ ); +} + +export default Header; \ No newline at end of file diff --git a/src/components/HomePage.css b/src/components/HomePage.css new file mode 100644 index 0000000..c6314ce --- /dev/null +++ b/src/components/HomePage.css @@ -0,0 +1,58 @@ +.container { + max-width: 600px; + margin: 0 auto; + padding: 20px; + text-decoration: none; +} + +.main-element { + margin-bottom: 30px; +} + +.main-element img { + display: block; + margin: 0 auto; + width: 100%; + height: 200px; + object-fit: cover; + background-position: center; + max-width: 300px; + border-radius: 20px; + outline-color: aqua; + border:solid 1rem rgb(216, 216, 114); + border-top-left-radius:5rem ; + border-bottom-right-radius:5rem ; +} + + .main-element h2 { + text-align: center; + margin-top: 20px; + font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; + text-decoration: none; + letter-spacing: 1px; + word-spacing: 0.1em; + font-stretch:narrower; + font-weight: 200; +} + +.main-element p { + text-decoration: none; + font-weight: 600; + text-align: center; + color: #666; +} + +#all-beers { + background-color: #ccf2f1; + padding: 20px; +} + +#random-beer { + background-color: #ccf2f1; + padding: 20px; +} + +#new-beer { + background-color: #ccf2f1; + padding: 20px; +} \ No newline at end of file diff --git a/src/components/HomePage.js b/src/components/HomePage.js new file mode 100644 index 0000000..5044806 --- /dev/null +++ b/src/components/HomePage.js @@ -0,0 +1,37 @@ + +import React from 'react'; +import { Link } from 'react-router-dom'; +import beer3 from '../assets/bar-close-up-beer-52251475.webp'; +import beer2 from '../assets/beers.png'; +import beer from '../assets/nightlife-celebration-multi-colored-bar-establishment-generative-ai_188544-12375.avif'; +import './HomePage.css'; + +const HomePage = () => { + return ( +
+ +
+ All Beers +

All Beers

+

Explore our vast collection of
handcrafted beers from around the world.

+
+ + +
+ Random Beer +

Random Beer

+

Discover a new favorite with
our selection of random beers.

+
+ + +
+ New Beer +

New Beer

+

Create your own beer masterpiece with
our easy-to-use new beer form.

+
+ +
+ ); +} + +export default HomePage; \ No newline at end of file diff --git a/src/components/NewBeerForm.css b/src/components/NewBeerForm.css new file mode 100644 index 0000000..7ee8d0c --- /dev/null +++ b/src/components/NewBeerForm.css @@ -0,0 +1,43 @@ +.new-beer-form-container { + max-width: 600px; + margin: 0 auto; + padding: 20px; + background-color: #f9f9f9; + border-radius: 5px; +} + +.new-beer-form h2 { + text-align: center; + margin-bottom: 20px; +} + +.new-beer-form label { + display: block; + margin-bottom: 5px; +} + +.new-beer-form input[type="text"], +.new-beer-form input[type="number"], +.new-beer-form textarea { + width: 100%; + padding: 8px; + margin-bottom: 10px; +} + +.new-beer-form textarea { + resize: vertical; +} + +.new-beer-form button { + background-color: #333; + color: #fff; + border: none; + padding: 10px 20px; + cursor: pointer; + width: 100%; +} + +.new-beer-form button:hover { + background-color: #555; +} + \ No newline at end of file diff --git a/src/components/NewBeerForm.js b/src/components/NewBeerForm.js new file mode 100644 index 0000000..fc4be4d --- /dev/null +++ b/src/components/NewBeerForm.js @@ -0,0 +1,68 @@ +import React, { useState } from 'react'; +import axios from 'axios'; +import './NewBeerForm.css'; + +const NewBeerForm = () => { + const [formData, setFormData] = useState({ + name: '', + tagline: '', + description: '', + first_brewed: '', + brewers_tips: '', + attenuation_level: '', + contributed_by: '' + }); + + const handleChange = (e) => { + const { name, value } = e.target; + setFormData(prevState => ({ + ...prevState, + [name]: value + })); + }; + + const handleSubmit = async (e) => { + e.preventDefault(); + try { + await axios.post('https://ih-beers-api2.herokuapp.com/beers/new', formData); + alert('New beer successfully saved to database!'); + setFormData({ + name: '', + tagline: '', + description: '', + first_brewed: '', + brewers_tips: '', + attenuation_level: '', + contributed_by: '' + }); + } catch (error) { + console.error('Error creating new beer:', error); + alert('Error creating new beer. Please try again.'); + } + }; + + return ( +
+

Create a New Beer

+
+ + + + + +