From 1aa5fb71589e9ca4e14c15a3a6780688e155e7a3 Mon Sep 17 00:00:00 2001 From: Saahi30 Date: Fri, 6 Jun 2025 07:14:33 +0530 Subject: [PATCH 1/3] Initial works: just cloned the folder and files inside the main repo --- LandingPage/.gitignore | 24 + LandingPage/README.md | 54 + LandingPage/eslint.config.js | 28 + LandingPage/index.html | 14 + LandingPage/package-lock.json | 4291 ++++++++++++++++++++ LandingPage/package.json | 42 + LandingPage/public/aossie_logo.png | Bin 0 -> 81050 bytes LandingPage/public/vite.svg | 1 + LandingPage/src/App.css | 42 + LandingPage/src/App.tsx | 36 + LandingPage/src/Pages/Landing.tsx | 186 + LandingPage/src/Pages/Legal.tsx | 105 + LandingPage/src/Pages/Privacy.tsx | 132 + LandingPage/src/assets/react.svg | 1 + LandingPage/src/components/Footer.tsx | 75 + LandingPage/src/components/Header.tsx | 31 + LandingPage/src/components/bg.tsx | 235 ++ LandingPage/src/components/card.tsx | 70 + LandingPage/src/components/carousel.tsx | 0 LandingPage/src/components/form.tsx | 221 + LandingPage/src/components/github.tsx | 48 + LandingPage/src/components/howitworks.tsx | 130 + LandingPage/src/components/integration.tsx | 92 + LandingPage/src/components/sendbutton.tsx | 76 + LandingPage/src/components/watchlist.tsx | 74 + LandingPage/src/index.css | 0 LandingPage/src/main.tsx | 10 + LandingPage/src/vite-env.d.ts | 1 + LandingPage/tsconfig.app.json | 26 + LandingPage/tsconfig.json | 7 + LandingPage/tsconfig.node.json | 24 + LandingPage/vite.config.ts | 7 + 32 files changed, 6083 insertions(+) create mode 100644 LandingPage/.gitignore create mode 100644 LandingPage/README.md create mode 100644 LandingPage/eslint.config.js create mode 100644 LandingPage/index.html create mode 100644 LandingPage/package-lock.json create mode 100644 LandingPage/package.json create mode 100644 LandingPage/public/aossie_logo.png create mode 100644 LandingPage/public/vite.svg create mode 100644 LandingPage/src/App.css create mode 100644 LandingPage/src/App.tsx create mode 100644 LandingPage/src/Pages/Landing.tsx create mode 100644 LandingPage/src/Pages/Legal.tsx create mode 100644 LandingPage/src/Pages/Privacy.tsx create mode 100644 LandingPage/src/assets/react.svg create mode 100644 LandingPage/src/components/Footer.tsx create mode 100644 LandingPage/src/components/Header.tsx create mode 100644 LandingPage/src/components/bg.tsx create mode 100644 LandingPage/src/components/card.tsx create mode 100644 LandingPage/src/components/carousel.tsx create mode 100644 LandingPage/src/components/form.tsx create mode 100644 LandingPage/src/components/github.tsx create mode 100644 LandingPage/src/components/howitworks.tsx create mode 100644 LandingPage/src/components/integration.tsx create mode 100644 LandingPage/src/components/sendbutton.tsx create mode 100644 LandingPage/src/components/watchlist.tsx create mode 100644 LandingPage/src/index.css create mode 100644 LandingPage/src/main.tsx create mode 100644 LandingPage/src/vite-env.d.ts create mode 100644 LandingPage/tsconfig.app.json create mode 100644 LandingPage/tsconfig.json create mode 100644 LandingPage/tsconfig.node.json create mode 100644 LandingPage/vite.config.ts diff --git a/LandingPage/.gitignore b/LandingPage/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/LandingPage/.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/LandingPage/README.md b/LandingPage/README.md new file mode 100644 index 0000000..40ede56 --- /dev/null +++ b/LandingPage/README.md @@ -0,0 +1,54 @@ +# React + TypeScript + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: + +```js +export default tseslint.config({ + extends: [ + // Remove ...tseslint.configs.recommended and replace with this + ...tseslint.configs.recommendedTypeChecked, + // Alternatively, use this for stricter rules + ...tseslint.configs.strictTypeChecked, + // Optionally, add this for stylistic rules + ...tseslint.configs.stylisticTypeChecked, + ], + languageOptions: { + // other options... + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + }, +}) +``` + +You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: + +```js +// eslint.config.js +import reactX from 'eslint-plugin-react-x' +import reactDom from 'eslint-plugin-react-dom' + +export default tseslint.config({ + plugins: { + // Add the react-x and react-dom plugins + 'react-x': reactX, + 'react-dom': reactDom, + }, + rules: { + // other rules... + // Enable its recommended typescript rules + ...reactX.configs['recommended-typescript'].rules, + ...reactDom.configs.recommended.rules, + }, +}) +``` diff --git a/LandingPage/eslint.config.js b/LandingPage/eslint.config.js new file mode 100644 index 0000000..092408a --- /dev/null +++ b/LandingPage/eslint.config.js @@ -0,0 +1,28 @@ +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' +import tseslint from 'typescript-eslint' + +export default tseslint.config( + { ignores: ['dist'] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +) diff --git a/LandingPage/index.html b/LandingPage/index.html new file mode 100644 index 0000000..340be0d --- /dev/null +++ b/LandingPage/index.html @@ -0,0 +1,14 @@ + + + + + + + + Vite + React + TS + + +
+ + + diff --git a/LandingPage/package-lock.json b/LandingPage/package-lock.json new file mode 100644 index 0000000..f3f9e25 --- /dev/null +++ b/LandingPage/package-lock.json @@ -0,0 +1,4291 @@ +{ + "name": "inpactai", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "inpactai", + "version": "0.0.0", + "dependencies": { + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@mui/material": "^7.0.2", + "clsx": "^2.1.1", + "framer-motion": "^12.6.5", + "gsap": "^3.12.7", + "lucide-react": "^0.487.0", + "ogl": "^1.0.11", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-router-dom": "^7.5.0", + "react-slick": "^0.30.3", + "react-social-icons": "^6.24.0", + "slick-carousel": "^1.8.1", + "styled-components": "^6.1.17" + }, + "devDependencies": { + "@eslint/js": "^9.21.0", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.21.0", + "eslint-plugin-react-hooks": "^5.1.0", + "eslint-plugin-react-refresh": "^0.4.19", + "globals": "^15.15.0", + "typescript": "~5.7.2", + "typescript-eslint": "^8.24.1", + "vite": "^6.2.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz", + "integrity": "sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.9.tgz", + "integrity": "sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz", + "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "license": "MIT" + }, + "node_modules/@emotion/cache": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==", + "license": "MIT" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", + "license": "MIT" + }, + "node_modules/@emotion/react": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "license": "MIT", + "dependencies": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==", + "license": "MIT" + }, + "node_modules/@emotion/styled": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/is-prop-valid": "^1.3.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", + "license": "MIT" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", + "license": "MIT", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", + "license": "MIT" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==", + "license": "MIT" + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz", + "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz", + "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz", + "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz", + "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz", + "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz", + "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz", + "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz", + "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz", + "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz", + "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz", + "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz", + "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz", + "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz", + "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz", + "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz", + "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz", + "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz", + "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz", + "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz", + "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz", + "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz", + "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz", + "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz", + "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz", + "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz", + "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==", + "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.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", + "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "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.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "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.24.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", + "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "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.8", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", + "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.13.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", + "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/@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.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "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==", + "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==", + "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==", + "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==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.0.2.tgz", + "integrity": "sha512-TfeFU9TgN1N06hyb/pV/63FfO34nijZRMqgHk0TJ3gkl4Fbd+wZ73+ZtOd7jag6hMmzO9HSrBc6Vdn591nhkAg==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + } + }, + "node_modules/@mui/material": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.0.2.tgz", + "integrity": "sha512-rjJlJ13+3LdLfobRplkXbjIFEIkn6LgpetgU/Cs3Xd8qINCCQK9qXQIjjQ6P0FXFTPFzEVMj0VgBR1mN+FhOcA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0", + "@mui/core-downloads-tracker": "^7.0.2", + "@mui/system": "^7.0.2", + "@mui/types": "^7.4.1", + "@mui/utils": "^7.0.2", + "@popperjs/core": "^2.11.8", + "@types/react-transition-group": "^4.4.12", + "clsx": "^2.1.1", + "csstype": "^3.1.3", + "prop-types": "^15.8.1", + "react-is": "^19.1.0", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@mui/material-pigment-css": "^7.0.2", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@mui/material-pigment-css": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/private-theming": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.0.2.tgz", + "integrity": "sha512-6lt8heDC9wN8YaRqEdhqnm0cFCv08AMf4IlttFvOVn7ZdKd81PNpD/rEtPGLLwQAFyyKSxBG4/2XCgpbcdNKiA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0", + "@mui/utils": "^7.0.2", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.0.2.tgz", + "integrity": "sha512-11Bt4YdHGlh7sB8P75S9mRCUxTlgv7HGbr0UKz6m6Z9KLeiw1Bm9y/t3iqLLVMvSHYB6zL8X8X+LmfTE++gyBw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0", + "@emotion/cache": "^11.13.5", + "@emotion/serialize": "^1.3.3", + "@emotion/sheet": "^1.4.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.0.2.tgz", + "integrity": "sha512-yFUraAWYWuKIISPPEVPSQ1NLeqmTT4qiQ+ktmyS8LO/KwHxB+NNVOacEZaIofh5x1NxY8rzphvU5X2heRZ/RDA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0", + "@mui/private-theming": "^7.0.2", + "@mui/styled-engine": "^7.0.2", + "@mui/types": "^7.4.1", + "@mui/utils": "^7.0.2", + "clsx": "^2.1.1", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.1.tgz", + "integrity": "sha512-gUL8IIAI52CRXP/MixT1tJKt3SI6tVv4U/9soFsTtAsHzaJQptZ42ffdHZV3niX1ei0aUgMvOxBBN0KYqdG39g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.0.2.tgz", + "integrity": "sha512-72gcuQjPzhj/MLmPHLCgZjy2VjOH4KniR/4qRtXTTXIEwbkgcN+Y5W/rC90rWtMmZbjt9svZev/z+QHUI4j74w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.27.0", + "@mui/types": "^7.4.1", + "@types/prop-types": "^15.7.14", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-is": "^19.1.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "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/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz", + "integrity": "sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz", + "integrity": "sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz", + "integrity": "sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz", + "integrity": "sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz", + "integrity": "sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz", + "integrity": "sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz", + "integrity": "sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz", + "integrity": "sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz", + "integrity": "sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz", + "integrity": "sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz", + "integrity": "sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz", + "integrity": "sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz", + "integrity": "sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz", + "integrity": "sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz", + "integrity": "sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz", + "integrity": "sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz", + "integrity": "sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz", + "integrity": "sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz", + "integrity": "sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz", + "integrity": "sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==", + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "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/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "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==", + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "19.1.1", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.1.tgz", + "integrity": "sha512-ePapxDL7qrgqSF67s0h9m412d9DbXyC1n59O2st+9rjuuamWsZuD2w55rqY12CbzsZ7uVXb5Nw0gEp9Z8MMutQ==", + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "19.1.2", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.2.tgz", + "integrity": "sha512-XGJkWF41Qq305SKWEILa1O8vzhb3aOo3ogBlSmiqNko/WmRb6QIaweuZCXjKygVDXpzXb5wyxKTSOsmkuqj+Qw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^19.0.0" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.12", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", + "integrity": "sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/stylis": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz", + "integrity": "sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==", + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.29.1.tgz", + "integrity": "sha512-ba0rr4Wfvg23vERs3eB+P3lfj2E+2g3lhWcCVukUuhtcdUx5lSIFZlGFEBHKr+3zizDa/TvZTptdNHVZWAkSBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/type-utils": "8.29.1", + "@typescript-eslint/utils": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.0.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.29.1.tgz", + "integrity": "sha512-zczrHVEqEaTwh12gWBIJWj8nx+ayDcCJs06yoNMY0kwjMWDM6+kppljY+BxWI06d2Ja+h4+WdufDcwMnnMEWmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/typescript-estree": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.29.1.tgz", + "integrity": "sha512-2nggXGX5F3YrsGN08pw4XpMLO1Rgtnn4AzTegC2MDesv6q3QaTU5yU7IbS1tf1IwCR0Hv/1EFygLn9ms6LIpDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.29.1.tgz", + "integrity": "sha512-DkDUSDwZVCYN71xA4wzySqqcZsHKic53A4BLqmrWFFpOpNSoxX233lwGu/2135ymTCR04PoKiEEEvN1gFYg4Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "8.29.1", + "@typescript-eslint/utils": "8.29.1", + "debug": "^4.3.4", + "ts-api-utils": "^2.0.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.29.1.tgz", + "integrity": "sha512-VT7T1PuJF1hpYC3AGm2rCgJBjHL3nc+A/bhOp9sGMKfi5v0WufsX/sHCFBfNTx2F+zA6qBc/PD0/kLRLjdt8mQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.29.1.tgz", + "integrity": "sha512-l1enRoSaUkQxOQnbi0KPUtqeZkSiFlqrx9/3ns2rEDhGKfTa+88RmXqedC1zmVTOWrLc2e6DEJrTA51C9iLH5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.0.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.29.1.tgz", + "integrity": "sha512-QAkFEbytSaB8wnmB+DflhUPz6CLbFWE2SnSCrRMEa+KnXIzDYbpsn++1HGvnfAsUY44doDXmvRkO5shlM/3UfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/typescript-estree": "8.29.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.29.1.tgz", + "integrity": "sha512-RGLh5CRaUEf02viP5c1Vh1cMGffQscyHe7HPAzGpfmfflFg1wUz2rYxd+OZqwpeypYvZ8UxSxuIpF++fmOzEcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz", + "integrity": "sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/plugin-transform-react-jsx-self": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/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.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001713", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001713.tgz", + "integrity": "sha512-wCIWIg+A4Xr7NfhTuHdX+/FKh3+Op3LBbSp2N5Pfx6T/LhdQy3GTyoTg48BReaW/MyMNZAkTadsBtai3ldWK0Q==", + "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/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", + "license": "MIT" + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "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/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cookie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz", + "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cosmiconfig/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "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/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "license": "ISC", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "license": "MIT", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "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==", + "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/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.136", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.136.tgz", + "integrity": "sha512-kL4+wUTD7RSA5FHx5YwWtjDnEEkIIikFgWHR4P6fqjw1PPLlqYkxeOb++wAauAssat0YClCy8Y3C5SxgSkjibQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/enquire.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/enquire.js/-/enquire.js-2.1.6.tgz", + "integrity": "sha512-/KujNpO+PT63F7Hlpu4h3pE3TokKRHN26JYmQpPyjkRD/N57R7bPDNojMXdi7uveAKjYB7yQnartCxZnFWr0Xw==", + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/esbuild": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz", + "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.2", + "@esbuild/android-arm": "0.25.2", + "@esbuild/android-arm64": "0.25.2", + "@esbuild/android-x64": "0.25.2", + "@esbuild/darwin-arm64": "0.25.2", + "@esbuild/darwin-x64": "0.25.2", + "@esbuild/freebsd-arm64": "0.25.2", + "@esbuild/freebsd-x64": "0.25.2", + "@esbuild/linux-arm": "0.25.2", + "@esbuild/linux-arm64": "0.25.2", + "@esbuild/linux-ia32": "0.25.2", + "@esbuild/linux-loong64": "0.25.2", + "@esbuild/linux-mips64el": "0.25.2", + "@esbuild/linux-ppc64": "0.25.2", + "@esbuild/linux-riscv64": "0.25.2", + "@esbuild/linux-s390x": "0.25.2", + "@esbuild/linux-x64": "0.25.2", + "@esbuild/netbsd-arm64": "0.25.2", + "@esbuild/netbsd-x64": "0.25.2", + "@esbuild/openbsd-arm64": "0.25.2", + "@esbuild/openbsd-x64": "0.25.2", + "@esbuild/sunos-x64": "0.25.2", + "@esbuild/win32-arm64": "0.25.2", + "@esbuild/win32-ia32": "0.25.2", + "@esbuild/win32-x64": "0.25.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", + "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.20.0", + "@eslint/config-helpers": "^0.2.0", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.24.0", + "@eslint/plugin-kit": "^0.2.7", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.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-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "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.19", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.19.tgz", + "integrity": "sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "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.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "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.8" + }, + "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.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "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-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "license": "MIT" + }, + "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.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/framer-motion": { + "version": "12.6.5", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.6.5.tgz", + "integrity": "sha512-MKvnWov0paNjvRJuIy6x418w23tFqRfS6CXHhZrCiSEpXVlo/F+usr8v4/3G6O0u7CpsaO1qop+v4Ip7PRCBqQ==", + "license": "MIT", + "dependencies": { + "motion-dom": "^12.6.5", + "motion-utils": "^12.6.5", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/is-prop-valid": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "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==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/gsap": { + "version": "3.12.7", + "resolved": "https://registry.npmjs.org/gsap/-/gsap-3.12.7.tgz", + "integrity": "sha512-V4GsyVamhmKefvcAKaoy0h6si0xX7ogwBoBSs2CTJwt7luW0oZzC0LhdkyuKV8PJAXr7Yaj8pMjCKD4GJ+eEMg==", + "license": "Standard 'no charge' license: https://gsap.com/standard-license. Club GSAP members get more: https://gsap.com/licensing/. Why GreenSock doesn't employ an MIT license: https://gsap.com/why-license/" + }, + "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/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/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==", + "license": "MIT" + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "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/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-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-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/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/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "license": "MIT", + "peer": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "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/json2mq": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/json2mq/-/json2mq-0.2.0.tgz", + "integrity": "sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==", + "license": "MIT", + "dependencies": { + "string-convert": "^0.2.0" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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/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==", + "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.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lucide-react": { + "version": "0.487.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.487.0.tgz", + "integrity": "sha512-aKqhOQ+YmFnwq8dWgGjOuLc8V1R9/c/yOd+zDY4+ohsR2Jo05lSGc3WsstYPIzcTpeosN7LoCkLReUUITvaIvw==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "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/motion-dom": { + "version": "12.6.5", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.6.5.tgz", + "integrity": "sha512-jpM9TQLXzYMWMJ7Ec7sAj0iis8oIuu6WvjI3yNKJLdrZyrsI/b2cRInDVL8dCl683zQQq19DpL9cSMP+k8T1NA==", + "license": "MIT", + "dependencies": { + "motion-utils": "^12.6.5" + } + }, + "node_modules/motion-utils": { + "version": "12.6.5", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.6.5.tgz", + "integrity": "sha512-IsOeKsOF+FWBhxQEDFBO6ZYC8/jlidmVbbLpe9/lXSA9j9kzGIMUuIBx2SZY+0reAS0DjZZ1i7dJp4NHrjocPw==", + "license": "MIT" + }, + "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==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ogl": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ogl/-/ogl-1.0.11.tgz", + "integrity": "sha512-kUpC154AFfxi16pmZUK4jk3J+8zxwTWGPo03EoYA8QPbzikHoaC82n6pNTbd+oEaJonaE8aPWBlX7ad9zrqLsA==", + "license": "Unlicense" + }, + "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/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==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "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/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "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.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "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==", + "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==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "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": "19.1.0", + "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", + "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.0.tgz", + "integrity": "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "node_modules/react-is": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.1.0.tgz", + "integrity": "sha512-Oe56aUPnkHyyDxxkvqtd7KkdQP5uIUfHxd5XTb3wE9d/kRnZLmKbDB0GWk919tdQ+mxxPtG6EAs6RMT6i1qtHg==", + "license": "MIT" + }, + "node_modules/react-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.5.0.tgz", + "integrity": "sha512-estOHrRlDMKdlQa6Mj32gIks4J+AxNsYoE0DbTTxiMy2mPzZuWSDU+N85/r1IlNR7kGfznF3VCUlvc5IUO+B9g==", + "license": "MIT", + "dependencies": { + "@types/cookie": "^0.6.0", + "cookie": "^1.0.1", + "set-cookie-parser": "^2.6.0", + "turbo-stream": "2.4.0" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } + } + }, + "node_modules/react-router-dom": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.5.0.tgz", + "integrity": "sha512-fFhGFCULy4vIseTtH5PNcY/VvDJK5gvOWcwJVHQp8JQcWVr85ENhJ3UpuF/zP1tQOIFYNRJHzXtyhU1Bdgw0RA==", + "license": "MIT", + "dependencies": { + "react-router": "7.5.0" + }, + "engines": { + "node": ">=20.0.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/react-slick": { + "version": "0.30.3", + "resolved": "https://registry.npmjs.org/react-slick/-/react-slick-0.30.3.tgz", + "integrity": "sha512-B4x0L9GhkEWUMApeHxr/Ezp2NncpGc+5174R02j+zFiWuYboaq98vmxwlpafZfMjZic1bjdIqqmwLDcQY0QaFA==", + "license": "MIT", + "dependencies": { + "classnames": "^2.2.5", + "enquire.js": "^2.1.6", + "json2mq": "^0.2.0", + "lodash.debounce": "^4.0.8", + "resize-observer-polyfill": "^1.5.0" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.1 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^0.14.0 || ^15.0.1 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-social-icons": { + "version": "6.24.0", + "resolved": "https://registry.npmjs.org/react-social-icons/-/react-social-icons-6.24.0.tgz", + "integrity": "sha512-1YlJe2TOf/UwPi2JAb8Ci7J207owP806Tpxu36o4EkB1/jLjGhi83xbCHOagoMyPozTZrPnZIGgvp1LiiWGuZw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.24.8" + }, + "peerDependencies": { + "react": "16.x.x || 17.x.x || 18.x.x || 19.x.x", + "react-dom": "16.x.x || 17.x.x || 18.x.x || 19.x.x" + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.0.tgz", + "integrity": "sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.7" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.40.0", + "@rollup/rollup-android-arm64": "4.40.0", + "@rollup/rollup-darwin-arm64": "4.40.0", + "@rollup/rollup-darwin-x64": "4.40.0", + "@rollup/rollup-freebsd-arm64": "4.40.0", + "@rollup/rollup-freebsd-x64": "4.40.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.0", + "@rollup/rollup-linux-arm-musleabihf": "4.40.0", + "@rollup/rollup-linux-arm64-gnu": "4.40.0", + "@rollup/rollup-linux-arm64-musl": "4.40.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-musl": "4.40.0", + "@rollup/rollup-linux-s390x-gnu": "4.40.0", + "@rollup/rollup-linux-x64-gnu": "4.40.0", + "@rollup/rollup-linux-x64-musl": "4.40.0", + "@rollup/rollup-win32-arm64-msvc": "4.40.0", + "@rollup/rollup-win32-ia32-msvc": "4.40.0", + "@rollup/rollup-win32-x64-msvc": "4.40.0", + "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/scheduler": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", + "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", + "license": "MIT" + }, + "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/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/slick-carousel": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/slick-carousel/-/slick-carousel-1.8.1.tgz", + "integrity": "sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==", + "license": "MIT", + "peerDependencies": { + "jquery": ">=1.8.0" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-convert": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-convert/-/string-convert-0.2.1.tgz", + "integrity": "sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==", + "license": "MIT" + }, + "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/styled-components": { + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.17.tgz", + "integrity": "sha512-97D7DwWanI7nN24v0D4SvbfjLE9656umNSJZkBkDIWL37aZqG/wRQ+Y9pWtXyBIM/NSfcBzHLErEsqHmJNSVUg==", + "license": "MIT", + "dependencies": { + "@emotion/is-prop-valid": "1.2.2", + "@emotion/unitless": "0.8.1", + "@types/stylis": "4.2.5", + "css-to-react-native": "3.2.0", + "csstype": "3.1.3", + "postcss": "8.4.49", + "shallowequal": "1.1.0", + "stylis": "4.3.2", + "tslib": "2.6.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0" + } + }, + "node_modules/styled-components/node_modules/@emotion/is-prop-valid": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz", + "integrity": "sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.8.1" + } + }, + "node_modules/styled-components/node_modules/@emotion/memoize": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", + "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==", + "license": "MIT" + }, + "node_modules/styled-components/node_modules/@emotion/unitless": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", + "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==", + "license": "MIT" + }, + "node_modules/styled-components/node_modules/postcss": { + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "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/styled-components/node_modules/stylis": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz", + "integrity": "sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==", + "license": "MIT" + }, + "node_modules/styled-components/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "license": "0BSD" + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", + "license": "MIT" + }, + "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==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "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/typescript": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.29.1.tgz", + "integrity": "sha512-f8cDkvndhbQMPcysk6CUSGBWV+g1utqdn71P5YKwMumVMOG/5k7cHq0KyG4O52nB0oKS4aN2Tp5+wB4APJGC+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.29.1", + "@typescript-eslint/parser": "8.29.1", + "@typescript-eslint/utils": "8.29.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vite": { + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz", + "integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "postcss": "^8.5.3", + "rollup": "^4.30.1" + }, + "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/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true, + "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/LandingPage/package.json b/LandingPage/package.json new file mode 100644 index 0000000..558bc8e --- /dev/null +++ b/LandingPage/package.json @@ -0,0 +1,42 @@ +{ + "name": "inpactai", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@mui/material": "^7.0.2", + "clsx": "^2.1.1", + "framer-motion": "^12.6.5", + "gsap": "^3.12.7", + "lucide-react": "^0.487.0", + "ogl": "^1.0.11", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-router-dom": "^7.5.0", + "react-slick": "^0.30.3", + "react-social-icons": "^6.24.0", + "slick-carousel": "^1.8.1", + "styled-components": "^6.1.17" + }, + "devDependencies": { + "@eslint/js": "^9.21.0", + "@types/react": "^19.0.10", + "@types/react-dom": "^19.0.4", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.21.0", + "eslint-plugin-react-hooks": "^5.1.0", + "eslint-plugin-react-refresh": "^0.4.19", + "globals": "^15.15.0", + "typescript": "~5.7.2", + "typescript-eslint": "^8.24.1", + "vite": "^6.2.0" + } +} diff --git a/LandingPage/public/aossie_logo.png b/LandingPage/public/aossie_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b2421da64a920fb55c96ac5685ed8896a604e008 GIT binary patch literal 81050 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 literal 0 HcmV?d00001 diff --git a/LandingPage/public/vite.svg b/LandingPage/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/LandingPage/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/LandingPage/src/App.css b/LandingPage/src/App.css new file mode 100644 index 0000000..b9d355d --- /dev/null +++ b/LandingPage/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/LandingPage/src/App.tsx b/LandingPage/src/App.tsx new file mode 100644 index 0000000..3ac0eab --- /dev/null +++ b/LandingPage/src/App.tsx @@ -0,0 +1,36 @@ +import { BrowserRouter, Routes, Route } from 'react-router-dom'; +// import Lenis from '@studio-freight/lenis'; +import Landing from '../src/Pages/Landing'; +import PrivacyPolicy from './Pages/Privacy'; +import TermsOfService from './Pages/Legal'; + +function App() { + // useEffect(() => { + // const lenis = new Lenis({ + // duration: 1.2, + // easing: (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t)), + // smoothWheel: true, + // }); + + // function raf(time: number) { + // lenis.raf(time); + // requestAnimationFrame(raf); + // } + + // requestAnimationFrame(raf); + // }, []); + + return ( + + + } /> + } /> + } /> + {/* } /> */} + + {/* */} + + ); +} + +export default App; \ No newline at end of file diff --git a/LandingPage/src/Pages/Landing.tsx b/LandingPage/src/Pages/Landing.tsx new file mode 100644 index 0000000..90f25ac --- /dev/null +++ b/LandingPage/src/Pages/Landing.tsx @@ -0,0 +1,186 @@ +import { motion } from 'framer-motion'; +import { Sparkles, Users } from 'lucide-react'; +import { DollarSign, FileText, BarChart2, RefreshCw } from 'lucide-react'; +import ChatbotSidebarForm from '../components/form'; +import Footer from '../components/Footer'; +import Threads from '../components/bg'; +import SpotlightCard from '../components/card'; +import Header from '../components/Header'; +import HowItWorks from '../components/howitworks'; +import Integrations from '../components/integration'; + + +function Landing() { + const headingWords = ['Creator', 'Collaboration', 'Hub']; + + const containerVariants = { + hidden: { opacity: 0 }, + show: { + opacity: 1, + transition: { + staggerChildren: 0.2, + }, + }, + }; + + const wordVariants = { + hidden: { opacity: 0, y: 30 }, + show: { opacity: 1, y: 0 }, + }; + return ( + + ); +} + +export default Landing; diff --git a/LandingPage/src/Pages/Legal.tsx b/LandingPage/src/Pages/Legal.tsx new file mode 100644 index 0000000..f533279 --- /dev/null +++ b/LandingPage/src/Pages/Legal.tsx @@ -0,0 +1,105 @@ +import React, { useEffect } from 'react'; +import Navbar from '../components/Header'; +import Footer from '../components/Footer'; +import { motion } from 'framer-motion'; + +const TermsOfService: React.FC = () => { + useEffect(() => { + window.scrollTo(0, 0); + document.title = "Terms of Service | inpactAI"; + }, []); + + return ( +
+ +
+
+ +

Terms of Service

+ +
+

Last updated: April 14, 2025

+ +
+

Introduction

+

+ Welcome to inpactAI. These Terms of Service ("Terms") govern your use of our platform and services. By accessing or using inpactAI, you agree to be bound by these Terms. +

+
+ +
+

Use of the Platform

+

You agree to use the platform in compliance with all applicable laws and regulations. You must not misuse our platform or attempt to access it using a method other than the interface we provide.

+
+ +
+

Account Registration

+

To access certain features, you may be required to create an account. You are responsible for safeguarding your account credentials and for any activities or actions under your account.

+
+ +
+

User Content

+

You retain ownership of the content you submit to the platform, but you grant inpactAI a worldwide, royalty-free license to use, display, and distribute that content as needed to provide services.

+
+ +
+

Prohibited Activities

+

You agree not to engage in any of the following:

+
    +
  • Reverse engineering or decompiling any part of the platform
  • +
  • Using the platform for unlawful or harmful purposes
  • +
  • Infringing on the intellectual property rights of others
  • +
  • Disrupting the functionality or security of the platform
  • +
+
+ +
+

Termination

+

+ We may suspend or terminate your access if you violate these Terms. Upon termination, your right to use the platform ceases immediately. +

+
+ +
+

Disclaimers

+

+ The platform is provided "as is" without warranties of any kind. We do not guarantee that the platform will be uninterrupted, secure, or error-free. +

+
+ +
+

Limitation of Liability

+

+ To the fullest extent permitted by law, inpactAI shall not be liable for any indirect, incidental, special, or consequential damages resulting from your use of the platform. +

+
+ +
+

Changes to These Terms

+

+ We may modify these Terms at any time. If we do, we will notify you via the platform or by email. Continued use of the platform after changes means you accept the new Terms. +

+
+ +
+

Contact Us

+

+ If you have any questions about these Terms, contact us at: +
+ Email: aossie.oss@gmail.com +

+
+
+
+
+
+
+
+ ); +}; + +export default TermsOfService; \ No newline at end of file diff --git a/LandingPage/src/Pages/Privacy.tsx b/LandingPage/src/Pages/Privacy.tsx new file mode 100644 index 0000000..4705e21 --- /dev/null +++ b/LandingPage/src/Pages/Privacy.tsx @@ -0,0 +1,132 @@ +import React, { useEffect } from 'react'; +import Navbar from '../components/Header'; +import Footer from '../components/Footer'; +import { motion } from 'framer-motion'; + +const PrivacyPolicy: React.FC = () => { + useEffect(() => { + window.scrollTo(0, 0); + document.title = "Privacy Policy | inpactAI"; + }, []); + + return ( +
+ +
+
+ +

Privacy Policy

+ +
+

Last updated: April 14, 2025

+ +
+

Introduction

+

+ At inpactAI, we respect your privacy and are committed to protecting your personal data. This Privacy + Policy explains how we collect, use, disclose, and safeguard your information when you use our service. +

+
+ +
+

Information We Collect

+

When you use inpactAI, we may collect the following types of information:

+
    +
  • + Personal Information: Name, email address, and organization details provided + during signup or when joining our waitlist. +
  • +
  • + Platform Data: If you connect inpactAI with platforms like Instagram, TikTok, or LinkedIn, + we may collect information necessary to offer creator-brand matching services, such as follower data, + audience engagement, and content performance metrics. +
  • +
  • + Usage Information: Data about how you interact with our platform, including features used, + actions taken, and time spent on the platform. +
  • +
+
+ +
+

How We Use Your Information

+

We use the collected information for various purposes, including:

+
    +
  • Providing and maintaining our AI-powered platform
  • +
  • Improving creator-brand matching accuracy
  • +
  • Personalizing your dashboard and analytics
  • +
  • Communicating with you about updates, matches, and insights
  • +
  • Ensuring data integrity and platform security
  • +
+
+ +
+

Data Sharing and Disclosure

+

+ We do not sell your personal information. We may share data in the following circumstances: +

+
    +
  • With service providers helping us run the platform (e.g., analytics, hosting)
  • +
  • To comply with legal obligations or respond to lawful requests
  • +
  • With your consent or to fulfill specific actions at your direction
  • +
  • In connection with business restructuring, mergers, or acquisitions
  • +
+
+ +
+

Data Security

+

+ We apply industry-standard security practices to protect your data, including encryption, access controls, + and regular security reviews. However, no digital system is completely secure, and we encourage + you to practice responsible data handling on your end as well. +

+
+ +
+

Your Rights

+

+ Depending on your location, you may have certain rights related to your personal information: +

+
    +
  • Access or request a copy of your personal data
  • +
  • Request correction of any inaccurate or incomplete data
  • +
  • Request deletion of your personal data
  • +
  • Restrict processing or object to data usage
  • +
  • Request data portability
  • +
+

+ To exercise your rights, contact us at privacy@inpact.ai. +

+
+ +
+

Changes to This Policy

+

+ We may update this Privacy Policy occasionally to reflect changes in law or our practices. + If significant changes are made, we will notify you on the platform or via email. + Please review this policy periodically to stay informed. +

+
+ +
+

Contact Us

+

+ If you have any questions about this Privacy Policy, feel free to reach out: +
+ Email: aossie.oss@gmail.com +

+
+
+
+
+
+
+
+ ); +}; + +export default PrivacyPolicy; diff --git a/LandingPage/src/assets/react.svg b/LandingPage/src/assets/react.svg new file mode 100644 index 0000000..6c87de9 --- /dev/null +++ b/LandingPage/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/LandingPage/src/components/Footer.tsx b/LandingPage/src/components/Footer.tsx new file mode 100644 index 0000000..bbe3cf6 --- /dev/null +++ b/LandingPage/src/components/Footer.tsx @@ -0,0 +1,75 @@ +import { Box, Typography, Link, Divider, Grid, Stack } from '@mui/material'; + +const Footer = () => { + const linkStyle = { + color: 'rgba(255, 255, 255, 0.8)', + textDecoration: 'none', + fontSize: '0.95rem', + '&:hover': { + color: '#8B5CF6', + }, + }; + + return ( + + {/* Top Section */} + + + + InpactAI + + + Empowering brands to make smarter creator decisions through AI-powered insights and integrations. + + + + + + Explore + + + Home + About + Contact + + + + + + Legal & Code + + + + GitHub + + Terms of Use + Privacy Policy + + + + + {/* Divider */} + + + {/* Bottom Section */} + + © {new Date().getFullYear()} InpactAI. All rights reserved. + + + ); +}; + +export default Footer; diff --git a/LandingPage/src/components/Header.tsx b/LandingPage/src/components/Header.tsx new file mode 100644 index 0000000..4616b47 --- /dev/null +++ b/LandingPage/src/components/Header.tsx @@ -0,0 +1,31 @@ +import { motion } from 'framer-motion'; +import Github from './github'; + +const Header = () => { + return ( + +
+ + + InpactAI + + +
+ +
+
+
+ ); +}; + +export default Header; diff --git a/LandingPage/src/components/bg.tsx b/LandingPage/src/components/bg.tsx new file mode 100644 index 0000000..d69b642 --- /dev/null +++ b/LandingPage/src/components/bg.tsx @@ -0,0 +1,235 @@ +import React, { useEffect, useRef } from "react"; +import { Renderer, Program, Mesh, Triangle, Color } from "ogl"; + +interface ThreadsProps { + color?: [number, number, number]; + amplitude?: number; + distance?: number; + enableMouseInteraction?: boolean; +} + +const vertexShader = ` +attribute vec2 position; +attribute vec2 uv; +varying vec2 vUv; +void main() { + vUv = uv; + gl_Position = vec4(position, 0.0, 1.0); +} +`; + +const fragmentShader = ` +precision highp float; + +uniform float iTime; +uniform vec3 iResolution; +uniform vec3 uColor; +uniform float uAmplitude; +uniform float uDistance; +uniform vec2 uMouse; + +#define PI 3.1415926538 + +const int u_line_count = 40; +const float u_line_width = 7.0; +const float u_line_blur = 10.0; + +float Perlin2D(vec2 P) { + vec2 Pi = floor(P); + vec4 Pf_Pfmin1 = P.xyxy - vec4(Pi, Pi + 1.0); + vec4 Pt = vec4(Pi.xy, Pi.xy + 1.0); + Pt = Pt - floor(Pt * (1.0 / 71.0)) * 71.0; + Pt += vec2(26.0, 161.0).xyxy; + Pt *= Pt; + Pt = Pt.xzxz * Pt.yyww; + vec4 hash_x = fract(Pt * (1.0 / 951.135664)); + vec4 hash_y = fract(Pt * (1.0 / 642.949883)); + vec4 grad_x = hash_x - 0.49999; + vec4 grad_y = hash_y - 0.49999; + vec4 grad_results = inversesqrt(grad_x * grad_x + grad_y * grad_y) + * (grad_x * Pf_Pfmin1.xzxz + grad_y * Pf_Pfmin1.yyww); + grad_results *= 1.4142135623730950; + vec2 blend = Pf_Pfmin1.xy * Pf_Pfmin1.xy * Pf_Pfmin1.xy + * (Pf_Pfmin1.xy * (Pf_Pfmin1.xy * 6.0 - 15.0) + 10.0); + vec4 blend2 = vec4(blend, vec2(1.0 - blend)); + return dot(grad_results, blend2.zxzx * blend2.wwyy); +} + +float pixel(float count, vec2 resolution) { + return (1.0 / max(resolution.x, resolution.y)) * count; +} + +float lineFn(vec2 st, float width, float perc, float offset, vec2 mouse, float time, float amplitude, float distance) { + float split_offset = (perc * 0.4); + float split_point = 0.1 + split_offset; + + float amplitude_normal = smoothstep(split_point, 0.7, st.x); + float amplitude_strength = 0.5; + float finalAmplitude = amplitude_normal * amplitude_strength + * amplitude * (1.0 + (mouse.y - 0.5) * 0.2); + + float time_scaled = time / 10.0 + (mouse.x - 0.5) * 1.0; + float blur = smoothstep(split_point, split_point + 0.05, st.x) * perc; + + float xnoise = mix( + Perlin2D(vec2(time_scaled, st.x + perc) * 2.5), + Perlin2D(vec2(time_scaled, st.x + time_scaled) * 3.5) / 1.5, + st.x * 0.3 + ); + + float y = 0.5 + (perc - 0.5) * distance + xnoise / 2.0 * finalAmplitude; + + float line_start = smoothstep( + y + (width / 2.0) + (u_line_blur * pixel(1.0, iResolution.xy) * blur), + y, + st.y + ); + + float line_end = smoothstep( + y, + y - (width / 2.0) - (u_line_blur * pixel(1.0, iResolution.xy) * blur), + st.y + ); + + return clamp( + (line_start - line_end) * (1.0 - smoothstep(0.0, 1.0, pow(perc, 0.3))), + 0.0, + 1.0 + ); +} + +void mainImage(out vec4 fragColor, in vec2 fragCoord) { + vec2 uv = fragCoord / iResolution.xy; + + float line_strength = 1.0; + for (int i = 0; i < u_line_count; i++) { + float p = float(i) / float(u_line_count); + line_strength *= (1.0 - lineFn( + uv, + u_line_width * pixel(1.0, iResolution.xy) * (1.0 - p), + p, + (PI * 1.0) * p, + uMouse, + iTime, + uAmplitude, + uDistance + )); + } + + float colorVal = 1.0 - line_strength; + fragColor = vec4(uColor * colorVal, colorVal); +} + +void main() { + mainImage(gl_FragColor, gl_FragCoord.xy); +} +`; + +const Threads: React.FC = ({ + color = [1, 1, 1], + amplitude = 1, + distance = 0, + enableMouseInteraction = false, + ...rest +}) => { + const containerRef = useRef(null); + const animationFrameId = useRef(null); + + useEffect(() => { + if (!containerRef.current) return; + const container = containerRef.current; + + const renderer = new Renderer({ alpha: true }); + const gl = renderer.gl; + gl.clearColor(0, 0, 0, 0); + gl.enable(gl.BLEND); + gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA); + container.appendChild(gl.canvas); + + const geometry = new Triangle(gl); + const program = new Program(gl, { + vertex: vertexShader, + fragment: fragmentShader, + uniforms: { + iTime: { value: 0 }, + iResolution: { + value: new Color( + gl.canvas.width, + gl.canvas.height, + gl.canvas.width / gl.canvas.height + ), + }, + uColor: { value: new Color(...color) }, + uAmplitude: { value: amplitude }, + uDistance: { value: distance }, + uMouse: { value: new Float32Array([0.5, 0.5]) }, + }, + }); + + const mesh = new Mesh(gl, { geometry, program }); + + function resize() { + const { clientWidth, clientHeight } = container; + renderer.setSize(clientWidth, clientHeight); + program.uniforms.iResolution.value.r = clientWidth; + program.uniforms.iResolution.value.g = clientHeight; + program.uniforms.iResolution.value.b = clientWidth / clientHeight; + } + window.addEventListener("resize", resize); + resize(); + + let currentMouse = [0.5, 0.5]; + let targetMouse = [0.5, 0.5]; + + function handleMouseMove(e: MouseEvent) { + const rect = container.getBoundingClientRect(); + const x = (e.clientX - rect.left) / rect.width; + const y = 1.0 - (e.clientY - rect.top) / rect.height; + targetMouse = [x, y]; + } + function handleMouseLeave() { + targetMouse = [0.5, 0.5]; + } + if (enableMouseInteraction) { + container.addEventListener("mousemove", handleMouseMove); + container.addEventListener("mouseleave", handleMouseLeave); + } + + function update(t: number) { + if (enableMouseInteraction) { + const smoothing = 0.05; + currentMouse[0] += smoothing * (targetMouse[0] - currentMouse[0]); + currentMouse[1] += smoothing * (targetMouse[1] - currentMouse[1]); + program.uniforms.uMouse.value[0] = currentMouse[0]; + program.uniforms.uMouse.value[1] = currentMouse[1]; + } else { + program.uniforms.uMouse.value[0] = 0.5; + program.uniforms.uMouse.value[1] = 0.5; + } + program.uniforms.iTime.value = t * 0.001; + + renderer.render({ scene: mesh }); + animationFrameId.current = requestAnimationFrame(update); + } + animationFrameId.current = requestAnimationFrame(update); + + return () => { + if (animationFrameId.current) + cancelAnimationFrame(animationFrameId.current); + window.removeEventListener("resize", resize); + + if (enableMouseInteraction) { + container.removeEventListener("mousemove", handleMouseMove); + container.removeEventListener("mouseleave", handleMouseLeave); + } + if (container.contains(gl.canvas)) container.removeChild(gl.canvas); + gl.getExtension("WEBGL_lose_context")?.loseContext(); + }; + }, [color, amplitude, distance, enableMouseInteraction]); + + return ( +
+ ); +}; + +export default Threads; diff --git a/LandingPage/src/components/card.tsx b/LandingPage/src/components/card.tsx new file mode 100644 index 0000000..092fe6a --- /dev/null +++ b/LandingPage/src/components/card.tsx @@ -0,0 +1,70 @@ +import React, { useRef, useState } from "react"; + +interface Position { + x: number; + y: number; +} + +interface SpotlightCardProps extends React.PropsWithChildren { + className?: string; + spotlightColor?: `rgba(${number}, ${number}, ${number}, ${number})`; +} + +const SpotlightCard: React.FC = ({ + children, + className = "", + spotlightColor = "rgba(255, 255, 255, 0.25)" +}) => { + const divRef = useRef(null); + const [isFocused, setIsFocused] = useState(false); + const [position, setPosition] = useState({ x: 0, y: 0 }); + const [opacity, setOpacity] = useState(0); + + const handleMouseMove: React.MouseEventHandler = (e) => { + if (!divRef.current || isFocused) return; + + const rect = divRef.current.getBoundingClientRect(); + setPosition({ x: e.clientX - rect.left, y: e.clientY - rect.top }); + }; + + const handleFocus = () => { + setIsFocused(true); + setOpacity(0.6); + }; + + const handleBlur = () => { + setIsFocused(false); + setOpacity(0); + }; + + const handleMouseEnter = () => { + setOpacity(0.6); + }; + + const handleMouseLeave = () => { + setOpacity(0); + }; + + return ( +
+
+ {children} +
+ ); +}; + +export default SpotlightCard; \ No newline at end of file diff --git a/LandingPage/src/components/carousel.tsx b/LandingPage/src/components/carousel.tsx new file mode 100644 index 0000000..e69de29 diff --git a/LandingPage/src/components/form.tsx b/LandingPage/src/components/form.tsx new file mode 100644 index 0000000..16007d9 --- /dev/null +++ b/LandingPage/src/components/form.tsx @@ -0,0 +1,221 @@ +import { useState } from 'react'; +import { Drawer, Button, TextField } from '@mui/material'; +import { motion } from 'framer-motion'; +import SendButton from "../components/sendbutton"; +import WatchlistButton from "../components/watchlist"; + +const chatbotSteps = { + initial: { + question: 'Are you a Brand or a Creator?', + options: ['Brand', 'Creator'], + }, + Brand: [ + { question: 'What is your brand name?', type: 'text', key: 'brandName' }, + { question: 'What industry are you in?', type: 'text', key: 'industry' }, + { question: 'What is your monthly ad budget?', type: 'text', key: 'budget' }, + { question: 'Do you work with influencers already?', type: 'text', key: 'influencerExperience' }, + { question: 'What platforms do you use for advertising?', type: 'text', key: 'adPlatforms' }, + { question: 'What is your target audience?', type: 'text', key: 'targetAudience' }, + { question: 'Do you have a campaign in mind already?', type: 'text', key: 'campaignDetails' }, + ], + Creator: [ + { question: 'What is your name?', type: 'text', key: 'creatorName' }, + { question: 'What is your email?', type: 'text', key: 'email' }, + { question: 'What is your phone number?', type: 'text', key: 'phone' }, + { question: 'Which platform do you use the most?', type: 'text', key: 'platform' }, + { question: 'Provide your social media handle', type: 'text', key: 'socialMedia' }, + { question: 'How many subscribers do you have?', type: 'text', key: 'subscribers' }, + { question: 'How many followers do you have?', type: 'text', key: 'followers' }, + { question: 'What’s your niche or content type?', type: 'text', key: 'niche' }, + { question: 'Are you open to exclusive brand deals?', type: 'text', key: 'exclusiveDeals' }, + { question: 'Do you have a portfolio?', type: 'text', key: 'portfolio' }, + ], +}; + + +export default function ChatbotSidebarForm() { + const [open, setOpen] = useState(false); + const [chat, setChat] = useState([{ from: 'bot', text: chatbotSteps.initial.question }]); + const [stepIndex, setStepIndex] = useState(0); + const [path, setPath] = useState(null); + const [formData, setFormData] = useState<{ [key: string]: string }>({}); + const [userInput, setUserInput] = useState(''); + const [completed, setCompleted] = useState(false); + + const FORM_ID = ''; + const formUrl = `https://docs.google.com/forms/d/e/${FORM_ID}/formResponse`; + + + const submitToGoogleForm = async () => { + + const formBody = new URLSearchParams(); + formBody.append('entry.1234567890', formData.brandName || formData.creatorName); + formBody.append('entry.2345678901', formData.industry); + formBody.append('entry.3456789012', formData.budget); + formBody.append('entry.4567890123', formData.influencerExperience); + formBody.append('entry.5678901234', formData.adPlatforms); + formBody.append('entry.6789012345', formData.targetAudience); + formBody.append('entry.7890123456', formData.campaignDetails); + formBody.append('entry.8901234567', formData.creatorName); + formBody.append('entry.9012345678', formData.email); + formBody.append('entry.0123456789', formData.phone); + formBody.append('entry.1234567890', formData.platform); + formBody.append('entry.2345678901', formData.socialMedia); + formBody.append('entry.3456789012', formData.subscribers); + formBody.append('entry.4567890123', formData.followers); + formBody.append('entry.5678901234', formData.niche); + formBody.append('entry.6789012345', formData.exclusiveDeals); + formBody.append('entry.7890123456', formData.portfolio); + + + try { + await fetch(formUrl, { + method: 'POST', + mode: 'no-cors', + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + body: formBody.toString(), + }); + console.log("Submitted to Google Form"); + } catch (err) { + console.error("Failed to submit to Google Form", err); + } + }; + + const handleOptionClick = (option: 'Brand' | 'Creator') => { + setChat((prev) => [...prev, { from: 'user', text: option }]); + setPath(option); + setTimeout(() => { + setChat((prev) => [ + ...prev, + { from: 'bot', text: chatbotSteps[option][0].question }, + ]); + setStepIndex(0); + }, 500); + }; + + const handleNext = () => { + const currentStep = chatbotSteps[path!][stepIndex]; + if (!userInput) return; + + setFormData((prev) => ({ ...prev, [currentStep.key]: userInput })); + setChat((prev) => [...prev, { from: 'user', text: userInput }]); + setUserInput(''); + + if (stepIndex + 1 < chatbotSteps[path!].length) { + const nextQuestion = chatbotSteps[path!][stepIndex + 1].question; + setTimeout(() => { + setChat((prev) => [...prev, { from: 'bot', text: nextQuestion }]); + }, 500); + setStepIndex(stepIndex + 1); + } else { + setTimeout(() => { + setChat((prev) => [ + ...prev, + { from: 'bot', text: 'Thanks for joining the waitlist! 🎉' }, + ]); + setCompleted(true); + submitToGoogleForm(); + setTimeout(() => setOpen(false), 2000); // auto close after 2 seconds + }, 500); + } + }; + + const handleDrawerOpen = () => { + setOpen(true); + setChat([{ from: 'bot', text: chatbotSteps.initial.question }]); + setStepIndex(0); + setPath(null); + setFormData({}); + setUserInput(''); + setCompleted(false); + }; + + return ( +
+
+ +
+ + setOpen(false)}> +
+ + {/* Header */} +
+ 🤖 Automated Chat Form +
+ + {/* Chat Body */} +
+ {chat.map((msg, idx) => ( + + {msg.text} + + ))} +
+ + {/* Input Section */} +
+ {!path ? ( +
+ {chatbotSteps.initial.options.map((opt) => ( + + ))} +
+ ) : !completed && stepIndex < chatbotSteps[path].length ? ( +
+ setUserInput(e.target.value)} + disabled={completed} + placeholder="Type your answer..." + sx={{ + input: { color: '#000' }, + backgroundColor: 'white', + borderRadius: '8px', + }} + /> +
+ +
+
+ ) : null} +
+
+
+ +
+ ); +} diff --git a/LandingPage/src/components/github.tsx b/LandingPage/src/components/github.tsx new file mode 100644 index 0000000..a1a33ff --- /dev/null +++ b/LandingPage/src/components/github.tsx @@ -0,0 +1,48 @@ +import styled from 'styled-components'; + +const Github = () => { + return ( + + + + ); +} + +const StyledWrapper = styled.div` + .btn-github { + cursor: pointer; + display: flex; + gap: 0.5rem; + border: none; + + transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); + border-radius: 100px; + font-weight: 800; + place-content: center; + + padding: 0.75rem 1rem; + font-size: 0.825rem; + line-height: 1rem; + + background-color: rgba(255, 255, 255, 0.19); + box-shadow: + inset 0 1px 0 0 rgba(255, 255, 255, 0.04), + inset 0 0 0 1px rgba(255, 255, 255, 0.04); + color: #fff; + } + + .btn-github:hover { + box-shadow: + inset 0 1px 0 0 rgba(255, 255, 255, 0.08), + inset 0 0 0 1px rgba(252, 232, 3, 0.08); + color:rgb(152, 3, 252); + transform: translate(0, -0.25rem); + background-color: rgba(0, 0, 0, 0.5); + }`; + +export default Github; diff --git a/LandingPage/src/components/howitworks.tsx b/LandingPage/src/components/howitworks.tsx new file mode 100644 index 0000000..13e4e26 --- /dev/null +++ b/LandingPage/src/components/howitworks.tsx @@ -0,0 +1,130 @@ +import React from 'react'; +import { motion } from 'framer-motion'; +import { + UserIcon, + SparklesIcon, + CreditCardIcon, + BarChartIcon, + LayoutDashboardIcon, + CameraIcon + +} from 'lucide-react'; + +const HowItWorks: React.FC = () => { + + const steps = [ + { + title: "User Onboarding", + description: "Brands and creators register and choose their roles, preferences, and categories.", + icon: , + color: "from-pink-500 to-purple-500" + }, + { + title: "AI-Powered Matching", + description: "Inpact uses AI to suggest ideal brand-creator collaborations based on past work, niches, and engagement.", + icon: , + color: "from-pink-500 to-purple-500" + }, + { + title: "Creator Showcases", + description: "Creators can highlight their portfolios and previous collaborations, making it easier for brands to evaluate fit.", + icon: , + color: "from-purple-500 to-pink-500" + }, + { + title: "Collaboration Dashboard", + description: "Both parties interact, chat, and collaborate with full task and timeline visibility.", + icon: , + color: "from-purple-500 to-pink-500" + }, + { + title: "Smart Contracts & Payments", + description: "Secure agreements and transactions powered by Stripe or Razorpay integrations.", + icon: , + color: "from-pink-500 to-purple-500" + }, + { + title: "Analytics & Feedback", + description: "Track campaign metrics, gather insights, and iterate smarter with built-in dashboards.", + icon: , + color: "from-pink-500 to-purple-500" + } + ]; + + + + return ( +
+
+
+ +

+ How InpactAI works + +

+

+ Inpact uses AI-powered pipelines to bridge the gap between brands and creators—simplifying discovery, onboarding, and collaboration. +

+
+ +
+ {steps.map((step, index) => ( + +
+
+ {step.icon} +
+
+

{step.title}

+

{step.description}

+
+
+ + {index < steps.length - 1 && ( + <> +
+ {step.title !== "Smart Contracts & Payments" && + step.title !== "Analytics & Feedback" && + ( + + )} +
+ +
+
+
+ + )} +
+ ))} +
+
+ + + +
+
+ ); +}; + +export default HowItWorks; \ No newline at end of file diff --git a/LandingPage/src/components/integration.tsx b/LandingPage/src/components/integration.tsx new file mode 100644 index 0000000..1155635 --- /dev/null +++ b/LandingPage/src/components/integration.tsx @@ -0,0 +1,92 @@ +import { motion } from 'framer-motion'; +import { SocialIcon } from 'react-social-icons' + +export default function Integrations() { + const integrations = [ + { + icon: , + name: 'Instagram', + description: 'Fetch creator insights like engagement rate, reach trends, and content breakdown.', + }, + { + icon: , + name: 'YouTube', + description: 'Access analytics on video performance, channel growth, and viewer demographics.', + }, + { + icon: , + name: 'X (formerly Twitter)', + description: 'Measure influence through tweet engagement, retweet rate, and follower insights.', + }, + { + icon: , + name: 'LinkedIn', + description: 'Track professional creator presence and branded thought leadership impact.', + }, + ]; + + const container = { + hidden: { opacity: 0 }, + show: { + opacity: 1, + transition: { + staggerChildren: 0.12, + delayChildren: 0.2, + }, + }, + }; + + const item = { + hidden: { opacity: 0, y: 24 }, + show: { opacity: 1, y: 0, transition: { duration: 0.4, ease: 'easeOut' } }, + }; + + return ( +
+
+ +

+ Social Integrations + +

+

+ Inpact connects with major social platforms to analyze creator performance and brand-fit intelligence. +

+
+ + + {integrations.map((integration, index) => ( + +
+
+ {integration.icon} +
+

{integration.name}

+
+

+ {integration.description} +

+
+ ))} +
+
+
+ ); +} diff --git a/LandingPage/src/components/sendbutton.tsx b/LandingPage/src/components/sendbutton.tsx new file mode 100644 index 0000000..67019d8 --- /dev/null +++ b/LandingPage/src/components/sendbutton.tsx @@ -0,0 +1,76 @@ +import styled from 'styled-components'; + +const SendButton = () => { + return ( + + + + ); +} + +const StyledWrapper = styled.div` + button { + font-family: inherit; + font-size: 14px; + background:rgb(101, 0, 135); + color: white; + padding: 0.9em 1.2em; + padding-left: 0.9em; + display: flex; + align-items: center; + border: none; + border-radius: 16px; + overflow: hidden; + transition: all 0.2s; + cursor: pointer; + } + + button span { + display: block; + margin-left: 0.3em; + transition: all 0.3s ease-in-out; + } + + button svg { + display: block; + transform-origin: center center; + transition: transform 0.3s ease-in-out; + } + + button:hover .svg-wrapper { + animation: fly-1 0.6s ease-in-out infinite alternate; + } + + button:hover svg { + transform: translateX(1.2em) rotate(45deg) scale(1.1); + } + + button:hover span { + transform: translateX(5em); + } + + button:active { + transform: scale(0.95); + } + + @keyframes fly-1 { + from { + transform: translateY(0.1em); + } + + to { + transform: translateY(-0.1em); + } + }`; + +export default SendButton; diff --git a/LandingPage/src/components/watchlist.tsx b/LandingPage/src/components/watchlist.tsx new file mode 100644 index 0000000..2e0d9de --- /dev/null +++ b/LandingPage/src/components/watchlist.tsx @@ -0,0 +1,74 @@ +import styled from 'styled-components'; + +const WatchlistButton = () => { + return ( + + + + ); +} + +const StyledWrapper = styled.div` + .cssbuttons-io-button { + background:rgb(115, 24, 252); + color: white; + font-family: inherit; + padding: 0.35em; + padding-left: 1.2em; + font-size: 17px; + font-weight: 500; + border-radius: 0.9em; + border: none; + letter-spacing: 0.05em; + display: flex; + align-items: center; + box-shadow: inset 0 0 1.6em -0.6em #714da6; + overflow: hidden; + position: relative; + height: 2.8em; + padding-right: 3.3em; + cursor: pointer; + } + + .cssbuttons-io-button .icon { + background: white; + margin-left: 1em; + position: absolute; + display: flex; + align-items: center; + justify-content: center; + height: 2.2em; + width: 2.2em; + border-radius: 0.7em; + box-shadow: 0.1em 0.1em 0.6em 0.2em #7b52b9; + right: 0.3em; + transition: all 0.3s; + } + + .cssbuttons-io-button:hover .icon { + width: calc(100% - 0.6em); + } + + .cssbuttons-io-button .icon svg { + width: 1.1em; + transition: transform 0.3s; + color: #7b52b9; + } + + .cssbuttons-io-button:hover .icon svg { + transform: translateX(0.1em); + } + + .cssbuttons-io-button:active .icon { + transform: scale(0.95); + }`; + +export default WatchlistButton; diff --git a/LandingPage/src/index.css b/LandingPage/src/index.css new file mode 100644 index 0000000..e69de29 diff --git a/LandingPage/src/main.tsx b/LandingPage/src/main.tsx new file mode 100644 index 0000000..bef5202 --- /dev/null +++ b/LandingPage/src/main.tsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import './index.css' +import App from './App.tsx' + +createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/LandingPage/src/vite-env.d.ts b/LandingPage/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/LandingPage/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/LandingPage/tsconfig.app.json b/LandingPage/tsconfig.app.json new file mode 100644 index 0000000..358ca9b --- /dev/null +++ b/LandingPage/tsconfig.app.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"] +} diff --git a/LandingPage/tsconfig.json b/LandingPage/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/LandingPage/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/LandingPage/tsconfig.node.json b/LandingPage/tsconfig.node.json new file mode 100644 index 0000000..db0becc --- /dev/null +++ b/LandingPage/tsconfig.node.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2022", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/LandingPage/vite.config.ts b/LandingPage/vite.config.ts new file mode 100644 index 0000000..8b0f57b --- /dev/null +++ b/LandingPage/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}) From b3657616c3d68d7c9d8a37214b1838cfd281b55a Mon Sep 17 00:00:00 2001 From: Saahi30 Date: Fri, 6 Jun 2025 07:23:56 +0530 Subject: [PATCH 2/3] Additional changes for landing page integration --- README.md | 275 +----------------------------------------------------- 1 file changed, 4 insertions(+), 271 deletions(-) diff --git a/README.md b/README.md index b99da38..5443803 100644 --- a/README.md +++ b/README.md @@ -1,274 +1,7 @@ -![Inpact arch](https://github.com/user-attachments/assets/2b911c1f-2a14-4663-9a22-f04b22baa5b8) +# Inpact Landing Page -# Inpact - AI-Powered Creator Collaboration & Sponsorship Matchmaking +**This repository is a fork of [ishaanxgupta/Inpact-LandingPage](https://github.com/ishaanxgupta/Inpact-LandingPage).** -Inpact is an open-source AI-powered platform designed to connect content creators, brands, and agencies through data-driven insights. By leveraging Generative AI (GenAI), audience analytics, and engagement metrics, Inpact ensures highly relevant sponsorship opportunities for creators while maximizing ROI for brands investing in influencer marketing. +Special thanks and credit to **Ishaan Gupta** ([ishaanxgupta](https://github.com/ishaanxgupta)) for building the landing page to this level. -## Features - -### AI-Driven Sponsorship Matchmaking - -- Automatically connects creators with brands based on audience demographics, engagement rates, and content style. - -### AI-Powered Creator Collaboration Hub - -- Facilitates partnerships between creators with complementary audiences and content niches. - -### AI-Based Pricing & Deal Optimization - -- Provides fair sponsorship pricing recommendations based on engagement, market trends, and historical data. - -### AI-Powered Negotiation & Contract Assistant - -- Assists in structuring deals, generating contracts, and optimizing terms using AI insights. - -### Performance Analytics & ROI Tracking - -- Enables brands and creators to track sponsorship performance, audience engagement, and campaign success. - -## Tech Stack - -- **Frontend**: ReactJS -- **Backend**: FastAPI -- **Database**: Supabase -- **AI Integration**: GenAI for audience analysis and sponsorship recommendations - ---- - -## Workflow - -### 1. User Registration & Profile Setup - -- Creators, brands, and agencies sign up and set up their profiles. -- AI gathers audience insights and engagement data. - -### 2. AI-Powered Sponsorship Matchmaking - -- The platform suggests brands and sponsorship deals based on audience metrics. -- Creators can apply for sponsorships or receive brand invitations. - -### 3. Collaboration Hub - -- Creators can find and connect with others for joint campaigns. -- AI recommends potential collaborations based on niche and audience overlap. - -### 4. AI-Based Pricing & Contract Optimization - -- AI provides fair pricing recommendations for sponsorships. -- Auto-generates contract templates with optimized terms. - -### 5. Campaign Execution & Tracking - -- Creators execute sponsorship campaigns. -- Brands track campaign performance through engagement and ROI metrics. - -### 6. Performance Analysis & Continuous Optimization - -- AI analyzes campaign success and suggests improvements for future deals. -- Brands and creators receive insights for optimizing future sponsorships. - ---- - -## Getting Started - -### Prerequisites - -Ensure you have the following installed: - -- Node.js & npm -- Python & FastAPI -- Supabase account - -### Installation - -#### 1. Clone the repository - -```sh -git clone https://github.com/AOSSIE-Org/InPact.git -cd inpact -``` - -#### 2. Frontend Setup - -1. Navigate to the frontend directory: -```sh -cd frontend -``` - -2. Install dependencies: -```sh -npm install -``` - -3. Create a `.env` file using `.env.example` file: - - -4. Get your Supabase credentials: - - Go to [Supabase](https://supabase.com/) - - Log in and create a new project (or use existing) - - Go to Project Settings -> API - - Copy the "Project URL" and paste it as VITE_SUPABASE_URL - - Copy the "anon public" key and paste it as VITE_SUPABASE_ANON_KEY - -#### 3. Backend Setup - -1. Navigate to the backend directory: -```sh -cd ../backend -``` - -2. Install dependencies: -```sh -pip install -r requirements.txt -``` - -3. Start the redis server using docker: -```sh -docker compose up -d -``` - -4. Navigate to the app directory: -```sh -cd app -``` -5. Create a `.env` file using `.env.example` as a reference. - -6. Obtain Supabase credentials: - - Go to [Supabase](https://supabase.com/) - - Log in and create a new project - - Click on the project and remember the project password - - Go to the **Connect** section at the top - - Select **SQLAlchemy** and copy the connection string: - - ```sh - user=postgres - password=[YOUR-PASSWORD] - host=db.wveftanaurduixkyijhf.supabase.co - port=5432 - dbname=postgres - ``` - - --OR-- - - [The above works in ipv6 networks, if you are in ipv4 network or it cause errors, use the below connection string which could be found in Session Pooler connection] - - ```sh - user=postgres. - password=[YOUR-PASSWORD] - host=aws-.pooler.supabase.com - port=5432 - dbname=postgres - ``` - -7. Get the Groq API key: - - Visit [Groq Console](https://console.groq.com/) - - Create an API key and paste it into the `.env` file - -8. Start the backend server: -```sh -uvicorn main:app --reload -``` - -#### 4. Start Development Servers - -- **Frontend**: - -1. Start the frontend server (from the frontend directory): -```sh -npm run dev -``` - -2. Start the backend server (from the backend/app directory): -```sh -uvicorn main:app --reload -``` - -## Data Population - -To populate the database with initial data, follow these steps: - -1. **Open Supabase Dashboard** - - - Go to [Supabase](https://supabase.com/) and log in. - - Select your created project. - -2. **Access the SQL Editor** - - - In the left sidebar, click on **SQL Editor**. - -3. **Run the SQL Script** - - Open the `sql.txt` file in your project. - - Copy the SQL queries from the file. - - Paste the queries into the SQL Editor and click **Run**. - -This will populate the database with the required initial data for the platform. 🚀 - ---- - -## Contributing - -We welcome contributions from the community! To contribute: - -1. Fork the repository. -2. Create a new branch for your feature (`git checkout -b feature-name`). -3. Commit your changes (`git commit -m "Added feature"`). -4. Push to your branch (`git push origin feature-name`). -5. Open a Pull Request. - ---- - -## Overall Workflow - -```mermaid -graph TD; - A[User Signup/Login] -->|via Supabase Auth| B[User Dashboard]; - B -->|Fetch Audience & Engagement Data| C[AI-Powered Sponsorship Matchmaking]; - C -->|Suggest Ideal Brand Deals| D[Creator Applies for Sponsorship]; - D -->|Submit Application| E[Brand Reviews & Shortlists]; - E -->|AI-Based Pricing & Negotiation| F[Contract Generation via AI]; - F -->|Sign Deal| G[Sponsorship Execution]; - G -->|Track Performance| H[AI-Powered ROI Analytics]; - H -->|Optimized Insights| I[Brands & Creators Adjust Strategies]; - I -->|Feedback Loop| C; -``` - -**FRONTEND workflow in detail** - -```mermaid -graph TD; - A[User Visits Inpact] -->|Supabase Auth| B[Login/Signup]; - B -->|Fetch User Profile| C[Dashboard Loaded]; - C -->|Request AI-Powered Matches| D[Fetch Sponsorship Deals via API]; - D -->|Display Relevant Matches| E[User Applies for Sponsorship]; - E -->|Send Application via API| F[Wait for Brand Response]; - F -->|Fetch Application Status| G[Show Application Updates]; - G -->|If Approved| H[Contract Generation Page]; - H -->|AI Drafts Contract| I[User Reviews & Signs Contract]; - I -->|Start Campaign Execution| J[Track Sponsorship Performance]; - J -->|Show Performance Analytics| K[AI Optimizes Future Matches]; -``` - -**BACKEND workflow in detail** - -```mermaid -graph TD; - A[User Authentication] -->|Supabase Auth API| B[Verify User]; - B -->|Store User Data in DB| C[Return JWT Token]; - C -->|Fetch User Profile| D[Return Profile Data]; - D -->|Receive Sponsorship Match Request| E[Query AI Engine]; - E -->|Analyze Audience & Engagement| F[Generate Sponsorship Matches]; - F -->|Return Matches via API| G[Send to Frontend]; - G -->|User Applies for Sponsorship| H[Store Application in DB]; - H -->|Notify Brand| I[Brand Reviews Application]; - I -->|Brand Approves/Rejects| J[Update Application Status]; - J -->|If Approved| K[Generate AI-Powered Contract]; - K -->|AI Suggests Pricing & Terms| L[Store Finalized Contract in DB]; - L -->|Track Campaign Performance| M[Analyze Engagement & ROI]; - M -->|Return Insights| N[AI Refines Future Recommendations]; -``` - -## Contact - -For queries, issues, or feature requests, please raise an issue or reach out on our Discord server. - -Happy Coding! +--- \ No newline at end of file From 9c99a30b45db913eb1104abf694759181d56098e Mon Sep 17 00:00:00 2001 From: Saahi30 Date: Fri, 6 Jun 2025 07:28:19 +0530 Subject: [PATCH 3/3] Given credits to Ishaan Gupta --- LandingPage/README.md | 55 ++++--------------------------------------- 1 file changed, 4 insertions(+), 51 deletions(-) diff --git a/LandingPage/README.md b/LandingPage/README.md index 40ede56..5443803 100644 --- a/LandingPage/README.md +++ b/LandingPage/README.md @@ -1,54 +1,7 @@ -# React + TypeScript + Vite +# Inpact Landing Page -This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. +**This repository is a fork of [ishaanxgupta/Inpact-LandingPage](https://github.com/ishaanxgupta/Inpact-LandingPage).** -Currently, two official plugins are available: +Special thanks and credit to **Ishaan Gupta** ([ishaanxgupta](https://github.com/ishaanxgupta)) for building the landing page to this level. -- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh -- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh - -## Expanding the ESLint configuration - -If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: - -```js -export default tseslint.config({ - extends: [ - // Remove ...tseslint.configs.recommended and replace with this - ...tseslint.configs.recommendedTypeChecked, - // Alternatively, use this for stricter rules - ...tseslint.configs.strictTypeChecked, - // Optionally, add this for stylistic rules - ...tseslint.configs.stylisticTypeChecked, - ], - languageOptions: { - // other options... - parserOptions: { - project: ['./tsconfig.node.json', './tsconfig.app.json'], - tsconfigRootDir: import.meta.dirname, - }, - }, -}) -``` - -You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: - -```js -// eslint.config.js -import reactX from 'eslint-plugin-react-x' -import reactDom from 'eslint-plugin-react-dom' - -export default tseslint.config({ - plugins: { - // Add the react-x and react-dom plugins - 'react-x': reactX, - 'react-dom': reactDom, - }, - rules: { - // other rules... - // Enable its recommended typescript rules - ...reactX.configs['recommended-typescript'].rules, - ...reactDom.configs.recommended.rules, - }, -}) -``` +--- \ No newline at end of file
+
+ {/* Hero Section */} + + + + Powered by AOSSIE + AOSSIE + + +
+
+ +
+ + {headingWords.map((word, index) => ( + + {word} + + ))} + + + +

+ The future of creator collaboration is coming. + Join the waitlist to be the first to experience + the revolution in influencer marketing. +

+ + + {/* Features */} + +

+ Features + +

+
+ +
+ {[ + { + icon: , + title: "AI-Driven Sponsorship Matchmaking", + description: + "Automatically connects creators with brands based on audience demographics, engagement rates, and content style.", + }, + { + icon: , + title: "AI-Powered Creator Collaboration Hub", + description: + "Facilitates partnerships between creators with complementary audiences and content niches.", + }, + { + icon: , + title: "AI-Based Pricing & Deal Optimization", + description: + "Provides fair sponsorship pricing recommendations based on engagement, market trends, and historical data.", + }, + { + icon: , + title: "AI-Powered Negotiation & Contract Assistant", + description: + "Assists in structuring deals, generating contracts, and optimizing terms using AI insights.", + }, + { + icon: , + title: "Performance Analytics & ROI Tracking", + description: + "Enables brands and creators to track sponsorship performance, audience engagement, and campaign success.", + }, + { + icon: , + title: "Real-Time Campaign Feedback Loop", + description: + "Gathers continuous feedback on campaigns to adapt and improve collaboration effectiveness over time.", + }, + ].map((feature, index) => ( + + {feature.icon} +

{feature.title}

+

{feature.description}

+
+ ))} +
+ + {/* How It Works Section */} +
+ +
+ +
+ +
+ + + {/* Waitlist Form Section */} +
+
+

+ Be a Part of the Revolution + +

+

+ Join our waitlist to be the first to experience how InpactAI is transforming the way brands and creators collaborate. +

+
+ +
+
+
+ + +
+