From 6cade47005782d8acaaab7aacf5b3c7147d1b893 Mon Sep 17 00:00:00 2001 From: Akashbellary Date: Fri, 31 Oct 2025 15:44:07 +0530 Subject: [PATCH 1/2] Add ekart-aws-localstack sample project --- ekart-aws-localstack | 1 + 1 file changed, 1 insertion(+) create mode 160000 ekart-aws-localstack diff --git a/ekart-aws-localstack b/ekart-aws-localstack new file mode 160000 index 0000000..dd54f36 --- /dev/null +++ b/ekart-aws-localstack @@ -0,0 +1 @@ +Subproject commit dd54f360d151a95ea08b84d7fa4812da17098463 From a686f0a6a8cca4aa1f8b063492ae6d735b8189b2 Mon Sep 17 00:00:00 2001 From: Akashbellary Date: Fri, 31 Oct 2025 15:59:24 +0530 Subject: [PATCH 2/2] Add ekart-aws-localstack project files --- ekart-aws-localstack | 1 - ekart-aws-localstack/.env.example | 4 + ekart-aws-localstack/.gitignore | 51 + ekart-aws-localstack/Makefile | 176 + ekart-aws-localstack/README.md | 236 + ekart-aws-localstack/docker-compose.yml | 94 + ekart-aws-localstack/docs/SUMMARY.md | 74 + .../docs/api-documentation.md | 153 + ekart-aws-localstack/docs/architecture.md | 80 + .../ekart_aws_services_arch.png | Bin 0 -> 426466 bytes ekart-aws-localstack/frontend/.env.example | 17 + ekart-aws-localstack/frontend/.env.local | 16 + .../frontend/.env.local.example | 2 + ekart-aws-localstack/frontend/Dockerfile | 6 + ekart-aws-localstack/frontend/next-env.d.ts | 5 + ekart-aws-localstack/frontend/next.config.js | 9 + .../frontend/package-lock.json | 6688 +++++++++++++++++ ekart-aws-localstack/frontend/package.json | 47 + ekart-aws-localstack/frontend/pnpm-lock.yaml | 4792 ++++++++++++ .../frontend/postcss.config.js | 6 + .../frontend/src/app/auth/login/page.tsx | 125 + .../frontend/src/app/auth/register/page.tsx | 203 + .../src/app/auth/seller-register/page.tsx | 203 + .../frontend/src/app/cart/page.tsx | 235 + .../frontend/src/app/checkout/page.tsx | 232 + .../src/app/checkout/success/page.tsx | 80 + .../frontend/src/app/globals.css | 32 + .../frontend/src/app/layout.tsx | 32 + .../frontend/src/app/orders/page.tsx | 137 + .../frontend/src/app/page.tsx | 44 + .../frontend/src/app/products/[id]/page.tsx | 70 + .../frontend/src/app/products/page.tsx | 68 + .../src/app/seller/analytics/page.tsx | 177 + .../src/app/seller/dashboard/page.tsx | 274 + .../frontend/src/app/seller/orders/page.tsx | 140 + .../src/app/seller/products/new/page.tsx | 266 + .../frontend/src/app/seller/products/page.tsx | 179 + .../frontend/src/app/seller/register/page.tsx | 222 + .../frontend/src/components/common/Footer.tsx | 55 + .../frontend/src/components/common/Header.tsx | 101 + .../src/components/common/Loading.tsx | 7 + .../src/components/product/ProductCard.tsx | 119 + .../src/components/product/ProductGrid.tsx | 34 + .../frontend/src/components/ui/Button.tsx | 48 + .../frontend/src/components/ui/Card.tsx | 69 + .../frontend/src/components/ui/Input.tsx | 37 + ekart-aws-localstack/frontend/src/lib/api.ts | 49 + .../frontend/src/lib/config.ts | 6 + .../frontend/src/lib/utils.ts | 6 + .../frontend/tailwind.config.js | 12 + ekart-aws-localstack/frontend/tsconfig.json | 43 + .../cloudformation/api-gateway.yml | 55 + .../infrastructure/cloudformation/cognito.yml | 63 + .../cloudformation/dynamodb.yml | 130 + .../infrastructure/cloudformation/lambda.yml | 30 + .../infrastructure/cloudformation/main.yml | 164 + .../infrastructure/cloudformation/s3.yml | 19 + .../lambda-functions/auth-api/handler.py | 291 + .../auth-api/requirements.txt | 1 + .../lambda-functions/auth-api/six.py | 1003 +++ .../lambda-functions/cart-api/handler.py | 194 + .../cart-api/requirements.txt | 2 + .../lambda-functions/cart-api/six.py | 1003 +++ .../inventory-updater/Dockerfile | 5 + .../inventory-updater/handler.py | 21 + .../inventory-updater/requirements.txt | 1 + .../notification-sender/Dockerfile | 5 + .../notification-sender/handler.py | 21 + .../notification-sender/requirements.txt | 1 + .../order-processor/Dockerfile | 5 + .../order-processor/handler.py | 32 + .../order-processor/requirements.txt | 1 + .../lambda-functions/orders-api/handler.py | 262 + .../orders-api/requirements.txt | 2 + .../lambda-functions/orders-api/six.py | 1003 +++ .../payment-processor/Dockerfile | 5 + .../payment-processor/handler.py | 67 + .../payment-processor/requirements.txt | 1 + .../lambda-functions/payment-processor/six.py | 1003 +++ .../lambda-functions/products-api/handler.py | 256 + .../products-api/requirements.txt | 1 + .../lambda-functions/products-api/six.py | 1003 +++ .../scripts/cleanup-serverless.py | 137 + .../scripts/configure-frontend.py | 61 + .../scripts/deploy-infrastructure.py | 192 + .../scripts/deploy-serverless.py | 695 ++ ekart-aws-localstack/scripts/seed.py | 128 + ekart-aws-localstack/scripts/setup-local.sh | 32 + .../scripts/test-serverless-apis.py | 261 + .../scripts/wait-for-localstack.sh | 15 + ekart-aws-localstack/serverless-config.json | 10 + 91 files changed, 23942 insertions(+), 1 deletion(-) delete mode 160000 ekart-aws-localstack create mode 100644 ekart-aws-localstack/.env.example create mode 100644 ekart-aws-localstack/.gitignore create mode 100644 ekart-aws-localstack/Makefile create mode 100644 ekart-aws-localstack/README.md create mode 100644 ekart-aws-localstack/docker-compose.yml create mode 100644 ekart-aws-localstack/docs/SUMMARY.md create mode 100644 ekart-aws-localstack/docs/api-documentation.md create mode 100644 ekart-aws-localstack/docs/architecture.md create mode 100644 ekart-aws-localstack/ekart_aws_services_arch.png create mode 100644 ekart-aws-localstack/frontend/.env.example create mode 100644 ekart-aws-localstack/frontend/.env.local create mode 100644 ekart-aws-localstack/frontend/.env.local.example create mode 100644 ekart-aws-localstack/frontend/Dockerfile create mode 100644 ekart-aws-localstack/frontend/next-env.d.ts create mode 100644 ekart-aws-localstack/frontend/next.config.js create mode 100644 ekart-aws-localstack/frontend/package-lock.json create mode 100644 ekart-aws-localstack/frontend/package.json create mode 100644 ekart-aws-localstack/frontend/pnpm-lock.yaml create mode 100644 ekart-aws-localstack/frontend/postcss.config.js create mode 100644 ekart-aws-localstack/frontend/src/app/auth/login/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/auth/register/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/auth/seller-register/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/cart/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/checkout/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/checkout/success/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/globals.css create mode 100644 ekart-aws-localstack/frontend/src/app/layout.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/orders/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/products/[id]/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/products/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/analytics/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/dashboard/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/orders/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/products/new/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/products/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/app/seller/register/page.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/common/Footer.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/common/Header.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/common/Loading.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/product/ProductCard.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/product/ProductGrid.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/ui/Button.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/ui/Card.tsx create mode 100644 ekart-aws-localstack/frontend/src/components/ui/Input.tsx create mode 100644 ekart-aws-localstack/frontend/src/lib/api.ts create mode 100644 ekart-aws-localstack/frontend/src/lib/config.ts create mode 100644 ekart-aws-localstack/frontend/src/lib/utils.ts create mode 100644 ekart-aws-localstack/frontend/tailwind.config.js create mode 100644 ekart-aws-localstack/frontend/tsconfig.json create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/api-gateway.yml create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/cognito.yml create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/dynamodb.yml create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/lambda.yml create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/main.yml create mode 100644 ekart-aws-localstack/infrastructure/cloudformation/s3.yml create mode 100644 ekart-aws-localstack/lambda-functions/auth-api/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/auth-api/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/auth-api/six.py create mode 100644 ekart-aws-localstack/lambda-functions/cart-api/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/cart-api/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/cart-api/six.py create mode 100644 ekart-aws-localstack/lambda-functions/inventory-updater/Dockerfile create mode 100644 ekart-aws-localstack/lambda-functions/inventory-updater/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/inventory-updater/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/notification-sender/Dockerfile create mode 100644 ekart-aws-localstack/lambda-functions/notification-sender/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/notification-sender/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/order-processor/Dockerfile create mode 100644 ekart-aws-localstack/lambda-functions/order-processor/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/order-processor/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/orders-api/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/orders-api/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/orders-api/six.py create mode 100644 ekart-aws-localstack/lambda-functions/payment-processor/Dockerfile create mode 100644 ekart-aws-localstack/lambda-functions/payment-processor/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/payment-processor/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/payment-processor/six.py create mode 100644 ekart-aws-localstack/lambda-functions/products-api/handler.py create mode 100644 ekart-aws-localstack/lambda-functions/products-api/requirements.txt create mode 100644 ekart-aws-localstack/lambda-functions/products-api/six.py create mode 100644 ekart-aws-localstack/scripts/cleanup-serverless.py create mode 100644 ekart-aws-localstack/scripts/configure-frontend.py create mode 100644 ekart-aws-localstack/scripts/deploy-infrastructure.py create mode 100644 ekart-aws-localstack/scripts/deploy-serverless.py create mode 100644 ekart-aws-localstack/scripts/seed.py create mode 100644 ekart-aws-localstack/scripts/setup-local.sh create mode 100644 ekart-aws-localstack/scripts/test-serverless-apis.py create mode 100644 ekart-aws-localstack/scripts/wait-for-localstack.sh create mode 100644 ekart-aws-localstack/serverless-config.json diff --git a/ekart-aws-localstack b/ekart-aws-localstack deleted file mode 160000 index dd54f36..0000000 --- a/ekart-aws-localstack +++ /dev/null @@ -1 +0,0 @@ -Subproject commit dd54f360d151a95ea08b84d7fa4812da17098463 diff --git a/ekart-aws-localstack/.env.example b/ekart-aws-localstack/.env.example new file mode 100644 index 0000000..a8daef1 --- /dev/null +++ b/ekart-aws-localstack/.env.example @@ -0,0 +1,4 @@ +# Backend Configuration +ENV=development +LOCALSTACK_ENDPOINT=http://localhost:4566 +AWS_REGION=us-east-1 diff --git a/ekart-aws-localstack/.gitignore b/ekart-aws-localstack/.gitignore new file mode 100644 index 0000000..5569ee8 --- /dev/null +++ b/ekart-aws-localstack/.gitignore @@ -0,0 +1,51 @@ +# Node +node_modules/ +.next/ + +# Python +__pycache__/ +*.pyc +*.pyo +*.pyd +.env +.venv + +# LocalStack +/tmp/localstack +logs/ +backup/ + +# Docker +*.log +*.pid + +# VSCode +.vscode/ + +# OS +.DS_Store +Thumbs.db + +# Ignore installed Python package dirs in each lambda-functions subfolder +lambda-functions/*/bin/ +lambda-functions/*/boto3/ +lambda-functions/*/boto3-*.dist-info/ +lambda-functions/*/botocore/ +lambda-functions/*/botocore-*.dist-info/ +lambda-functions/*/dateutil/ +lambda-functions/*/jmespath/ +lambda-functions/*/jmespath-*.dist-info/ +lambda-functions/*/jwt/ +lambda-functions/*/PyJWT-*.dist-info/ +lambda-functions/*/python_dateutil-*.dist-info/ +lambda-functions/*/s3transfer/ +lambda-functions/*/s3transfer-*.dist-info/ +lambda-functions/*/six-*.dist-info/ +lambda-functions/*/urllib3/ +lambda-functions/*/urllib3-*.dist-info/ +lambda-functions/*/__pycache__/ +lambda-functions/*/function.zip +# Do NOT ignore handler.py, requirements.txt, six.py in any lambda-functions subfolder +!lambda-functions/*/handler.py +!lambda-functions/*/requirements.txt +!lambda-functions/*/six.py diff --git a/ekart-aws-localstack/Makefile b/ekart-aws-localstack/Makefile new file mode 100644 index 0000000..586fd9d --- /dev/null +++ b/ekart-aws-localstack/Makefile @@ -0,0 +1,176 @@ +.PHONY: help install start stop restart logs test clean build deploy + +# Default environment +ENV ?= dev + +# Colors for output +BLUE := \033[34m +GREEN := \033[32m +RED := \033[31m +RESET := \033[0m + +help: ## Show this help message + @echo "$(BLUE)EKart Store - Available Commands$(RESET)" + @echo "" + @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "$(GREEN)%-15s$(RESET) %s\n", $$1, $$2}' + +install: ## Install all dependencies + @echo "$(BLUE)Installing dependencies...$(RESET)" + # Backend dependencies + cd backend && pip install -r requirements.txt + # Frontend dependencies + cd frontend && npm install + # Lambda dependencies + cd lambda-functions/order-processor && pip install -r requirements.txt + cd lambda-functions/inventory-updater && pip install -r requirements.txt + cd lambda-functions/payment-processor && pip install -r requirements.txt + cd lambda-functions/notification-sender && pip install -r requirements.txt + @echo "$(GREEN)Dependencies installed successfully!$(RESET)" + +start: ## Start all services (LocalStack, Backend, Frontend) + @echo "$(BLUE)Starting EKart Store...$(RESET)" + # Start LocalStack + docker-compose up -d localstack + # Wait for LocalStack to be ready + ./scripts/wait-for-localstack.sh + # Deploy infrastructure + make deploy-infra + # Start backend + cd backend && uvicorn main:app --host 0.0.0.0 --port 8000 --reload & + # Start frontend + cd frontend && npm run dev & + @echo "$(GREEN)All services started!$(RESET)" + @echo "Frontend: http://localhost:3000" + @echo "Backend API: http://localhost:8000" + @echo "API Docs: http://localhost:8000/api/docs" + +stop: ## Stop all services + @echo "$(BLUE)Stopping services...$(RESET)" + docker-compose down + pkill -f "uvicorn main:app" || true + pkill -f "npm run dev" || true + @echo "$(GREEN)All services stopped!$(RESET)" + +restart: stop start ## Restart all services + +ready: ## Check if all services are ready + @echo "$(BLUE)Checking service health...$(RESET)" + # Check LocalStack + curl -s http://localhost:4566/_localstack/health | jq . || echo "$(RED)LocalStack not ready$(RESET)" + # Check Backend + curl -s http://localhost:8000/health | jq . || echo "$(RED)Backend not ready$(RESET)" + # Check Frontend + curl -s http://localhost:3000 > /dev/null && echo "$(GREEN)Frontend ready$(RESET)" || echo "$(RED)Frontend not ready$(RESET)" + +logs: ## Show logs from all services + docker-compose logs -f localstack & + tail -f backend/app.log & + wait + +test: ## Run all tests + @echo "$(BLUE)Running tests...$(RESET)" + # Backend tests + cd backend && python -m pytest tests/ -v + # Frontend tests + cd frontend && npm run test + # Integration tests + python scripts/test-integration.py + @echo "$(GREEN)All tests completed!$(RESET)" + +test-ci: ## Run tests in CI mode + @echo "$(BLUE)Running CI tests...$(RESET)" + cd backend && python -m pytest tests/ -v --junitxml=test-results.xml + cd frontend && npm run test:ci + python scripts/test-integration.py --ci + +build: ## Build all components + @echo "$(BLUE)Building components...$(RESET)" + # Build backend Docker image + cd backend && docker build -t ekart-backend:latest . + # Build frontend + cd frontend && npm run build + # Build Lambda functions + cd lambda-functions/order-processor && docker build -t ekart-lambda-order-processor:latest . + cd lambda-functions/inventory-updater && docker build -t ekart-lambda-inventory-updater:latest . + cd lambda-functions/payment-processor && docker build -t ekart-lambda-payment-processor:latest . + cd lambda-functions/notification-sender && docker build -t ekart-lambda-notification-sender:latest . + @echo "$(GREEN)Build completed!$(RESET)" + +deploy-infra: ## Deploy infrastructure to LocalStack + @echo "$(BLUE)Deploying infrastructure...$(RESET)" + # Deploy CloudFormation stacks + aws --endpoint-url=http://localhost:4566 cloudformation deploy \ + --template-file infrastructure/cloudformation/main.yml \ + --stack-name ekart-$(ENV) \ + --parameter-overrides Environment=$(ENV) \ + --capabilities CAPABILITY_IAM + # Deploy Lambda functions + ./scripts/deploy-lambdas.sh + @echo "$(GREEN)Infrastructure deployed!$(RESET)" + +seed-data: ## Seed database with sample data + @echo "$(BLUE)Seeding database...$(RESET)" + python scripts/seed-data.py + @echo "$(GREEN)Database seeded!$(RESET)" + +clean: ## Clean up containers, images, and build artifacts + @echo "$(BLUE)Cleaning up...$(RESET)" + docker-compose down -v --remove-orphans + docker system prune -f + cd backend && rm -rf __pycache__ .pytest_cache + cd frontend && rm -rf .next node_modules/.cache + @echo "$(GREEN)Cleanup completed!$(RESET)" + +dev-setup: install deploy-infra seed-data ## Complete development setup + @echo "$(GREEN)Development environment ready!$(RESET)" + @echo "Run 'make start' to begin development" + +monitor: ## Open monitoring dashboard + @echo "$(BLUE)Opening monitoring dashboard...$(RESET)" + open http://localhost:4566/_localstack/cockpit || xdg-open http://localhost:4566/_localstack/cockpit + +# Environment-specific targets +dev: ENV := dev +dev: dev-setup ## Setup development environment + +staging: ENV := staging +staging: build deploy-infra ## Deploy to staging + +production: ENV := prod +production: build deploy-infra ## Deploy to production + +# Docker compose shortcuts +up: ## Start services with docker-compose + docker-compose up -d + +down: ## Stop services with docker-compose + docker-compose down + +ps: ## Show running containers + docker-compose ps + +# Utility targets +backend-shell: ## Open backend shell + cd backend && python -c "from main import app; import IPython; IPython.embed()" + +frontend-shell: ## Open frontend Node.js REPL + cd frontend && npx ts-node + +aws-shell: ## Open AWS CLI with LocalStack endpoint + aws --endpoint-url=http://localhost:4566 s3 ls + +format: ## Format code + cd backend && black . && isort . + cd frontend && npm run format + +lint: ## Lint code + cd backend && flake8 . && mypy . + cd frontend && npm run lint + +docs: ## Generate documentation + cd backend && pdoc --html --output-dir docs . + cd frontend && npm run build-docs + +backup: ## Backup LocalStack data + docker-compose exec localstack ls -la /tmp/localstack + docker cp $$(docker-compose ps -q localstack):/tmp/localstack ./backup-$$(date +%Y%m%d_%H%M%S) diff --git a/ekart-aws-localstack/README.md b/ekart-aws-localstack/README.md new file mode 100644 index 0000000..b92299f --- /dev/null +++ b/ekart-aws-localstack/README.md @@ -0,0 +1,236 @@ +# EKart Store - LocalStack Tutorial Edition + +A comprehensive e-commerce platform demonstrating multi-service AWS architectures using LocalStack. This tutorial showcases how to build and test complex cloud-native applications locally before deploying to production. + +### why Ekart store? + +Ekart store is a practical project for learning AWS and cloud-native development. It provides hands-on experience with real-world architectures, making it ideal for tutorials and experimentation. The ekart store can be further extended to include several features like product recommendation system, chatbot service, etc to utilize more tools and to experiment with several AWS services. Therefor this is a great project for a beginner to learn aws through Localstack. + +## ๐ŸŽฏ Learning Objectives + +This tutorial demonstrates: +1. Multi-service AWS integration with LocalStack +2. Event-driven architecture patterns +3. Serverless application development +4. Infrastructure as Code with CloudFormation +5. Modern frontend/backend development practices + +## ๐Ÿ—๏ธ Architecture Overview + +### Core AWS Services (Emulated) +- **API Gateway** - RESTful API endpoints +- **Lambda** - Serverless compute functions +- **DynamoDB** - NoSQL database +- **S3** - File storage for product images +- **Cognito** - Authentication and user management +- **CloudFormation** - Infrastructure provisioning + +### Service Interactions +``` +![Arch](ekart_aws_services_arch.png) +``` + +## ๐Ÿš€ Quick Start + +### Prerequisites +- Docker & Docker Compose +- Node.js 18+ +- Python 3.9+ +- AWS CLI configured for LocalStack + +### One-Command Setup +```bash +# Clone and navigate to project +git clone +cd ekart-store + +# Make scripts executable +chmod +x scripts/*.sh + +# Setup everything automatically +./scripts/setup-local.sh +``` + +### Manual Setup Steps +```bash +# 1. Install dependencies +make install + +# 2. Start LocalStack +docker-compose up -d localstack + +# 3. Deploy infrastructure +make deploy-infra + +# 4. Seed sample data +make seed-data + +# 5. Start services +make start +``` + +## ๐Ÿ”ง Key Components Explained + +### 1. Order Processing Workflow + +**Problem Identified**: Orders weren't appearing in the orders list after successful payment due to incomplete integration between payment processing and order creation. + +**Solution Implemented**: +- Enhanced payment processor Lambda to handle both payment intents and order creation +- Added proper linking between payment intents and orders in DynamoDB +- Updated frontend to collect shipping information and pass it during payment confirmation + +**Workflow**: +1. User adds items to cart +2. Proceeds to checkout with shipping information +3. Frontend calls `/api/payments/create-payment-intent` to create payment +4. After payment confirmation, frontend calls `/api/payments/confirm-payment` +5. Payment processor creates order in DynamoDB and links it to payment intent +6. Orders are now visible in the `/orders` page + +### 2. Data Models + +#### Orders Table (`ekart-orders-dev`) +- Primary Key: `order_id` +- GSI: `buyer_id` and `seller_id` for efficient querying +- Fields: items, total_amount, status, payment_status, shipping_address + +#### Products Table (`ekart-products-dev`) +- Primary Key: `product_id` +- GSI: `seller_id` and `category` for filtering +- Fields: title, description, price, stock_quantity, images + +### 3. API Endpoints + +#### Authentication +- `POST /api/auth/register` - Register new user +- `POST /api/auth/login` - Login and get JWT token + +#### Products +- `GET /api/products` - List products +- `POST /api/products` - Create product (sellers) +- `GET /api/products/{id}` - Get product details +- `PUT /api/products/{id}` - Update product (sellers) + +#### Cart +- `GET /api/cart` - Get user's cart +- `POST /api/cart/items` - Add item to cart +- `PUT /api/cart/items/{id}` - Update item quantity +- `DELETE /api/cart/items/{id}` - Remove item from cart + +#### Payments +- `POST /api/payments/create-payment-intent` - Create payment intent +- `POST /api/payments/confirm-payment` - Confirm payment and create order + +#### Orders +- `GET /api/orders` - List user's orders +- `GET /api/orders/{id}` - Get order details +- `PUT /api/orders/{id}/status` - Update order status (sellers) + +### To run the project using python scripts +```bash +#cleanup the existing lambda functions (optinal) +python scripts\cleanup-serverless.py + +#Run this to deploy the dynamodb, s3 backets, IAM Role, API Gateway +python scripts\deploy-infrastructure.py + +#Deploy Lambda functions +python scripts\deploy-serverless.py + +#Seed the sample products data +python scripts\seed.py + +#Test script. Tests involving extensions may not work for free version of localstack +python scripts\test-serverless-apis.py + +#If frontend fails to work, run this script. This fixes api config to work with frontend. +python scripts\configure-frontend.py +``` + +## ๐Ÿ› ๏ธ Development Commands + +```bash +# Show all available commands +make help + +# Install all dependencies +make install + +# Start all services +make start + +# Stop all services +make stop + +# Redeploy infrastructure +make deploy-infra + +# Seed database with sample data +make seed-data + +# Run tests +make test + +# Clean up environment +make clean +``` + +## ๐Ÿ› Troubleshooting Common Issues + +### Orders Not Showing After Payment +**Cause**: Previous implementation didn't link payment confirmation with order creation +**Fix**: Updated payment processor Lambda to create orders when payments are confirmed + +### LocalStack Services Not Starting +```bash +# Check LocalStack health +curl http://localhost:4566/_localstack/health + +# Restart LocalStack +make stop && make start +``` + +### Database Connection Issues +```bash +# Check DynamoDB tables +aws --endpoint-url=http://localhost:4566 dynamodb list-tables + +# Check table contents +aws --endpoint-url=http://localhost:4566 dynamodb scan --table-name ekart-orders-dev +``` + +## ๐Ÿ“Š Monitoring + +### LocalStack Dashboard +- URL: http://localhost:4566/_localstack/cockpit +- Features: Resource browser, logs, metrics + +### Service URLs +- **Frontend**: http://localhost:3000 +- **Backend API**: http://localhost:8000 +- **API Docs**: http://localhost:8000/api/docs +- **LocalStack**: http://localhost:4566 + +## ๐Ÿค Contributing + +This project serves as a comprehensive example for the LocalStack community, showcasing: +- Multi-service AWS integration patterns +- Serverless application best practices +- Real-world e-commerce workflows +- Event-driven architecture implementation + +### Key Features Demonstrated +1. **Service Integration**: Complex workflows across multiple AWS services +2. **Database Operations**: DynamoDB with GSI queries and efficient data modeling +3. **Authentication**: Cognito user pools with JWT validation +4. **Infrastructure as Code**: CloudFormation deployment automation +5. **File Management**: S3 integration for product images + +## ๐Ÿ“ License + +This project is open source and available under the [MIT License](LICENSE). + +--- + +**Built with โค๏ธ for the LocalStack community** \ No newline at end of file diff --git a/ekart-aws-localstack/docker-compose.yml b/ekart-aws-localstack/docker-compose.yml new file mode 100644 index 0000000..4eb3177 --- /dev/null +++ b/ekart-aws-localstack/docker-compose.yml @@ -0,0 +1,94 @@ +version: '3.8' + +services: + localstack: + container_name: ekart-localstack + image: localstack/localstack:3.0 + ports: + - "4566:4566" + - "4510-4559:4510-4559" + environment: + - SERVICES=s3,dynamodb,lambda,apigateway,cognito-idp,ses,sqs,events,iam,cloudformation,ssm,logs + - DEBUG=1 + - LAMBDA_EXECUTOR=docker + - DOCKER_HOST=unix:///var/run/docker.sock + - LOCALSTACK_HOST=localhost + - EDGE_PORT=4566 + - DATA_DIR=/tmp/localstack/data + - PERSISTENCE=1 + volumes: + - "${LOCALSTACK_VOLUME_DIR:-./tmp/localstack}:/var/lib/localstack" + - "/var/run/docker.sock:/var/run/docker.sock" + networks: + - ekart-network + + backend: + build: ./backend + container_name: ekart-backend + ports: + - "8000:8000" + environment: + - ENV=development + - LOCALSTACK_ENDPOINT=http://localstack:4566 + - DATABASE_URL=dynamodb://localstack:4566 + - AWS_ACCESS_KEY_ID=test + - AWS_SECRET_ACCESS_KEY=test + - AWS_DEFAULT_REGION=us-east-1 + depends_on: + - localstack + volumes: + - ./backend:/app + networks: + - ekart-network + command: uvicorn main:app --host 0.0.0.0 --port 8000 --reload + + frontend: + build: ./frontend + container_name: ekart-frontend + ports: + - "3000:3000" + environment: + - NEXT_PUBLIC_API_URL=http://localhost:8000/api + - NEXT_PUBLIC_AWS_REGION=us-east-1 + - NODE_ENV=development + depends_on: + - backend + volumes: + - ./frontend:/app + - /app/node_modules + networks: + - ekart-network + command: npm run dev + + redis: + image: redis:7-alpine + container_name: ekart-redis + ports: + - "6379:6379" + volumes: + - redis_data:/data + networks: + - ekart-network + + nginx: + image: nginx:alpine + container_name: ekart-nginx + ports: + - "80:80" + - "443:443" + volumes: + - ./nginx/nginx.conf:/etc/nginx/nginx.conf + - ./nginx/ssl:/etc/nginx/ssl + depends_on: + - frontend + - backend + networks: + - ekart-network + +networks: + ekart-network: + driver: bridge + +volumes: + redis_data: + localstack_data: diff --git a/ekart-aws-localstack/docs/SUMMARY.md b/ekart-aws-localstack/docs/SUMMARY.md new file mode 100644 index 0000000..cdcf35e --- /dev/null +++ b/ekart-aws-localstack/docs/SUMMARY.md @@ -0,0 +1,74 @@ +# Order Processing Fix Summary + +## Problem +Orders were not appearing in the orders list (http://localhost:3000/orders) after successful payment, even though payment was showing as completed in the LocalStack DynamoDB table. + +## Root Cause +The payment processing workflow had a disconnect between payment confirmation and order creation: + +1. Payment intents were being created successfully +2. Payments were being processed and marked as completed +3. However, no actual orders were being created in the `ekart-orders-dev` DynamoDB table +4. The frontend orders page queries this table, so no orders appeared + +## Solution Implemented + +### 1. Enhanced Payment Processor Lambda +Modified `lambda-functions/payment-processor/handler.py` to handle the complete payment-to-order workflow: + +- **Before**: Only created payment intents +- **After**: Now handles both payment intent creation AND order creation + +### 2. Updated Order Creation Logic +The payment processor now: + +1. Creates payment intents as before +2. Upon payment confirmation: + - Reads user's cart from `ekart-carts-dev` table + - Creates order(s) in `ekart-orders-dev` table + - Links payment intent ID to orders for tracking + - Sets initial order status to "pending" with "completed" payment status + - Clears user's cart after successful order creation + +### 3. Improved Frontend Integration +Updated the checkout flow to: + +1. Collect shipping address information +2. Pass shipping details during payment confirmation +3. Ensure proper communication with the enhanced payment processor + +## Technical Details + +### Database Changes +- Orders are now properly stored in `ekart-orders-dev` DynamoDB table +- Each order includes: + - Order ID + - Buyer ID + - Seller ID + - Items with quantities and prices + - Total amount + - Status and payment status + - Shipping address + - Timestamps + +### API Endpoint Updates +- `/api/payments/create-payment-intent` - Creates payment intent (unchanged) +- `/api/payments/confirm-payment` - Now creates orders in addition to confirming payment + +## Verification + +After implementing the fix: + +1. User adds items to cart +2. Proceeds to checkout with shipping information +3. Payment intent is created +4. Payment is confirmed +5. Orders are created in DynamoDB +6. Orders appear in http://localhost:3000/orders +7. Order status can be tracked through the system + +## Impact +- Orders now properly appear in the orders list immediately after payment +- Payment and order systems are properly integrated +- User experience is improved with accurate order tracking +- Data consistency between payments and orders is maintained \ No newline at end of file diff --git a/ekart-aws-localstack/docs/api-documentation.md b/ekart-aws-localstack/docs/api-documentation.md new file mode 100644 index 0000000..ff51c66 --- /dev/null +++ b/ekart-aws-localstack/docs/api-documentation.md @@ -0,0 +1,153 @@ +"# EKart Store API Documentation + +## Base URL +- Local: `http://localhost:8000/api` +- Production: `https://api.ekart.com/api` + +## Authentication +All protected endpoints require a Bearer token in the Authorization header: +``` +Authorization: Bearer +``` + +## Endpoints + +### Products + +#### GET /products +Get all products with optional filters +- Query params: category, min_price, max_price, brand, seller_id, page, per_page +- Response: Array of products + +#### GET /products/{id} +Get a specific product by ID +- Response: Product object + +#### POST /products +Create a new product (sellers only) +- Request body: ProductCreate +- Response: Created product + +#### PUT /products/{id} +Update a product (owner only) +- Request body: ProductUpdate +- Response: Updated product + +#### DELETE /products/{id} +Delete a product (owner only) +- Response: Success message + +### Orders + +#### GET /orders +Get user's orders +- Response: Array of orders + +#### GET /orders/{id} +Get a specific order by ID +- Response: Order object + +#### POST /orders +Create a new order from cart +- Request body: ShippingAddress, PaymentMethod +- Response: Created order(s) + +#### PUT /orders/{id}/status +Update order status (sellers only) +- Request body: Status update +- Response: Updated order + +### Cart + +#### GET /cart +Get user's shopping cart +- Response: Cart object with items + +#### POST /cart/items +Add item to cart +- Request body: CartItem +- Response: Updated cart + +#### PUT /cart/items/{product_id} +Update item quantity in cart +- Request body: Quantity +- Response: Updated cart + +#### DELETE /cart/items/{product_id} +Remove item from cart +- Response: Updated cart + +### Payments + +#### POST /payments/create-payment-intent +Create a payment intent for checkout +- Request body: Amount, Currency, Metadata +- Response: PaymentIntent details + +#### POST /payments/confirm-payment +Confirm payment and create order +- Request body: PaymentIntent ID, ShippingAddress +- Response: Confirmation and order details + +#### GET /payments/payment-intent/{id} +Get payment intent details +- Response: PaymentIntent object + +### Authentication + +#### POST /auth/register +Register a new user +- Request body: UserCreate +- Response: User profile + token + +#### POST /auth/login +Login with email and password +- Request body: UserLogin +- Response: User profile + token + +## Data Models + +### Order +```json +{ + \"order_id\": \"string\", + \"buyer_id\": \"string\", + \"seller_id\": \"string\", + \"items\": [OrderItem], + \"total_amount\": \"number\", + \"status\": \"pending|confirmed|processing|shipped|delivered|cancelled\", + \"payment_status\": \"pending|completed|failed\", + \"payment_method\": \"card|paypal|wallet|cod\", + \"shipping_address\": ShippingAddress, + \"created_at\": \"datetime\", + \"updated_at\": \"datetime\" +} +``` + +### Product +```json +{ + \"product_id\": \"string\", + \"seller_id\": \"string\", + \"title\": \"string\", + \"description\": \"string\", + \"price\": \"number\", + \"category\": \"string\", + \"stock_quantity\": \"integer\", + \"images\": [\"string\"], + \"is_active\": \"boolean\", + \"created_at\": \"datetime\", + \"updated_at\": \"datetime\" +} +``` + +## Error Responses + +All endpoints return standard HTTP status codes: +- 200: Success +- 201: Created +- 400: Bad Request +- 401: Unauthorized +- 403: Forbidden +- 404: Not Found +- 500: Internal Server Error" \ No newline at end of file diff --git a/ekart-aws-localstack/docs/architecture.md b/ekart-aws-localstack/docs/architecture.md new file mode 100644 index 0000000..4603086 --- /dev/null +++ b/ekart-aws-localstack/docs/architecture.md @@ -0,0 +1,80 @@ +"# EKart Store Architecture + +## Overview +This document describes the architecture of the EKart Store e-commerce platform, with a focus on the recent fixes for order processing workflow. + +## Components + +### Frontend (Next.js) +- Server-side rendered React application +- TypeScript for type safety +- Tailwind CSS for styling +- Three.js for 3D product visualization + +### Backend (FastAPI) +- RESTful API built with Python FastAPI +- Pydantic models for data validation +- JWT authentication via AWS Cognito +- Integration with AWS services via boto3 + +### Infrastructure (AWS via LocalStack) +- **DynamoDB**: NoSQL database for all entities +- **S3**: Object storage for product images +- **Cognito**: User authentication and authorization +- **Lambda**: Serverless functions for async processing +- **API Gateway**: RESTful API endpoints +- **SQS**: Message queues for order processing +- **EventBridge**: Event-driven architecture +- **SES**: Transactional email delivery + +## Data Flow + +### Fixed Order Processing Workflow +1. User adds items to cart via Frontend โ†’ Cart API +2. User proceeds to checkout with shipping information +3. Frontend calls Payment API to create payment intent +4. After payment confirmation, Frontend calls Payment API to confirm payment +5. **FIXED**: Payment Processor now creates orders in DynamoDB and links them to payment intents +6. Orders are now visible in the Orders API +7. Lambda functions process async tasks like notifications +8. SES sends email notifications + +### Database Schema + +#### Orders Table (ekart-orders-dev) +- Primary Key: order_id +- GSI: buyer_id (for buyer order lookup) +- GSI: seller_id (for seller order lookup) +- Fields: items, total_amount, status, payment_status, shipping_address, timestamps + +#### Products Table (ekart-products-dev) +- Primary Key: product_id +- GSI: seller_id (for seller product management) +- GSI: category (for category browsing) +- Fields: title, description, price, stock_quantity, images + +#### Carts Table (ekart-carts-dev) +- Primary Key: user_id +- Fields: items, timestamps + +## Security + +- All API endpoints require JWT authentication +- S3 buckets have private access control +- Cognito manages user credentials +- HTTPS enforced in production + +## Recent Fixes + +### Order Visibility Issue +**Problem**: Orders were not appearing in the orders list after successful payment. + +**Root Cause**: The payment processing workflow was not properly integrated with order creation. Payment intents were created but orders were never actually stored in the database. + +**Solution**: Enhanced the payment processor Lambda function to: +1. Create payment intents as before +2. Upon payment confirmation, create actual orders in DynamoDB +3. Link payment intents to orders for proper tracking +4. Update order status when payment status changes + +**Impact**: Orders now properly appear in the orders list immediately after successful payment." \ No newline at end of file diff --git a/ekart-aws-localstack/ekart_aws_services_arch.png b/ekart-aws-localstack/ekart_aws_services_arch.png new file mode 100644 index 0000000000000000000000000000000000000000..3d6b1649e51e15fd11feb3000612ab411d4aa57a GIT binary patch literal 426466 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�y`37IYM= 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

ICS;!LMuvrC|c!NA9wE1nP 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%0A}P>wB7hbkhtKDy?sB+(qgYo_m4a9dx5nd zf<@g$-{W{}{6rlx%CzhhCygk^=YBhXw;ZUc&y#X@Hfyu8zVvS?*;`IF9cg|@0E$AO zEI0606}K}FZDP7%n^T&b==mzS$zOnk^wyrv$2IlytC7MV5*F!MEkz8a#x?!; z4b_8a_(6koiEvq2XZ?Qk24<^`e5nRY+-fEB&g+w#L@1B#k2jW5FUMKe8Znet8m>;_ zgVp=nR6Oj$LbmOOYq#D$1%svV@hb3j3Zz>$E z7uPQk><``^K#13k%GlOiI!00D{h!AkX|*1zN!XNEE{1GdL5Ne&7}!#{r|ju&f} z#uTO>skJ5#D=y|C`;ovsV-Je@5&YS(E)-r{S<{_*N91nzs70e@BIzRcvlu5ownS=F zHze^q_x2pTKThrFVb|2Y!BW_+2KoATlZ%n355rHgX@l{!&&h_946qrU@Rm=1Xs)$- zq$F{P7i6|Z4GZw`XrZH@n0o0p@Hq51?6*4P80u%Q&@(H5JE;8?=jv;nv0xzBqG=9S zByBOC#|!XEctkvhx60yc>WXE@feU6@VspDOkn>aw<$73HAKNKr-Ch}0>V(e)E!%g% z@J#OE0gLM-ASD`Mn$7L@OJjdDnhpW&but$QUS_*(qnx0{Gq2%4bL-2duPDQgn$uWH zd-%?qsERxlVL%N{_eEe)V~b<+onNWX$UQdpUm$VmZMW&CKQn#hi_--=IKTM%|GB|@ zc_Ge!cFQmp5*U(;@%w)og|)EXVVMI{^k(33I}SV}XL-unCXhHojB4r#h>rA^&6B$_ zyz{18dUNUtjZRt{KdV0VXHV?(=*`z&(f{u!~8TTX3OL?eE8(t zL=^I!)|MQWbND?RdfMAfSz}z#A>V!=goJz!^t>5ZsOFY!SgCNSk{5u|!^@~Qk$HVn z9u8oBIHPZ~8IA=vXUCNHK=-kMma#OoBcELVUa0}pK&vl{Vj)VWz>wHyqB^3A($e@n zo3@~(9Ut90&ort1606}@6be6f(ko)bS}89!r5|9J)(R6V9$sRWTxW&mNb8#eMi-RI zUJf7s{>*g-n2#}#BXf4!Bt;3z3F{YS=1%8u&=wiZbl*WCZDkvxbqwtW_YLakZ`KxWN zj{(p;>g5BZrIUq$m{xcL(+8sH`YmOK0>{jUd2SAAjQ6O zq~0%5Q97*HxELr9_wtQ>gxCqS(J(|hA6uqImE~?cpb-H-9Ekr{^7Z?Hit(lY7C`hnScRc+z^_9+8<|?7-aQcZCMCd4+ zw#M%T;twi%9MI$b`X|~pU0YQ5H@sy3MB~{i4VaTc~B6 z8(lmQMz)>0qluS#cAEW;E@$^7*ohysb+cA8_B!Y?(5qg_EhW}i{QY-It2(d}7R$KU zcvf&!9)4DR=+V$bZ=@XGQ;BSo3Um01Hll03=4>E0(pS310{bd%UvNwk0Jvring;LSn?W427r4e2G{UFF{m0#f zA&+h}{-giFy#Sx80smJ)N*)dZxT+Y5@ZF$qk0*GCo)_%-f& zF+BNRuyPrz->od061i|A{>eDq{!ziMP++KbiH=2TU2~}L9tIPmiz6Ie8P#{kCF({l z&qyp3Umo6Q)#-PirXAn3Vuzf1c+2F;cPxX9?M|~SBR`(f*6Q2|8F)Q_lHd$3)L+p) ze$6HQ=Jiqe5k3>k=_*L&0Ob~2@#ii5>y|QFe5XmucQtzD%nSHevL}a&FRvl48NTz$ zlvw{_q9JO!uGpH6R!FGP@TuPnU(gr~J!O)K_=JbvWF~`Tf=PCib5~L9k0Io3qBDGX z0`24APpo8|^!@IddQPwrU~n*Va}V~~l$u_K^^FfVZB@@4@rU1F+R&1*au-vUS)LWs zds(?4@)nEqxTXLvVhie=9O?Ru$hCF#eE`}G@=1H zI|1T<+(g`Z_`-saF^4Dos|DZAkfnpc>On(a!bPo^L8|-@=p<{il||5xW)?>E- z@>7dk~zIFyczm!Xue2Cu8CSub(PPiFV3_Y##hr@{1X~o)(Yh{PQF^r?}#% znsO1fk&?V+IhMP3(KPSuSP8_dpylB7UmICI5qo2e>2EcfHBJZ157)zZX$La%iUoU) zlj}fG@NtE3#hQ|ZIe++rL+cha)qmN^^T)oRBrsrpAS2W0vqsJ@yEzWh%%yg2n5c3f znZEc8@_5AvLXlmrVS7Z*hQLNy>Mol46;o~%>sRSyUiLh0OAm5;{J;uI zcESHH-WgK;D3f@f?ad<7aDJY+lN$7i)F&&!s&j!y-6T4NL9za`}om z63?wR+jfN=a;Qb)vIglcnUsia=yBQzZlQTc&iEamSO=U6`pa0)~mkR8xWZe*DC-IKgBMdXHV575CJBhCkF@Zj)H^EUU& z&E_G124v8bvfyw~6w$gPWU|;<7|`{k>Gwd;)NBDh#Ml#7jwHkHyW`o;`c5-zBV6@o zA488h7K3~G=Z~Whs3#!YV(=c53odAvjuWhrPfp)~Ag&2LYRA|hINX&^PSsb4t8d-J zj9rZu1CUMQu@1opRW;03FTQ6w{<0Z@V>n1m=yMLtxNSLH>DIFaKW= zlt%h4OmcOioFS&=ay%Yo4eykA3oUa)J2cPSMGy`}4D(hjW ziVaLngD89aj?i-xI%#SreX3%eguej%!y~kyDfxiq1dU%PO2EthUyoG@dMt>f7QAcs z$5URT_Hv`4?pmK_uW;yEwock=PP z;m_C6x6*sEOKSQ4IlJF^GG9wRQ}>(x9Y7Tg`VfFrm9%qG#s+{q%xp$zBd8u)9plHB zryV<1KoXJ;Q0KRmY%|SNjrIY5#TC0dRF))H83NYG$+8_z^DArm#b@_*u5_Pcd2!?4 zQH`;MUF2~H&KW49Zgb3xfN5J&>{}McOn!A}CoDjKu_?arFz-i&PJ2Z~WrXvu6oVD; z?S&-X6ciByW7Zna@BPBs78lN$#ZY^+wCb$vBwQNxfNR%KR-Vq)dJyF=dz!;Ic2L3o z@VqA2-T@jPaBHW7SxpB3MVOgvTf;I|4mzLxo-sSL6AVCF9nMGEg)Z^_4-1eF9V$&x z?aUR}_3a5Uvhs}GiDoOXDf{`O{r2aZmH--I8kacvNEuM8;hHvHl?g!{mu-Mp8avDn z#RApt&ZXlo#F@?FN3ItnE(Zg;taUnBlx91J5 z0f1z2hAYDbh@b<(3A$BEVM+j@a*|cNGMwcTl#9%WI>!!&wmf;ow%w6|dwc|55z-BhUtZS87^64zj;YT6*&%H0gN2 zO|YQsykUUz0pOl?$9kFQv`~<(u##eGSOM-7evt@bswFDD4t%pE{vCHnFu#gI_Lz}S zKto}NIJXK|+PxevjB9CfI$C#{X=3g;t_^2C7%1njQ($v(`^VKTFtbnMTLrJO$yc>=sbNvXAKp>Gw;No9)ya71{z;1jXs-ufg3VW}X!8m@vMDb-D?$3i} z@y;5xe63=2=)g+i9!h(t@ip~wiar>_D<~WSf6VCYhj#CrerKo;G~SdE%?U{Jh5&FaS8>H{jP`bOfA+SrQnNy*Cd^ zF8|t6V3WdR3j5t9Wx`!nGJK3K?opgyDX^~xzN$=cPIoX9vG-)kanB|eC)R`uW@6F- z6h08#+~+A-;XN_w#b>$Sv4ZdhVAVlR|CS-CIt9KeNvj)RONj>O>L$Xz2MtQ3v;@G3 zy}D@6l`?>sPfr!G1OpnwZZQExLPh@jh_?ds@sPGF|1t}OuKnNt6XQ}0O%JP0PTr06+(!m#p1JRxAfJ97VeG_k1O%$yt1@+XS!V| z9!y^(@OYg2BFxJoU0jq{UN*H8HYsYAH3yn9;5Ie5J`cvOo3^Q2Uv$4gKgOe{@?&*y zOuWYz<#uo*y?^$mS_8rVa0@wzxt0eq+59L0B|+dgVS@{NBV2ihCAh%Miuo$-wLtO2 zosDO5pXkM4-#HmZHF&S!VX=Y1;sbQqjmZJ=kHH*!gq2r4G1M?8LJv-gRfa%jPe!Z3 z%bN42_5x5kwEgkNJqnJs3$fNIoX#f$o9aE9CT#N36+udT|diwXkY|i|Y%_->k z^8vM~GT-fwkTs?lGhly+q#R7ffE_ zlp{q5#%R}kKKQMy>GJ3r4G)oPH(R4x3iB@yVS{Weg|vAt4vLIcxhD^ORE{i;jUBpf zi3arnHPn&+-DT(Kq2b{%#=&0ldk1A%z_4mgD({M7<9gmr2f+k@Z8kfXfyeF1M}~oN zUJcA2H_&yTyHz_Qi2;*{`EwJAv>Prbps_7GXCf>9%fVvzq|S8#bGt===0ETHiw9tk zHFP`62K54$={>5R+aFS?)8LmnTfDro z*&)roM|-~Pf3AZ{a~Fn!_EUb`5FpWKL^jrlxQ;20v-_2m+p(Qs7V$SX2Y@{xexR@e zKba>%^lAQrI{5dVF%m?E7+bRFOfc2|HIMSdji9Jv;0Ns6vxCJn>iP-Y>gKv%U)<#D;NlJwM3Fw|te%{N@W0L*V!vu` z#GuEv6Yiq@A3l0?XVQpGs9SSydD8eP*x|cCBEPqwxK>{3K|9jjz=ocgy#esPxO4l( zrFiHs>EL5~72Cb3y8lI6C-(-n_S2qvWoh=0SJB<<(pH6~ZcXTB z&de=yEN-dHzJ2lfP%sqxNj2Q=8z#?4P9|s3xo}T@;RO`z5CwlDGmAR{2sYR^R0eh; z&rhnn;f@pr?$D*=a9dXw1Lo9*-g|^YOOM@YrR71bZAvlYS%D(|(t{x&Fb>cqgoZFV zk3G0@7093}T!$c-x$s%%BqjPTA3&EGhBM9)8#U{T&aC`H@>4XknJ1RUpDi8zv2zcb zV8pdMt6$$Es#?G671UsC>E`sJD0|fk%jb0uesHxB*2hlJ`*RYLV^Q^?JLSIL8^vQA zZPoYt!pSFdbA)$!Zvfok9@NW7{6|?H+E#yOUZD)&^IU`mv z>=2=`vv)VFdjSs?l*9@yNcMLi^o3vf-rt|3PUvt0kY95qUH|_-4lUeZ&{7m0{m{#6 zMX97;&@o|i`|sGR8~+5RmA%|mMb9#8CrmRHAjP_mV?S}l9l7FM@Yu)VXr0|4d?zag z`Yo;WviXm?*SHRM!NypJ0D!pc)hP$0sMS!c=Za5*i=+WrOVcr?hS8EYwVN!#@v=vm z#LPu4TbaUY9g`@kuZ9-kUQHeXzAgF^g{r-_lfcZH3x73asWfw3Sn;ew^GjE-LeS-r zxXSoP=zNeFE;7BWK3PJ?@oL?LraG$$OiwUI!$a4y&?^U9A)oz7d*=z(hq4%WDyHfzzuW8%DNnEzq-cn?1xf2EqgctE3@3C2lB0!Zc1VqyRGz8(;r zVMmw9B8vkVjDSAZ7)%!v(Fy)trc>mYc}K=L>xUQ~(L46iod|!+`f4!`bgF}z%h=>Y z^l+faQhj6ir!@pndWx>pWS_&VNH#P!UHvd$zA^#}9(y$&zd0F5(R@@tschjpc5qXV z=oLhyDw%kPAT53M=MKEwzLezFTLh0)kZ)nf$o26jCvD;buu3R&x>~~bZWt2%dIFE3 zuRQ$XWl8rS8tj!zH@K@s*anY%Z;Y#-kHC`|c(04wJ4`yKLl-Ru;Bo)%r`paVNfTgm zE(46F)xZ%hx5(`W!sE?1LHW)6i3au@ZCWs3MlLfu2g+kq0+7slXUEAJ56Mvew^%zs z1s0c3F{ZPoQS?u$s!ly<&1Ma;VDuj%R`j&0rEQi+HNku-FaW?^W?D#D(TNF7=rNna z^_b`{_w;6x=j^>M*ag=eCoresj&)Jo7|Jk8dbY(Myf4h^WPDy}WwwmWB6}4{Au^7WaU5l3?{RPrDk(A|D>K_UHph03 zh!aA_u?|igd++1m@c-!E@Ar4V|Igz*Qk^>E{dteqc#eYZMQ)V=cRH1j0?k4gzY%;4 zKsw+GG8Z3Lh-?RQeFD_xzx)#O9_b-)*Ub87_(A1xbX+lbP<5uww{cHzZY&-84W`x8 zv!R7yc7EY~WmU0|^XiNz*P?Xfs%nZ=@@hZpfOb-`#0a@-rF3Z_rC8L+$zQ!+wH(S} zDFP<0)}w@m1}a+mztwh-Z<^+j9T$|$T6s#}eHa7g#lUd7r)^lsK%ahqbPq8!l2cai z{Kwh)3jn$Yz^QtkoX75}Pg+L*7Z(2?P0-`D@wb~`z^%mqz_z~hSl;>LRf(n745B3( z9P`w_4HU!v{-50xu~}^6(^g`b(e}4^u8~o<2|`6-*wf#Hi74Ek9m6%g`lH7v7`G6q}ss?w?vucr|H#nwnKZC^2f3 z{5E0VY_%%6_34R?TevX^XFb(TdoD&ssiMtWi*h68EONC~nSLg<3l2ZFV2`0%IoqTdO0%f5>VEzy2fCT2swTb7yB1vA=w5C5-^Aq%#2}fh&xc zCcS}Vqm%JMuI?RjCBbPCjsd#MKVd*_Jn*`xty^io01j+>Pg9Cku*VG-NM!A)V$&LN zSiv+p^_zo9H8*rHMn@@;eHT>Xvp(6<)&K~5!BT2@>}%_Q^gU*!#rD#D48YN4Fk`@} zT%Qty&uixQyr90<@(thV$Vw&-(^gTv5ibfn@OD;-;GSR zm_@7(N~x_i#UoC?V~XFN2>FU#Dke8r$2Z!AaXT zyG43{AC0W_yw%|UMjMNJQ$@F!UyhKRG+wXFYDo3uV=0m_!<35#jAd+Qy|#*G>JDD~ zXJ7BZKJ?lVCDVO82NkWGtX;cYCO)Wa=UU%oUgWyf1zL#`4`6+1(Hv2O%X4LOK_=Jh)21v$; zD_9v&2EP@BS}Rm8el#NGSYEjeq=rwp_Yt;)=4Hd7T_Gq%1M4{oB#~Y~HIUqe((YJj zU0Uq*MT_dH3*g&FF5}l=JOEqPQVXr6kTWqf7`^*)Vr}x}s>^q}7K@OO4$r%=-NPAA zY1%+zK((kK>!uq(t*QjRjOv9{`(Ws~EZjn%>Ad5*<6obebe`cJr9lqeY)bji+sfAPE_~Q-zj};GWb+_%rfkNA`&i=H<7IiAtl2@uFA8BMQ_?=n>S0?i*o^x<0rU zw^+0IvGVqEGP0d^^0_cWlGn&s!r-hcssbholhIxFBKT@}=4k74t@*=l6fu~5m& zwkgqYE&%abr3auj6*Cj z{D|?&>QHGjP+rQbNVntMDd0QFVUASd+Im(7M8s||fQY6HV z>g__+`oBlHeWX4=*L|HNc6XBrPjhGFe_YG}chCg^8IxtMNX@TN&R4d$KDvdsJiprK zmO*k|UUvahhgGp*q_fv(?|)5{usL=^7tdWCF2@1mRdA<--AiTQX&OO&YqO?{In!Kt zmVt6w&JY(;z0lp_>Cies05nOzI+8EUbe^A@-b)`@hsbchJw~SGhF4)be0Rn&Y+bA7$E{c^ zmu+ds%EOJ-OI{5;mpoOMGCJR&fa$88!+1m5{2>$PO@O4O{)oqqe8L=OMD#n7p002l z0ReIrWtJvx-{Qhuzp0g-u;4hCpnb6<#^vnUCxKD%ek>~uu5QjJuirZL_(XJI%GAl6 zQ(CTHuO!aAb6qV%M?0YG_g8EsHUa6t*;igWOLn}=MP6WHq@tWv`{vJ|M)L~22Qz6* zQYLM120KE@Pxo$rucZsPeV1%!dOI+J5vdp!89(JZEvZ3I;9UrojEdy_>Hg*{<%vtJ=j%^*7fMwL>^+9mxhy1Oy2 zO)h(Y@)CvnT(t_1Vl(Q$adXkj6NTjmGbqKoT-(ZPDO9VxnLJB6)K&}WZR82_TkiVx z>ncBTE&>C1MhG$?#pIJiyg3JR>6L!|#j%%~c6L9CQ@NEIs=7gQ2mC*u=8pS?yu{-c zah_b~2-+TP-T6fTfI-sG{Qlj-cEvAM8YSu@wmg(o$m54*3QlqES->J52IFUu6yD;2 z#^x$pQ4KQ%ZZKFv{{SKPQS0{!8awI6W2KVTWM@IZX~3l}@+hm}L0J6-?{DuZa$I3w9p=3wJAyN83z> zuE#IVYP_5^+%QAxq6NDI#cT_4DLQsOL|S3+Y}IOlcN4zzZXsRW@`Pg+^Ez<5qi{b% z!AL69&pDYCbB!xqLbWOCJYEr_A* zM7lN5sUdZ(&d*<!E z>OR*QM5j~?PEgUQs2FU*YmBQ}qT=qBQZFphjRbt`G_I6fIIY*#t=^DPDVrOkfMD*O zmGd;U_G_`Fc|7Um4~)p)SEFv%sZT&{<1`$QM>hZ{L&typ@pJudLr?H8^*458rtR_l z@Hxus!GMQx5@fsdTVfY=pcSd6?=*hUln{diud{`zodBlcqu|FZpvX@0`tG&^#Yt%b z**WlIy7SPcKH4oPUnTLAqh#=z^mMywQ&3QQP;RvIWGgJz%KnF#ZQ~*+pEJ++=W?1x zQGL1zMmgOMon_aepUtj4Q5)MBS;NyE%y zCT1^u&NuHGQ3zv)ZSyhz&F9F@4mi2Cp1kcM+K*QPfquCpwFatCLqWr>6l$m+)Wz5+TFsVTJ;rmN`w9B}<^e_ozwB{@IvifP=j+HAOS>(v zy1-NLR_Ik#x=dT~#P%Q7BPB0X?;Ym~>Zqxfrf@-aE=SO(Fao#kk!n@`ww1HN{vI*e{rXha zquC@uKs)8w`liu9g4jahIKhkR?AlGDO)Pzw(cOlLY;jG_yWyH|5SnUJZj@41n-SZw zX$*5P!-;g;&fmz-Z!zrZ{Lwk$2GLB+ds}98qo%p@OLaobkeduq+#*qBsJO|6jNI_= zxTI{DzZ4vq>a}d&6ISQ1h=o7yRv=_L`i-Eg>;>p~k}yB-HHY}9;Jn1Mg*z+J1!OzjYmyV`rtwGz%aQ~e89T%)Bc#b zD=U>$k)#qn^8Lp;wBkL4fim!>g&i_cJ#ob~Kx5$2O(uTLBAdx?amaPP>9+RA({`X> zEkmxFvVj68yiu;$ud_m&A|^Aa!eP*Lwg`P;=mvoGfBh=&<&6$R|3{t#!5(Wp16kQ& z^}bLpDQmYMam(s4ALQ#I3O|zaWI1*OOatcqp}A=Zy7-R#fOJqDS!QHU#Vpd1{akL@ z&UOuZ-tLP?MOj0`#B|P7HvSRZUdxoc=SiY=9N4_- zoJF_k==qbmf8>^=m8n%`dwc50CaZ`{SI-BbY(_S=in=;Tq=J5LI28Usk(P_z0g9** z84UvD^mji{Ih71=Ml8bM(?qszQX12}SfBQ47Q9cx_Sr*GyGM6%`!p1o#u9WOkn6^;MQZ1BUx z&dJT=XBl6iOjqBRm@jC%>})kh-kJx7Me#iw1NXbm_6{~JuWsi@}4W}_pf`>B#8WLh0~}90scwHe$ZdEt_;5oWv-Ol0IEh;={^-V>=?g3 zCJ)Fg+!FJRM3Gv*;)ff%q;6vutSq|7XX-%X>mT_twwhSjeRj{-$?l_#w_26^!qV!r z`@FKrm%?aU=SyH4$+*?yZ81SET<|(S>KZ?^n+Y@=!Nr6zo&x)#Gn)HMh%!3yPBM=i zpIXV5P5T9f8tQgC-JbuDn+-kizaObEn2Q9*vKjE==#RwSc358;NM z+FnmEl$2{4+O`B>J%3Kue^qj%CZP-v6K9`39E?0t>$EZZ8rKK?I=a4SFtQP7T{lHH z={hIFb^jP(1UTRN@?tajfqjZ6^}eeQ`mk*LeJeM^sV^?9=H+>_vSmoC6qvEvDzy_N zx4mmf7r{@g>IZ*9P*9X#%jmT-6Lvbi{3(Xj=*EXlWi!|E zUdA`!To9LP8F6B9iShZ~qIWjS%(kxl_%KjaKT`rJk2veL{{kyKt#yBd9;c+OhKR!F zjK!tap^-_>i+vyXs~1)_o0WzqcKlck2+btj*d@FE5ZA<=CNEm7lnPqwiU|ut6!YqX zgMj6Rv&rN+Q#F1aeNm?GNv;-dOMlV0|KrpFd{ZE77qCL!#FDsHe*ul4ud4w^`wI&T zUw-+vywpvjF4=ejK&v@`n|v&Leh1vbR)b?Z&o71`D>xe(sBrr(%nEubT@xBqm=RB` z40ii6Yd>MHT)?JGPWtl8OM0wueBXJX-kq2g5k}1Ba=-T0;rpx%)0HdpVLxgTIDwZ; zKsbzov17tpOI^(1wgCsbowlkj?O8P2CKuwU3x`pN0DyubRZOp16;2`_pVu)fXT8#cw zT~4^2&&Pt7{mg`VrTd};27+6CazVNd#^Pk%@E&8sq*4xUpyw%eQiSnL6ug7m^P~FP zUJ}!H3(AP@Uy&hDhF3Z-+h#25+OQIj!SmJ!f0>K^pZz5;S*MQ=qE{o;t`_&6_8;p< z&3yvkW;8T2wYw)L+v?3>wFWzi#Uea#e04`fGAuX(){V{IUP4WGDI4NlQfSZm>nJKy zUS3jhlAYadKU_;Q0QLxL37l&NZYr3>_~vx^nmh1vG(V-*y;rx$tLD+oS^Bq!bxdRn zO?C0kM+0|_D;wijBkraVO!}*^l6e4)7R)*b8m^k+{Q48=+}fa>t~E66U-H~bl4S=g z?smO{n+u69`1F+|5aXDAxh>e@F~6xI2byJUu8k+Nc1!rvigzabdf++pqJMwUYh^E* zPXn8tw)D6U=`HHUvF#2`W6upp%54bRR%$U|*Nai<&_XiJHFySkxIg0Am)0+&9&R(2 zSSPu)q$pURq{C2j5Lg)iXw-K8tdX3>YqilF4^-fM{5elPo^XNh>`FS|?iAZcZ?hZj z$D0iy^}$AN2KdyX9l?}>`Pc`dVATew#YwTJZ zW-hYl0z2qnW_-S}+Hh(iGQMwMxmQ((QLx0?JF9c_yC4j~5gb|bf%ShQiojZ6KW{jq zt}5ptf1Cn1^T&&XHOitbETnT&=DosV@P6+$N$lbEDHz*fZSCs8>vlp~>Mx|9Gew?j ze;;bN2qbL~C^c>4G@qAhW}<+Rtq8}#xP8!*?ilrutJGmQB zWlDdoc|sYKk>hQ|pP2(t)Af&IjJK>p+&bS)C7j#g`EWi~`3~ z=g$?`W{JFkonUl+rj(ZUYXeY9MFCn0*MaBEML#s>t-Iee>Uos|9+SI5tK-!FtDM~4 zb-5o%u=z0KnclC~^3yupOhpg`+&w_3%zNYR)j!GF9nW6r6B;41{Al_zP?E63p+qMg z<|J&wfMN7qLlhUrnexD(Q|8M7l|AyV30s-RoP|=i zK&EZ;`udedV2pV2j>?cMG1h9f$;_k&vzoT#;`T_(&{tenvino0p~ows2{~2*2rq$0 zotd7|f{ywUNz})YRnZnDb8wa&u2kW2W(-&!eCA3nWyUn|NsMxwW+YF{Dt;tYKEQ_N z_uM1i|I6ZO7>^eLU>wp9*azkn6|JKZS;N%e(?ZZ50Oy4QS~SOJxBJsf!5ViY^3$q) zxAakD#6D>?Z+q0fVs%FcHL^W<%J3fO^O4$9dr`fP#9}?`bwQAqV(zd21R_E~i2EOF zN}Bs-;a*rH4N(Aq{=&w&0%N9{og0rUz#a3(y7y(xZsZlmbTtgbeHh4dyz^fAYQNMZ zZt={9P*8-4-QtJBv3BdH6&SI_o&fBh&8l~fRu_5Gk) zjc#dzE=8X#zU?oUu9aOiY@>qh zL-)_HJRC2z2w4HVRT}^h`hdajgFdBY?_Q;4i9@)YdzFN1vI?d?C<0658J%)JuE74!CN+BD1Iv+@b{JiWc#UGq@ANTX~Ljxus zbDYJ`OI3j0&KGU}qp$Fh)hzf(?w`k?M+P-<5K%_&BFr64CCc>hRRXhia+nP6V$ZE;bsx`=x-QZv{`%N(+3 zX-bCxg@|3bo2A%G+VtR^eKXIjeDr6`l;052HcSu+Oy9k|-^)v+yh_`#{riE{?+gFW z@6&eVCC84RI{NY7!L`|UJzrB(Lka8{2hh$v_gH0)UlDkG3^-vf$1CK_E9Af{CYV}C zkLt!hN%Pm%M37b=)f4@Q(gvd*#lq4k3b;O?iLkhjCmZ-qxLRH2L`8HEfwg^DK5%Dt z@F3B?Y1VpjUp+U6V;Q(ISR~~%r&WrKg=RWiYdb>{5+IQTTTjfOKE_Q%~YqYDw?VdRMG~X4J0mY&!rN$e; zI!YEJDBSQmwIH|Z4S#t{VuJ_Osy7Bm!JTLloy4LBH*$VLhzk?qCVOZHR9bfyCcS5>rE3T;&=_rVoqnjCd2l>E`wq370@_uN)1!Z`nbSaO z2@nzZFFlmPM=={5b1#8ZD>^nRd{>1u%=u`=XWGw-%@~hZmyb2_P@z)OjdjU7&hJyZ z>*l1VyoA$+PSZmDFx&AxeLG>}ticI3H{G3>v+Y=c*9mNkVY-_8CfoH6OdL~=BjhKB+i}vqatPfzalC(ZLxw|#g9KYdPeBQzruMV5Rg&qA65lMOmrO)Qtsfw= zpE0l{-CuEmPCoOXRtLwhC=E5oz_^EahhwEu%DZ}Rqaed(hHzC7e06`!ZA6QQ9(fuR z+kh0r(>Whu0 z;?vhH^#cJ?WxIsLP@0P`EG_wQu^{xco>4nNuR0CkiLMCFK;9UaAOgJT9vyQMfu z6fAt%6OebbFLOQodtF6p?F02G4Kra=>>aos%8~18VuS_Wt(CR8ShzC)zyFhIV3w@7 zrU>%#Zns@|MxZ#Sta+W`rhWn0HdB7*wL`;=-hWZH~9t-I=(z$pwSnCPgK@K4Q(on0c=~OfnY6Q7wjpM zx|b6CMY{vB?`|hgev0&J5U3(up_{($NcoNzbcB^)v=%j?xfbJ_bRe=~@oW+H*#ld1 z6@n9XSGr{cK0V4#RurFG zNGwIYHh@0bDduz{)yG%Y9v+$G)u;4TLRhKO{Aq)6Y%}?jUL9w}dn#kkNo!iXvm;rF z$D!PO?vHHJ?rk!2W#VyzGe^zf(7kV5ylq?f^~{A|ZH|1+bv^cYrcIx3n_KlRVH^7U z3-4yj96-%)qI)=?7v`#pyV?x0lsExORUhElkOP4KUjYh-+v^siq892j?u=N}aTxgb zCG!gKCH5Ymd;Ag?DOkN3bvhyJ_;SJMdr%wyk5kXo0hS$3R6vB7UJdb8sQ($aOt z(u%AZya#Bk^iEj#EKr$9*R(jGVp}xJjXSl*&LnhfuhV zvW%t!jtK0&s|akCAN?DttVeDY6UgJGb$+7Vo9|BG#=aElQo2U8}Df z)d&{7PClpfv$FBHd2@&GomdkSxxTOet>Oa6Sn5Tuxg}uBr`Mds(juKFt|^yu$*mCK z>?kY0R5jhfj593LqMLP*<@dLf4v`3R(=ejQYSQvTiFJVTxQX30gd3mThfSeM2+E*Bs z_|3)tGDi8;qKWcyEHq!hV!G*@_LJDgzCHK2xhwUMmWO5O!SZnsN6ain4H}`|5r{gfmtwRT2ABIq*zoGN6TM^pV zBz@>yQyA8dm~ehYj65_d52|@TYEZ7BB%Kyy8H}=I{e!R7w<)0iVbPh^j(CL}SGIc2_7i%f-lub(*1)J~&w} zL+PD_2sj87YF-5p14Q(&KM)i&A1`x#C{brt zTCpc+oA~V^M4shD}| z;-D{*M=*Ga@qEUs9&!s_uQfK|Db|*Ue)c)3w7&+OCDL8zwwdGWt~-O#;d5Cw$)@T* z;|868n9sVHkTv$W~lKqP|AZEh6vE2 zQL%1!_o2JW@-{J`90?A1o)|F=v~r=~?r#3d@lV!BZog*M>X&ULH8qX?QU=qXhzC!f!Y8oUYP;K({hz%7wLWiyh4EON@KGrB*=09fFIe zH&B$dJvuQppBE~bI3itdvQpn7xax06#U6OsIiR> zhE`m?xkAzVQGviewUfQ?-$=WDu!9Cggwk2YhcQ;KTM@si;hUK35%C#C`=fd)!`{uf zyUf-_BulLalWS_cquRSUY!Q-Es0F_=Q+590_QmjGqarm1{|4XYm(Gsgp6wIsQH zP-R{AVSSmlHpV2D>#cn)e4{)-$T*H8ez!uMF0<Y^lu$ZXc& zQfcqgdtF?92A*H0->Uzh2SBljzJ&d5{8}mFyR_%~`-5|v=M&&1{w?J{NtRPdoi=xd z%{XPWPsfnDZ?ghjd$0ewn^OAIy8y=$1O^W#bUb4`&d$o8Y^ad8T7H&`q%T|=>31FW z%a|SWM%-O0m$pm%h6^a@Wr!52Ixy(0`@KBkz6r(8dJ-wl#=Eu5A)5n8paRzKM;^R) z0Vq6}Ex)KsR1*TC!Ui%zRRU60Yg~5G>v-2mW(3s$ZxuK!e5jooS8ylEAD$47uax9O zqS+m#FCYrVU+LGI42SfYxTS&#Rj>Y0-jc#^MxBJ#;C7)s$FAI0t_30%5^5*%ydNh;}PTMlz@=6XA?(;pr{9t0`GDl?Z}@0QPIV?pAA0~MF!r+D%~k#3iqG7gBqtV7K6b)fLp@FJcYVf`51;vjR_-j*+8JaAzyRMW9x z9gP#@C|W#)zVC>RwjDJTyp%K*vT8-|D7RV9yLz%$u}V*;}>s+fMLm+oesKjnvf9%Nda@zJ?MRNhU&Hr?1jH+ya95^wh>@a?=y zE1UOqjEao9n8*^QHhdiR2QuR@V7i5B{Hr#>*8<>8JqV6fYA;Bo33fknlifo9Ov+nV z%hj6FJ!LQ}n|YiXXL3PaZzdMn(C5oCF$id+(u93y=ttpVq&Ib>&3A_4I8sxb zB?h;N#863NzHLvQ*6uE;$sIKrcG_=$?lAUs(~nH{H>}h@m*i<#^KEE3yhnMnU3B#q zD83jZs{a{!d+v<#Jbs34FE(ZHmQdagaU2@&N zo(AANafW-k649hGoz7T|YOZ_3Nd;}~xr2i_98wHMv|zxgRR^Vuuzquu1= zIu?n!7%0O2Aea_9281+o^ZxoZLt_Eos-%Avj{9K@lf3a~tgPt2{N-F?0<>ocb1>RZgf-QA>1C$dLsH2}w%Ng^3jjDrA#N%zf;Bzfn&ISy_3+2OVsr#yW zn#Dg~Fq!;CtXyPG%~U<_OcZydLp!z-v^j4PTr&iJ3>R<&yY9c^RNT>e!mOa%PmMI# z`V|w$9q_$RHS*GS;~R+XmHp^2FtVZH(uz(x#Ls#Nuz))!)QsybA@fcBHnmLSr?q1Bbpjv+@@KPTEl+%NC> z66ND;$DTMDoT!mjU^?=&FJ9RNU0<@-E|O)%YxyWhOdvq&Tzx*FI4fNxIXQLo=5z== zY!=sX3%A;1gG;R!fN+Ku2Z&B0vR}6Wsc6mLqDjY-IPghy_beLVYUWL@KL_&U{IkKa zKoA>vQ{<{bxR_j|nE8%^b1N9qwERa(-D~0YmQKsGwtiSW^C;u)qE^#QFX*d|{ zmo&XPEU@Zp2;AGJ%Nz(zu6T?(m3chp!{;wRT`3({aQeV3(A#9Tst8J2O(7__H!V9 z->>9cGH9~m1fjUx1cO8&#IG!1SvLd20S1qOdB?q>G>;!{(G3+Dc0Z6{RVEK2yrFiR zjXJT$`21K{SInrOF-z>*V`S);_rRe+5a>^aQuHJX8y+4bK(%7dUD5F{I=<=p{FE^TSWNov zzEADNWe+E87%=Q9Pzht+?7hQ4nF~lq10Z7Z0fSF2lR66>lz76$U>D5GMP& zSH?4Q({7`xx^+wS49)F$l9pjXUkd9vac7D7pzB3+pFqw+7SgCG*v5ew+Vb>vDC1_6 zSMr+Yqp}c>*8Jg;PLDME7c*J<13w3;NtO2G6>C^*=u#si+vdGgx9m%x`=aqvEe77!I|)LEbwM&7$(Scb8f$$(;qb!&2{{>MnGrl?{rt`XoKAOgP|RTx7$jn zf3AQ?#r#3AH1=x}uLyE2DCm(&eH;=nwjkfcsj>~>lv=4w?}kkuN!f{g1cEBY`tD$)P$pL!9z}y6)^TSAb?U(pICYR$>lPqA}jH_hnAITbfK%(gtj~ zrc3}72bH;XSBEX{zkq~R_m3yx-$UA%C4Rz^gAc)@A53PMtP} zaT}HC!gXOFCJ~P<@Lk={5%jCncF1-~8xg}u`P!XqMwDVFUivv53ZYZC*;%y}z`-%1 zzkW%0+uqn2KfKymw+pdT+SZfAPPs8E_}5uSd#Ishenk~kwyI4Xzt7gIOB>WtlA7e+8?b{6HvF@bSEyXQvxB6Wv1`<0*LG2A+J!r zJ@S2{Y%_JLs+HsLM80W-!GbpA)_ z7mve^cOE^mn$vPYspFUPY~nNdaEw(fqWWBLhp8mT0pv;f%1pa#s9|NH6h`=zuIDU6 zS6kb96NVhS1y$z!HRvp&{^HeOkzk(nl%Vlv%m#W3J6lxjms>`swMI zbePkimx%9*y5yJaw(3HIJ!?=KxfK<`NK<~{-xahNC%~|q^e(E(VfY3xisn*RT|c4k zWr_)k0y}!=Vi6F064xnbiw8Y=J7S@w+T+h6ci=}nt)@jI4FF-6SO8;d&}T5)f6=g( zFD&AE$@Afw?BkH9l5+LQ+&7=^6QvfVrHAD<`=y2r z(~%a7P;ALl`AWZyrTcY$LbcQgQTS0viroBew%pOd z_?PAU_iQhbOG~>O28@v(Shrz6%D3mco%N2x&=)-7A=sVTQTt9C1UybHQ6FE~h$t8vNBlJiUjo{X{chvlpT&+rw6*ePcpdPU( zeR(0)Mmkss+z)l#dXr|jy-e7%lAU<44uQG4_|-pOb2$&&BHVm4zrAk!Og^%$&paaF z{F%@Ex8Eh7Ys?kW#ic<2kmn5jzt}4@d}Dwg3oZp~fn#C~Yss_wvt#w~s^)GBf+b|$ z%dJK)HXRNx1gsgd0%XUDZ8^~+>fGcC20C6~*Incqzf76OqLxRcQS(`wvC8WTjEYo- zrw_?Gn7qn(EM(hn~1DO zU!O~0=-<(nJ`KL_D1u)TQE#9Ir4E1ov}|~ZX)Ghqq184fZGCHQz)Z1czKt@%-3h&x z;#n0bPQW3 zPwxnx≫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∋@Dzt_S+!CtxkD4vq4ePodh-? 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�S+Ynq;O#XpPV-~fcNSl9QR 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 literal 0 HcmV?d00001 diff --git a/ekart-aws-localstack/frontend/.env.example b/ekart-aws-localstack/frontend/.env.example new file mode 100644 index 0000000..1f318dc --- /dev/null +++ b/ekart-aws-localstack/frontend/.env.example @@ -0,0 +1,17 @@ +# EKart Store Frontend - Environment Configuration +# Copy this file to .env.local and update the values after deployment + +# API Gateway URL (from serverless deployment) +# Format: http://localhost:4566/restapis/{api_id}/dev/_user_request_ +NEXT_PUBLIC_API_URL=http://localhost:4566/restapis/REPLACE_WITH_API_ID/dev/_user_request_ + +# AWS Cognito Configuration +NEXT_PUBLIC_AWS_REGION=us-east-1 +NEXT_PUBLIC_USER_POOL_ID=REPLACE_WITH_USER_POOL_ID +NEXT_PUBLIC_CLIENT_ID=REPLACE_WITH_CLIENT_ID + +# LocalStack Endpoint (for development) +NEXT_PUBLIC_AWS_ENDPOINT=http://localhost:4566 + +# Environment +NEXT_PUBLIC_ENV=development diff --git a/ekart-aws-localstack/frontend/.env.local b/ekart-aws-localstack/frontend/.env.local new file mode 100644 index 0000000..53f4bd6 --- /dev/null +++ b/ekart-aws-localstack/frontend/.env.local @@ -0,0 +1,16 @@ +# EKart Store Frontend - Auto-generated Environment Configuration +# Generated from serverless-config.json + +# API Gateway URL +NEXT_PUBLIC_API_URL=http://localhost:4566/restapis/ctlwb5pax7/dev/_user_request_ + +# AWS Cognito Configuration +NEXT_PUBLIC_AWS_REGION=us-east-1 +NEXT_PUBLIC_USER_POOL_ID=us-east-1_8e07ff7de6fd415c8c803e5e9134503f +NEXT_PUBLIC_CLIENT_ID=5c7oz1b5giu66ftannaz2v9vjj + +# LocalStack Endpoint +NEXT_PUBLIC_AWS_ENDPOINT=http://localhost:4566 + +# Environment +NEXT_PUBLIC_ENV=development diff --git a/ekart-aws-localstack/frontend/.env.local.example b/ekart-aws-localstack/frontend/.env.local.example new file mode 100644 index 0000000..4c3d46d --- /dev/null +++ b/ekart-aws-localstack/frontend/.env.local.example @@ -0,0 +1,2 @@ +NEXT_PUBLIC_API_URL=http://localhost:8000/api +NEXT_PUBLIC_AWS_REGION=us-east-1 diff --git a/ekart-aws-localstack/frontend/Dockerfile b/ekart-aws-localstack/frontend/Dockerfile new file mode 100644 index 0000000..5b44005 --- /dev/null +++ b/ekart-aws-localstack/frontend/Dockerfile @@ -0,0 +1,6 @@ +FROM node:18-alpine +WORKDIR /app +COPY package.json package-lock.json* pnpm-lock.yaml* ./ +RUN npm install +COPY . . +CMD ["npm", "run", "dev"] diff --git a/ekart-aws-localstack/frontend/next-env.d.ts b/ekart-aws-localstack/frontend/next-env.d.ts new file mode 100644 index 0000000..4f11a03 --- /dev/null +++ b/ekart-aws-localstack/frontend/next-env.d.ts @@ -0,0 +1,5 @@ +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/ekart-aws-localstack/frontend/next.config.js b/ekart-aws-localstack/frontend/next.config.js new file mode 100644 index 0000000..5e8d1ce --- /dev/null +++ b/ekart-aws-localstack/frontend/next.config.js @@ -0,0 +1,9 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + reactStrictMode: true, + images: { + domains: ['localhost'], + }, +} + +module.exports = nextConfig; diff --git a/ekart-aws-localstack/frontend/package-lock.json b/ekart-aws-localstack/frontend/package-lock.json new file mode 100644 index 0000000..5250af4 --- /dev/null +++ b/ekart-aws-localstack/frontend/package-lock.json @@ -0,0 +1,6688 @@ +{ + "name": "ekart-store-frontend", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "ekart-store-frontend", + "version": "1.0.0", + "dependencies": { + "@aws-amplify/auth": "^6.0.0", + "@hookform/resolvers": "^3.3.0", + "@react-three/drei": "^9.88.0", + "@react-three/fiber": "^8.15.0", + "@stripe/react-stripe-js": "^2.9.0", + "@stripe/stripe-js": "^2.4.0", + "@types/node": "^20.0.0", + "@types/react": "^18.0.0", + "@types/react-dom": "^18.0.0", + "@types/three": "^0.158.0", + "autoprefixer": "^10.4.0", + "axios": "^1.6.0", + "clsx": "^2.0.0", + "framer-motion": "^10.16.0", + "lucide-react": "^0.294.0", + "next": "14.0.0", + "postcss": "^8.4.0", + "react": "^18.0.0", + "react-dom": "^18.0.0", + "react-hook-form": "^7.47.0", + "react-hot-toast": "^2.4.0", + "react-query": "^3.39.0", + "tailwind-merge": "^2.0.0", + "tailwindcss": "^3.3.0", + "three": "^0.158.0", + "typescript": "^5.0.0", + "zod": "^3.22.0", + "zustand": "^4.4.0" + }, + "devDependencies": { + "@types/uuid": "^9.0.0", + "eslint": "^8.0.0", + "eslint-config-next": "14.0.0" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@aws-amplify/auth": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@aws-amplify/auth/-/auth-6.16.0.tgz", + "integrity": "sha512-iKvpkKCSLeQBR2f7M4+xS3UUY1ucvdf5BD++djPD4QQj+Hlqqe/gyHRzrLP8WAWjzVs1PmQbW5fyVDoTa1sUZA==", + "dependencies": { + "@aws-crypto/sha256-js": "5.2.0", + "@smithy/types": "^3.3.0", + "tslib": "^2.5.0" + }, + "peerDependencies": { + "@aws-amplify/core": "^6.1.0", + "@aws-amplify/react-native": "^1.1.10" + }, + "peerDependenciesMeta": { + "@aws-amplify/react-native": { + "optional": true + } + } + }, + "node_modules/@aws-amplify/core": { + "version": "6.13.3", + "resolved": "https://registry.npmjs.org/@aws-amplify/core/-/core-6.13.3.tgz", + "integrity": "sha512-V3Candbkg4nKRrByzSV+Gi9AqZpa6T2U4DaTPysARucxv+KKZ6aRtXm+E8LLtkJniS7Q+yRL4tZlGWdiKwMicw==", + "peer": true, + "dependencies": { + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/types": "3.398.0", + "@smithy/util-hex-encoding": "2.0.0", + "@types/uuid": "^9.0.0", + "js-cookie": "^3.0.5", + "rxjs": "^7.8.1", + "tslib": "^2.5.0", + "uuid": "^11.0.0" + } + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.398.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.398.0.tgz", + "integrity": "sha512-r44fkS+vsEgKCuEuTV+TIk0t0m5ZlXHNjSDYEUvzLStbbfUFiNus/YG4UCa0wOk9R7VuQI67badsvvPeVPCGDQ==", + "dependencies": { + "@smithy/types": "^2.2.2", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types/node_modules/@smithy/types": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.12.0.tgz", + "integrity": "sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.4.tgz", + "integrity": "sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.5.0.tgz", + "integrity": "sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.5.0.tgz", + "integrity": "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emotion/is-prop-valid": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", + "optional": true, + "dependencies": { + "@emotion/memoize": "0.7.4" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", + "optional": true + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@hookform/resolvers": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.10.0.tgz", + "integrity": "sha512-79Dv+3mDF7i+2ajj7SkypSKHhl1cbln1OGavqrsF7p6mbUv11xpqpacPsGDCTRvCSjEEIez2ef1NveSVL3b0Ag==", + "peerDependencies": { + "react-hook-form": "^7.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mediapipe/tasks-vision": { + "version": "0.10.17", + "resolved": "https://registry.npmjs.org/@mediapipe/tasks-vision/-/tasks-vision-0.10.17.tgz", + "integrity": "sha512-CZWV/q6TTe8ta61cZXjfnnHsfWIdFhms03M9T7Cnd5y2mdpylJM0rF1qRq+wsQVRMLz1OYPVEBU9ph2Bx8cxrg==" + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, + "node_modules/@next/env": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.0.tgz", + "integrity": "sha512-cIKhxkfVELB6hFjYsbtEeTus2mwrTC+JissfZYM0n+8Fv+g8ucUfOlm3VEDtwtwydZ0Nuauv3bl0qF82nnCAqA==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.0.tgz", + "integrity": "sha512-Ye37nNI09V3yt7pzuzSQtwlvuJ2CGzFszHXkcTHHZgNr7EhTMFLipn3VSJChy+e5+ahTdNApPphc3qCPUsn10A==", + "dev": true, + "dependencies": { + "glob": "7.1.7" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.0.tgz", + "integrity": "sha512-HQKi159jCz4SRsPesVCiNN6tPSAFUkOuSkpJsqYTIlbHLKr1mD6be/J0TvWV6fwJekj81bZV9V/Tgx3C2HO9lA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.0.tgz", + "integrity": "sha512-4YyQLMSaCgX/kgC1jjF3s3xSoBnwHuDhnF6WA1DWNEYRsbOOPWjcYhv8TKhRe2ApdOam+VfQSffC4ZD+X4u1Cg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.0.tgz", + "integrity": "sha512-io7fMkJ28Glj7SH8yvnlD6naIhRDnDxeE55CmpQkj3+uaA2Hko6WGY2pT5SzpQLTnGGnviK85cy8EJ2qsETj/g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.0.tgz", + "integrity": "sha512-nC2h0l1Jt8LEzyQeSs/BKpXAMe0mnHIMykYALWaeddTqCv5UEN8nGO3BG8JAqW/Y8iutqJsaMe2A9itS0d/r8w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.0.tgz", + "integrity": "sha512-Wf+WjXibJQ7hHXOdNOmSMW5bxeJHVf46Pwb3eLSD2L76NrytQlif9NH7JpHuFlYKCQGfKfgSYYre5rIfmnSwQw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.0.tgz", + "integrity": "sha512-WTZb2G7B+CTsdigcJVkRxfcAIQj7Lf0ipPNRJ3vlSadU8f0CFGv/ST+sJwF5eSwIe6dxKoX0DG6OljDBaad+rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.0.tgz", + "integrity": "sha512-7R8/x6oQODmNpnWVW00rlWX90sIlwluJwcvMT6GXNIBOvEf01t3fBg0AGURNKdTJg2xNuP7TyLchCL7Lh2DTiw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.0.tgz", + "integrity": "sha512-RLK1nELvhCnxaWPF07jGU4x3tjbyx2319q43loZELqF0+iJtKutZ+Lk8SVmf/KiJkYBc7Cragadz7hb3uQvz4g==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.0.tgz", + "integrity": "sha512-g6hLf1SUko+hnnaywQQZzzb3BRecQsoKkF3o/C+F+dOA4w/noVAJngUVkfwF0+2/8FzNznM7ofM6TGZO9svn7w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "engines": { + "node": ">=12.4.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@react-spring/animated": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.7.5.tgz", + "integrity": "sha512-Tqrwz7pIlsSDITzxoLS3n/v/YCUHQdOIKtOJf4yL6kYVSDTSmVK1LI1Q3M/uu2Sx4X3pIWF3xLUhlsA6SPNTNg==", + "dependencies": { + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/core": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.7.5.tgz", + "integrity": "sha512-rmEqcxRcu7dWh7MnCcMXLvrf6/SDlSokLaLTxiPlAYi11nN3B5oiCUAblO72o+9z/87j2uzxa2Inm8UbLjXA+w==", + "dependencies": { + "@react-spring/animated": "~9.7.5", + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-spring/donate" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/rafz": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.7.5.tgz", + "integrity": "sha512-5ZenDQMC48wjUzPAm1EtwQ5Ot3bLIAwwqP2w2owG5KoNdNHpEJV263nGhCeKKmuA3vG2zLLOdu3or6kuDjA6Aw==" + }, + "node_modules/@react-spring/shared": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.7.5.tgz", + "integrity": "sha512-wdtoJrhUeeyD/PP/zo+np2s1Z820Ohr/BbuVYv+3dVLW7WctoiN7std8rISoYoHpUXtbkpesSKuPIw/6U1w1Pw==", + "dependencies": { + "@react-spring/rafz": "~9.7.5", + "@react-spring/types": "~9.7.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@react-spring/three": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/three/-/three-9.7.5.tgz", + "integrity": "sha512-RxIsCoQfUqOS3POmhVHa1wdWS0wyHAUway73uRLp3GAL5U2iYVNdnzQsep6M2NZ994BlW8TcKuMtQHUqOsy6WA==", + "dependencies": { + "@react-spring/animated": "~9.7.5", + "@react-spring/core": "~9.7.5", + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" + }, + "peerDependencies": { + "@react-three/fiber": ">=6.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "three": ">=0.126" + } + }, + "node_modules/@react-spring/types": { + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.7.5.tgz", + "integrity": "sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==" + }, + "node_modules/@react-three/drei": { + "version": "9.122.0", + "resolved": "https://registry.npmjs.org/@react-three/drei/-/drei-9.122.0.tgz", + "integrity": "sha512-SEO/F/rBCTjlLez7WAlpys+iGe9hty4rNgjZvgkQeXFSiwqD4Hbk/wNHMAbdd8vprO2Aj81mihv4dF5bC7D0CA==", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@mediapipe/tasks-vision": "0.10.17", + "@monogrid/gainmap-js": "^3.0.6", + "@react-spring/three": "~9.7.5", + "@use-gesture/react": "^10.3.1", + "camera-controls": "^2.9.0", + "cross-env": "^7.0.3", + "detect-gpu": "^5.0.56", + "glsl-noise": "^0.0.0", + "hls.js": "^1.5.17", + "maath": "^0.10.8", + "meshline": "^3.3.1", + "react-composer": "^5.0.3", + "stats-gl": "^2.2.8", + "stats.js": "^0.17.0", + "suspend-react": "^0.1.3", + "three-mesh-bvh": "^0.7.8", + "three-stdlib": "^2.35.6", + "troika-three-text": "^0.52.0", + "tunnel-rat": "^0.1.2", + "utility-types": "^3.11.0", + "zustand": "^5.0.1" + }, + "peerDependencies": { + "@react-three/fiber": "^8", + "react": "^18", + "react-dom": "^18", + "three": ">=0.137" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } + } + }, + "node_modules/@react-three/drei/node_modules/@monogrid/gainmap-js": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@monogrid/gainmap-js/-/gainmap-js-3.1.0.tgz", + "integrity": "sha512-Obb0/gEd/HReTlg8ttaYk+0m62gQJmCblMOjHSMHRrBP2zdfKMHLCRbh/6ex9fSUJMKdjjIEiohwkbGD3wj2Nw==", + "dependencies": { + "promise-worker-transferable": "^1.0.4" + }, + "peerDependencies": { + "three": ">= 0.159.0" + } + }, + "node_modules/@react-three/drei/node_modules/zustand": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.8.tgz", + "integrity": "sha512-gyPKpIaxY9XcO2vSMrLbiER7QMAMGOQZVRdJ6Zi782jkbzZygq5GI9nG8g+sMgitRtndwaBSl7uiqC49o1SSiw==", + "engines": { + "node": ">=12.20.0" + }, + "peerDependencies": { + "@types/react": ">=18.0.0", + "immer": ">=9.0.6", + "react": ">=18.0.0", + "use-sync-external-store": ">=1.2.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "immer": { + "optional": true + }, + "react": { + "optional": true + }, + "use-sync-external-store": { + "optional": true + } + } + }, + "node_modules/@react-three/fiber": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.18.0.tgz", + "integrity": "sha512-FYZZqD0UUHUswKz3LQl2Z7H24AhD14XGTsIRw3SJaXUxyfVMi+1yiZGmqTcPt/CkPpdU7rrxqcyQ1zJE5DjvIQ==", + "dependencies": { + "@babel/runtime": "^7.17.8", + "@types/react-reconciler": "^0.26.7", + "@types/webxr": "*", + "base64-js": "^1.5.1", + "buffer": "^6.0.3", + "its-fine": "^1.0.6", + "react-reconciler": "^0.27.0", + "react-use-measure": "^2.1.7", + "scheduler": "^0.21.0", + "suspend-react": "^0.1.3", + "zustand": "^3.7.1" + }, + "peerDependencies": { + "expo": ">=43.0", + "expo-asset": ">=8.4", + "expo-file-system": ">=11.0", + "expo-gl": ">=11.0", + "react": ">=18 <19", + "react-dom": ">=18 <19", + "react-native": ">=0.64", + "three": ">=0.133" + }, + "peerDependenciesMeta": { + "expo": { + "optional": true + }, + "expo-asset": { + "optional": true + }, + "expo-file-system": { + "optional": true + }, + "expo-gl": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/@react-three/fiber/node_modules/zustand": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", + "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + } + } + }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.13.0.tgz", + "integrity": "sha512-2ih5qGw5SZJ+2fLZxP6Lr6Na2NTIgPRL/7Kmyuw0uIyBQnuhQ8fi8fzUTd38eIQmqp+GYLC00cI6WgtqHxBwmw==", + "dev": true + }, + "node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@smithy/types": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.2.tgz", + "integrity": "sha512-bNwBYYmN8Eh9RyjS1p2gW6MIhSO2rl7X9QeLM8iTdcGRP+eDiIWDt66c9IysCc22gefKszZv+ubV9qZc7hdESg==", + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@smithy/util-hex-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz", + "integrity": "sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==", + "peer": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@stripe/react-stripe-js": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@stripe/react-stripe-js/-/react-stripe-js-2.9.0.tgz", + "integrity": "sha512-+/j2g6qKAKuWSurhgRMfdlIdKM+nVVJCy/wl0US2Ccodlqx0WqfIIBhUkeONkCG+V/b+bZzcj4QVa3E/rXtT4Q==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "@stripe/stripe-js": "^1.44.1 || ^2.0.0 || ^3.0.0 || ^4.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@stripe/stripe-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@stripe/stripe-js/-/stripe-js-2.4.0.tgz", + "integrity": "sha512-WFkQx1mbs2b5+7looI9IV1BLa3bIApuN3ehp9FP58xGg7KL9hCHDECgW3BwO9l9L+xBPVAD7Yjn1EhGe6EDTeA==" + }, + "node_modules/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/draco3d": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/@types/draco3d/-/draco3d-1.4.10.tgz", + "integrity": "sha512-AX22jp8Y7wwaBgAixaSvkoG4M/+PlAcm3Qs4OW8yT9DM4xUpWKeFhLueTAyZF39pviAdcDdeJoACapiAceqNcw==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.19.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.21.tgz", + "integrity": "sha512-CsGG2P3I5y48RPMfprQGfy4JPRZ6csfC3ltBZSRItG3ngggmNY/qs2uZKp4p9VbrpqNNSMzUZNFZKzgOGnd/VA==", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/offscreencanvas": { + "version": "2019.7.3", + "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz", + "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.15", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", + "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==" + }, + "node_modules/@types/react": { + "version": "18.3.26", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.26.tgz", + "integrity": "sha512-RFA/bURkcKzx/X9oumPG9Vp3D3JUgus/d0b67KB0t5S/raciymilkOa66olh78MUI92QLbEJevO7rvqU/kjwKA==", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", + "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@types/react-reconciler": { + "version": "0.26.7", + "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.26.7.tgz", + "integrity": "sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/stats.js": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.4.tgz", + "integrity": "sha512-jIBvWWShCvlBqBNIZt0KAshWpvSjhkwkEu4ZUcASoAvhmrgAUI2t1dXrjSL4xXVLB4FznPrIsX3nKXFl/Dt4vA==" + }, + "node_modules/@types/three": { + "version": "0.158.3", + "resolved": "https://registry.npmjs.org/@types/three/-/three-0.158.3.tgz", + "integrity": "sha512-6Qs1rUvLSbkJ4hlIe6/rdwIf61j1x2UKvGJg7s8KjswYsz1C1qDTs6voVXXB8kYaI0hgklgZgbZUupfL1l9xdA==", + "dependencies": { + "@types/stats.js": "*", + "@types/webxr": "*", + "fflate": "~0.6.10", + "meshoptimizer": "~0.18.1" + } + }, + "node_modules/@types/uuid": { + "version": "9.0.8", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz", + "integrity": "sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==" + }, + "node_modules/@types/webxr": { + "version": "0.5.24", + "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.24.tgz", + "integrity": "sha512-h8fgEd/DpoS9CBrjEQXR+dIDraopAEfu4wYVNY2tEPwk60stPWhvZMf4Foo5FakuQ7HFZoa8WceaWFervK2Ovg==" + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true + }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@use-gesture/core": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.3.1.tgz", + "integrity": "sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==" + }, + "node_modules/@use-gesture/react": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.3.1.tgz", + "integrity": "sha512-Yy19y6O2GJq8f7CHf7L0nxL8bf4PZCPaVOCgJrusOeFHY1LvHgYXnmnXg6N5iwAnbgbZCDjo60SiM6IPJi9C5g==", + "dependencies": { + "@use-gesture/core": "10.3.1" + }, + "peerDependencies": { + "react": ">= 16.8.0" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.0.tgz", + "integrity": "sha512-ilYanEU8vxxBexpJd8cWM4ElSQq4QctCLKih0TSfjIfCQTeyH/6zVrmIJfLPrKTKJRbiG+cfnZbQIjAlJmF1jQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/axios": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz", + "integrity": "sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.4", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.16.tgz", + "integrity": "sha512-OMu3BGQ4E7P1ErFsIPpbJh0qvDudM/UuJeHgkAvfWe+0HFJCXh+t/l8L6fVLR55RI/UbKrVLnAXZSVwd9ysWYw==", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/bidi-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz", + "integrity": "sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==", + "dependencies": { + "require-from-string": "^2.0.2" + } + }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, + "node_modules/browserslist": { + "version": "4.26.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.3.tgz", + "integrity": "sha512-lAUU+02RFBuCKQPj/P6NgjlbCnLBMp4UtgTx7vNHd3XSIJF87s9a5rA3aH2yw3GS9DqZAUbOtZdCCiZeVRqt0w==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "baseline-browser-mapping": "^2.8.9", + "caniuse-lite": "^1.0.30001746", + "electron-to-chromium": "^1.5.227", + "node-releases": "^2.0.21", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/camera-controls": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/camera-controls/-/camera-controls-2.10.1.tgz", + "integrity": "sha512-KnaKdcvkBJ1Irbrzl8XD6WtZltkRjp869Jx8c0ujs9K+9WD+1D7ryBsCiVqJYUqt6i/HR5FxT7RLASieUD+Q5w==", + "peerDependencies": { + "three": ">=0.126.1" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001750", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001750.tgz", + "integrity": "sha512-cuom0g5sdX6rw00qOoLNSFCJ9/mYIsuSOA+yzpDw8eopiFqcVwQvZHqov0vmEighRxX++cfC0Vg1G+1Iy/mSpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-gpu": { + "version": "5.0.70", + "resolved": "https://registry.npmjs.org/detect-gpu/-/detect-gpu-5.0.70.tgz", + "integrity": "sha512-bqerEP1Ese6nt3rFkwPnGbsUF9a4q+gMmpTVVOEzoCyeCc+y7/RvJnQZJx1JwhgQI5Ntg0Kgat8Uu7XpBqnz1w==", + "dependencies": { + "webgl-constants": "^1.1.1" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/draco3d": { + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/draco3d/-/draco3d-1.5.7.tgz", + "integrity": "sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==" + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.234", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.234.tgz", + "integrity": "sha512-RXfEp2x+VRYn8jbKfQlRImzoJU01kyDvVPBmG39eU2iuRVhuS6vQNocB8J0/8GrIMLnPzgz4eW6WiRnJkTuNWg==" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-next": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.0.0.tgz", + "integrity": "sha512-jtXeE+/pGQ3h9n11QyyuPN50kO13GO5XvjU5ZRq6W+XTpOMjyobWmK2s7aowy0FtzA49krJzYzEU9s1RMwoJ6g==", + "dev": true, + "dependencies": { + "@next/eslint-plugin-next": "14.0.0", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.0.0-canary-7118f5dd7-20230705", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0-canary-7118f5dd7-20230705.tgz", + "integrity": "sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fflate": { + "version": "0.6.10", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.6.10.tgz", + "integrity": "sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg==" + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", + "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/framer-motion": { + "version": "10.18.0", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.18.0.tgz", + "integrity": "sha512-oGlDh1Q1XqYPksuTD/usb0I70hq95OUzmL9+6Zd+Hs4XV0oaISBa/UUMSjYiq6m8EUF32132mOJ8xVZS+I0S6w==", + "dependencies": { + "tslib": "^2.4.0" + }, + "optionalDependencies": { + "@emotion/is-prop-valid": "^0.8.2" + }, + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generator-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.12.0.tgz", + "integrity": "sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==", + "dev": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glsl-noise": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/glsl-noise/-/glsl-noise-0.0.0.tgz", + "integrity": "sha512-b/ZCF6amfAUb7dJM/MxRs7AetQEahYzJ8PtgfrmEdtw6uyGOr+ZSGtgjFm6mfsBkxJ4d2W7kg+Nlqzqvn3Bc0w==" + }, + "node_modules/goober": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/goober/-/goober-2.1.18.tgz", + "integrity": "sha512-2vFqsaDVIT9Gz7N6kAL++pLpp41l3PfDuusHcjnGLfR6+huZkl6ziX+zgVC3ZxpqWhzH6pyDdGrCeDhMIvwaxw==", + "peerDependencies": { + "csstype": "^3.0.10" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hls.js": { + "version": "1.6.13", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.13.tgz", + "integrity": "sha512-hNEzjZNHf5bFrUNvdS4/1RjIanuJ6szpWNfTaX5I6WfGynWXGT7K/YQLYtemSvFExzeMdgdE4SsyVLJbd5PcZA==" + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.4", + "generator-function": "^2.0.0", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/its-fine": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/its-fine/-/its-fine-1.2.5.tgz", + "integrity": "sha512-fXtDA0X0t0eBYAGLVM5YsgJGsJ5jEmqZEPrGbzdf5awjv0xE7nqv3TVnvtUF060Tkes15DbDAKW/I48vsb6SyA==", + "dependencies": { + "@types/react-reconciler": "^0.28.0" + }, + "peerDependencies": { + "react": ">=18.0" + } + }, + "node_modules/its-fine/node_modules/@types/react-reconciler": { + "version": "0.28.9", + "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.9.tgz", + "integrity": "sha512-HHM3nxyUZ3zAylX8ZEyrDNd2XZOnQ0D5XfunJF5FLQnZbHHYq4UWvW1QfelQNXv1ICNkwYhfxjwfnqivYB6bFg==", + "peerDependencies": { + "@types/react": "*" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/lucide-react": { + "version": "0.294.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.294.0.tgz", + "integrity": "sha512-V7o0/VECSGbLHn3/1O67FUgBwWB+hmzshrgDVRJQhMh8uj5D3HBuIvhuAmQTtlupILSplwIZg5FTc4tTKMA2SA==", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/maath": { + "version": "0.10.8", + "resolved": "https://registry.npmjs.org/maath/-/maath-0.10.8.tgz", + "integrity": "sha512-tRvbDF0Pgqz+9XUa4jjfgAQ8/aPKmQdWXilFu2tMy4GWj4NOsx99HlULO4IeREfbO3a0sA145DZYyvXPkybm0g==", + "peerDependencies": { + "@types/three": ">=0.134.0", + "three": ">=0.134.0" + } + }, + "node_modules/match-sorter": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.4.tgz", + "integrity": "sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==", + "dependencies": { + "@babel/runtime": "^7.23.8", + "remove-accents": "0.5.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/meshline": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/meshline/-/meshline-3.3.1.tgz", + "integrity": "sha512-/TQj+JdZkeSUOl5Mk2J7eLcYTLiQm2IDzmlSvYm7ov15anEcDJ92GHqqazxTSreeNgfnYu24kiEvvv0WlbCdFQ==", + "peerDependencies": { + "three": ">=0.137" + } + }, + "node_modules/meshoptimizer": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-0.18.1.tgz", + "integrity": "sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw==" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "dependencies": { + "big-integer": "^1.6.16" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-postinstall": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", + "dev": true, + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/next": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.0.0.tgz", + "integrity": "sha512-J0jHKBJpB9zd4+c153sair0sz44mbaCHxggs8ryVXSFBuBqJ8XdE9/ozoV85xGh2VnSjahwntBZZgsihL9QznA==", + "dependencies": { + "@next/env": "14.0.0", + "@swc/helpers": "0.5.2", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.31", + "styled-jsx": "5.1.1", + "watchpack": "2.4.0" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.0.0", + "@next/swc-darwin-x64": "14.0.0", + "@next/swc-linux-arm64-gnu": "14.0.0", + "@next/swc-linux-arm64-musl": "14.0.0", + "@next/swc-linux-x64-gnu": "14.0.0", + "@next/swc-linux-x64-musl": "14.0.0", + "@next/swc-win32-arm64-msvc": "14.0.0", + "@next/swc-win32-ia32-msvc": "14.0.0", + "@next/swc-win32-x64-msvc": "14.0.0" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.23", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.23.tgz", + "integrity": "sha512-cCmFDMSm26S6tQSDpBCg/NR8NENrVPhAJSf+XbxBG4rPFaaonlEoE9wHQmun+cls499TQGSb7ZyPBRlzgKfpeg==" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.1.0.tgz", + "integrity": "sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/potpack": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz", + "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/promise-worker-transferable": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/promise-worker-transferable/-/promise-worker-transferable-1.0.4.tgz", + "integrity": "sha512-bN+0ehEnrXfxV2ZQvU2PetO0n4gqBD4ulq3MI1WOPLgr7/Mg9yRQkX5+0v1vagr74ZTsl7XtzlaYDo2EuCeYJw==", + "dependencies": { + "is-promise": "^2.1.0", + "lie": "^3.0.2" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-composer": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/react-composer/-/react-composer-5.0.3.tgz", + "integrity": "sha512-1uWd07EME6XZvMfapwZmc7NgCZqDemcvicRi3wMJzXsQLvZ3L7fTHVyPy1bZdnWXM4iPjYuNE+uJ41MLKeTtnA==", + "dependencies": { + "prop-types": "^15.6.0" + }, + "peerDependencies": { + "react": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-dom/node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/react-hook-form": { + "version": "7.65.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.65.0.tgz", + "integrity": "sha512-xtOzDz063WcXvGWaHgLNrNzlsdFgtUWcb32E6WFaGTd7kPZG3EeDusjdZfUsPwKCKVXy1ZlntifaHZ4l8pAsmw==", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, + "node_modules/react-hot-toast": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/react-hot-toast/-/react-hot-toast-2.6.0.tgz", + "integrity": "sha512-bH+2EBMZ4sdyou/DPrfgIouFpcRLCJ+HoCA32UoAYHn6T3Ur5yfcDCeSr5mwldl6pFOsiocmrXMuoCJ1vV8bWg==", + "dependencies": { + "csstype": "^3.1.3", + "goober": "^2.1.16" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": ">=16", + "react-dom": ">=16" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-query": { + "version": "3.39.3", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.3.tgz", + "integrity": "sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/react-reconciler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz", + "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.21.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "react": "^18.0.0" + } + }, + "node_modules/react-use-measure": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/react-use-measure/-/react-use-measure-2.1.7.tgz", + "integrity": "sha512-KrvcAo13I/60HpwGO5jpW7E9DfusKyLPLvuHlUyP5zqnmAPhNc6qTRjUQrdTADl0lpPpDVU2/Gg51UlOGHXbdg==", + "peerDependencies": { + "react": ">=16.13", + "react-dom": ">=16.13" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remove-accents": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", + "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==" + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "peer": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", + "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true + }, + "node_modules/stats-gl": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/stats-gl/-/stats-gl-2.4.2.tgz", + "integrity": "sha512-g5O9B0hm9CvnM36+v7SFl39T7hmAlv541tU81ME8YeSb3i1CIP5/QdDeSB3A0la0bKNHpxpwxOVRo2wFTYEosQ==", + "dependencies": { + "@types/three": "*", + "three": "^0.170.0" + }, + "peerDependencies": { + "@types/three": "*", + "three": "*" + } + }, + "node_modules/stats-gl/node_modules/three": { + "version": "0.170.0", + "resolved": "https://registry.npmjs.org/three/-/three-0.170.0.tgz", + "integrity": "sha512-FQK+LEpYc0fBD+J8g6oSEyyNzjp+Q7Ks1C568WWaoMRLW+TkNNWmenWeGgJjV105Gd+p/2ql1ZcjYvNiPZBhuQ==" + }, + "node_modules/stats.js": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/stats.js/-/stats.js-0.17.0.tgz", + "integrity": "sha512-hNKz8phvYLPEcRkeG1rsGmV5ChMjKDAWU7/OJJdDErPBNChQXxCo3WZurGpnWc6gZhAzEPFad1aVgyOANH1sMw==" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/suspend-react": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/suspend-react/-/suspend-react-0.1.3.tgz", + "integrity": "sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==", + "peerDependencies": { + "react": ">=17.0" + } + }, + "node_modules/tailwind-merge": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.6.0.tgz", + "integrity": "sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.18.tgz", + "integrity": "sha512-6A2rnmW5xZMdw11LYjhcI5846rt9pbLSabY5XPxo+XWdxwZaFEn47Go4NzFiHu9sNNmr/kXivP1vStfvMaK1GQ==", + "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.7", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2 || ^5.0 || ^6.0", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/three": { + "version": "0.158.0", + "resolved": "https://registry.npmjs.org/three/-/three-0.158.0.tgz", + "integrity": "sha512-TALj4EOpdDPF1henk2Q+s17K61uEAAWQ7TJB68nr7FKxqwyDr3msOt5IWdbGm4TaWKjrtWS8DJJWe9JnvsWOhQ==" + }, + "node_modules/three-mesh-bvh": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/three-mesh-bvh/-/three-mesh-bvh-0.7.8.tgz", + "integrity": "sha512-BGEZTOIC14U0XIRw3tO4jY7IjP7n7v24nv9JXS1CyeVRWOCkcOMhRnmENUjuV39gktAw4Ofhr0OvIAiTspQrrw==", + "deprecated": "Deprecated due to three.js version incompatibility. Please use v0.8.0, instead.", + "peerDependencies": { + "three": ">= 0.151.0" + } + }, + "node_modules/three-stdlib": { + "version": "2.36.0", + "resolved": "https://registry.npmjs.org/three-stdlib/-/three-stdlib-2.36.0.tgz", + "integrity": "sha512-kv0Byb++AXztEGsULgMAs8U2jgUdz6HPpAB/wDJnLiLlaWQX2APHhiTJIN7rqW+Of0eRgcp7jn05U1BsCP3xBA==", + "dependencies": { + "@types/draco3d": "^1.4.0", + "@types/offscreencanvas": "^2019.6.4", + "@types/webxr": "^0.5.2", + "draco3d": "^1.4.1", + "fflate": "^0.6.9", + "potpack": "^1.0.1" + }, + "peerDependencies": { + "three": ">=0.128.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/troika-three-text": { + "version": "0.52.4", + "resolved": "https://registry.npmjs.org/troika-three-text/-/troika-three-text-0.52.4.tgz", + "integrity": "sha512-V50EwcYGruV5rUZ9F4aNsrytGdKcXKALjEtQXIOBfhVoZU9VAqZNIoGQ3TMiooVqFAbR1w15T+f+8gkzoFzawg==", + "dependencies": { + "bidi-js": "^1.0.2", + "troika-three-utils": "^0.52.4", + "troika-worker-utils": "^0.52.0", + "webgl-sdf-generator": "1.1.1" + }, + "peerDependencies": { + "three": ">=0.125.0" + } + }, + "node_modules/troika-three-utils": { + "version": "0.52.4", + "resolved": "https://registry.npmjs.org/troika-three-utils/-/troika-three-utils-0.52.4.tgz", + "integrity": "sha512-NORAStSVa/BDiG52Mfudk4j1FG4jC4ILutB3foPnfGbOeIs9+G5vZLa0pnmnaftZUGm4UwSoqEpWdqvC7zms3A==", + "peerDependencies": { + "three": ">=0.125.0" + } + }, + "node_modules/troika-worker-utils": { + "version": "0.52.0", + "resolved": "https://registry.npmjs.org/troika-worker-utils/-/troika-worker-utils-0.52.0.tgz", + "integrity": "sha512-W1CpvTHykaPH5brv5VHLfQo9D1OYuo0cSBEUQFFT/nBUzM8iD6Lq2/tgG/f1OelbAS1WtaTPQzE5uM49egnngw==" + }, + "node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/tunnel-rat": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/tunnel-rat/-/tunnel-rat-0.1.2.tgz", + "integrity": "sha512-lR5VHmkPhzdhrM092lI2nACsLO4QubF0/yoOhzX7c+wIpbN1GjHNzCc91QlpxBi+cnx8vVJ+Ur6vL5cEoQPFpQ==", + "dependencies": { + "zustand": "^4.3.2" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==" + }, + "node_modules/unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "dependencies": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/utility-types": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/uuid": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", + "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "peer": true, + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webgl-constants": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/webgl-constants/-/webgl-constants-1.1.1.tgz", + "integrity": "sha512-LkBXKjU5r9vAW7Gcu3T5u+5cvSvh5WwINdr0C+9jpzVB41cjQAP5ePArDtk/WHYdVj0GefCgM73BA7FlIiNtdg==" + }, + "node_modules/webgl-sdf-generator": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/webgl-sdf-generator/-/webgl-sdf-generator-1.1.1.tgz", + "integrity": "sha512-9Z0JcMTFxeE+b2x1LJTdnaT8rT8aEp7MVxkNwoycNmJWwPdzoXzMh0BjJSh/AEFP+KPYZUli814h8bJZFIZ2jA==" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.25.76", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zustand": { + "version": "4.5.7", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.7.tgz", + "integrity": "sha512-CHOUy7mu3lbD6o6LJLfllpjkzhHXSBlX8B9+qPddUsIfeF5S/UZ5q0kmCsnRqT1UHFQZchNFDDzMbQsuesHWlw==", + "dependencies": { + "use-sync-external-store": "^1.2.2" + }, + "engines": { + "node": ">=12.7.0" + }, + "peerDependencies": { + "@types/react": ">=16.8", + "immer": ">=9.0.6", + "react": ">=16.8" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "immer": { + "optional": true + }, + "react": { + "optional": true + } + } + } + } +} diff --git a/ekart-aws-localstack/frontend/package.json b/ekart-aws-localstack/frontend/package.json new file mode 100644 index 0000000..35a088c --- /dev/null +++ b/ekart-aws-localstack/frontend/package.json @@ -0,0 +1,47 @@ +{ + "name": "ekart-store-frontend", + "version": "1.0.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint", + "type-check": "tsc --noEmit" + }, + "dependencies": { + "@aws-amplify/auth": "^6.0.0", + "@hookform/resolvers": "^3.3.0", + "@react-three/drei": "^9.88.0", + "@react-three/fiber": "^8.15.0", + "@stripe/react-stripe-js": "^2.9.0", + "@stripe/stripe-js": "^2.4.0", + "@types/node": "^20.0.0", + "@types/react": "^18.0.0", + "@types/react-dom": "^18.0.0", + "@types/three": "^0.158.0", + "autoprefixer": "^10.4.0", + "axios": "^1.6.0", + "clsx": "^2.0.0", + "framer-motion": "^10.16.0", + "lucide-react": "^0.294.0", + "next": "14.0.0", + "postcss": "^8.4.0", + "react": "^18.0.0", + "react-dom": "^18.0.0", + "react-hook-form": "^7.47.0", + "react-hot-toast": "^2.4.0", + "react-query": "^3.39.0", + "tailwind-merge": "^2.0.0", + "tailwindcss": "^3.3.0", + "three": "^0.158.0", + "typescript": "^5.0.0", + "zod": "^3.22.0", + "zustand": "^4.4.0" + }, + "devDependencies": { + "@types/uuid": "^9.0.0", + "eslint": "^8.0.0", + "eslint-config-next": "14.0.0" + } +} diff --git a/ekart-aws-localstack/frontend/pnpm-lock.yaml b/ekart-aws-localstack/frontend/pnpm-lock.yaml new file mode 100644 index 0000000..874188a --- /dev/null +++ b/ekart-aws-localstack/frontend/pnpm-lock.yaml @@ -0,0 +1,4792 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@aws-amplify/auth': + specifier: ^6.0.0 + version: 6.16.0(@aws-amplify/core@6.13.3) + '@hookform/resolvers': + specifier: ^3.3.0 + version: 3.10.0(react-hook-form@7.64.0(react@18.3.1)) + '@react-three/drei': + specifier: ^9.88.0 + version: 9.122.0(@react-three/fiber@8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0))(@types/react@18.3.26)(@types/three@0.158.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0)(use-sync-external-store@1.6.0(react@18.3.1)) + '@react-three/fiber': + specifier: ^8.15.0 + version: 8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0) + '@stripe/react-stripe-js': + specifier: ^2.9.0 + version: 2.9.0(@stripe/stripe-js@2.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@stripe/stripe-js': + specifier: ^2.4.0 + version: 2.4.0 + '@types/node': + specifier: ^20.0.0 + version: 20.19.20 + '@types/react': + specifier: ^18.0.0 + version: 18.3.26 + '@types/react-dom': + specifier: ^18.0.0 + version: 18.3.7(@types/react@18.3.26) + '@types/three': + specifier: ^0.158.0 + version: 0.158.3 + autoprefixer: + specifier: ^10.4.0 + version: 10.4.21(postcss@8.5.6) + axios: + specifier: ^1.6.0 + version: 1.12.2 + clsx: + specifier: ^2.0.0 + version: 2.1.1 + framer-motion: + specifier: ^10.16.0 + version: 10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + lucide-react: + specifier: ^0.294.0 + version: 0.294.0(react@18.3.1) + next: + specifier: 14.0.0 + version: 14.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + postcss: + specifier: ^8.4.0 + version: 8.5.6 + react: + specifier: ^18.0.0 + version: 18.3.1 + react-dom: + specifier: ^18.0.0 + version: 18.3.1(react@18.3.1) + react-hook-form: + specifier: ^7.47.0 + version: 7.64.0(react@18.3.1) + react-hot-toast: + specifier: ^2.4.0 + version: 2.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-query: + specifier: ^3.39.0 + version: 3.39.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + tailwind-merge: + specifier: ^2.0.0 + version: 2.6.0 + tailwindcss: + specifier: ^3.3.0 + version: 3.4.18 + three: + specifier: ^0.158.0 + version: 0.158.0 + typescript: + specifier: ^5.0.0 + version: 5.9.3 + zod: + specifier: ^3.22.0 + version: 3.25.76 + zustand: + specifier: ^4.4.0 + version: 4.5.7(@types/react@18.3.26)(react@18.3.1) + devDependencies: + '@types/uuid': + specifier: ^9.0.0 + version: 9.0.8 + eslint: + specifier: ^8.0.0 + version: 8.57.1 + eslint-config-next: + specifier: 14.0.0 + version: 14.0.0(eslint@8.57.1)(typescript@5.9.3) + +packages: + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@aws-amplify/auth@6.16.0': + resolution: {integrity: sha512-iKvpkKCSLeQBR2f7M4+xS3UUY1ucvdf5BD++djPD4QQj+Hlqqe/gyHRzrLP8WAWjzVs1PmQbW5fyVDoTa1sUZA==} + peerDependencies: + '@aws-amplify/core': ^6.1.0 + '@aws-amplify/react-native': ^1.1.10 + peerDependenciesMeta: + '@aws-amplify/react-native': + optional: true + + '@aws-amplify/core@6.13.3': + resolution: {integrity: sha512-V3Candbkg4nKRrByzSV+Gi9AqZpa6T2U4DaTPysARucxv+KKZ6aRtXm+E8LLtkJniS7Q+yRL4tZlGWdiKwMicw==} + + '@aws-crypto/sha256-js@5.2.0': + resolution: {integrity: sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==} + engines: {node: '>=16.0.0'} + + '@aws-crypto/util@5.2.0': + resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} + + '@aws-sdk/types@3.398.0': + resolution: {integrity: sha512-r44fkS+vsEgKCuEuTV+TIk0t0m5ZlXHNjSDYEUvzLStbbfUFiNus/YG4UCa0wOk9R7VuQI67badsvvPeVPCGDQ==} + engines: {node: '>=14.0.0'} + + '@aws-sdk/types@3.901.0': + resolution: {integrity: sha512-FfEM25hLEs4LoXsLXQ/q6X6L4JmKkKkbVFpKD4mwfVHtRVQG6QxJiCPcrkcPISquiy6esbwK2eh64TWbiD60cg==} + engines: {node: '>=18.0.0'} + + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} + engines: {node: '>=6.9.0'} + + '@emnapi/core@1.5.0': + resolution: {integrity: sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==} + + '@emnapi/runtime@1.5.0': + resolution: {integrity: sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@emotion/is-prop-valid@0.8.8': + resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} + + '@emotion/memoize@0.7.4': + resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} + + '@eslint-community/eslint-utils@4.9.0': + resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} + 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.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/eslintrc@2.1.4': + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + '@eslint/js@8.57.1': + resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + '@hookform/resolvers@3.10.0': + resolution: {integrity: sha512-79Dv+3mDF7i+2ajj7SkypSKHhl1cbln1OGavqrsF7p6mbUv11xpqpacPsGDCTRvCSjEEIez2ef1NveSVL3b0Ag==} + peerDependencies: + react-hook-form: ^7.0.0 + + '@humanwhocodes/config-array@0.13.0': + resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} + engines: {node: '>=10.10.0'} + deprecated: Use @eslint/config-array instead + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/object-schema@2.0.3': + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + deprecated: Use @eslint/object-schema instead + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@mediapipe/tasks-vision@0.10.17': + resolution: {integrity: sha512-CZWV/q6TTe8ta61cZXjfnnHsfWIdFhms03M9T7Cnd5y2mdpylJM0rF1qRq+wsQVRMLz1OYPVEBU9ph2Bx8cxrg==} + + '@monogrid/gainmap-js@3.1.0': + resolution: {integrity: sha512-Obb0/gEd/HReTlg8ttaYk+0m62gQJmCblMOjHSMHRrBP2zdfKMHLCRbh/6ex9fSUJMKdjjIEiohwkbGD3wj2Nw==} + peerDependencies: + three: '>= 0.159.0' + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@next/env@14.0.0': + resolution: {integrity: sha512-cIKhxkfVELB6hFjYsbtEeTus2mwrTC+JissfZYM0n+8Fv+g8ucUfOlm3VEDtwtwydZ0Nuauv3bl0qF82nnCAqA==} + + '@next/eslint-plugin-next@14.0.0': + resolution: {integrity: sha512-Ye37nNI09V3yt7pzuzSQtwlvuJ2CGzFszHXkcTHHZgNr7EhTMFLipn3VSJChy+e5+ahTdNApPphc3qCPUsn10A==} + + '@next/swc-darwin-arm64@14.0.0': + resolution: {integrity: sha512-HQKi159jCz4SRsPesVCiNN6tPSAFUkOuSkpJsqYTIlbHLKr1mD6be/J0TvWV6fwJekj81bZV9V/Tgx3C2HO9lA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@next/swc-darwin-x64@14.0.0': + resolution: {integrity: sha512-4YyQLMSaCgX/kgC1jjF3s3xSoBnwHuDhnF6WA1DWNEYRsbOOPWjcYhv8TKhRe2ApdOam+VfQSffC4ZD+X4u1Cg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@next/swc-linux-arm64-gnu@14.0.0': + resolution: {integrity: sha512-io7fMkJ28Glj7SH8yvnlD6naIhRDnDxeE55CmpQkj3+uaA2Hko6WGY2pT5SzpQLTnGGnviK85cy8EJ2qsETj/g==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-arm64-musl@14.0.0': + resolution: {integrity: sha512-nC2h0l1Jt8LEzyQeSs/BKpXAMe0mnHIMykYALWaeddTqCv5UEN8nGO3BG8JAqW/Y8iutqJsaMe2A9itS0d/r8w==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-x64-gnu@14.0.0': + resolution: {integrity: sha512-Wf+WjXibJQ7hHXOdNOmSMW5bxeJHVf46Pwb3eLSD2L76NrytQlif9NH7JpHuFlYKCQGfKfgSYYre5rIfmnSwQw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-linux-x64-musl@14.0.0': + resolution: {integrity: sha512-WTZb2G7B+CTsdigcJVkRxfcAIQj7Lf0ipPNRJ3vlSadU8f0CFGv/ST+sJwF5eSwIe6dxKoX0DG6OljDBaad+rg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-win32-arm64-msvc@14.0.0': + resolution: {integrity: sha512-7R8/x6oQODmNpnWVW00rlWX90sIlwluJwcvMT6GXNIBOvEf01t3fBg0AGURNKdTJg2xNuP7TyLchCL7Lh2DTiw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@next/swc-win32-ia32-msvc@14.0.0': + resolution: {integrity: sha512-RLK1nELvhCnxaWPF07jGU4x3tjbyx2319q43loZELqF0+iJtKutZ+Lk8SVmf/KiJkYBc7Cragadz7hb3uQvz4g==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@next/swc-win32-x64-msvc@14.0.0': + resolution: {integrity: sha512-g6hLf1SUko+hnnaywQQZzzb3BRecQsoKkF3o/C+F+dOA4w/noVAJngUVkfwF0+2/8FzNznM7ofM6TGZO9svn7w==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@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'} + + '@nolyfill/is-core-module@1.0.39': + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@react-spring/animated@9.7.5': + resolution: {integrity: sha512-Tqrwz7pIlsSDITzxoLS3n/v/YCUHQdOIKtOJf4yL6kYVSDTSmVK1LI1Q3M/uu2Sx4X3pIWF3xLUhlsA6SPNTNg==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + + '@react-spring/core@9.7.5': + resolution: {integrity: sha512-rmEqcxRcu7dWh7MnCcMXLvrf6/SDlSokLaLTxiPlAYi11nN3B5oiCUAblO72o+9z/87j2uzxa2Inm8UbLjXA+w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + + '@react-spring/rafz@9.7.5': + resolution: {integrity: sha512-5ZenDQMC48wjUzPAm1EtwQ5Ot3bLIAwwqP2w2owG5KoNdNHpEJV263nGhCeKKmuA3vG2zLLOdu3or6kuDjA6Aw==} + + '@react-spring/shared@9.7.5': + resolution: {integrity: sha512-wdtoJrhUeeyD/PP/zo+np2s1Z820Ohr/BbuVYv+3dVLW7WctoiN7std8rISoYoHpUXtbkpesSKuPIw/6U1w1Pw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + + '@react-spring/three@9.7.5': + resolution: {integrity: sha512-RxIsCoQfUqOS3POmhVHa1wdWS0wyHAUway73uRLp3GAL5U2iYVNdnzQsep6M2NZ994BlW8TcKuMtQHUqOsy6WA==} + peerDependencies: + '@react-three/fiber': '>=6.0' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + three: '>=0.126' + + '@react-spring/types@9.7.5': + resolution: {integrity: sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==} + + '@react-three/drei@9.122.0': + resolution: {integrity: sha512-SEO/F/rBCTjlLez7WAlpys+iGe9hty4rNgjZvgkQeXFSiwqD4Hbk/wNHMAbdd8vprO2Aj81mihv4dF5bC7D0CA==} + peerDependencies: + '@react-three/fiber': ^8 + react: ^18 + react-dom: ^18 + three: '>=0.137' + peerDependenciesMeta: + react-dom: + optional: true + + '@react-three/fiber@8.18.0': + resolution: {integrity: sha512-FYZZqD0UUHUswKz3LQl2Z7H24AhD14XGTsIRw3SJaXUxyfVMi+1yiZGmqTcPt/CkPpdU7rrxqcyQ1zJE5DjvIQ==} + peerDependencies: + expo: '>=43.0' + expo-asset: '>=8.4' + expo-file-system: '>=11.0' + expo-gl: '>=11.0' + react: '>=18 <19' + react-dom: '>=18 <19' + react-native: '>=0.64' + three: '>=0.133' + peerDependenciesMeta: + expo: + optional: true + expo-asset: + optional: true + expo-file-system: + optional: true + expo-gl: + optional: true + react-dom: + optional: true + react-native: + optional: true + + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + + '@rushstack/eslint-patch@1.13.0': + resolution: {integrity: sha512-2ih5qGw5SZJ+2fLZxP6Lr6Na2NTIgPRL/7Kmyuw0uIyBQnuhQ8fi8fzUTd38eIQmqp+GYLC00cI6WgtqHxBwmw==} + + '@smithy/is-array-buffer@2.2.0': + resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} + engines: {node: '>=14.0.0'} + + '@smithy/types@2.12.0': + resolution: {integrity: sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==} + engines: {node: '>=14.0.0'} + + '@smithy/types@3.7.2': + resolution: {integrity: sha512-bNwBYYmN8Eh9RyjS1p2gW6MIhSO2rl7X9QeLM8iTdcGRP+eDiIWDt66c9IysCc22gefKszZv+ubV9qZc7hdESg==} + engines: {node: '>=16.0.0'} + + '@smithy/types@4.6.0': + resolution: {integrity: sha512-4lI9C8NzRPOv66FaY1LL1O/0v0aLVrq/mXP/keUa9mJOApEeae43LsLd2kZRUJw91gxOQfLIrV3OvqPgWz1YsA==} + engines: {node: '>=18.0.0'} + + '@smithy/util-buffer-from@2.2.0': + resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} + engines: {node: '>=14.0.0'} + + '@smithy/util-hex-encoding@2.0.0': + resolution: {integrity: sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==} + engines: {node: '>=14.0.0'} + + '@smithy/util-utf8@2.3.0': + resolution: {integrity: sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==} + engines: {node: '>=14.0.0'} + + '@stripe/react-stripe-js@2.9.0': + resolution: {integrity: sha512-+/j2g6qKAKuWSurhgRMfdlIdKM+nVVJCy/wl0US2Ccodlqx0WqfIIBhUkeONkCG+V/b+bZzcj4QVa3E/rXtT4Q==} + peerDependencies: + '@stripe/stripe-js': ^1.44.1 || ^2.0.0 || ^3.0.0 || ^4.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + + '@stripe/stripe-js@2.4.0': + resolution: {integrity: sha512-WFkQx1mbs2b5+7looI9IV1BLa3bIApuN3ehp9FP58xGg7KL9hCHDECgW3BwO9l9L+xBPVAD7Yjn1EhGe6EDTeA==} + + '@swc/helpers@0.5.2': + resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} + + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + + '@types/draco3d@1.4.10': + resolution: {integrity: sha512-AX22jp8Y7wwaBgAixaSvkoG4M/+PlAcm3Qs4OW8yT9DM4xUpWKeFhLueTAyZF39pviAdcDdeJoACapiAceqNcw==} + + '@types/json5@0.0.29': + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + + '@types/node@20.19.20': + resolution: {integrity: sha512-2Q7WS25j4pS1cS8yw3d6buNCVJukOTeQ39bAnwR6sOJbaxvyCGebzTMypDFN82CxBLnl+lSWVdCCWbRY6y9yZQ==} + + '@types/offscreencanvas@2019.7.3': + resolution: {integrity: sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==} + + '@types/prop-types@15.7.15': + resolution: {integrity: sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==} + + '@types/react-dom@18.3.7': + resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==} + peerDependencies: + '@types/react': ^18.0.0 + + '@types/react-reconciler@0.26.7': + resolution: {integrity: sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==} + + '@types/react-reconciler@0.28.9': + resolution: {integrity: sha512-HHM3nxyUZ3zAylX8ZEyrDNd2XZOnQ0D5XfunJF5FLQnZbHHYq4UWvW1QfelQNXv1ICNkwYhfxjwfnqivYB6bFg==} + peerDependencies: + '@types/react': '*' + + '@types/react@18.3.26': + resolution: {integrity: sha512-RFA/bURkcKzx/X9oumPG9Vp3D3JUgus/d0b67KB0t5S/raciymilkOa66olh78MUI92QLbEJevO7rvqU/kjwKA==} + + '@types/stats.js@0.17.4': + resolution: {integrity: sha512-jIBvWWShCvlBqBNIZt0KAshWpvSjhkwkEu4ZUcASoAvhmrgAUI2t1dXrjSL4xXVLB4FznPrIsX3nKXFl/Dt4vA==} + + '@types/three@0.158.3': + resolution: {integrity: sha512-6Qs1rUvLSbkJ4hlIe6/rdwIf61j1x2UKvGJg7s8KjswYsz1C1qDTs6voVXXB8kYaI0hgklgZgbZUupfL1l9xdA==} + + '@types/uuid@9.0.8': + resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} + + '@types/webxr@0.5.24': + resolution: {integrity: sha512-h8fgEd/DpoS9CBrjEQXR+dIDraopAEfu4wYVNY2tEPwk60stPWhvZMf4Foo5FakuQ7HFZoa8WceaWFervK2Ovg==} + + '@typescript-eslint/parser@6.21.0': + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@6.21.0': + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + engines: {node: ^16.0.0 || >=18.0.0} + + '@typescript-eslint/types@6.21.0': + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + engines: {node: ^16.0.0 || >=18.0.0} + + '@typescript-eslint/typescript-estree@6.21.0': + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/visitor-keys@6.21.0': + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + engines: {node: ^16.0.0 || >=18.0.0} + + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==} + cpu: [arm] + os: [android] + + '@unrs/resolver-binding-android-arm64@1.11.1': + resolution: {integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==} + cpu: [arm64] + os: [android] + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + resolution: {integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==} + cpu: [arm64] + os: [darwin] + + '@unrs/resolver-binding-darwin-x64@1.11.1': + resolution: {integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==} + cpu: [x64] + os: [darwin] + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + resolution: {integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==} + cpu: [x64] + os: [freebsd] + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + resolution: {integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + resolution: {integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==} + cpu: [ppc64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==} + cpu: [s390x] + os: [linux] + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + resolution: {integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==} + cpu: [arm64] + os: [win32] + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + resolution: {integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==} + cpu: [ia32] + os: [win32] + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + resolution: {integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==} + cpu: [x64] + os: [win32] + + '@use-gesture/core@10.3.1': + resolution: {integrity: sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==} + + '@use-gesture/react@10.3.1': + resolution: {integrity: sha512-Yy19y6O2GJq8f7CHf7L0nxL8bf4PZCPaVOCgJrusOeFHY1LvHgYXnmnXg6N5iwAnbgbZCDjo60SiM6IPJi9C5g==} + peerDependencies: + react: '>= 16.8.0' + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + 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.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + 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==} + + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + autoprefixer@10.4.21: + resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axe-core@4.11.0: + resolution: {integrity: sha512-ilYanEU8vxxBexpJd8cWM4ElSQq4QctCLKih0TSfjIfCQTeyH/6zVrmIJfLPrKTKJRbiG+cfnZbQIjAlJmF1jQ==} + engines: {node: '>=4'} + + axios@1.12.2: + resolution: {integrity: sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + baseline-browser-mapping@2.8.15: + resolution: {integrity: sha512-qsJ8/X+UypqxHXN75M7dF88jNK37dLBRW7LeUzCPz+TNs37G8cfWy9nWzS+LS//g600zrt2le9KuXt0rWfDz5Q==} + hasBin: true + + bidi-js@1.0.3: + resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} + + big-integer@1.6.52: + resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==} + engines: {node: '>=0.6'} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + broadcast-channel@3.7.0: + resolution: {integrity: sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==} + + browserslist@4.26.3: + resolution: {integrity: sha512-lAUU+02RFBuCKQPj/P6NgjlbCnLBMp4UtgTx7vNHd3XSIJF87s9a5rA3aH2yw3GS9DqZAUbOtZdCCiZeVRqt0w==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + + busboy@1.6.0: + resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} + engines: {node: '>=10.16.0'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + 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'} + + camera-controls@2.10.1: + resolution: {integrity: sha512-KnaKdcvkBJ1Irbrzl8XD6WtZltkRjp869Jx8c0ujs9K+9WD+1D7ryBsCiVqJYUqt6i/HR5FxT7RLASieUD+Q5w==} + peerDependencies: + three: '>=0.126.1' + + caniuse-lite@1.0.30001749: + resolution: {integrity: sha512-0rw2fJOmLfnzCRbkm8EyHL8SvI2Apu5UbnQuTsJ0ClgrH8hcwFooJ1s5R0EP8o8aVrFu8++ae29Kt9/gZAZp/Q==} + + 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'} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + 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==} + + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + 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==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + detect-gpu@5.0.70: + resolution: {integrity: sha512-bqerEP1Ese6nt3rFkwPnGbsUF9a4q+gMmpTVVOEzoCyeCc+y7/RvJnQZJx1JwhgQI5Ntg0Kgat8Uu7XpBqnz1w==} + + detect-node@2.1.0: + resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} + + 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==} + + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + + doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + + draco3d@1.5.7: + resolution: {integrity: sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + electron-to-chromium@1.5.234: + resolution: {integrity: sha512-RXfEp2x+VRYn8jbKfQlRImzoJU01kyDvVPBmG39eU2iuRVhuS6vQNocB8J0/8GrIMLnPzgz4eW6WiRnJkTuNWg==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + es-abstract@1.24.0: + resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eslint-config-next@14.0.0: + resolution: {integrity: sha512-jtXeE+/pGQ3h9n11QyyuPN50kO13GO5XvjU5ZRq6W+XTpOMjyobWmK2s7aowy0FtzA49krJzYzEU9s1RMwoJ6g==} + peerDependencies: + eslint: ^7.23.0 || ^8.0.0 + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + + eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + + eslint-import-resolver-typescript@3.10.1: + resolution: {integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + + eslint-module-utils@2.12.1: + resolution: {integrity: sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + + eslint-plugin-import@2.32.0: + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + + eslint-plugin-jsx-a11y@6.10.2: + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + + eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705: + resolution: {integrity: sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + + eslint-plugin-react@7.37.5: + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + + eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.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@8.57.1: + resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. + hasBin: true + + espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.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.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + 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.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fflate@0.6.10: + resolution: {integrity: sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg==} + + file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.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@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} + + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + form-data@4.0.4: + resolution: {integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==} + engines: {node: '>= 6'} + + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + + framer-motion@10.18.0: + resolution: {integrity: sha512-oGlDh1Q1XqYPksuTD/usb0I70hq95OUzmL9+6Zd+Hs4XV0oaISBa/UUMSjYiq6m8EUF32132mOJ8xVZS+I0S6w==} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + 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==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.12.0: + resolution: {integrity: sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==} + + 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-to-regexp@0.4.1: + resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + glob@7.1.7: + resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + deprecated: Glob versions prior to v9 are no longer supported + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + glsl-noise@0.0.0: + resolution: {integrity: sha512-b/ZCF6amfAUb7dJM/MxRs7AetQEahYzJ8PtgfrmEdtw6uyGOr+ZSGtgjFm6mfsBkxJ4d2W7kg+Nlqzqvn3Bc0w==} + + goober@2.1.18: + resolution: {integrity: sha512-2vFqsaDVIT9Gz7N6kAL++pLpp41l3PfDuusHcjnGLfR6+huZkl6ziX+zgVC3ZxpqWhzH6pyDdGrCeDhMIvwaxw==} + peerDependencies: + csstype: ^3.0.10 + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hls.js@1.6.13: + resolution: {integrity: sha512-hNEzjZNHf5bFrUNvdS4/1RjIanuJ6szpWNfTaX5I6WfGynWXGT7K/YQLYtemSvFExzeMdgdE4SsyVLJbd5PcZA==} + + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + immediate@3.0.6: + resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-bun-module@2.0.0: + resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + 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'} + + is-promise@2.2.2: + resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + + its-fine@1.2.5: + resolution: {integrity: sha512-fXtDA0X0t0eBYAGLVM5YsgJGsJ5jEmqZEPrGbzdf5awjv0xE7nqv3TVnvtUF060Tkes15DbDAKW/I48vsb6SyA==} + peerDependencies: + react: '>=18.0' + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + jiti@1.21.7: + resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} + hasBin: true + + js-cookie@3.0.5: + resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} + engines: {node: '>=14'} + + js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + 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@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lie@3.3.0: + resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} + + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + 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==} + + lucide-react@0.294.0: + resolution: {integrity: sha512-V7o0/VECSGbLHn3/1O67FUgBwWB+hmzshrgDVRJQhMh8uj5D3HBuIvhuAmQTtlupILSplwIZg5FTc4tTKMA2SA==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 + + maath@0.10.8: + resolution: {integrity: sha512-tRvbDF0Pgqz+9XUa4jjfgAQ8/aPKmQdWXilFu2tMy4GWj4NOsx99HlULO4IeREfbO3a0sA145DZYyvXPkybm0g==} + peerDependencies: + '@types/three': '>=0.134.0' + three: '>=0.134.0' + + match-sorter@6.3.4: + resolution: {integrity: sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + meshline@3.3.1: + resolution: {integrity: sha512-/TQj+JdZkeSUOl5Mk2J7eLcYTLiQm2IDzmlSvYm7ov15anEcDJ92GHqqazxTSreeNgfnYu24kiEvvv0WlbCdFQ==} + peerDependencies: + three: '>=0.137' + + meshoptimizer@0.18.1: + resolution: {integrity: sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + microseconds@0.2.0: + resolution: {integrity: sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + + nano-time@1.0.0: + resolution: {integrity: sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + napi-postinstall@0.3.4: + resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + next@14.0.0: + resolution: {integrity: sha512-J0jHKBJpB9zd4+c153sair0sz44mbaCHxggs8ryVXSFBuBqJ8XdE9/ozoV85xGh2VnSjahwntBZZgsihL9QznA==} + engines: {node: '>=18.17.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + sass: + optional: true + + node-releases@2.0.23: + resolution: {integrity: sha512-cCmFDMSm26S6tQSDpBCg/NR8NENrVPhAJSf+XbxBG4rPFaaonlEoE9wHQmun+cls499TQGSb7ZyPBRlzgKfpeg==} + + 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'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + oblivious-set@1.0.0: + resolution: {integrity: sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + 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.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + + 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-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + 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.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} + engines: {node: '>= 6'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + 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.1.0: + resolution: {integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + + postcss-load-config@6.0.1: + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} + engines: {node: '>= 18'} + peerDependencies: + jiti: '>=1.21.0' + postcss: '>=8.0.9' + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + jiti: + optional: true + postcss: + optional: true + tsx: + optional: true + yaml: + 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.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + engines: {node: '>=4'} + + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + + postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + + postcss@8.5.6: + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + engines: {node: ^10 || ^12 || >=14} + + potpack@1.0.2: + resolution: {integrity: sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + promise-worker-transferable@1.0.4: + resolution: {integrity: sha512-bN+0ehEnrXfxV2ZQvU2PetO0n4gqBD4ulq3MI1WOPLgr7/Mg9yRQkX5+0v1vagr74ZTsl7XtzlaYDo2EuCeYJw==} + + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + 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-composer@5.0.3: + resolution: {integrity: sha512-1uWd07EME6XZvMfapwZmc7NgCZqDemcvicRi3wMJzXsQLvZ3L7fTHVyPy1bZdnWXM4iPjYuNE+uJ41MLKeTtnA==} + peerDependencies: + react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + + react-hook-form@7.64.0: + resolution: {integrity: sha512-fnN+vvTiMLnRqKNTVhDysdrUay0kUUAymQnFIznmgDvapjveUWOOPqMNzPg+A+0yf9DuE2h6xzBjN1s+Qx8wcg==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-hot-toast@2.6.0: + resolution: {integrity: sha512-bH+2EBMZ4sdyou/DPrfgIouFpcRLCJ+HoCA32UoAYHn6T3Ur5yfcDCeSr5mwldl6pFOsiocmrXMuoCJ1vV8bWg==} + engines: {node: '>=10'} + peerDependencies: + react: '>=16' + react-dom: '>=16' + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react-query@3.39.3: + resolution: {integrity: sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + + react-reconciler@0.27.0: + resolution: {integrity: sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==} + engines: {node: '>=0.10.0'} + peerDependencies: + react: ^18.0.0 + + react-use-measure@2.1.7: + resolution: {integrity: sha512-KrvcAo13I/60HpwGO5jpW7E9DfusKyLPLvuHlUyP5zqnmAPhNc6qTRjUQrdTADl0lpPpDVU2/Gg51UlOGHXbdg==} + peerDependencies: + react: '>=16.13' + react-dom: '>=16.13' + peerDependenciesMeta: + react-dom: + optional: true + + 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'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + remove-accents@0.5.0: + resolution: {integrity: sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + rxjs@7.8.2: + resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + scheduler@0.21.0: + resolution: {integrity: sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==} + + 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.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} + engines: {node: '>=10'} + hasBin: true + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + 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'} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + 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.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + stable-hash@0.0.5: + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} + + stats-gl@2.4.2: + resolution: {integrity: sha512-g5O9B0hm9CvnM36+v7SFl39T7hmAlv541tU81ME8YeSb3i1CIP5/QdDeSB3A0la0bKNHpxpwxOVRo2wFTYEosQ==} + peerDependencies: + '@types/three': '*' + three: '*' + + stats.js@0.17.0: + resolution: {integrity: sha512-hNKz8phvYLPEcRkeG1rsGmV5ChMjKDAWU7/OJJdDErPBNChQXxCo3WZurGpnWc6gZhAzEPFad1aVgyOANH1sMw==} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + streamsearch@1.1.0: + resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} + engines: {node: '>=10.0.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'} + + string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + styled-jsx@5.1.1: + resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + + sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + 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'} + + suspend-react@0.1.3: + resolution: {integrity: sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==} + peerDependencies: + react: '>=17.0' + + tailwind-merge@2.6.0: + resolution: {integrity: sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA==} + + tailwindcss@3.4.18: + resolution: {integrity: sha512-6A2rnmW5xZMdw11LYjhcI5846rt9pbLSabY5XPxo+XWdxwZaFEn47Go4NzFiHu9sNNmr/kXivP1vStfvMaK1GQ==} + 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==} + + three-mesh-bvh@0.7.8: + resolution: {integrity: sha512-BGEZTOIC14U0XIRw3tO4jY7IjP7n7v24nv9JXS1CyeVRWOCkcOMhRnmENUjuV39gktAw4Ofhr0OvIAiTspQrrw==} + deprecated: Deprecated due to three.js version incompatibility. Please use v0.8.0, instead. + peerDependencies: + three: '>= 0.151.0' + + three-stdlib@2.36.0: + resolution: {integrity: sha512-kv0Byb++AXztEGsULgMAs8U2jgUdz6HPpAB/wDJnLiLlaWQX2APHhiTJIN7rqW+Of0eRgcp7jn05U1BsCP3xBA==} + peerDependencies: + three: '>=0.128.0' + + three@0.158.0: + resolution: {integrity: sha512-TALj4EOpdDPF1henk2Q+s17K61uEAAWQ7TJB68nr7FKxqwyDr3msOt5IWdbGm4TaWKjrtWS8DJJWe9JnvsWOhQ==} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + troika-three-text@0.52.4: + resolution: {integrity: sha512-V50EwcYGruV5rUZ9F4aNsrytGdKcXKALjEtQXIOBfhVoZU9VAqZNIoGQ3TMiooVqFAbR1w15T+f+8gkzoFzawg==} + peerDependencies: + three: '>=0.125.0' + + troika-three-utils@0.52.4: + resolution: {integrity: sha512-NORAStSVa/BDiG52Mfudk4j1FG4jC4ILutB3foPnfGbOeIs9+G5vZLa0pnmnaftZUGm4UwSoqEpWdqvC7zms3A==} + peerDependencies: + three: '>=0.125.0' + + troika-worker-utils@0.52.0: + resolution: {integrity: sha512-W1CpvTHykaPH5brv5VHLfQo9D1OYuo0cSBEUQFFT/nBUzM8iD6Lq2/tgG/f1OelbAS1WtaTPQzE5uM49egnngw==} + + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tunnel-rat@0.1.2: + resolution: {integrity: sha512-lR5VHmkPhzdhrM092lI2nACsLO4QubF0/yoOhzX7c+wIpbN1GjHNzCc91QlpxBi+cnx8vVJ+Ur6vL5cEoQPFpQ==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + unload@2.2.0: + resolution: {integrity: sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==} + + unrs-resolver@1.11.1: + resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + use-sync-external-store@1.6.0: + resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + utility-types@3.11.0: + resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==} + engines: {node: '>= 4'} + + uuid@11.1.0: + resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} + hasBin: true + + watchpack@2.4.0: + resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} + engines: {node: '>=10.13.0'} + + webgl-constants@1.1.1: + resolution: {integrity: sha512-LkBXKjU5r9vAW7Gcu3T5u+5cvSvh5WwINdr0C+9jpzVB41cjQAP5ePArDtk/WHYdVj0GefCgM73BA7FlIiNtdg==} + + webgl-sdf-generator@1.1.1: + resolution: {integrity: sha512-9Z0JcMTFxeE+b2x1LJTdnaT8rT8aEp7MVxkNwoycNmJWwPdzoXzMh0BjJSh/AEFP+KPYZUli814h8bJZFIZ2jA==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.19: + resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + engines: {node: '>= 0.4'} + + 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'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zod@3.25.76: + resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + + zustand@3.7.2: + resolution: {integrity: sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==} + engines: {node: '>=12.7.0'} + peerDependencies: + react: '>=16.8' + peerDependenciesMeta: + react: + optional: true + + zustand@4.5.7: + resolution: {integrity: sha512-CHOUy7mu3lbD6o6LJLfllpjkzhHXSBlX8B9+qPddUsIfeF5S/UZ5q0kmCsnRqT1UHFQZchNFDDzMbQsuesHWlw==} + engines: {node: '>=12.7.0'} + peerDependencies: + '@types/react': '>=16.8' + immer: '>=9.0.6' + react: '>=16.8' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + + zustand@5.0.8: + resolution: {integrity: sha512-gyPKpIaxY9XcO2vSMrLbiER7QMAMGOQZVRdJ6Zi782jkbzZygq5GI9nG8g+sMgitRtndwaBSl7uiqC49o1SSiw==} + engines: {node: '>=12.20.0'} + peerDependencies: + '@types/react': '>=18.0.0' + immer: '>=9.0.6' + react: '>=18.0.0' + use-sync-external-store: '>=1.2.0' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + use-sync-external-store: + optional: true + +snapshots: + + '@alloc/quick-lru@5.2.0': {} + + '@aws-amplify/auth@6.16.0(@aws-amplify/core@6.13.3)': + dependencies: + '@aws-amplify/core': 6.13.3 + '@aws-crypto/sha256-js': 5.2.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 + + '@aws-amplify/core@6.13.3': + dependencies: + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/types': 3.398.0 + '@smithy/util-hex-encoding': 2.0.0 + '@types/uuid': 9.0.8 + js-cookie: 3.0.5 + rxjs: 7.8.2 + tslib: 2.8.1 + uuid: 11.1.0 + + '@aws-crypto/sha256-js@5.2.0': + dependencies: + '@aws-crypto/util': 5.2.0 + '@aws-sdk/types': 3.901.0 + tslib: 2.8.1 + + '@aws-crypto/util@5.2.0': + dependencies: + '@aws-sdk/types': 3.901.0 + '@smithy/util-utf8': 2.3.0 + tslib: 2.8.1 + + '@aws-sdk/types@3.398.0': + dependencies: + '@smithy/types': 2.12.0 + tslib: 2.8.1 + + '@aws-sdk/types@3.901.0': + dependencies: + '@smithy/types': 4.6.0 + tslib: 2.8.1 + + '@babel/runtime@7.28.4': {} + + '@emnapi/core@1.5.0': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.5.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@emotion/is-prop-valid@0.8.8': + dependencies: + '@emotion/memoize': 0.7.4 + optional: true + + '@emotion/memoize@0.7.4': + optional: true + + '@eslint-community/eslint-utils@4.9.0(eslint@8.57.1)': + dependencies: + eslint: 8.57.1 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.1': {} + + '@eslint/eslintrc@2.1.4': + dependencies: + ajv: 6.12.6 + debug: 4.4.3 + espree: 9.6.1 + globals: 13.24.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@8.57.1': {} + + '@hookform/resolvers@3.10.0(react-hook-form@7.64.0(react@18.3.1))': + dependencies: + react-hook-form: 7.64.0(react@18.3.1) + + '@humanwhocodes/config-array@0.13.0': + dependencies: + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.4.3 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/object-schema@2.0.3': {} + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.2 + 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.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@mediapipe/tasks-vision@0.10.17': {} + + '@monogrid/gainmap-js@3.1.0(three@0.158.0)': + dependencies: + promise-worker-transferable: 1.0.4 + three: 0.158.0 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.5.0 + '@emnapi/runtime': 1.5.0 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@next/env@14.0.0': {} + + '@next/eslint-plugin-next@14.0.0': + dependencies: + glob: 7.1.7 + + '@next/swc-darwin-arm64@14.0.0': + optional: true + + '@next/swc-darwin-x64@14.0.0': + optional: true + + '@next/swc-linux-arm64-gnu@14.0.0': + optional: true + + '@next/swc-linux-arm64-musl@14.0.0': + optional: true + + '@next/swc-linux-x64-gnu@14.0.0': + optional: true + + '@next/swc-linux-x64-musl@14.0.0': + optional: true + + '@next/swc-win32-arm64-msvc@14.0.0': + optional: true + + '@next/swc-win32-ia32-msvc@14.0.0': + optional: true + + '@next/swc-win32-x64-msvc@14.0.0': + optional: true + + '@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.19.1 + + '@nolyfill/is-core-module@1.0.39': {} + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@react-spring/animated@9.7.5(react@18.3.1)': + dependencies: + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 + react: 18.3.1 + + '@react-spring/core@9.7.5(react@18.3.1)': + dependencies: + '@react-spring/animated': 9.7.5(react@18.3.1) + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 + react: 18.3.1 + + '@react-spring/rafz@9.7.5': {} + + '@react-spring/shared@9.7.5(react@18.3.1)': + dependencies: + '@react-spring/rafz': 9.7.5 + '@react-spring/types': 9.7.5 + react: 18.3.1 + + '@react-spring/three@9.7.5(@react-three/fiber@8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0))(react@18.3.1)(three@0.158.0)': + dependencies: + '@react-spring/animated': 9.7.5(react@18.3.1) + '@react-spring/core': 9.7.5(react@18.3.1) + '@react-spring/shared': 9.7.5(react@18.3.1) + '@react-spring/types': 9.7.5 + '@react-three/fiber': 8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0) + react: 18.3.1 + three: 0.158.0 + + '@react-spring/types@9.7.5': {} + + '@react-three/drei@9.122.0(@react-three/fiber@8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0))(@types/react@18.3.26)(@types/three@0.158.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0)(use-sync-external-store@1.6.0(react@18.3.1))': + dependencies: + '@babel/runtime': 7.28.4 + '@mediapipe/tasks-vision': 0.10.17 + '@monogrid/gainmap-js': 3.1.0(three@0.158.0) + '@react-spring/three': 9.7.5(@react-three/fiber@8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0))(react@18.3.1)(three@0.158.0) + '@react-three/fiber': 8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0) + '@use-gesture/react': 10.3.1(react@18.3.1) + camera-controls: 2.10.1(three@0.158.0) + cross-env: 7.0.3 + detect-gpu: 5.0.70 + glsl-noise: 0.0.0 + hls.js: 1.6.13 + maath: 0.10.8(@types/three@0.158.3)(three@0.158.0) + meshline: 3.3.1(three@0.158.0) + react: 18.3.1 + react-composer: 5.0.3(react@18.3.1) + stats-gl: 2.4.2(@types/three@0.158.3)(three@0.158.0) + stats.js: 0.17.0 + suspend-react: 0.1.3(react@18.3.1) + three: 0.158.0 + three-mesh-bvh: 0.7.8(three@0.158.0) + three-stdlib: 2.36.0(three@0.158.0) + troika-three-text: 0.52.4(three@0.158.0) + tunnel-rat: 0.1.2(@types/react@18.3.26)(react@18.3.1) + utility-types: 3.11.0 + zustand: 5.0.8(@types/react@18.3.26)(react@18.3.1)(use-sync-external-store@1.6.0(react@18.3.1)) + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + - '@types/three' + - immer + - use-sync-external-store + + '@react-three/fiber@8.18.0(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.158.0)': + dependencies: + '@babel/runtime': 7.28.4 + '@types/react-reconciler': 0.26.7 + '@types/webxr': 0.5.24 + base64-js: 1.5.1 + buffer: 6.0.3 + its-fine: 1.2.5(@types/react@18.3.26)(react@18.3.1) + react: 18.3.1 + react-reconciler: 0.27.0(react@18.3.1) + react-use-measure: 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + scheduler: 0.21.0 + suspend-react: 0.1.3(react@18.3.1) + three: 0.158.0 + zustand: 3.7.2(react@18.3.1) + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + + '@rtsao/scc@1.1.0': {} + + '@rushstack/eslint-patch@1.13.0': {} + + '@smithy/is-array-buffer@2.2.0': + dependencies: + tslib: 2.8.1 + + '@smithy/types@2.12.0': + dependencies: + tslib: 2.8.1 + + '@smithy/types@3.7.2': + dependencies: + tslib: 2.8.1 + + '@smithy/types@4.6.0': + dependencies: + tslib: 2.8.1 + + '@smithy/util-buffer-from@2.2.0': + dependencies: + '@smithy/is-array-buffer': 2.2.0 + tslib: 2.8.1 + + '@smithy/util-hex-encoding@2.0.0': + dependencies: + tslib: 2.8.1 + + '@smithy/util-utf8@2.3.0': + dependencies: + '@smithy/util-buffer-from': 2.2.0 + tslib: 2.8.1 + + '@stripe/react-stripe-js@2.9.0(@stripe/stripe-js@2.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@stripe/stripe-js': 2.4.0 + prop-types: 15.8.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@stripe/stripe-js@2.4.0': {} + + '@swc/helpers@0.5.2': + dependencies: + tslib: 2.8.1 + + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/draco3d@1.4.10': {} + + '@types/json5@0.0.29': {} + + '@types/node@20.19.20': + dependencies: + undici-types: 6.21.0 + + '@types/offscreencanvas@2019.7.3': {} + + '@types/prop-types@15.7.15': {} + + '@types/react-dom@18.3.7(@types/react@18.3.26)': + dependencies: + '@types/react': 18.3.26 + + '@types/react-reconciler@0.26.7': + dependencies: + '@types/react': 18.3.26 + + '@types/react-reconciler@0.28.9(@types/react@18.3.26)': + dependencies: + '@types/react': 18.3.26 + + '@types/react@18.3.26': + dependencies: + '@types/prop-types': 15.7.15 + csstype: 3.1.3 + + '@types/stats.js@0.17.4': {} + + '@types/three@0.158.3': + dependencies: + '@types/stats.js': 0.17.4 + '@types/webxr': 0.5.24 + fflate: 0.6.10 + meshoptimizer: 0.18.1 + + '@types/uuid@9.0.8': {} + + '@types/webxr@0.5.24': {} + + '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.4.3 + eslint: 8.57.1 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + + '@typescript-eslint/types@6.21.0': {} + + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.4.3 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.3 + semver: 7.7.3 + ts-api-utils: 1.4.3(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + eslint-visitor-keys: 3.4.3 + + '@ungap/structured-clone@1.3.0': {} + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + optional: true + + '@unrs/resolver-binding-android-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + optional: true + + '@use-gesture/core@10.3.1': {} + + '@use-gesture/react@10.3.1(react@18.3.1)': + dependencies: + '@use-gesture/core': 10.3.1 + react: 18.3.1 + + acorn-jsx@5.3.2(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + + acorn@8.15.0: {} + + 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.2.2: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.3: {} + + 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: {} + + aria-query@5.3.2: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-includes@3.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + + array-union@2.1.0: {} + + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.findlastindex@1.2.6: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + ast-types-flow@0.0.8: {} + + async-function@1.0.0: {} + + asynckit@0.4.0: {} + + autoprefixer@10.4.21(postcss@8.5.6): + dependencies: + browserslist: 4.26.3 + caniuse-lite: 1.0.30001749 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.1.1 + postcss: 8.5.6 + postcss-value-parser: 4.2.0 + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axe-core@4.11.0: {} + + axios@1.12.2: + dependencies: + follow-redirects: 1.15.11 + form-data: 4.0.4 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + axobject-query@4.1.0: {} + + balanced-match@1.0.2: {} + + base64-js@1.5.1: {} + + baseline-browser-mapping@2.8.15: {} + + bidi-js@1.0.3: + dependencies: + require-from-string: 2.0.2 + + big-integer@1.6.52: {} + + binary-extensions@2.3.0: {} + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + broadcast-channel@3.7.0: + dependencies: + '@babel/runtime': 7.28.4 + detect-node: 2.1.0 + js-sha3: 0.8.0 + microseconds: 0.2.0 + nano-time: 1.0.0 + oblivious-set: 1.0.0 + rimraf: 3.0.2 + unload: 2.2.0 + + browserslist@4.26.3: + dependencies: + baseline-browser-mapping: 2.8.15 + caniuse-lite: 1.0.30001749 + electron-to-chromium: 1.5.234 + node-releases: 2.0.23 + update-browserslist-db: 1.1.3(browserslist@4.26.3) + + buffer@6.0.3: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + busboy@1.6.0: + dependencies: + streamsearch: 1.1.0 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + callsites@3.1.0: {} + + camelcase-css@2.0.1: {} + + camera-controls@2.10.1(three@0.158.0): + dependencies: + three: 0.158.0 + + caniuse-lite@1.0.30001749: {} + + 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 + + client-only@0.0.1: {} + + clsx@2.1.1: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + commander@4.1.1: {} + + concat-map@0.0.1: {} + + cross-env@7.0.3: + dependencies: + cross-spawn: 7.0.6 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + cssesc@3.0.0: {} + + csstype@3.1.3: {} + + damerau-levenshtein@1.0.8: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + delayed-stream@1.0.0: {} + + detect-gpu@5.0.70: + dependencies: + webgl-constants: 1.1.1 + + detect-node@2.1.0: {} + + didyoumean@1.2.2: {} + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dlv@1.1.3: {} + + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + + doctrine@3.0.0: + dependencies: + esutils: 2.0.3 + + draco3d@1.5.7: {} + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + eastasianwidth@0.2.0: {} + + electron-to-chromium@1.5.234: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + es-abstract@1.24.0: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.1.0: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + eslint-config-next@14.0.0(eslint@8.57.1)(typescript@5.9.3): + dependencies: + '@next/eslint-plugin-next': 14.0.0 + '@rushstack/eslint-patch': 1.13.0 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.9.3) + eslint: 8.57.1 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) + eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.1) + eslint-plugin-react: 7.37.5(eslint@8.57.1) + eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.1) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + + eslint-import-resolver-node@0.3.9: + dependencies: + debug: 3.2.7 + is-core-module: 2.16.1 + resolve: 1.22.10 + transitivePeerDependencies: + - supports-color + + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.3 + eslint: 8.57.1 + get-tsconfig: 4.12.0 + is-bun-module: 2.0.0 + stable-hash: 0.0.5 + tinyglobby: 0.2.15 + unrs-resolver: 1.11.1 + optionalDependencies: + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.12.1(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.9.3) + eslint: 8.57.1 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1) + transitivePeerDependencies: + - supports-color + + eslint-plugin-import@2.32.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1): + dependencies: + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 8.57.1 + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.1(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@8.57.1))(eslint@8.57.1))(eslint@8.57.1) + hasown: 2.0.2 + is-core-module: 2.16.1 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.9 + tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.9.3) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + + eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.1): + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.11.0 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 8.57.1 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + + eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705(eslint@8.57.1): + dependencies: + eslint: 8.57.1 + + eslint-plugin-react@7.37.5(eslint@8.57.1): + dependencies: + array-includes: 3.1.9 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.2.1 + eslint: 8.57.1 + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.9 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.12 + string.prototype.repeat: 1.0.0 + + eslint-scope@7.2.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint@8.57.1: + dependencies: + '@eslint-community/eslint-utils': 4.9.0(eslint@8.57.1) + '@eslint-community/regexpp': 4.12.1 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.57.1 + '@humanwhocodes/config-array': 0.13.0 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.3.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.3 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.24.0 + graphemer: 1.4.0 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + + espree@9.6.1: + dependencies: + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 3.4.3 + + 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.3: + 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.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.19.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fflate@0.6.10: {} + + file-entry-cache@6.0.1: + dependencies: + flat-cache: 3.2.0 + + 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@3.2.0: + dependencies: + flatted: 3.3.3 + keyv: 4.5.4 + rimraf: 3.0.2 + + flatted@3.3.3: {} + + follow-redirects@1.15.11: {} + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + form-data@4.0.4: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + + fraction.js@4.3.7: {} + + framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + tslib: 2.8.1 + optionalDependencies: + '@emotion/is-prop-valid': 0.8.8 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + + get-tsconfig@4.12.0: + dependencies: + resolve-pkg-maps: 1.0.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob-to-regexp@0.4.1: {} + + glob@10.4.5: + dependencies: + foreground-child: 3.3.1 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + + glob@7.1.7: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@13.24.0: + dependencies: + type-fest: 0.20.2 + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + glsl-noise@0.0.0: {} + + goober@2.1.18(csstype@3.1.3): + dependencies: + csstype: 3.1.3 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hls.js@1.6.13: {} + + ieee754@1.2.1: {} + + ignore@5.3.2: {} + + immediate@3.0.6: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-bun-module@2.0.0: + dependencies: + semver: 7.7.3 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-fullwidth-code-point@3.0.0: {} + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-path-inside@3.0.3: {} + + is-promise@2.2.2: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.19 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + iterator.prototype@1.1.5: + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + + its-fine@1.2.5(@types/react@18.3.26)(react@18.3.1): + dependencies: + '@types/react-reconciler': 0.28.9(@types/react@18.3.26) + react: 18.3.1 + transitivePeerDependencies: + - '@types/react' + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + jiti@1.21.7: {} + + js-cookie@3.0.5: {} + + js-sha3@0.8.0: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@1.0.2: + dependencies: + minimist: 1.2.8 + + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lie@3.3.0: + dependencies: + immediate: 3.0.6 + + lilconfig@3.1.3: {} + + 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: {} + + lucide-react@0.294.0(react@18.3.1): + dependencies: + react: 18.3.1 + + maath@0.10.8(@types/three@0.158.3)(three@0.158.0): + dependencies: + '@types/three': 0.158.3 + three: 0.158.0 + + match-sorter@6.3.4: + dependencies: + '@babel/runtime': 7.28.4 + remove-accents: 0.5.0 + + math-intrinsics@1.1.0: {} + + merge2@1.4.1: {} + + meshline@3.3.1(three@0.158.0): + dependencies: + three: 0.158.0 + + meshoptimizer@0.18.1: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + microseconds@0.2.0: {} + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.12 + + minimatch@9.0.3: + dependencies: + brace-expansion: 2.0.2 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.2 + + minimist@1.2.8: {} + + minipass@7.1.2: {} + + ms@2.1.3: {} + + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + + nano-time@1.0.0: + dependencies: + big-integer: 1.6.52 + + nanoid@3.3.11: {} + + napi-postinstall@0.3.4: {} + + natural-compare@1.4.0: {} + + next@14.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@next/env': 14.0.0 + '@swc/helpers': 0.5.2 + busboy: 1.6.0 + caniuse-lite: 1.0.30001749 + postcss: 8.4.31 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + styled-jsx: 5.1.1(react@18.3.1) + watchpack: 2.4.0 + optionalDependencies: + '@next/swc-darwin-arm64': 14.0.0 + '@next/swc-darwin-x64': 14.0.0 + '@next/swc-linux-arm64-gnu': 14.0.0 + '@next/swc-linux-arm64-musl': 14.0.0 + '@next/swc-linux-x64-gnu': 14.0.0 + '@next/swc-linux-x64-musl': 14.0.0 + '@next/swc-win32-arm64-msvc': 14.0.0 + '@next/swc-win32-ia32-msvc': 14.0.0 + '@next/swc-win32-x64-msvc': 14.0.0 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + node-releases@2.0.23: {} + + normalize-path@3.0.0: {} + + normalize-range@0.1.2: {} + + object-assign@4.1.1: {} + + object-hash@3.0.0: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.entries@1.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + + object.groupby@1.0.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + oblivious-set@1.0.0: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + 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 + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + 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.1: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + 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.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + pify@2.3.0: {} + + pirates@4.0.7: {} + + possible-typed-array-names@1.1.0: {} + + postcss-import@15.1.0(postcss@8.5.6): + dependencies: + postcss: 8.5.6 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.10 + + postcss-js@4.1.0(postcss@8.5.6): + dependencies: + camelcase-css: 2.0.1 + postcss: 8.5.6 + + postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6): + dependencies: + lilconfig: 3.1.3 + optionalDependencies: + jiti: 1.21.7 + postcss: 8.5.6 + + postcss-nested@6.2.0(postcss@8.5.6): + dependencies: + postcss: 8.5.6 + postcss-selector-parser: 6.1.2 + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-value-parser@4.2.0: {} + + postcss@8.4.31: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + postcss@8.5.6: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + potpack@1.0.2: {} + + prelude-ls@1.2.1: {} + + promise-worker-transferable@1.0.4: + dependencies: + is-promise: 2.2.2 + lie: 3.3.0 + + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + proxy-from-env@1.1.0: {} + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + react-composer@5.0.3(react@18.3.1): + dependencies: + prop-types: 15.8.1 + react: 18.3.1 + + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + + react-hook-form@7.64.0(react@18.3.1): + dependencies: + react: 18.3.1 + + react-hot-toast@2.6.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + csstype: 3.1.3 + goober: 2.1.18(csstype@3.1.3) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + react-is@16.13.1: {} + + react-query@3.39.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@babel/runtime': 7.28.4 + broadcast-channel: 3.7.0 + match-sorter: 6.3.4 + react: 18.3.1 + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + + react-reconciler@0.27.0(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.21.0 + + react-use-measure@2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + react: 18.3.1 + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + + 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 + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + remove-accents@0.5.0: {} + + require-from-string@2.0.2: {} + + resolve-from@4.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + rimraf@3.0.2: + dependencies: + glob: 7.2.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + rxjs@7.8.2: + dependencies: + tslib: 2.8.1 + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + scheduler@0.21.0: + dependencies: + loose-envify: 1.4.0 + + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + + semver@6.3.1: {} + + semver@7.7.3: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + signal-exit@4.1.0: {} + + slash@3.0.0: {} + + source-map-js@1.2.1: {} + + stable-hash@0.0.5: {} + + stats-gl@2.4.2(@types/three@0.158.3)(three@0.158.0): + dependencies: + '@types/three': 0.158.3 + three: 0.158.0 + + stats.js@0.17.0: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + streamsearch@1.1.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.2 + + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + + strip-bom@3.0.0: {} + + strip-json-comments@3.1.1: {} + + styled-jsx@5.1.1(react@18.3.1): + dependencies: + client-only: 0.0.1 + react: 18.3.1 + + sucrase@3.35.0: + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + commander: 4.1.1 + glob: 10.4.5 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.7 + ts-interface-checker: 0.1.13 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + suspend-react@0.1.3(react@18.3.1): + dependencies: + react: 18.3.1 + + tailwind-merge@2.6.0: {} + + tailwindcss@3.4.18: + 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.3 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.7 + lilconfig: 3.1.3 + micromatch: 4.0.8 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.1.1 + postcss: 8.5.6 + postcss-import: 15.1.0(postcss@8.5.6) + postcss-js: 4.1.0(postcss@8.5.6) + postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6) + postcss-nested: 6.2.0(postcss@8.5.6) + postcss-selector-parser: 6.1.2 + resolve: 1.22.10 + sucrase: 3.35.0 + transitivePeerDependencies: + - tsx + - yaml + + 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 + + three-mesh-bvh@0.7.8(three@0.158.0): + dependencies: + three: 0.158.0 + + three-stdlib@2.36.0(three@0.158.0): + dependencies: + '@types/draco3d': 1.4.10 + '@types/offscreencanvas': 2019.7.3 + '@types/webxr': 0.5.24 + draco3d: 1.5.7 + fflate: 0.6.10 + potpack: 1.0.2 + three: 0.158.0 + + three@0.158.0: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + troika-three-text@0.52.4(three@0.158.0): + dependencies: + bidi-js: 1.0.3 + three: 0.158.0 + troika-three-utils: 0.52.4(three@0.158.0) + troika-worker-utils: 0.52.0 + webgl-sdf-generator: 1.1.1 + + troika-three-utils@0.52.4(three@0.158.0): + dependencies: + three: 0.158.0 + + troika-worker-utils@0.52.0: {} + + ts-api-utils@1.4.3(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-interface-checker@0.1.13: {} + + tsconfig-paths@3.15.0: + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.8 + strip-bom: 3.0.0 + + tslib@2.8.1: {} + + tunnel-rat@0.1.2(@types/react@18.3.26)(react@18.3.1): + dependencies: + zustand: 4.5.7(@types/react@18.3.26)(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + - immer + - react + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@0.20.2: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript@5.9.3: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + undici-types@6.21.0: {} + + unload@2.2.0: + dependencies: + '@babel/runtime': 7.28.4 + detect-node: 2.1.0 + + unrs-resolver@1.11.1: + dependencies: + napi-postinstall: 0.3.4 + optionalDependencies: + '@unrs/resolver-binding-android-arm-eabi': 1.11.1 + '@unrs/resolver-binding-android-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-x64': 1.11.1 + '@unrs/resolver-binding-freebsd-x64': 1.11.1 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-arm64-musl': 1.11.1 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-musl': 1.11.1 + '@unrs/resolver-binding-linux-s390x-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-musl': 1.11.1 + '@unrs/resolver-binding-wasm32-wasi': 1.11.1 + '@unrs/resolver-binding-win32-arm64-msvc': 1.11.1 + '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1 + '@unrs/resolver-binding-win32-x64-msvc': 1.11.1 + + update-browserslist-db@1.1.3(browserslist@4.26.3): + dependencies: + browserslist: 4.26.3 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + use-sync-external-store@1.6.0(react@18.3.1): + dependencies: + react: 18.3.1 + + util-deprecate@1.0.2: {} + + utility-types@3.11.0: {} + + uuid@11.1.0: {} + + watchpack@2.4.0: + dependencies: + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + + webgl-constants@1.1.1: {} + + webgl-sdf-generator@1.1.1: {} + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.19 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.19: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + 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.3 + string-width: 5.1.2 + strip-ansi: 7.1.2 + + wrappy@1.0.2: {} + + yocto-queue@0.1.0: {} + + zod@3.25.76: {} + + zustand@3.7.2(react@18.3.1): + optionalDependencies: + react: 18.3.1 + + zustand@4.5.7(@types/react@18.3.26)(react@18.3.1): + dependencies: + use-sync-external-store: 1.6.0(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.26 + react: 18.3.1 + + zustand@5.0.8(@types/react@18.3.26)(react@18.3.1)(use-sync-external-store@1.6.0(react@18.3.1)): + optionalDependencies: + '@types/react': 18.3.26 + react: 18.3.1 + use-sync-external-store: 1.6.0(react@18.3.1) diff --git a/ekart-aws-localstack/frontend/postcss.config.js b/ekart-aws-localstack/frontend/postcss.config.js new file mode 100644 index 0000000..67cdf1a --- /dev/null +++ b/ekart-aws-localstack/frontend/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/ekart-aws-localstack/frontend/src/app/auth/login/page.tsx b/ekart-aws-localstack/frontend/src/app/auth/login/page.tsx new file mode 100644 index 0000000..2f6a7f5 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/auth/login/page.tsx @@ -0,0 +1,125 @@ +'use client' + +import { useState } from 'react'; +import { useRouter } from 'next/navigation'; +import Link from 'next/link'; + +export default function LoginPage() { + const router = useRouter(); + const [formData, setFormData] = useState({ + email: '', + password: '' + }); + const [error, setError] = useState(''); + const [loading, setLoading] = useState(false); + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault(); + setError(''); + setLoading(true); + + try { + const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; + const response = await fetch(`${API_URL}/api/auth/login`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(formData) + }); + + const data = await response.json(); + + if (!response.ok) { + throw new Error(data.error || data.detail || 'Login failed'); + } + + // Store auth data + localStorage.setItem('access_token', data.access_token); + localStorage.setItem('user_id', data.user_id); + localStorage.setItem('user_email', data.email); + localStorage.setItem('user_type', data.user_type); + + // Redirect based on user type + if (data.user_type === 'seller') { + router.push('/seller/dashboard'); + } else { + router.push('/'); + } + } catch (err) { + setError(err instanceof Error ? err.message : 'Login failed'); + } finally { + setLoading(false); + } + }; + + return ( +

+ ) +} diff --git a/ekart-aws-localstack/frontend/src/app/auth/register/page.tsx b/ekart-aws-localstack/frontend/src/app/auth/register/page.tsx new file mode 100644 index 0000000..edf16fb --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/auth/register/page.tsx @@ -0,0 +1,203 @@ +'use client' + +import { useState } from 'react'; +import { useRouter } from 'next/navigation'; +import Link from 'next/link'; +import { Button } from '@/components/ui/Button'; +import { Input } from '@/components/ui/Input'; +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card'; + +export default function CustomerSignUpPage() { + const router = useRouter(); + const [formData, setFormData] = useState({ + email: '', + password: '', + confirmPassword: '', + firstName: '', + lastName: '', + phone: '', + userType: 'customer' // Default to customer + }); + const [loading, setLoading] = useState(false); + const [error, setError] = useState(null); + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault(); + setError(null); + + if (formData.password !== formData.confirmPassword) { + setError('Passwords do not match'); + return; + } + + if (formData.password.length < 8) { + setError('Password must be at least 8 characters long'); + return; + } + + setLoading(true); + + try { + const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; + const response = await fetch(`${API_URL}/api/auth/register`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + email: formData.email, + password: formData.password, + first_name: formData.firstName, + last_name: formData.lastName, + phone: formData.phone, + user_type: formData.userType + }), + }); + + if (!response.ok) { + const data = await response.json(); + throw new Error(data.error || data.detail || 'Registration failed'); + } + + const data = await response.json(); + + if (data.access_token) { + localStorage.setItem('token', data.access_token); + localStorage.setItem('userType', formData.userType); + } + + router.push('/products'); + + } catch (err) { + setError(err instanceof Error ? err.message : 'Registration failed. Please try again.'); + } finally { + setLoading(false); + } + }; + + const handleChange = (e: React.ChangeEvent) => { + setFormData({ + ...formData, + [e.target.name]: e.target.value + }); + }; + + return ( +
+
+ + + + Create your Customer Account + +

+ Already have an account?{' '} + + Sign in + +

+
+ + + {error && ( +
+ {error} +
+ )} + +
+
+ + +
+ + + + + + + + + +
+ + +
+ + +
+ +
+

+ Want to sell products instead? + + Register as a Seller + +

+
+ +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/auth/seller-register/page.tsx b/ekart-aws-localstack/frontend/src/app/auth/seller-register/page.tsx new file mode 100644 index 0000000..37c9859 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/auth/seller-register/page.tsx @@ -0,0 +1,203 @@ +'use client' + +import { useState } from 'react'; +import { useRouter } from 'next/navigation'; +import Link from 'next/link'; +import { Button } from '@/components/ui/Button'; +import { Input } from '@/components/ui/Input'; +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card'; + +export default function SellerSignUpPage() { + const router = useRouter(); + const [formData, setFormData] = useState({ + email: '', + password: '', + confirmPassword: '', + firstName: '', + lastName: '', + phone: '', + userType: 'seller' // Default to seller + }); + const [loading, setLoading] = useState(false); + const [error, setError] = useState(null); + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault(); + setError(null); + + if (formData.password !== formData.confirmPassword) { + setError('Passwords do not match'); + return; + } + + if (formData.password.length < 8) { + setError('Password must be at least 8 characters long'); + return; + } + + setLoading(true); + + try { + const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; + const response = await fetch(`${API_URL}/api/auth/register`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + email: formData.email, + password: formData.password, + first_name: formData.firstName, + last_name: formData.lastName, + phone: formData.phone, + user_type: formData.userType + }), + }); + + if (!response.ok) { + const data = await response.json(); + throw new Error(data.error || data.detail || 'Registration failed'); + } + + const data = await response.json(); + + if (data.access_token) { + localStorage.setItem('token', data.access_token); + localStorage.setItem('userType', formData.userType); + } + + router.push('/seller/dashboard'); + + } catch (err) { + setError(err instanceof Error ? err.message : 'Registration failed. Please try again.'); + } finally { + setLoading(false); + } + }; + + const handleChange = (e: React.ChangeEvent) => { + setFormData({ + ...formData, + [e.target.name]: e.target.value + }); + }; + + return ( +
+
+ + + + Create your Seller Account + +

+ Already have an account?{' '} + + Sign in + +

+
+ + + {error && ( +
+ {error} +
+ )} + +
+
+ + +
+ + + + + + + + + +
+ + +
+ + +
+ +
+

+ Want to buy products instead? + + Register as a Customer + +

+
+ +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/cart/page.tsx b/ekart-aws-localstack/frontend/src/app/cart/page.tsx new file mode 100644 index 0000000..3d53fb4 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/cart/page.tsx @@ -0,0 +1,235 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter } from 'next/navigation'; +import { Trash2, Plus, Minus } from 'lucide-react'; +import { Button } from '@/components/ui/Button'; +import { API_URL } from '@/lib/config'; + +interface CartItem { + product_id: string; + quantity: number; + added_at: string; +} + +interface Cart { + user_id: string; + items: CartItem[]; +} + +interface Product { + product_id: string; + title: string; + price: number; + image_url?: string; +} + +export default function CartPage() { + const [cart, setCart] = useState(null); + const [products, setProducts] = useState>(new Map()); + const [loading, setLoading] = useState(true); + const router = useRouter(); + + useEffect(() => { + fetchCart(); + }, []); + + const API = API_URL; + + const fetchCart = async () => { + try { + const token = localStorage.getItem('access_token'); + if (!token) { + router.push('/auth/login'); + return; + } + + const response = await fetch(`${API}/api/cart`, { + headers: { + 'Authorization': `Bearer ${token}` + } + }); + + if (response.ok) { + const data = await response.json(); + setCart(data); + + if (data.items && data.items.length > 0) { + const uniqueIds = Array.from(new Set((data.items as CartItem[]).map((i) => i.product_id))); + const prodResults = await Promise.all(uniqueIds.map((pid) => fetch(`${API}/api/products/${pid}`).then(r => r.json()))); + const map = new Map(); + prodResults.forEach((p: Product) => map.set(p.product_id, p)); + setProducts(map); + } else { + setProducts(new Map()); + } + } + } catch (error) { + console.error('Error fetching cart:', error); + } finally { + setLoading(false); + } + }; + + const removeItem = async (productId: string) => { + try { + const token = localStorage.getItem('access_token'); + const response = await fetch(`${API}/api/cart/items/${productId}`, { + method: 'DELETE', + headers: { + 'Authorization': `Bearer ${token}` + } + }); + + if (response.ok) { + fetchCart(); + } + } catch (error) { + console.error('Error removing item:', error); + } + }; + + const updateQuantity = async (productId: string, newQuantity: number) => { + if (newQuantity < 1) return; + + try { + const token = localStorage.getItem('access_token'); + const response = await fetch(`${API}/api/cart/items/${productId}`, { + method: 'PUT', + headers: { + 'Authorization': `Bearer ${token}`, + 'Content-Type': 'application/json' + }, + body: JSON.stringify({ quantity: newQuantity }) + }); + + if (response.ok) { + fetchCart(); + } + } catch (error) { + console.error('Error updating quantity:', error); + } + }; + + const subtotal = cart?.items?.reduce((sum, i) => { + const unit = Number((i as any).price) || 0; + return sum + unit * Number(i.quantity || 0); + }, 0) || 0; + + if (loading) { + return ( +
+
Loading cart...
+
+ ); + } + + if (!cart || cart.items.length === 0) { + return ( +
+

Shopping Cart

+
+

Your cart is empty

+ +
+
+ ); + } + + return ( +
+

Shopping Cart

+ +
+ {/* Cart Items */} +
+
+ {cart.items.map((item) => { + const product = products.get(item.product_id); + const price = Number((item as any).price) || 0; + return ( +
+
+
+

+ {(item as any).product_name || (product ? product.title : `Product ${item.product_id.substring(0,8)}...`)} +

+

Unit price: ${price.toFixed(2)}

+

Added: {new Date(item.added_at).toLocaleDateString()}

+
+ +
+
+

${(price * Number(item.quantity || 0)).toFixed(2)}

+
+ + {/* Quantity Controls */} +
+ + {item.quantity} + +
+ {/* Remove Button */} + +
+
+
+ ); + })} +
+
+ + {/* Order Summary */} +
+
+

Order Summary

+
+
+ Items: + {cart.items.length} +
+
+ Total Quantity: + + {cart.items.reduce((sum, item) => sum + Number(item.quantity || 0), 0)} + +
+
+ Subtotal: + ${subtotal.toFixed(2)} +
+
+ + +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/checkout/page.tsx b/ekart-aws-localstack/frontend/src/app/checkout/page.tsx new file mode 100644 index 0000000..107c458 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/checkout/page.tsx @@ -0,0 +1,232 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter } from 'next/navigation'; +import { Button } from '@/components/ui/Button'; +import { ArrowLeft } from 'lucide-react'; +import { API_URL } from '@/lib/config'; + +interface CartItem { + product_id: string; + quantity: number; + added_at: string; +} + +interface Cart { + user_id: string; + items: CartItem[]; +} + +interface Product { + product_id: string; + title: string; + price: number; + image_url?: string; +} + +export default function CheckoutPage() { + const [cart, setCart] = useState(null); + const [products, setProducts] = useState>(new Map()); + const [loading, setLoading] = useState(true); + const [totalAmount, setTotalAmount] = useState(0); + const [error, setError] = useState(null); + const [processing, setProcessing] = useState(false); + const router = useRouter(); + + useEffect(() => { + initializeCheckout(); + }, []); + + const initializeCheckout = async () => { + try { + const token = localStorage.getItem('access_token'); + if (!token) { + router.push('/auth/login'); + return; + } + + // Fetch cart + const cartResponse = await fetch(`${API_URL}/api/cart`, { + headers: { + 'Authorization': `Bearer ${token}` + } + }); + + if (!cartResponse.ok) { + throw new Error('Failed to fetch cart'); + } + + const cartData = await cartResponse.json(); + setCart(cartData); + + if (!cartData.items || cartData.items.length === 0) { + router.push('/cart'); + return; + } + + // Use backend-provided total to avoid mismatches + const backendTotal = Number((cartData as any).total_amount) || 0; + setTotalAmount(backendTotal); + + // Build quantity map by product_id for names + const qtyById: Record = {}; + (cartData.items as CartItem[]).forEach((ci) => { + qtyById[ci.product_id] = Number(ci.quantity) || 0; + }); + + // Fetch product details for all items + const productPromises = Object.keys(qtyById).map((pid) => + fetch(`${API_URL}/api/products/${pid}`).then(res => res.json()) + ); + + const productsData: Product[] = await Promise.all(productPromises); + const productsMap = new Map(); + productsData.forEach((product: Product) => { + productsMap.set(product.product_id, product); + }); + + setProducts(productsMap); + // totalAmount already set from backend + + } catch (err: any) { + console.error('Error initializing checkout:', err); + setError('Failed to initialize checkout. Please try again.'); + router.push('/cart'); + } finally { + setLoading(false); + } + }; + + const handlePayNow = async () => { + try { + setProcessing(true); + setError(null); + + const token = localStorage.getItem('access_token'); + if (!token) { + router.push('/auth/login'); + return; + } + + // Create payment via backend (LocalStack Stripe handled server-side) + const amountCents = Math.round(totalAmount * 100); + const response = await fetch(`${API_URL}/api/payments`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify({ amount: amountCents, currency: 'usd' }) + }); + + if (!response.ok) { + const t = await response.text(); + throw new Error(t || 'Payment failed'); + } + + // Optionally consume response + await response.json(); + + // Navigate to success + router.push('/checkout/success'); + } catch (e: any) { + setError(e?.message || 'Payment failed'); + } finally { + setProcessing(false); + } + } + + if (loading) { + return ( +
+
+
+

Loading checkout...

+
+
+ ); + } + + return ( +
+
+

Checkout

+ +
+ {/* Order Summary */} +
+
+

Order Summary

+ {error && ( +
+ {error} +
+ )} +
+ {cart?.items.map((item) => { + const product = products.get(item.product_id); + if (!product) return null; + + return ( +
+
+

{product.title}

+

Qty: {item.quantity}

+
+

+ ${(product.price * item.quantity).toFixed(2)} +

+
+ ); + })} +
+ +
+
+ Subtotal: + ${totalAmount.toFixed(2)} +
+
+ Shipping: + Free +
+
+ Total: + ${totalAmount.toFixed(2)} +
+
+ +
+ + +
+
+
+ + {/* Placeholder for payment form area (no Stripe Elements with LocalStack) */} +
+
+

Payment

+

Your payment will be processed via the test gateway.

+
+
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/checkout/success/page.tsx b/ekart-aws-localstack/frontend/src/app/checkout/success/page.tsx new file mode 100644 index 0000000..5fec3d8 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/checkout/success/page.tsx @@ -0,0 +1,80 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter, useSearchParams } from 'next/navigation'; +import { Button } from '@/components/ui/Button'; +import { CheckCircle } from 'lucide-react'; + +export default function CheckoutSuccessPage() { + const router = useRouter(); + const searchParams = useSearchParams(); + const [paymentIntentId, setPaymentIntentId] = useState(null); + + useEffect(() => { + const payment_intent = searchParams.get('payment_intent'); + if (payment_intent) { + setPaymentIntentId(payment_intent); + + // Clear cart after successful payment + clearCart(); + } + }, [searchParams]); + + const clearCart = async () => { + try { + const token = localStorage.getItem('access_token'); + if (!token) return; + + // You can implement a clear cart endpoint or handle this in the backend + // For now, we'll just let the user navigate + } catch (error) { + console.error('Error clearing cart:', error); + } + }; + + return ( +
+
+
+ +
+ +

+ Payment Successful! +

+ +

+ Thank you for your purchase. +

+ + {paymentIntentId && ( +

+ Payment ID: {paymentIntentId} +

+ )} + +

+ Your order has been confirmed and will be processed shortly. + You will receive an email confirmation with your order details. +

+ +
+ + + +
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/globals.css b/ekart-aws-localstack/frontend/src/app/globals.css new file mode 100644 index 0000000..db69428 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/globals.css @@ -0,0 +1,32 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; +} + +body { + color: #333; + background: #f9fafb; +} + +a { + color: inherit; + text-decoration: none; +} + +.line-clamp-2 { + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; +} \ No newline at end of file diff --git a/ekart-aws-localstack/frontend/src/app/layout.tsx b/ekart-aws-localstack/frontend/src/app/layout.tsx new file mode 100644 index 0000000..f050004 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/layout.tsx @@ -0,0 +1,32 @@ +import type { Metadata } from 'next' +import { Inter } from 'next/font/google' +import './globals.css' +import Header from '@/components/common/Header' +import Footer from '@/components/common/Footer' + +const inter = Inter({ subsets: ['latin'] }) + +export const metadata: Metadata = { + title: 'EKart Store - Your Ultimate Shopping Destination', + description: 'Shop from millions of products with secure payment and fast delivery', +} + +export default function RootLayout({ + children, +}: { + children: React.ReactNode +}) { + return ( + + +
+
+
+ {children} +
+
+
+ + + ) +} diff --git a/ekart-aws-localstack/frontend/src/app/orders/page.tsx b/ekart-aws-localstack/frontend/src/app/orders/page.tsx new file mode 100644 index 0000000..7d95c04 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/orders/page.tsx @@ -0,0 +1,137 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter } from 'next/navigation'; +import { API_URL } from '@/lib/config'; + +interface OrderItem { + product_id: string; + product_name?: string; + price: number; + quantity: number; +} + +interface Order { + order_id: string; + buyer_id: string; + seller_id?: string; + items: OrderItem[]; + total_amount: number; + status: string; + payment_method?: string; + payment_status?: string; + created_at?: string; +} + +export default function OrdersPage() { + const router = useRouter(); + const [orders, setOrders] = useState([]); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + useEffect(() => { + const load = async () => { + try { + const token = localStorage.getItem('access_token'); + if (!token) { + router.push('/auth/login'); + return; + } + const res = await fetch(`${API_URL}/api/orders`, { + headers: { 'Authorization': `Bearer ${token}` } + }); + if (!res.ok) throw new Error('Failed to load orders'); + const data = await res.json(); + setOrders(Array.isArray(data) ? data : []); + } catch (e: any) { + setError(e?.message || 'Failed to load orders'); + } finally { + setLoading(false); + } + }; + load(); + }, []); + + if (loading) { + return ( +
Loading your orders...
+ ); + } + + if (error) { + return ( +
+
{error}
+
+ ); + } + + return ( +
+

Your Orders

+ {orders.length === 0 ? ( +
+

You have no orders yet.

+ +
+ ) : ( +
+ {orders.map((order) => { + const total = Number((order as any).total_amount) || 0; + return ( +
+
+
+

Order ID

+

{order.order_id}

+
+
+

Placed

+

{order.created_at ? new Date(order.created_at).toLocaleString() : '-'}

+
+
+

Status

+ {order.status} +
+
+

Total

+

${total.toFixed(2)}

+
+
+ +
+

Items

+
+ {order.items.map((it, idx) => { + const unit = Number((it as any).price) || 0; + const qty = Number(it.quantity || 0); + return ( +
+
+

{it.product_name || `Product ${it.product_id.substring(0,8)}...`}

+

Qty: {qty}

+
+
+

${unit.toFixed(2)} each

+

${(unit * qty).toFixed(2)}

+
+
+ ); + })} +
+
+
+ ); + })} +
+ )} +
+ ); +} + + diff --git a/ekart-aws-localstack/frontend/src/app/page.tsx b/ekart-aws-localstack/frontend/src/app/page.tsx new file mode 100644 index 0000000..5fc1f8a --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/page.tsx @@ -0,0 +1,44 @@ +export default function HomePage() { + return ( +
+ ) +} diff --git a/ekart-aws-localstack/frontend/src/app/products/[id]/page.tsx b/ekart-aws-localstack/frontend/src/app/products/[id]/page.tsx new file mode 100644 index 0000000..6c7d986 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/products/[id]/page.tsx @@ -0,0 +1,70 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter, useParams } from 'next/navigation'; +import { Button } from '@/components/ui/Button'; + +interface Product { + product_id: string; + title: string; + description?: string; + price: number; + category?: string; + subcategory?: string; + brand?: string; + images?: { url: string; alt_text?: string }[]; +} + +export default function ProductDetailPage() { + const params = useParams<{ id: string }>(); + const router = useRouter(); + const [product, setProduct] = useState(null); + const [loading, setLoading] = useState(true); + const API = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; + + useEffect(() => { + const load = async () => { + try { + const res = await fetch(`${API}/api/products/${params.id}`); + if (!res.ok) throw new Error('Failed'); + const data = await res.json(); + setProduct(data); + } catch (e) { + router.push('/products'); + } finally { + setLoading(false); + } + }; + if (params?.id) load(); + }, [params?.id]); + + if (loading) return
Loading...
; + if (!product) return null; + + const price = Number((product as any).price) || 0; + const img = product.images && product.images[0]?.url; + + return ( +
+
+
+ {img ? ( + // eslint-disable-next-line @next/next/no-img-element + {product.title} + ) : ( +
+ )} +
+
+

{product.title}

+

{product.brand} {product.category ? `โ€ข ${product.category}` : ''}

+

${price.toFixed(2)}

+

{product.description}

+
+ +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/products/page.tsx b/ekart-aws-localstack/frontend/src/app/products/page.tsx new file mode 100644 index 0000000..c9df134 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/products/page.tsx @@ -0,0 +1,68 @@ +'use client' + +import { useEffect, useState } from 'react'; +import ProductGrid from '@/components/product/ProductGrid'; +import Loading from '@/components/common/Loading'; + +interface Product { + product_id: string; + title: string; + description: string; + price: number; + currency: string; + images?: Array<{ url: string; alt_text?: string }>; + rating?: number; + review_count: number; +} + +export default function ProductsPage() { + const [products, setProducts] = useState([]); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + useEffect(() => { + async function fetchProducts() { + try { + const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; + const response = await fetch(`${API_URL}/api/products`); + if (!response.ok) { + throw new Error('Failed to fetch products'); + } + const data = await response.json(); + setProducts(data); + } catch (err) { + setError(err instanceof Error ? err.message : 'An error occurred'); + } finally { + setLoading(false); + } + } + + fetchProducts(); + }, []); + + if (loading) { + return ; + } + + if (error) { + return ( +
+
+

Error

+

{error}

+
+
+ ); + } + + return ( +
+
+

All Products

+

Browse our wide selection of products

+
+ + +
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/seller/analytics/page.tsx b/ekart-aws-localstack/frontend/src/app/seller/analytics/page.tsx new file mode 100644 index 0000000..d211bae --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/seller/analytics/page.tsx @@ -0,0 +1,177 @@ +'use client' + +import { useEffect, useState } from 'react'; +import Link from 'next/link'; +import { TrendingUp, DollarSign, ShoppingBag, Users } from 'lucide-react'; + +interface Analytics { + totalSales: number; + totalOrders: number; + totalProducts: number; + totalCustomers: number; + recentSales: Array<{ + date: string; + amount: number; + }>; +} + +export default function SellerAnalyticsPage() { + const [analytics, setAnalytics] = useState(null); + const [loading, setLoading] = useState(true); + + useEffect(() => { + fetchAnalytics(); + }, []); + + const fetchAnalytics = async () => { + try { + const token = localStorage.getItem('access_token'); + const response = await fetch('http://localhost:8000/api/sellers/analytics/', { + headers: { + 'Authorization': `Bearer ${token}` + } + }); + + if (response.ok) { + const data = await response.json(); + setAnalytics(data); + } else { + // Mock data for demonstration + setAnalytics({ + totalSales: 12450.00, + totalOrders: 45, + totalProducts: 12, + totalCustomers: 38, + recentSales: [ + { date: '2025-10-10', amount: 450 }, + { date: '2025-10-09', amount: 320 }, + { date: '2025-10-08', amount: 890 }, + { date: '2025-10-07', amount: 560 }, + { date: '2025-10-06', amount: 780 }, + ] + }); + } + } catch (error) { + console.error('Error fetching analytics:', error); + // Mock data on error + setAnalytics({ + totalSales: 12450.00, + totalOrders: 45, + totalProducts: 12, + totalCustomers: 38, + recentSales: [ + { date: '2025-10-10', amount: 450 }, + { date: '2025-10-09', amount: 320 }, + { date: '2025-10-08', amount: 890 }, + { date: '2025-10-07', amount: 560 }, + { date: '2025-10-06', amount: 780 }, + ] + }); + } finally { + setLoading(false); + } + }; + + if (loading) { + return ( +
+
+
Loading analytics...
+
+
+ ); + } + + if (!analytics) { + return ( +
+
+
Failed to load analytics
+
+
+ ); + } + + return ( +
+
+ {/* Header */} +
+ + โ† Back to Dashboard + +

Analytics

+

Track your sales and performance

+
+ + {/* Stats Grid */} +
+
+
+
+

Total Sales

+

${analytics.totalSales.toFixed(2)}

+
+
+ +
+
+
+ +
+
+
+

Total Orders

+

{analytics.totalOrders}

+
+
+ +
+
+
+ +
+
+
+

Total Products

+

{analytics.totalProducts}

+
+
+ +
+
+
+ +
+
+
+

Total Customers

+

{analytics.totalCustomers}

+
+
+ +
+
+
+
+ + {/* Recent Sales Chart */} +
+

Recent Sales

+
+ {analytics.recentSales.map((sale, index) => ( +
+
+

{new Date(sale.date).toLocaleDateString()}

+
+
+

${sale.amount.toFixed(2)}

+
+
+ ))} +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/seller/dashboard/page.tsx b/ekart-aws-localstack/frontend/src/app/seller/dashboard/page.tsx new file mode 100644 index 0000000..ed4b913 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/seller/dashboard/page.tsx @@ -0,0 +1,274 @@ +'use client' + +import { useEffect, useState } from 'react'; +import { useRouter } from 'next/navigation'; +import Link from 'next/link'; +import { Button } from '@/components/ui/Button'; +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card'; +import { Package, DollarSign, ShoppingCart, TrendingUp, Plus } from 'lucide-react'; + +interface SellerStats { + totalProducts: number; + totalOrders: number; + totalRevenue: number; + pendingOrders: number; +} + +interface Product { + product_id: string; + title: string; + price: number; + stock_quantity?: number; + stock?: number; + is_active: boolean; +} + +export default function SellerDashboard() { + const router = useRouter(); + const [stats, setStats] = useState({ + totalProducts: 0, + totalOrders: 0, + totalRevenue: 0, + pendingOrders: 0 + }); + const [products, setProducts] = useState([]); + const [loading, setLoading] = useState(true); + + useEffect(() => { + // Check if user is logged in and is a seller + const userType = localStorage.getItem('user_type'); + if (userType !== 'seller') { + router.push('/auth/login'); + return; + } + + fetchSellerData(); + }, [router]); + + const fetchSellerData = async () => { + try { + // Fetch seller's products + const response = await fetch('http://localhost:8000/api/products/'); + if (response.ok) { + const allProducts = await response.json(); + setProducts(allProducts.slice(0, 5)); // Show first 5 products + + // Calculate stats + setStats({ + totalProducts: allProducts.length, + totalOrders: 0, // TODO: Fetch from orders API + totalRevenue: 0, // TODO: Calculate from orders + pendingOrders: 0 // TODO: Fetch from orders API + }); + } + } catch (error) { + console.error('Error fetching seller data:', error); + } finally { + setLoading(false); + } + }; + + const handleLogout = () => { + localStorage.removeItem('access_token'); + localStorage.removeItem('user_id'); + localStorage.removeItem('user_email'); + localStorage.removeItem('user_type'); + router.push('/'); + }; + + if (loading) { + return ( +
+
+
+ ); + } + + return ( +
+ {/* Header */} +
+
+
+
+

Seller Dashboard

+

Manage your products and orders

+
+
+ + + + +
+
+
+
+ +
+ {/* Stats Grid */} +
+ + +
+
+

Total Products

+

{stats.totalProducts}

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

Total Orders

+

{stats.totalOrders}

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

Revenue

+

${stats.totalRevenue.toFixed(2)}

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

Pending Orders

+

{stats.pendingOrders}

+
+
+ +
+
+
+
+
+ + {/* Quick Actions */} +
+

Quick Actions

+
+ + + + + + + + + + + + +
+
+ + {/* Recent Products */} + + +
+ Recent Products + + + +
+
+ + {products.length === 0 ? ( +
+ +

No products yet

+

Start selling by adding your first product

+ + + +
+ ) : ( +
+ + + + + + + + + + + + {products.map((product) => ( + + + + + + + + ))} + +
+ Product + + Price + + Stock + + Status + + Actions +
+
{product.title}
+
+
+ ${typeof product.price === 'number' ? product.price.toFixed(2) : '0.00'} +
+
+
+ {product.stock_quantity || product.stock || 0} +
+
+ + {product.is_active ? 'Active' : 'Inactive'} + + + + + +
+
+ )} +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/seller/orders/page.tsx b/ekart-aws-localstack/frontend/src/app/seller/orders/page.tsx new file mode 100644 index 0000000..ccc17e5 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/seller/orders/page.tsx @@ -0,0 +1,140 @@ +'use client' + +import { useEffect, useState } from 'react'; +import Link from 'next/link'; + +interface Order { + order_id: string; + customer_name: string; + product_title: string; + quantity: number; + total: number; + status: string; + created_at: string; +} + +export default function SellerOrdersPage() { + const [orders, setOrders] = useState([]); + const [loading, setLoading] = useState(true); + + useEffect(() => { + fetchOrders(); + }, []); + + const fetchOrders = async () => { + try { + const token = localStorage.getItem('access_token'); + const response = await fetch('http://localhost:8000/api/sellers/orders/', { + headers: { + 'Authorization': `Bearer ${token}` + } + }); + + if (response.ok) { + const data = await response.json(); + setOrders(data); + } + } catch (error) { + console.error('Error fetching orders:', error); + } finally { + setLoading(false); + } + }; + + if (loading) { + return ( +
+
+
Loading orders...
+
+
+ ); + } + + return ( +
+
+ {/* Header */} +
+ + โ† Back to Dashboard + +

Orders

+

Manage your product orders

+
+ + {/* Orders Table */} +
+ + + + + + + + + + + + + + {orders.length === 0 ? ( + + + + ) : ( + orders.map((order) => ( + + + + + + + + + + )) + )} + +
+ Order ID + + Customer + + Product + + Quantity + + Total + + Status + + Date +
+ No orders yet +
+ #{order.order_id.substring(0, 8)} + + {order.customer_name} + + {order.product_title} + + {order.quantity} + + ${order.total.toFixed(2)} + + + {order.status} + + + {new Date(order.created_at).toLocaleDateString()} +
+
+
+
+ ); +} diff --git a/ekart-aws-localstack/frontend/src/app/seller/products/new/page.tsx b/ekart-aws-localstack/frontend/src/app/seller/products/new/page.tsx new file mode 100644 index 0000000..1733c18 --- /dev/null +++ b/ekart-aws-localstack/frontend/src/app/seller/products/new/page.tsx @@ -0,0 +1,266 @@ +'use client' + +import { useState } from 'react'; +import { useRouter } from 'next/navigation'; +import Link from 'next/link'; +import { Button } from '@/components/ui/Button'; +import { Input } from '@/components/ui/Input'; +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card'; +import { ArrowLeft } from 'lucide-react'; + +export default function NewProductPage() { + const router = useRouter(); + const [formData, setFormData] = useState({ + title: '', + description: '', + category: 'Electronics', + price: '', + stock_quantity: '', + brand: '', + tags: '', + currency: 'USD' + }); + const [loading, setLoading] = useState(false); + const [error, setError] = useState(null); + + const categories = [ + 'Electronics', + 'Home & Kitchen', + 'Sports & Fitness', + 'Gaming', + 'Fashion', + 'Books', + 'Office', + 'Toys & Games', + 'Health & Beauty', + 'Automotive' + ]; + + const handleSubmit = async (e: React.FormEvent) => { + e.preventDefault(); + setError(null); + setLoading(true); + + try { + const token = localStorage.getItem('access_token'); + const userId = localStorage.getItem('user_id'); + + if (!token || !userId) { + router.push('/auth/login'); + return; + } + + const tagsArray = formData.tags.split(',').map(tag => tag.trim()).filter(tag => tag); + + const response = await fetch('http://localhost:8000/api/products/', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'Authorization': `Bearer ${token}` + }, + body: JSON.stringify({ + title: formData.title, + description: formData.description, + category: formData.category, + price: parseFloat(formData.price), + stock_quantity: parseInt(formData.stock_quantity), + brand: formData.brand, + tags: tagsArray, + currency: formData.currency + }), + }); + + if (!response.ok) { + const data = await response.json(); + throw new Error(data.detail || 'Failed to create product'); + } + + router.push('/seller/dashboard'); + } catch (err) { + setError(err instanceof Error ? err.message : 'Failed to create product'); + } finally { + setLoading(false); + } + }; + + const handleChange = (e: React.ChangeEvent) => { + setFormData({ + ...formData, + [e.target.name]: e.target.value + }); + }; + + return ( +
+
+
+ + + +
+ + + + Add New Product +

+ Fill in the details below to list your product +

+
+ + + {error && ( +
+ {error} +
+ )} + +
+ {/* Basic Information */} +
+

Basic Information

+ + + +
+ +