From 26d71ee8eb47bfe5c5edbb16d3626e1faab4a918 Mon Sep 17 00:00:00 2001 From: Gustavo Rezende Date: Mon, 13 Jan 2025 09:51:05 -0300 Subject: [PATCH 1/5] . --- README.md | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 README.md diff --git a/README.md b/README.md deleted file mode 100644 index 5385f59..0000000 --- a/README.md +++ /dev/null @@ -1,20 +0,0 @@ -

Material referente as entregas dos desafios no curso de React.JS na Coderhouse Brasil

- -
- -

Aulas com entrega:

- - -Acesse as aulas pelas branches \ No newline at end of file From b7ecc7cb009e5795d81ad779138467a9a619be70 Mon Sep 17 00:00:00 2001 From: Gustavo Rezende Date: Mon, 13 Jan 2025 10:07:40 -0300 Subject: [PATCH 2/5] . --- .gitignore | 24 + README.md | 7 + eslint.config.js | 38 + index.html | 13 + package-lock.json | 4657 +++++++++++++++++++++++++++++++++ package.json | 29 + public/vite.svg | 1 + src/App.css | 73 + src/App.jsx | 36 + src/assets/react.svg | 1 + src/components/ItemCount.jsx | 45 + src/components/ItemDetail.jsx | 40 + src/context/CartContext.jsx | 40 + src/main.jsx | 9 + vite.config.js | 7 + 15 files changed, 5020 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 eslint.config.js create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/vite.svg create mode 100644 src/App.css create mode 100644 src/App.jsx create mode 100644 src/assets/react.svg create mode 100644 src/components/ItemCount.jsx create mode 100644 src/components/ItemDetail.jsx create mode 100644 src/context/CartContext.jsx create mode 100644 src/main.jsx create mode 100644 vite.config.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/README.md b/README.md new file mode 100644 index 0000000..e789d36 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +

Screenshot of result

+ +

Descrição:

+
+
+

16/12 Desafio ( CartContext ) da Aula 10 ( Contexto(context) ) do curso de React.js na CoderHouse; Turma #63750 de 2024.

+
\ No newline at end of file diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..238d2e4 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,38 @@ +import js from '@eslint/js' +import globals from 'globals' +import react from 'eslint-plugin-react' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' + +export default [ + { ignores: ['dist'] }, + { + files: ['**/*.{js,jsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + parserOptions: { + ecmaVersion: 'latest', + ecmaFeatures: { jsx: true }, + sourceType: 'module', + }, + }, + settings: { react: { version: '18.3' } }, + plugins: { + react, + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...js.configs.recommended.rules, + ...react.configs.recommended.rules, + ...react.configs['jsx-runtime'].rules, + ...reactHooks.configs.recommended.rules, + 'react/jsx-no-target-blank': 'off', + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +] diff --git a/index.html b/index.html new file mode 100644 index 0000000..0c589ec --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + + +
+ + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..7d73c0e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,4657 @@ +{ + "name": "aula10", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "aula10", + "version": "0.0.0", + "dependencies": { + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-router-dom": "^7.1.1" + }, + "devDependencies": { + "@eslint/js": "^9.17.0", + "@types/react": "^18.3.18", + "@types/react-dom": "^18.3.5", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.17.0", + "eslint-plugin-react": "^7.37.2", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.16", + "globals": "^15.14.0", + "vite": "^6.0.5" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.5.tgz", + "integrity": "sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz", + "integrity": "sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.0", + "@babel/generator": "^7.26.0", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.0", + "@babel/parser": "^7.26.0", + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.26.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz", + "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.26.5", + "@babel/types": "^7.26.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.0.tgz", + "integrity": "sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.25.9", + "@babel/types": "^7.26.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.5.tgz", + "integrity": "sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.26.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz", + "integrity": "sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.9.tgz", + "integrity": "sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz", + "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.9", + "@babel/parser": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.5.tgz", + "integrity": "sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.5", + "@babel/parser": "^7.26.5", + "@babel/template": "^7.25.9", + "@babel/types": "^7.26.5", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.5.tgz", + "integrity": "sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", + "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", + "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", + "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", + "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", + "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", + "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", + "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", + "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", + "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", + "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", + "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", + "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", + "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", + "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", + "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", + "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", + "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", + "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", + "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", + "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", + "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", + "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", + "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", + "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", + "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/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, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", + "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.5", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", + "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.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" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.18.0.tgz", + "integrity": "sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", + "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", + "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.10.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@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, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.30.1.tgz", + "integrity": "sha512-pSWY+EVt3rJ9fQ3IqlrEUtXh3cGqGtPDH1FQlNZehO2yYxCHEX1SPsz1M//NXwYfbTlcKr9WObLnJX9FsS9K1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.30.1.tgz", + "integrity": "sha512-/NA2qXxE3D/BRjOJM8wQblmArQq1YoBVJjrjoTSBS09jgUisq7bqxNHJ8kjCHeV21W/9WDGwJEWSN0KQ2mtD/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz", + "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.30.1.tgz", + "integrity": "sha512-x78BavIwSH6sqfP2xeI1hd1GpHL8J4W2BXcVM/5KYKoAD3nNsfitQhvWSw+TFtQTLZ9OmlF+FEInEHyubut2OA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.30.1.tgz", + "integrity": "sha512-HYTlUAjbO1z8ywxsDFWADfTRfTIIy/oUlfIDmlHYmjUP2QRDTzBuWXc9O4CXM+bo9qfiCclmHk1x4ogBjOUpUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.30.1.tgz", + "integrity": "sha512-1MEdGqogQLccphhX5myCJqeGNYTNcmTyaic9S7CG3JhwuIByJ7J05vGbZxsizQthP1xpVx7kd3o31eOogfEirw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.30.1.tgz", + "integrity": "sha512-PaMRNBSqCx7K3Wc9QZkFx5+CX27WFpAMxJNiYGAXfmMIKC7jstlr32UhTgK6T07OtqR+wYlWm9IxzennjnvdJg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.30.1.tgz", + "integrity": "sha512-B8Rcyj9AV7ZlEFqvB5BubG5iO6ANDsRKlhIxySXcF1axXYUyqwBok+XZPgIYGBgs7LDXfWfifxhw0Ik57T0Yug==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.30.1.tgz", + "integrity": "sha512-hqVyueGxAj3cBKrAI4aFHLV+h0Lv5VgWZs9CUGqr1z0fZtlADVV1YPOij6AhcK5An33EXaxnDLmJdQikcn5NEw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.30.1.tgz", + "integrity": "sha512-i4Ab2vnvS1AE1PyOIGp2kXni69gU2DAUVt6FSXeIqUCPIR3ZlheMW3oP2JkukDfu3PsexYRbOiJrY+yVNSk9oA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.30.1.tgz", + "integrity": "sha512-fARcF5g296snX0oLGkVxPmysetwUk2zmHcca+e9ObOovBR++9ZPOhqFUM61UUZ2EYpXVPN1redgqVoBB34nTpQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.30.1.tgz", + "integrity": "sha512-GLrZraoO3wVT4uFXh67ElpwQY0DIygxdv0BNW9Hkm3X34wu+BkqrDrkcsIapAY+N2ATEbvak0XQ9gxZtCIA5Rw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.30.1.tgz", + "integrity": "sha512-0WKLaAUUHKBtll0wvOmh6yh3S0wSU9+yas923JIChfxOaaBarmb/lBKPF0w/+jTVozFnOXJeRGZ8NvOxvk/jcw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.30.1.tgz", + "integrity": "sha512-GWFs97Ruxo5Bt+cvVTQkOJ6TIx0xJDD/bMAOXWJg8TCSTEK8RnFeOeiFTxKniTc4vMIaWvCplMAFBt9miGxgkA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.30.1.tgz", + "integrity": "sha512-UtgGb7QGgXDIO+tqqJ5oZRGHsDLO8SlpE4MhqpY9Llpzi5rJMvrK6ZGhsRCST2abZdBqIBeXW6WPD5fGK5SDwg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.30.1.tgz", + "integrity": "sha512-V9U8Ey2UqmQsBT+xTOeMzPzwDzyXmnAoO4edZhL7INkwQcaW1Ckv3WJX3qrrp/VHaDkEWIBWhRwP47r8cdrOow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.30.1.tgz", + "integrity": "sha512-WabtHWiPaFF47W3PkHnjbmWawnX/aE57K47ZDT1BXTS5GgrBUEpvOzq0FI0V/UYzQJgdb8XlhVNH8/fwV8xDjw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.30.1.tgz", + "integrity": "sha512-pxHAU+Zv39hLUTdQQHUVHf4P+0C47y/ZloorHpzs2SXMRqeAWmGghzAhfOlzFHHwjvgokdFAhC4V+6kC1lRRfw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.30.1.tgz", + "integrity": "sha512-D6qjsXGcvhTjv0kI4fU8tUuBDF/Ueee4SVX79VfNDXZa64TfCW1Slkb6Z7O1p7vflqZjcmOVdZlqf8gvJxc6og==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==", + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@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, + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.14", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz", + "integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.18", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.18.tgz", + "integrity": "sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz", + "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz", + "integrity": "sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/plugin-transform-react-jsx-self": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0" + } + }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/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, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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, + "license": "Python-2.0" + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", + "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001692", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001692.tgz", + "integrity": "sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "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, + "license": "MIT", + "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/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==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/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==", + "dev": true, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cookie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz", + "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true, + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.80", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.80.tgz", + "integrity": "sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==", + "dev": true, + "license": "ISC" + }, + "node_modules/es-abstract": { + "version": "1.23.9", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", + "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-regex": "^1.2.1", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.18" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.24.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", + "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.24.2", + "@esbuild/android-arm": "0.24.2", + "@esbuild/android-arm64": "0.24.2", + "@esbuild/android-x64": "0.24.2", + "@esbuild/darwin-arm64": "0.24.2", + "@esbuild/darwin-x64": "0.24.2", + "@esbuild/freebsd-arm64": "0.24.2", + "@esbuild/freebsd-x64": "0.24.2", + "@esbuild/linux-arm": "0.24.2", + "@esbuild/linux-arm64": "0.24.2", + "@esbuild/linux-ia32": "0.24.2", + "@esbuild/linux-loong64": "0.24.2", + "@esbuild/linux-mips64el": "0.24.2", + "@esbuild/linux-ppc64": "0.24.2", + "@esbuild/linux-riscv64": "0.24.2", + "@esbuild/linux-s390x": "0.24.2", + "@esbuild/linux-x64": "0.24.2", + "@esbuild/netbsd-arm64": "0.24.2", + "@esbuild/netbsd-x64": "0.24.2", + "@esbuild/openbsd-arm64": "0.24.2", + "@esbuild/openbsd-x64": "0.24.2", + "@esbuild/sunos-x64": "0.24.2", + "@esbuild/win32-arm64": "0.24.2", + "@esbuild/win32-ia32": "0.24.2", + "@esbuild/win32-x64": "0.24.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.18.0.tgz", + "integrity": "sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.19.0", + "@eslint/core": "^0.10.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.18.0", + "@eslint/plugin-kit": "^0.2.5", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.1", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.2.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz", + "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0.tgz", + "integrity": "sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.18.tgz", + "integrity": "sha512-IRGEoFn3OKalm3hjfolEWGqoF/jPqeEYFp+C8B0WMzwGwBMvlRDQd06kghDhF0C61uJ6WfSDhEZE/sAQjduKgw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/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, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "dev": true, + "license": "MIT" + }, + "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", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/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, + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", + "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", + "dev": true, + "license": "ISC" + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", + "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "function-bind": "^1.1.2", + "get-proto": "^1.0.0", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.14.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", + "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "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, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.0.tgz", + "integrity": "sha512-GExz9MtyhlZyXYLxzlJRj5WUCE661zhDa1Yna52CN57AJsymh+DvXXjyveSioqSRdxvUrdKdvqB1b5cVKsNpWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.1.tgz", + "integrity": "sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.0.tgz", + "integrity": "sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/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, + "license": "MIT" + }, + "node_modules/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, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT" + }, + "node_modules/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==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "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, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "dev": true, + "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" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "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, + "license": "MIT" + }, + "node_modules/react-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.1.1.tgz", + "integrity": "sha512-39sXJkftkKWRZ2oJtHhCxmoCrBCULr/HAH4IT5DHlgu/Q0FCPV0S4Lx+abjDTx/74xoZzNYDYbOZWlJjruyuDQ==", + "license": "MIT", + "dependencies": { + "@types/cookie": "^0.6.0", + "cookie": "^1.0.1", + "set-cookie-parser": "^2.6.0", + "turbo-stream": "2.4.0" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } + } + }, + "node_modules/react-router-dom": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.1.1.tgz", + "integrity": "sha512-vSrQHWlJ5DCfyrhgo0k6zViOe9ToK8uT5XGSmnuC2R3/g261IdIMpZVqfjD6vWSXdnf5Czs4VA/V60oVR6/jnA==", + "license": "MIT", + "dependencies": { + "react-router": "7.1.1" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/rollup": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.30.1.tgz", + "integrity": "sha512-mlJ4glW020fPuLi7DkM/lN97mYEZGWeqBnrljzN0gs7GLctqX3lNWxKQ7Gl712UAX+6fog/L3jh4gb7R6aVi3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.30.1", + "@rollup/rollup-android-arm64": "4.30.1", + "@rollup/rollup-darwin-arm64": "4.30.1", + "@rollup/rollup-darwin-x64": "4.30.1", + "@rollup/rollup-freebsd-arm64": "4.30.1", + "@rollup/rollup-freebsd-x64": "4.30.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.30.1", + "@rollup/rollup-linux-arm-musleabihf": "4.30.1", + "@rollup/rollup-linux-arm64-gnu": "4.30.1", + "@rollup/rollup-linux-arm64-musl": "4.30.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.30.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.30.1", + "@rollup/rollup-linux-riscv64-gnu": "4.30.1", + "@rollup/rollup-linux-s390x-gnu": "4.30.1", + "@rollup/rollup-linux-x64-gnu": "4.30.1", + "@rollup/rollup-linux-x64-musl": "4.30.1", + "@rollup/rollup-win32-arm64-msvc": "4.30.1", + "@rollup/rollup-win32-ia32-msvc": "4.30.1", + "@rollup/rollup-win32-x64-msvc": "4.30.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/set-cookie-parser": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz", + "integrity": "sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==", + "license": "MIT" + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/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, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/turbo-stream": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.4.0.tgz", + "integrity": "sha512-FHncC10WpBd2eOmGwpmQsWLDoK4cqsA/UT/GqNoaKOQnT8uzhtCbg3EoUDMvqpOSAI0S26mr0rkjzbOO6S3v1g==", + "license": "ISC" + }, + "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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "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, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vite": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.7.tgz", + "integrity": "sha512-RDt8r/7qx9940f8FcOIAH9PTViRrghKaK2K1jY3RaAURrEUbm9Du1mJ72G+jlhtG3WwodnfzY8ORQZbBavZEAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.24.2", + "postcss": "^8.4.49", + "rollup": "^4.23.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "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, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", + "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..d2af86a --- /dev/null +++ b/package.json @@ -0,0 +1,29 @@ +{ + "name": "aula10", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-router-dom": "^7.1.1" + }, + "devDependencies": { + "@eslint/js": "^9.17.0", + "@types/react": "^18.3.18", + "@types/react-dom": "^18.3.5", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.17.0", + "eslint-plugin-react": "^7.37.2", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.16", + "globals": "^15.14.0", + "vite": "^6.0.5" + } +} diff --git a/public/vite.svg b/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/App.css b/src/App.css new file mode 100644 index 0000000..33bba9f --- /dev/null +++ b/src/App.css @@ -0,0 +1,73 @@ +body { + font-family: Arial, sans-serif; + margin: 0; + padding: 0; + background-color: #f4f4f9; + color: #333; +} + +.container { + text-align: center; + padding: 20px; +} + +.item-detail { + margin: 20px auto; + padding: 20px; + max-width: 500px; + border: 1px solid #ddd; + border-radius: 8px; + background: #fff; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); +} + +.item-detail h1 { + margin-bottom: 10px; +} + +.item-detail p { + margin: 5px 0; +} + +.item-count { + margin-top: 20px; +} + +.item-count button { + background-color: #007bff; + color: #fff; + border: none; + padding: 10px 20px; + margin: 5px; + border-radius: 4px; + cursor: pointer; + transition: background-color 0.3s; +} + +.item-count button:disabled { + background-color: #ccc; + cursor: not-allowed; +} + +.item-count button:hover:not(:disabled) { + background-color: #0056b3; +} + +.item-count span { + font-size: 1.2rem; + margin: 0 10px; +} + +.item-detail button { + background-color: #28a745; + color: #fff; + border: none; + padding: 10px 20px; + border-radius: 4px; + cursor: pointer; + transition: background-color 0.3s; +} + +.item-detail button:hover { + background-color: #218838; +} diff --git a/src/App.jsx b/src/App.jsx new file mode 100644 index 0000000..81afe8e --- /dev/null +++ b/src/App.jsx @@ -0,0 +1,36 @@ +import React from "react"; +import { BrowserRouter as Router, Route, Routes } from "react-router-dom"; +import ItemDetail from "./components/ItemDetail"; +import { CartProvider } from "./context/CartContext"; +import "./App.css"; + +function App() { + const item = { + id: 1, + name: "Produto X", + price: 50, + stock: 10, + }; + + return ( + + + + } /> + } /> + + + + ); +} + +function Cart() { + return ( +
+

Carrinho

+

Aqui estarão os itens adicionados ao carrinho!

+
+ ); +} + +export default App; diff --git a/src/assets/react.svg b/src/assets/react.svg new file mode 100644 index 0000000..6c87de9 --- /dev/null +++ b/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/ItemCount.jsx b/src/components/ItemCount.jsx new file mode 100644 index 0000000..87ae292 --- /dev/null +++ b/src/components/ItemCount.jsx @@ -0,0 +1,45 @@ +import { useState } from "react"; + +const ItemCount = ({ stock, initial, onAdd }) => { + const [count, setCount] = useState(initial || 1); + + const increment = () => { + if (count < stock) { + setCount(count + 1); + } + }; + + const decrement = () => { + if (count > 1) { + setCount(count - 1); + } + }; + + const handleAdd = () => { + if (stock > 0) { + onAdd(count); + } + }; + + return ( +
+

Contador de Itens

+
+ + {count} + +
+
+ +
+
+ ); +}; + +export default ItemCount; \ No newline at end of file diff --git a/src/components/ItemDetail.jsx b/src/components/ItemDetail.jsx new file mode 100644 index 0000000..e14c3d0 --- /dev/null +++ b/src/components/ItemDetail.jsx @@ -0,0 +1,40 @@ +import React, { useState } from "react"; +import { useNavigate } from "react-router-dom"; +import { useCart } from "../context/CartContext"; +import ItemCount from "./ItemCount"; + +function ItemDetail({ item }) { + const [quantityToAdd, setQuantityToAdd] = useState(null); + const { addItem } = useCart(); + const navigate = useNavigate(); + + const handleAdd = (quantity) => { + setQuantityToAdd(quantity); + addItem(item, quantity); // Adiciona ao contexto + }; + + const handleGoToCart = () => { + navigate("/cart"); + }; + + return ( +
+
+

Detalhes do Item

+

{item.name}

+

Preço: R${item.price}

+

Estoque: {item.stock}

+ {quantityToAdd === null ? ( + + ) : ( +
+

Você adicionou {quantityToAdd} itens ao carrinho.

+ +
+ )} +
+
+ ); +} + +export default ItemDetail; diff --git a/src/context/CartContext.jsx b/src/context/CartContext.jsx new file mode 100644 index 0000000..eb15412 --- /dev/null +++ b/src/context/CartContext.jsx @@ -0,0 +1,40 @@ +import React, { createContext, useContext, useState } from "react"; +const CartContext = createContext(); +export const CartProvider = ({ children }) => { + const [cart, setCart] = useState([]); + const addItem = (item, quantity) => { + if (isInCart(item.id)) { + setCart((prevCart) => + prevCart.map((cartItem) => + cartItem.id === item.id + ? { ...cartItem, quantity: cartItem.quantity + quantity } + : cartItem + ) + ); + } else { + setCart((prevCart) => [...prevCart, { ...item, quantity }]); + } + }; + + const removeItem = (itemId) => { + setCart((prevCart) => prevCart.filter((cartItem) => cartItem.id !== itemId)); + }; + + const clear = () => { + setCart([]); + }; + + const isInCart = (id) => { + return cart.some((cartItem) => cartItem.id === id); + }; + + return ( + + {children} + + ); +}; + +export const useCart = () => { + return useContext(CartContext); +}; diff --git a/src/main.jsx b/src/main.jsx new file mode 100644 index 0000000..3d9da8a --- /dev/null +++ b/src/main.jsx @@ -0,0 +1,9 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import App from './App.jsx' + +createRoot(document.getElementById('root')).render( + + + , +) diff --git a/vite.config.js b/vite.config.js new file mode 100644 index 0000000..8b0f57b --- /dev/null +++ b/vite.config.js @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}) From 42ac50bbe0bd939d5137ad7e3d59a609fcf33053 Mon Sep 17 00:00:00 2001 From: Gustavo Rezende Date: Mon, 13 Jan 2025 10:08:26 -0300 Subject: [PATCH 3/5] . --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index e789d36..1966174 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ -

Screenshot of result

-

Descrição:


From adadfe10fd136dccf8629399e0a213caf1191270 Mon Sep 17 00:00:00 2001 From: Gustavo Rezende Date: Mon, 13 Jan 2025 10:36:09 -0300 Subject: [PATCH 4/5] . --- src/App.css | 130 ++++++++++++++++++++++++---------- src/App.jsx | 16 ++--- src/components/Cart.jsx | 52 ++++++++++++++ src/components/CartWidget.jsx | 27 +++++++ src/components/ItemDetail.jsx | 7 +- 5 files changed, 183 insertions(+), 49 deletions(-) create mode 100644 src/components/Cart.jsx create mode 100644 src/components/CartWidget.jsx diff --git a/src/App.css b/src/App.css index 33bba9f..a446d1b 100644 --- a/src/App.css +++ b/src/App.css @@ -1,73 +1,131 @@ +/* Estilo geral */ body { font-family: Arial, sans-serif; - margin: 0; - padding: 0; background-color: #f4f4f9; color: #333; + margin: 0; + padding: 0; } .container { - text-align: center; + width: 80%; + margin: 0 auto; padding: 20px; } -.item-detail { - margin: 20px auto; - padding: 20px; - max-width: 500px; - border: 1px solid #ddd; - border-radius: 8px; - background: #fff; - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); +/* Estilo do cabeçalho */ +.header { + background-color: #333; + color: white; + padding: 10px 20px; + text-align: center; } -.item-detail h1 { - margin-bottom: 10px; +/* CartWidget */ +.cart-widget { + position: fixed; + top: 10px; + right: 20px; + background-color: #ff8c00; + padding: 10px; + border-radius: 50%; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } -.item-detail p { - margin: 5px 0; +.cart-widget a { + color: white; + text-decoration: none; + font-weight: bold; + font-size: 20px; } -.item-count { - margin-top: 20px; +/* Estilo do Cart */ +.cart-item { + display: flex; + justify-content: space-between; + padding: 10px 0; + border-bottom: 1px solid #ddd; } -.item-count button { - background-color: #007bff; - color: #fff; +.cart-item button { + background-color: #ff4444; + color: white; border: none; + padding: 5px 10px; + cursor: pointer; + border-radius: 5px; +} + +.cart-item button:hover { + background-color: #ff2222; +} + +.cart-summary { + display: flex; + justify-content: space-between; + margin-top: 20px; + padding-top: 20px; + border-top: 1px solid #ddd; +} + +.cart-summary button { + background-color: #28a745; + color: white; padding: 10px 20px; - margin: 5px; - border-radius: 4px; + border: none; cursor: pointer; - transition: background-color 0.3s; + border-radius: 5px; } -.item-count button:disabled { - background-color: #ccc; - cursor: not-allowed; +.cart-summary button:hover { + background-color: #218838; } -.item-count button:hover:not(:disabled) { - background-color: #0056b3; +/* Estilo do ItemDetail */ +.item-detail { + background-color: white; + padding: 20px; + border-radius: 8px; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); + text-align: center; } -.item-count span { - font-size: 1.2rem; - margin: 0 10px; +.item-detail h1 { + color: #333; +} + +.item-detail p { + color: #555; } .item-detail button { - background-color: #28a745; - color: #fff; - border: none; + background-color: #007bff; + color: white; padding: 10px 20px; - border-radius: 4px; + border: none; cursor: pointer; - transition: background-color 0.3s; + border-radius: 5px; + margin-top: 10px; } .item-detail button:hover { + background-color: #0056b3; +} + +.item-detail .btn-success { + background-color: #28a745; + margin-top: 15px; +} + +.item-detail .btn-success:hover { background-color: #218838; } + +.item-detail .btn-danger { + background-color: #dc3545; + margin-top: 15px; +} + +.item-detail .btn-danger:hover { + background-color: #c82333; +} diff --git a/src/App.jsx b/src/App.jsx index 81afe8e..bc643f3 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,12 +1,14 @@ import React from "react"; import { BrowserRouter as Router, Route, Routes } from "react-router-dom"; import ItemDetail from "./components/ItemDetail"; +import Cart from "./components/Cart"; +import CartWidget from "./components/CartWidget"; import { CartProvider } from "./context/CartContext"; import "./App.css"; function App() { const item = { - id: 1, + id: 1, name: "Produto X", price: 50, stock: 10, @@ -15,6 +17,9 @@ function App() { return ( +
+ +
} /> } /> @@ -24,13 +29,4 @@ function App() { ); } -function Cart() { - return ( -
-

Carrinho

-

Aqui estarão os itens adicionados ao carrinho!

-
- ); -} - export default App; diff --git a/src/components/Cart.jsx b/src/components/Cart.jsx new file mode 100644 index 0000000..977a1a1 --- /dev/null +++ b/src/components/Cart.jsx @@ -0,0 +1,52 @@ +import React from "react"; +import { useCart } from "../context/CartContext"; +import { Link } from "react-router-dom"; + +function Cart() { + const { cart, removeItem, clear } = useCart(); + + const calculateTotalPrice = () => { + return cart.reduce((total, item) => total + item.price * item.quantity, 0); + }; + + if (cart.length === 0) { + return ( +
+

Carrinho

+

Não há itens no seu carrinho.

+ + Voltar para a loja + +
+ ); + } + + return ( +
+

Seu Carrinho

+
    + {cart.map((item) => ( +
  • +
    +

    {item.name}

    +

    Preço: R${item.price}

    +

    Quantidade: {item.quantity}

    +
    + +
  • + ))} +
+
+

Total: R${calculateTotalPrice()}

+ + +
+
+ ); +} + +export default Cart; diff --git a/src/components/CartWidget.jsx b/src/components/CartWidget.jsx new file mode 100644 index 0000000..986a75c --- /dev/null +++ b/src/components/CartWidget.jsx @@ -0,0 +1,27 @@ +import React from "react"; +import { useCart } from "../context/CartContext"; +import { Link } from "react-router-dom"; + +function CartWidget() { + const { cart } = useCart(); + + const calculateTotalItems = () => { + return cart.reduce((total, item) => total + item.quantity, 0); + }; + + const totalItems = calculateTotalItems(); + + if (totalItems === 0) { + return null; // Não exibe o widget se não houver itens no carrinho + } + + return ( +
+ + 🛒 {totalItems} + +
+ ); +} + +export default CartWidget; diff --git a/src/components/ItemDetail.jsx b/src/components/ItemDetail.jsx index e14c3d0..5ddd5a9 100644 --- a/src/components/ItemDetail.jsx +++ b/src/components/ItemDetail.jsx @@ -20,8 +20,7 @@ function ItemDetail({ item }) { return (
-

Detalhes do Item

-

{item.name}

+

{item.name}

Preço: R${item.price}

Estoque: {item.stock}

{quantityToAdd === null ? ( @@ -29,7 +28,9 @@ function ItemDetail({ item }) { ) : (

Você adicionou {quantityToAdd} itens ao carrinho.

- +
)}
From 4d7c89e903f5a2a1d7c834a0452fea770cc51da2 Mon Sep 17 00:00:00 2001 From: Gustavo Rezende Date: Mon, 13 Jan 2025 10:43:48 -0300 Subject: [PATCH 5/5] Produto simples - Rezende --- README.md | 8 +++++++- public/images/scs1.png | Bin 0 -> 16361 bytes public/images/scs2.png | Bin 0 -> 16073 bytes public/images/scs3.png | Bin 0 -> 17736 bytes src/App.css | 6 ------ src/components/ItemDetail.jsx | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 public/images/scs1.png create mode 100644 public/images/scs2.png create mode 100644 public/images/scs3.png diff --git a/README.md b/README.md index 1966174..0635ca2 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,11 @@ +

Screenshot of result

+ + + + +

Descrição:


-

16/12 Desafio ( CartContext ) da Aula 10 ( Contexto(context) ) do curso de React.js na CoderHouse; Turma #63750 de 2024.

+

18/12 Desafio ( Cart View ) da Aula 11 ( Técnicas de renderização. ) do curso de React.js na CoderHouse; Turma #63750 de 2024.

\ No newline at end of file diff --git a/public/images/scs1.png b/public/images/scs1.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd4bea3e86cf80f20e95bab4c9800e3eb644249 GIT binary patch literal 16361 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 literal 0 HcmV?d00001 diff --git a/public/images/scs2.png b/public/images/scs2.png new file mode 100644 index 0000000000000000000000000000000000000000..b379855a774877d197eb2dd9bb9c0411ea43fd3c GIT binary patch literal 16073 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 literal 0 HcmV?d00001 diff --git a/public/images/scs3.png b/public/images/scs3.png new file mode 100644 index 0000000000000000000000000000000000000000..44b3ace2b680e70a2988f288942e6ad817f741e8 GIT binary patch literal 17736 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 literal 0 HcmV?d00001 diff --git a/src/App.css b/src/App.css index a446d1b..fdf23d8 100644 --- a/src/App.css +++ b/src/App.css @@ -1,4 +1,3 @@ -/* Estilo geral */ body { font-family: Arial, sans-serif; background-color: #f4f4f9; @@ -13,15 +12,12 @@ body { padding: 20px; } -/* Estilo do cabeçalho */ .header { background-color: #333; color: white; padding: 10px 20px; text-align: center; } - -/* CartWidget */ .cart-widget { position: fixed; top: 10px; @@ -39,7 +35,6 @@ body { font-size: 20px; } -/* Estilo do Cart */ .cart-item { display: flex; justify-content: space-between; @@ -81,7 +76,6 @@ body { background-color: #218838; } -/* Estilo do ItemDetail */ .item-detail { background-color: white; padding: 20px; diff --git a/src/components/ItemDetail.jsx b/src/components/ItemDetail.jsx index 5ddd5a9..61461d1 100644 --- a/src/components/ItemDetail.jsx +++ b/src/components/ItemDetail.jsx @@ -28,7 +28,7 @@ function ItemDetail({ item }) { ) : (

Você adicionou {quantityToAdd} itens ao carrinho.

-