From a840cbff9bfc1490fac60e6498aec04779931cf1 Mon Sep 17 00:00:00 2001 From: bhavnisharora Date: Tue, 7 Jan 2025 11:57:06 +0530 Subject: [PATCH] assignment 5 completed --- .gitignore | 24 + eslint.config.js | 38 + index.html | 13 + package-lock.json | 5600 ++++++++++++++++++++++++++++ package.json | 36 + postcss.config.js | 6 + public/vite.svg | 1 + src/App.css | 0 src/App.jsx | 86 + src/assets/images/hero-banner.jpg | Bin 0 -> 56747 bytes src/assets/mockData.jsx | 72 + src/components/CategorySection.jsx | 68 + src/components/ChangeAddress.jsx | 37 + src/components/Error.jsx | 14 + src/components/FilterData.jsx | 24 + src/components/Footer.jsx | 95 + src/components/InfoSection.jsx | 87 + src/components/Model.jsx | 21 + src/components/Navbar.jsx | 107 + src/components/ProductCard.jsx | 77 + src/components/layout/Layout.jsx | 15 + src/index.css | 3 + src/main.jsx | 13 + src/pages/About.jsx | 122 + src/pages/Cart.jsx | 160 + src/pages/Checkout.jsx | 304 ++ src/pages/Contact.jsx | 119 + src/pages/Home.jsx | 105 + src/pages/Login.jsx | 57 + src/pages/Order.jsx | 57 + src/pages/ProductDetail.jsx | 94 + src/pages/Register.jsx | 62 + src/pages/Shop.jsx | 37 + src/redux/cartSlice.jsx | 75 + src/redux/productSlice.jsx | 28 + src/redux/store.jsx | 9 + tailwind.config.js | 8 + vite.config.js | 7 + 38 files changed, 7681 insertions(+) create mode 100644 .gitignore 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 postcss.config.js create mode 100644 public/vite.svg create mode 100644 src/App.css create mode 100644 src/App.jsx create mode 100644 src/assets/images/hero-banner.jpg create mode 100644 src/assets/mockData.jsx create mode 100644 src/components/CategorySection.jsx create mode 100644 src/components/ChangeAddress.jsx create mode 100644 src/components/Error.jsx create mode 100644 src/components/FilterData.jsx create mode 100644 src/components/Footer.jsx create mode 100644 src/components/InfoSection.jsx create mode 100644 src/components/Model.jsx create mode 100644 src/components/Navbar.jsx create mode 100644 src/components/ProductCard.jsx create mode 100644 src/components/layout/Layout.jsx create mode 100644 src/index.css create mode 100644 src/main.jsx create mode 100644 src/pages/About.jsx create mode 100644 src/pages/Cart.jsx create mode 100644 src/pages/Checkout.jsx create mode 100644 src/pages/Contact.jsx create mode 100644 src/pages/Home.jsx create mode 100644 src/pages/Login.jsx create mode 100644 src/pages/Order.jsx create mode 100644 src/pages/ProductDetail.jsx create mode 100644 src/pages/Register.jsx create mode 100644 src/pages/Shop.jsx create mode 100644 src/redux/cartSlice.jsx create mode 100644 src/redux/productSlice.jsx create mode 100644 src/redux/store.jsx create mode 100644 tailwind.config.js 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/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..154b5d5 --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + + + + +
+ + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..1aec756 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5600 @@ +{ + "name": "ecommerce", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "ecommerce", + "version": "0.0.0", + "dependencies": { + "@reduxjs/toolkit": "^2.4.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-helmet-async": "^2.0.5", + "react-icons": "^5.4.0", + "react-redux": "^9.1.2", + "react-router": "^7.0.2" + }, + "devDependencies": { + "@eslint/js": "^9.15.0", + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react-swc": "^3.5.0", + "autoprefixer": "^10.4.20", + "eslint": "^9.15.0", + "eslint-plugin-react": "^7.37.2", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.14", + "globals": "^15.12.0", + "postcss": "^8.4.49", + "tailwindcss": "^3.4.16", + "vite": "^6.0.1" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz", + "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz", + "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz", + "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz", + "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz", + "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz", + "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz", + "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz", + "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz", + "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz", + "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz", + "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz", + "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz", + "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz", + "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz", + "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz", + "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz", + "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz", + "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz", + "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz", + "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz", + "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz", + "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz", + "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz", + "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==", + "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.9.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", + "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", + "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.16.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", + "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "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.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", + "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "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/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "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/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@reduxjs/toolkit": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.4.0.tgz", + "integrity": "sha512-wJZEuSKj14tvNfxiIiJws0tQN77/rDqucBq528ApebMIRHyWpCanJVQRxQ8WWZC19iCDKxDsGlbAir3F1layxA==", + "license": "MIT", + "dependencies": { + "immer": "^10.0.3", + "redux": "^5.0.1", + "redux-thunk": "^3.1.0", + "reselect": "^5.1.0" + }, + "peerDependencies": { + "react": "^16.9.0 || ^17.0.0 || ^18", + "react-redux": "^7.2.1 || ^8.1.3 || ^9.0.0" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-redux": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz", + "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz", + "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz", + "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz", + "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz", + "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz", + "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz", + "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz", + "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz", + "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz", + "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz", + "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz", + "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz", + "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz", + "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz", + "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz", + "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz", + "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz", + "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz", + "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@swc/core": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.10.0.tgz", + "integrity": "sha512-+CuuTCmQFfzaNGg1JmcZvdUVITQXJk9sMnl1C2TiDLzOSVOJRwVD4dNo5dljX/qxpMAN+2BIYlwjlSkoGi6grg==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3", + "@swc/types": "^0.1.17" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.10.0", + "@swc/core-darwin-x64": "1.10.0", + "@swc/core-linux-arm-gnueabihf": "1.10.0", + "@swc/core-linux-arm64-gnu": "1.10.0", + "@swc/core-linux-arm64-musl": "1.10.0", + "@swc/core-linux-x64-gnu": "1.10.0", + "@swc/core-linux-x64-musl": "1.10.0", + "@swc/core-win32-arm64-msvc": "1.10.0", + "@swc/core-win32-ia32-msvc": "1.10.0", + "@swc/core-win32-x64-msvc": "1.10.0" + }, + "peerDependencies": { + "@swc/helpers": "*" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.10.0.tgz", + "integrity": "sha512-wCeUpanqZyzvgqWRtXIyhcFK3CqukAlYyP+fJpY2gWc/+ekdrenNIfZMwY7tyTFDkXDYEKzvn3BN/zDYNJFowQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.10.0.tgz", + "integrity": "sha512-0CZPzqTynUBO+SHEl/qKsFSahp2Jv/P2ZRjFG0gwZY5qIcr1+B/v+o74/GyNMBGz9rft+F2WpU31gz2sJwyF4A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.10.0.tgz", + "integrity": "sha512-oq+DdMu5uJOFPtRkeiITc4kxmd+QSmK+v+OBzlhdGkSgoH3yRWZP+H2ao0cBXo93ZgCr2LfjiER0CqSKhjGuNA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.10.0.tgz", + "integrity": "sha512-Y6+PC8knchEViRxiCUj3j8wsGXaIhuvU+WqrFqV834eiItEMEI9+Vh3FovqJMBE3L7d4E4ZQtgImHCXjrHfxbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.10.0.tgz", + "integrity": "sha512-EbrX9A5U4cECCQQfky7945AW9GYnTXtCUXElWTkTYmmyQK87yCyFfY8hmZ9qMFIwxPOH6I3I2JwMhzdi8Qoz7g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.10.0.tgz", + "integrity": "sha512-TaxpO6snTjjfLXFYh5EjZ78se69j2gDcqEM8yB9gguPYwkCHi2Ylfmh7iVaNADnDJFtjoAQp0L41bTV/Pfq9Cg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.10.0.tgz", + "integrity": "sha512-IEGvDd6aEEKEyZFZ8oCKuik05G5BS7qwG5hO5PEMzdGeh8JyFZXxsfFXbfeAqjue4UaUUrhnoX+Ze3M2jBVMHw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.10.0.tgz", + "integrity": "sha512-UkQ952GSpY+Z6XONj9GSW8xGSkF53jrCsuLj0nrcuw7Dvr1a816U/9WYZmmcYS8tnG2vHylhpm6csQkyS8lpCw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.10.0.tgz", + "integrity": "sha512-a2QpIZmTiT885u/mUInpeN2W9ClCnqrV2LnMqJR1/Fgx1Afw/hAtiDZPtQ0SqS8yDJ2VR5gfNZo3gpxWMrqdVA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.10.0.tgz", + "integrity": "sha512-tZcCmMwf483nwsEBfUk5w9e046kMa1iSik4bP9Kwi2FGtOfHuDfIcwW4jek3hdcgF5SaBW1ktnK/lgQLDi5AtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@swc/types": { + "version": "0.1.17", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.17.tgz", + "integrity": "sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3" + } + }, + "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==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.14.tgz", + "integrity": "sha512-NzahNKvjNhVjuPBQ+2G7WlxstQ+47kXZNHlUvFakDViuIEfGY926GqhMueQFZ7woG+sPiQKlF36XfrIUVSUfFg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.2", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.2.tgz", + "integrity": "sha512-Fqp+rcvem9wEnGr3RY8dYNvSQ8PoLqjZ9HLgaPUOjJJD120uDyOxOjc/39M4Kddp9JQCxpGQbnhVQF0C0ncYVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "^18" + } + }, + "node_modules/@types/use-sync-external-store": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", + "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==", + "license": "MIT" + }, + "node_modules/@vitejs/plugin-react-swc": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.2.tgz", + "integrity": "sha512-y0byko2b2tSVVf5Gpng1eEhX1OvPC7x8yns1Fx8jDzlJp4LS6CMkCPfLw47cjyoMrshQDoQw4qcgjsU9VvlCew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@swc/core": "^1.7.26" + }, + "peerDependencies": { + "vite": "^4 || ^5 || ^6" + } + }, + "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-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "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/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true, + "license": "MIT" + }, + "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.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "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.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "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.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "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/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "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.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "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.0", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.0.tgz", + "integrity": "sha512-CCKAP2tkPau7D3GE8+V8R6sQubA9R5foIzGp+85EXCVSCivuxBNAWqcpn72PKYiIcqoViv/kcUDpaEIMBVi1lQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001687", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001687.tgz", + "integrity": "sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==", + "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/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "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/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "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/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/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "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/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true, + "license": "MIT" + }, + "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.0", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.0.tgz", + "integrity": "sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.71", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.71.tgz", + "integrity": "sha512-dB68l59BI75W1BUGVTAEJy45CEVuEGy9qPVVQ8pnHyHMn36PLPPoE1mjLH+lo9rKulO3HC2OhbACI/8tCqJBcA==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-abstract": { + "version": "1.23.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", + "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "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.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.0.tgz", + "integrity": "sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==", + "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-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.3", + "safe-array-concat": "^1.1.2" + }, + "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.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "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.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz", + "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.24.0", + "@esbuild/android-arm": "0.24.0", + "@esbuild/android-arm64": "0.24.0", + "@esbuild/android-x64": "0.24.0", + "@esbuild/darwin-arm64": "0.24.0", + "@esbuild/darwin-x64": "0.24.0", + "@esbuild/freebsd-arm64": "0.24.0", + "@esbuild/freebsd-x64": "0.24.0", + "@esbuild/linux-arm": "0.24.0", + "@esbuild/linux-arm64": "0.24.0", + "@esbuild/linux-ia32": "0.24.0", + "@esbuild/linux-loong64": "0.24.0", + "@esbuild/linux-mips64el": "0.24.0", + "@esbuild/linux-ppc64": "0.24.0", + "@esbuild/linux-riscv64": "0.24.0", + "@esbuild/linux-s390x": "0.24.0", + "@esbuild/linux-x64": "0.24.0", + "@esbuild/netbsd-x64": "0.24.0", + "@esbuild/openbsd-arm64": "0.24.0", + "@esbuild/openbsd-x64": "0.24.0", + "@esbuild/sunos-x64": "0.24.0", + "@esbuild/win32-arm64": "0.24.0", + "@esbuild/win32-ia32": "0.24.0", + "@esbuild/win32-x64": "0.24.0" + } + }, + "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.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", + "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "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.9.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.16.0", + "@eslint/plugin-kit": "^0.2.3", + "@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.5", + "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.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz", + "integrity": "sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.1.0", + "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.0", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.11", + "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.16", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.16.tgz", + "integrity": "sha512-slterMlxAhov/DZO8NScf6mEeMBBXodFUolijDvrtTxyezyLoTQaa73FyYus/VbTdftd8wBgBxPMRk3poleXNQ==", + "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-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "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/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "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/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "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.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "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/get-intrinsic": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.5.tgz", + "integrity": "sha512-Y4+pKa7XeRUPWFNvOOYHkRYrfzW07oraURSvjDmRVOJ748OrVmeXtpE4+GCEHncjCjkTxPNRt8kEbxDhsn6VTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "dunder-proto": "^1.0.0", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "15.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", + "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", + "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.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "license": "MIT", + "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/immer": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz", + "integrity": "sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "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.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.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-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.0.tgz", + "integrity": "sha512-kR5g0+dXf/+kXnqI+lu0URKYPKgICtHGGNCDSB10AaUFj3o/HkB3u7WfpRBJGFopxxY0oH3ux7ZsDjLtK7xqvw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "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.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "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.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "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.0", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.0.tgz", + "integrity": "sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.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-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.0.tgz", + "integrity": "sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.0.tgz", + "integrity": "sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "gopd": "^1.1.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.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.0.tgz", + "integrity": "sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.0.tgz", + "integrity": "sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-symbols": "^1.0.3", + "safe-regex-test": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "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.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "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.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "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/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/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/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "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": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "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/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "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/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "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.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "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.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "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.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "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/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/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/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "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/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "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/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-import/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "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/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "license": "MIT" + }, + "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/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "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-fast-compare": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz", + "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==", + "license": "MIT" + }, + "node_modules/react-helmet-async": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-2.0.5.tgz", + "integrity": "sha512-rYUYHeus+i27MvFE+Jaa4WsyBKGkL6qVgbJvSBoX8mbsWoABJXdEO0bZyi0F6i+4f0NuIb8AvqPMj3iXFHkMwg==", + "license": "Apache-2.0", + "dependencies": { + "invariant": "^2.2.4", + "react-fast-compare": "^3.2.2", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": "^16.6.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-icons": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.4.0.tgz", + "integrity": "sha512-7eltJxgVt7X64oHh6wSWNwwbKTCtMfK35hcjvJS0yxEAhPM8oUKdS3+kqaW1vicIltw+kR2unHaa12S9pPALoQ==", + "license": "MIT", + "peerDependencies": { + "react": "*" + } + }, + "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-redux": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.1.2.tgz", + "integrity": "sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w==", + "license": "MIT", + "dependencies": { + "@types/use-sync-external-store": "^0.0.3", + "use-sync-external-store": "^1.0.0" + }, + "peerDependencies": { + "@types/react": "^18.2.25", + "react": "^18.0", + "redux": "^5.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "redux": { + "optional": true + } + } + }, + "node_modules/react-router": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.0.2.tgz", + "integrity": "sha512-m5AcPfTRUcjwmhBzOJGEl6Y7+Crqyju0+TgTQxoS4SO+BkWbhOrcfZNq6wSWdl2BBbJbsAoBUb8ZacOFT+/JlA==", + "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/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/redux": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", + "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==", + "license": "MIT" + }, + "node_modules/redux-thunk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz", + "integrity": "sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==", + "license": "MIT", + "peerDependencies": { + "redux": "^5.0.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.8.tgz", + "integrity": "sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "dunder-proto": "^1.0.0", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.2.0", + "which-builtin-type": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reselect": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz", + "integrity": "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==", + "license": "MIT" + }, + "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/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz", + "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==", + "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.28.1", + "@rollup/rollup-android-arm64": "4.28.1", + "@rollup/rollup-darwin-arm64": "4.28.1", + "@rollup/rollup-darwin-x64": "4.28.1", + "@rollup/rollup-freebsd-arm64": "4.28.1", + "@rollup/rollup-freebsd-x64": "4.28.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.28.1", + "@rollup/rollup-linux-arm-musleabihf": "4.28.1", + "@rollup/rollup-linux-arm64-gnu": "4.28.1", + "@rollup/rollup-linux-arm64-musl": "4.28.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.28.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1", + "@rollup/rollup-linux-riscv64-gnu": "4.28.1", + "@rollup/rollup-linux-s390x-gnu": "4.28.1", + "@rollup/rollup-linux-x64-gnu": "4.28.1", + "@rollup/rollup-linux-x64-musl": "4.28.1", + "@rollup/rollup-win32-arm64-msvc": "4.28.1", + "@rollup/rollup-win32-ia32-msvc": "4.28.1", + "@rollup/rollup-win32-x64-msvc": "4.28.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "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/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", + "license": "MIT" + }, + "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.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", + "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", + "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", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "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.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "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-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "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/tailwindcss": { + "version": "3.4.16", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.16.tgz", + "integrity": "sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.6", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "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/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true, + "license": "Apache-2.0" + }, + "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.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.3.tgz", + "integrity": "sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "reflect.getprototypeof": "^1.0.6" + }, + "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.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "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.0" + }, + "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/use-sync-external-store": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz", + "integrity": "sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.3.tgz", + "integrity": "sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.24.0", + "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.0", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.0.tgz", + "integrity": "sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.0", + "is-number-object": "^1.1.0", + "is-string": "^1.1.0", + "is-symbol": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.0.tgz", + "integrity": "sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "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.16", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.16.tgz", + "integrity": "sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "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/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/yaml": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz", + "integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "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..11f5069 --- /dev/null +++ b/package.json @@ -0,0 +1,36 @@ +{ + "name": "ecommerce", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "@reduxjs/toolkit": "^2.4.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-helmet-async": "^2.0.5", + "react-icons": "^5.4.0", + "react-redux": "^9.1.2", + "react-router": "^7.0.2" + }, + "devDependencies": { + "@eslint/js": "^9.15.0", + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react-swc": "^3.5.0", + "autoprefixer": "^10.4.20", + "eslint": "^9.15.0", + "eslint-plugin-react": "^7.37.2", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.14", + "globals": "^15.12.0", + "postcss": "^8.4.49", + "tailwindcss": "^3.4.16", + "vite": "^6.0.1" + } +} diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 0000000..2e7af2b --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} 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..e69de29 diff --git a/src/App.jsx b/src/App.jsx new file mode 100644 index 0000000..73e1328 --- /dev/null +++ b/src/App.jsx @@ -0,0 +1,86 @@ +import { createBrowserRouter, RouterProvider } from "react-router"; +import "./App.css"; +import Layout from "./components/layout/Layout"; +import Error from "./components/Error"; +import Home from "./pages/Home"; +import About from "./pages/About"; +import Contact from "./pages/Contact"; +import Shop from "./pages/Shop"; +import Cart from "./pages/Cart"; +import Checkout from "./pages/Checkout"; +import { useState } from "react"; +import Order from "./pages/Order"; +import FilterData from "./components/FilterData"; +import ProductDetail from "./pages/ProductDetail"; +import { HelmetProvider } from "react-helmet-async"; +function App() { + const [order, setOrder] = useState({ + products: [], + orderNumber: "", + shippingInformation: { address: "", city: "", zip: "" }, + totalPrice: 0, + }); + + const router = createBrowserRouter([ + { + path: "/", + element: , + errorElement: , + children: [ + { + path: "/", + element: , + }, + { + path: "/about", + element: , + }, + + { + path: "/contact", + element: , + }, + + { + path: "/shop", + element: , + }, + + { + path: "/cart", + element: , + }, + + { + path: "/product/:id", + element: , + }, + + { + path: "/checkout", + element: , + }, + + { + path: "/order-confirmation", + element: , + }, + + { + path: "/filter-data", + element: , + }, + ], + }, + ]); + + return ( + <> + + + + + ); +} + +export default App; diff --git a/src/assets/images/hero-banner.jpg b/src/assets/images/hero-banner.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9d00d04c6176d46058ab8f98859903c3e5e365bd GIT binary patch literal 56747 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

@&6S1nxf8B)vSE3@XXdoGBn{5RR* zh0cG5h06uo| z>Wp$L-=4LRNR;O|^5IjNd*!?O>jlSOmbuGb{N?Ir)3o4T9J^r93ehXCR+ZNmr_`*{ zioM)&q@3;Kfha20^opcbnb85Qp zoQnRHJNr5>SV%@Z5NR|2w`RxOug4#MPEuJ01ZNJKA_22Gfo%up6ujtsgA4XN()-Ww I==uMf0LByG0{{R3 literal 0 HcmV?d00001 diff --git a/src/assets/mockData.jsx b/src/assets/mockData.jsx new file mode 100644 index 0000000..5beeec1 --- /dev/null +++ b/src/assets/mockData.jsx @@ -0,0 +1,72 @@ +export const categories = [ + "Electronics", + "Fashion", + "Home & Kitchen", + "Beauty", + "Sports", + "Automotive", +]; + +export const mockData = [ + { + id: 1, + image: "https://m.media-amazon.com/images/I/71IYWw-1KBL._SX569_.jpg", + name: "Men Upper", + price: 29.99, + }, + + { + id: 2, + image: + "https://m.media-amazon.com/images/I/51A2iKgaiML._SX300_SY300_QL70_FMwebp_.jpg", + name: "Motorcycle Helmet", + price: 39.99, + }, + { + id: 3, + image: + "https://m.media-amazon.com/images/I/31Cdcr1VxEL._SX300_SY300_QL70_FMwebp_.jpg", + name: "Fry Pan", + price: 49.99, + }, + { + id: 4, + image: + "https://m.media-amazon.com/images/I/514CfZOJ5rL._SX300_SY300_QL70_FMwebp_.jpg", + name: "Smartwatch", + price: 59.99, + }, + { + id: 5, + image: + "https://m.media-amazon.com/images/I/31xXPjbn4jL._SX300_SY300_QL70_FMwebp_.jpg", + name: "Bluetooh Earphone", + price: 69.99, + }, + { + id: 6, + image: + "https://m.media-amazon.com/images/I/41A7WrRCOpL._SY445_SX342_QL70_FMwebp_.jpg", + name: "Microwave Ovens", + price: 79.99, + }, + { + id: 7, + image: + "https://m.media-amazon.com/images/I/41BMuuS76SL._SX300_SY300_QL70_FMwebp_.jpg", + name: "Wall Clock", + price: 89.99, + }, + { + id: 8, + image: "https://m.media-amazon.com/images/I/61SFGUb9y8L._AC_UL320_.jpg", + name: "Chess", + price: 99.99, + }, + { + id: 9, + image: "https://m.media-amazon.com/images/I/710SxepIfiL._SL1500_.jpg", + name: "dumbbell set", + price: 109.99, + }, +]; diff --git a/src/components/CategorySection.jsx b/src/components/CategorySection.jsx new file mode 100644 index 0000000..f7c3c79 --- /dev/null +++ b/src/components/CategorySection.jsx @@ -0,0 +1,68 @@ +import React, { useEffect, useState } from "react"; + +const category = [ + { + title: "Men", + imageUrl: + "https://d2ki7eiqd260sq.cloudfront.net/MSLS00005GREENFIGS_2c9ab0616-5513-4e8d-8a78-6e294c31173a.webp", + }, + { + title: "Women", + imageUrl: + "https://objectstorage.ap-mumbai-1.oraclecloud.com/n/softlogicbicloud/b/cdn/o/category-images/60ab26835e322.png", + }, + { + title: "Kids", + imageUrl: + "https://objectstorage.ap-mumbai-1.oraclecloud.com/n/softlogicbicloud/b/cdn/o/category-images/60b88eb7c6211.png", + }, +]; +const CategorySection = () => { + const [loading, setLoading] = useState(true); + + useEffect(() => { + const timer = setTimeout(() => { + setLoading(false); + }, 1500); + + return () => clearTimeout(timer); + }, []); + + if (loading) { + return ( +

+
+
+
+
+
+
+ ); + } + + return ( +
+
+ {category.map((elem, index) => ( +
+ + +
+

{elem.title}

+

View All

+
+
+ ))} +
+
+ ); +}; + +export default CategorySection; diff --git a/src/components/ChangeAddress.jsx b/src/components/ChangeAddress.jsx new file mode 100644 index 0000000..be2cf84 --- /dev/null +++ b/src/components/ChangeAddress.jsx @@ -0,0 +1,37 @@ +import React, { useState } from "react"; + +const ChangeAddress = ({ setAddress, setIsModelOpen }) => { + const onClose = () => { + setAddress(newAddress); + setIsModelOpen(false); + }; + + const [newAddress, setNewAddress] = useState(""); + return ( +
+ setNewAddress(e.target.value)} + /> + +
+ + +
+
+ ); +}; + +export default ChangeAddress; diff --git a/src/components/Error.jsx b/src/components/Error.jsx new file mode 100644 index 0000000..3753574 --- /dev/null +++ b/src/components/Error.jsx @@ -0,0 +1,14 @@ +import React from "react"; +import { Link, useRouteError } from "react-router"; +const Error = () => { + const error = useRouteError(); + return ( +
+

Oops! An error occured.

+

{error.data}

+ Go Home +
+ ); +}; + +export default Error; diff --git a/src/components/FilterData.jsx b/src/components/FilterData.jsx new file mode 100644 index 0000000..b5cd3f4 --- /dev/null +++ b/src/components/FilterData.jsx @@ -0,0 +1,24 @@ +import React from "react"; +import { useSelector } from "react-redux"; +import ProductCard from "./ProductCard"; +const FilterData = () => { + const filterProducts = useSelector((state) => state.products.filterData); + return ( +
+ {filterProducts.length > 0 ? ( + <> +

Shop

+
+ {filterProducts.map((product) => ( + + ))} +
+ + ) : ( +

not found

+ )} +
+ ); +}; + +export default FilterData; diff --git a/src/components/Footer.jsx b/src/components/Footer.jsx new file mode 100644 index 0000000..74c53be --- /dev/null +++ b/src/components/Footer.jsx @@ -0,0 +1,95 @@ +import React from "react"; +import { BsTwitter } from "react-icons/bs"; +import { FaFacebook, FaGithub, FaLinkedin } from "react-icons/fa"; +import { Link } from "react-router"; +const Footer = () => { + return ( +
+
+
+

e-shop

+

+ Lorem ipsum dolor sit amet consectetur, adipisicing elit. Labore ex + animi accusamus consectetur harum. Rem mollitia provident + consequuntur ducimus exercitationem! +

+
+
+

Quick Links

+
    +
  • + + Home + +
  • + +
  • + + Shop + +
  • + +
  • + + About + +
  • + +
  • + + Contact + +
  • +
+
+
+

Follow us

+ + +
+ + +
+
+
+ +
+
+

© {new Date().getFullYear()} e-shop All rights reserved.

+ +
+
+
+ ); +}; + +export default Footer; diff --git a/src/components/InfoSection.jsx b/src/components/InfoSection.jsx new file mode 100644 index 0000000..23fb620 --- /dev/null +++ b/src/components/InfoSection.jsx @@ -0,0 +1,87 @@ +import { useEffect, useState } from "react"; +import { FaHeadset, FaLock, FaShoppingCart, FaTag } from "react-icons/fa"; +import { FaMoneyBill1Wave } from "react-icons/fa6"; +const InfoSection = () => { + const [loading, setLoading] = useState(true); + + useEffect(() => { + const timer = setTimeout(() => { + setLoading(false); + }, 1500); + + return () => { + clearTimeout(timer); + }; + }); + const infoItems = [ + { + icon: , + title: "Free Shipping", + description: "Get your orders delivered with no extra cost", + }, + { + icon: , + title: "Support 24/7", + description: "We are here to assist you anytime", + }, + { + icon: , + title: "100% Money Back", + description: "Full refund if you are not satisfied ", + }, + { + icon: , + title: "Payment Secure", + description: "your payment information is safe with us", + }, + + { + icon: , + title: "Discount", + description: "Enjoy the best prices on your products", + }, + ]; + + if (loading) { + return ( +
+
+ {infoItems.map((_, index) => ( +
+
+

+

+

+
+ ))} +
+
+ ); + } + + return ( +
+
+ {infoItems.map((item, index) => ( +
+ {item.icon} +

+ {item.title} +

+

{item.description}

+
+ ))} +
+
+ ); +}; + +export default InfoSection; diff --git a/src/components/Model.jsx b/src/components/Model.jsx new file mode 100644 index 0000000..736778c --- /dev/null +++ b/src/components/Model.jsx @@ -0,0 +1,21 @@ +import React from "react"; + +const Modal = ({ isModelOpen, setIsModelOpen, children }) => { + if (!isModelOpen) return null; + + return ( +
+
+ + {children} +
+
+ ); +}; + +export default Modal; diff --git a/src/components/Navbar.jsx b/src/components/Navbar.jsx new file mode 100644 index 0000000..edd560d --- /dev/null +++ b/src/components/Navbar.jsx @@ -0,0 +1,107 @@ +import { useState } from "react"; +import { FaSearch, FaShoppingCart, FaUser } from "react-icons/fa"; +import { useDispatch, useSelector } from "react-redux"; +import { Link, useNavigate } from "react-router"; +import Login from "../pages/Login"; +import Register from "../pages/Register"; +import Modal from "./Model"; +import { setSearchTerm } from "../redux/productSlice"; +const Navbar = () => { + const products = useSelector((state) => state.cart.products); + const [isModelOpen, setIsModelOpen] = useState(false); + const [isLogin, setIsLogin] = useState(true); + const [search, setSearch] = useState(); + const disptach = useDispatch(); + const navigate = useNavigate("/"); + + const openSignUp = () => { + setIsLogin(false); + setIsModelOpen(true); + }; + + const openLogin = () => { + setIsLogin(true); + setIsModelOpen(true); + }; + + const handleSearch = (e) => { + e.preventDefault(); + disptach(setSearchTerm(search)); + navigate("/filter-data"); + }; + + return ( + + ); +}; + +export default Navbar; diff --git a/src/components/ProductCard.jsx b/src/components/ProductCard.jsx new file mode 100644 index 0000000..346c1af --- /dev/null +++ b/src/components/ProductCard.jsx @@ -0,0 +1,77 @@ +import React, { useState, useEffect } from "react"; +import { FaStar } from "react-icons/fa"; +import { addToCart } from "../redux/cartSlice"; +import { useDispatch } from "react-redux"; +import { Link } from "react-router"; + +const ProductCard = ({ product }) => { + const dispatch = useDispatch(); + const [isLoading, setIsLoading] = useState(true); + + const handleAddToCart = (e, product) => { + e.stopPropagation(); + e.preventDefault(); + + dispatch(addToCart(product)); + alert("Product Added Successfully!"); + }; + + useEffect(() => { + const timer = setTimeout(() => { + setIsLoading(false); + }, 1500); + + return () => clearTimeout(timer); + }, []); + + if (isLoading) { + return ( +
+
+
+
+ +
+ {[...Array(5)].map((_, index) => ( + + ))} +
+ +
+
+ ); + } + + return ( + +
+ {product.name} +

{product.name}

+

${product.price}

+ +
+ + + + + +
+ +
handleAddToCart(e, product)} + > + + + Add to cart +
+
+ + ); +}; + +export default ProductCard; diff --git a/src/components/layout/Layout.jsx b/src/components/layout/Layout.jsx new file mode 100644 index 0000000..1dd20cc --- /dev/null +++ b/src/components/layout/Layout.jsx @@ -0,0 +1,15 @@ +import React from "react"; +import Navbar from "../Navbar"; +import Footer from "../Footer"; +import { Outlet } from "react-router"; +const Layout = () => { + return ( + <> + + +