From b816b4f038cf986c919ecf7d894a0e203073862f Mon Sep 17 00:00:00 2001 From: mohamed babela Date: Sun, 11 Aug 2024 12:32:49 +0100 Subject: [PATCH 1/4] merge from chadow rep --- .DS_Store | Bin 0 -> 6148 bytes README.md | 107 +- eslint.config.js | 26 + index.html | 16 + package.json | 33 + pnpm-lock.yaml | 2612 +++++++++++++++++++++++++++++++++++ postcss.config.js | 6 + public/mbw.png | Bin 0 -> 79080 bytes src/App.css | 0 src/App.tsx | 192 +++ src/assets/mbw.png | Bin 0 -> 79080 bytes src/components/input.tsx | 49 + src/components/keyboard.tsx | 25 + src/index.css | 31 + src/main.tsx | 10 + src/vite-env.d.ts | 1 + tailwind.config.js | 11 + tsconfig.app.json | 24 + tsconfig.json | 7 + tsconfig.node.json | 22 + vite.config.ts | 7 + 21 files changed, 3122 insertions(+), 57 deletions(-) create mode 100644 .DS_Store create mode 100644 eslint.config.js create mode 100644 index.html create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 postcss.config.js create mode 100644 public/mbw.png create mode 100644 src/App.css create mode 100644 src/App.tsx create mode 100644 src/assets/mbw.png create mode 100644 src/components/input.tsx create mode 100644 src/components/keyboard.tsx create mode 100644 src/index.css create mode 100644 src/main.tsx create mode 100644 src/vite-env.d.ts create mode 100644 tailwind.config.js create mode 100644 tsconfig.app.json create mode 100644 tsconfig.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..d16d40353e43b2a23e1d4cd3549d319c20fe8050 GIT binary patch literal 6148 zcmeHKOHRWu5Pfbd#ILBZVwp7(mAFAbWx;|4Z~^+^ADTkTZ~rwXY(b-dr8{wC23E6ffwSC)|v^FV4m}7)H^i->Uaiq1klJ5czv5ReVuup7re1jrGb$rd~Sm&5-QHra|<-OK8 z{w@_y@DOzWF%Ksy=3}ff#yG6g)9kyJn{+6c`DIUT{vPmPiK1+{NjL_M^A^-o*5_f?7|7f zY42>0)EzGNXtgO|3KSKn``ec6|GTr#|3#ABnF6N3zf!<8I!B!yrWE$pN^-K-Ml8oH pV&a#1R0^xG9qWZ`#p^6;d=|+CF%Fn{WDCvy2&fEJnF7D6zz0JQ?wbGr literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 72d995242..74872fd4a 100644 --- a/README.md +++ b/README.md @@ -1,57 +1,50 @@ -# OpenDevEd-Wordle -## Requirements: -Your task is to create a web-based Wordle game using React that adheres to the following specifications: - -### User Interface (UI): - -Design a clean and intuitive UI for the game that includes: - -- Input field for guessing words. -- Submit button to submit the guess. -- Display area for previous guesses. -= Indication of correct letters in correct positions (right letter, right position). -- Indication of correct letters in the wrong position. -- Display remaining attempts. -- End game state UI (upon winning or losing). - -### State Management: - -Implement a robust state management system to handle: - -- Target word selection (randomly generate a word at the start of the game). -- Storing user guesses and their results. -- Tracking remaining attempts. - -### User Interaction: - -- Capture user input for word guesses. -- Validate input (alphabetic characters, word length, etc.). -- Handle the submission of guesses and update the game state accordingly. - - -### Game Logic: - -- Compare the user's guessed word against the target word. -- Provide feedback to the user about the correctness of the guessed word. -- End the game when the correct word is guessed or when the attempts reach zero. - -## Code Quality: - -- Write clean, readable, and maintainable code. -- Implement best practices for React development. -- Ensure error handling for edge cases (invalid input, unexpected behavior). - -## Submission Guidelines: - -- Fork this [repository](https://github.com/OpenDevEd/OpenDevEd-wordle/)) and create a new branch named `wordle-[YOUR NAME]`. -- Provide clear instructions on how to run the application locally. -- Include a README file explaining your approach, decisions made, and any additional features implemented. -- Open a PR. - -## Evaluation Criteria: - -- UI/UX design and functionality. -- Code quality, structure, and maintainability. -- State management and logic implementation. -- Handling of edge cases and error scenarios. -- Bonus points for additional features or optimizations. +# 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: + +- Configure the top-level `parserOptions` property like this: + +```js +export default tseslint.config({ + languageOptions: { + // other options... + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + }, +}) +``` + +- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked` +- Optionally add `...tseslint.configs.stylisticTypeChecked` +- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config: + +```js +// eslint.config.js +import react from 'eslint-plugin-react' + +export default tseslint.config({ + // Set the react version + settings: { react: { version: '18.3' } }, + plugins: { + // Add the react plugin + react, + }, + rules: { + // other rules... + // Enable its recommended rules + ...react.configs.recommended.rules, + ...react.configs['jsx-runtime'].rules, + }, +}) +``` diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 000000000..c4bc8f33c --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,26 @@ +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({ + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + ignores: ['dist'], + 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/index.html b/index.html new file mode 100644 index 000000000..9857f82a0 --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + + Wordle's Babela + + + +
+ + + + \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 000000000..93eaf591e --- /dev/null +++ b/package.json @@ -0,0 +1,33 @@ +{ + "name": "wordle", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@eslint/js": "^9.8.0", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.20", + "eslint": "^9.8.0", + "eslint-plugin-react-hooks": "^5.1.0-rc.0", + "eslint-plugin-react-refresh": "^0.4.9", + "globals": "^15.9.0", + "postcss": "^8.4.41", + "tailwindcss": "^3.4.9", + "typescript": "^5.5.3", + "typescript-eslint": "^8.0.0", + "vite": "^5.4.0" + }, + "packageManager": "pnpm@9.6.0+sha512.38dc6fba8dba35b39340b9700112c2fe1e12f10b17134715a4aa98ccf7bb035e76fd981cf0bb384dfa98f8d6af5481c2bef2f4266a24bfa20c34eb7147ce0b5e" +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 000000000..4bae40a26 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,2612 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + react: + specifier: ^18.3.1 + version: 18.3.1 + react-dom: + specifier: ^18.3.1 + version: 18.3.1(react@18.3.1) + devDependencies: + '@eslint/js': + specifier: ^9.8.0 + version: 9.8.0 + '@types/react': + specifier: ^18.3.3 + version: 18.3.3 + '@types/react-dom': + specifier: ^18.3.0 + version: 18.3.0 + '@vitejs/plugin-react': + specifier: ^4.3.1 + version: 4.3.1(vite@5.4.0) + autoprefixer: + specifier: ^10.4.20 + version: 10.4.20(postcss@8.4.41) + eslint: + specifier: ^9.8.0 + version: 9.8.0 + eslint-plugin-react-hooks: + specifier: ^5.1.0-rc.0 + version: 5.1.0-rc-fb9a90fa48-20240614(eslint@9.8.0) + eslint-plugin-react-refresh: + specifier: ^0.4.9 + version: 0.4.9(eslint@9.8.0) + globals: + specifier: ^15.9.0 + version: 15.9.0 + postcss: + specifier: ^8.4.41 + version: 8.4.41 + tailwindcss: + specifier: ^3.4.9 + version: 3.4.9 + typescript: + specifier: ^5.5.3 + version: 5.5.4 + typescript-eslint: + specifier: ^8.0.0 + version: 8.0.1(eslint@9.8.0)(typescript@5.5.4) + vite: + specifier: ^5.4.0 + version: 5.4.0 + +packages: + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@babel/code-frame@7.24.7': + resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.25.2': + resolution: {integrity: sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.25.2': + resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.25.0': + resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.25.2': + resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.24.7': + resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.25.2': + resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.24.8': + resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-simple-access@7.24.7': + resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.24.8': + resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.24.7': + resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.24.8': + resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.25.0': + resolution: {integrity: sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.24.7': + resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.25.3': + resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-transform-react-jsx-self@7.24.7': + resolution: {integrity: sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-source@7.24.7': + resolution: {integrity: sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/template@7.25.0': + resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.25.3': + resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.25.2': + resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} + engines: {node: '>=6.9.0'} + + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-utils@4.4.0': + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.11.0': + resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.17.1': + resolution: {integrity: sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.8.0': + resolution: {integrity: sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.3.0': + resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + engines: {node: '>=18.18'} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.5': + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@rollup/rollup-android-arm-eabi@4.20.0': + resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.20.0': + resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.20.0': + resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.20.0': + resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-linux-arm-gnueabihf@4.20.0': + resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.20.0': + resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.20.0': + resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.20.0': + resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': + resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.20.0': + resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.20.0': + resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.20.0': + resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.20.0': + resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-win32-arm64-msvc@4.20.0': + resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.20.0': + resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.20.0': + resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==} + cpu: [x64] + os: [win32] + + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.6.8': + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.20.6': + resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} + + '@types/estree@1.0.5': + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + + '@types/prop-types@15.7.12': + resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} + + '@types/react-dom@18.3.0': + resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} + + '@types/react@18.3.3': + resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} + + '@typescript-eslint/eslint-plugin@8.0.1': + resolution: {integrity: sha512-5g3Y7GDFsJAnY4Yhvk8sZtFfV6YNF2caLzjrRPUBzewjPCaj0yokePB4LJSobyCzGMzjZZYFbwuzbfDHlimXbQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/parser@8.0.1': + resolution: {integrity: sha512-5IgYJ9EO/12pOUwiBKFkpU7rS3IU21mtXzB81TNwq2xEybcmAZrE9qwDtsb5uQd9aVO9o0fdabFyAmKveXyujg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@8.0.1': + resolution: {integrity: sha512-NpixInP5dm7uukMiRyiHjRKkom5RIFA4dfiHvalanD2cF0CLUuQqxfg8PtEUo9yqJI2bBhF+pcSafqnG3UBnRQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.0.1': + resolution: {integrity: sha512-+/UT25MWvXeDX9YaHv1IS6KI1fiuTto43WprE7pgSMswHbn1Jm9GEM4Txp+X74ifOWV8emu2AWcbLhpJAvD5Ng==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/types@8.0.1': + resolution: {integrity: sha512-PpqTVT3yCA/bIgJ12czBuE3iBlM3g4inRSC5J0QOdQFAn07TYrYEQBBKgXH1lQpglup+Zy6c1fxuwTk4MTNKIw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.0.1': + resolution: {integrity: sha512-8V9hriRvZQXPWU3bbiUV4Epo7EvgM6RTs+sUmxp5G//dBGy402S7Fx0W0QkB2fb4obCF8SInoUzvTYtc3bkb5w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/utils@8.0.1': + resolution: {integrity: sha512-CBFR0G0sCt0+fzfnKaciu9IBsKvEKYwN9UZ+eeogK1fYHg4Qxk1yf/wLQkLXlq8wbU2dFlgAesxt8Gi76E8RTA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + '@typescript-eslint/visitor-keys@8.0.1': + resolution: {integrity: sha512-W5E+o0UfUcK5EgchLZsyVWqARmsM7v54/qEq6PY3YI5arkgmCzHiuk0zKSJJbm71V0xdRna4BGomkCTXz2/LkQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@vitejs/plugin-react@4.3.1': + resolution: {integrity: sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + autoprefixer@10.4.20: + resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.23.3: + resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase-css@2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + + caniuse-lite@1.0.30001651: + resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + debug@4.3.6: + resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + didyoumean@1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + electron-to-chromium@1.5.5: + resolution: {integrity: sha512-QR7/A7ZkMS8tZuoftC/jfqNkZLQO779SSW3YuZHP4eXpj3EffGLFcB/Xu9AAZQzLccTiCV+EmUo3ha4mQ9wnlA==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + + escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eslint-plugin-react-hooks@5.1.0-rc-fb9a90fa48-20240614: + resolution: {integrity: sha512-xsiRwaDNF5wWNC4ZHLut+x/YcAxksUd9Rizt7LaEn3bV8VyYRpXnRJQlLOfYaVy9esk4DFP4zPPnoNVjq5Gc0w==} + 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 + + eslint-plugin-react-refresh@0.4.9: + resolution: {integrity: sha512-QK49YrBAo5CLNLseZ7sZgvgTy21E6NEw22eZqc4teZfH8pxV3yXc9XXOYfUI6JNpw7mfHNkAeWtBxrTyykB6HA==} + peerDependencies: + eslint: '>=7' + + eslint-scope@8.0.2: + resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.0.0: + resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.8.0: + resolution: {integrity: sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + + espree@10.1.0: + resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + + foreground-child@3.3.0: + resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} + engines: {node: '>=14'} + + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.9.0: + resolution: {integrity: sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==} + engines: {node: '>=18'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-core-module@2.15.0: + resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsesc@2.5.2: + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} + + lilconfig@3.1.2: + resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} + engines: {node: '>=14'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} + engines: {node: '>=8.6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + + nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + node-releases@2.0.18: + resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + + postcss-import@15.1.0: + resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} + engines: {node: '>=14.0.0'} + peerDependencies: + postcss: ^8.0.0 + + postcss-js@4.0.1: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + + postcss-load-config@4.0.2: + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + + postcss-nested@6.2.0: + resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + + postcss-selector-parser@6.1.1: + resolution: {integrity: sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==} + engines: {node: '>=4'} + + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + + postcss@8.4.41: + resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + + react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + engines: {node: '>=0.10.0'} + + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + + read-cache@1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + hasBin: true + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rollup@4.20.0: + resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + tailwindcss@3.4.9: + resolution: {integrity: sha512-1SEOvRr6sSdV5IDf9iC+NU4dhwdqzF4zKKq3sAbasUWHEM6lsMhX+eNN5gkPx1BvLFEnZQEUFbXnGj8Qlp83Pg==} + engines: {node: '>=14.0.0'} + hasBin: true + + text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + + thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + + thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + + to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + ts-api-utils@1.3.0: + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + typescript-eslint@8.0.1: + resolution: {integrity: sha512-V3Y+MdfhawxEjE16dWpb7/IOgeXnLwAEEkS7v8oDqNcR1oYlqWhGH/iHqHdKVdpWme1VPZ0SoywXAkCqawj2eQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + typescript@5.5.4: + resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + engines: {node: '>=14.17'} + hasBin: true + + update-browserslist-db@1.1.0: + resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + vite@5.4.0: + resolution: {integrity: sha512-5xokfMX0PIiwCMCMb9ZJcMyh5wbBun0zUzKib+L65vAZ8GY9ePZMXxFrHbr/Kyll2+LSCY7xtERPpxkBDKngwg==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yaml@2.5.0: + resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} + engines: {node: '>= 14'} + hasBin: true + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@alloc/quick-lru@5.2.0': {} + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + + '@babel/code-frame@7.24.7': + dependencies: + '@babel/highlight': 7.24.7 + picocolors: 1.0.1 + + '@babel/compat-data@7.25.2': {} + + '@babel/core@7.25.2': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.24.7 + '@babel/generator': 7.25.0 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) + '@babel/helpers': 7.25.0 + '@babel/parser': 7.25.3 + '@babel/template': 7.25.0 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 + convert-source-map: 2.0.0 + debug: 4.3.6 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.25.0': + dependencies: + '@babel/types': 7.25.2 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 2.5.2 + + '@babel/helper-compilation-targets@7.25.2': + dependencies: + '@babel/compat-data': 7.25.2 + '@babel/helper-validator-option': 7.24.8 + browserslist: 4.23.3 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-module-imports@7.24.7': + dependencies: + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-imports': 7.24.7 + '@babel/helper-simple-access': 7.24.7 + '@babel/helper-validator-identifier': 7.24.7 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + + '@babel/helper-plugin-utils@7.24.8': {} + + '@babel/helper-simple-access@7.24.7': + dependencies: + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.24.8': {} + + '@babel/helper-validator-identifier@7.24.7': {} + + '@babel/helper-validator-option@7.24.8': {} + + '@babel/helpers@7.25.0': + dependencies: + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 + + '@babel/highlight@7.24.7': + dependencies: + '@babel/helper-validator-identifier': 7.24.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.1 + + '@babel/parser@7.25.3': + dependencies: + '@babel/types': 7.25.2 + + '@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + + '@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + + '@babel/template@7.25.0': + dependencies: + '@babel/code-frame': 7.24.7 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 + + '@babel/traverse@7.25.3': + dependencies: + '@babel/code-frame': 7.24.7 + '@babel/generator': 7.25.0 + '@babel/parser': 7.25.3 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 + debug: 4.3.6 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.25.2': + dependencies: + '@babel/helper-string-parser': 7.24.8 + '@babel/helper-validator-identifier': 7.24.7 + to-fast-properties: 2.0.0 + + '@esbuild/aix-ppc64@0.21.5': + optional: true + + '@esbuild/android-arm64@0.21.5': + optional: true + + '@esbuild/android-arm@0.21.5': + optional: true + + '@esbuild/android-x64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/freebsd-arm64@0.21.5': + optional: true + + '@esbuild/freebsd-x64@0.21.5': + optional: true + + '@esbuild/linux-arm64@0.21.5': + optional: true + + '@esbuild/linux-arm@0.21.5': + optional: true + + '@esbuild/linux-ia32@0.21.5': + optional: true + + '@esbuild/linux-loong64@0.21.5': + optional: true + + '@esbuild/linux-mips64el@0.21.5': + optional: true + + '@esbuild/linux-ppc64@0.21.5': + optional: true + + '@esbuild/linux-riscv64@0.21.5': + optional: true + + '@esbuild/linux-s390x@0.21.5': + optional: true + + '@esbuild/linux-x64@0.21.5': + optional: true + + '@esbuild/netbsd-x64@0.21.5': + optional: true + + '@esbuild/openbsd-x64@0.21.5': + optional: true + + '@esbuild/sunos-x64@0.21.5': + optional: true + + '@esbuild/win32-arm64@0.21.5': + optional: true + + '@esbuild/win32-ia32@0.21.5': + optional: true + + '@esbuild/win32-x64@0.21.5': + optional: true + + '@eslint-community/eslint-utils@4.4.0(eslint@9.8.0)': + dependencies: + eslint: 9.8.0 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.11.0': {} + + '@eslint/config-array@0.17.1': + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.6 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/eslintrc@3.1.0': + dependencies: + ajv: 6.12.6 + debug: 4.3.6 + espree: 10.1.0 + globals: 14.0.0 + ignore: 5.3.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.8.0': {} + + '@eslint/object-schema@2.1.4': {} + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.3.0': {} + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jridgewell/gen-mapping@0.3.5': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@rollup/rollup-android-arm-eabi@4.20.0': + optional: true + + '@rollup/rollup-android-arm64@4.20.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.20.0': + optional: true + + '@rollup/rollup-darwin-x64@4.20.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.20.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.20.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.20.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.20.0': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.20.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.20.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.20.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.20.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.20.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.20.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.20.0': + optional: true + + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.6 + + '@types/babel__generator@7.6.8': + dependencies: + '@babel/types': 7.25.2 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 + + '@types/babel__traverse@7.20.6': + dependencies: + '@babel/types': 7.25.2 + + '@types/estree@1.0.5': {} + + '@types/prop-types@15.7.12': {} + + '@types/react-dom@18.3.0': + dependencies: + '@types/react': 18.3.3 + + '@types/react@18.3.3': + dependencies: + '@types/prop-types': 15.7.12 + csstype: 3.1.3 + + '@typescript-eslint/eslint-plugin@8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)': + dependencies: + '@eslint-community/regexpp': 4.11.0 + '@typescript-eslint/parser': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.0.1 + '@typescript-eslint/type-utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.0.1 + eslint: 9.8.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4)': + dependencies: + '@typescript-eslint/scope-manager': 8.0.1 + '@typescript-eslint/types': 8.0.1 + '@typescript-eslint/typescript-estree': 8.0.1(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.0.1 + debug: 4.3.6 + eslint: 9.8.0 + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.0.1': + dependencies: + '@typescript-eslint/types': 8.0.1 + '@typescript-eslint/visitor-keys': 8.0.1 + + '@typescript-eslint/type-utils@8.0.1(eslint@9.8.0)(typescript@5.5.4)': + dependencies: + '@typescript-eslint/typescript-estree': 8.0.1(typescript@5.5.4) + '@typescript-eslint/utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + debug: 4.3.6 + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - eslint + - supports-color + + '@typescript-eslint/types@8.0.1': {} + + '@typescript-eslint/typescript-estree@8.0.1(typescript@5.5.4)': + dependencies: + '@typescript-eslint/types': 8.0.1 + '@typescript-eslint/visitor-keys': 8.0.1 + debug: 4.3.6 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.0.1(eslint@9.8.0)(typescript@5.5.4)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0) + '@typescript-eslint/scope-manager': 8.0.1 + '@typescript-eslint/types': 8.0.1 + '@typescript-eslint/typescript-estree': 8.0.1(typescript@5.5.4) + eslint: 9.8.0 + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/visitor-keys@8.0.1': + dependencies: + '@typescript-eslint/types': 8.0.1 + eslint-visitor-keys: 3.4.3 + + '@vitejs/plugin-react@4.3.1(vite@5.4.0)': + dependencies: + '@babel/core': 7.25.2 + '@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.25.2) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.2 + vite: 5.4.0 + transitivePeerDependencies: + - supports-color + + acorn-jsx@5.3.2(acorn@8.12.1): + dependencies: + acorn: 8.12.1 + + acorn@8.12.1: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-regex@5.0.1: {} + + ansi-regex@6.0.1: {} + + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.1: {} + + any-promise@1.3.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arg@5.0.2: {} + + argparse@2.0.1: {} + + array-union@2.1.0: {} + + autoprefixer@10.4.20(postcss@8.4.41): + dependencies: + browserslist: 4.23.3 + caniuse-lite: 1.0.30001651 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.0.1 + postcss: 8.4.41 + postcss-value-parser: 4.2.0 + + balanced-match@1.0.2: {} + + binary-extensions@2.3.0: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.23.3: + dependencies: + caniuse-lite: 1.0.30001651 + electron-to-chromium: 1.5.5 + node-releases: 2.0.18 + update-browserslist-db: 1.1.0(browserslist@4.23.3) + + callsites@3.1.0: {} + + camelcase-css@2.0.1: {} + + caniuse-lite@1.0.30001651: {} + + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + commander@4.1.1: {} + + concat-map@0.0.1: {} + + convert-source-map@2.0.0: {} + + cross-spawn@7.0.3: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + cssesc@3.0.0: {} + + csstype@3.1.3: {} + + debug@4.3.6: + dependencies: + ms: 2.1.2 + + deep-is@0.1.4: {} + + didyoumean@1.2.2: {} + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dlv@1.1.3: {} + + eastasianwidth@0.2.0: {} + + electron-to-chromium@1.5.5: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + + escalade@3.1.2: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + eslint-plugin-react-hooks@5.1.0-rc-fb9a90fa48-20240614(eslint@9.8.0): + dependencies: + eslint: 9.8.0 + + eslint-plugin-react-refresh@0.4.9(eslint@9.8.0): + dependencies: + eslint: 9.8.0 + + eslint-scope@8.0.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.0.0: {} + + eslint@9.8.0: + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0) + '@eslint-community/regexpp': 4.11.0 + '@eslint/config-array': 0.17.1 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.8.0 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.3.0 + '@nodelib/fs.walk': 1.2.8 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.6 + escape-string-regexp: 4.0.0 + eslint-scope: 8.0.2 + eslint-visitor-keys: 4.0.0 + espree: 10.1.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.1 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + + espree@10.1.0: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.0.0 + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + esutils@2.0.3: {} + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.2: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.7 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.17.1: + dependencies: + reusify: 1.0.4 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + + flatted@3.3.1: {} + + foreground-child@3.3.0: + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.1.0 + + fraction.js@4.3.7: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + gensync@1.0.0-beta.2: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@10.4.5: + dependencies: + foreground-child: 3.3.0 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 + path-scurry: 1.11.1 + + globals@11.12.0: {} + + globals@14.0.0: {} + + globals@15.9.0: {} + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + ignore: 5.3.1 + merge2: 1.4.1 + slash: 3.0.0 + + graphemer@1.4.0: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + ignore@5.3.1: {} + + import-fresh@3.3.0: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-core-module@2.15.0: + dependencies: + hasown: 2.0.2 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + is-path-inside@3.0.3: {} + + isexe@2.0.0: {} + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + jiti@1.21.6: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsesc@2.5.2: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@2.2.3: {} + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lilconfig@2.1.0: {} + + lilconfig@3.1.2: {} + + lines-and-columns@1.2.4: {} + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lru-cache@10.4.3: {} + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + merge2@1.4.1: {} + + micromatch@4.0.7: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + + minipass@7.1.2: {} + + ms@2.1.2: {} + + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + + nanoid@3.3.7: {} + + natural-compare@1.4.0: {} + + node-releases@2.0.18: {} + + normalize-path@3.0.0: {} + + normalize-range@0.1.2: {} + + object-assign@4.1.1: {} + + object-hash@3.0.0: {} + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + package-json-from-dist@1.0.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.2 + + path-type@4.0.0: {} + + picocolors@1.0.1: {} + + picomatch@2.3.1: {} + + pify@2.3.0: {} + + pirates@4.0.6: {} + + postcss-import@15.1.0(postcss@8.4.41): + dependencies: + postcss: 8.4.41 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.8 + + postcss-js@4.0.1(postcss@8.4.41): + dependencies: + camelcase-css: 2.0.1 + postcss: 8.4.41 + + postcss-load-config@4.0.2(postcss@8.4.41): + dependencies: + lilconfig: 3.1.2 + yaml: 2.5.0 + optionalDependencies: + postcss: 8.4.41 + + postcss-nested@6.2.0(postcss@8.4.41): + dependencies: + postcss: 8.4.41 + postcss-selector-parser: 6.1.1 + + postcss-selector-parser@6.1.1: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-value-parser@4.2.0: {} + + postcss@8.4.41: + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.1 + source-map-js: 1.2.0 + + prelude-ls@1.2.1: {} + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + + react-refresh@0.14.2: {} + + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + + read-cache@1.0.0: + dependencies: + pify: 2.3.0 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + resolve-from@4.0.0: {} + + resolve@1.22.8: + dependencies: + is-core-module: 2.15.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.0.4: {} + + rollup@4.20.0: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.20.0 + '@rollup/rollup-android-arm64': 4.20.0 + '@rollup/rollup-darwin-arm64': 4.20.0 + '@rollup/rollup-darwin-x64': 4.20.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.20.0 + '@rollup/rollup-linux-arm-musleabihf': 4.20.0 + '@rollup/rollup-linux-arm64-gnu': 4.20.0 + '@rollup/rollup-linux-arm64-musl': 4.20.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.20.0 + '@rollup/rollup-linux-riscv64-gnu': 4.20.0 + '@rollup/rollup-linux-s390x-gnu': 4.20.0 + '@rollup/rollup-linux-x64-gnu': 4.20.0 + '@rollup/rollup-linux-x64-musl': 4.20.0 + '@rollup/rollup-win32-arm64-msvc': 4.20.0 + '@rollup/rollup-win32-ia32-msvc': 4.20.0 + '@rollup/rollup-win32-x64-msvc': 4.20.0 + fsevents: 2.3.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + + semver@6.3.1: {} + + semver@7.6.3: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + signal-exit@4.1.0: {} + + slash@3.0.0: {} + + source-map-js@1.2.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.0.1 + + strip-json-comments@3.1.1: {} + + sucrase@3.35.0: + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + commander: 4.1.1 + glob: 10.4.5 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + tailwindcss@3.4.9: + dependencies: + '@alloc/quick-lru': 5.2.0 + arg: 5.0.2 + chokidar: 3.6.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.3.2 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.6 + lilconfig: 2.1.0 + micromatch: 4.0.7 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.0.1 + postcss: 8.4.41 + postcss-import: 15.1.0(postcss@8.4.41) + postcss-js: 4.0.1(postcss@8.4.41) + postcss-load-config: 4.0.2(postcss@8.4.41) + postcss-nested: 6.2.0(postcss@8.4.41) + postcss-selector-parser: 6.1.1 + resolve: 1.22.8 + sucrase: 3.35.0 + transitivePeerDependencies: + - ts-node + + text-table@0.2.0: {} + + thenify-all@1.6.0: + dependencies: + thenify: 3.3.1 + + thenify@3.3.1: + dependencies: + any-promise: 1.3.0 + + to-fast-properties@2.0.0: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + ts-api-utils@1.3.0(typescript@5.5.4): + dependencies: + typescript: 5.5.4 + + ts-interface-checker@0.1.13: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + typescript-eslint@8.0.1(eslint@9.8.0)(typescript@5.5.4): + dependencies: + '@typescript-eslint/eslint-plugin': 8.0.1(@typescript-eslint/parser@8.0.1(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.0.1(eslint@9.8.0)(typescript@5.5.4) + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - eslint + - supports-color + + typescript@5.5.4: {} + + update-browserslist-db@1.1.0(browserslist@4.23.3): + dependencies: + browserslist: 4.23.3 + escalade: 3.1.2 + picocolors: 1.0.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + vite@5.4.0: + dependencies: + esbuild: 0.21.5 + postcss: 8.4.41 + rollup: 4.20.0 + optionalDependencies: + fsevents: 2.3.3 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + + yallist@3.1.1: {} + + yaml@2.5.0: {} + + yocto-queue@0.1.0: {} diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 000000000..2e7af2b7f --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/public/mbw.png b/public/mbw.png new file mode 100644 index 0000000000000000000000000000000000000000..e439be691097122fd3807022d549d77067723bb3 GIT binary patch literal 79080 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 JnWV|*{{xfQ4)*{6 literal 0 HcmV?d00001 diff --git a/src/App.css b/src/App.css new file mode 100644 index 000000000..e69de29bb diff --git a/src/App.tsx b/src/App.tsx new file mode 100644 index 000000000..9aab2a9b9 --- /dev/null +++ b/src/App.tsx @@ -0,0 +1,192 @@ +import React, { useState, useEffect } from 'react'; +import './App.css'; +import WordInput from './components/input'; +import Keyboard from './components/keyboard'; + +const App: React.FC = () => { + const maxAttempts = 6; + const wordLength = 5; + const possibleWords = ['APPLE', 'BANANA', 'ORANGE', 'LEMON', 'GRAPE']; // Add more words as needed + const [randomWord, setRandomWord] = useState(''); + const [guesses, setGuesses] = useState(Array(maxAttempts).fill(Array(wordLength).fill(""))); + const [currentAttempt, setCurrentAttempt] = useState(0); + const [currentGuess, setCurrentGuess] = useState(Array(wordLength).fill("")); + const [feedback, setFeedback] = useState(Array(maxAttempts).fill(Array(wordLength).fill(""))); + const [gameOver, setGameOver] = useState(false); + const [message, setMessage] = useState(""); + + useEffect(() => { + const randomIndex = Math.floor(Math.random() * possibleWords.length); + setRandomWord(possibleWords[randomIndex]); + }, []); + + const handleKeyClick = (letter: string) => { + if (!gameOver) { + const emptyIndex = currentGuess.findIndex(char => char === ""); + if (emptyIndex !== -1) { + const newGuess = [...currentGuess]; + newGuess[emptyIndex] = letter; + setCurrentGuess(newGuess); + + const nextInput = document.getElementById(`input-${currentAttempt}-${emptyIndex}`); + if (nextInput && emptyIndex < wordLength - 1) { + (nextInput as HTMLInputElement).focus(); + } + } + } + }; + + const handleChange = (index: number, event: React.ChangeEvent) => { + if (!gameOver) { + const newGuess = [...currentGuess]; + const value = event.target.value.toUpperCase(); + + if (value.length <= 1 && /^[A-Z]?$/.test(value)) { + newGuess[index] = value; + setCurrentGuess(newGuess); + + if (value && index < wordLength - 1) { + const nextInput = document.getElementById(`input-${currentAttempt}-${index + 1}`); + if (nextInput) { + (nextInput as HTMLInputElement).focus(); + } + } + } + } + }; + + const handleKeyDown = (index: number, event: React.KeyboardEvent) => { + if (!gameOver) { + if (event.key === "Backspace") { + const prevInput = document.getElementById(`input-${currentAttempt}-${index - 1}`); + if (currentGuess[index]) { + const newGuess = [...currentGuess]; + newGuess[index] = ''; + setCurrentGuess(newGuess); + } else if (prevInput && index > 0) { + (prevInput as HTMLInputElement).focus(); + } + } else if (event.key === "ArrowRight" && index < wordLength - 1) { + const nextInput = document.getElementById(`input-${currentAttempt}-${index + 1}`); + if (nextInput) { + (nextInput as HTMLInputElement).focus(); + } + } else if (event.key === "ArrowLeft" && index > 0) { + const prevInput = document.getElementById(`input-${currentAttempt}-${index - 1}`); + if (prevInput) { + (prevInput as HTMLInputElement).focus(); + } + } + } + }; + + const handleSubmit = (event: React.FormEvent) => { + event.preventDefault(); + if (currentAttempt < maxAttempts && !gameOver) { + if (currentGuess.every(char => char.length === 1)) { + const guessWord = currentGuess.join(''); + if (!possibleWords.includes(guessWord)) { + setMessage('Invalid word. Please try again.'); + return; + } + + const updatedGuesses = [...guesses]; + updatedGuesses[currentAttempt] = currentGuess; + setGuesses(updatedGuesses); + + const newFeedback = currentGuess.map((char, index) => { + if (char === randomWord[index]) { + return 'correct'; + } else if (randomWord.includes(char)) { + return 'incorrect-position'; + } + return 'incorrect'; + }); + + const updatedFeedback = [...feedback]; + updatedFeedback[currentAttempt] = newFeedback; + setFeedback(updatedFeedback); + + if (guessWord === randomWord) { + setGameOver(true); + setMessage('Congratulations, you guessed the word!'); + } else if (currentAttempt + 1 === maxAttempts) { + setGameOver(true); + setMessage(`Game over! The correct word was ${randomWord}.`); + } else { + setCurrentAttempt(prev => prev + 1); + setCurrentGuess(Array(wordLength).fill('')); + const firstInput = document.getElementById(`input-${currentAttempt + 1}-0`); + if (firstInput) { + (firstInput as HTMLInputElement).focus(); + } + setMessage(''); + } + } else { + setMessage('Please complete your guess before submitting.'); + } + } + }; + + const handlePlayAgain = () => { + setGuesses(Array(maxAttempts).fill(Array(wordLength).fill(""))); + setCurrentAttempt(0); + setCurrentGuess(Array(wordLength).fill("")); + setFeedback(Array(maxAttempts).fill(Array(wordLength).fill(""))); + setGameOver(false); + const randomIndex = Math.floor(Math.random() * possibleWords.length); + setRandomWord(possibleWords[randomIndex]); + const firstInput = document.getElementById(`input-0-0`); + if (firstInput) { + (firstInput as HTMLInputElement).focus(); + } + setMessage(''); + }; + + return ( +
+

Welcome To Ed-Wordle

+ + + + {gameOver && ( +
+ {message} + +
+ )} + + {!gameOver && ( + <> +
+ +
+ + + + )} + + {message &&
{message}
} +
+ ); +}; + +export default App; diff --git a/src/assets/mbw.png b/src/assets/mbw.png new file mode 100644 index 0000000000000000000000000000000000000000..e439be691097122fd3807022d549d77067723bb3 GIT binary patch literal 79080 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 JnWV|*{{xfQ4)*{6 literal 0 HcmV?d00001 diff --git a/src/components/input.tsx b/src/components/input.tsx new file mode 100644 index 000000000..78f68abe4 --- /dev/null +++ b/src/components/input.tsx @@ -0,0 +1,49 @@ +import React from 'react'; + +interface WordInputProps { + currentGuess: string[]; + guesses: string[][]; + feedback: string[][]; + currentAttempt: number; + maxAttempts: number; + handleChange: (index: number, event: React.ChangeEvent) => void; + handleKeyDown: (index: number, event: React.KeyboardEvent) => void; +} + +const WordInput: React.FC = ({ + currentGuess, + guesses, + feedback, + currentAttempt, + handleChange, + handleKeyDown, +}) => { + return ( +
+ {guesses.map((guessRow, rowIndex) => ( +
+ {guessRow.map((char, charIndex) => ( + handleChange(charIndex, e)} + onKeyDown={(e) => handleKeyDown(charIndex, e)} + maxLength={1} + className={`border-2 rounded-lg p-2 m-1 text-center text-xl w-12 h-12 font-bold ${ + feedback[rowIndex][charIndex] === 'correct' ? 'bg-green-500 text-white' : + feedback[rowIndex][charIndex] === 'incorrect-position' ? 'bg-yellow-500 text-white' : + feedback[rowIndex][charIndex] === 'incorrect' ? 'bg-gray-500 text-white' : 'bg-white text-black' + }`} + disabled={rowIndex !== currentAttempt} + autoFocus={rowIndex === currentAttempt && charIndex === 0} + /> + ))} +
+ ))} +
+ ); +}; + +export default WordInput; diff --git a/src/components/keyboard.tsx b/src/components/keyboard.tsx new file mode 100644 index 000000000..4b1d8004d --- /dev/null +++ b/src/components/keyboard.tsx @@ -0,0 +1,25 @@ +import React from 'react'; + +interface KeyboardProps { + handleKeyClick: (letter: string) => void; +} + +const Keyboard: React.FC = ({ handleKeyClick }) => { + const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split(''); + + return ( +
+ {alphabet.map((letter) => ( + + ))} +
+ ); +}; + +export default Keyboard; diff --git a/src/index.css b/src/index.css new file mode 100644 index 000000000..92860dd33 --- /dev/null +++ b/src/index.css @@ -0,0 +1,31 @@ + @tailwind base; + @tailwind components; + @tailwind utilities; + @keyframes flip { + 0% { + transform: rotateX(0deg); + } + 50% { + transform: rotateX(90); + } + } + + @keyframes flip { + 0% { + transform: rotateX(0deg); + } + 50% { + transform: rotateX(90deg); + } + 100% { + transform: rotateX(0deg); + } + } + + .letter-box { + transition: background-color 0.3s ease, border-color 0.3s ease; + } + + .letter-box.animate { + animation: flip 0.5s ease; + } \ No newline at end of file diff --git a/src/main.tsx b/src/main.tsx new file mode 100644 index 000000000..6f4ac9bcc --- /dev/null +++ b/src/main.tsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import App from './App.tsx' +import './index.css' + +createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 000000000..11f02fe2a --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 000000000..c9f6a555b --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,11 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: [ + "./index.html", + "./src/**/*.{js,ts,jsx,tsx}", + ], + theme: { + extend: {}, + }, + plugins: [], +} \ No newline at end of file diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 000000000..f0a235055 --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "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 + }, + "include": ["src"] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 000000000..1ffef600d --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 000000000..0d3d71446 --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "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 + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 000000000..5a33944a9 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react()], +}) From 448a1114a37c78a35dacc43650b9350474d48b22 Mon Sep 17 00:00:00 2001 From: mohamed babela Date: Sun, 11 Aug 2024 18:28:22 +0100 Subject: [PATCH 2/4] add docker and deploy --- Dockerfile | 16 +++++++ README.md | 53 ++--------------------- docker-compose.yml | 9 ++++ package.json | 68 ++++++++++++++++-------------- src/vite-env.d.ts => vite-env.d.ts | 0 vite.config.ts | 5 ++- 6 files changed, 68 insertions(+), 83 deletions(-) create mode 100644 Dockerfile create mode 100644 docker-compose.yml rename src/vite-env.d.ts => vite-env.d.ts (100%) diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..a93251eb4 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM node:18 + + +COPY . . + +RUN npm install -g pnpm + + + +RUN pnpm install +RUN pnpm build + + +EXPOSE 4173 + +CMD [ "pnpm", "start" ] diff --git a/README.md b/README.md index 74872fd4a..b965ef06e 100644 --- a/README.md +++ b/README.md @@ -1,50 +1,3 @@ -# 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: - -- Configure the top-level `parserOptions` property like this: - -```js -export default tseslint.config({ - languageOptions: { - // other options... - parserOptions: { - project: ['./tsconfig.node.json', './tsconfig.app.json'], - tsconfigRootDir: import.meta.dirname, - }, - }, -}) -``` - -- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked` -- Optionally add `...tseslint.configs.stylisticTypeChecked` -- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config: - -```js -// eslint.config.js -import react from 'eslint-plugin-react' - -export default tseslint.config({ - // Set the react version - settings: { react: { version: '18.3' } }, - plugins: { - // Add the react plugin - react, - }, - rules: { - // other rules... - // Enable its recommended rules - ...react.configs.recommended.rules, - ...react.configs['jsx-runtime'].rules, - }, -}) -``` +# How To Use + > Run docker compose up --build + and in your browser enter `http://localhost:3000/` \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..d393f30f7 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,9 @@ +version: '3.8' +services: + wordle: + container_name: Wordle + build: . + ports: + - 3000:4173 + volumes: + - .:/app \ No newline at end of file diff --git a/package.json b/package.json index 93eaf591e..92996d3ed 100644 --- a/package.json +++ b/package.json @@ -1,33 +1,37 @@ { - "name": "wordle", - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "dev": "vite", - "build": "tsc -b && vite build", - "lint": "eslint .", - "preview": "vite preview" - }, - "dependencies": { - "react": "^18.3.1", - "react-dom": "^18.3.1" - }, - "devDependencies": { - "@eslint/js": "^9.8.0", - "@types/react": "^18.3.3", - "@types/react-dom": "^18.3.0", - "@vitejs/plugin-react": "^4.3.1", - "autoprefixer": "^10.4.20", - "eslint": "^9.8.0", - "eslint-plugin-react-hooks": "^5.1.0-rc.0", - "eslint-plugin-react-refresh": "^0.4.9", - "globals": "^15.9.0", - "postcss": "^8.4.41", - "tailwindcss": "^3.4.9", - "typescript": "^5.5.3", - "typescript-eslint": "^8.0.0", - "vite": "^5.4.0" - }, - "packageManager": "pnpm@9.6.0+sha512.38dc6fba8dba35b39340b9700112c2fe1e12f10b17134715a4aa98ccf7bb035e76fd981cf0bb384dfa98f8d6af5481c2bef2f4266a24bfa20c34eb7147ce0b5e" -} + "name": "wordle", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview", + "start": "vite preview" + }, + "dependencies": { + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@eslint/js": "^9.8.0", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.20", + "eslint": "^9.8.0", + "eslint-plugin-react-hooks": "^5.1.0-rc.0", + "eslint-plugin-react-refresh": "^0.4.9", + "globals": "^15.9.0", + "postcss": "^8.4.41", + "tailwindcss": "^3.4.9", + "typescript": "^5.5.3", + "typescript-eslint": "^8.0.0", + "vite": "^5.4.0" + }, + "packageManager": "pnpm@9.6.0+sha512.38dc6fba8dba35b39340b9700112c2fe1e12f10b17134715a4aa98ccf7bb035e76fd981cf0bb384dfa98f8d6af5481c2bef2f4266a24bfa20c34eb7147ce0b5e", + "overrides": { + "fsevents": "^2.3.3" + } +} \ No newline at end of file diff --git a/src/vite-env.d.ts b/vite-env.d.ts similarity index 100% rename from src/vite-env.d.ts rename to vite-env.d.ts diff --git a/vite.config.ts b/vite.config.ts index 5a33944a9..803e66449 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,7 +1,10 @@ import { defineConfig } from 'vite' import react from '@vitejs/plugin-react' -// https://vitejs.dev/config/ export default defineConfig({ plugins: [react()], + preview: { + host: true, + port: 4173 + } }) From 64a72bcc4d9c52c85866859a13d824249cb9d71a Mon Sep 17 00:00:00 2001 From: Mohamed Babela <60394951+naahio@users.noreply.github.com> Date: Sun, 11 Aug 2024 18:30:33 +0100 Subject: [PATCH 3/4] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b965ef06e..6bfb8a252 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # How To Use - > Run docker compose up --build - and in your browser enter `http://localhost:3000/` \ No newline at end of file + > Run `docker compose up` --build + > and in your browser enter `http://localhost:3000/` From 42f892d5ce9a71a2ef873f7f8f76d670211840d4 Mon Sep 17 00:00:00 2001 From: Mohamed Babela <60394951+naahio@users.noreply.github.com> Date: Sun, 11 Aug 2024 18:30:45 +0100 Subject: [PATCH 4/4] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6bfb8a252..83f546cf3 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # How To Use - > Run `docker compose up` --build + > Run `docker compose up --build` > and in your browser enter `http://localhost:3000/`