From f3474cf0e5ac6fe3a61fc37fc096f3a3941b3c37 Mon Sep 17 00:00:00 2001 From: TJ Maynes Date: Sat, 30 Dec 2023 11:57:26 -0600 Subject: [PATCH] chore: deploy refactored app --- .eslintrc.json | 9 +- .github/workflows/ci.yml | 18 +- .gitignore | 3 + .node-version | 1 + .stylelintrc | 3 + .tool-versions | 1 + Makefile | 33 +- README.md | 9 +- lighthouserc.js | 10 +- package-lock.json | 14411 ++++++---------- package.json | 26 +- public/favicon.ico | Bin 25931 -> 0 bytes public/font/OFL.txt | 92 + public/font/inconsolata-bold.eot | Bin 0 -> 66644 bytes public/font/inconsolata-bold.ttf | Bin 0 -> 66352 bytes public/font/inconsolata-bold.woff | Bin 0 -> 33200 bytes public/font/inconsolata-bold.woff2 | Bin 0 -> 26452 bytes public/font/inconsolata-regular.eot | Bin 0 -> 84732 bytes public/font/inconsolata-regular.ttf | Bin 0 -> 84548 bytes public/font/inconsolata-regular.woff | Bin 0 -> 50824 bytes public/font/inconsolata-regular.woff2 | Bin 0 -> 40896 bytes script/cloudflare-pages-deploy.sh | 38 + script/ensure-cloudflare-kv-exists.sh | 34 + script/ensure-cloudflare-pages-exists.sh | 34 + script/performance.sh | 26 - src/app/_components/BackgroundInfo.tsx | 24 + src/app/_components/ErrorContainer.tsx | 2 +- src/app/_components/Footer.tsx | 10 +- src/app/_components/Header.tsx | 6 +- src/app/_components/ImageAnalyzer.tsx | 109 +- src/app/_components/ImageDescription.tsx | 50 - src/app/_components/ImageUploader.tsx | 18 +- src/app/_components/SampleImagePreview.tsx | 2 +- src/app/_components/Welcome.tsx | 33 - src/app/_hooks/useImageAnalyzer.tsx | 97 - .../_hooks/useImageClassificationService.tsx | 94 + src/app/_hooks/useImageDescriptionService.tsx | 45 + src/app/_hooks/useImageUploadInfoFetcher.tsx | 2 +- src/app/api/image/description/v1/route.ts | 25 - src/app/api/v1/image/description/route.ts | 22 + src/app/globals.css | 0 src/app/globals.scss | 122 + src/app/layout.tsx | 15 +- src/app/page.tsx | 9 +- src/app/types.ts | 5 +- src/env.d.ts | 11 + src/lib/{cacherClient.ts => cache-client.ts} | 17 +- src/lib/cacher.ts | 32 + src/lib/data.ts | 11 + src/lib/image.ts | 15 - src/lib/openai.ts | 28 + src/middleware.ts | 33 - 52 files changed, 5844 insertions(+), 9741 deletions(-) create mode 100644 .node-version create mode 100644 .stylelintrc create mode 100644 .tool-versions delete mode 100644 public/favicon.ico create mode 100755 public/font/OFL.txt create mode 100755 public/font/inconsolata-bold.eot create mode 100755 public/font/inconsolata-bold.ttf create mode 100755 public/font/inconsolata-bold.woff create mode 100755 public/font/inconsolata-bold.woff2 create mode 100755 public/font/inconsolata-regular.eot create mode 100755 public/font/inconsolata-regular.ttf create mode 100755 public/font/inconsolata-regular.woff create mode 100755 public/font/inconsolata-regular.woff2 create mode 100755 script/cloudflare-pages-deploy.sh create mode 100755 script/ensure-cloudflare-kv-exists.sh create mode 100755 script/ensure-cloudflare-pages-exists.sh delete mode 100755 script/performance.sh create mode 100644 src/app/_components/BackgroundInfo.tsx delete mode 100644 src/app/_components/ImageDescription.tsx delete mode 100644 src/app/_components/Welcome.tsx delete mode 100644 src/app/_hooks/useImageAnalyzer.tsx create mode 100644 src/app/_hooks/useImageClassificationService.tsx create mode 100644 src/app/_hooks/useImageDescriptionService.tsx delete mode 100644 src/app/api/image/description/v1/route.ts create mode 100644 src/app/api/v1/image/description/route.ts delete mode 100644 src/app/globals.css create mode 100644 src/app/globals.scss create mode 100644 src/env.d.ts rename src/lib/{cacherClient.ts => cache-client.ts} (70%) create mode 100644 src/lib/cacher.ts create mode 100644 src/lib/data.ts create mode 100644 src/lib/openai.ts delete mode 100644 src/middleware.ts diff --git a/.eslintrc.json b/.eslintrc.json index 8b21bb8..f32b3d9 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,9 +1,14 @@ { + "plugins": [ + "eslint-plugin-next-on-pages" + ], "extends": [ "next/core-web-vitals", - "plugin:prettier/recommended" + "plugin:prettier/recommended", + "plugin:eslint-plugin-next-on-pages/recommended" ], "rules": { - "prettier/prettier": "error" + "prettier/prettier": "error", + "next-on-pages/no-unsupported-configs": "error" } } diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bdfb84d..3c1947d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,12 +13,14 @@ jobs: - uses: actions/checkout@v4 with: fetch-depth: '0' - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: - node-version: 18 - - name: 🚀 Deploy 🚀 - run: make deploy - env: - OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} - CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} + node-version-file: '.node-version' + - name: 🔨 Install Dependencies 🔨 + run: sudo apt-get update && sudo apt-get install make + # - name: 🚀 Deploy 🚀 + # run: make deploy + # env: + # OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} + # CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + # CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} diff --git a/.gitignore b/.gitignore index 09b30ec..12b22d2 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,9 @@ yarn-error.log* # vercel .vercel +# Cloudflare +.wrangler + # typescript *.tsbuildinfo next-env.d.ts diff --git a/.node-version b/.node-version new file mode 100644 index 0000000..8d2a451 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +18.16.1 \ No newline at end of file diff --git a/.stylelintrc b/.stylelintrc new file mode 100644 index 0000000..24d4d99 --- /dev/null +++ b/.stylelintrc @@ -0,0 +1,3 @@ +{ + "extends": ["stylelint-prettier/recommended"] +} \ No newline at end of file diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 0000000..70d0ba4 --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +nodejs 18.16.1 diff --git a/Makefile b/Makefile index ca2c01d..ddcaf95 100644 --- a/Makefile +++ b/Makefile @@ -4,11 +4,16 @@ install: dev: npm run dev -.PHONY: build -build: +dev_cloudflare: + npm run pages:dev + +build: clean npm run build -start: build +build_cloudflare: + npm run pages:build + +start: npm run start lint: @@ -18,13 +23,23 @@ lint_fix: npm run lint:fix performance: - chmod +x ./script/$@.sh - ./script/$@.sh "3000" + npm run lighthouse + +test: performance + +ensure_cloudflare_kv_exists: + chmod +x ./script/ensure-cloudflare-kv-exists.sh + ./script/ensure-cloudflare-kv-exists.sh "IMAGE_ANALYZER_KV" + +ensure_cloudflare_page_exists: + chmod +x ./script/ensure-cloudflare-pages-exists.sh + ./script/ensure-cloudflare-pages-exists.sh "image-analyzer-app" -test: lint build +ensure_cloudflare_infra_exists: ensure_cloudflare_page_exists ensure_cloudflare_kv_exists -deploy: install test - npm run pages:deploy +deploy: install test build_cloudflare ensure_cloudflare_infra_exists + chmod +x ./script/cloudflare-pages-deploy.sh + ./script/cloudflare-pages-deploy.sh ".vercel/output/static" "image-analyzer-app" clean: - rm -rf node_modules/ .next/ \ No newline at end of file + rm -rf node_modules/ .next/ .vercel/ build/ \ No newline at end of file diff --git a/README.md b/README.md index 1efcfd0..ed16e73 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # image-analyzer-app -> a NextJS application for analyzing images +> a NextJS app that allows users to analyze images using MobileNet (via TensorflowJS), ChatGPT, and Cloudflare Pages ## Requirements @@ -26,9 +26,4 @@ make test To deploy the application, run the following command: ```bash make deploy -``` - -## TODOS - -- [ ] Migrate [stockjs](https://github.com/tjmaynes/gists/tree/main/javascript/stockjs) app to web-playground -- [ ] Migrate [tic-tac-toe](https://github.com/tjmaynes/gists/tree/main/javascript/tic-tac-toe) app to web-playground \ No newline at end of file +``` \ No newline at end of file diff --git a/lighthouserc.js b/lighthouserc.js index 4bbce4c..f57f878 100644 --- a/lighthouserc.js +++ b/lighthouserc.js @@ -1,14 +1,18 @@ module.exports = { ci: { collect: { - url: 'http://localhost:3000', + startServerCommand: 'npm run start', + url: 'http://localhost:9900', + startServerReadyTimeout: 60 * 5, // 5 minutes numberOfRuns: 1, }, assert: { preset: 'lighthouse:no-pwa', assertions: { - 'categories:performance': ['error', { minScore: 0.9 }], - 'categories:accessibility': ['error', { minScore: 0.9 }], + 'bf-cache': 'off', + 'csp-xss': 'off', + 'uses-long-cache-ttl': 'off', + 'total-byte-weight': 'off', }, }, }, diff --git a/package-lock.json b/package-lock.json index 7618c1f..2c5db92 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,16 +1,13 @@ { - "name": "web-playground", + "name": "image-analyzer-web", "version": "0.1.0", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "web-playground", + "name": "image-analyzer-web", "version": "0.1.0", "dependencies": { - "@emotion/react": "^11.11.1", - "@emotion/styled": "^11.11.0", - "@mui/material": "^5.14.18", "@tensorflow-models/mobilenet": "^2.1.1", "@tensorflow/tfjs": "^4.13.0", "ai": "^2.2.25", @@ -21,7 +18,8 @@ }, "devDependencies": { "@cloudflare/next-on-pages": "^1.8.2", - "@cloudflare/workers-types": "^4.20231121.0", + "@cloudflare/workers-types": "^4.20231218.0", + "@lhci/cli": "^0.13.0", "@types/blueimp-load-image": "^5.16.5", "@types/node": "^20", "@types/react": "^18", @@ -31,7 +29,10 @@ "eslint-config-prettier": "^9.0.0", "eslint-plugin-next-on-pages": "^1.8.2", "eslint-plugin-prettier": "^5.0.1", + "prettier": "^3.1.1", + "sass": "^1.69.6", "sharp": "^0.32.6", + "stylelint-prettier": "^5.0.0", "typescript": "^5", "vercel": "^32.7.2", "wrangler": "^3.20.0" @@ -60,9 +61,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", - "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "dev": true, + "peer": true, "dependencies": { "@babel/highlight": "^7.23.4", "chalk": "^2.4.2" @@ -75,6 +78,8 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "peer": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -86,6 +91,8 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "peer": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -99,6 +106,8 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "peer": true, "dependencies": { "color-name": "1.1.3" } @@ -106,12 +115,16 @@ "node_modules/@babel/code-frame/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "peer": true }, "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "peer": true, "engines": { "node": ">=0.8.0" } @@ -120,6 +133,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "peer": true, "engines": { "node": ">=4" } @@ -128,6 +143,8 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "peer": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -135,29 +152,12 @@ "node": ">=4" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", - "dependencies": { - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.20", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "peer": true, "engines": { "node": ">=6.9.0" } @@ -166,6 +166,8 @@ "version": "7.23.4", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "dev": true, + "peer": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", @@ -179,6 +181,8 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "peer": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -190,6 +194,8 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "peer": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -203,6 +209,8 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "peer": true, "dependencies": { "color-name": "1.1.3" } @@ -210,12 +218,16 @@ "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "peer": true }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "peer": true, "engines": { "node": ">=0.8.0" } @@ -224,6 +236,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "peer": true, "engines": { "node": ">=4" } @@ -232,6 +246,8 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "peer": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -240,9 +256,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", - "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "peer": true, "bin": { "parser": "bin/babel-parser.js" @@ -252,9 +268,10 @@ } }, "node_modules/@babel/runtime": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz", - "integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.7.tgz", + "integrity": "sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA==", + "dev": true, "dependencies": { "regenerator-runtime": "^0.14.0" }, @@ -262,19 +279,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/types": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", - "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", - "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@cloudflare/kv-asset-handler": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.2.0.tgz", @@ -284,10 +288,22 @@ "mime": "^3.0.0" } }, + "node_modules/@cloudflare/kv-asset-handler/node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/@cloudflare/next-on-pages": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@cloudflare/next-on-pages/-/next-on-pages-1.8.2.tgz", - "integrity": "sha512-TVQL+1Xdmy/7qyuWrEb12k9DxIhEqdi8k2qat0oLifERqc3s9udzaS4jHPVghQmiR5xfaZhrt3fzBnqH5437RA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@cloudflare/next-on-pages/-/next-on-pages-1.8.3.tgz", + "integrity": "sha512-62TwyX/2PhE3onX+PsPT98UQKpnwIkbZqCdzTXgT3D2b9j+uxQzbxtplC74wkg6Ejt8t/PgdG82LtkzFPwGFYA==", "dev": true, "dependencies": { "acorn": "^8.8.0", @@ -311,87 +327,6 @@ "wrangler": "^3.0.0" } }, - "node_modules/@cloudflare/next-on-pages/node_modules/@esbuild/android-arm": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", - "integrity": "sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@cloudflare/next-on-pages/node_modules/@esbuild/linux-loong64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz", - "integrity": "sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@cloudflare/next-on-pages/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@cloudflare/next-on-pages/node_modules/esbuild": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz", - "integrity": "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.15.18", - "@esbuild/linux-loong64": "0.15.18", - "esbuild-android-64": "0.15.18", - "esbuild-android-arm64": "0.15.18", - "esbuild-darwin-64": "0.15.18", - "esbuild-darwin-arm64": "0.15.18", - "esbuild-freebsd-64": "0.15.18", - "esbuild-freebsd-arm64": "0.15.18", - "esbuild-linux-32": "0.15.18", - "esbuild-linux-64": "0.15.18", - "esbuild-linux-arm": "0.15.18", - "esbuild-linux-arm64": "0.15.18", - "esbuild-linux-mips64le": "0.15.18", - "esbuild-linux-ppc64le": "0.15.18", - "esbuild-linux-riscv64": "0.15.18", - "esbuild-linux-s390x": "0.15.18", - "esbuild-netbsd-64": "0.15.18", - "esbuild-openbsd-64": "0.15.18", - "esbuild-sunos-64": "0.15.18", - "esbuild-windows-32": "0.15.18", - "esbuild-windows-64": "0.15.18", - "esbuild-windows-arm64": "0.15.18" - } - }, "node_modules/@cloudflare/workerd-darwin-64": { "version": "1.20231030.0", "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20231030.0.tgz", @@ -473,9 +408,9 @@ } }, "node_modules/@cloudflare/workers-types": { - "version": "4.20231121.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20231121.0.tgz", - "integrity": "sha512-+kWfpCkqiepwAKXyHoE0gnkPgkLhz0/9HOBIGhHRsUvUKvhUtm3mbqqoGRWgF1qcjzrDUBbrrOq4MYHfFtc2RA==", + "version": "4.20231218.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20231218.0.tgz", + "integrity": "sha512-Vs1FKjfUjXYGbCsXzkl+ITp0Iyb6QiW6+vTERTNThC+v96T0IvPVAioH4tT20rXwoxAfxh380mAaxYtTrJUNVg==", "dev": true }, "node_modules/@cspotcode/source-map-support": { @@ -500,6 +435,96 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.4.0.tgz", + "integrity": "sha512-/PPLr2g5PAUCKAPEbfyk6/baZA+WJHQtUhPkoCQMpyRE8I0lXrG1QFRN8e5s3ZYxM8d/g5BZc6lH3s8Op7/VEg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^2.2.2" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.2.tgz", + "integrity": "sha512-wCDUe/MAw7npAHFLyW3QjSyLA66S5QFaV1jIXlNQvdJ8RzXDSgALa49eWcUO6P55ARQaz0TsDdAgdRgkXFYY8g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + } + }, + "node_modules/@csstools/media-query-list-parser": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.6.tgz", + "integrity": "sha512-R6AKl9vaU0It7D7TR2lQn0pre5aQfdeqHRePlaRCY8rHL3l9eVlNRpsEVDKFi/zAjzv68CxH2M5kqbhPFPKjvw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.4.0", + "@csstools/css-tokenizer": "^2.2.2" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.0.1.tgz", + "integrity": "sha512-NPljRHkq4a14YzZ3YD406uaxh7s0g6eAq3L9aLOWywoqe8PkYamAvtsh7KNX6c++ihDrJ0RiU+/z7rGnhlZ5ww==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" + } + }, "node_modules/@edge-runtime/cookies": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/@edge-runtime/cookies/-/cookies-3.4.1.tgz", @@ -560,147 +585,6 @@ "node": ">=16" } }, - "node_modules/@emotion/babel-plugin": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", - "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", - "dependencies": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/serialize": "^1.1.2", - "babel-plugin-macros": "^3.1.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "4.2.0" - } - }, - "node_modules/@emotion/babel-plugin/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@emotion/cache": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", - "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", - "dependencies": { - "@emotion/memoize": "^0.8.1", - "@emotion/sheet": "^1.2.2", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "stylis": "4.2.0" - } - }, - "node_modules/@emotion/hash": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", - "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" - }, - "node_modules/@emotion/is-prop-valid": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", - "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", - "dependencies": { - "@emotion/memoize": "^0.8.1" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/react": { - "version": "11.11.1", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz", - "integrity": "sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==", - "dependencies": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/cache": "^11.11.0", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "hoist-non-react-statics": "^3.3.1" - }, - "peerDependencies": { - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/serialize": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz", - "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==", - "dependencies": { - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/unitless": "^0.8.1", - "@emotion/utils": "^1.2.1", - "csstype": "^3.0.2" - } - }, - "node_modules/@emotion/sheet": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", - "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==" - }, - "node_modules/@emotion/styled": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", - "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", - "dependencies": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/is-prop-valid": "^1.2.1", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1" - }, - "peerDependencies": { - "@emotion/react": "^11.0.0-rc.0", - "react": ">=16.8.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@emotion/unitless": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", - "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" - }, - "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", - "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", - "peerDependencies": { - "react": ">=16.8.0" - } - }, - "node_modules/@emotion/utils": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", - "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==" - }, - "node_modules/@emotion/weak-memoize": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", - "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==" - }, "node_modules/@esbuild-plugins/node-globals-polyfill": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz", @@ -724,9 +608,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", + "integrity": "sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==", "cpu": [ "arm" ], @@ -884,9 +768,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz", + "integrity": "sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==", "cpu": [ "loong64" ], @@ -1100,9 +984,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -1123,9 +1007,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1140,39 +1024,54 @@ "node": ">=14" } }, - "node_modules/@floating-ui/core": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", - "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", + "node_modules/@formatjs/ecma402-abstract": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.0.tgz", + "integrity": "sha512-PEVLoa3zBevWSCZzPIM/lvPCi8P5l4G+NXQMc/CjEiaCWgyHieUoo0nM7Bs0n/NbuQ6JpXEolivQ9pKSBHaDlA==", + "dev": true, + "dependencies": { + "@formatjs/intl-localematcher": "0.5.2", + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/fast-memoize": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.0.tgz", + "integrity": "sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==", + "dev": true, "dependencies": { - "@floating-ui/utils": "^0.1.3" + "tslib": "^2.4.0" } }, - "node_modules/@floating-ui/dom": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", - "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "node_modules/@formatjs/icu-messageformat-parser": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.3.tgz", + "integrity": "sha512-X/jy10V9S/vW+qlplqhMUxR8wErQ0mmIYSq4mrjpjDl9mbuGcCILcI1SUYkL5nlM4PJqpc0KOS0bFkkJNPxYRw==", + "dev": true, "dependencies": { - "@floating-ui/core": "^1.4.2", - "@floating-ui/utils": "^0.1.3" + "@formatjs/ecma402-abstract": "1.18.0", + "@formatjs/icu-skeleton-parser": "1.7.0", + "tslib": "^2.4.0" } }, - "node_modules/@floating-ui/react-dom": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.4.tgz", - "integrity": "sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==", + "node_modules/@formatjs/icu-skeleton-parser": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.7.0.tgz", + "integrity": "sha512-Cfdo/fgbZzpN/jlN/ptQVe0lRHora+8ezrEeg2RfrNjyp+YStwBy7cqDY8k5/z2LzXg6O0AdzAV91XS0zIWv+A==", + "dev": true, "dependencies": { - "@floating-ui/dom": "^1.5.1" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" + "@formatjs/ecma402-abstract": "1.18.0", + "tslib": "^2.4.0" } }, - "node_modules/@floating-ui/utils": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz", - "integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==" + "node_modules/@formatjs/intl-localematcher": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.2.tgz", + "integrity": "sha512-txaaE2fiBMagLrR4jYhxzFO6wEdEG4TPMqrzBAcbr4HFUYzH/YC+lg6OIzKCHm8WgDdyQevxbAAV1OgcXctuGw==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + } }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.13", @@ -1207,6 +1106,102 @@ "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "peer": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "peer": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -1253,6 +1248,58 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@lhci/cli": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@lhci/cli/-/cli-0.13.0.tgz", + "integrity": "sha512-Y/ulyvT3h2j1jeFEoNC9RM5zOTW9s48Np3yC/kpKP6++to4ulMu4mKrmFit5zFHKuH7pC1+bkcYwM1/ul78FfQ==", + "dev": true, + "dependencies": { + "@lhci/utils": "0.13.0", + "chrome-launcher": "^0.13.4", + "compression": "^1.7.4", + "debug": "^4.3.1", + "express": "^4.17.1", + "https-proxy-agent": "^5.0.0", + "inquirer": "^6.3.1", + "isomorphic-fetch": "^3.0.0", + "lighthouse": "11.4.0", + "lighthouse-logger": "1.2.0", + "open": "^7.1.0", + "tmp": "^0.1.0", + "uuid": "^8.3.1", + "yargs": "^15.4.1", + "yargs-parser": "^13.1.2" + }, + "bin": { + "lhci": "src/cli.js" + } + }, + "node_modules/@lhci/utils": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@lhci/utils/-/utils-0.13.0.tgz", + "integrity": "sha512-QkICuVx9rwP8cw0KIV7nEqMldKCddGwYVHal3NnvXl1dGkGJn+0kHZeN8RYZ6aBbLnjTqTCnK0KNAiVxIpD4cw==", + "dev": true, + "dependencies": { + "debug": "^4.3.1", + "isomorphic-fetch": "^3.0.0", + "js-yaml": "^3.13.1", + "lighthouse": "11.4.0", + "tree-kill": "^1.2.1" + } + }, + "node_modules/@lhci/utils/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/@mapbox/node-pre-gyp": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", @@ -1369,235 +1416,11 @@ "node": ">=10" } }, - "node_modules/@mui/base": { - "version": "5.0.0-beta.24", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.24.tgz", - "integrity": "sha512-bKt2pUADHGQtqWDZ8nvL2Lvg2GNJyd/ZUgZAJoYzRgmnxBL9j36MSlS3+exEdYkikcnvVafcBtD904RypFKb0w==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@floating-ui/react-dom": "^2.0.4", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/core-downloads-tracker": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.18.tgz", - "integrity": "sha512-yFpF35fEVDV81nVktu0BE9qn2dD/chs7PsQhlyaV3EnTeZi9RZBuvoEfRym1/jmhJ2tcfeWXiRuHG942mQXJJQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - } - }, - "node_modules/@mui/material": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.14.18.tgz", - "integrity": "sha512-y3UiR/JqrkF5xZR0sIKj6y7xwuEiweh9peiN3Zfjy1gXWXhz5wjlaLdoxFfKIEBUFfeQALxr/Y8avlHH+B9lpQ==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@mui/base": "5.0.0-beta.24", - "@mui/core-downloads-tracker": "^5.14.18", - "@mui/system": "^5.14.18", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "@types/react-transition-group": "^4.4.8", - "clsx": "^2.0.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1", - "react-is": "^18.2.0", - "react-transition-group": "^4.4.5" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/material/node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - }, - "node_modules/@mui/private-theming": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.14.18.tgz", - "integrity": "sha512-WSgjqRlzfHU+2Rou3HlR2Gqfr4rZRsvFgataYO3qQ0/m6gShJN+lhVEvwEiJ9QYyVzMDvNpXZAcqp8Y2Vl+PAw==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@mui/utils": "^5.14.18", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/styled-engine": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.14.18.tgz", - "integrity": "sha512-pW8bpmF9uCB5FV2IPk6mfbQCjPI5vGI09NOLhtGXPeph/4xIfC3JdIX0TILU0WcTs3aFQqo6s2+1SFgIB9rCXA==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@emotion/cache": "^11.11.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@emotion/react": "^11.4.1", - "@emotion/styled": "^11.3.0", - "react": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - } - } - }, - "node_modules/@mui/system": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.14.18.tgz", - "integrity": "sha512-hSQQdb3KF72X4EN2hMEiv8EYJZSflfdd1TRaGPoR7CIAG347OxCslpBUwWngYobaxgKvq6xTrlIl+diaactVww==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@mui/private-theming": "^5.14.18", - "@mui/styled-engine": "^5.14.18", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "clsx": "^2.0.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/types": { - "version": "7.2.9", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.9.tgz", - "integrity": "sha512-k1lN/PolaRZfNsRdAqXtcR71sTnv3z/VCCGPxU8HfdftDkzi335MdJ6scZxvofMAd/K/9EbzCZTFBmlNpQVdCg==", - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/utils": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.14.18.tgz", - "integrity": "sha512-HZDRsJtEZ7WMSnrHV9uwScGze4wM/Y+u6pDVo+grUjt5yXzn+wI8QX/JwTHh9YSw/WpnUL80mJJjgCnWj2VrzQ==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "@types/prop-types": "^15.7.10", - "prop-types": "^15.8.1", - "react-is": "^18.2.0" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" - }, - "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@mui/utils/node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + "node_modules/@mapbox/node-pre-gyp/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, "node_modules/@next/env": { "version": "14.0.3", @@ -1783,19 +1606,22 @@ "node": ">= 8" } }, - "node_modules/@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@pkgr/core": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.0.tgz", + "integrity": "sha512-Zwq5OCzuwJC2jwqmpEQt7Ds1DTi6BWSwoGkbb1n9pO3hzb35BoJELx7c0T23iDkBGkh2e7tvOtjF3tr3OaQHDQ==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" - }, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, @@ -1803,18 +1629,126 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@rollup/pluginutils": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "node_modules/@puppeteer/browsers": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.9.0.tgz", + "integrity": "sha512-QwguOLy44YBGC8vuPP2nmpX4MUN2FzWbsnvZJtiCzecU3lHmVZkaC1tq6rToi9a200m8RzlVtDyxCS0UIDrxUg==", + "dev": true, + "dependencies": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.1", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.2" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=16.3.0" + } + }, + "node_modules/@puppeteer/browsers/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@puppeteer/browsers/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/@puppeteer/browsers/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@puppeteer/browsers/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@puppeteer/browsers/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@puppeteer/browsers/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@puppeteer/browsers/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@puppeteer/browsers/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", "dev": true, "dependencies": { @@ -1832,9 +1766,133 @@ "dev": true }, "node_modules/@rushstack/eslint-patch": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.5.1.tgz", - "integrity": "sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.1.tgz", + "integrity": "sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==", + "dev": true + }, + "node_modules/@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "dev": true, + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "dev": true, + "dependencies": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/hub/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "dev": true, + "dependencies": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/minimal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/node": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-6.19.7.tgz", + "integrity": "sha512-gtmRC4dAXKODMpHXKfrkfvyBL3cI8y64vEi3fDD046uqYcrWdgoQsffuBbxMAizc6Ez1ia+f0Flue6p15Qaltg==", + "dev": true, + "dependencies": { + "@sentry/core": "6.19.7", + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "cookie": "^0.4.1", + "https-proxy-agent": "^5.0.0", + "lru_map": "^0.3.3", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/node/node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@sentry/node/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "dev": true, + "dependencies": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@sentry/utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, "node_modules/@sinclair/typebox": { @@ -1861,16 +1919,16 @@ } }, "node_modules/@tensorflow/tfjs": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-4.13.0.tgz", - "integrity": "sha512-yvjcNMt1q9CLUeOVwoNf0KyMg//fY9earGQGH91C+NcacOK4j0BJUJUqMolEJqfHIbmK2n2CIFmdvgA5epVPSA==", - "dependencies": { - "@tensorflow/tfjs-backend-cpu": "4.13.0", - "@tensorflow/tfjs-backend-webgl": "4.13.0", - "@tensorflow/tfjs-converter": "4.13.0", - "@tensorflow/tfjs-core": "4.13.0", - "@tensorflow/tfjs-data": "4.13.0", - "@tensorflow/tfjs-layers": "4.13.0", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-4.15.0.tgz", + "integrity": "sha512-SdhKYAx/UiMJuKYxf3aXMOuK4j+rwEGRNlwAMIYPYJAFMySdqZ7hC4ZV6mB8D4LAjkgk35y3zOJ/3MWamstKdg==", + "dependencies": { + "@tensorflow/tfjs-backend-cpu": "4.15.0", + "@tensorflow/tfjs-backend-webgl": "4.15.0", + "@tensorflow/tfjs-converter": "4.15.0", + "@tensorflow/tfjs-core": "4.15.0", + "@tensorflow/tfjs-data": "4.15.0", + "@tensorflow/tfjs-layers": "4.15.0", "argparse": "^1.0.10", "chalk": "^4.1.0", "core-js": "3.29.1", @@ -1882,9 +1940,9 @@ } }, "node_modules/@tensorflow/tfjs-backend-cpu": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-cpu/-/tfjs-backend-cpu-4.13.0.tgz", - "integrity": "sha512-k44G+2WZShxI2ejvQdsSQcicFMNWaccsf6bkI0R7dol9t9uj73yg7JkiT0U0uuJE6XwXymJgDe+KJVprg3fAgA==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-cpu/-/tfjs-backend-cpu-4.15.0.tgz", + "integrity": "sha512-w3ecwXOdp+usf0s8lkLVl7+hCkKJY5Fm4LxqJ2Oy5MeeMNbwka8fDt8xyW5gOf0/gAaeG3qMKkh0lo6rr9fRlw==", "dependencies": { "@types/seedrandom": "^2.4.28", "seedrandom": "^3.0.5" @@ -1893,15 +1951,15 @@ "yarn": ">= 1.3.2" }, "peerDependencies": { - "@tensorflow/tfjs-core": "4.13.0" + "@tensorflow/tfjs-core": "4.15.0" } }, "node_modules/@tensorflow/tfjs-backend-webgl": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-webgl/-/tfjs-backend-webgl-4.13.0.tgz", - "integrity": "sha512-UDwn6o70GyZaVxWdGWrWYJad2tUbxqgLtGfZI19j5EmM554PVsGLd+VHOqv4XodTviawuNq/GzqSdqhqsp8f5w==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-webgl/-/tfjs-backend-webgl-4.15.0.tgz", + "integrity": "sha512-FoOva3KjKvWVHAXWAW5Ojboz1IbM1K9i8ggNG7czJgE0La4JHMo814UHSoE6Rc0hkRoOpvDUa+FxsqYOBEhuzQ==", "dependencies": { - "@tensorflow/tfjs-backend-cpu": "4.13.0", + "@tensorflow/tfjs-backend-cpu": "4.15.0", "@types/offscreencanvas": "~2019.3.0", "@types/seedrandom": "^2.4.28", "seedrandom": "^3.0.5" @@ -1910,26 +1968,26 @@ "yarn": ">= 1.3.2" }, "peerDependencies": { - "@tensorflow/tfjs-core": "4.13.0" + "@tensorflow/tfjs-core": "4.15.0" } }, "node_modules/@tensorflow/tfjs-converter": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-4.13.0.tgz", - "integrity": "sha512-jA2/IigBXReZHS8Bo308HG7oVzsNPnPgSYfXneRXnxUz+WfcIPkJ6zp48KERZSPja8vOO5eNG4lsUkQpbtiyyw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-4.15.0.tgz", + "integrity": "sha512-694igyzRcJYf/l6F12l3Sz6hw0xPjihlxXEpIpypYieoq/8WBIoDgigMA/gv0NylkJSfPwwuYs7GF2/zKH2Tmg==", "peerDependencies": { - "@tensorflow/tfjs-core": "4.13.0" + "@tensorflow/tfjs-core": "4.15.0" } }, "node_modules/@tensorflow/tfjs-core": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-4.13.0.tgz", - "integrity": "sha512-vvz/kHakvv5Tppp2GDTUBA2/XkNmEkManbdsFEXfwVc5+rVMPEMsRFOjsKTy/TpDRd/4wsJBA99L4F7iG2tr/Q==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-4.15.0.tgz", + "integrity": "sha512-0D9olf5cdMNvJKpmY4yiN0Br1pabOyYDwRyBpl02/Hf6MxiOAi+pXqs/Xa1342g9H2CzqeL1oNxz7nRKa71GyA==", "dependencies": { "@types/long": "^4.0.1", "@types/offscreencanvas": "~2019.7.0", "@types/seedrandom": "^2.4.28", - "@webgpu/types": "0.1.30", + "@webgpu/types": "0.1.38", "long": "4.0.0", "node-fetch": "~2.6.1", "seedrandom": "^3.0.5" @@ -1944,33 +2002,63 @@ "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==" }, "node_modules/@tensorflow/tfjs-data": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-data/-/tfjs-data-4.13.0.tgz", - "integrity": "sha512-8FmvzGKBH3SJ3Y+vDTF/coFxD/FMh93YRZHxevNGE+nJcs3JK0grRbjSX3AAWb2GXtz2/o30BU0YL8bW8POuUA==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-data/-/tfjs-data-4.15.0.tgz", + "integrity": "sha512-9iDWloyW/tfw11UlVhsAan+ekfGDoPYg2yS5f+43ixdwbfe0jWc/azDhIXoJALMfe7TTLmbMsx3A64e43RoeOw==", "dependencies": { "@types/node-fetch": "^2.1.2", "node-fetch": "~2.6.1", "string_decoder": "^1.3.0" }, "peerDependencies": { - "@tensorflow/tfjs-core": "4.13.0", + "@tensorflow/tfjs-core": "4.15.0", "seedrandom": "^3.0.5" } }, "node_modules/@tensorflow/tfjs-layers": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-4.13.0.tgz", - "integrity": "sha512-YoBqtVTnE71h48+f89G6ZSYZMN+QsUMccopSxQC6XscncB6Gt1KwuWfpDc2Ld5JeubmUzKLqHdEP0jXIWxssJw==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-4.15.0.tgz", + "integrity": "sha512-PwIXB7UtGyKVmIcbonqdtArcBgva8DOxeZqklyvb/zfg17GpWeh2++eUHKSpAl5K0mdO5Y2pL4ssD9p6AQqk9w==", "peerDependencies": { - "@tensorflow/tfjs-core": "4.13.0" + "@tensorflow/tfjs-core": "4.15.0" } }, - "node_modules/@tensorflow/tfjs/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@tensorflow/tfjs/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { - "sprintf-js": "~1.0.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/@tensorflow/tfjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" } }, "node_modules/@tensorflow/tfjs/node_modules/regenerator-runtime": { @@ -1978,6 +2066,68 @@ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, + "node_modules/@tensorflow/tfjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tensorflow/tfjs/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" + } + }, "node_modules/@tootallnate/once": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", @@ -1987,6 +2137,12 @@ "node": ">= 10" } }, + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "dev": true + }, "node_modules/@ts-morph/common": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.11.1.tgz", @@ -2036,9 +2192,9 @@ "dev": true }, "node_modules/@types/blueimp-load-image": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@types/blueimp-load-image/-/blueimp-load-image-5.16.5.tgz", - "integrity": "sha512-0asWHHKjhpO4NIBlT51AiCDJH8k1WpkYl3TG7++/zFzG4y/D/TQCyR2RJrZ+b3cKV9E2Q6emZmchTgMsChQ9Uw==", + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/@types/blueimp-load-image/-/blueimp-load-image-5.16.6.tgz", + "integrity": "sha512-e7s6CdDCUoBQdCe62Q6OS+DF68M8+ABxCEMh2Isjt4Fl3xuddljCHMN8mak48AMSVGGwUUtNRaZbkzgL5PEWew==", "dev": true }, "node_modules/@types/estree": { @@ -2073,17 +2229,17 @@ "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" }, "node_modules/@types/node": { - "version": "20.9.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.9.2.tgz", - "integrity": "sha512-WHZXKFCEyIUJzAwh3NyyTHYSR35SevJ6mZ1nWwJafKtiQbqRTIKSRcw3Ma3acqgsent3RRDqeVwpHntMk+9irg==", + "version": "20.10.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.6.tgz", + "integrity": "sha512-Vac8H+NlRNNlAmDfGUP7b5h/KA+AtWIzuXy0E6OyP8f1tCLYAtPvKRRDJjAPqhpCb0t6U2j7/xqAuLEebW2kiw==", "dependencies": { "undici-types": "~5.26.4" } }, "node_modules/@types/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==", + "version": "2.6.10", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.10.tgz", + "integrity": "sha512-PPpPK6F9ALFTn59Ka3BaL+qGuipRfxNE8qVgkp0bVixeiR2c2/L+IVOiBdu9JhhT22sWnQEp6YyHGI2b2+CMcA==", "dependencies": { "@types/node": "*", "form-data": "^4.0.0" @@ -2103,20 +2259,17 @@ "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.3.0.tgz", "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==" }, - "node_modules/@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" - }, "node_modules/@types/prop-types": { "version": "15.7.11", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", - "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==", + "dev": true }, "node_modules/@types/react": { - "version": "18.2.37", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.37.tgz", - "integrity": "sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw==", + "version": "18.2.46", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz", + "integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==", + "dev": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -2124,42 +2277,45 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.15", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.15.tgz", - "integrity": "sha512-HWMdW+7r7MR5+PZqJF6YFNSCtjz1T0dsvo/f1BV6HkV+6erD/nA7wd9NM00KVG83zf2nJ7uATPO9ttdIPvi3gg==", + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, "dependencies": { "@types/react": "*" } }, - "node_modules/@types/react-transition-group": { - "version": "4.4.9", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.9.tgz", - "integrity": "sha512-ZVNmWumUIh5NhH8aMD9CR2hdW0fNuYInlocZHaZ+dgk/1K49j1w/HoAuK1ki+pgscQrOFRTlXeoURtuzEkV3dg==", - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/scheduler": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.7.tgz", - "integrity": "sha512-8g25Nl3AuB1KulTlSUsUhUo/oBgBU6XIXQ+XURpeioEbEJvkO7qI4vDfREv3vJYHHzqXjcAHvoJy4pTtSQNZtA==" + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", + "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==", + "dev": true }, "node_modules/@types/seedrandom": { "version": "2.4.34", "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.34.tgz", "integrity": "sha512-ytDiArvrn/3Xk6/vtylys5tlY6eo7Ane0hvcx++TKo6RxQXuVfW0AF/oeWqAj9dN29SyhtawuXstgmPlwNcv/A==" }, + "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==", + "dev": true, + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@typescript-eslint/parser": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.12.0.tgz", - "integrity": "sha512-s8/jNFPKPNRmXEnNXfuo1gemBdVmpQsK1pcu+QIvuNJuhFzGrpD7WjOcvDc/+uEdfzSYpNu7U/+MmbScjoQ6vg==", + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.16.0.tgz", + "integrity": "sha512-H2GM3eUo12HpKZU9njig3DF5zJ58ja6ahj1GoHEHOgQvYxzoFJJEvC1MQ7T2l9Ha+69ZSOn7RTxOdpC/y3ikMw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.12.0", - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/typescript-estree": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", + "@typescript-eslint/scope-manager": "6.16.0", + "@typescript-eslint/types": "6.16.0", + "@typescript-eslint/typescript-estree": "6.16.0", + "@typescript-eslint/visitor-keys": "6.16.0", "debug": "^4.3.4" }, "engines": { @@ -2179,13 +2335,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.12.0.tgz", - "integrity": "sha512-5gUvjg+XdSj8pcetdL9eXJzQNTl3RD7LgUiYTl8Aabdi8hFkaGSYnaS6BLc0BGNaDH+tVzVwmKtWvu0jLgWVbw==", + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.16.0.tgz", + "integrity": "sha512-0N7Y9DSPdaBQ3sqSCwlrm9zJwkpOuc6HYm7LpzLAPqBL7dmzAUimr4M29dMkOP/tEwvOCC/Cxo//yOfJD3HUiw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0" + "@typescript-eslint/types": "6.16.0", + "@typescript-eslint/visitor-keys": "6.16.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -2196,9 +2352,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.12.0.tgz", - "integrity": "sha512-MA16p/+WxM5JG/F3RTpRIcuOghWO30//VEOvzubM8zuOOBYXsP+IfjoCXXiIfy2Ta8FRh9+IO9QLlaFQUU+10Q==", + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.16.0.tgz", + "integrity": "sha512-hvDFpLEvTJoHutVl87+MG/c5C8I6LOgEx05zExTSJDEVU7hhR3jhV8M5zuggbdFCw98+HhZWPHZeKS97kS3JoQ==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -2209,16 +2365,17 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.12.0.tgz", - "integrity": "sha512-vw9E2P9+3UUWzhgjyyVczLWxZ3GuQNT7QpnIY3o5OMeLO/c8oHljGc8ZpryBMIyympiAAaKgw9e5Hl9dCWFOYw==", + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.16.0.tgz", + "integrity": "sha512-VTWZuixh/vr7nih6CfrdpmFNLEnoVBF1skfjdyGnNwXOH1SLeHItGdZDHhhAIzd3ACazyY2Fg76zuzOVTaknGA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", + "@typescript-eslint/types": "6.16.0", + "@typescript-eslint/visitor-keys": "6.16.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", + "minimatch": "9.0.3", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -2235,13 +2392,37 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.12.0.tgz", - "integrity": "sha512-rg3BizTZHF1k3ipn8gfrzDXXSFKyOEB5zxYXInQ6z0hUvmQlhaZQzK+YmHmNViMA9HzW5Q9+bPPt90bU6GQwyw==", + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.16.0.tgz", + "integrity": "sha512-QSFQLruk7fhs91a/Ep/LqRdbJCZ1Rq03rqBdKT5Ky17Sz8zRLUksqIe9DW0pKtg/Z35/ztbLQ6qpOCN6rOC11A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.12.0", + "@typescript-eslint/types": "6.16.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -2311,70 +2492,16 @@ "ms": "^2.1.1" } }, - "node_modules/@vercel/fun/node_modules/execa": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.2.0.tgz", - "integrity": "sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": "^8.12.0 || >=9.7.0" - } - }, - "node_modules/@vercel/fun/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==", + "node_modules/@vercel/fun/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vercel/fun/node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/@vercel/fun/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@vercel/fun/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, "engines": { - "node": ">=6" + "node": ">=10" } }, "node_modules/@vercel/fun/node_modules/ms": { @@ -2403,33 +2530,6 @@ } } }, - "node_modules/@vercel/fun/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@vercel/fun/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@vercel/fun/node_modules/semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -2445,15 +2545,22 @@ "node": ">=10" } }, - "node_modules/@vercel/fun/node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "node_modules/@vercel/fun/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "dev": true, - "engines": { - "node": ">=6" + "bin": { + "uuid": "bin/uuid" } }, + "node_modules/@vercel/fun/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/@vercel/gatsby-plugin-vercel-analytics": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@vercel/gatsby-plugin-vercel-analytics/-/gatsby-plugin-vercel-analytics-1.0.11.tgz", @@ -3349,6 +3456,12 @@ } } }, + "node_modules/@vercel/node/node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "dev": true + }, "node_modules/@vercel/node/node_modules/typescript": { "version": "4.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", @@ -3481,13 +3594,14 @@ "dev": true }, "node_modules/@vue/compiler-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", - "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.3.tgz", + "integrity": "sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==", "peer": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.3", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } @@ -3499,30 +3613,29 @@ "peer": true }, "node_modules/@vue/compiler-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", - "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.3.tgz", + "integrity": "sha512-oGF1E9/htI6JWj/lTJgr6UgxNCtNHbM6xKVreBWeZL9QhRGABRVoWGAzxmtBfSOd+w0Zi5BY0Es/tlJrN6WgEg==", "peer": true, "dependencies": { - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/compiler-core": "3.4.3", + "@vue/shared": "3.4.3" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", - "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.3.tgz", + "integrity": "sha512-NuJqb5is9I4uzv316VRUDYgIlPZCG8D+ARt5P4t5UDShIHKL25J3TGZAUryY/Aiy0DsY7srJnZL5ryB6DD63Zw==", "peer": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-ssr": "3.3.8", - "@vue/reactivity-transform": "3.3.8", - "@vue/shared": "3.3.8", + "@babel/parser": "^7.23.6", + "@vue/compiler-core": "3.4.3", + "@vue/compiler-dom": "3.4.3", + "@vue/compiler-ssr": "3.4.3", + "@vue/shared": "3.4.3", "estree-walker": "^2.0.2", "magic-string": "^0.30.5", - "postcss": "^8.4.31", + "postcss": "^8.4.32", "source-map-js": "^1.0.2" } }, @@ -3532,88 +3645,115 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "peer": true }, - "node_modules/@vue/compiler-ssr": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", - "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", + "node_modules/@vue/compiler-sfc/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "peer": true, - "dependencies": { - "@vue/compiler-dom": "3.3.8", - "@vue/shared": "3.3.8" + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/@vue/reactivity": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.8.tgz", - "integrity": "sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==", + "node_modules/@vue/compiler-sfc/node_modules/postcss": { + "version": "8.4.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", + "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "peer": true, "dependencies": { - "@vue/shared": "3.3.8" + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", - "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", + "node_modules/@vue/compiler-ssr": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.3.tgz", + "integrity": "sha512-wnYQtMBkeFSxgSSQbYGQeXPhQacQiog2c6AlvMldQH6DB+gSXK/0F6DVXAJfEiuBSgBhUc8dwrrG5JQcqwalsA==", "peer": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" + "@vue/compiler-dom": "3.4.3", + "@vue/shared": "3.4.3" } }, - "node_modules/@vue/reactivity-transform/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "peer": true + "node_modules/@vue/reactivity": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.3.tgz", + "integrity": "sha512-q5f9HLDU+5aBKizXHAx0w4whkIANs1Muiq9R5YXm0HtorSlflqv9u/ohaMxuuhHWCji4xqpQ1eL04WvmAmGnFg==", + "peer": true, + "dependencies": { + "@vue/shared": "3.4.3" + } }, "node_modules/@vue/runtime-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.8.tgz", - "integrity": "sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.3.tgz", + "integrity": "sha512-C1r6QhB1qY7D591RCSFhMULyzL9CuyrGc+3PpB0h7dU4Qqw6GNyo4BNFjHZVvsWncrUlKX3DIKg0Y7rNNr06NQ==", "peer": true, "dependencies": { - "@vue/reactivity": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/reactivity": "3.4.3", + "@vue/shared": "3.4.3" } }, "node_modules/@vue/runtime-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.8.tgz", - "integrity": "sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.3.tgz", + "integrity": "sha512-wrsprg7An5Ec+EhPngWdPuzkp0BEUxAKaQtN9dPU/iZctPyD9aaXmVtehPJerdQxQale6gEnhpnfywNw3zOv2A==", "peer": true, "dependencies": { - "@vue/runtime-core": "3.3.8", - "@vue/shared": "3.3.8", - "csstype": "^3.1.2" + "@vue/runtime-core": "3.4.3", + "@vue/shared": "3.4.3", + "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.8.tgz", - "integrity": "sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.3.tgz", + "integrity": "sha512-BUxt8oVGMKKsqSkM1uU3d3Houyfy4WAc2SpSQRebNd+XJGATVkW/rO129jkyL+kpB/2VRKzE63zwf5RtJ3XuZw==", "peer": true, "dependencies": { - "@vue/compiler-ssr": "3.3.8", - "@vue/shared": "3.3.8" + "@vue/compiler-ssr": "3.4.3", + "@vue/shared": "3.4.3" }, "peerDependencies": { - "vue": "3.3.8" + "vue": "3.4.3" } }, "node_modules/@vue/shared": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", - "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.3.tgz", + "integrity": "sha512-rIwlkkP1n4uKrRzivAKPZIEkHiuwY5mmhMJ2nZKCBLz8lTUlE73rQh4n1OnnMurXt1vcUNyH4ZPfdh8QweTjpQ==", "peer": true }, "node_modules/@webgpu/types": { - "version": "0.1.30", - "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.30.tgz", - "integrity": "sha512-9AXJSmL3MzY8ZL//JjudA//q+2kBRGhLBFpkdGksWIuxrMy81nFrCzj2Am+mbh8WoU6rXmv7cY5E3rdlyru2Qg==" + "version": "0.1.38", + "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.38.tgz", + "integrity": "sha512-7LrhVKz2PRh+DD7+S+PVaFd5HxaWQvoMqBbsV9fNJO1pjUs1P8bM2vQVNfk+3URTqbuTI7gkXi0rfsN0IadoBA==" }, "node_modules/abbrev": { "version": "1.1.1", @@ -3632,10 +3772,23 @@ "node": ">=6.5" } }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -3685,9 +3838,9 @@ } }, "node_modules/ai": { - "version": "2.2.25", - "resolved": "https://registry.npmjs.org/ai/-/ai-2.2.25.tgz", - "integrity": "sha512-iXu3pzPpDPBGDir8hz86FAJmJTynMfBH4V/DXyR3GGeaHOfjdrErlcMm862CSalR6PDMwDOSCQVwJqtdnvIncQ==", + "version": "2.2.30", + "resolved": "https://registry.npmjs.org/ai/-/ai-2.2.30.tgz", + "integrity": "sha512-7dRgnEbYkbVjxyjiS7WEhNvO8ebeI4Om74D9OKXLK0yis4+s272pJ5I3vOAv3HaUBbVEiIFYQ7E34JH8XT1EeQ==", "dependencies": { "eventsource-parser": "1.0.0", "nanoid": "3.3.6", @@ -3721,23 +3874,6 @@ } } }, - "node_modules/ai/node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -3754,6 +3890,24 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", @@ -3786,7 +3940,7 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, + "devOptional": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -3821,10 +3975,12 @@ "dev": true }, "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } }, "node_modules/aria-query": { "version": "5.3.0", @@ -3847,6 +4003,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, "node_modules/array-includes": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", @@ -3991,6 +4153,16 @@ "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", "dev": true }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, "node_modules/async-listen": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/async-listen/-/async-listen-1.2.0.tgz", @@ -4052,20 +4224,6 @@ "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", "dev": true }, - "node_modules/babel-plugin-macros": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", - "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">=10", - "npm": ">=6" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -4097,20 +4255,20 @@ } ] }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "node_modules/basic-ftp": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.4.tgz", + "integrity": "sha512-8PzkB0arJFV4jJWSGOYR+OEic6aeKMu/osRhBULN6RY0ykby6LKhbmuQ5ublvaas5BOwboah5D87nrHyuh8PPA==", "dev": true, "engines": { - "node": ">=0.6" + "node": ">=10.0.0" } }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, + "devOptional": true, "engines": { "node": ">=8" } @@ -4141,33 +4299,69 @@ "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", "dev": true }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", "dev": true, "dependencies": { - "big-integer": "^1.6.44" + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 5.10.0" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, "node_modules/braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, + "devOptional": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -4214,21 +4408,6 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, - "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", - "dev": true, - "dependencies": { - "run-applescript": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/busboy": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", @@ -4241,9 +4420,9 @@ } }, "node_modules/bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "dev": true, "engines": { "node": ">= 0.8" @@ -4267,14 +4446,24 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, "engines": { "node": ">=6" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001563", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", - "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==", + "version": "1.0.30001572", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001572.tgz", + "integrity": "sha512-1Pbh5FLmn5y4+QhNyJE9j3/7dK44dGB83/ZMjv/qJk86TvDbjk0LosiZo0i0WB0Vx607qMX9jYrn1VLHCkN4rw==", "funding": [ { "type": "opencollective", @@ -4301,20 +4490,23 @@ } }, "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, "node_modules/charenc": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", @@ -4327,7 +4519,7 @@ "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, + "devOptional": true, "funding": [ { "type": "individual", @@ -4350,22 +4542,64 @@ "fsevents": "~2.3.2" } }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "node_modules/chrome-launcher": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.13.4.tgz", + "integrity": "sha512-nnzXiDbGKjDSK6t2I+35OAPBy5Pw/39bgkb/ZAFwMhwJbdYBp6aH+vW28ZgtjdU890Q7D+3wN/tB8N66q5Gi2A==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "@types/node": "*", + "escape-string-regexp": "^1.0.5", + "is-wsl": "^2.2.0", + "lighthouse-logger": "^1.0.0", + "mkdirp": "^0.5.3", + "rimraf": "^3.0.2" + } + }, + "node_modules/chrome-launcher/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chromium-bidi": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.5.1.tgz", + "integrity": "sha512-dcCqOgq9fHKExc2R4JZs/oKbOghWpUNFAJODS8WKRtLhp3avtIH5UDCBrutdqZdh3pARogH8y1ObXm87emwb3g==", + "dev": true, + "dependencies": { + "mitt": "3.0.1", + "urlpattern-polyfill": "9.0.0" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "dev": true, + "dependencies": { + "restore-cursor": "^2.0.0" }, "engines": { - "node": ">= 6" + "node": ">=4" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "node_modules/cli-width": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", "dev": true }, "node_modules/client-only": { @@ -4374,21 +4608,43 @@ "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "wrap-ansi": "^6.2.0" } }, - "node_modules/clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==", + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { - "node": ">=6" + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, "node_modules/code-block-writer": { @@ -4458,6 +4714,13 @@ "color-support": "bin.js" } }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true, + "peer": true + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -4487,22 +4750,116 @@ "node": ">= 12.0.0" } }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "dev": true }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, "engines": { "node": ">= 0.6" @@ -4517,11 +4874,6 @@ "node": ">=8" } }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, "node_modules/cookie": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", @@ -4531,6 +4883,12 @@ "node": ">= 0.6" } }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, "node_modules/core-js": { "version": "3.29.1", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.1.tgz", @@ -4541,27 +4899,21 @@ "url": "https://opencollective.com/core-js" } }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", "dev": true }, + "node_modules/cross-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.12" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -4584,6 +4936,31 @@ "node": "*" } }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/csp_evaluator": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/csp_evaluator/-/csp_evaluator-1.1.1.tgz", + "integrity": "sha512-N3ASg0C4kNPUaNxt1XAvzHIVuzdtr8KLgfk1O8WDyimp1GisPAHESupArO2ieHk9QWbrJ/WkQODyh21Ps/xhxw==", + "dev": true + }, + "node_modules/css-functions-list": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.1.tgz", + "integrity": "sha512-Nj5YcaGgBtuUmn1D7oHqPW0c9iui7xsTsj5lIX8ZgevdfhmjFfKB3r8moHJtNJnctnYXJyYX5I1pp90HM4TPgQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12 || >=16" + } + }, "node_modules/css-tree": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", @@ -4597,10 +4974,23 @@ "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "peer": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "node_modules/damerau-levenshtein": { "version": "1.0.8", @@ -4609,10 +4999,13 @@ "dev": true }, "node_modules/data-uri-to-buffer": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", - "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==", - "dev": true + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.1.tgz", + "integrity": "sha512-MZd3VlchQkp8rdend6vrx7MmVDJzSNTBvghvKjirLkD+WTChA3KUf0jkE68Q4UyctNqI11zZO9/x2Yx+ub5Cvg==", + "dev": true, + "engines": { + "node": ">= 14" + } }, "node_modules/debug": { "version": "4.3.4", @@ -4631,6 +5024,15 @@ } } }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/decompress-response": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", @@ -4661,44 +5063,10 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dev": true, - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dev": true, - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", "dev": true, "dependencies": { "get-intrinsic": "^1.2.1", @@ -4710,15 +5078,12 @@ } }, "node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/define-properties": { @@ -4738,6 +5103,32 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "dev": true, + "dependencies": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/degenerator/node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dev": true, + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -4753,12 +5144,12 @@ "dev": true }, "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/dequal": { @@ -4769,6 +5160,16 @@ "node": ">=6" } }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, "node_modules/detect-libc": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", @@ -4778,6 +5179,12 @@ "node": ">=8" } }, + "node_modules/devtools-protocol": { + "version": "0.0.1211954", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1211954.tgz", + "integrity": "sha512-f6BRhngr9wpHN8omZOoSaEJFscTL+tjNhmeBqHHC3CZ3K2N75sDeKXZeTkAEkTCcrusDatfwjRRBh0uz4ov/sA==", + "dev": true + }, "node_modules/diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -4820,15 +5227,25 @@ "node": ">=6.0.0" } }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "peer": true + }, "node_modules/edge-runtime": { "version": "2.5.7", "resolved": "https://registry.npmjs.org/edge-runtime/-/edge-runtime-2.5.7.tgz", @@ -4873,12 +5290,27 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "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", @@ -4901,19 +5333,51 @@ "node": ">=10.13.0" } }, + "node_modules/enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "peer": true, "dependencies": { "is-arrayish": "^0.2.1" } }, - "node_modules/error-ex/node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, "node_modules/es-abstract": { "version": "1.22.3", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", @@ -5030,9 +5494,9 @@ } }, "node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz", + "integrity": "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==", "dev": true, "hasInstallScript": true, "bin": { @@ -5042,28 +5506,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" + "@esbuild/android-arm": "0.15.18", + "@esbuild/linux-loong64": "0.15.18", + "esbuild-android-64": "0.15.18", + "esbuild-android-arm64": "0.15.18", + "esbuild-darwin-64": "0.15.18", + "esbuild-darwin-arm64": "0.15.18", + "esbuild-freebsd-64": "0.15.18", + "esbuild-freebsd-arm64": "0.15.18", + "esbuild-linux-32": "0.15.18", + "esbuild-linux-64": "0.15.18", + "esbuild-linux-arm": "0.15.18", + "esbuild-linux-arm64": "0.15.18", + "esbuild-linux-mips64le": "0.15.18", + "esbuild-linux-ppc64le": "0.15.18", + "esbuild-linux-riscv64": "0.15.18", + "esbuild-linux-s390x": "0.15.18", + "esbuild-netbsd-64": "0.15.18", + "esbuild-openbsd-64": "0.15.18", + "esbuild-sunos-64": "0.15.18", + "esbuild-windows-32": "0.15.18", + "esbuild-windows-64": "0.15.18", + "esbuild-windows-arm64": "0.15.18" } }, "node_modules/esbuild-android-64": { @@ -5394,10 +5858,17 @@ "node": ">=6" } }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, "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==", + "dev": true, "engines": { "node": ">=10" }, @@ -5405,16 +5876,47 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/eslint": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", - "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.54.0", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5487,9 +5989,9 @@ } }, "node_modules/eslint-config-prettier": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", - "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" @@ -5570,9 +6072,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", - "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dev": true, "dependencies": { "array-includes": "^3.1.7", @@ -5591,7 +6093,7 @@ "object.groupby": "^1.0.1", "object.values": "^1.1.7", "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" + "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" @@ -5661,9 +6163,9 @@ } }, "node_modules/eslint-plugin-next-on-pages": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-next-on-pages/-/eslint-plugin-next-on-pages-1.8.2.tgz", - "integrity": "sha512-NoZ8XlSQF2IUBF40OUPc8V995ywMOBUlVbuCue1xmjViOaXqS/xgZVB5ZnQc/5m2WxhUvIU44t9JqNpvxE5DZA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-next-on-pages/-/eslint-plugin-next-on-pages-1.8.3.tgz", + "integrity": "sha512-OT8JXKMlVdWHIFaBorHtMzniT6K//EQn4bt/pZ2jdeRmGMdAhwrJkO0kHqyWlkZRrxvKlkX/N1O+p/GYXDwMCg==", "dev": true, "dependencies": { "@types/estree-jsx": "^1.0.0", @@ -5674,23 +6176,24 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", - "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.2.tgz", + "integrity": "sha512-dhlpWc9vOwohcWmClFcA+HjlvUpuyynYs0Rf+L/P6/0iQE6vlHW9l5bkfzN62/Stm9fbq8ku46qzde76T1xlSg==", "dev": true, "dependencies": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.5" + "synckit": "^0.8.6" }, "engines": { "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/prettier" + "url": "https://opencollective.com/eslint-plugin-prettier" }, "peerDependencies": { "@types/eslint": ">=8.0.0", "eslint": ">=8.0.0", + "eslint-config-prettier": "*", "prettier": ">=3.0.0" }, "peerDependenciesMeta": { @@ -5810,6 +6313,34 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -5827,6 +6358,19 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/esquery": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", @@ -5910,26 +6454,48 @@ } }, "node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-3.2.0.tgz", + "integrity": "sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "p-finally": "^2.0.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": "^8.12.0 || >=9.7.0" + } + }, + "node_modules/execa/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/execa/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" }, "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + "node": ">=6" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/exit-hook": { @@ -5953,7 +6519,130 @@ "node": ">=6" } }, - "node_modules/fast-deep-equal": { + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/external-editor/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "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==", + "dev": true, + "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/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", @@ -5987,18 +6676,6 @@ "node": ">=8.6.0" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -6011,10 +6688,20 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4.9.1" + } + }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", + "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -6029,6 +6716,27 @@ "pend": "~1.2.0" } }, + "node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.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", @@ -6051,7 +6759,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, + "devOptional": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -6059,10 +6767,38 @@ "node": ">=8" } }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "node_modules/find-up": { "version": "5.0.0", @@ -6109,6 +6845,36 @@ "is-callable": "^1.1.3" } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "peer": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/form-data": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", @@ -6147,6 +6913,24 @@ "node": ">= 14" } }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", @@ -6200,6 +6984,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -6251,6 +7036,35 @@ "node": ">=10" } }, + "node_modules/gauge/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/gauge/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/gauge/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/generic-pool": { "version": "3.4.2", "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.4.2.tgz", @@ -6293,13 +7107,31 @@ "source-map": "^0.6.1" } }, + "node_modules/get-source/node_modules/data-uri-to-buffer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", + "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==", + "dev": true + }, + "node_modules/get-source/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6333,6 +7165,21 @@ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, + "node_modules/get-uri": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.2.tgz", + "integrity": "sha512-5KLucCJobh8vBY1K07EFV4+cPZH3mrV9YeAruUseCQKHB58SGjjT2l9/eA9LD082IiuMjSlFJEcdJ27TXvbZNw==", + "dev": true, + "dependencies": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^6.0.0", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/github-from-package": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", @@ -6360,15 +7207,15 @@ } }, "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "devOptional": true, "dependencies": { - "is-glob": "^4.0.3" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=10.13.0" + "node": ">= 6" } }, "node_modules/glob-to-regexp": { @@ -6376,10 +7223,51 @@ "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-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "peer": true, + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "peer": true, + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -6426,6 +7314,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true, + "peer": true + }, "node_modules/gopd": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", @@ -6527,6 +7422,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, "dependencies": { "function-bind": "^1.1.2" }, @@ -6534,32 +7430,68 @@ "node": ">= 0.4" } }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dependencies": { - "react-is": "^16.7.0" + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/http-errors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.4.0.tgz", - "integrity": "sha512-oLjPqve1tuOl5aRhv8GK5eHpqP1C9fb+Ol+XTLjKfLltE44zdDbEdjPSbU7Ch5rSNsVFqZn97SrMmZLdu1/YMw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "dependencies": { - "inherits": "2.0.1", - "statuses": ">= 1.2.1 < 2" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, - "node_modules/http-errors/node_modules/inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", - "dev": true + "node_modules/http-link-header": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-link-header/-/http-link-header-1.1.1.tgz", + "integrity": "sha512-mW3N/rTYpCn99s1do0zx6nzFZSwLH9HGfUM4ZqLWJ16ylmYaC2v5eYGqrNTQlByx8AzUgGI+V/32gXPugs1+Sw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } }, "node_modules/https-proxy-agent": { "version": "5.0.1", @@ -6575,12 +7507,12 @@ } }, "node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", "dev": true, "engines": { - "node": ">=14.18.0" + "node": ">=8.12.0" } }, "node_modules/humanize-ms": { @@ -6632,10 +7564,23 @@ "node": ">= 4" } }, + "node_modules/image-ssim": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/image-ssim/-/image-ssim-0.2.0.tgz", + "integrity": "sha512-W7+sO6/yhxy83L0G7xR8YAc5Z5QFtYEXXRV6EaE8tuYBZJnA3gVgp3q7X7muhLZVodeb9UfvjSbwt9VJwjIYAg==", + "dev": true + }, + "node_modules/immutable": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.4.tgz", + "integrity": "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==", + "devOptional": true + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -6678,6 +7623,122 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, + "node_modules/inquirer": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/inquirer/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/internal-slot": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", @@ -6692,6 +7753,33 @@ "node": ">= 0.4" } }, + "node_modules/intl-messageformat": { + "version": "10.5.8", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.8.tgz", + "integrity": "sha512-NRf0jpBWV0vd671G5b06wNofAN8tp7WWDogMZyaU8GUAsmbouyvgwmFJI7zLjfAMpm3zK+vSwRP3jzaoIcMbaA==", + "dev": true, + "dependencies": { + "@formatjs/ecma402-abstract": "1.18.0", + "@formatjs/fast-memoize": "2.2.0", + "@formatjs/icu-messageformat-parser": "2.7.3", + "tslib": "^2.4.0" + } + }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/is-array-buffer": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", @@ -6707,10 +7795,11 @@ } }, "node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "dev": true + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "peer": true }, "node_modules/is-async-function": { "version": "2.0.0", @@ -6743,7 +7832,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, + "devOptional": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -6788,6 +7877,7 @@ "version": "2.13.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, "dependencies": { "hasown": "^2.0.0" }, @@ -6811,15 +7901,15 @@ } }, "node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, "bin": { "is-docker": "cli.js" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -6829,7 +7919,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.10.0" } @@ -6847,11 +7937,12 @@ } }, "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "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==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/is-generator-function": { @@ -6873,7 +7964,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, + "devOptional": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -6881,24 +7972,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dev": true, - "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", @@ -6924,7 +7997,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.12.0" } @@ -6944,6 +8017,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -6953,6 +8035,16 @@ "node": ">=8" } }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-reference": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", @@ -7000,12 +8092,12 @@ } }, "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7056,6 +8148,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, "node_modules/is-weakmap": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", @@ -7102,21 +8200,6 @@ "node": ">=8" } }, - "node_modules/is-wsl/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -7129,6 +8212,16 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, "node_modules/iterator.prototype": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", @@ -7142,6 +8235,40 @@ "set-function-name": "^2.0.1" } }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "peer": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jpeg-js": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", + "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==", + "dev": true + }, + "node_modules/js-library-detector": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/js-library-detector/-/js-library-detector-6.7.0.tgz", + "integrity": "sha512-c80Qupofp43y4cJ7+8TTDN/AsDwLi5oOm/plBrWI+iQt485vKXCco+yVmOwEgdo9VOdsYTuV0UlTeetVPTriXA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -7159,6 +8286,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, "node_modules/json-buffer": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", @@ -7168,7 +8301,9 @@ "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", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true }, "node_modules/json-schema-to-ts": { "version": "1.6.4", @@ -7237,13 +8372,30 @@ "json-buffer": "3.0.1" } }, - "node_modules/language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", - "dev": true - }, - "node_modules/language-tags": { + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/known-css-properties": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.29.0.tgz", + "integrity": "sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==", + "dev": true, + "peer": true + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true + }, + "node_modules/language-tags": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", @@ -7268,10 +8420,261 @@ "node": ">= 0.8.0" } }, + "node_modules/lighthouse": { + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-11.4.0.tgz", + "integrity": "sha512-NmGBIdLznIBTfla566gpNPdbascVA0uWFG2LyuRQPeMT06ai3QxzDqSpaR5dToDuEQIPkyU0qqxwHj8kst8x+g==", + "dev": true, + "dependencies": { + "@sentry/node": "^6.17.4", + "axe-core": "^4.8.1", + "chrome-launcher": "^1.1.0", + "configstore": "^5.0.1", + "csp_evaluator": "1.1.1", + "devtools-protocol": "0.0.1211954", + "enquirer": "^2.3.6", + "http-link-header": "^1.1.1", + "intl-messageformat": "^10.5.3", + "jpeg-js": "^0.4.4", + "js-library-detector": "^6.7.0", + "lighthouse-logger": "^2.0.1", + "lighthouse-stack-packs": "1.12.1", + "lodash": "^4.17.21", + "lookup-closest-locale": "6.2.0", + "metaviewport-parser": "0.3.0", + "open": "^8.4.0", + "parse-cache-control": "1.0.1", + "ps-list": "^8.0.0", + "puppeteer-core": "^21.5.2", + "robots-parser": "^3.0.1", + "semver": "^5.3.0", + "speedline-core": "^1.4.3", + "third-party-web": "^0.24.1", + "tldts-icann": "^6.1.0", + "ws": "^7.0.0", + "yargs": "^17.3.1", + "yargs-parser": "^21.0.0" + }, + "bin": { + "chrome-debug": "core/scripts/manual-chrome-launcher.js", + "lighthouse": "cli/index.js", + "smokehouse": "cli/test/smokehouse/frontends/smokehouse-bin.js" + }, + "engines": { + "node": ">=18.16" + } + }, + "node_modules/lighthouse-logger": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.2.0.tgz", + "integrity": "sha512-wzUvdIeJZhRsG6gpZfmSCfysaxNEr43i+QT+Hie94wvHDKFLi4n7C2GqZ4sTC+PH5b5iktmXJvU87rWvhP3lHw==", + "dev": true, + "dependencies": { + "debug": "^2.6.8", + "marky": "^1.2.0" + } + }, + "node_modules/lighthouse-logger/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/lighthouse-logger/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/lighthouse-stack-packs": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/lighthouse-stack-packs/-/lighthouse-stack-packs-1.12.1.tgz", + "integrity": "sha512-i4jTmg7tvZQFwNFiwB+nCK6a7ICR68Xcwo+VIVd6Spi71vBNFUlds5HiDrSbClZdkQDON2Bhqv+KKJIo5zkPeA==", + "dev": true + }, + "node_modules/lighthouse/node_modules/axe-core": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.3.tgz", + "integrity": "sha512-d5ZQHPSPkF9Tw+yfyDcRoUOc4g/8UloJJe5J8m4L5+c7AtDdjDLRxew/knnI4CxvtdxEUVgWz4x3OIQUIFiMfw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/lighthouse/node_modules/chrome-launcher": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.1.0.tgz", + "integrity": "sha512-rJYWeEAERwWIr3c3mEVXwNiODPEdMRlRxHc47B1qHPOolHZnkj7rMv1QSUfPoG6MgatWj5AxSpnKKR4QEwEQIQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "escape-string-regexp": "^4.0.0", + "is-wsl": "^2.2.0", + "lighthouse-logger": "^2.0.1" + }, + "bin": { + "print-chrome-path": "bin/print-chrome-path.js" + }, + "engines": { + "node": ">=12.13.0" + } + }, + "node_modules/lighthouse/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/lighthouse/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/lighthouse/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/lighthouse/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lighthouse/node_modules/lighthouse-logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-2.0.1.tgz", + "integrity": "sha512-ioBrW3s2i97noEmnXxmUq7cjIcVRjT5HBpAYy8zE11CxU9HqlWHHeRxfeN1tn8F7OEMVPIC9x1f8t3Z7US9ehQ==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "marky": "^1.2.2" + } + }, + "node_modules/lighthouse/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/lighthouse/node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lighthouse/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/lighthouse/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lighthouse/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/lighthouse/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/lighthouse/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/lighthouse/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "peer": true }, "node_modules/locate-character": { "version": "3.0.0", @@ -7294,17 +8697,36 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "dev": true, + "peer": true + }, "node_modules/long": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" }, + "node_modules/lookup-closest-locale": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/lookup-closest-locale/-/lookup-closest-locale-6.2.0.tgz", + "integrity": "sha512-/c2kL+Vnp1jnV6K6RpDTHK3dgg0Tu2VVp+elEiJpjfS1UyY7AjOYHohRug6wT0OpoX2qFgNORndE9RqesfVxWQ==", + "dev": true + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -7316,16 +8738,19 @@ "loose-envify": "cli.js" } }, + "node_modules/lru_map": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", + "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", + "dev": true + }, "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/magic-string": { @@ -7370,6 +8795,23 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/marky": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", + "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", + "dev": true + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true, + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/md5": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", @@ -7386,6 +8828,34 @@ "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", "peer": true }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/meow": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.0.0.tgz", + "integrity": "sha512-4Hu+75Vo7EOR+8C9RmkabfLijuwd9SrzQ8f0SyC4qZZwU6BlxeOt5ulF3PGCpcMJX4hI+ktpJhea0P6PN1RiWw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -7401,6 +8871,21 @@ "node": ">= 8" } }, + "node_modules/metaviewport-parser": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/metaviewport-parser/-/metaviewport-parser-0.3.0.tgz", + "integrity": "sha512-EoYJ8xfjQ6kpe9VbVHvZTZHiOl4HL1Z18CrZ+qahvLXT7ZO4YTC2JMyt5FaUp9JJp6J4Ybb/z7IsCXZt86/QkQ==", + "dev": true + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/micro": { "version": "9.3.5-canary.3", "resolved": "https://registry.npmjs.org/micro/-/micro-9.3.5-canary.3.tgz", @@ -7418,60 +8903,139 @@ "node": ">= 8.0.0" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/micro/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, "engines": { - "node": ">=8.6" + "node": ">= 0.8" } }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "node_modules/micro/node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "engines": { "node": ">= 0.6" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, + "node_modules/micro/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, "engines": { "node": ">= 0.6" } }, - "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "node_modules/micro/node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, "engines": { - "node": ">=12" + "node": ">= 0.6" + } + }, + "node_modules/micro/node_modules/raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/micro/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/micro/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micro/node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true, + "engines": { + "node": ">=4" } }, "node_modules/mimic-response": { @@ -7512,6 +9076,27 @@ "node": ">=16.13" } }, + "node_modules/miniflare/node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -7543,12 +9128,6 @@ "yallist": "^3.0.0" } }, - "node_modules/minipass/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, "node_modules/minizlib": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", @@ -7558,6 +9137,12 @@ "minipass": "^2.9.0" } }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, "node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -7599,10 +9184,16 @@ "mustache": "bin/mustache" } }, + "node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==", + "dev": true + }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", "funding": [ { "type": "github", @@ -7628,6 +9219,24 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, "node_modules/next": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/next/-/next-14.0.3.tgz", @@ -7674,9 +9283,9 @@ } }, "node_modules/node-abi": { - "version": "3.51.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.51.0.tgz", - "integrity": "sha512-SQkEP4hmNWjlniS5zdnfIXTk1x7Ome85RDzHlTbBtzE97Gfwz/Ipw4v/Ryk20DWIy3yCNVLVlGKApCnmvYoJbA==", + "version": "3.52.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.52.0.tgz", + "integrity": "sha512-JJ98b02z16ILv7859irtXn4oUaFWADtvkzy2c0IAatNVX2Mc9Yoh8z6hZInn3QwvMEYhHuQloYi+TTQy67SIdQ==", "dev": true, "dependencies": { "semver": "^7.3.5" @@ -7767,36 +9376,21 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, + "devOptional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "path-key": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/npmlog": { @@ -7815,6 +9409,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -7838,13 +9433,13 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -7928,6 +9523,27 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -7938,42 +9554,37 @@ } }, "node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", "dev": true, "dependencies": { - "mimic-fn": "^4.0.0" + "mimic-fn": "^1.0.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", "dev": true, "dependencies": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" }, "engines": { - "node": ">=14.16" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/openai": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.19.1.tgz", - "integrity": "sha512-9TddzuZBn2xxhghGGTHLZ4EeNBGTLs3xVzh266NiSJvtUsCsZQ5yVV6H5NhnhyAkKK8uUiZOUUlUAk3HdV+4xg==", + "version": "4.24.1", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.24.1.tgz", + "integrity": "sha512-ezm/O3eiZMnyBqirUnWm9N6INJU1WhNtz+nK/Zj/2oyKvRz9pgpViDxa5wYOtyGYXPn1sIKBV0I/S4BDhtydqw==", "dependencies": { "@types/node": "^18.11.18", "@types/node-fetch": "^2.6.4", @@ -7990,9 +9601,9 @@ } }, "node_modules/openai/node_modules/@types/node": { - "version": "18.18.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.11.tgz", - "integrity": "sha512-c1vku6qnTeujJneYH94/4aq73XrVcsJe35UPyAsSok1ijiKrkRzK+AxQPSpNMUnC03roWBBwJx/9I8V7lQoxmA==", + "version": "18.19.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.4.tgz", + "integrity": "sha512-xNzlUhzoHotIsnFoXmJB+yWmBvFZgKCI9TtPIEdYIMM1KWfwuY8zh7wvc1u1OAXlC7dlf6mZVx/s+Y5KfFz19A==", "dependencies": { "undici-types": "~5.26.4" } @@ -8023,6 +9634,15 @@ "node": ">= 6.0" } }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/p-finally": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", @@ -8062,6 +9682,73 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pac-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", + "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "dev": true, + "dependencies": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-resolver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.0.tgz", + "integrity": "sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg==", + "dev": true, + "dependencies": { + "degenerator": "^5.0.0", + "ip": "^1.1.8", + "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/package-manager-manager": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/package-manager-manager/-/package-manager-manager-0.2.0.tgz", @@ -8076,6 +9763,7 @@ "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==", + "dev": true, "dependencies": { "callsites": "^3.0.0" }, @@ -8083,10 +9771,18 @@ "node": ">=6" } }, + "node_modules/parse-cache-control": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", + "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", + "dev": true + }, "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==", + "dev": true, + "peer": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -8109,6 +9805,15 @@ "node": ">=6" } }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -8152,14 +9857,33 @@ "path-to-regexp": "^1.0.0" } }, - "node_modules/path-match/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "node_modules/path-match/node_modules/path-to-regexp": { - "version": "1.8.0", + "node_modules/path-match/node_modules/http-errors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.4.0.tgz", + "integrity": "sha512-oLjPqve1tuOl5aRhv8GK5eHpqP1C9fb+Ol+XTLjKfLltE44zdDbEdjPSbU7Ch5rSNsVFqZn97SrMmZLdu1/YMw==", + "dev": true, + "dependencies": { + "inherits": "2.0.1", + "statuses": ">= 1.2.1 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/path-match/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", + "dev": true + }, + "node_modules/path-match/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/path-match/node_modules/path-to-regexp": { + "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", "dev": true, @@ -8167,21 +9891,69 @@ "isarray": "0.0.1" } }, + "node_modules/path-match/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "dev": true, + "peer": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } }, "node_modules/path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", "dev": true }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, "engines": { "node": ">=8" } @@ -8218,7 +9990,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, + "devOptional": true, "engines": { "node": ">=8.6" }, @@ -8253,6 +10025,61 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==", + "dev": true, + "peer": true + }, + "node_modules/postcss-safe-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.0.tgz", + "integrity": "sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.15", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz", + "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==", + "dev": true, + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "peer": true + }, "node_modules/prebuild-install": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", @@ -8317,11 +10144,10 @@ } }, "node_modules/prettier": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", - "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz", + "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==", "dev": true, - "peer": true, "bin": { "prettier": "bin/prettier.cjs" }, @@ -8365,6 +10191,15 @@ "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==", "dev": true }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/promisepipe": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/promisepipe/-/promisepipe-3.0.0.tgz", @@ -8375,12 +10210,94 @@ "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" } }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-agent": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.1.tgz", + "integrity": "sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.1", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "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==", + "dev": true + }, + "node_modules/ps-list": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/ps-list/-/ps-list-8.1.1.tgz", + "integrity": "sha512-OPS9kEJYVmiO48u/B9qneqhkMvgCxT+Tm28VCEJpheTpl8cJ0ffZRRNgS5mrQRTrX5yRTpaJ+hRDeefXYmmorQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -8400,6 +10317,65 @@ "node": ">=6" } }, + "node_modules/puppeteer-core": { + "version": "21.6.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.6.1.tgz", + "integrity": "sha512-0chaaK/RL9S1U3bsyR4fUeUfoj51vNnjWvXgG6DcsyMjwYNpLcAThv187i1rZCo7QhJP0wZN8plQkjNyrq2h+A==", + "dev": true, + "dependencies": { + "@puppeteer/browsers": "1.9.0", + "chromium-bidi": "0.5.1", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1203626", + "ws": "8.15.1" + }, + "engines": { + "node": ">=16.13.2" + } + }, + "node_modules/puppeteer-core/node_modules/devtools-protocol": { + "version": "0.0.1203626", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1203626.tgz", + "integrity": "sha512-nEzHZteIUZfGCZtTiS1fRpC8UZmsfD1SiyPvaUNvS13dvKf666OAm8YTi0+Ca3n1nLEyu49Cy4+dPWpaHFJk9g==", + "dev": true + }, + "node_modules/puppeteer-core/node_modules/ws": { + "version": "8.15.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.1.tgz", + "integrity": "sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -8426,14 +10402,23 @@ "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", "dev": true }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dev": true, "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.3", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -8441,20 +10426,13 @@ "node": ">= 0.8" } }, - "node_modules/raw-body/node_modules/http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/rc": { @@ -8504,26 +10482,6 @@ "react": "^18.2.0" } }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-transition-group": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", - "dependencies": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": ">=16.6.0", - "react-dom": ">=16.6.0" - } - }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -8542,7 +10500,7 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, + "devOptional": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -8571,9 +10529,10 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true }, "node_modules/regexp.prototype.flags": { "version": "1.5.1", @@ -8615,10 +10574,17 @@ "node": ">=0.10.0" } }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", @@ -8635,6 +10601,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, "engines": { "node": ">=4" } @@ -8657,6 +10624,19 @@ "node": ">=10" } }, + "node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "dev": true, + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -8682,6 +10662,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/robots-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/robots-parser/-/robots-parser-3.0.1.tgz", + "integrity": "sha512-s+pyvQeIKIZ0dx5iJiQk1tPLJAWln39+MI5jtM8wnyws+G5azk+dMnMX0qfbqNetKKNgcWWOdi0sfm+FbQbgdQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/rollup-plugin-inject": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz", @@ -8733,108 +10722,13 @@ "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", "dev": true }, - "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/run-applescript/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/run-applescript/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/run-applescript/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/run-applescript/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" + "node": ">=0.12.0" } }, "node_modules/run-parallel": { @@ -8860,6 +10754,24 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, "node_modules/safe-array-concat": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", @@ -8879,23 +10791,10 @@ } }, "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "node_modules/safe-regex-test": { "version": "1.0.0", @@ -8917,6 +10816,23 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "node_modules/sass": { + "version": "1.69.6", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.6.tgz", + "integrity": "sha512-qbRr3k9JGHWXCvZU77SD2OTwUlC+gNT+61JOLcmLm+XqH4h/5D+p4IIsxvpkB89S9AwJOyb5+rWNpIucaFxSFQ==", + "devOptional": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/scheduler": { "version": "0.23.0", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", @@ -8958,15 +10874,93 @@ "node": ">=10" } }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, "node_modules/seroval": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/seroval/-/seroval-0.12.4.tgz", - "integrity": "sha512-JIsZHp98o+okpYN8HEPyI9Blr0gxAUPIGvg3waXrEMFjPz9obiLYMz0uFiUGezKiCK8loosYbn8WsqO8WtAJUA==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/seroval/-/seroval-0.15.1.tgz", + "integrity": "sha512-OPVtf0qmeC7RW+ScVX+7aOS+xoIM7pWcZ0jOWg2aTZigCydgRB04adfteBRbecZnnrO1WuGQ+C3tLeBBzX2zSQ==", "peer": true, "engines": { "node": ">=10" } }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -9003,9 +10997,9 @@ } }, "node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, "node_modules/sharp": { @@ -9135,6 +11129,12 @@ "is-arrayish": "^0.3.1" } }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "dev": true + }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -9144,14 +11144,98 @@ "node": ">=8" } }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks/node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + }, "node_modules/solid-js": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/solid-js/-/solid-js-1.8.5.tgz", - "integrity": "sha512-xvtJvzJzWbsn35oKFhW9kNwaxG1Z/YLMsDp4tLVcYZTMPzvzQ8vEZuyDQ6nt7xDArVgZJ7TUFrJUwrui/oq53A==", + "version": "1.8.7", + "resolved": "https://registry.npmjs.org/solid-js/-/solid-js-1.8.7.tgz", + "integrity": "sha512-9dzrSVieh2zj3SnJ02II6xZkonR6c+j/91b7XZUNcC6xSaldlqjjGh98F1fk5cRJ8ZTkzqF5fPIWDxEOs6QZXA==", "peer": true, "dependencies": { "csstype": "^3.1.0", - "seroval": "^0.12.0" + "seroval": "^0.15.1" } }, "node_modules/solid-swr-store": { @@ -9166,15 +11250,6 @@ "swr-store": "^0.10" } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/source-map-js": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", @@ -9193,6 +11268,15 @@ "source-map": "^0.6.0" } }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", @@ -9200,6 +11284,20 @@ "deprecated": "Please use @jridgewell/sourcemap-codec instead", "dev": true }, + "node_modules/speedline-core": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/speedline-core/-/speedline-core-1.4.3.tgz", + "integrity": "sha512-DI7/OuAUD+GMpR6dmu8lliO2Wg5zfeh+/xsdyJZCzd8o5JgFUjCeLsBDuZjIQJdwXS3J0L/uZYrELKYqx+PXog==", + "dev": true, + "dependencies": { + "@types/node": "*", + "image-ssim": "^0.2.0", + "jpeg-js": "^0.4.1" + }, + "engines": { + "node": ">=8.0" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -9233,12 +11331,12 @@ "dev": true }, "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/stoppable": { @@ -9298,9 +11396,9 @@ } }, "node_modules/streamx": { - "version": "2.15.5", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.5.tgz", - "integrity": "sha512-9thPGMkKC2GctCzyCUjME3yR03x2xNo0GPKGkRw2UMYN+gqWa9uqpyNWhmsNCutU5zHmkUum0LsCRQTXUgUCAg==", + "version": "2.15.6", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", + "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", "dev": true, "dependencies": { "fast-fifo": "^1.1.0", @@ -9315,23 +11413,91 @@ "safe-buffer": "~5.2.0" } }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "peer": true + }, + "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/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==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/string-width/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==", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } }, "node_modules/string.prototype.matchall": { "version": "4.0.10", @@ -9409,6 +11575,20 @@ "node": ">=8" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", @@ -9419,15 +11599,12 @@ } }, "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/strip-json-comments": { @@ -9464,7639 +11641,428 @@ } } }, - "node_modules/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/stylelint": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.1.0.tgz", + "integrity": "sha512-Sh1rRV0lN1qxz/QsuuooLWsIZ/ona7NKw/fRZd6y6PyXYdD2W0EAzJ8yJcwSx4Iw/muz0CF09VZ+z4EiTAcKmg==", + "dev": true, + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@csstools/css-parser-algorithms": "^2.4.0", + "@csstools/css-tokenizer": "^2.2.2", + "@csstools/media-query-list-parser": "^2.1.6", + "@csstools/selector-specificity": "^3.0.1", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^9.0.0", + "css-functions-list": "^3.2.1", + "css-tree": "^2.3.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^8.0.0", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.3.1", + "ignore": "^5.3.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.29.0", + "mathml-tag-names": "^2.1.3", + "meow": "^13.0.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.32", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^7.0.0", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^7.1.0", + "supports-hyperlinks": "^3.0.0", + "svg-tags": "^1.0.0", + "table": "^6.8.1", + "write-file-atomic": "^5.0.1" + }, + "bin": { + "stylelint": "bin/stylelint.mjs" }, "engines": { - "node": ">=8" + "node": ">=18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/stylelint-prettier": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-prettier/-/stylelint-prettier-5.0.0.tgz", + "integrity": "sha512-RHfSlRJIsaVg5Br94gZVdWlz/rBTyQzZflNE6dXvSxt/GthWMY3gEHsWZEBaVGg7GM+XrtVSp4RznFlB7i0oyw==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=18.12.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "prettier": ">=3.0.0", + "stylelint": ">=16.0.0" } }, - "node_modules/svelte": { - "version": "4.2.7", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.7.tgz", - "integrity": "sha512-UExR1KS7raTdycsUrKLtStayu4hpdV3VZQgM0akX8XbXgLBlosdE/Sf3crOgyh9xIjqSYB3UEBuUlIQKRQX2hg==", + "node_modules/stylelint/node_modules/balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "peer": true, "dependencies": { - "@ampproject/remapping": "^2.2.1", - "@jridgewell/sourcemap-codec": "^1.4.15", - "@jridgewell/trace-mapping": "^0.3.18", - "acorn": "^8.9.0", - "aria-query": "^5.3.0", - "axobject-query": "^3.2.1", - "code-red": "^1.0.3", - "css-tree": "^2.3.1", - "estree-walker": "^3.0.3", - "is-reference": "^3.0.1", - "locate-character": "^3.0.0", - "magic-string": "^0.30.4", - "periscopic": "^3.1.0" - }, - "engines": { - "node": ">=16" + "balanced-match": "^1.0.0" } }, - "node_modules/swr": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/swr/-/swr-2.2.0.tgz", - "integrity": "sha512-AjqHOv2lAhkuUdIiBu9xbuettzAzWXmCEcLONNKJRba87WAefz8Ca9d6ds/SzrPc235n1IxWYdhJ2zF3MNUaoQ==", + "node_modules/stylelint/node_modules/brace-expansion/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "dev": true, + "peer": true, "dependencies": { - "use-sync-external-store": "^1.2.0" + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" }, "peerDependencies": { - "react": "^16.11.0 || ^17.0.0 || ^18.0.0" + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/swr-store": { - "version": "0.10.6", - "resolved": "https://registry.npmjs.org/swr-store/-/swr-store-0.10.6.tgz", - "integrity": "sha512-xPjB1hARSiRaNNlUQvWSVrG5SirCjk2TmaUyzzvk69SZQan9hCJqw/5rG9iL7xElHU784GxRPISClq4488/XVw==", + "node_modules/stylelint/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "peer": true, "dependencies": { - "dequal": "^2.0.3" + "flat-cache": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/swrev": { + "node_modules/stylelint/node_modules/flat-cache": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/swrev/-/swrev-4.0.0.tgz", - "integrity": "sha512-LqVcOHSB4cPGgitD1riJ1Hh4vdmITOp+BkmfmXRh4hSF/t7EnS4iD+SOTmq7w5pPm/SiPeto4ADbKS6dHUDWFA==" - }, - "node_modules/swrv": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/swrv/-/swrv-1.0.4.tgz", - "integrity": "sha512-zjEkcP8Ywmj+xOJW3lIT65ciY/4AL4e/Or7Gj0MzU3zBJNMdJiT8geVZhINavnlHRMMCcJLHhraLTAiDOTmQ9g==", - "peerDependencies": { - "vue": ">=3.2.26 < 4" + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.0.tgz", + "integrity": "sha512-EryKbCE/wxpxKniQlyas6PY1I9vwtF3uCBweX+N8KYTCn3Y12RTGtQAJ/bd5pl7kxUAc8v/R3Ake/N17OZiFqA==", + "dev": true, + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4", + "rimraf": "^5.0.5" + }, + "engines": { + "node": ">=16" } }, - "node_modules/synckit": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", - "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "node_modules/stylelint/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, + "peer": true, "dependencies": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.5.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://opencollective.com/unts" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "node_modules/stylelint/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "peer": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/tar": { - "version": "4.4.18", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.18.tgz", - "integrity": "sha512-ZuOtqqmkV9RE1+4odd+MhBpibmCxNP6PJhH/h2OqNuotTX7/XHPZQJv2pKvWMplFH9SIZZhitehh6vBH6LO8Pg==", + "node_modules/stylelint/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "peer": true, "dependencies": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=4.5" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/tar-fs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", - "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", + "node_modules/stylelint/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, - "dependencies": { - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^3.1.5" + "peer": true, + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "node_modules/tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", - "dev": true, - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, - "node_modules/tar/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/time-span": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/time-span/-/time-span-4.0.0.tgz", - "integrity": "sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==", - "dev": true, - "dependencies": { - "convert-hrtime": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "node_modules/stylelint/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", - "dev": true, - "engines": { - "node": ">=16.13.0" + "nanoid": "bin/nanoid.cjs" }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-morph": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-12.0.0.tgz", - "integrity": "sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==", - "dev": true, - "dependencies": { - "@ts-morph/common": "~0.11.0", - "code-block-writer": "^10.1.1" + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "node_modules/stylelint/node_modules/postcss": { + "version": "8.4.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz", + "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==", "dev": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" }, - "@swc/wasm": { - "optional": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } - } - }, - "node_modules/ts-toolbelt": { - "version": "6.15.5", - "resolved": "https://registry.npmjs.org/ts-toolbelt/-/ts-toolbelt-6.15.5.tgz", - "integrity": "sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==", - "dev": true - }, - "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, + ], + "peer": true, "dependencies": { - "prelude-ls": "^1.2.1" + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { - "node": ">= 0.8.0" + "node": "^10 || ^12 || >=14" } }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/stylelint/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, + "peer": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "node_modules/stylelint/node_modules/rimraf": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", + "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", "dev": true, + "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "glob": "^10.3.7" }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "bin": { + "rimraf": "dist/esm/bin.mjs" }, "engines": { - "node": ">= 0.4" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "devOptional": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/uid-promise": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uid-promise/-/uid-promise-1.0.0.tgz", - "integrity": "sha512-R8375j0qwXyIu/7R0tjdF06/sElHqbmdmWC9M2qQHpEVbvE4I5+38KJI7LUUmQMp7NVq4tKHiBMkT0NFM453Ig==", - "dev": true - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "dev": true, - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" - }, - "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==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "node_modules/vercel": { - "version": "32.7.2", - "resolved": "https://registry.npmjs.org/vercel/-/vercel-32.7.2.tgz", - "integrity": "sha512-esyeo67OZ/f7usKFCrx6NSjsvpo/BP/C8Mfron2uiCb4vXVcjkwOM7TwliHx6b0DbXjpzomdGVUHKRs34VNn2Q==", - "dev": true, - "dependencies": { - "@vercel/build-utils": "7.3.0", - "@vercel/fun": "1.1.0", - "@vercel/go": "3.0.4", - "@vercel/hydrogen": "1.0.1", - "@vercel/next": "4.0.15", - "@vercel/node": "3.0.12", - "@vercel/python": "4.1.0", - "@vercel/redwood": "2.0.5", - "@vercel/remix-builder": "2.0.14", - "@vercel/ruby": "2.0.4", - "@vercel/static-build": "2.0.14", - "chokidar": "3.3.1" - }, - "bin": { - "vc": "dist/index.js", - "vercel": "dist/index.js" - }, - "engines": { - "node": ">= 16" - } - }, - "node_modules/vercel/node_modules/chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.2" - } - }, - "node_modules/vercel/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "deprecated": "\"Please update to latest v2.3 or v2.2\"", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/vercel/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/vercel/node_modules/readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", - "dev": true, - "dependencies": { - "picomatch": "^2.0.7" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/vue": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.8.tgz", - "integrity": "sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==", - "peer": true, - "dependencies": { - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-sfc": "3.3.8", - "@vue/runtime-dom": "3.3.8", - "@vue/server-renderer": "3.3.8", - "@vue/shared": "3.3.8" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/web-streams-polyfill": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", - "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", - "engines": { - "node": ">= 8" - } - }, - "node_modules/web-vitals": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-0.2.4.tgz", - "integrity": "sha512-6BjspCO9VriYy12z356nL6JBS0GYeEcA457YyRzD+dD6XYCQ75NKhcOHUMHentOE7OcVCIXXDvOm0jKFfQG2Gg==", - "dev": true - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", - "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", - "dev": true, - "dependencies": { - "function.prototype.name": "^1.1.5", - "has-tostringtag": "^1.0.0", - "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", - "is-finalizationregistry": "^1.0.2", - "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/workerd": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20231030.0.tgz", - "integrity": "sha512-+FSW+d31f8RrjHanFf/R9A+Z0csf3OtsvzdPmAKuwuZm/5HrBv83cvG9fFeTxl7/nI6irUUXIRF9xcj/NomQzQ==", - "dev": true, - "hasInstallScript": true, - "bin": { - "workerd": "bin/workerd" - }, - "engines": { - "node": ">=16" - }, - "optionalDependencies": { - "@cloudflare/workerd-darwin-64": "1.20231030.0", - "@cloudflare/workerd-darwin-arm64": "1.20231030.0", - "@cloudflare/workerd-linux-64": "1.20231030.0", - "@cloudflare/workerd-linux-arm64": "1.20231030.0", - "@cloudflare/workerd-windows-64": "1.20231030.0" - } - }, - "node_modules/wrangler": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.20.0.tgz", - "integrity": "sha512-7mg25zJByhBmrfG+CbImSid7JNd5lxGovLA167ndtE8Yrqd3TUukrGWL8o0RCQIm0FUcgl2nCzWArJDShlZVKA==", - "dev": true, - "dependencies": { - "@cloudflare/kv-asset-handler": "^0.2.0", - "@esbuild-plugins/node-globals-polyfill": "^0.2.3", - "@esbuild-plugins/node-modules-polyfill": "^0.2.2", - "blake3-wasm": "^2.1.5", - "chokidar": "^3.5.3", - "esbuild": "0.17.19", - "miniflare": "3.20231030.4", - "nanoid": "^3.3.3", - "path-to-regexp": "^6.2.0", - "resolve.exports": "^2.0.2", - "selfsigned": "^2.0.1", - "source-map": "0.6.1", - "source-map-support": "0.5.21", - "xxhash-wasm": "^1.0.1" - }, - "bin": { - "wrangler": "bin/wrangler.js", - "wrangler2": "bin/wrangler.js" - }, - "engines": { - "node": ">=16.17.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.15.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.1.tgz", - "integrity": "sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xdg-app-paths": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/xdg-app-paths/-/xdg-app-paths-5.1.0.tgz", - "integrity": "sha512-RAQ3WkPf4KTU1A8RtFx3gWywzVKe00tfOPFfl2NDGqbIFENQO4kqAJp7mhQjNj/33W5x5hiWWUdyfPq/5SU3QA==", - "dev": true, - "dependencies": { - "xdg-portable": "^7.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/xdg-portable": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/xdg-portable/-/xdg-portable-7.3.0.tgz", - "integrity": "sha512-sqMMuL1rc0FmMBOzCpd0yuy9trqF2yTTVe+E9ogwCSWQCdDEtQUwrZPT6AxqtsFGRNxycgncbP/xmOOSPw5ZUw==", - "dev": true, - "dependencies": { - "os-paths": "^4.0.1" - }, - "engines": { - "node": ">= 6.0" - } - }, - "node_modules/xxhash-wasm": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-1.0.2.tgz", - "integrity": "sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==", - "dev": true - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "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==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yauzl-clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/yauzl-clone/-/yauzl-clone-1.0.4.tgz", - "integrity": "sha512-igM2RRCf3k8TvZoxR2oguuw4z1xasOnA31joCqHIyLkeWrvAc2Jgay5ISQ2ZplinkoGaJ6orCz56Ey456c5ESA==", - "dev": true, - "dependencies": { - "events-intercept": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yauzl-promise": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/yauzl-promise/-/yauzl-promise-2.1.3.tgz", - "integrity": "sha512-A1pf6fzh6eYkK0L4Qp7g9jzJSDrM6nN0bOn5T0IbY4Yo3w+YkWlHFkJP7mzknMXjqusHFHlKsK2N+4OLsK2MRA==", - "dev": true, - "dependencies": { - "yauzl": "^2.9.1", - "yauzl-clone": "^1.0.4" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/youch": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/youch/-/youch-3.3.3.tgz", - "integrity": "sha512-qSFXUk3UZBLfggAW3dJKg0BMblG5biqSF8M34E06o5CSsZtH92u9Hqmj2RzGiHDi64fhe83+4tENFP2DB6t6ZA==", - "dev": true, - "dependencies": { - "cookie": "^0.5.0", - "mustache": "^4.2.0", - "stacktracey": "^2.1.8" - } - }, - "node_modules/zod": { - "version": "3.22.4", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", - "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true - }, - "@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "peer": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.4.tgz", - "integrity": "sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA==", - "requires": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", - "requires": { - "@babel/types": "^7.22.15" - } - }, - "@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==" - }, - "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==" - }, - "@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.4.tgz", - "integrity": "sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==", - "peer": true - }, - "@babel/runtime": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz", - "integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==", - "requires": { - "regenerator-runtime": "^0.14.0" - } - }, - "@babel/types": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.4.tgz", - "integrity": "sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==", - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@cloudflare/kv-asset-handler": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.2.0.tgz", - "integrity": "sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==", - "dev": true, - "requires": { - "mime": "^3.0.0" - } - }, - "@cloudflare/next-on-pages": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@cloudflare/next-on-pages/-/next-on-pages-1.8.2.tgz", - "integrity": "sha512-TVQL+1Xdmy/7qyuWrEb12k9DxIhEqdi8k2qat0oLifERqc3s9udzaS4jHPVghQmiR5xfaZhrt3fzBnqH5437RA==", - "dev": true, - "requires": { - "acorn": "^8.8.0", - "ast-types": "^0.14.2", - "chalk": "^5.2.0", - "chokidar": "^3.5.3", - "commander": "^11.1.0", - "cookie": "^0.5.0", - "esbuild": "^0.15.3", - "js-yaml": "^4.1.0", - "miniflare": "^3.20231002.1", - "package-manager-manager": "^0.2.0", - "pcre-to-regexp": "^1.1.0", - "semver": "^7.5.2" - }, - "dependencies": { - "@esbuild/android-arm": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", - "integrity": "sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==", - "dev": true, - "optional": true - }, - "@esbuild/linux-loong64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz", - "integrity": "sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==", - "dev": true, - "optional": true - }, - "chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true - }, - "esbuild": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz", - "integrity": "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==", - "dev": true, - "requires": { - "@esbuild/android-arm": "0.15.18", - "@esbuild/linux-loong64": "0.15.18", - "esbuild-android-64": "0.15.18", - "esbuild-android-arm64": "0.15.18", - "esbuild-darwin-64": "0.15.18", - "esbuild-darwin-arm64": "0.15.18", - "esbuild-freebsd-64": "0.15.18", - "esbuild-freebsd-arm64": "0.15.18", - "esbuild-linux-32": "0.15.18", - "esbuild-linux-64": "0.15.18", - "esbuild-linux-arm": "0.15.18", - "esbuild-linux-arm64": "0.15.18", - "esbuild-linux-mips64le": "0.15.18", - "esbuild-linux-ppc64le": "0.15.18", - "esbuild-linux-riscv64": "0.15.18", - "esbuild-linux-s390x": "0.15.18", - "esbuild-netbsd-64": "0.15.18", - "esbuild-openbsd-64": "0.15.18", - "esbuild-sunos-64": "0.15.18", - "esbuild-windows-32": "0.15.18", - "esbuild-windows-64": "0.15.18", - "esbuild-windows-arm64": "0.15.18" - } - } - } - }, - "@cloudflare/workerd-darwin-64": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20231030.0.tgz", - "integrity": "sha512-J4PQ9utPxLya9yHdMMx3AZeC5M/6FxcoYw6jo9jbDDFTy+a4Gslqf4Im9We3aeOEdPXa3tgQHVQOSelJSZLhIw==", - "dev": true, - "optional": true - }, - "@cloudflare/workerd-darwin-arm64": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20231030.0.tgz", - "integrity": "sha512-WSJJjm11Del4hSneiNB7wTXGtBXI4QMCH9l5qf4iT5PAW8cESGcCmdHtWDWDtGAAGcvmLT04KNvmum92vRKKQQ==", - "dev": true, - "optional": true - }, - "@cloudflare/workerd-linux-64": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20231030.0.tgz", - "integrity": "sha512-2HUeRTvoCC17fxE0qdBeR7J9dO8j4A8ZbdcvY8pZxdk+zERU6+N03RTbk/dQMU488PwiDvcC3zZqS4gwLfVT8g==", - "dev": true, - "optional": true - }, - "@cloudflare/workerd-linux-arm64": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20231030.0.tgz", - "integrity": "sha512-4/GK5zHh+9JbUI6Z5xTCM0ZmpKKHk7vu9thmHjUxtz+o8Ne9DoD7DlDvXQWgMF6XGaTubDWyp3ttn+Qv8jDFuQ==", - "dev": true, - "optional": true - }, - "@cloudflare/workerd-windows-64": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20231030.0.tgz", - "integrity": "sha512-fb/Jgj8Yqy3PO1jLhk7mTrHMkR8jklpbQFud6rL/aMAn5d6MQbaSrYOCjzkKGp0Zng8D2LIzSl+Fc0C9Sggxjg==", - "dev": true, - "optional": true - }, - "@cloudflare/workers-types": { - "version": "4.20231121.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20231121.0.tgz", - "integrity": "sha512-+kWfpCkqiepwAKXyHoE0gnkPgkLhz0/9HOBIGhHRsUvUKvhUtm3mbqqoGRWgF1qcjzrDUBbrrOq4MYHfFtc2RA==", - "dev": true - }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, - "@edge-runtime/cookies": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@edge-runtime/cookies/-/cookies-3.4.1.tgz", - "integrity": "sha512-z27BvgPxI73CgSlxU/NAUf1Q/shnqi6cobHEowf6VuLdSjGR3NjI2Y5dZUIBbK2zOJVZbXcHsVzJjz8LklteFQ==", - "dev": true - }, - "@edge-runtime/format": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@edge-runtime/format/-/format-2.2.0.tgz", - "integrity": "sha512-gPrS6AVw/qJJL0vcxMXv4kFXCU3ZTCD1uuJpwX15YxHV8BgU9OG5v9LrkkXcr96PBT/9epypfNJMhlWADuEziw==", - "dev": true - }, - "@edge-runtime/node-utils": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@edge-runtime/node-utils/-/node-utils-2.2.1.tgz", - "integrity": "sha512-RUl/439BHKshkhSGFRlZ1kzy68wL4mn8VNKDSZr3p0tciyZ33Mjfpl+vofqnHqXRmDI6nLnZpfJvhY3D88o0pA==", - "dev": true, - "requires": { - "@edge-runtime/cookies": "3.4.1" - } - }, - "@edge-runtime/ponyfill": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@edge-runtime/ponyfill/-/ponyfill-2.4.1.tgz", - "integrity": "sha512-ZbR/EViY3gg2rmEAQTKPa6mXl4aR1/+cFcQe4r1segCjEbTAxT6PWu40odbu/KlZKSysEb2O/BWIC2lJgSJOMQ==", - "dev": true - }, - "@edge-runtime/primitives": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@edge-runtime/primitives/-/primitives-4.0.5.tgz", - "integrity": "sha512-t7QiN5d/KpXgCvIfSt6Nm9Hj3WVdNgc5CpOD73jasY+9EvTI7Ngdj5cXvjcHrPcmYWJZMySPgeEeoL/1N/Llag==", - "dev": true - }, - "@edge-runtime/vm": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/@edge-runtime/vm/-/vm-3.1.7.tgz", - "integrity": "sha512-hUMFbDQ/nZN+1TLMi6iMO1QFz9RSV8yGG8S42WFPFma1d7VSNE0eMdJUmwjmtav22/iQkzHMmu6oTSfAvRGS8g==", - "dev": true, - "requires": { - "@edge-runtime/primitives": "4.0.5" - } - }, - "@emotion/babel-plugin": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", - "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", - "requires": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/serialize": "^1.1.2", - "babel-plugin-macros": "^3.1.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^4.0.0", - "find-root": "^1.1.0", - "source-map": "^0.5.7", - "stylis": "4.2.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" - } - } - }, - "@emotion/cache": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", - "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", - "requires": { - "@emotion/memoize": "^0.8.1", - "@emotion/sheet": "^1.2.2", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "stylis": "4.2.0" - } - }, - "@emotion/hash": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", - "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" - }, - "@emotion/is-prop-valid": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", - "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", - "requires": { - "@emotion/memoize": "^0.8.1" - } - }, - "@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "@emotion/react": { - "version": "11.11.1", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz", - "integrity": "sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==", - "requires": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/cache": "^11.11.0", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", - "hoist-non-react-statics": "^3.3.1" - } - }, - "@emotion/serialize": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz", - "integrity": "sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==", - "requires": { - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/unitless": "^0.8.1", - "@emotion/utils": "^1.2.1", - "csstype": "^3.0.2" - } - }, - "@emotion/sheet": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", - "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==" - }, - "@emotion/styled": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", - "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", - "requires": { - "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/is-prop-valid": "^1.2.1", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1" - } - }, - "@emotion/unitless": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", - "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" - }, - "@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", - "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", - "requires": {} - }, - "@emotion/utils": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", - "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==" - }, - "@emotion/weak-memoize": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", - "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==" - }, - "@esbuild-plugins/node-globals-polyfill": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz", - "integrity": "sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==", - "dev": true, - "requires": {} - }, - "@esbuild-plugins/node-modules-polyfill": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.2.2.tgz", - "integrity": "sha512-LXV7QsWJxRuMYvKbiznh+U1ilIop3g2TeKRzUxOG5X3YITc8JyyTa90BmLwqqv0YnX4v32CSlG+vsziZp9dMvA==", - "dev": true, - "requires": { - "escape-string-regexp": "^4.0.0", - "rollup-plugin-node-polyfills": "^0.2.1" - } - }, - "@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", - "dev": true, - "optional": true - }, - "@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", - "dev": true, - "optional": true - }, - "@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", - "dev": true, - "optional": true - }, - "@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", - "dev": true, - "optional": true - }, - "@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", - "dev": true, - "optional": true - }, - "@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", - "dev": true, - "optional": true - }, - "@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", - "dev": true, - "optional": true - }, - "@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", - "dev": true, - "optional": true - }, - "@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", - "dev": true, - "optional": true - }, - "@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", - "dev": true, - "optional": true - }, - "@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", - "dev": true, - "optional": true - }, - "@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", - "dev": true, - "optional": true - }, - "@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", - "dev": true, - "optional": true - }, - "@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", - "dev": true, - "optional": true - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.3.0" - } - }, - "@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - } - }, - "@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", - "dev": true - }, - "@fastify/busboy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", - "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", - "dev": true - }, - "@floating-ui/core": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", - "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", - "requires": { - "@floating-ui/utils": "^0.1.3" - } - }, - "@floating-ui/dom": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", - "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", - "requires": { - "@floating-ui/core": "^1.4.2", - "@floating-ui/utils": "^0.1.3" - } - }, - "@floating-ui/react-dom": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.4.tgz", - "integrity": "sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==", - "requires": { - "@floating-ui/dom": "^1.5.1" - } - }, - "@floating-ui/utils": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz", - "integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==" - }, - "@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==" - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "peer": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", - "peer": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@mapbox/node-pre-gyp": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", - "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", - "dev": true, - "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - }, - "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - } - } - }, - "@mui/base": { - "version": "5.0.0-beta.24", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.24.tgz", - "integrity": "sha512-bKt2pUADHGQtqWDZ8nvL2Lvg2GNJyd/ZUgZAJoYzRgmnxBL9j36MSlS3+exEdYkikcnvVafcBtD904RypFKb0w==", - "requires": { - "@babel/runtime": "^7.23.2", - "@floating-ui/react-dom": "^2.0.4", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "@popperjs/core": "^2.11.8", - "clsx": "^2.0.0", - "prop-types": "^15.8.1" - } - }, - "@mui/core-downloads-tracker": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.14.18.tgz", - "integrity": "sha512-yFpF35fEVDV81nVktu0BE9qn2dD/chs7PsQhlyaV3EnTeZi9RZBuvoEfRym1/jmhJ2tcfeWXiRuHG942mQXJJQ==" - }, - "@mui/material": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.14.18.tgz", - "integrity": "sha512-y3UiR/JqrkF5xZR0sIKj6y7xwuEiweh9peiN3Zfjy1gXWXhz5wjlaLdoxFfKIEBUFfeQALxr/Y8avlHH+B9lpQ==", - "requires": { - "@babel/runtime": "^7.23.2", - "@mui/base": "5.0.0-beta.24", - "@mui/core-downloads-tracker": "^5.14.18", - "@mui/system": "^5.14.18", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "@types/react-transition-group": "^4.4.8", - "clsx": "^2.0.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1", - "react-is": "^18.2.0", - "react-transition-group": "^4.4.5" - }, - "dependencies": { - "react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - } - } - }, - "@mui/private-theming": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.14.18.tgz", - "integrity": "sha512-WSgjqRlzfHU+2Rou3HlR2Gqfr4rZRsvFgataYO3qQ0/m6gShJN+lhVEvwEiJ9QYyVzMDvNpXZAcqp8Y2Vl+PAw==", - "requires": { - "@babel/runtime": "^7.23.2", - "@mui/utils": "^5.14.18", - "prop-types": "^15.8.1" - } - }, - "@mui/styled-engine": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.14.18.tgz", - "integrity": "sha512-pW8bpmF9uCB5FV2IPk6mfbQCjPI5vGI09NOLhtGXPeph/4xIfC3JdIX0TILU0WcTs3aFQqo6s2+1SFgIB9rCXA==", - "requires": { - "@babel/runtime": "^7.23.2", - "@emotion/cache": "^11.11.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1" - } - }, - "@mui/system": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.14.18.tgz", - "integrity": "sha512-hSQQdb3KF72X4EN2hMEiv8EYJZSflfdd1TRaGPoR7CIAG347OxCslpBUwWngYobaxgKvq6xTrlIl+diaactVww==", - "requires": { - "@babel/runtime": "^7.23.2", - "@mui/private-theming": "^5.14.18", - "@mui/styled-engine": "^5.14.18", - "@mui/types": "^7.2.9", - "@mui/utils": "^5.14.18", - "clsx": "^2.0.0", - "csstype": "^3.1.2", - "prop-types": "^15.8.1" - } - }, - "@mui/types": { - "version": "7.2.9", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.9.tgz", - "integrity": "sha512-k1lN/PolaRZfNsRdAqXtcR71sTnv3z/VCCGPxU8HfdftDkzi335MdJ6scZxvofMAd/K/9EbzCZTFBmlNpQVdCg==", - "requires": {} - }, - "@mui/utils": { - "version": "5.14.18", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.14.18.tgz", - "integrity": "sha512-HZDRsJtEZ7WMSnrHV9uwScGze4wM/Y+u6pDVo+grUjt5yXzn+wI8QX/JwTHh9YSw/WpnUL80mJJjgCnWj2VrzQ==", - "requires": { - "@babel/runtime": "^7.23.2", - "@types/prop-types": "^15.7.10", - "prop-types": "^15.8.1", - "react-is": "^18.2.0" - }, - "dependencies": { - "react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" - } - } - }, - "@next/env": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.3.tgz", - "integrity": "sha512-7xRqh9nMvP5xrW4/+L0jgRRX+HoNRGnfJpD+5Wq6/13j3dsdzxO3BCXn7D3hMqsDb+vjZnJq+vI7+EtgrYZTeA==" - }, - "@next/eslint-plugin-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", - "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", - "dev": true, - "requires": { - "glob": "7.1.7" - } - }, - "@next/swc-darwin-arm64": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.3.tgz", - "integrity": "sha512-64JbSvi3nbbcEtyitNn2LEDS/hcleAFpHdykpcnrstITFlzFgB/bW0ER5/SJJwUPj+ZPY+z3e+1jAfcczRLVGw==", - "optional": true - }, - "@next/swc-darwin-x64": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.3.tgz", - "integrity": "sha512-RkTf+KbAD0SgYdVn1XzqE/+sIxYGB7NLMZRn9I4Z24afrhUpVJx6L8hsRnIwxz3ERE2NFURNliPjJ2QNfnWicQ==", - "optional": true - }, - "@next/swc-linux-arm64-gnu": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.3.tgz", - "integrity": "sha512-3tBWGgz7M9RKLO6sPWC6c4pAw4geujSwQ7q7Si4d6bo0l6cLs4tmO+lnSwFp1Tm3lxwfMk0SgkJT7EdwYSJvcg==", - "optional": true - }, - "@next/swc-linux-arm64-musl": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.3.tgz", - "integrity": "sha512-v0v8Kb8j8T23jvVUWZeA2D8+izWspeyeDGNaT2/mTHWp7+37fiNfL8bmBWiOmeumXkacM/AB0XOUQvEbncSnHA==", - "optional": true - }, - "@next/swc-linux-x64-gnu": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.3.tgz", - "integrity": "sha512-VM1aE1tJKLBwMGtyBR21yy+STfl0MapMQnNrXkxeyLs0GFv/kZqXS5Jw/TQ3TSUnbv0QPDf/X8sDXuMtSgG6eg==", - "optional": true - }, - "@next/swc-linux-x64-musl": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.3.tgz", - "integrity": "sha512-64EnmKy18MYFL5CzLaSuUn561hbO1Gk16jM/KHznYP3iCIfF9e3yULtHaMy0D8zbHfxset9LTOv6cuYKJgcOxg==", - "optional": true - }, - "@next/swc-win32-arm64-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.3.tgz", - "integrity": "sha512-WRDp8QrmsL1bbGtsh5GqQ/KWulmrnMBgbnb+59qNTW1kVi1nG/2ndZLkcbs2GX7NpFLlToLRMWSQXmPzQm4tog==", - "optional": true - }, - "@next/swc-win32-ia32-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.3.tgz", - "integrity": "sha512-EKffQeqCrj+t6qFFhIFTRoqb2QwX1mU7iTOvMyLbYw3QtqTw9sMwjykyiMlZlrfm2a4fA84+/aeW+PMg1MjuTg==", - "optional": true - }, - "@next/swc-win32-x64-msvc": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.3.tgz", - "integrity": "sha512-ERhKPSJ1vQrPiwrs15Pjz/rvDHZmkmvbf/BjPN/UCOI++ODftT0GtasDPi0j+y6PPJi5HsXw+dpRaXUaw4vjuQ==", - "optional": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" - } - }, - "@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" - }, - "@rollup/pluginutils": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", - "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", - "dev": true, - "requires": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - } - } - }, - "@rushstack/eslint-patch": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.5.1.tgz", - "integrity": "sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==", - "dev": true - }, - "@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==", - "dev": true - }, - "@swc/helpers": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", - "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@tensorflow-models/mobilenet": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@tensorflow-models/mobilenet/-/mobilenet-2.1.1.tgz", - "integrity": "sha512-tv4s4UFzG74PkIwl4gT64AyRnCcNUq+s8wSzge+LN/Puc1VUuInZghrobvpNlWjZtVi1x1d1NsBD//TfOr2ssA==", - "requires": {} - }, - "@tensorflow/tfjs": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-4.13.0.tgz", - "integrity": "sha512-yvjcNMt1q9CLUeOVwoNf0KyMg//fY9earGQGH91C+NcacOK4j0BJUJUqMolEJqfHIbmK2n2CIFmdvgA5epVPSA==", - "requires": { - "@tensorflow/tfjs-backend-cpu": "4.13.0", - "@tensorflow/tfjs-backend-webgl": "4.13.0", - "@tensorflow/tfjs-converter": "4.13.0", - "@tensorflow/tfjs-core": "4.13.0", - "@tensorflow/tfjs-data": "4.13.0", - "@tensorflow/tfjs-layers": "4.13.0", - "argparse": "^1.0.10", - "chalk": "^4.1.0", - "core-js": "3.29.1", - "regenerator-runtime": "^0.13.5", - "yargs": "^16.0.3" - }, - "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - } - } - }, - "@tensorflow/tfjs-backend-cpu": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-cpu/-/tfjs-backend-cpu-4.13.0.tgz", - "integrity": "sha512-k44G+2WZShxI2ejvQdsSQcicFMNWaccsf6bkI0R7dol9t9uj73yg7JkiT0U0uuJE6XwXymJgDe+KJVprg3fAgA==", - "requires": { - "@types/seedrandom": "^2.4.28", - "seedrandom": "^3.0.5" - } - }, - "@tensorflow/tfjs-backend-webgl": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-backend-webgl/-/tfjs-backend-webgl-4.13.0.tgz", - "integrity": "sha512-UDwn6o70GyZaVxWdGWrWYJad2tUbxqgLtGfZI19j5EmM554PVsGLd+VHOqv4XodTviawuNq/GzqSdqhqsp8f5w==", - "requires": { - "@tensorflow/tfjs-backend-cpu": "4.13.0", - "@types/offscreencanvas": "~2019.3.0", - "@types/seedrandom": "^2.4.28", - "seedrandom": "^3.0.5" - } - }, - "@tensorflow/tfjs-converter": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-4.13.0.tgz", - "integrity": "sha512-jA2/IigBXReZHS8Bo308HG7oVzsNPnPgSYfXneRXnxUz+WfcIPkJ6zp48KERZSPja8vOO5eNG4lsUkQpbtiyyw==", - "requires": {} - }, - "@tensorflow/tfjs-core": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-4.13.0.tgz", - "integrity": "sha512-vvz/kHakvv5Tppp2GDTUBA2/XkNmEkManbdsFEXfwVc5+rVMPEMsRFOjsKTy/TpDRd/4wsJBA99L4F7iG2tr/Q==", - "requires": { - "@types/long": "^4.0.1", - "@types/offscreencanvas": "~2019.7.0", - "@types/seedrandom": "^2.4.28", - "@webgpu/types": "0.1.30", - "long": "4.0.0", - "node-fetch": "~2.6.1", - "seedrandom": "^3.0.5" - }, - "dependencies": { - "@types/offscreencanvas": { - "version": "2019.7.3", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz", - "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==" - } - } - }, - "@tensorflow/tfjs-data": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-data/-/tfjs-data-4.13.0.tgz", - "integrity": "sha512-8FmvzGKBH3SJ3Y+vDTF/coFxD/FMh93YRZHxevNGE+nJcs3JK0grRbjSX3AAWb2GXtz2/o30BU0YL8bW8POuUA==", - "requires": { - "@types/node-fetch": "^2.1.2", - "node-fetch": "~2.6.1", - "string_decoder": "^1.3.0" - } - }, - "@tensorflow/tfjs-layers": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-4.13.0.tgz", - "integrity": "sha512-YoBqtVTnE71h48+f89G6ZSYZMN+QsUMccopSxQC6XscncB6Gt1KwuWfpDc2Ld5JeubmUzKLqHdEP0jXIWxssJw==", - "requires": {} - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@ts-morph/common": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.11.1.tgz", - "integrity": "sha512-7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==", - "dev": true, - "requires": { - "fast-glob": "^3.2.7", - "minimatch": "^3.0.4", - "mkdirp": "^1.0.4", - "path-browserify": "^1.0.1" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } - } - }, - "@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "@types/blueimp-load-image": { - "version": "5.16.5", - "resolved": "https://registry.npmjs.org/@types/blueimp-load-image/-/blueimp-load-image-5.16.5.tgz", - "integrity": "sha512-0asWHHKjhpO4NIBlT51AiCDJH8k1WpkYl3TG7++/zFzG4y/D/TQCyR2RJrZ+b3cKV9E2Q6emZmchTgMsChQ9Uw==", - "dev": true - }, - "@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" - }, - "@types/estree-jsx": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.3.tgz", - "integrity": "sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==", - "dev": true, - "requires": { - "@types/estree": "*" - } - }, - "@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" - }, - "@types/node": { - "version": "20.9.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.9.2.tgz", - "integrity": "sha512-WHZXKFCEyIUJzAwh3NyyTHYSR35SevJ6mZ1nWwJafKtiQbqRTIKSRcw3Ma3acqgsent3RRDqeVwpHntMk+9irg==", - "requires": { - "undici-types": "~5.26.4" - } - }, - "@types/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==", - "requires": { - "@types/node": "*", - "form-data": "^4.0.0" - } - }, - "@types/node-forge": { - "version": "1.3.10", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.10.tgz", - "integrity": "sha512-y6PJDYN4xYBxwd22l+OVH35N+1fCYWiuC3aiP2SlXVE6Lo7SS+rSx9r89hLxrP4pn6n1lBGhHJ12pj3F3Mpttw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/offscreencanvas": { - "version": "2019.3.0", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.3.0.tgz", - "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==" - }, - "@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" - }, - "@types/prop-types": { - "version": "15.7.11", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", - "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" - }, - "@types/react": { - "version": "18.2.37", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.37.tgz", - "integrity": "sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw==", - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "@types/react-dom": { - "version": "18.2.15", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.15.tgz", - "integrity": "sha512-HWMdW+7r7MR5+PZqJF6YFNSCtjz1T0dsvo/f1BV6HkV+6erD/nA7wd9NM00KVG83zf2nJ7uATPO9ttdIPvi3gg==", - "dev": true, - "requires": { - "@types/react": "*" - } - }, - "@types/react-transition-group": { - "version": "4.4.9", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.9.tgz", - "integrity": "sha512-ZVNmWumUIh5NhH8aMD9CR2hdW0fNuYInlocZHaZ+dgk/1K49j1w/HoAuK1ki+pgscQrOFRTlXeoURtuzEkV3dg==", - "requires": { - "@types/react": "*" - } - }, - "@types/scheduler": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.7.tgz", - "integrity": "sha512-8g25Nl3AuB1KulTlSUsUhUo/oBgBU6XIXQ+XURpeioEbEJvkO7qI4vDfREv3vJYHHzqXjcAHvoJy4pTtSQNZtA==" - }, - "@types/seedrandom": { - "version": "2.4.34", - "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.34.tgz", - "integrity": "sha512-ytDiArvrn/3Xk6/vtylys5tlY6eo7Ane0hvcx++TKo6RxQXuVfW0AF/oeWqAj9dN29SyhtawuXstgmPlwNcv/A==" - }, - "@typescript-eslint/parser": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.12.0.tgz", - "integrity": "sha512-s8/jNFPKPNRmXEnNXfuo1gemBdVmpQsK1pcu+QIvuNJuhFzGrpD7WjOcvDc/+uEdfzSYpNu7U/+MmbScjoQ6vg==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "6.12.0", - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/typescript-estree": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.12.0.tgz", - "integrity": "sha512-5gUvjg+XdSj8pcetdL9eXJzQNTl3RD7LgUiYTl8Aabdi8hFkaGSYnaS6BLc0BGNaDH+tVzVwmKtWvu0jLgWVbw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0" - } - }, - "@typescript-eslint/types": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.12.0.tgz", - "integrity": "sha512-MA16p/+WxM5JG/F3RTpRIcuOghWO30//VEOvzubM8zuOOBYXsP+IfjoCXXiIfy2Ta8FRh9+IO9QLlaFQUU+10Q==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.12.0.tgz", - "integrity": "sha512-vw9E2P9+3UUWzhgjyyVczLWxZ3GuQNT7QpnIY3o5OMeLO/c8oHljGc8ZpryBMIyympiAAaKgw9e5Hl9dCWFOYw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.12.0", - "@typescript-eslint/visitor-keys": "6.12.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.12.0.tgz", - "integrity": "sha512-rg3BizTZHF1k3ipn8gfrzDXXSFKyOEB5zxYXInQ6z0hUvmQlhaZQzK+YmHmNViMA9HzW5Q9+bPPt90bU6GQwyw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.12.0", - "eslint-visitor-keys": "^3.4.1" - } - }, - "@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, - "@vercel/build-utils": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@vercel/build-utils/-/build-utils-7.3.0.tgz", - "integrity": "sha512-RJwqrGYSk75auHZqWmlSL+a5JsWv+4SF1AxNQJ+KpF3XWZ/8yThkN/jHBfNxMmW6VvNczSVtMaXI0/2Sess6Eg==", - "dev": true - }, - "@vercel/error-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@vercel/error-utils/-/error-utils-2.0.2.tgz", - "integrity": "sha512-Sj0LFafGpYr6pfCqrQ82X6ukRl5qpmVrHM/191kNYFqkkB9YkjlMAj6QcEsvCG259x4QZ7Tya++0AB85NDPbKQ==", - "dev": true - }, - "@vercel/fun": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@vercel/fun/-/fun-1.1.0.tgz", - "integrity": "sha512-SpuPAo+MlAYMtcMcC0plx7Tv4Mp7SQhJJj1iIENlOnABL24kxHpL09XLQMGzZIzIW7upR8c3edwgfpRtp+dhVw==", - "dev": true, - "requires": { - "@tootallnate/once": "2.0.0", - "async-listen": "1.2.0", - "debug": "4.1.1", - "execa": "3.2.0", - "fs-extra": "8.1.0", - "generic-pool": "3.4.2", - "micro": "9.3.5-canary.3", - "ms": "2.1.1", - "node-fetch": "2.6.7", - "path-match": "1.2.4", - "promisepipe": "3.0.0", - "semver": "7.3.5", - "stat-mode": "0.3.0", - "stream-to-promise": "2.2.0", - "tar": "4.4.18", - "tree-kill": "1.2.2", - "uid-promise": "1.0.0", - "uuid": "3.3.2", - "xdg-app-paths": "5.1.0", - "yauzl-promise": "2.1.3" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "execa": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.2.0.tgz", - "integrity": "sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - } - } - }, - "@vercel/gatsby-plugin-vercel-analytics": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@vercel/gatsby-plugin-vercel-analytics/-/gatsby-plugin-vercel-analytics-1.0.11.tgz", - "integrity": "sha512-iTEA0vY6RBPuEzkwUTVzSHDATo1aF6bdLLspI68mQ/BTbi5UQEGjpjyzdKOVcSYApDtFU6M6vypZ1t4vIEnHvw==", - "dev": true, - "requires": { - "web-vitals": "0.2.4" - } - }, - "@vercel/gatsby-plugin-vercel-builder": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@vercel/gatsby-plugin-vercel-builder/-/gatsby-plugin-vercel-builder-2.0.12.tgz", - "integrity": "sha512-S1RkywrUItewqg06T3L4cgYfiwi2BFngHIIerhOYhVuD9A+yfMgxnH5dkbu6nujmV1SEws+Q92wSiPfLPmO0eA==", - "dev": true, - "requires": { - "@sinclair/typebox": "0.25.24", - "@vercel/build-utils": "7.3.0", - "@vercel/routing-utils": "3.1.0", - "esbuild": "0.14.47", - "etag": "1.8.1", - "fs-extra": "11.1.0" - }, - "dependencies": { - "esbuild": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.47.tgz", - "integrity": "sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA==", - "dev": true, - "requires": { - "esbuild-android-64": "0.14.47", - "esbuild-android-arm64": "0.14.47", - "esbuild-darwin-64": "0.14.47", - "esbuild-darwin-arm64": "0.14.47", - "esbuild-freebsd-64": "0.14.47", - "esbuild-freebsd-arm64": "0.14.47", - "esbuild-linux-32": "0.14.47", - "esbuild-linux-64": "0.14.47", - "esbuild-linux-arm": "0.14.47", - "esbuild-linux-arm64": "0.14.47", - "esbuild-linux-mips64le": "0.14.47", - "esbuild-linux-ppc64le": "0.14.47", - "esbuild-linux-riscv64": "0.14.47", - "esbuild-linux-s390x": "0.14.47", - "esbuild-netbsd-64": "0.14.47", - "esbuild-openbsd-64": "0.14.47", - "esbuild-sunos-64": "0.14.47", - "esbuild-windows-32": "0.14.47", - "esbuild-windows-64": "0.14.47", - "esbuild-windows-arm64": "0.14.47" - } - }, - "esbuild-android-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.47.tgz", - "integrity": "sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.47.tgz", - "integrity": "sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.47.tgz", - "integrity": "sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.47.tgz", - "integrity": "sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.47.tgz", - "integrity": "sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.47.tgz", - "integrity": "sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.47.tgz", - "integrity": "sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.47.tgz", - "integrity": "sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.47.tgz", - "integrity": "sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.47.tgz", - "integrity": "sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.47.tgz", - "integrity": "sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.47.tgz", - "integrity": "sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.47.tgz", - "integrity": "sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.47.tgz", - "integrity": "sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.47.tgz", - "integrity": "sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.47.tgz", - "integrity": "sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.47.tgz", - "integrity": "sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-32": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.47.tgz", - "integrity": "sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.47.tgz", - "integrity": "sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.47.tgz", - "integrity": "sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ==", - "dev": true, - "optional": true - }, - "fs-extra": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", - "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true - } - } - }, - "@vercel/go": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vercel/go/-/go-3.0.4.tgz", - "integrity": "sha512-hMIJm2xwU1HT56YRNF8HNOnIFNH7WnGl1l2D6lc6UJk7XdCCh1Dm0nsqLqki2SprTUh3I+53pTQaqgRsFGf06A==", - "dev": true - }, - "@vercel/hydrogen": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@vercel/hydrogen/-/hydrogen-1.0.1.tgz", - "integrity": "sha512-4PYk4LeIWPTjGtgnxvB0Hdw7aqCau843/96K2xX3z9pa0Hn//pUnZBMz2jrs5MRseCm1Li1LdQAK3u8/vaUnVQ==", - "dev": true, - "requires": { - "@vercel/static-config": "3.0.0", - "ts-morph": "12.0.0" - } - }, - "@vercel/next": { - "version": "4.0.15", - "resolved": "https://registry.npmjs.org/@vercel/next/-/next-4.0.15.tgz", - "integrity": "sha512-BxMxIJrya7MS6IWrQIaQaYHPmq7WoZFLX909RBpNoAG5wgzrTrW756d2EsibBwGo7sQYBv2atyI5GqBIHzYbWg==", - "dev": true, - "requires": { - "@vercel/nft": "0.24.2" - } - }, - "@vercel/nft": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.24.2.tgz", - "integrity": "sha512-KhY3Ky/lCqE+fHpOXiKOLnXYJ49PZh1dyDSfVtZhmYtmica0NQgyO6kPOAGDNWqD9IOBx8hb65upxxjfnfa1JA==", - "dev": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.5", - "@rollup/pluginutils": "^4.0.0", - "acorn": "^8.6.0", - "async-sema": "^3.1.1", - "bindings": "^1.4.0", - "estree-walker": "2.0.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.2", - "node-gyp-build": "^4.2.2", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } - } - }, - "@vercel/node": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/@vercel/node/-/node-3.0.12.tgz", - "integrity": "sha512-OiNHiUe1LX/CfDrQ07ntPsoYhJiC38mEeErYeqA6YNVAz3QGdX3pthiaIig2KPqeeYkEx5bSkVIqQtQOTJBuLQ==", - "dev": true, - "requires": { - "@edge-runtime/node-utils": "2.2.1", - "@edge-runtime/primitives": "4.0.5", - "@edge-runtime/vm": "3.1.7", - "@types/node": "14.18.33", - "@vercel/build-utils": "7.3.0", - "@vercel/error-utils": "2.0.2", - "@vercel/nft": "0.24.2", - "@vercel/static-config": "3.0.0", - "async-listen": "3.0.0", - "edge-runtime": "2.5.7", - "esbuild": "0.14.47", - "etag": "1.8.1", - "exit-hook": "2.2.1", - "node-fetch": "2.6.9", - "path-to-regexp": "6.2.1", - "ts-morph": "12.0.0", - "ts-node": "10.9.1", - "typescript": "4.9.5", - "undici": "5.26.5" - }, - "dependencies": { - "@types/node": { - "version": "14.18.33", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.33.tgz", - "integrity": "sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==", - "dev": true - }, - "async-listen": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/async-listen/-/async-listen-3.0.0.tgz", - "integrity": "sha512-V+SsTpDqkrWTimiotsyl33ePSjA5/KrithwupuvJ6ztsqPvGv6ge4OredFhPffVXiLN/QUWvE0XcqJaYgt6fOg==", - "dev": true - }, - "esbuild": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.47.tgz", - "integrity": "sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA==", - "dev": true, - "requires": { - "esbuild-android-64": "0.14.47", - "esbuild-android-arm64": "0.14.47", - "esbuild-darwin-64": "0.14.47", - "esbuild-darwin-arm64": "0.14.47", - "esbuild-freebsd-64": "0.14.47", - "esbuild-freebsd-arm64": "0.14.47", - "esbuild-linux-32": "0.14.47", - "esbuild-linux-64": "0.14.47", - "esbuild-linux-arm": "0.14.47", - "esbuild-linux-arm64": "0.14.47", - "esbuild-linux-mips64le": "0.14.47", - "esbuild-linux-ppc64le": "0.14.47", - "esbuild-linux-riscv64": "0.14.47", - "esbuild-linux-s390x": "0.14.47", - "esbuild-netbsd-64": "0.14.47", - "esbuild-openbsd-64": "0.14.47", - "esbuild-sunos-64": "0.14.47", - "esbuild-windows-32": "0.14.47", - "esbuild-windows-64": "0.14.47", - "esbuild-windows-arm64": "0.14.47" - } - }, - "esbuild-android-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.47.tgz", - "integrity": "sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.47.tgz", - "integrity": "sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.47.tgz", - "integrity": "sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.47.tgz", - "integrity": "sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.47.tgz", - "integrity": "sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.47.tgz", - "integrity": "sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.47.tgz", - "integrity": "sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.47.tgz", - "integrity": "sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.47.tgz", - "integrity": "sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.47.tgz", - "integrity": "sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.47.tgz", - "integrity": "sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.47.tgz", - "integrity": "sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.47.tgz", - "integrity": "sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.47.tgz", - "integrity": "sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.47.tgz", - "integrity": "sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.47.tgz", - "integrity": "sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.47.tgz", - "integrity": "sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-32": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.47.tgz", - "integrity": "sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.47.tgz", - "integrity": "sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.47", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.47.tgz", - "integrity": "sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ==", - "dev": true, - "optional": true - }, - "node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true - }, - "undici": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.26.5.tgz", - "integrity": "sha512-cSb4bPFd5qgR7qr2jYAi0hlX9n5YKK2ONKkLFkxl+v/9BvC0sOpZjBHDBSXc5lWAf5ty9oZdRXytBIHzgUcerw==", - "dev": true, - "requires": { - "@fastify/busboy": "^2.0.0" - } - } - } - }, - "@vercel/python": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@vercel/python/-/python-4.1.0.tgz", - "integrity": "sha512-EIQXK5zL6fce0Barh74gc7xyLtRyvgmLZDIVQ8yJLtFxPlPCRY3GXkdJ7Jdcw8Pd0uuVF0vIHatv18xSLbcwtg==", - "dev": true - }, - "@vercel/redwood": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vercel/redwood/-/redwood-2.0.5.tgz", - "integrity": "sha512-9iWTxfMkC7yNnwN2xxOdptiIDAgXe1V1fh3aw92MWt5PBRcFY9RqgIPF7Q3Qa7yzQFgpbHwCnSTqWO+HCEuFtw==", - "dev": true, - "requires": { - "@vercel/nft": "0.24.2", - "@vercel/routing-utils": "3.1.0", - "semver": "6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@vercel/remix-builder": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/@vercel/remix-builder/-/remix-builder-2.0.14.tgz", - "integrity": "sha512-c+ILERSRq404sf6kt0qWhYhuxWkkoTEm2FdLoUnVs21K6kzGtJMJbUExEHoPZvN9a0tq86ZU86jVvRZV6WL0cQ==", - "dev": true, - "requires": { - "@vercel/nft": "0.24.2", - "@vercel/static-config": "3.0.0", - "ts-morph": "12.0.0" - } - }, - "@vercel/routing-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vercel/routing-utils/-/routing-utils-3.1.0.tgz", - "integrity": "sha512-Ci5xTjVTJY/JLZXpCXpLehMft97i9fH34nu9PGav6DtwkVUF6TOPX86U0W0niQjMZ5n6/ZP0BwcJK2LOozKaGw==", - "dev": true, - "requires": { - "ajv": "^6.0.0", - "path-to-regexp": "6.1.0" - }, - "dependencies": { - "path-to-regexp": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.1.0.tgz", - "integrity": "sha512-h9DqehX3zZZDCEm+xbfU0ZmwCGFCAAraPJWMXJ4+v32NjZJilVg3k1TcKsRgIb8IQ/izZSaydDc1OhJCZvs2Dw==", - "dev": true - } - } - }, - "@vercel/ruby": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vercel/ruby/-/ruby-2.0.4.tgz", - "integrity": "sha512-EpZyfF6wFGzFDmubFIh/EZtYpKindmXx/69xSfKEBTVU0afgljyOOICbyZePe5tvigfOEBLSLgrt/2nN+MlLtA==", - "dev": true - }, - "@vercel/static-build": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/@vercel/static-build/-/static-build-2.0.14.tgz", - "integrity": "sha512-l5eQtJbk5Pc+P8XARDnpcbX4LnK3bGy7uf6S1aFOD4h6F8iBdg0agWTufZnq5BI91pcPVICPazM5BYhigIEznQ==", - "dev": true, - "requires": { - "@vercel/gatsby-plugin-vercel-analytics": "1.0.11", - "@vercel/gatsby-plugin-vercel-builder": "2.0.12", - "@vercel/static-config": "3.0.0", - "ts-morph": "12.0.0" - } - }, - "@vercel/static-config": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@vercel/static-config/-/static-config-3.0.0.tgz", - "integrity": "sha512-2qtvcBJ1bGY0dYGYh3iM7yGKkk971FujLEDXzuW5wcZsPr1GSEjO/w2iSr3qve6nDDtBImsGoDEnus5FI4+fIw==", - "dev": true, - "requires": { - "ajv": "8.6.3", - "json-schema-to-ts": "1.6.4", - "ts-morph": "12.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.6.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", - "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - } - } - }, - "@vue/compiler-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", - "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", - "peer": true, - "requires": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.8", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "peer": true - } - } - }, - "@vue/compiler-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", - "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", - "peer": true, - "requires": { - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8" - } - }, - "@vue/compiler-sfc": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", - "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", - "peer": true, - "requires": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-ssr": "3.3.8", - "@vue/reactivity-transform": "3.3.8", - "@vue/shared": "3.3.8", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5", - "postcss": "^8.4.31", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "peer": true - } - } - }, - "@vue/compiler-ssr": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", - "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", - "peer": true, - "requires": { - "@vue/compiler-dom": "3.3.8", - "@vue/shared": "3.3.8" - } - }, - "@vue/reactivity": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.8.tgz", - "integrity": "sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==", - "peer": true, - "requires": { - "@vue/shared": "3.3.8" - } - }, - "@vue/reactivity-transform": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", - "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", - "peer": true, - "requires": { - "@babel/parser": "^7.23.0", - "@vue/compiler-core": "3.3.8", - "@vue/shared": "3.3.8", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5" - }, - "dependencies": { - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "peer": true - } - } - }, - "@vue/runtime-core": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.8.tgz", - "integrity": "sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==", - "peer": true, - "requires": { - "@vue/reactivity": "3.3.8", - "@vue/shared": "3.3.8" - } - }, - "@vue/runtime-dom": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.8.tgz", - "integrity": "sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==", - "peer": true, - "requires": { - "@vue/runtime-core": "3.3.8", - "@vue/shared": "3.3.8", - "csstype": "^3.1.2" - } - }, - "@vue/server-renderer": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.8.tgz", - "integrity": "sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==", - "peer": true, - "requires": { - "@vue/compiler-ssr": "3.3.8", - "@vue/shared": "3.3.8" - } - }, - "@vue/shared": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", - "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", - "peer": true - }, - "@webgpu/types": { - "version": "0.1.30", - "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.30.tgz", - "integrity": "sha512-9AXJSmL3MzY8ZL//JjudA//q+2kBRGhLBFpkdGksWIuxrMy81nFrCzj2Am+mbh8WoU6rXmv7cY5E3rdlyru2Qg==" - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "requires": { - "event-target-shim": "^5.0.0" - } - }, - "acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==" - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "acorn-walk": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.1.tgz", - "integrity": "sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "requires": { - "humanize-ms": "^1.2.1" - } - }, - "ai": { - "version": "2.2.25", - "resolved": "https://registry.npmjs.org/ai/-/ai-2.2.25.tgz", - "integrity": "sha512-iXu3pzPpDPBGDir8hz86FAJmJTynMfBH4V/DXyR3GGeaHOfjdrErlcMm862CSalR6PDMwDOSCQVwJqtdnvIncQ==", - "requires": { - "eventsource-parser": "1.0.0", - "nanoid": "3.3.6", - "solid-swr-store": "0.10.7", - "sswr": "2.0.0", - "swr": "2.2.0", - "swr-store": "0.10.6", - "swrv": "1.0.4" - }, - "dependencies": { - "nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==" - } - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "arg": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.0.tgz", - "integrity": "sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", - "requires": { - "dequal": "^2.0.3" - } - }, - "array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - } - }, - "array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - } - }, - "array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.tosorted": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", - "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - } - }, - "as-table": { - "version": "1.0.55", - "resolved": "https://registry.npmjs.org/as-table/-/as-table-1.0.55.tgz", - "integrity": "sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==", - "dev": true, - "requires": { - "printable-characters": "^1.0.42" - } - }, - "ast-types": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", - "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", - "dev": true, - "requires": { - "tslib": "^2.0.1" - } - }, - "ast-types-flow": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true - }, - "async-listen": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/async-listen/-/async-listen-1.2.0.tgz", - "integrity": "sha512-CcEtRh/oc9Jc4uWeUwdpG/+Mb2YUHKmdaTf0gUr7Wa+bfp4xx70HOb3RuSTJMvqKNB1TkdTfjLdrcz2X4rkkZA==", - "dev": true - }, - "async-sema": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", - "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==", - "dev": true - }, - "asynciterator.prototype": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", - "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.3" - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true - }, - "axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", - "dev": true - }, - "axobject-query": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", - "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", - "requires": { - "dequal": "^2.0.3" - } - }, - "b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "dev": true - }, - "babel-plugin-macros": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", - "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "requires": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA==" - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "blake3-wasm": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", - "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", - "dev": true - }, - "bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dev": true, - "requires": { - "big-integer": "^1.6.44" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", - "dev": true, - "requires": { - "run-applescript": "^5.0.0" - } - }, - "busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "requires": { - "streamsearch": "^1.1.0" - } - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", - "dev": true, - "requires": { - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" - }, - "caniuse-lite": { - "version": "1.0.30001563", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001563.tgz", - "integrity": "sha512-na2WUmOxnwIZtwnFI2CZ/3er0wdNzU7hN+cPYz/z2ajHThnkWjNBOpEPP4n+4r2WPM847JaMotaJE3bnfzjyKw==" - }, - "capnp-ts": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/capnp-ts/-/capnp-ts-0.7.0.tgz", - "integrity": "sha512-XKxXAC3HVPv7r674zP0VC3RTXz+/JKhfyw94ljvF80yynK6VkTnqE3jMuN8b3dUVmmc43TjyxjW4KTsmB3c86g==", - "dev": true, - "requires": { - "debug": "^4.3.1", - "tslib": "^2.2.0" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==" - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clsx": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz", - "integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==" - }, - "code-block-writer": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-10.1.1.tgz", - "integrity": "sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==", - "dev": true - }, - "code-red": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/code-red/-/code-red-1.0.4.tgz", - "integrity": "sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==", - "peer": true, - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.15", - "@types/estree": "^1.0.1", - "acorn": "^8.10.0", - "estree-walker": "^3.0.3", - "periscopic": "^3.1.0" - } - }, - "color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "dev": true, - "requires": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "dev": true, - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", - "dev": true - }, - "comment-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", - "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-hrtime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/convert-hrtime/-/convert-hrtime-3.0.0.tgz", - "integrity": "sha512-7V+KqSvMiHp8yWDuwfww06XleMWVVB9b9tURBx+G7UTADuo5hYPuowKloz4OzOqbPezxgo+fdQ1522WzPG4OeA==", - "dev": true - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "core-js": { - "version": "3.29.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.29.1.tgz", - "integrity": "sha512-+jwgnhg6cQxKYIIjGtAHq2nwUOolo9eoFZ4sHfUH09BLXBgxnH4gA0zEd+t+BO2cNB8idaBtZFcFTRjQJRJmAw==" - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==" - }, - "css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", - "peer": true, - "requires": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - } - }, - "csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true - }, - "data-uri-to-buffer": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", - "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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==", - "dev": true, - "requires": { - "mimic-response": "^3.1.0" - } - }, - "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==", - "dev": true - }, - "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==", - "dev": true - }, - "default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dev": true, - "requires": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - } - }, - "default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dev": true, - "requires": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - } - }, - "define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - } - }, - "define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", - "dev": true - }, - "define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "requires": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==" - }, - "detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", - "dev": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "digest-fetch": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/digest-fetch/-/digest-fetch-1.3.0.tgz", - "integrity": "sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA==", - "requires": { - "base-64": "^0.1.0", - "md5": "^2.3.0" - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "requires": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - } - }, - "edge-runtime": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/edge-runtime/-/edge-runtime-2.5.7.tgz", - "integrity": "sha512-gA4qSVP0sNwJlkdQ2nahDPASlSl8twUd17o+JolPa1EtXpLTGzIpOETvodgJwXIxa+zaD8bnAXCdsWrx2PhlVQ==", - "dev": true, - "requires": { - "@edge-runtime/format": "2.2.0", - "@edge-runtime/ponyfill": "2.4.1", - "@edge-runtime/vm": "3.1.7", - "async-listen": "3.0.1", - "mri": "1.2.0", - "picocolors": "1.0.0", - "pretty-ms": "7.0.1", - "signal-exit": "4.0.2", - "time-span": "4.0.0" - }, - "dependencies": { - "async-listen": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/async-listen/-/async-listen-3.0.1.tgz", - "integrity": "sha512-cWMaNwUJnf37C/S5TfCkk/15MwbPRwVYALA2jtjkbHjCmAPiDXyNJy2q3p1KAZzDLHAWyarUWSujUoHR4pEgrA==", - "dev": true - }, - "signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", - "dev": true - } - } - }, - "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - } - } - }, - "es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" - } - }, - "es-iterator-helpers": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", - "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", - "dev": true, - "requires": { - "asynciterator.prototype": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.1", - "es-set-tostringtag": "^2.0.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.2.1", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.0.1" - } - }, - "es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" - } - }, - "es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", - "dev": true, - "requires": { - "hasown": "^2.0.0" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", - "dev": true, - "requires": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" - } - }, - "esbuild-android-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz", - "integrity": "sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.18.tgz", - "integrity": "sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.18.tgz", - "integrity": "sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.18.tgz", - "integrity": "sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.18.tgz", - "integrity": "sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.18.tgz", - "integrity": "sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.18.tgz", - "integrity": "sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz", - "integrity": "sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.18.tgz", - "integrity": "sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.18.tgz", - "integrity": "sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.18.tgz", - "integrity": "sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.18.tgz", - "integrity": "sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.18.tgz", - "integrity": "sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.18.tgz", - "integrity": "sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.18.tgz", - "integrity": "sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz", - "integrity": "sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz", - "integrity": "sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==", - "dev": true, - "optional": true - }, - "esbuild-windows-32": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.18.tgz", - "integrity": "sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz", - "integrity": "sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.15.18", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.18.tgz", - "integrity": "sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "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==" - }, - "eslint": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", - "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.54.0", - "@humanwhocodes/config-array": "^0.11.13", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - } - }, - "eslint-config-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.0.3.tgz", - "integrity": "sha512-IKPhpLdpSUyKofmsXUfrvBC49JMUTdeaD8ZIH4v9Vk0sC1X6URTuTJCLtA0Vwuj7V/CQh0oISuSTvNn5//Buew==", - "dev": true, - "requires": { - "@next/eslint-plugin-next": "14.0.3", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" - } - }, - "eslint-config-prettier": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", - "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", - "dev": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-import-resolver-typescript": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", - "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", - "dev": true, - "requires": { - "debug": "^4.3.4", - "enhanced-resolve": "^5.12.0", - "eslint-module-utils": "^2.7.4", - "fast-glob": "^3.3.1", - "get-tsconfig": "^4.5.0", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3" - } - }, - "eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-import": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", - "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", - "dev": true, - "requires": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", - "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", - "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" - } - }, - "eslint-plugin-next-on-pages": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-next-on-pages/-/eslint-plugin-next-on-pages-1.8.2.tgz", - "integrity": "sha512-NoZ8XlSQF2IUBF40OUPc8V995ywMOBUlVbuCue1xmjViOaXqS/xgZVB5ZnQc/5m2WxhUvIU44t9JqNpvxE5DZA==", - "dev": true, - "requires": { - "@types/estree-jsx": "^1.0.0", - "comment-parser": "^1.3.1" - } - }, - "eslint-plugin-prettier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", - "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", - "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.5" - } - }, - "eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, - "dependencies": { - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "eslint-plugin-react-hooks": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "dev": true, - "requires": {} - }, - "eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - }, - "espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "peer": true, - "requires": { - "@types/estree": "^1.0.0" - } - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" - }, - "events-intercept": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/events-intercept/-/events-intercept-2.0.0.tgz", - "integrity": "sha512-blk1va0zol9QOrdZt0rFXo5KMkNPVSp92Eju/Qz8THwKWKRKeE0T8Br/1aW6+Edkyq9xHYgYxn2QtOnUKPUp+Q==", - "dev": true - }, - "eventsource-parser": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-1.0.0.tgz", - "integrity": "sha512-9jgfSCa3dmEme2ES3mPByGXfgZ87VbP97tng1G2nWwWx6bV2nYxm2AWCrbQjXToSe+yYlqaZNtxffR9IeQr95g==" - }, - "execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - } - }, - "exit-hook": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz", - "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==", - "dev": true - }, - "expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", - "dev": true - }, - "fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "dev": true - }, - "fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "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==", - "dev": true, - "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", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "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" - } - }, - "form-data-encoder": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz", - "integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==" - }, - "formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "requires": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" - }, - "dependencies": { - "web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" - } - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dev": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" - }, - "function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "generic-pool": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.4.2.tgz", - "integrity": "sha512-H7cUpwCQSiJmAHM4c/aFu6fUfrhWXW1ncyh8ftxEPMu6AiYkHw9K8br720TGPZJbk5eOH2bynjZD1yPvdDAmag==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", - "dev": true, - "requires": { - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - } - }, - "get-source": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/get-source/-/get-source-2.0.12.tgz", - "integrity": "sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==", - "dev": true, - "requires": { - "data-uri-to-buffer": "^2.0.0", - "source-map": "^0.6.1" - } - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dev": true, - "requires": { - "resolve-pkg-maps": "^1.0.0" - } - }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "dev": true - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" - }, - "globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.2" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "requires": { - "function-bind": "^1.1.2" - } - }, - "hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "requires": { - "react-is": "^16.7.0" - } - }, - "http-errors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.4.0.tgz", - "integrity": "sha512-oLjPqve1tuOl5aRhv8GK5eHpqP1C9fb+Ol+XTLjKfLltE44zdDbEdjPSbU7Ch5rSNsVFqZn97SrMmZLdu1/YMw==", - "dev": true, - "requires": { - "inherits": "2.0.1", - "statuses": ">= 1.2.1 < 2" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", - "dev": true - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.2", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "dev": true - }, - "is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true - }, - "is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "requires": { - "hasown": "^2.0.0" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-finalizationregistry": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dev": true, - "requires": { - "is-docker": "^3.0.0" - } - }, - "is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-reference": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", - "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", - "peer": true, - "requires": { - "@types/estree": "*" - } - }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", - "dev": true, - "requires": { - "which-typed-array": "^1.1.11" - } - }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - }, - "dependencies": { - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - } - } - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "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==", - "dev": true - }, - "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", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, - "json-schema-to-ts": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/json-schema-to-ts/-/json-schema-to-ts-1.6.4.tgz", - "integrity": "sha512-pR4yQ9DHz6itqswtHCm26mw45FSNfQ9rEQjosaZErhn5J3J2sIViQiz8rDaezjKAhFGpmsoczYVBgGHzFw/stA==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ts-toolbelt": "^6.15.5" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - } - }, - "keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "language-subtag-registry": { - "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", - "dev": true - }, - "language-tags": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", - "dev": true, - "requires": { - "language-subtag-registry": "^0.3.20" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "locate-character": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", - "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", - "peer": true - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "magic-string": { - "version": "0.30.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", - "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", - "peer": true, - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.15" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "md5": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", - "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", - "requires": { - "charenc": "0.0.2", - "crypt": "0.0.2", - "is-buffer": "~1.1.6" - } - }, - "mdn-data": { - "version": "2.0.30", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", - "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", - "peer": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "micro": { - "version": "9.3.5-canary.3", - "resolved": "https://registry.npmjs.org/micro/-/micro-9.3.5-canary.3.tgz", - "integrity": "sha512-viYIo9PefV+w9dvoIBh1gI44Mvx1BOk67B4BpC2QK77qdY0xZF0Q+vWLt/BII6cLkIc8rLmSIcJaB/OrXXKe1g==", - "dev": true, - "requires": { - "arg": "4.1.0", - "content-type": "1.0.4", - "raw-body": "2.4.1" - } - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true - }, - "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==", - "dev": true - }, - "miniflare": { - "version": "3.20231030.4", - "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20231030.4.tgz", - "integrity": "sha512-7MBz0ArLuDop1WJGZC6tFgN6c5MRyDOIlxbm3yp0TRBpvDS/KsTuWCQcCjsxN4QQ5zvL3JTkuIZbQzRRw/j6ow==", - "dev": true, - "requires": { - "acorn": "^8.8.0", - "acorn-walk": "^8.2.0", - "capnp-ts": "^0.7.0", - "exit-hook": "^2.2.1", - "glob-to-regexp": "^0.4.1", - "source-map-support": "0.5.21", - "stoppable": "^1.1.0", - "undici": "^5.22.1", - "workerd": "1.20231030.0", - "ws": "^8.11.0", - "youch": "^3.2.2", - "zod": "^3.20.6" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - }, - "dependencies": { - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dev": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "mri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "mustache": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", - "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", - "dev": true - }, - "nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==" - }, - "napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.0.3.tgz", - "integrity": "sha512-AbYdRNfImBr3XGtvnwOxq8ekVCwbFTv/UJoLwmaX89nk9i051AEY4/HAWzU0YpaTDw8IofUpmuIlvzWF13jxIw==", - "requires": { - "@next/env": "14.0.3", - "@next/swc-darwin-arm64": "14.0.3", - "@next/swc-darwin-x64": "14.0.3", - "@next/swc-linux-arm64-gnu": "14.0.3", - "@next/swc-linux-arm64-musl": "14.0.3", - "@next/swc-linux-x64-gnu": "14.0.3", - "@next/swc-linux-x64-musl": "14.0.3", - "@next/swc-win32-arm64-msvc": "14.0.3", - "@next/swc-win32-ia32-msvc": "14.0.3", - "@next/swc-win32-x64-msvc": "14.0.3", - "@swc/helpers": "0.5.2", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001406", - "postcss": "8.4.31", - "styled-jsx": "5.1.1", - "watchpack": "2.4.0" - } - }, - "node-abi": { - "version": "3.51.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.51.0.tgz", - "integrity": "sha512-SQkEP4hmNWjlniS5zdnfIXTk1x7Ome85RDzHlTbBtzE97Gfwz/Ipw4v/Ryk20DWIy3yCNVLVlGKApCnmvYoJbA==", - "dev": true, - "requires": { - "semver": "^7.3.5" - } - }, - "node-addon-api": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-6.1.0.tgz", - "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", - "dev": true - }, - "node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" - }, - "node-fetch": { - "version": "2.6.13", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.13.tgz", - "integrity": "sha512-StxNAxh15zr77QvvkmveSQ8uCQ4+v5FkvNTj0OESmiHu+VRi/gXArXtkWMElOsOUNLtUEvI4yS+rdtOHZTwlQA==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-gyp-build": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.7.1.tgz", - "integrity": "sha512-wTSrZ+8lsRRa3I3H8Xr65dLWSgCvY2l4AOnaeKdPA9TB/WYMPaTcrzf3rXvFoVvjKNVnu0CcWSx54qq9GKRUYg==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", - "dev": true, - "requires": { - "path-key": "^4.0.0" - }, - "dependencies": { - "path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true - } - } - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "dev": true, - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" - } - }, - "object.hasown": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", - "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", - "dev": true, - "requires": { - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "requires": { - "mimic-fn": "^4.0.0" - } - }, - "open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", - "dev": true, - "requires": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" - } - }, - "openai": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/openai/-/openai-4.19.1.tgz", - "integrity": "sha512-9TddzuZBn2xxhghGGTHLZ4EeNBGTLs3xVzh266NiSJvtUsCsZQ5yVV6H5NhnhyAkKK8uUiZOUUlUAk3HdV+4xg==", - "requires": { - "@types/node": "^18.11.18", - "@types/node-fetch": "^2.6.4", - "abort-controller": "^3.0.0", - "agentkeepalive": "^4.2.1", - "digest-fetch": "^1.3.0", - "form-data-encoder": "1.7.2", - "formdata-node": "^4.3.2", - "node-fetch": "^2.6.7", - "web-streams-polyfill": "^3.2.1" - }, - "dependencies": { - "@types/node": { - "version": "18.18.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.11.tgz", - "integrity": "sha512-c1vku6qnTeujJneYH94/4aq73XrVcsJe35UPyAsSok1ijiKrkRzK+AxQPSpNMUnC03roWBBwJx/9I8V7lQoxmA==", - "requires": { - "undici-types": "~5.26.4" - } - } - } - }, - "optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "os-paths": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/os-paths/-/os-paths-4.4.0.tgz", - "integrity": "sha512-wrAwOeXp1RRMFfQY8Sy7VaGVmPocaLwSFOYCGKSyo8qmJ+/yaafCl5BCA1IQZWqFSRBrKDYFeR9d/VyQzfH/jg==", - "dev": true - }, - "p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "dev": true - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "package-manager-manager": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/package-manager-manager/-/package-manager-manager-0.2.0.tgz", - "integrity": "sha512-V02gl0bafXJ2gcY6j+5IHM7UdnYwmF+2OsFZuqVcha6iMSStD4dpIOBOsypnUIwOi4jLcPz6RQuyifmAE3mG8g==", - "dev": true, - "requires": { - "js-yaml": "^4.1.0", - "shellac": "^0.8.0" - } - }, - "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==", - "requires": { - "callsites": "^3.0.0" - } - }, - "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==", - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", - "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", - "dev": true - }, - "path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-match": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/path-match/-/path-match-1.2.4.tgz", - "integrity": "sha512-UWlehEdqu36jmh4h5CWJ7tARp1OEVKGHKm6+dg9qMq5RKUTV5WJrGgaZ3dN2m7WFAXDbjlHzvJvL/IUpy84Ktw==", - "dev": true, - "requires": { - "http-errors": "~1.4.0", - "path-to-regexp": "^1.0.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - } - } - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" - }, - "pcre-to-regexp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pcre-to-regexp/-/pcre-to-regexp-1.1.0.tgz", - "integrity": "sha512-KF9XxmUQJ2DIlMj3TqNqY1AWvyvTuIuq11CuuekxyaYMiFuMKGgQrePYMX5bXKLhLG3sDI4CsGAYHPaT7VV7+g==", - "dev": true - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "periscopic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", - "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", - "peer": true, - "requires": { - "@types/estree": "^1.0.0", - "estree-walker": "^3.0.0", - "is-reference": "^3.0.0" - } - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "requires": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dev": true, - "requires": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "dependencies": { - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dev": true, - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - } - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "prettier": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", - "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", - "dev": true, - "peer": true - }, - "prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "requires": { - "fast-diff": "^1.1.2" - } - }, - "pretty-ms": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", - "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", - "dev": true, - "requires": { - "parse-ms": "^2.1.0" - } - }, - "printable-characters": { - "version": "1.0.42", - "resolved": "https://registry.npmjs.org/printable-characters/-/printable-characters-1.0.42.tgz", - "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==", - "dev": true - }, - "promisepipe": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/promisepipe/-/promisepipe-3.0.0.tgz", - "integrity": "sha512-V6TbZDJ/ZswevgkDNpGt/YqNCiZP9ASfgU+p83uJE6NrGtvSGoOcHLiDCqkMs2+yg7F5qHdLV8d0aS8O26G/KA==", - "dev": true - }, - "prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, - "raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "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==", - "dev": true - } - } - }, - "react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "requires": { - "loose-envify": "^1.1.0" - } - }, - "react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", - "requires": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" - } - }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "react-transition-group": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", - "requires": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect.getprototypeof": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", - "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "globalthis": "^1.0.3", - "which-builtin-type": "^1.1.3" - } - }, - "regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" - }, - "regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" - } - }, - "reghex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/reghex/-/reghex-1.0.2.tgz", - "integrity": "sha512-bYtyDmFGHxn1Y4gxIs12+AUQ1WRDNvaIhn6ZuKc5KUbSVcmm6U6vx/RA66s26xGhTWBErKKDKK7lorkvvIBB5g==", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" - }, - "resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true - }, - "resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rollup-plugin-inject": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz", - "integrity": "sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1", - "magic-string": "^0.25.3", - "rollup-pluginutils": "^2.8.1" - }, - "dependencies": { - "estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true - }, - "magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - } - } - }, - "rollup-plugin-node-polyfills": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz", - "integrity": "sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA==", - "dev": true, - "requires": { - "rollup-plugin-inject": "^3.0.0" - } - }, - "rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1" - }, - "dependencies": { - "estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true - } - } - }, - "run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - }, - "dependencies": { - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - } - } - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", - "requires": { - "loose-envify": "^1.1.0" - } - }, - "seedrandom": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz", - "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==" - }, - "selfsigned": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", - "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", - "dev": true, - "requires": { - "@types/node-forge": "^1.3.0", - "node-forge": "^1" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "seroval": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/seroval/-/seroval-0.12.4.tgz", - "integrity": "sha512-JIsZHp98o+okpYN8HEPyI9Blr0gxAUPIGvg3waXrEMFjPz9obiLYMz0uFiUGezKiCK8loosYbn8WsqO8WtAJUA==", - "peer": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", - "dev": true, - "requires": { - "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - } - }, - "set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", - "dev": true, - "requires": { - "define-data-property": "^1.0.1", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" - } - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - }, - "sharp": { - "version": "0.32.6", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.32.6.tgz", - "integrity": "sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==", - "dev": true, - "requires": { - "color": "^4.2.3", - "detect-libc": "^2.0.2", - "node-addon-api": "^6.1.0", - "prebuild-install": "^7.1.1", - "semver": "^7.5.4", - "simple-get": "^4.0.1", - "tar-fs": "^3.0.4", - "tunnel-agent": "^0.6.0" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "shellac": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/shellac/-/shellac-0.8.0.tgz", - "integrity": "sha512-M3F2vzYIM7frKOs0+kgs/ITMlXhGpgtqs9HxDPciz3bckzAqqfd4LrBn+CCmSbICyJS+Jz5UDkmkR1jE+m+g+Q==", - "dev": true, - "requires": { - "reghex": "^1.0.2" - } - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "dev": true - }, - "simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "dev": true, - "requires": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "dev": true, - "requires": { - "is-arrayish": "^0.3.1" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "solid-js": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/solid-js/-/solid-js-1.8.5.tgz", - "integrity": "sha512-xvtJvzJzWbsn35oKFhW9kNwaxG1Z/YLMsDp4tLVcYZTMPzvzQ8vEZuyDQ6nt7xDArVgZJ7TUFrJUwrui/oq53A==", - "peer": true, - "requires": { - "csstype": "^3.1.0", - "seroval": "^0.12.0" - } - }, - "solid-swr-store": { - "version": "0.10.7", - "resolved": "https://registry.npmjs.org/solid-swr-store/-/solid-swr-store-0.10.7.tgz", - "integrity": "sha512-A6d68aJmRP471aWqKKPE2tpgOiR5fH4qXQNfKIec+Vap+MGQm3tvXlT8n0I8UgJSlNAsSAUuw2VTviH2h3Vv5g==", - "requires": {} - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "sswr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sswr/-/sswr-2.0.0.tgz", - "integrity": "sha512-mV0kkeBHcjcb0M5NqKtKVg/uTIYNlIIniyDfSGrSfxpEdM9C365jK0z55pl9K0xAkNTJi2OAOVFQpgMPUk+V0w==", - "requires": { - "swrev": "^4.0.0" - } - }, - "stacktracey": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/stacktracey/-/stacktracey-2.1.8.tgz", - "integrity": "sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw==", - "dev": true, - "requires": { - "as-table": "^1.0.36", - "get-source": "^2.0.12" - } - }, - "stat-mode": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.3.0.tgz", - "integrity": "sha512-QjMLR0A3WwFY2aZdV0okfFEJB5TRjkggXZjxP3A1RsWsNHNu3YPv8btmtc6iCFZ0Rul3FE93OYogvhOUClU+ng==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "stoppable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", - "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", - "dev": true - }, - "stream-to-array": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==", - "dev": true, - "requires": { - "any-promise": "^1.1.0" - } - }, - "stream-to-promise": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", - "integrity": "sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==", - "dev": true, - "requires": { - "any-promise": "~1.3.0", - "end-of-stream": "~1.1.0", - "stream-to-array": "~2.3.0" - }, - "dependencies": { - "end-of-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "integrity": "sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==", - "dev": true, - "requires": { - "once": "~1.3.0" - } - }, - "once": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", - "dev": true, - "requires": { - "wrappy": "1" - } - } - } - }, - "streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==" - }, - "streamx": { - "version": "2.15.5", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.5.tgz", - "integrity": "sha512-9thPGMkKC2GctCzyCUjME3yR03x2xNo0GPKGkRw2UMYN+gqWa9uqpyNWhmsNCutU5zHmkUum0LsCRQTXUgUCAg==", - "dev": true, - "requires": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - } - } - }, - "string.prototype.matchall": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", - "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "regexp.prototype.flags": "^1.5.0", - "set-function-name": "^2.0.0", - "side-channel": "^1.0.4" - } - }, - "string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "node_modules/stylelint/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "node_modules/stylelint/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-ansi": { + "node_modules/stylelint/node_modules/string-width/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { + "dev": true, + "peer": true, + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true + "node_modules/stylelint/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } }, - "styled-jsx": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", - "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", - "requires": { - "client-only": "0.0.1" + "node_modules/stylelint/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + "node_modules/stylelint/node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "supports-color": { + "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "requires": { + "dependencies": { "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.0.0.tgz", + "integrity": "sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=14.18" } }, - "supports-preserve-symlinks-flag": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "svelte": { - "version": "4.2.7", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.7.tgz", - "integrity": "sha512-UExR1KS7raTdycsUrKLtStayu4hpdV3VZQgM0akX8XbXgLBlosdE/Sf3crOgyh9xIjqSYB3UEBuUlIQKRQX2hg==", + "node_modules/svelte": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.8.tgz", + "integrity": "sha512-hU6dh1MPl8gh6klQZwK/n73GiAHiR95IkFsesLPbMeEZi36ydaXL/ZAb4g9sayT0MXzpxyZjR28yderJHxcmYA==", "peer": true, - "requires": { + "dependencies": { "@ampproject/remapping": "^2.2.1", "@jridgewell/sourcemap-codec": "^1.4.15", "@jridgewell/trace-mapping": "^0.3.18", @@ -17110,57 +12076,157 @@ "locate-character": "^3.0.0", "magic-string": "^0.30.4", "periscopic": "^3.1.0" + }, + "engines": { + "node": ">=16" } }, - "swr": { + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true, + "peer": true + }, + "node_modules/swr": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/swr/-/swr-2.2.0.tgz", "integrity": "sha512-AjqHOv2lAhkuUdIiBu9xbuettzAzWXmCEcLONNKJRba87WAefz8Ca9d6ds/SzrPc235n1IxWYdhJ2zF3MNUaoQ==", - "requires": { + "dependencies": { "use-sync-external-store": "^1.2.0" + }, + "peerDependencies": { + "react": "^16.11.0 || ^17.0.0 || ^18.0.0" } }, - "swr-store": { + "node_modules/swr-store": { "version": "0.10.6", "resolved": "https://registry.npmjs.org/swr-store/-/swr-store-0.10.6.tgz", "integrity": "sha512-xPjB1hARSiRaNNlUQvWSVrG5SirCjk2TmaUyzzvk69SZQan9hCJqw/5rG9iL7xElHU784GxRPISClq4488/XVw==", - "requires": { + "dependencies": { "dequal": "^2.0.3" + }, + "engines": { + "node": ">=10" } }, - "swrev": { + "node_modules/swrev": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/swrev/-/swrev-4.0.0.tgz", "integrity": "sha512-LqVcOHSB4cPGgitD1riJ1Hh4vdmITOp+BkmfmXRh4hSF/t7EnS4iD+SOTmq7w5pPm/SiPeto4ADbKS6dHUDWFA==" }, - "swrv": { + "node_modules/swrv": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/swrv/-/swrv-1.0.4.tgz", "integrity": "sha512-zjEkcP8Ywmj+xOJW3lIT65ciY/4AL4e/Or7Gj0MzU3zBJNMdJiT8geVZhINavnlHRMMCcJLHhraLTAiDOTmQ9g==", - "requires": {} + "peerDependencies": { + "vue": ">=3.2.26 < 4" + } + }, + "node_modules/synckit": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "dev": true, + "dependencies": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, + "node_modules/table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "peer": true + }, + "node_modules/table/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } }, - "synckit": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", - "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "peer": true + }, + "node_modules/table/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.5.0" + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "tapable": { + "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "tar": { + "node_modules/tar": { "version": "4.4.18", "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.18.tgz", "integrity": "sha512-ZuOtqqmkV9RE1+4odd+MhBpibmCxNP6PJhH/h2OqNuotTX7/XHPZQJv2pKvWMplFH9SIZZhitehh6vBH6LO8Pg==", "dev": true, - "requires": { + "dependencies": { "chownr": "^1.1.4", "fs-minipass": "^1.2.7", "minipass": "^2.9.0", @@ -17169,112 +12235,187 @@ "safe-buffer": "^5.2.1", "yallist": "^3.1.1" }, - "dependencies": { - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "engines": { + "node": ">=4.5" } }, - "tar-fs": { + "node_modules/tar-fs": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dev": true, - "requires": { + "dependencies": { "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^3.1.5" } }, - "tar-stream": { + "node_modules/tar-stream": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dev": true, - "requires": { + "dependencies": { "b4a": "^1.6.4", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } }, - "text-table": { + "node_modules/tar/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "time-span": { + "node_modules/third-party-web": { + "version": "0.24.1", + "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.24.1.tgz", + "integrity": "sha512-5VqmcM0QEF7KX1/EX9I8Yohs7GoWzhQHXfLOLGmLGbcw/zPdEohXJNctiLu0x4D0i9EzOUjFXlbmcmXcbZXl1Q==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/time-span": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/time-span/-/time-span-4.0.0.tgz", "integrity": "sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==", "dev": true, - "requires": { + "dependencies": { "convert-hrtime": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", + "node_modules/tldts-core": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.1.tgz", + "integrity": "sha512-xBHFfOO2YmEwogupGTKR0IBXe1IJe1/GleNeXpO294Fk90aQSvrop41BKA66CkfNLVOuomJDZ304KxwovT04Vw==", "dev": true }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + "node_modules/tldts-icann": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/tldts-icann/-/tldts-icann-6.1.1.tgz", + "integrity": "sha512-mCWyH+PJYoG6osAMHlHPtuucvtV6F1lkzgUO3kEsQA3My0fadsq4S6UZb6PKl3h1KKBJmjxRPHRQlJ9Vqjwkdw==", + "dev": true, + "dependencies": { + "tldts-core": "^6.1.1" + } + }, + "node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dev": true, + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tmp/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } }, - "tr46": { + "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, - "tree-kill": { + "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true + "dev": true, + "bin": { + "tree-kill": "cli.js" + } }, - "ts-api-utils": { + "node_modules/ts-api-utils": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", "dev": true, - "requires": {} + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } }, - "ts-morph": { + "node_modules/ts-morph": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-12.0.0.tgz", "integrity": "sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==", "dev": true, - "requires": { + "dependencies": { "@ts-morph/common": "~0.11.0", "code-block-writer": "^10.1.1" } }, - "ts-node": { + "node_modules/ts-node": { "version": "10.9.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", "dev": true, - "requires": { + "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", "@tsconfig/node12": "^1.0.7", @@ -17288,329 +12429,508 @@ "make-error": "^1.1.1", "v8-compile-cache-lib": "^3.0.1", "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } } }, - "ts-toolbelt": { + "node_modules/ts-toolbelt": { "version": "6.15.5", "resolved": "https://registry.npmjs.org/ts-toolbelt/-/ts-toolbelt-6.15.5.tgz", "integrity": "sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==", "dev": true }, - "tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, - "requires": { + "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.2", "minimist": "^1.2.6", "strip-bom": "^3.0.0" } }, - "tslib": { + "node_modules/tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, - "tunnel-agent": { + "node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, - "requires": { + "dependencies": { "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" } }, - "type-check": { + "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, - "requires": { + "dependencies": { "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } }, - "typed-array-buffer": { + "node_modules/typed-array-buffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.2.1", "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" } }, - "typed-array-byte-length": { + "node_modules/typed-array-byte-length": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "for-each": "^0.3.3", "has-proto": "^1.0.1", "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "typed-array-byte-offset": { + "node_modules/typed-array-byte-offset": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", "dev": true, - "requires": { + "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", "for-each": "^0.3.3", "has-proto": "^1.0.1", "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "typed-array-length": { + "node_modules/typed-array-length": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "for-each": "^0.3.3", "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "devOptional": true + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } }, - "uid-promise": { + "node_modules/uid-promise": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/uid-promise/-/uid-promise-1.0.0.tgz", "integrity": "sha512-R8375j0qwXyIu/7R0tjdF06/sElHqbmdmWC9M2qQHpEVbvE4I5+38KJI7LUUmQMp7NVq4tKHiBMkT0NFM453Ig==", "dev": true }, - "unbox-primitive": { + "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "requires": { + "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" } }, - "undici": { + "node_modules/undici": { "version": "5.28.2", "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "dev": true, - "requires": { + "dependencies": { "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" } }, - "undici-types": { + "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, - "universalify": { + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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==", - "dev": true + "dev": true, + "engines": { + "node": ">= 4.0.0" + } }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8" + } }, - "uri-js": { + "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, - "requires": { + "dependencies": { "punycode": "^2.1.0" } }, - "use-sync-external-store": { + "node_modules/urlpattern-polyfill": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-9.0.0.tgz", + "integrity": "sha512-WHN8KDQblxd32odxeIgo83rdVDE2bvdkb86it7bMhYZwWKJz0+O0RK/eZiHYnM+zgt/U7hAHOlCQGfjjvSkw2g==", + "dev": true + }, + "node_modules/use-sync-external-store": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "requires": {} + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } }, - "v8-compile-cache-lib": { + "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", "dev": true }, - "vercel": { - "version": "32.7.2", - "resolved": "https://registry.npmjs.org/vercel/-/vercel-32.7.2.tgz", - "integrity": "sha512-esyeo67OZ/f7usKFCrx6NSjsvpo/BP/C8Mfron2uiCb4vXVcjkwOM7TwliHx6b0DbXjpzomdGVUHKRs34VNn2Q==", + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vercel": { + "version": "32.7.2", + "resolved": "https://registry.npmjs.org/vercel/-/vercel-32.7.2.tgz", + "integrity": "sha512-esyeo67OZ/f7usKFCrx6NSjsvpo/BP/C8Mfron2uiCb4vXVcjkwOM7TwliHx6b0DbXjpzomdGVUHKRs34VNn2Q==", + "dev": true, + "dependencies": { + "@vercel/build-utils": "7.3.0", + "@vercel/fun": "1.1.0", + "@vercel/go": "3.0.4", + "@vercel/hydrogen": "1.0.1", + "@vercel/next": "4.0.15", + "@vercel/node": "3.0.12", + "@vercel/python": "4.1.0", + "@vercel/redwood": "2.0.5", + "@vercel/remix-builder": "2.0.14", + "@vercel/ruby": "2.0.4", + "@vercel/static-build": "2.0.14", + "chokidar": "3.3.1" + }, + "bin": { + "vc": "dist/index.js", + "vercel": "dist/index.js" + }, + "engines": { + "node": ">= 16" + } + }, + "node_modules/vercel/node_modules/chokidar": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", + "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.3.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.1.2" + } + }, + "node_modules/vercel/node_modules/fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "deprecated": "\"Please update to latest v2.3 or v2.2\"", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vercel/node_modules/readdirp": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", + "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", "dev": true, - "requires": { - "@vercel/build-utils": "7.3.0", - "@vercel/fun": "1.1.0", - "@vercel/go": "3.0.4", - "@vercel/hydrogen": "1.0.1", - "@vercel/next": "4.0.15", - "@vercel/node": "3.0.12", - "@vercel/python": "4.1.0", - "@vercel/redwood": "2.0.5", - "@vercel/remix-builder": "2.0.14", - "@vercel/ruby": "2.0.4", - "@vercel/static-build": "2.0.14", - "chokidar": "3.3.1" - }, "dependencies": { - "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" - } - }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", - "dev": true, - "requires": { - "picomatch": "^2.0.7" - } - } + "picomatch": "^2.0.7" + }, + "engines": { + "node": ">=8.10.0" } }, - "vue": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.8.tgz", - "integrity": "sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==", + "node_modules/vue": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.3.tgz", + "integrity": "sha512-GjN+culMAGv/mUbkIv8zMKItno8npcj5gWlXkSxf1SPTQf8eJ4A+YfHIvQFyL1IfuJcMl3soA7SmN1fRxbf/wA==", "peer": true, - "requires": { - "@vue/compiler-dom": "3.3.8", - "@vue/compiler-sfc": "3.3.8", - "@vue/runtime-dom": "3.3.8", - "@vue/server-renderer": "3.3.8", - "@vue/shared": "3.3.8" + "dependencies": { + "@vue/compiler-dom": "3.4.3", + "@vue/compiler-sfc": "3.4.3", + "@vue/runtime-dom": "3.4.3", + "@vue/server-renderer": "3.4.3", + "@vue/shared": "3.4.3" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "watchpack": { + "node_modules/watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "requires": { + "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "web-streams-polyfill": { + "node_modules/web-streams-polyfill": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", - "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "engines": { + "node": ">= 8" + } }, - "web-vitals": { + "node_modules/web-vitals": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-0.2.4.tgz", "integrity": "sha512-6BjspCO9VriYy12z356nL6JBS0GYeEcA457YyRzD+dD6XYCQ75NKhcOHUMHentOE7OcVCIXXDvOm0jKFfQG2Gg==", "dev": true }, - "webidl-conversions": { + "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, - "whatwg-url": { + "node_modules/whatwg-fetch": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", + "dev": true + }, + "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "requires": { + "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, - "which": { + "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-builtin-type": { + "node_modules/which-builtin-type": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", "dev": true, - "requires": { + "dependencies": { "function.prototype.name": "^1.1.5", "has-tostringtag": "^1.0.0", "is-async-function": "^2.0.0", @@ -17623,217 +12943,584 @@ "which-boxed-primitive": "^1.0.2", "which-collection": "^1.0.1", "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-collection": { + "node_modules/which-collection": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", "dev": true, - "requires": { + "dependencies": { "is-map": "^2.0.1", "is-set": "^2.0.1", "is-weakmap": "^2.0.1", "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-typed-array": { + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "dev": true + }, + "node_modules/which-typed-array": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", "dev": true, - "requires": { + "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.4", "for-each": "^0.3.3", "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/workerd": { + "version": "1.20231030.0", + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20231030.0.tgz", + "integrity": "sha512-+FSW+d31f8RrjHanFf/R9A+Z0csf3OtsvzdPmAKuwuZm/5HrBv83cvG9fFeTxl7/nI6irUUXIRF9xcj/NomQzQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "workerd": "bin/workerd" + }, + "engines": { + "node": ">=16" + }, + "optionalDependencies": { + "@cloudflare/workerd-darwin-64": "1.20231030.0", + "@cloudflare/workerd-darwin-arm64": "1.20231030.0", + "@cloudflare/workerd-linux-64": "1.20231030.0", + "@cloudflare/workerd-linux-arm64": "1.20231030.0", + "@cloudflare/workerd-windows-64": "1.20231030.0" + } + }, + "node_modules/wrangler": { + "version": "3.22.1", + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.22.1.tgz", + "integrity": "sha512-fN7WOF6Ono/TV5V90PuJQNf0azS7B+5C/N/KRjqhlAIQBz+c0yLOGkF6kC/akxjr1yIAC9AzcPk9+OuTSq0C+g==", + "dev": true, + "dependencies": { + "@cloudflare/kv-asset-handler": "^0.2.0", + "@cspotcode/source-map-support": "0.8.1", + "@esbuild-plugins/node-globals-polyfill": "^0.2.3", + "@esbuild-plugins/node-modules-polyfill": "^0.2.2", + "blake3-wasm": "^2.1.5", + "chokidar": "^3.5.3", + "esbuild": "0.17.19", + "miniflare": "3.20231030.4", + "nanoid": "^3.3.3", + "path-to-regexp": "^6.2.0", + "resolve.exports": "^2.0.2", + "selfsigned": "^2.0.1", + "source-map": "0.6.1", + "xxhash-wasm": "^1.0.1" + }, + "bin": { + "wrangler": "bin/wrangler.js", + "wrangler2": "bin/wrangler.js" + }, + "engines": { + "node": ">=16.17.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/wrangler/node_modules/@esbuild/android-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/wrangler/node_modules/@esbuild/linux-loong64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/wrangler/node_modules/esbuild": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" + } + }, + "node_modules/wrangler/node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "dev": true + }, + "node_modules/wrangler/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "peer": true + }, + "node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" } }, - "workerd": { - "version": "1.20231030.0", - "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20231030.0.tgz", - "integrity": "sha512-+FSW+d31f8RrjHanFf/R9A+Z0csf3OtsvzdPmAKuwuZm/5HrBv83cvG9fFeTxl7/nI6irUUXIRF9xcj/NomQzQ==", + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "@cloudflare/workerd-darwin-64": "1.20231030.0", - "@cloudflare/workerd-darwin-arm64": "1.20231030.0", - "@cloudflare/workerd-linux-64": "1.20231030.0", - "@cloudflare/workerd-linux-arm64": "1.20231030.0", - "@cloudflare/workerd-windows-64": "1.20231030.0" + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "wrangler": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.20.0.tgz", - "integrity": "sha512-7mg25zJByhBmrfG+CbImSid7JNd5lxGovLA167ndtE8Yrqd3TUukrGWL8o0RCQIm0FUcgl2nCzWArJDShlZVKA==", + "node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "requires": { - "@cloudflare/kv-asset-handler": "^0.2.0", - "@esbuild-plugins/node-globals-polyfill": "^0.2.3", - "@esbuild-plugins/node-modules-polyfill": "^0.2.2", - "blake3-wasm": "^2.1.5", - "chokidar": "^3.5.3", - "esbuild": "0.17.19", - "fsevents": "~2.3.2", - "miniflare": "3.20231030.4", - "nanoid": "^3.3.3", - "path-to-regexp": "^6.2.0", - "resolve.exports": "^2.0.2", - "selfsigned": "^2.0.1", - "source-map": "0.6.1", - "source-map-support": "0.5.21", - "xxhash-wasm": "^1.0.1" + "engines": { + "node": ">=8" } }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "ws": { - "version": "8.15.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.1.tgz", - "integrity": "sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==", + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true, - "requires": {} + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } }, - "xdg-app-paths": { + "node_modules/xdg-app-paths": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/xdg-app-paths/-/xdg-app-paths-5.1.0.tgz", "integrity": "sha512-RAQ3WkPf4KTU1A8RtFx3gWywzVKe00tfOPFfl2NDGqbIFENQO4kqAJp7mhQjNj/33W5x5hiWWUdyfPq/5SU3QA==", "dev": true, - "requires": { + "dependencies": { "xdg-portable": "^7.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true, + "engines": { + "node": ">=8" } }, - "xdg-portable": { + "node_modules/xdg-portable": { "version": "7.3.0", "resolved": "https://registry.npmjs.org/xdg-portable/-/xdg-portable-7.3.0.tgz", "integrity": "sha512-sqMMuL1rc0FmMBOzCpd0yuy9trqF2yTTVe+E9ogwCSWQCdDEtQUwrZPT6AxqtsFGRNxycgncbP/xmOOSPw5ZUw==", "dev": true, - "requires": { + "dependencies": { "os-paths": "^4.0.1" + }, + "engines": { + "node": ">= 6.0" } }, - "xxhash-wasm": { + "node_modules/xxhash-wasm": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-1.0.2.tgz", "integrity": "sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==", "dev": true }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" } }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/yargs/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yargs/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } }, - "yauzl": { + "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==", "dev": true, - "requires": { + "dependencies": { "buffer-crc32": "~0.2.3", "fd-slicer": "~1.1.0" } }, - "yauzl-clone": { + "node_modules/yauzl-clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/yauzl-clone/-/yauzl-clone-1.0.4.tgz", "integrity": "sha512-igM2RRCf3k8TvZoxR2oguuw4z1xasOnA31joCqHIyLkeWrvAc2Jgay5ISQ2ZplinkoGaJ6orCz56Ey456c5ESA==", "dev": true, - "requires": { + "dependencies": { "events-intercept": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, - "yauzl-promise": { + "node_modules/yauzl-promise": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/yauzl-promise/-/yauzl-promise-2.1.3.tgz", "integrity": "sha512-A1pf6fzh6eYkK0L4Qp7g9jzJSDrM6nN0bOn5T0IbY4Yo3w+YkWlHFkJP7mzknMXjqusHFHlKsK2N+4OLsK2MRA==", "dev": true, - "requires": { + "dependencies": { "yauzl": "^2.9.1", "yauzl-clone": "^1.0.4" + }, + "engines": { + "node": ">=6" } }, - "yn": { + "node_modules/yn": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "yocto-queue": { + "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "youch": { + "node_modules/youch": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/youch/-/youch-3.3.3.tgz", "integrity": "sha512-qSFXUk3UZBLfggAW3dJKg0BMblG5biqSF8M34E06o5CSsZtH92u9Hqmj2RzGiHDi64fhe83+4tENFP2DB6t6ZA==", "dev": true, - "requires": { + "dependencies": { "cookie": "^0.5.0", "mustache": "^4.2.0", "stacktracey": "^2.1.8" } }, - "zod": { + "node_modules/zod": { "version": "3.22.4", "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz", "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==", - "dev": true + "dev": true, + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } } } } diff --git a/package.json b/package.json index b261b26..04396ef 100644 --- a/package.json +++ b/package.json @@ -1,23 +1,21 @@ { - "name": "web-playground", - "description": "a NextJS playground for my small web apps", + "name": "image-analyzer-web", + "description": "a NextJS app for analyzing images", "version": "0.1.0", "private": true, "scripts": { "dev": "next dev", "build": "next build", - "start": "next start", - "lint": "next lint", + "start": "npm run build && next start -p 9900", + "lighthouse": "lhci autorun", + "lint": "next lint && npm run lint:css", "lint:fix": "next lint --fix .", - "pages:build": "npx @cloudflare/next-on-pages", - "pages:deploy": "npm run pages:build && wrangler pages deploy .vercel/output/static", - "pages:watch": "npx @cloudflare/next-on-pages --watch", - "pages:dev": "wrangler pages dev .vercel/output/static --compatibility-date=2023-12-06 --compatibility-flag=nodejs_compat" + "lint:css": "stylelint --fix 'src/**/*.{css,scss}'", + "pages:build": "next-on-pages --outdir ./build", + "pages:watch": "next-on-pages --watch", + "pages:dev": "npm run pages:build && wrangler pages dev ./build --compatibility-date=2023-12-06 --compatibility-flag=nodejs_compat" }, "dependencies": { - "@emotion/react": "^11.11.1", - "@emotion/styled": "^11.11.0", - "@mui/material": "^5.14.18", "@tensorflow-models/mobilenet": "^2.1.1", "@tensorflow/tfjs": "^4.13.0", "ai": "^2.2.25", @@ -28,7 +26,8 @@ }, "devDependencies": { "@cloudflare/next-on-pages": "^1.8.2", - "@cloudflare/workers-types": "^4.20231121.0", + "@cloudflare/workers-types": "^4.20231218.0", + "@lhci/cli": "^0.13.0", "@types/blueimp-load-image": "^5.16.5", "@types/node": "^20", "@types/react": "^18", @@ -38,7 +37,10 @@ "eslint-config-prettier": "^9.0.0", "eslint-plugin-next-on-pages": "^1.8.2", "eslint-plugin-prettier": "^5.0.1", + "prettier": "^3.1.1", + "sass": "^1.69.6", "sharp": "^0.32.6", + "stylelint-prettier": "^5.0.0", "typescript": "^5", "vercel": "^32.7.2", "wrangler": "^3.20.0" diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 718d6fea4835ec2d246af9800eddb7ffb276240c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25931 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 LrJugUA?W`A8`#=m diff --git a/public/font/OFL.txt b/public/font/OFL.txt new file mode 100755 index 0000000..6078b5e --- /dev/null +++ b/public/font/OFL.txt @@ -0,0 +1,92 @@ +Copyright 2006 The Inconsolata Project Authors +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/public/font/inconsolata-bold.eot b/public/font/inconsolata-bold.eot new file mode 100755 index 0000000000000000000000000000000000000000..c3a5309872d238d9344844d461cdbb154d419184 GIT binary patch literal 66644 zcmdSC33yx8nLm8az1l3xvSe+RWm%iG*ph77vMukH_c&f+J5FLJPOu%v+4n$_rXhq7 zLPFUgrIZ4tG-ddwR0$*jnqeu!P=->5VHnzvNkiM=&r;e_%Csri^8a`4l`K08biU{L zp6~md$h!BQ<(~7NcYoh=JRqSY#8W~EN7xUSE=%JHk1I;f3Xi&aiwU`IJr#@q0UdZy=*&2R?)-NRx0sj_d2mVzP>CLyfgUO*<(eMI?mZ z<)nt#(P9UgK&z|qy_u{*txdSH6Cb$-wTeg;DJ2EC52AlNsT8iZ;dePo+0%CXF2%KY zw+nYAq)aH;iQi6?J249T6~=0xHBwZg_^8Qs0L#dNg~g?t&b;>k91AE zr-2Yjh!B3$%4>GmWftRuglO+YdC|m{)f@k-h`WIh`9p-HjjbNtz6H-Ugz`RoD^_pV zJyHFOH7^mO4-oPzZq2IE@#!=AF_e9bPsJKMP=3q}<9+$K&tJ1~$FBMJHGK{DKgDWI zY}mYV^tOAKjN*Oler)6Dt}WbJ<@G3^hx+zSqZ?O!y!=U&e~R&`_$`~a@A%W3NB)_R zcp1k0*_LgqwoHE0{tL91p#ELLTruB&9p8B2s?6H|CKd%A6Y{DoJkGw~xaR1w>G$J% zBre%`)J;pE4PHlx?0kF=`XtluPoI;xgq~QF3q~tn$I4nVktV8jGX=8vb zCA@@iXHi0=Vd;ISYZJfux5+rCnT?y*5dx&7>yusgPPC4bD6xO06vrStPYOGx>xZByD7XmXHH-9Iw2SD8iug$uT7HVY?jjGM zT|a8{pl%oXZX$cgOL(@29LA>x@2$buM$q#b^r^wegr0}#UF0~4VBTG%7d@{dEm~S8EdgOlWTs;3mSZ2W35E z>Gb<}XB|e-C43l+kD{kNfaPI)R-^Q=03!ycHlcSHTFUTmM1a$2K!d?r{1l*<0@8@y z*n1h&2WLJSw2R~4IXX@rr@N`2vym9NKznI1TX|r^IGY=-!aF|)y6z#*07u+p82@^J z9s99%$H*h(9r7ZuVSt9w--{U2XLOJ*#TdI1(B<*XKDoeZ{Ln`P{ATwOdJ`TD16!rI zy9#68fHl09+=`y3shn!5h1zHdt)}&~h0dd$w3{xX%jhb)m0nBlA1sjmoqEh^_g;d8gH?q_fhn|N$C9{%25@~rg=0(D`_2V zr0u|tZp?jd#3N6zH|Ea>01ez-Z#A={?qv8cy+ugUKtO(`{}!XdiRre zfB)_~@BZ7n-+On%`M;h&eEz2M%K!X4!zn_HLGADQ0ayDU{d`9Ln--D35E=a!w6l|U zu`&{@g^b7{pwh7J>7dpO@cT?qo)-9{105NN5ty4z%p?c=B9~Z69fibnf_IlC)9B3p>w2(BD7SakVYA5p` zkmi$4;88c}p+T|$l->u7TnG$a1Rk^mxI6@&vkVxtoU8!;5OM=J*C9~I9iW=~$#=;^ z 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 M7xn}RmY0nG4U%XCvH$=8 literal 0 HcmV?d00001 diff --git a/public/font/inconsolata-bold.ttf b/public/font/inconsolata-bold.ttf new file mode 100755 index 0000000000000000000000000000000000000000..58c9fef3a01c899867e280f49283fbb8e57d631d GIT binary patch literal 66352 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 WxQs55K(K@Hf9nR8-i@pbE(`z&y-RQa literal 0 HcmV?d00001 diff --git a/public/font/inconsolata-bold.woff2 b/public/font/inconsolata-bold.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..17b297376cafb44a8d5e582033c5902c3bde2d0d GIT binary patch literal 26452 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 hHO&ZZE^4BzKAG*W~N(I-7S8! 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 literal 0 HcmV?d00001 diff --git a/public/font/inconsolata-regular.eot b/public/font/inconsolata-regular.eot new file mode 100755 index 0000000000000000000000000000000000000000..aa1677bf359d0c37960f6aacb5dbc9ce2ca63568 GIT binary patch literal 84732 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 u5~&%AjDpi1u=H*XhZi z@+Dn=7K7D7n7$!|?fJzwELz?ASyr16>G(6uTfFv`fccE#6vA^D&lfCRz3hf>w`KlA z2-gmjv1r+%n^%im5faMuI^1_GyS{hn*wnxLw-ElBLJ18mU$W@he?Ice3_P2H`wh#H zVVbYh;CeF4TYkeW>nq+W>caIoA=IVUuUfq5!`GXCgZkdX^}-t#tzT`JVj02x<#;}D ze>YJ9Vp7Ht6HA1*Q!}CW3$3jtm z`5B(BF;vnC;u(Q09-1}MUye5h>2-6VC3`V-u{KmMzn64eUoQEg_c zK^SmjgAfsvbsduOzd1{%Tr1i{;G^Vt8w~Ts&u{~?fTxbAtMC(uw@l_-GMd)KD&ZF` zB3l%Q--!D}hbR#h;tA0%o<(UjqDxE@Q$!Wglf-O1HyQa)VD2hJG4k?+9rsE^gBUAj zp@ar8S5%8qF%fw+A_uuSqDj=@xf;}xj@)ddzK%C96Fn%U8YMQNtZLCJio{fLElQh+ zdWuj_G47R$#iAMc<8kFce?54+UYrnDp(G)6JRQc91<08oR*N(-6Rn(&wx@~PMK8)- zh1_2WAL@Hnd|%uq@0&2XHautl(mx~08$0@MF8aWKxv~d2=mGy-fxnv3f7y7l5pDkB zUov`;xVjd-;J;$ohhqHlUpxNBkN)$ZXCBmEE&odJF8>PnDO>v`B#V0O8n(v-10C6HF%SM9QiN)Wnk3MkbCgkrHPm3R52AAUR zKJgO%;Xfs!{QJNEHzR-{g9K3JD;&TK(;4we(g@^>Wn=`iY#kYfq(}zZB&G-((y1b4 zQ4G%*f1 zU5p3L5Us$O5-$;LBY%bLBhD5RfOEt|;9M~Yc&V5&@;{JuQ-PODyh5}iJx_E1J0*6B z=_4PAZZQLRrNsGSCel}lOMpERuNJdL-WLnRY~VsM2e?Sg1zsaA1uh2u1(M=2;1Y2; zaH+&)Vjj}VMJI5D=olRw@O?qu0eX8xE8oxVy{?&^lf74$UBfJ#IK2Ez&pfp;GJRx@Gh|uxItVu za$ejmt_R*DZUBB=;y1*NNZ%_~jhusAS`F+IYk-@?O~B0(w}_jOzE9jTa#q|g@tfjS zq`xKB0UwaKRjfz)LD4&MMtoc1cf@T-e^=ZNd`Nr^xJ}$Ka$0N`cL8@u+$lC7{jj(j z_=v>siF-!g#;WlR;G+^B6ZazhxY!8%0q{@aKSUq!hhh`(M-rb9Taex*?gQ=y{!#1^ z_XGEeZvvl`_>}k-(mxhkflmYfTl}YZ5crJv4lpXQUwjv74R{J`*F!*EYzICkF(!5( zy-(}}?gyR}2gJj`=fxwy7sU5~KM~&t{!}~){2A~M;^*Qq;EUpM;4dWpm-qqFzZ5?l z`8}jI@n!KN;6bqqcu3-5u^Z_lV$aBsI4bcK@g&l}5>EktE%7(v$4I{_o*wy~7?Ai| z@t;V)CZfRCCB7m0N8S=|3JrKn;-GjI>El8No{;#Kh>e^OzZ3g_LlS>44j}yp@jMXy z1D+Buj2svLEq((0qxdQCPvU35w5}-{}D$<-V}coM}Z$o{7Afl^xwpm$xlz-cXG?gl%da33*w`MR{wwhpIJGI zLIcng4Dhj-U>{pxMOk4z*+dE~rZiYe4p>MT@Q%1(5qV$<`CtKM!t%+6#ghxWIRFbM zAC^r4ESe%%GR3gbOJTW`!(yp~C!z`#N)0TNI`|_RV2L!r0vQ9#qXibncvu>3@JLKl z%3)hfhD|XQ_J0R#i0QB$W{OK-FU*FWFcz!B0N|yLQ@k0NB0}49HB3KBEVHqre zMX(H(zzSFZ*Fp2Y0UAGjBWs}H-we(ER$lm`M+R!oj63oD{(c~mJ4RzwZufvHhL;nYjJ zLfwHafi2Un-4d7@Sib1msIgG~;>MCK-H||4T-LP$czIVa+SZ+QA-SZxdrU>t$YSsY zp5D@p0#=R|fM1yv`Me@(DxVRE8j9w0&FzYAn4A@Do7|lh3EmJg; z0l3d}$;8I6S0t6~Ghf*;nzF3F=90!B^29#nLZ*5lWmwrcxjKih7{7k~Ogr9wS83kT;t!GMd8OG(7SQ;Z*`2xs{LH z${V+8BMv+qap1-R0Qv%c9s{es4!jDx9h@rQ8R-@l<%qDu2WnAwLK=MW-xBdl<#j{7 zagMpvyvX9Q=t-9+eLLy(q<5`F*2T&HWwY2mO!<52LutMC4GtxJPsX;4Po390_c&j5 zrMgBuPkOKQP4$oWpU-T{yfdpY>%Odk>}ff(a_-6{*o<{rAV^wO&?vs`xN<&&;>u+!OP z>niGM>YCHFyzBPvcduMC|4;KjzbfgfoU7`uy5y>^t8TdJ{+?Mq*Yx!E+}HCTJ$lb; zS6{W@rwe|);P`?+FElUoF8uYPw-)_*(I?j=U6XfB<25rEZ@%{ZC8i~gC4nUqmUJ#z zx#YGb+n4@znQ@taS^2Wb%PwEGV%g7@f4m}PMc#_)6&)+OSC+4wx^nKyMb~}p`X{e{ z{`!}%fAjjY*ZeDAd01-+|!Z|lAH_BnS{-!b`)&O83+ zuC}|n?pl4+!puy6eTeUb$=NuK(F!+~D01+3?BTtL}dB9@{)G&VdGO9|J*mdZ+YK4n+i5vxoOL$^PAt^a@&^k_f5R- z%KPrV?A{lUM$i>HtLO(|2qht(!m ztcWH>qUw;gP*v7wrvUnZdP-G$+H7;wh3aZ`gSu5U^+X*5ZMGjdbjM4MHym#}kdfqw zW)FZlr*uVABU$~aj`7{{!h{P`5-w~g)5bDwN>9`?R8?K*al6c+{G$50hT0lK4X-Q~ zLRK#tEafgWVAJH~-%h9l}5iY5?}!vF6P5 z^z3|JqsRJV3zI=#lgDII3tF?Ya)WtSPfVSh>zC>L`AFNd(00E_R)*A@u&U=N2cphM zR18F&j%db!wl72Ji8W_T%jnK9tkFK2Ic;PD6>N0nKbm z!+V-F{_}~Ik6L}!Vyj_I)ar;P4S-;@N|is+R7W&rAes`<9CjnK(=!zQxSRq% zQ5S}NAnJ~2Ug2c6FP`nghz~^l5iKj8oh>_|eVUC5t=azUl5DgsC!U!bFE>wiNyxDR z-3d&TNE_d+sj`HqiXn7x){LNNN7Ot(%pTI;&mPHEZ;Dz6w48X=IT1{0G{+H5AJR9Z zZ%tR%L{sJ1+XtfdNHpCMb;;Y_foL`eK$eq58qm%u7^}hLv&kxca?j?fJR_?jc%~mQ@fR2 zk-Zf$UT5iYK3>uHG{8Tjf{keOM*x#aPv)xl0UX+N&i>kJd(r5&~{ODM zU_d(szbH#vO!WP2$G6e$S z$+G9mj+VVuX6(^@<;CTAbx%2N9tY?L%8xK(Q#CTq5qb#+>H$vzgm#7v^N<WjjS9+%hStuKPW z9j`Vz-3<-(bw%NNv)S!>w@ooCS2vcK6jP|BthL1DEgK&mbN!?;qoHQTtXbZY=Fpg` zhN{&S73zJ8s#+~YwuudDnyDoD7iqbLk-VISih!wgTvA7iAvpNzD4{1u6(juxvw8z0#+6Dk* zpmtQ?;$1*&Cp7W{!qB6gV3xrc=HrHl{(#{z1B8`2plw$K{;~K8JNhS>L9|@7tPmbn2oHIYkR;Uf^NKF!>11~s(XI&J*1cVeZ{mVw~)4rdq0R-fkT zcHw7A;T46rv$POBTL;jmmdq>R?MQcoKegSpYLC#{&7CZ6s%;*M)7GP$*fdACV}-+T zp}-DT7Yb~%wik95E-PGD2y*Ty>0((OkuH|iUfYSXlv*WZ043DcCBDcDm^2& zSl+`kW73_jK)%bBr>^?^LFJRIs*uZ7P?gm@%@wN3E(?XqN((}7xC$a!Sygx{zY4!0 z*HmXgX<1=WaS3RpVB{m^ztvk|)z*rM>IYgN9g^>{bd1!i0Lo|MkT%Vdl2NU7W_3IgLf}$ID!Wd}|PF91S@7 zD@`A1b%icuk!%_%G)Y)lAgrte{iWa{B|&mYxJbfJ#KpQU?y;*d+2pps1N;6xF_y)VEmC2{{H_J{_#?-~j`duCFoF^P1 zxXSAI{Gbcz!n!i~E<3gz5Y2M*S3^dpIQm=EkF<$JR@|n9UdqyU5zY_}a%|5L_7YAI z-r~Uepk`>tscSr+b`-jX_71g>=j})BZ`sk{bCjD+K0p`YJV0;qclhz(c|S7FxRw*Ki|svI3h2Z5YiBC}F-q-+#sGE^wqR-@zuDMjgwt%| zA=y|Ct)ERikamPkJkK^CfI_7mCH#(XmJL0_HZ~GE31`qkz0u#!)}BT~wW)+g2^X4q zmMOBjwui8hjXZOqrEjC9`t~uq$ADAAb&X!L#cK(hp)Zpi8yck$kFzf1ySJgi-~vFP zgMqyi>A7HRi1|k4`-*Wwe(BV)jd|VG`OT%?Db4Mk!kX;dngXXIC+u6Dmh+Es1;r&< z*(HU=6=}Y_3`c&B&tg~1DQ06uOVj-Fu5iRx(wNtJU0~jnY;dNhFyi;uR2162pI)OV zRWsA41cMdD@A&70-JvXdvfY`K4sY3SpozCa6Ss?+|3^JMWmL;Hg3685vTZO8oTKWr z85RMw>xREb9a^!c`y0Q|qSMD$##Lw3cHhWl%3jpwQ+(0%NWU3;4XNNAirNOEUPsh3 zYMFRYi6>#1NG3~WjRX1{wznZq$@ks??Om+a+FJmU^UGwlGlZ8RRJ1|DHq!4ILLXsM zD&Pp=JYf@wWG|`aMA~^$&BM$%N?1=?*-PjmPwgRWCLACN(bRB<%$1(zm&GQ5to!s6N6znL?pTINuT{46lVI7Kp=ZRvxt(%w5;y zHqEUGv|K$Q6q?vGHrK4qR}6K}-qdu%;>&XC^X9L?-b}&u z+W?Mx9~N%?kU9v{Q`^OXI7pBav7MHqkd9gmjcEfH1#0`tnk62GofF5Qs2icf?EUVAH9cAg8oI9{wI~zw;s_=M>VWm3D z*>dfaqHz0?@y^=0WAgHv=BV?>XLsIk$HYl@t-3O&CF_y}E1Q~DUWL#-1wPr8%2Cw< zU+!n1Qmu`P7mPems%Z#zN?U5CvD7%mINf-qai!6`CTfBjJ*3$!%9=K7)bgTbz;en0 z+Z5Tbx`5UpzMCpBO_pOHYP0^_{;K_?{e4)mLQ4^bGW}%A`zh#Fx{%8U-hj%zjvC0I zmMxhm(aO-%|ITo;=eRYx-6818 zq59fCv_ADzYk$9LdurSZFN{OoPmFXSrgIrQ@$E1)wKkS!7;3XUWB9q@Rl`Zc`vy~w z-fEaleZwpa7)P>)%^*!)TSP?DBHC6A4Sg$*fwtlQa9P3>*;1gxm7vsIm!Dnea5{pS znWe7TH{@ovIFr*I?o@w19D|BzSNzH|%2m{zsRIN+u_#O+-H#AXG(YGLwkykrcPLj) z;`7hKt5XUudJ0;M(OQ)Rdruu2b>~R`&c!|*>FtRtBVTsfj3k^k|KhPxd>J9XKfl21 z?ac6c^MgKLK5K0oIi@@Z`Ct(9F;495YV?+_iC1VV(*Xl!dQy3wKbw`E_@U&0vi5}G zISih@(XfqU_!1fNb;F;KW*4Q7ln^FW)n3J`v?@CxqezXU;%YA%K zo4QYKb}@hQ;#UEA^(7ZkLU~K*Yj76zdqI0ij{XodB$qcN3kiAovy_W}jF1=4KahuX zFCieG02k^95qW|UX~%X8Mr0RQN;^a7By1-fB21;$vXsyXh#fKyn$McSiR~oqPHKkJ zlDo;YC&-8^3AFI_F2{1Pzjhd+K$}K5L7{NWc?NP$Yp2v)2GBRTc2Lhf>^jbsWiQv0 z^Mtc#Y^*P^J+M1qK&^qnz*!{3zqDF5a}S$&j&Ov~!L}|ZoFjAt^dsgIFl@9Awz-?a zyo2prPB>0DLO6y7#@Zd7j%BcSv_oujC(VE>*x0FrrEKwN7v5wm56bmVwwLfWhx{1f zEspiOgiQg!Il>XbTL8raL;4Hjr?$ph1kEZ9hLX3@;DLQK9$HwDa!*bu)Z9^6)X@|S zHgy!u^0?}<{MAL?v=4`T^_f|bklU;V!gtP^ee0~E%FAwTZ(n;wd&{T{=)DTXvs9RWFPpbN|~W0Wr2rIW}*H7K|qFR0qQ)b2y+M`i`Ec%Jk5+l370C zd?n>Ve&xcYIiQ`V-u*GbY^O8J(eG3~(z2XF;nuYL;wt|F|TcAQrhc zYfL$)98=D~rL66y%Yr4w`b^tRyG>w;KJ#|-ZZhH~6zXh%yO@?X)OAam!4j-#sI7Ge z>l+#x8{?`3>C0la%*yI%D4bZ6ot|CjYDo>`<=PaJ$!0PPf4gvAag{$W!<-Q;@nn|d zWxx}ord8EvRkao5)J4iNno@#ArEcrg@@Xpz%Dv%&V7jLy=(M}NRs`WIi0%9vbmTRn z4xKPlHqK#(HxL|VI(X@etpBO4% zCgi1n!w&MYGX55PffZPSNugDk(W=DsN;Qzv8?3U8mY#?4>f5cmq1Wky z8D}}IgU+)QaGR**pDpLhH2^PRJD|uWw;G-1)FhWH6v=F8Rg@-Ypv<2U^gF7`Ci%;ovCmKi{(cFPCRwB^Nt!ts zl+Z>Z7y#&7&5uJ2Q-!y1{i8BZznVx@Is2^?!fk+PveejM+(D#79NQoH$^@>A^0mO?h# zoY1Xbb)F7{yA-&_ z2F)2NuLimA;2O|QW3?j52NM!fDnAJpa)6&47)MxA{VJ3Tv*KV`&^V1|rnGxWw{NpV z2X-%pfc@DRXv}Mo{E3zfY44Xv;izv++D0|qO9J1>rFT1F8%@hTnwBRr&QlK3Zq=W6 z9z}okzT)l0m|$%q-`PcwZ*M1i^jWvlijw}F%`D`RFBP&Mg~To3qbzQ7@lKRO&DC;2 zJYq{wvPiBWzRZ#>%$D#|xw^i1N^N#-eS2y1qP+1YMKQYaN_@WZAPBxPD=^+$ zuC8i*)|bt*M7d3`LjYY1!>18CscR80)2Q5_c>>^p zfCnvGO*ln3NmU>~I7LuBQZ8Y#3|N04a_GvVikLP4uR(uRVwNtVcIngOEK$K7qI9%E z#H9=R?Pvg|rOOmNX%(0hcmwOH$1B<{($GeZl$Wrbu#wu!cEUD#n7o8OfZpfdE}dd@ zE}g^Lq<4h6LYSh%q2u_`4up{3Q2;m(YSh-2;fc<&Wpw(jYs4a^Z**=W1+yl-&$XR8 zo{xoZBJ5-hoBcak!?{Ea+Ch}5w}(1e{yvsJNSMk>Vyxs4;T(y7S=l<&q%Ut=-^dbB zp;8myn~>_1<%>lz;b%6OU2*4?w2UzGO5Uuo)mF33o|opTuM8^g_Ttd^NLF^$gu+Ni zb!Og}xr-EMer0A^n=3EuESRXSZLUvp8j~%~x&<>r#W@W#Dl0E(%q^LD!{p2F?y4BR z500(y#H#G+?L`ftbQ}v*5Zxq{D7ZRV{1z$>XyIjn4)hTk1O&usrh*bk>V_n_6iSE0 z8wN5h`Bx7c8|iy)GQwO>pJwbft}yl*Hyd{v_Zklvlh(wJ8s9R$V}#6lm%KSdc!lsh zAQpcPxYFx5jv}GavXQVZ3NhCoc2rI=XsL8BaLJb*> z!TO*QZM~s#cGdDR!yhY))Q+vgf7teb;@UD1wo?oE;efhM19=c;gu z5ForrSWRdnoTBy}AP6aPXcc=LQmT8PE(qy1cX~Kfls+Nw3Zzd(TuXr4n`|>7!8R9p zzc1(qby-qBsEcTMbs(ncbywD@YowZRTL9Bys3T8mPWeMwSq$|6%+wO+qCRS57t1DX z8ztLrf{)tH9>Puu6jV>xd(HhEqbX$u7%R0cLtXQ@p4}wGWJIR#{sb`BP%1f zML-Tmne{GVDO6c)X*J*&LGJmTMM@v6ISW-o8>~fodHwo&%4Ht~@y?{ZlpN5TrXqI-`${jRc9tE!AXH+zefxZed{AGv`FHtaezd{MJ{=;kPi@xiIlFV%C*%L_ zlin3vexWeC#x$ih^u;!c&gxu*Q6p`u}8Ztc|K;;FSclbg%xGAmm`*yQx@t7vfs%l!VbKt{*c zQo{c9!YX@Kf!iI*OjG_;G1uqsX@G8(nOQL|)NpmCXLd!Psnq8!X?V>!qrzL9n~|Oq z_EuiY5zN2xQvrzCd~|564ahH$8{_Dx4!#ro%1)FP$VU1tidrIz?DbP@QrO zkP8cm*9OiAQ3>cTOE8BIi@h(g^2-H=d>&s=$m(f6$z*8}J(yNahw}%VR*?pWn^c|G zXtp#T+0X|T!9tUU^(xLHKC^BNtXLVLM?XNveZv(#>`2MDBUiqD?1j zOru?X7(AgbFIr!OT-M>umwExL?}o<2P6+oerK#?0sG}iB zQ*=NtgnbGxn|+~uwS9wqtKEdDr^yN@BqEHGU>(`wt}Pj4#A$`)V}fc%E9L_eo|F+s z+K3PG?i3^r1Uk3)6Jb-%FJCA=#7ub$;E{7CTyx4c`sVVzzWm|n7hXCw?#)Cm93n?- zq2zAk>UIi?-T&RG8FyuV*{Mmr#tB-DAXZ90>3<(m5F_DV<-g1Sfd4T+I=jk`cE1l0 z(d@{-xv;V70)NoPvzU&{(Omy{M9HmN6qQh9%Ln5O5T5W_+WiBiY z_#pL{lsDjT)Slzg@Lj^605m_$LzolkXfzM?3ow;prVn=VrrMtpNdhwdw0e9(Tf z>eHDop(kx4A1WHWxhXi$e}(3z*We_V%hhD(K&p%>3PiXa0T1*0Sajg<{oh_?@ByO< z`ylVAHs?XaA#8}7?{Fei!}7r@5LaoWU6a@@`bsZ!G%%!P1*DC$h4OPJp~yi^K#vt2 zgsh;pQHkk-;Zr@NokZExsSiUY>O0f+Qa;LU+=saA$w(qPc=T<~T?sWfzTh3pP;rSx1J z1^ISXv3yf8D z5TE!V_KmT**R&J;QqAV&0s&efcR+!SdU=SEnV2L@I|bLCQ>jJhHWI4D4b zjfzP&d=zV|oKv~5(r^>5;qQZgu)hX3p;{seM_bsW+=RK;i;Ydx%>7iTcM=W|J|%1+ zJPFWunD)>q_z5Jh?l+Y%y@gWvDB&>Gr)I)lfZmkc0e^aIPxAic!`KvyZ*Gwo@Y2Uz zd}%jp7OcS9y>_JNrquq<)G@BDO}-9Bf-$B+`v)P3VzL=zqM!GFN?o#hxjmhmy%l+1mVXVeBrm^=J2{ZfrclKWP zxsQF89X|onb+qI9Io~JjKYN|%@Im&g5fIy+y*qnfHi{Z#)_2)eJ?ABcc}TT-c|LM` z3G3KZI`9gy98xVDjb#GUjAp>YDpdmd?HLczXprgw6^MG}*$FdhuAWg*Hsy-4()PNX zmhhOIssh)NRd#n_bylFQHc;3yGu&KbNS`&WGP}7jw%%YxPhfVn>M7miJ)jQdb@G_q^fMJYc-y4o3 zs5}HYJAS6{c^8ll0QMUeDk9u&aua+XPE>)fkOSAl6%hQf=L|0!-sG;e2UprU0#a+@ zuFxOy@=t(%qv@kqgK?^Ho)M3ltTMO`J_tDW^k&O63r4gHoQ|jX* zF>{h9sVE8dYI6JmdgNl(WV+*!c@S4|nSGIC$^u>0LOli!tz?A-N0Skcfpre+rgb28 z)cTh79jgH%SqqT9GDupJte4TDT4$YXRo7^LLsraWbz2J&VjK@|8bVgBv(_03hb)a@ zi+w2RgN`W&TmITLN4@Ryjj`B!fB6e{0O{G}w_`G(d6z0vw6qLES(|lX+Um3oX;&UDNh2q;P}KMlh#Ip=Xvt4-Pqm18Y{7G<9Lp((w(Ix-g-x zUo;-+7>{&}hvrh!;{r_DuT~cqER0EiUflDOA6LkwAKS|r+y{uoj0cU!ID205D*fB~ zuA~@@I(?TtM*Wh3rP>ZKioOLWH;}QT7#a5gg!TlBxlmTzr*I5K#C99^84saUeQ(kM z8i;->?RyCfp_RpHJE)dFjB=duT??~?aS!HD$my1GMU@EDN2;L_iK_mF*;ScU<(Xvx z$Likblxs>Gf(})+2Wkp$SU0EDsAd$l!Y$`6Z48#ra#(|<)tR#ws&$9#nT2k5L6&29 z_-~VHvnxXxm_AVg+v!d97EyxpGR_?68?9_f9s!Zdj6Lp8#umc{nodk>*4H!T7^2vdbT=ddQ0w4`~nZ^$38vgN()r zlUFv<*L@72hf^DAM(?IJ^bW`FW%}k~gkywh7uNeLkfJerBe_t366PLLMPPNt3! zo(Je1fvy1N_MyTjU|Yq5fb?QZ6FK!l#o9L1cv0<#S)B|Z>R_Gw3EhOFgl#PSAfcUA z?9SVlhvEjAo*I~k>a=|U+@Br1L4jOPt5* z(H3wEqLmQfWgCDhLK>J7yqWQpOqp;n$yo;vx<{E0feJE$SZ*i9+6|qCWt6hp!ASZc z!=M3!b%;FJZtaA;f+Ga`O8cybtdK0{Ndnv!7uq%!vyTuX4=0Mz8EJ&s{Zc_%2Swlx z!hV9>_ojlO9RZAT9(JKa&U7wWn3skJ=X8(HEoi-V`n?m|u3M~huTWQ&UwX^5j+^F| zs`bO_-MzPMAs3AW9KarrO{~_EZ5Y#6u}W*Rx!VyTsL9f^2CoC$W=R+;h--5^&x}|V zZrNSr$xe(Ieb@&0u#G~#57Q2 za<3Z;B>W?*amMvpO|_zR42aPJgvZ$XlZ2lGq%$+#I+Mx(Qi@&0XEp-5RW(H89Lkywxko+%VbYn!_ zTvIJV8lW&)@*te)jj&3;O1d;Y5EH_ ztNa5ksfL9{y(Uw9Uo(=M1Ehrk!s7t83vpK5enhh0hjGgsjjFwfiRFF)DG{y6jJEB&L{4|g%L`Z zVKdTE2X>;^N)P>5$yw;F8I#{V20>Vc6k~?hmr_%?o?ZO@xJw%ll59vdrkHG2%hXQg zT5@IS$Y;tRv;c>4M6+=(0taTnkc2!!8-be-BosS3Y#Px2%k~;#c(uipbUI-Np_lMB z;p>DS5-#l4(%WVo&`(&;bH|e6SKn;i$+VQrFH;1Wp-XVJ`5mCm`mp&)^YiATW*n+m zVeX~NCE02MqiTK*!ft?mEcpzKBNmOA)-7C=9s$IDl`@p_9yZ6d7nt=VKwpv4i*eUd zO%!eV@zitFD2{S{-Gfpy9e}T(sf&Vs>|hDIoLWfkgs{dYJCFQnF%YcwGC+UB z^fv6;DEwVG1IT#$(Xe4H*(?wF$sj8^*~i$O)HLe2`hnCVa>sxTi#L)+^}ggo=%#+i zHpo#w#7>d&#}(41R4Fw=x1lG%j`~9Jhin3r^R4N50zeSRg9k8%=bRKag2#_)(+M(l9&>N|*?8*azBA5-pmUdvlM0(X^A~HpCB^pb9>QiTR50 zNh}J~@F)jZIhLe}ms*wb;rrB8mJI9XAJD%Bw=PzI)glFZ`X=fh8_*5v5ESr`_iG`X zwRr&jaZ{9Tfeq}|LV}vYxyN|Qh;x`{-PE~z0rW?}D+aU<#2a^!S#V*BtcqMntr0E4 zMelmTSdtyAzk9JD(rkjX05O@R>k(19Pm;(^CcjS${MVeO+X#gKNKdM(OWELU1R0d{ zDN`S_VJiUoPQzX*G6y+~=K%T+>mE`(T^xcjpgr2_gqI0CPo;GeGU>sa!PIqx&j>Bd zyNYLoO%}HW@m{86cQPzEgcz=YwdRC8OSgo=>7kOwhreGxu`lb+3F@lhSCyL2w<^c} z`N?nvMxWnFJ;>1)f6=UrR$hQlJ)n#{*uq*XcVAZ_MUj<)>A^p#J!vOCM8WCBAT~28TTnZ~Bno3F>3>3`-5DuYm@%jsc4O(!j7&gPcO6 zoI(VgJYsvw_JR$&V!yHt+1^7!@3yV5;k{<4Qyla&Y|%TI1QFY3ppFMlU&%plAyg9f zQ1;wLI10duq@+u#3@Pa~lNIxHOXKjLF+MfQtL8Mz=T9l`411^{=RiXlM67~Sgq5Y5 z-9#QB@#PWjBFF$i>?=Sd($T~n25l=r5MJbs#{p5hqd$wX@=L~QG6Y9*Vt^8ROZ^_` zbIFeW0DZ%X*2S)!We>VYG{*_^$m;6=`e4dg3bC~?l=aSxWsDRVq|y8Y&625vZ3KA^ z;bppw_YtPi?In%Oy)^AQsAcUZ93f222OJ{o3IVnQ^uh319FG+7*34rY1_^7~5NVNh zrYvJa&N8EmE#OYBz9OTSO*+90*#=oXYu5MY9_EJAVb*hiu!EJI4RfdI3xkIddttbY z81aeyr6M|$Jj1n@jSU1_F0Uz{*%~Msf63NJb5>oMKf5fFl~-4plam~|VqHha+Dj{n zE?IxsmAB6f-qGY8bIr`@3!40jui@(HQ&w_jsihx=Y)ivl(r558U}mM+Bdr^01xaH^ zIxO<2x-FpV;)2(LUWZi7Cr1#iy=>FUe3;;ZXJ*3=sLrj!A};gR;p< zmX3nmoMieM^zFvo)EYe;V!4OT&>qbTW*d#B(>8NNH$zVr($0|ujM_L~E<)dtv`0D_ z_`Z)EyN4k6qx)C{C!87jDokVkk75G})I4pxm*B+7t`OhR~( zmyZK*Je`t8TgzRkqB40-uPD;*#W)w?F!ZQibx}NH5qPKwV@zv<;fd+kKI+Bme8D?F z3=ZjzU;rEA{h4u=YKKf49b^L_2?qdr%ze;} zcP?immk>OJV*owuX~f2DTe>e)9BK+N7-)HDeP~lC33>j4l7i-fX$9Q{D++oGHWwse zN{aE~aY9!m-~{1V4a8t)&9a(xHIQOwaV4}4w)mLw44NA2Gm<=Ti%LaYy&ckr<$9$e*Pm>1)oMVf-JuA4?yc~q^)y?)56c;oVbQE+I zEH7AJu!+rf9yc z3jFounc3BKzT7&cvS+@UTWa!TdQED$dQwS7(bT43*~D3)ve^@Ysyg-?E!Rvf_BYR; zc=^f}Z|)zrJnjmXs){-}xu8C5Dx0-t=G9;82o%g-Oa5*Ge-D7a?IKgj(TsLbq(D4R zTz!WQ4=GI@zD)w>ww3ZakEy@~@r_iEW|dz$&>A_iy9o0DG(WJEVeuouhT#LD0RkaU z=Lc*c*aGf^P`F6@NCUy9Q7EJ;RQvG34$Z1a@sP&oO6C%w?L=Ppz zHbRW>U24Wp5TtzAPEBMpeQ}H)6PjD)Z30V3NQeCt1$zk(6Z-Hx1OUu4#6LSjhJ*}| zlh?HW#zh&yNY2(-TYB5udndIxa;oyxRoBePs;|tq48Nl|M}>e7AsHBMd^z`Hj9dQa_shUEC_@Wh!W z&aI4*`|3*fuu}hpN{_O>cL;BwQhj5=wgMC-YxJQ;eR*U(>p6~kv{)@*H^Gyr3Lc5L zOG2_Wj7kzph_N8}p23BMIh^2WkMeA}Nl~2>sw&6X^IEDZTMF#H+F6ag(@RVS@2tk` zNWLpIx3QvnLUDQy;(}_gR0~_wR6}-tL!l>-o9A>EmPT>{6KVr+pEx9E#eY*2TXDA0IcvRsog;x6?@(wH>99&;T+#rEY24; zxUm}3g=R=N1Hb}#N_2mFzq-2h^HdEi{9E2>%6~EV<(372yzPJbJK zOFPcLYHei0C_%c(1EZ-m3@y6g7QM(nkRZ_h6fi%WDH+n5I7^-mL!;J8pnd3TJsTmc z^|juOUd)-KEI+1J@6Fmwhf;6$=4@(dXD+;TCXMg&)n3nL%6T6ML+|x&=KDUrx;|?Y zUtOQQ39mvD&|#B~4LdK+MWolp9SRWIHM13~>ME$t=APT6tfuLe71Qf;)K#j{ZX52a zYc9-CRY!PCgR*V-x^b5`WoI|cqVb4tfq$m_0W)P*R6m?HKCP9rb2n$F4Zs~axeq6| z<+#jgK0v>MG2BB&KTb%(cXepZ!B4t^;<^byn?sW-Q<%nsg{LC$2)>y!jcnKi;I(<+ zD-6IyAUrLam)MkB0Q&3dpSaa0Z9Xbxa+9!&f+D^ntsgO+;0pVt6H`Ld`Q{ty+juiB zYo+Cu&D@#lRm}a2=?Zlm($Xw5g#6PU-#+EH0YtY4l|Ov`O^g!0v#y*2eWfU$__1Y& zQR0-#Sbq%Aj>L#asfXZy_`iS#i7=9oMz;^K$4J77*A2&z?zfcCdn7$YgUG;8@SGYV z?y+LTc!KFTj>qT?=BZ{Fj~;Uo{3&D>e0!k;D}%lwsh6r_C)0}+cel?+Lbnp;t|3z0Pm&@=+jcVVH4;FQjXx~E2be~hoe8EgRfnI!P0Iee1pUG zL-kn>;V+nBh#TuTjfm0_dV_g_RW5x8)Cz>Y^EUW)@YwI6=WTk68=hX z5^4#H2?ow*h%lL#w-8*syqBrB0FpLfwPR}!i|~X=*Ls#Tk6oN~-3?%};rYtC;XY;e z=ig*#66l3qlQ+OsHnq+VkCQL%RD)-2jkbZ~4`+xxI=_r+LNP$!Wr)%7a4R!j2Sjn= z*_w!thCl6h#&@X)A0>M=0(6hD2pQzhUJh6>fWwScxR)$ZqBJv>i=SZ9mIF8u;HE~5 zQH)=IIitdcM;;~$2%0)iIy#(moOA>d?InpGwY)_VEkas*dz3^^Q=cgYo$7vb30-_m z$Y`@}G;cHSGRNTh(_ZEiZvf!N1wF$2;^cpdF^tpLMOO6%RtIOGFD7#`7x~Scv3Cf! z5uOL=-KG^LxD;gc1*Hd0SxX08%yy7IwgwXSTEbEevplLJ3Lgc5?4Z63?iKLHAyfT6G@gu^yo<@TwM_Rrq3apse| zXM7zZ>DA$1{Qd9vz--N*L1)>ZvlEa@N#f~eO{OFx4l7|A;rruQ-p(E#0O;NLSSZXZ z3T^u5H8p9}GlwD38G?`I`bk;S2uBEO0Tkh1Ar=x-hA*jc0=^K)hd7$c$co2F#>Y{F z(B9zaKBPWDIU!~5QalhBw1`E?p0jhy^!}M(q1Tkk;l7VQ=9)yW*Q-+6=3_4otGR(? zt^xtY#j3WE9J9=@jxz@CS)(@_rom06TMd4CtGc-0Fj%0?8V?3JZ2(#FC>%wTWq|R8 zQa)Rzz2FysORy4Ky5u~=VJm+uJTK9{RTXrY@n-K>!jS-N4Z0u z(X6~&hg9rfGQH=J=DTo38cxD3Y%3@{E{PoyB{*KWd-xTl$dYauUaX86eob9fJuJ+V zs}=qal*HFZb}Rp(J_@a@l0zV)I>Dp;Mn<3^euFzR(iB3Bp*(p8$4T5j%&iO5@O35k z4=0EJTYa?U^E;ba;uq)HujG!8{M5x)9A%I7Dm=^{_ZnU}%pO~7;Bj{J=c426O1vTR z%qtpFg*auUQF(6c@WHXEIqHw7TH^nXv0GUqdjj&qX@3ehgnYv$LtiKcsaCK-=#kuB zV$>vp;;=i*4kO|Q!6Ck0X7OV`_EddjrcV>h z#6=b%NI};=TvuP(1ZMLUOFPL62 z{m%5R$<%|ziCa@WJ3W2%i*8g_DPqL`%roduXe6q1I``O~RbGcDt^&kpqOFcEC$7=SBEm5T&I zBDExZ0|FeQqjF9!KPUjk_T#&b2p6O-pNky$YH_TO{Bj86sl7z;CeIMXn8Mji0C#Vi zQ>Sq!rxa=J2)EFlBs@ZRfiPHrhmIAVDa1qPiji@ygaXdZLZ2hZ;$<)r10ggYOKt+_ z#i>m!nYCy!6s2!>?B>S>Bv2UvSkI@8J0XqID_J~L4dP?4uJG8BKI0=<+qG1 z_}FJr{3M68^coxL=Z{-@`J&0w<`*;L)t&g3b_I5R(tMclJbI;D z5o@o%?;AmgqHg!)`5VmwC+c%mu7; zMvR#q(UO7q^h=v75#uZcYJwJ=a2GfewBW^smrfe9RemN@R_SrdCK3k{HBhFGqg5kBi-X?IAv=&*TgO-F{ZfGovO)d9ubA*Ib*xVj-Nj+w$HQ8b> zYO9{Vupl>ga_N|`k20-^^QpWhLQ1vf&cx9E!yQIw0F{@EWTwqdOSwVO)dz za=V}LBA7UQlFEfI*1_YX54cX@$R%0#1eHpxj8HHz4|=D489k=^?1%WnPhQ~XxbqwX zq}xMy>MTHL$N82#7}&*ES8xjF!DXn&><96pwv6e~w?~hvA7eDwS;85X!@}TWX`q)S z&T2AN)_YOR$B|kScJ4Fs$L7=*`+TKiLQ`r=CoitPY+Qc+xGQQJx|KV|8Z0Rp_H188 zYZ%8Xvzn?q3femBYP(ts@YQadiGW}3MVuta!kMU2&FsSb%%Lf`mF+)8co6_Tk^6jD zj#kkhmq*|@X>;JRqi-!2%!IEM6_3tFVlkJpR5~ycQ}czY0x6r=AJ>FmZi%PZ>1pc^ zVlLoKOPq!x1@8dpz3H3jJoCx@3BqjzAKhA;2=wm9{TQ3PJLt#grB7pBRv-NsgL!8W zVu!O(|5BXZo3WW&QF3QNo`UK_F)?~lws}D_(wDN4ZnAasio}bFZxK52@tC4|e5&({ zNIVZ&C?ONEF(rd`%*xG|BrB#4qi1HgXi{x%e&gg&)s&aYCbrr0bA4u;In`y)$VXbf`>Kn!b%vuun4Y#oYY%=vneVtF)0UxPExDe zXadOksGIBjx)?GB$&;t0+@$~=-KQL6#^A*jY-R<0tia8(B{3Xk1-*n507ZU7#B2#N zwgw+?OAv&mw(i1#X+y!}+B`)WenHJCZ^&wo6pvY2bJ>_cuzBXy|5W%nh{#Okjm-K> zo08I#s^A5!4NuK$>24l#<+#9q87(G%MbI?~^0XB~^-t7mukd&SwqVKDgyTmk7cQg#?vkeO{K%6xmjQ7Q-))zsEBoG86 zjrt(@?N0r$2#;ZzaXMHe9b=2o&7UkNvZJV-qaaQdF^|9884x=~6o{!Xw=>x53csqbjr z(~8lUB+Jz<>72mg$2t0EC$!8NSf^$r*hhZ&Fmcg@J5Bry-wa2zU`T5%AbS#?p^9cN zP;QcI)eOuoX2mt5fJNg-O%|?l3TDW5%b#eIBU*`bLU7`1rz%kZpr^kFc3x{`4%*<;n%Lgf1Fc6|A?J3q;_*rGQkxw8mrD(1bnj5#VcP>&hrYwUhl|%iY}3cQ z!EmrK2!nNB@DR@yd-L)BK7bysYQ$kIt*9CqQwfcPPJr&M591)Twyz%P!TPgIH#VTK z;xSEQI>w+C9b@rm389;SNISR*Cm)%N%6%Qh9e93!2lAVy0rnGOGXaO@0?q=2z61Y* z5Inriv?age0U8MnY<8HsS~Z;RZA!}dyid4XOY|7cNM(D1vXjqxu?$vyE5x$*Ei0t z^3N!&3lwBW#swyAZ1#rhbH>e4OUg~jrlJ<*ZhL{tRhWgM_?zuW#dIm2P-&pK%x}wc zr#lVld8NLr+ORi0H|%MMILph*+!G7)$Cmqt+X6+dtn{Sv!mL~capnsCpEg42hyIa+ zINuEJp9E;`KF+O^7m=b2%7H9{b6KAIn8RZrj}u1E! z#d4^;TT^%@foJTo@iG9-rQZwo$j;%X7@_p($CJ+?jtifxmgfkM;gCw3)teShYfNkB zft9ngDco2j@B~hL9JC+9XB}fX3@rTt=4Rh+w)-!Fs10uEBR0_Y~i@mGGm3%b}vC!*JAAHcS4vkJSz z9RqUjb3_SW2o`S^~Y6kZT$a`AwP5|x0JLtE2>)!fQd%Wu-pxM6Z$z#c!oJ+ zB(O>Xv0w$H@Q`0EJCrtW!(pvpqIi~X-BFp}J|$4+dn!3$NCp}rT5>75^DS5GYJs*Au4l;QUH zE5I>*~U##zV@L#*ApLXaO_0vNSy@7I+P#8V}Kd? z8$0QE-!a0k|H)wBe+dD8*7i#}%4G=fWcr)eQ}x{A^(uxQCOw}V5#S!Zv^LyM3z(;d01pPillS_umE@R3AXQlpJ^2?0OJk8lg zd58htOyYYOF#09d*i$Jlq`bmV;M?w)>O&!5PLKK!e`J~@s) zB+!v_kZKarGfF*a0xap^v;fpGl=IR!QzW!QZ?p)sU3429t3QcoR0g6!7F8?_0>KYs zrKmnjlAg2-oP|uHh8$UHM>b>G-b#o(XY%F{kU46>1PBOy$`rjZfvFm6K*V7+gHV(q zu1Vntc!KlHJ>J8S6bV7M;Yhv5{4g!6Pn&VfC{G;k z#<4QQIi4M1wu&opn{^MBd!HvU>H<(bwm3tbAI7mxS;D3tBk&MB&-PcE*Q3ojnZ-nJ zU2OkBf*8Tw1cL;R6Fg7Q1EB7#-X?korOmPi(qO^HR0j=K65 zqctDNHp`2QHd~c7=&oMu3Hn>4$(BGUQQr_>+%f%E(vncjW$=WXTrkHh=uPx?P9rfe zs@@?36jp*y_bZVznc0Fhp9*47I{#q_z;P1SxS21}*9s#J@5_%->CTzrvW5r~$;7W? zR;*&6W-tL>Coc#l0NQVSt#Gy+#xxX1FvyIDcEF`S!lXX#X8!zC?R% zEy`mtO+S5Iq<=$}*j#?~KqNM>y0i1%f%va7i(CEv)`d-}MQuS}%OcFfyqjyFZTvS> zl#5F(N+tDcH)b?wcKW-~!HpU;7ls-(^f2-JI)X6*dU~)(&lY6`0JSO}x^<8#)@DTT zx8)fT*tUEkgnDuxSg4K8cMk6H)kxD7KmQa4hK^Ql1_k z$90=|565-3#(6ifgO6Yv0Mg9MLh84*alfMW?h`5qX2k6ETN^l;dB-tO!#h zrbyA%i0qmMvxsO%4i9jL45TT!`un*Gwgag9Di47RP%l(oBQqfQsC{Idc0d?WFW9e9 zJQp^A?T)>qa)&_Wl$CVe-vFR1$5gSw;`YkDl?RzTUXymz?NxgzEN`>#K`ZJx`xQ3! zG#i*POsHF3yQ%4BV-f@7<|sdXUNJ9X1F`6Zv~|gd=eA68u(Lj#8*REfW%_ckHHzT! zY;EttCDQK2A3pVVq9t0mH4$mkI0uYYJXfd4qsX!jLVoi^ zA6zDT?(16G7OAT7Ao*)wCO9fhu5Rn>7__@>=1}LN*qi+7Ug+eH;8IeUh0VH+6D-x;sg^gahnYr>3Cqoa^z5Tt3=&3*AzAJ(e8`sV9m_8Hk zu*$J!EV$9;HO(8FF-2>dH4*1L`PC!^npFfMUpNz0YiZ7zV6%ud1P7qup_$q-P+9xGX;D_1i z=t=oTM)cMipUq^fL=L=Q%w;v$JoRy}zq!%F)j4$YJ?VS$3h1A&Dm6Z?P9STV&UDyn zx@%z1mG{Z2n_dLzk^2^xPOMwBE%0Am60^i>^d(hPdT;qb{g1P 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 OG|;OYVSulL^Zx)kukT&} literal 0 HcmV?d00001 diff --git a/public/font/inconsolata-regular.woff b/public/font/inconsolata-regular.woff new file mode 100755 index 0000000000000000000000000000000000000000..7223a68b2bda77a4cb539e2d6607986fb47a6c16 GIT binary patch literal 50824 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%0A|>brK`$Xm5!$i$j`Eh zom4An0B@!xEX$N^v^3Y2_e@i=7cCmgcU8(KsLBpEVvvdkuOs6aa4dB^=y=qj-okSX ziu#nP&opjYY1&{?Z7J&G<{tAR^8@Bb%&IN&Ml+51S<|5DF4IG%PqH&yqKi$M4YjYJ z=~7stJ?tCaE%vwHIxAX2ot?R_{mDl@^7F2H44*VhCw%X(6#Xy8@4Yv$bDOmN*8lOA z-7~`<`oI1+l3+$zu33Mr=0a|@v;A3 z{kF|CTosu?SsAyiv}~{_w!j_c&2yBWni|Vg>aYeeg_CjiCqrmi`D}*1ZJxfZX3n?O zkTcxkLDE3QYspv!*qs}XfU83G+9*{rpz-j)|H-J5`edpKzekp2TUBmt%kxj%nrR(q zUE2C!>!Ypg6X(byv{dz=>QNQD^CIm7+DEkPz3=*>9*>2>kjDDtIK;#2jNy&89;b@a8+<)P_ad*Ant#iicZ&Z58ZC<0o;f0(gSoW zbnA87bbE9Mai6`WLnb70nb6v1yrcYK+<7dxBDkL28I7wjQ|%_Ln>932x*Iz8tQPlG z+i
N9CiDeSOIaq6^6KJN;0p<4E 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 YBvHEQzW`93z5q}n9!LNH;gB|A0Di}fp#T5? literal 0 HcmV?d00001 diff --git a/public/font/inconsolata-regular.woff2 b/public/font/inconsolata-regular.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..38c1f7d5e146d7b99e9f2e1fe54a48fd50aab744 GIT binary patch literal 40896 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 literal 0 HcmV?d00001 diff --git a/script/cloudflare-pages-deploy.sh b/script/cloudflare-pages-deploy.sh new file mode 100755 index 0000000..4cd1c2b --- /dev/null +++ b/script/cloudflare-pages-deploy.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +set -e + +CLOUDFLARE_PAGES_PROJECT_NAME=$1 +CLOUDFLARE_PAGES_DIRECTORY=$2 + +function check_requirements() { + if [[ -z "$(command -v node)" ]]; then + echo "Please install 'node' program before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_ACCOUNT_ID" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_ACCOUNT_ID' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_API_TOKEN" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_API_TOKEN' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_PAGES_DIRECTORY" ]]; then + echo "Arg 1 for script 'CLOUDFLARE_PAGES_DIRECTORY' was not given..." + exit 1 + elif [[ -z "$CLOUDFLARE_PAGES_PROJECT_NAME" ]]; then + echo "Arg 2 for script 'CLOUDFLARE_PAGES_PROJECT_NAME' was not given..." + exit 1 + fi +} + +function main() { + check_requirements + + ./node_modules/.bin/wrangler pages deploy "$CLOUDFLARE_PAGES_DIRECTORY" \ + --project-name "$CLOUDFLARE_PAGES_PROJECT_NAME" \ + --compatibility-date=2023-12-06 \ + --compatibility-flag=nodejs_compat + + echo "Done!" +} + +main diff --git a/script/ensure-cloudflare-kv-exists.sh b/script/ensure-cloudflare-kv-exists.sh new file mode 100755 index 0000000..78e090d --- /dev/null +++ b/script/ensure-cloudflare-kv-exists.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +set -e + +CLOUDFLARE_KV_NAME=$1 + +function check_requirements() { + if [[ -z "$(command -v node)" ]]; then + echo "Please install 'node' program before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_ACCOUNT_ID" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_ACCOUNT_ID' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_API_TOKEN" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_API_TOKEN' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_KV_NAME" ]]; then + echo "Arg 1 for script 'CLOUDFLARE_KV_NAME' was not given..." + exit 1 + fi +} + +function main() { + check_requirements + + if ./node_modules/.bin/wrangler kv:namespace list | grep -q "$CLOUDFLARE_KV_NAME"; then + echo -e "\nCloudflare KV '$CLOUDFLARE_KV_NAME' already exists...\n" + else + echo "Cloudflare KV '$CLOUDFLARE_KV_NAME' does not exist..." + ./node_modules/.bin/wrangler kv:namespace create "$CLOUDFLARE_KV_NAME" + fi +} + +main diff --git a/script/ensure-cloudflare-pages-exists.sh b/script/ensure-cloudflare-pages-exists.sh new file mode 100755 index 0000000..fce94da --- /dev/null +++ b/script/ensure-cloudflare-pages-exists.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +set -e + +CLOUDFLARE_PAGES_PROJECT_NAME=$1 + +function check_requirements() { + if [[ -z "$(command -v node)" ]]; then + echo "Please install 'node' program before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_ACCOUNT_ID" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_ACCOUNT_ID' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_API_TOKEN" ]]; then + echo "Please ensure environment variable 'CLOUDFLARE_API_TOKEN' exists before running this script" + exit 1 + elif [[ -z "$CLOUDFLARE_PAGES_PROJECT_NAME" ]]; then + echo "Arg 1 for script 'CLOUDFLARE_PAGES_PROJECT_NAME' was not given..." + exit 1 + fi +} + +function main() { + check_requirements + + if ./node_modules/.bin/wrangler pages project list | grep -q "$CLOUDFLARE_PAGES_PROJECT_NAME"; then + echo -e "\nCloudflare pages project '$CLOUDFLARE_PAGES_PROJECT_NAME' already exists...\n" + else + echo "Cloudflare pages project '$CLOUDFLARE_PAGES_PROJECT_NAME' does not exist..." + ./node_modules/.bin/wrangler pages project create "$CLOUDFLARE_PAGES_PROJECT_NAME" --production-branch main + fi +} + +main diff --git a/script/performance.sh b/script/performance.sh deleted file mode 100755 index 9eebb9a..0000000 --- a/script/performance.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash - -set -e - -PORT=$1 - -function check_requirements() { - if [[ -z "$(command -v node)" ]]; then - echo "Please install 'node' before running this script..." - exit 1 - elif [[ -z "$PORT" ]]; then - echo "Please pass a 'PORT' number as arg 1..." - exit 1 - fi -} - -function main() { - check_requirements - - echo "Starting app on http://localhost:$PORT..." - npm run start & npx wait-on "http://localhost:$PORT" - - npx @lhci/cli autorun -} - -main diff --git a/src/app/_components/BackgroundInfo.tsx b/src/app/_components/BackgroundInfo.tsx new file mode 100644 index 0000000..763c598 --- /dev/null +++ b/src/app/_components/BackgroundInfo.tsx @@ -0,0 +1,24 @@ +const BackgroundInfo = () => ( + +) + +export default BackgroundInfo diff --git a/src/app/_components/ErrorContainer.tsx b/src/app/_components/ErrorContainer.tsx index 93f5966..e404816 100644 --- a/src/app/_components/ErrorContainer.tsx +++ b/src/app/_components/ErrorContainer.tsx @@ -1,5 +1,5 @@ const ErrorContainer = ({ errors }: { errors: string[] }) => ( -
+
{errors.length === 1 &&

Failed: {errors[0]}

} {errors.length > 0 && (
diff --git a/src/app/_components/Footer.tsx b/src/app/_components/Footer.tsx index 974004c..d07758e 100644 --- a/src/app/_components/Footer.tsx +++ b/src/app/_components/Footer.tsx @@ -1,11 +1,11 @@ const Footer = () => ( - +

+ ) export default Footer diff --git a/src/app/_components/Header.tsx b/src/app/_components/Header.tsx index 20ef187..1f84cc3 100644 --- a/src/app/_components/Header.tsx +++ b/src/app/_components/Header.tsx @@ -1,8 +1,8 @@ -import Link from 'next/link' - const Header = () => (
-

Image Analyzer

+

+ 🖼️ Image Analyzer 🔎 +

) diff --git a/src/app/_components/ImageAnalyzer.tsx b/src/app/_components/ImageAnalyzer.tsx index 4c1a345..f8fc849 100644 --- a/src/app/_components/ImageAnalyzer.tsx +++ b/src/app/_components/ImageAnalyzer.tsx @@ -1,12 +1,16 @@ 'use client' -import { useCallback, useState } from 'react' +import { useCallback, useEffect, useState } from 'react' import ImageCanvas from './ImageCanvas' -import ImageDescription from './ImageDescription' -import { ImageMetadata, ImageUploadInfo } from '@/app/image-analyzer/types' +import { ImageMetadata, ImageUploadInfo } from '@/app/types' +import { useImageClassificationService } from '../_hooks/useImageClassificationService' +import { useImageDescriptionService } from '../_hooks/useImageDescriptionService' const ImageAnalyzer = ({ imageId, imageBlob }: ImageUploadInfo) => { const [imageMetadata, setImageMetadata] = useState(null) + const [imageClassification, setImageClassification] = useState( + null + ) const handleOnImageRender = useCallback( (imageData: ImageData) => { @@ -22,17 +26,112 @@ const ImageAnalyzer = ({ imageId, imageBlob }: ImageUploadInfo) => { [imageId, imageBlob, imageMetadata, setImageMetadata] ) + const handleOnImageClassification = useCallback( + (classification: string) => { + if (!imageClassification) { + setImageClassification(classification) + } + }, + [imageClassification, setImageClassification] + ) + return ( -
+
- {imageMetadata && } +

Results

+ {imageMetadata && ( + + )} + {imageClassification && ( + + )}
) } +const ImageClassification = ({ + imageMetadata, + onClassification, +}: { + imageMetadata: ImageMetadata + onClassification: (classification: string) => void +}) => { + const { imageClassificationResult } = useImageClassificationService( + imageMetadata.imageData + ) + + useEffect(() => { + if (imageClassificationResult.state === 'FINISHED_LOADING_CLASSIFICATION') { + onClassification(imageClassificationResult.classification.top) + } + }) + + const prettyPrintClassName = (className: string) => + className + .split(' ') + .map((word) => capitalizeWord(word)) + .join(' ') + + const capitalizeWord = (word: string): string => + word.length <= 2 ? word : `${word[0].toUpperCase()}${word.substring(1)}` + + const prettyPrintPercentage = (probability: number) => + `${(probability * 100).toFixed(0)}%` + + return ( + <> + {imageClassificationResult.state === 'LOADING_MODEL' && ( + + )} + {imageClassificationResult.state === + 'FINISHED_LOADING_CLASSIFICATION' && ( +
    + {imageClassificationResult.classification.predictions.map( + ({ className, probability }, index: number) => ( +
  • + {prettyPrintClassName(className)}:{' '} + {prettyPrintPercentage(probability)} +
  • + ) + )} +
+ )} + {(imageClassificationResult.state === 'ERROR_LOADING_MODEL' || + imageClassificationResult.state === 'ERROR_LOADING_CLASSIFICATION') && ( +

+ An error occurred: {imageClassificationResult.message} +

+ )} + + ) +} + +const ImageDescription = ({ classification }: { classification: string }) => { + const { imageDescriptionResult } = useImageDescriptionService(classification) + + return ( + <> + {imageDescriptionResult.state === 'LOADING' && } + {imageDescriptionResult.state === 'FINISHED' && ( +

+ {imageDescriptionResult.description} +

+ )} + {imageDescriptionResult.state === 'ERROR' && ( +

+ An error occurred: {imageDescriptionResult.message} +

+ )} + + ) +} + export default ImageAnalyzer diff --git a/src/app/_components/ImageDescription.tsx b/src/app/_components/ImageDescription.tsx deleted file mode 100644 index bae214a..0000000 --- a/src/app/_components/ImageDescription.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { useImageAnalyzer } from '@/app/_hooks/useImageAnalyzer' -import { ImageMetadata } from '@/app/image-analyzer/types' - -const ImageDescription = ({ - imageMetadata, -}: { - imageMetadata: ImageMetadata -}) => { - const { imageClassifier } = useImageAnalyzer(imageMetadata.imageData) - - const prettyPrintClassName = (className: string) => - className - .split(' ') - .map((word) => capitalizeWord(word)) - .join(' ') - - const capitalizeWord = (word: string): string => - word.length <= 2 ? word : `${word[0].toUpperCase()}${word.substring(1)}` - - const prettyPrintPercentage = (probability: number) => - `${(probability * 100).toFixed(0)}%` - - return ( -
-

Predictions

- {imageClassifier.state === 'FINISHED_PREDICTIONS' && ( -
    - {imageClassifier.predictions.map( - ({ className, probability }, index: number) => ( -
  • - {prettyPrintClassName(className)}:{' '} - {prettyPrintPercentage(probability)} -
  • - ) - )} -
- )} - {imageClassifier.state !== 'FINISHED_PREDICTIONS' && ( - - )} -

Background

- {imageClassifier.state === 'FINISHED' && ( -

{imageClassifier.description}

- )} - {imageClassifier.state !== 'FINISHED' && } -
- ) -} - -export default ImageDescription diff --git a/src/app/_components/ImageUploader.tsx b/src/app/_components/ImageUploader.tsx index 4ace6c4..cbf331d 100644 --- a/src/app/_components/ImageUploader.tsx +++ b/src/app/_components/ImageUploader.tsx @@ -2,9 +2,7 @@ import { useState, useRef, ChangeEvent, useCallback, DragEvent } from 'react' import ErrorContainer from './ErrorContainer' -import { ImageUploadInfo } from '@/app/image-analyzer/types' -import Button from '@mui/material/Button' -import Container from '@mui/material/Container' +import { ImageUploadInfo } from '@/app/types' const imageMimeType = /image\/(png|jpg|jpeg|webp)/i @@ -80,9 +78,9 @@ const ImageUploader = ({ onUpload }: ImageUploaderProps) => { } return ( - + <>
e.preventDefault()} > @@ -98,14 +96,12 @@ const ImageUploader = ({ onUpload }: ImageUploaderProps) => {

Drag images for analysis

or

- + Tap to upload images for analysis +
{dragActive && ( @@ -123,7 +119,7 @@ const ImageUploader = ({ onUpload }: ImageUploaderProps) => { errors={['Unable to upload non-png|jpg|jpeg|webp file.']} /> )} - + ) } diff --git a/src/app/_components/SampleImagePreview.tsx b/src/app/_components/SampleImagePreview.tsx index ad4d1e9..21549e9 100644 --- a/src/app/_components/SampleImagePreview.tsx +++ b/src/app/_components/SampleImagePreview.tsx @@ -7,7 +7,7 @@ const SampleImagePreview = memo(({ imageSource }: { imageSource: string }) => { return (
-

Sample Analysis

+

Sample Analysis

{imageUploadInfo && }
) diff --git a/src/app/_components/Welcome.tsx b/src/app/_components/Welcome.tsx deleted file mode 100644 index 46fc0c7..0000000 --- a/src/app/_components/Welcome.tsx +++ /dev/null @@ -1,33 +0,0 @@ -const Welcome = () => ( -
-

Background

-

- Image Analyzer is a proof-of-concept web application that - analyzes your images using{' '} - - - MobileNet - - {' '} - and{' '} - - ChatGPT - - . Warning: Proof-of-concept tool is not super accurate, - your results may vary. -

-
- Technical Notes: MobileNet classifies your images in the - browser using Tensorflow.js. ChatGPT describes your images using a - GraphQL-based API running on a Cloudflare Worker. -
- - Ping me at @tjmaynes for - any feedback. Enjoy! - -
-
-
-) - -export default Welcome diff --git a/src/app/_hooks/useImageAnalyzer.tsx b/src/app/_hooks/useImageAnalyzer.tsx deleted file mode 100644 index bc161b4..0000000 --- a/src/app/_hooks/useImageAnalyzer.tsx +++ /dev/null @@ -1,97 +0,0 @@ -'use client' - -import { useEffect, useState } from 'react' -import '@tensorflow/tfjs-backend-cpu' -import '@tensorflow/tfjs-backend-webgl' -import { load as loadModel, MobileNet } from '@tensorflow-models/mobilenet' -import { Prediction } from '@/app/image-analyzer/types' -import { getImageDescription } from '@/lib/image' - -type ImageAnalyzerState = - | { - state: 'FINISHED' - classification: string - description: string - predictions: Prediction[] - } - | { - state: 'FINISHED_PREDICTIONS' - predictions: Prediction[] - } - | { - state: 'FINISHED_LOADING_MODEL' - model: MobileNet - } - | { - state: 'LOADING_MODEL' - } - | { - state: 'ERROR' - message: string - } - -let cachedModel: MobileNet | null = null - -export const useImageAnalyzer = (imageData: ImageData) => { - const [imageAnalyzerState, setImageAnalyzerState] = - useState({ - state: 'LOADING_MODEL', - }) - - useEffect(() => { - if (imageAnalyzerState.state === 'LOADING_MODEL') { - if (cachedModel) { - setImageAnalyzerState({ - state: 'FINISHED_LOADING_MODEL', - model: cachedModel, - }) - } else { - loadModel() - .then((model) => { - cachedModel = model - - setImageAnalyzerState({ - state: 'FINISHED_LOADING_MODEL', - model, - }) - }) - .catch((error) => { - console.error(error) - setImageAnalyzerState({ - state: 'ERROR', - message: error.getMessage(), - }) - }) - } - } else if (imageAnalyzerState.state === 'ERROR') { - setImageAnalyzerState({ - state: 'ERROR', - message: imageAnalyzerState.message, - }) - } else if (imageAnalyzerState.state === 'FINISHED_LOADING_MODEL') { - imageAnalyzerState.model.classify(imageData).then((predictions) => { - setImageAnalyzerState({ - state: 'FINISHED_PREDICTIONS', - predictions, - }) - }) - } else if (imageAnalyzerState.state === 'FINISHED_PREDICTIONS') { - const sortedPredictions = Array.from(imageAnalyzerState.predictions) - .sort((a, b) => b.probability - a.probability) - .slice(0, 5) - - const topClassification = sortedPredictions[0].className - - getImageDescription(topClassification).then(({ description }) => { - setImageAnalyzerState({ - state: 'FINISHED', - predictions: imageAnalyzerState.predictions, - description: description, - classification: topClassification, - }) - }) - } - }, [imageData, imageAnalyzerState, setImageAnalyzerState]) - - return { imageClassifier: imageAnalyzerState } -} diff --git a/src/app/_hooks/useImageClassificationService.tsx b/src/app/_hooks/useImageClassificationService.tsx new file mode 100644 index 0000000..5a27285 --- /dev/null +++ b/src/app/_hooks/useImageClassificationService.tsx @@ -0,0 +1,94 @@ +'use client' + +import { useEffect, useState } from 'react' +import '@tensorflow/tfjs-backend-cpu' +import '@tensorflow/tfjs-backend-webgl' +import { load as loadModel, MobileNet } from '@tensorflow-models/mobilenet' +import { Classification } from '@/app/types' + +type ImageClassificationState = + | { + state: 'FINISHED_LOADING_CLASSIFICATION' + classification: Classification + } + | { + state: 'FINISHED_LOADING_MODEL' + model: MobileNet + } + | { + state: 'LOADING_MODEL' + } + | { + state: 'ERROR_LOADING_MODEL' + message: string + } + | { + state: 'ERROR_LOADING_CLASSIFICATION' + message: string + } + +let cachedModel: MobileNet | null = null + +export const useImageClassificationService = (imageData: ImageData) => { + const [imageClassificationState, setImageClassificationState] = + useState({ + state: 'LOADING_MODEL', + }) + + useEffect(() => { + if (imageClassificationState.state === 'LOADING_MODEL') { + if (cachedModel) { + setImageClassificationState({ + state: 'FINISHED_LOADING_MODEL', + model: cachedModel, + }) + } else { + loadModel() + .then((model) => { + cachedModel = model + + setImageClassificationState({ + state: 'FINISHED_LOADING_MODEL', + model, + }) + }) + .catch((error) => { + console.error(error) + + setImageClassificationState({ + state: 'ERROR_LOADING_MODEL', + message: error.getMessage(), + }) + }) + } + } else if (imageClassificationState.state === 'FINISHED_LOADING_MODEL') { + imageClassificationState.model + .classify(imageData) + .then((result) => { + const sortedPredictions = Array.from(result) + .sort((a, b) => b.probability - a.probability) + .slice(0, 5) + + const topClassification = sortedPredictions[0].className + + setImageClassificationState({ + state: 'FINISHED_LOADING_CLASSIFICATION', + classification: { + top: topClassification, + predictions: sortedPredictions, + }, + }) + }) + .catch((error: Error) => { + console.error(error) + + setImageClassificationState({ + state: 'ERROR_LOADING_CLASSIFICATION', + message: error.message, + }) + }) + } + }, [imageData, imageClassificationState, setImageClassificationState]) + + return { imageClassificationResult: imageClassificationState } +} diff --git a/src/app/_hooks/useImageDescriptionService.tsx b/src/app/_hooks/useImageDescriptionService.tsx new file mode 100644 index 0000000..4c94622 --- /dev/null +++ b/src/app/_hooks/useImageDescriptionService.tsx @@ -0,0 +1,45 @@ +'use client' + +import { useEffect, useState } from 'react' +import { getImageDescription } from '@/lib/data' + +type ImageDescriptionState = + | { + state: 'LOADING' + } + | { + state: 'FINISHED' + description: string + } + | { + state: 'ERROR' + message: string + } + +export const useImageDescriptionService = (classification: string) => { + const [imageDescriptionState, setImageDescriptionState] = + useState({ + state: 'LOADING', + }) + + useEffect(() => { + if (imageDescriptionState.state === 'LOADING') { + getImageDescription(classification) + .then(({ response }) => { + setImageDescriptionState({ + state: 'FINISHED', + description: response, + }) + }) + .catch((error: Error) => { + console.error(error) + setImageDescriptionState({ + state: 'ERROR', + message: error.message, + }) + }) + } + }, [classification, imageDescriptionState, setImageDescriptionState]) + + return { imageDescriptionResult: imageDescriptionState } +} diff --git a/src/app/_hooks/useImageUploadInfoFetcher.tsx b/src/app/_hooks/useImageUploadInfoFetcher.tsx index cbe2466..c5c19b2 100644 --- a/src/app/_hooks/useImageUploadInfoFetcher.tsx +++ b/src/app/_hooks/useImageUploadInfoFetcher.tsx @@ -1,6 +1,6 @@ 'use client' -import { ImageUploadInfo } from '@/app/image-analyzer/types' +import { ImageUploadInfo } from '@/app/types' import { useEffect, useState } from 'react' export const useImageUploadInfoFetcher = (imageSource: string) => { diff --git a/src/app/api/image/description/v1/route.ts b/src/app/api/image/description/v1/route.ts deleted file mode 100644 index c735e79..0000000 --- a/src/app/api/image/description/v1/route.ts +++ /dev/null @@ -1,25 +0,0 @@ -import 'server-only' - -import { NextRequest } from 'next/server' -import OpenAI from 'openai' - -const openai = new OpenAI({ - apiKey: process.env.OPENAI_API_KEY, -}) - -export const runtime = 'edge' - -export async function POST(request: NextRequest) { - const { thing } = await request.json() - - const prompt = `Can you tell me about this '${thing}' thing? I don't understand what this is.` - - const response = await openai.chat.completions.create({ - model: 'gpt-3.5-turbo', - messages: [{ role: 'user', content: prompt }], - }) - - const openaiResponse = response.choices.join(', ') - - return Response.json({ description: openaiResponse }) -} diff --git a/src/app/api/v1/image/description/route.ts b/src/app/api/v1/image/description/route.ts new file mode 100644 index 0000000..f61efc6 --- /dev/null +++ b/src/app/api/v1/image/description/route.ts @@ -0,0 +1,22 @@ +import 'server-only' + +import { NextRequest, NextResponse } from 'next/server' +import cacher from '@/lib/cacher' +import OpenAIWrapper from '@/lib/openai' + +export const runtime = 'edge' + +const openaiWrapper = new OpenAIWrapper() + +export async function POST(request: NextRequest) { + const { thing } = await request.json() + const cacheKey = `${request.nextUrl.pathname}-${thing}` + + const response = await cacher(cacheKey, () => + openaiWrapper.chat( + `Can you tell me about '${thing}'? I don't understand what this is.` + ) + ) + + return NextResponse.json(response) +} diff --git a/src/app/globals.css b/src/app/globals.css deleted file mode 100644 index e69de29..0000000 diff --git a/src/app/globals.scss b/src/app/globals.scss new file mode 100644 index 0000000..8d100b9 --- /dev/null +++ b/src/app/globals.scss @@ -0,0 +1,122 @@ +/* stylelint-disable */ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + vertical-align: baseline; +} +/* stylelint-enable */ + +body { + padding: 10px; + font: + 16px/1.5 'Inconsolata', + 'Lucida Sans Typewriter', + 'Lucida Console', + Monaco, + monospace; + color: #000; + background-color: #fbfbfb; + margin: 0 auto; + max-width: 800px; +} + +body > * { + padding: 0px; + margin: 0px; + font-size: 100%; + margin-left: 0.5em; + margin-right: 0.5em; +} + +h1 { + font-size: 2em; + font-weight: bold; +} + +h2 { + font-size: 1.5em; + font-weight: bold; + // text-decoration: underline; +} + +canvas { + margin: 5px 5px 10px 5px; + max-width: 500px; + max-height: 500px; + -moz-box-shadow: 0 0 3px 3px #d81b60; + -webkit-box-shadow: 0 0 3px 3px #d81b60; + box-shadow: 0 0 3px 3px #d81b60; +} + +.welcome { + display: flex; + flex-flow: column wrap; + margin: 5px 0 30px 0; +} + +.background-info { + margin-bottom: 20px; +} + +.image-uploader { + height: 16rem; + max-width: 100%; + text-align: center; + position: relative; +} + +#input-file-upload { + display: none; +} + +#label-file-upload { + height: 100%; + display: flex; + align-items: center; + justify-content: center; + border-width: 2px; + border: 8px dashed #d81b60; + border-radius: 24px; + + p:first-child { + font-size: 1.4em; + font-weight: bold; + } +} + +#label-file-upload.drag-active { + background-color: #ffffff; +} + +.upload-button { + margin-bottom: 0; +} + +.upload-button:hover { + text-decoration-line: underline; +} + +#drag-file-element { + position: absolute; + width: 100%; + height: 100%; + border-radius: 1rem; + top: 0px; + right: 0px; + bottom: 0px; + left: 0px; +} diff --git a/src/app/layout.tsx b/src/app/layout.tsx index ce25672..e4b2b3c 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,13 +1,12 @@ import type { Metadata } from 'next' -import Container from '@mui/material/Container' import Header from '@/app/_components/Header' import Footer from '@/app/_components/Footer' -import './globals.css' +import './globals.scss' export const metadata: Metadata = { - title: 'Web Playground', + title: 'Image Analyzer', description: - 'A NextJS app that allows users to analyze images using MobileNet (in-browser), ChatGPT, and Cloudflare Workers', + 'a NextJS app that allows users to analyze images using MobileNet (via TensorflowJS), ChatGPT, and Cloudflare Pages', } export default function RootLayout({ @@ -19,11 +18,9 @@ export default function RootLayout({
- -
- {children} -
- +
+ {children} +
diff --git a/src/app/page.tsx b/src/app/page.tsx index c41894d..57c3dfa 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -3,7 +3,7 @@ import { useCallback, useState } from 'react' import ImageUploader from '@/app/_components/ImageUploader' import SampleImagePreview from '@/app/_components/SampleImagePreview' -import Welcome from '@/app/_components/Welcome' +import BackgroundInfo from '@/app/_components/BackgroundInfo' import ImageAnalyzer from '@/app/_components/ImageAnalyzer' import { ImageUploadInfo } from '@/app/types' @@ -19,9 +19,8 @@ const ImageAnalyzerRoot = () => { return (
- -
-

Try it out

+
+
{images.length <= 0 && ( @@ -29,7 +28,7 @@ const ImageAnalyzerRoot = () => { )} {images.length > 0 && (
-

Analysis Results

+

Analysis Results

{images.map((data, index) => ( ))} diff --git a/src/app/types.ts b/src/app/types.ts index 8cfed89..fa0185b 100644 --- a/src/app/types.ts +++ b/src/app/types.ts @@ -9,11 +9,12 @@ export type ImageMetadata = ImageUploadInfo & { export type Prediction = { className: string; probability: number } -export type ClassificationData = { +export type Classification = { + top: string predictions: Prediction[] } export type ImageClassificationData = ImageMetadata & - ClassificationData & { + Classification & { background: string } diff --git a/src/env.d.ts b/src/env.d.ts new file mode 100644 index 0000000..2531da7 --- /dev/null +++ b/src/env.d.ts @@ -0,0 +1,11 @@ +declare global { + namespace NodeJS { + interface ProcessEnv { + [key: string]: string | undefined + IMAGE_ANALYZER_KV: KVNamespace + OPENAI_API_KEY: string + } + } +} + +export {} diff --git a/src/lib/cacherClient.ts b/src/lib/cache-client.ts similarity index 70% rename from src/lib/cacherClient.ts rename to src/lib/cache-client.ts index 9e7f005..c836184 100644 --- a/src/lib/cacherClient.ts +++ b/src/lib/cache-client.ts @@ -1,6 +1,6 @@ import { KVNamespace } from '@cloudflare/workers-types' -interface CacherClient { +export interface CacherClient { get(key: string): Promise put(key: string, value: string): Promise } @@ -29,10 +29,6 @@ export class InMemoryCacher implements CacherClient { this.store = store } - static create() { - return new InMemoryCacher() - } - get = async (key: string): Promise => { const result = this.store[key] return result ? result : null @@ -42,14 +38,3 @@ export class InMemoryCacher implements CacherClient { this.store[key] = value } } - -const createCacheClient = (): CacherClient => { - if (process.env.NODE_ENV === 'development') return InMemoryCacher.create() - - const { WEB_PLAYGROUND_CACHE } = process.env as unknown as { - WEB_PLAYGROUND_CACHE: KVNamespace - } - return new KVCacher(WEB_PLAYGROUND_CACHE) -} - -export default createCacheClient diff --git a/src/lib/cacher.ts b/src/lib/cacher.ts new file mode 100644 index 0000000..8898f26 --- /dev/null +++ b/src/lib/cacher.ts @@ -0,0 +1,32 @@ +import 'server-only' + +import { CacherClient, InMemoryCacher, KVCacher } from './cache-client' + +const createCacheClient = (): CacherClient => { + if (process.env.NODE_ENV === 'development') return new InMemoryCacher() + + const IMAGE_ANALYZER_KV = process.env.IMAGE_ANALYZER_KV + + return new KVCacher(IMAGE_ANALYZER_KV) +} + +const cacheClient = createCacheClient() + +const cacher = async ( + key: string, + requestPromise: () => Promise +): Promise => { + const cacheHit = await cacheClient.get(key) + + if (cacheHit) return JSON.parse(cacheHit) + + try { + const body = await requestPromise() + cacheClient.put(key, JSON.stringify(body)) + return body + } catch (e) { + return Promise.reject(e) + } +} + +export default cacher diff --git a/src/lib/data.ts b/src/lib/data.ts new file mode 100644 index 0000000..1e03196 --- /dev/null +++ b/src/lib/data.ts @@ -0,0 +1,11 @@ +export const getImageDescription = async (thing: string) => { + const response = await fetch('/api/v1/image/description', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ thing }), + }) + + return await response.json() +} diff --git a/src/lib/image.ts b/src/lib/image.ts index e057bec..4e5034a 100644 --- a/src/lib/image.ts +++ b/src/lib/image.ts @@ -27,18 +27,3 @@ export const resizeImage = ({ height: imageHeight, } } - -export const getImageDescription = async (thing: string) => { - const response = await fetch( - 'http://localhost:3000/api/image/description/v1', - { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ thing }), - } - ) - - return await response.json() -} diff --git a/src/lib/openai.ts b/src/lib/openai.ts new file mode 100644 index 0000000..8dcfc17 --- /dev/null +++ b/src/lib/openai.ts @@ -0,0 +1,28 @@ +import 'server-only' + +import OpenAI from 'openai' + +const openai = new OpenAI({ + apiKey: process.env.OPENAI_API_KEY, +}) + +export interface IOpenAIWrapper { + chat(prompt: string): Promise<{ response: string }> +} + +export default class OpenAIWrapper implements IOpenAIWrapper { + async chat(prompt: string): Promise<{ response: string }> { + try { + const response = await openai.chat.completions.create({ + model: 'gpt-3.5-turbo', + messages: [{ role: 'user', content: prompt }], + }) + + const openaiResponse = response.choices.join(', ') + + return Promise.resolve({ response: openaiResponse }) + } catch (e) { + return Promise.reject(e) + } + } +} diff --git a/src/middleware.ts b/src/middleware.ts deleted file mode 100644 index 2013d45..0000000 --- a/src/middleware.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { NextResponse } from 'next/server' -import type { NextRequest } from 'next/server' -import createCacheClient from '@/lib/cacherClient' - -const cacheClient = createCacheClient() - -const cacheRequestWithKey = async (key: string) => { - const cacheHit = await cacheClient.get(key) - if (cacheHit !== null) return Response.json(JSON.parse(cacheHit)) - - const response = NextResponse.next() - - const body = await response.json() - - console.log(body) - - cacheClient.put(key, JSON.stringify(body)) - - return Response.json(body) -} - -export async function middleware(request: NextRequest) { - if (request.method === 'POST') { - const key = `${request.nextUrl.pathname}-${JSON.stringify( - await request.json() - )}` - return cacheRequestWithKey(key) - } -} - -export const config = { - matcher: ['/api/image/description/v1'], -}

+ A proof-of-concept web application that analyzes your images using{' '} + + + MobileNet + + {' '} + (via TensorflowJS),{' '} + + ChatGPT + {' '} + (for image descriptions), and{' '} + + Cloudflare Pages + + . I built this web application to learn how to run maching learning models + in web browsers. Please contact me on{' '} + LinkedIn for any feedback or + concerns. Enjoy! 😀 +