diff --git a/AI_analiz.txt b/AI_analiz.txt index 4eec32d2..2ab0abdd 100644 --- a/AI_analiz.txt +++ b/AI_analiz.txt @@ -1956,10 +1956,47 @@ supabase db reset --- - + 1. Navigasyon Yapısı (Kesinleşen) + Alt Menü (Bottom Bar - 5'li): + 1. 🏠 Home: Ana Dashboard (Gruplandırılmış ikonlar burada). + 2. 📱 Apps: Tüm mini-app'lerin alfabetik veya kategorik tam listesi (Hızlı erişim çekmecesi). + 3. 🏛️ Citizen (Ortada, Büyük): "Dijital Kimlik Kartı". Tıklayınca eğer vatandaş değilse başvuruya, + vatandaşsa dijital kimlik kartına (QR kodlu) döner. + 4. 🤝 Referral: Büyüme motoru. + 5. 👤 Profile: Kişisel alan. -**Last Updated:** 2025-11-17 + Üst Header: + * Sol: Avatar (Tıklayınca hızlı durum değişimi: Online/Busy). + * Sağ: 🔔 Bildirimler, ⚙️ Ayarlar. + * Ekstra : Avatarın yanına pezpallet tiki den canli veri ceken ve kullanicinin sahip oldugu tikileri gosteren alan. -**Maintained By:** PezkuwiChain Development Team + 2. Body (Gövde) Gruplandırması ve Yeni Fikirler + Sizin dikdörtgen alanlarınızı zenginleştirelim: -**Production Status:** 95% Complete - Beta Testnet Active \ No newline at end of file + 💰 FINANCE (Finansal Alan) + Mevcut: Wallet, Bank, Exchange, P2P, B2B. + * Benim Eklemelerim: + * 📊 Tax (Vergi/Zekat): Gönüllü katkı veya sistem vergilerini şeffafça ödeme/izleme. + * 🌱 Launchpad: Yeni Kürt girişimlerine/tokenlarına erken yatırım yapma alanı. + * 💳 Cards: Sanal veya fiziksel Pezkuwi Kart yönetimi (Gelecek vizyonu). + + 🏛️ GOVERNANCE (Yönetim Alanı) + Mevcut: President, Assembly, Government, Validators, Nominators, Vote. + * Benim Eklemelerim: + * ⚖️ Justice (Dad): Anlaşmazlık çözüm merkezi (AI Lawyer entegreli). + * 📜 Proposals: Halkın doğrudan yasa teklifi verebileceği alan. + * 🗳️ Polls: Hızlı kamuoyu yoklamaları (Anketler). + + 💬 SOCIAL (Sosyal Alan) + Mevcut: whatsKURD, VPN, Forum, KurdMedia. + * Benim Eklemelerim: + * 🎭 Events (Çalakî): Kürt dünyasındaki konser, miting, konferans takvimi ve biletleme. + * 🤝 Help (Harîkarî): Deprem, sel gibi durumlarda acil yardımlaşma ve bağış ağı. + * 🎵 Music: Kürtçe müzik streaming servisi entegrasyonu (Spotify gibi ama yerel). + + 📚 EDUCATION (Eğitim Alanı) + Mevcut: University, College, Kids, Programs. + * Benim Eklemelerim: + * 📜 Library (Pirtûkxane): Dijital Kürtçe kütüphane ve arşiv. + * 🗣️ Language (Ziman): Kürtçe (Kurmancî/Sorani/Zazaki) öğrenme modülü (Duolingo tarzı). + * 🏆 Certificates: Blokzincir tabanlı diplomalar ve sertifikalar cüzdanı. \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index d6c9dc5f..00000000 --- a/CLAUDE.md +++ /dev/null @@ -1,991 +0,0 @@ -# CLAUDE.md - AI Assistant Guide for PezkuwiChain Web App Projects - -**Last Updated:** 2025-11-17 -**Production Status:** ~95% Complete -**Active Network:** Beta Testnet (`wss://rpc.pezkuwichain.io:9944`) - ---- - -## 🎯 Quick Start for AI Assistants - -This is a **production-grade blockchain monorepo** for PezkuwiChain with live validators running on VPS. Exercise extreme caution when making changes that could affect blockchain operations. - -### Critical Rules (READ FIRST!) - -⚠️ **NEVER DO THESE WITHOUT EXPLICIT USER PERMISSION:** -1. **DO NOT** restart or stop VPS validators (7 validators currently finalizing blocks) -2. **DO NOT** modify chain specs (`/root/pezkuwi-sdk/chain-specs/beta/beta-testnet-raw.json`) -3. **DO NOT** change blockchain base paths or validator configurations -4. **DO NOT** commit `.env` files or secrets to git -5. **DO NOT** deploy to production without testing locally first -6. **DO NOT** make assumptions about blockchain operations - **ALWAYS ASK** - -### User Preferences (MUST FOLLOW!) - -1. **Screenshot Location:** When user says "ekrana bak" (look at screen), read `/home/mamostehp/pwap/screenshot.png` -2. **Git Commits:** NEVER add Claude signature/attribution to commit messages (no "🤖 Generated with Claude Code" or "Co-Authored-By: Claude") -3. **Deploy Path:** Web app deploys to `root@37.60.230.9:/var/www/pezkuwichain/web/dist/` - Nginx config points here -4. **Documentation:** ALL docs go in `/home/mamostehp/pwap/docs/` folder (subfolders: p2p/, commission/, reports/, testing/, presale/) - NEVER put .md files in project root except README.md and CLAUDE.md -5. **Production Wallet:** P2P Escrow wallet is `5DFwqK698vL4gXHEcanaewnAqhxJ2rjhAogpSTHw3iwGDwd3` - NEVER use dev/test addresses like Alice - -### VPS Infrastructure - -- **IP:** 37.60.230.9 -- **Validators:** 7 running (ports 30333-30339, RPC 9944-9950) -- **Frontend:** Nginx serving at `/var/www/pezkuwichain/web/dist/` -- **Blockchain:** LIVE on Beta Testnet - handle with care - ---- - -## 📁 Repository Structure - -``` -pezkuwi-web-app-projects/ -├── web/ # Main React web app (Vite + TypeScript) - 90% complete -├── mobile/ # React Native Expo app - 50% complete -├── pezkuwi-sdk-ui/ # Polkadot.js SDK UI (branded clone) - 47MB -├── shared/ # Shared code library (types, utils, blockchain, i18n) -├── README.md # Project overview -├── PRODUCTION_READINESS.md # Production status report -└── CLAUDE_README_KRITIK.md # CRITICAL operational guidelines (Turkish) -``` - -### Directory Breakdown - -| Directory | Size | Status | Purpose | -|-----------|------|--------|---------| -| `web/` | 3.8MB | 90% | Main production web application | -| `mobile/` | 737KB | 50% | iOS/Android mobile app | -| `pezkuwi-sdk-ui/` | 47MB | Active | Polkadot.js Apps clone | -| `shared/` | 402KB | 100% | Shared libraries & utilities | - ---- - -## 🛠️ Tech Stack - -### Web Application (`/web/`) - -| Category | Technology | Version | Purpose | -|----------|-----------|---------|---------| -| **Framework** | React | 18.3.1 | UI framework | -| **Language** | TypeScript | 5.5.3 | Type safety | -| **Build Tool** | Vite | 5.4.1 | Fast bundler with HMR | -| **Blockchain** | Polkadot.js API | 16.4.9 | Blockchain integration | -| **Backend** | Supabase | 2.49.4 | Auth & Database | -| **UI Library** | shadcn/ui | Latest | Radix UI components | -| **Styling** | Tailwind CSS | 3.4.11 | Utility-first CSS | -| **State** | React Context | - | Global state management | -| **Data Fetching** | TanStack Query | 5.56.2 | Server state caching | -| **Routing** | React Router | 6.26.2 | Client-side routing | -| **i18n** | i18next | 23.7.6 | 6-language support | -| **Forms** | React Hook Form | 7.53.0 | Form management | -| **Validation** | Zod | 3.23.8 | Schema validation | -| **Charts** | Recharts | 2.12.7 | Data visualization | -| **Icons** | Lucide React | 0.462.0 | Icon library | -| **Notifications** | Sonner | 1.5.0 | Toast notifications | - -### Mobile Application (`/mobile/`) - -| Category | Technology | Version | Purpose | -|----------|-----------|---------|---------| -| **Framework** | React Native | 0.81.5 | Mobile framework | -| **Runtime** | Expo | 54.0.23 | Development platform | -| **Navigation** | React Navigation | 7.x | Native navigation | -| **Blockchain** | Polkadot.js API | 16.5.2 | Blockchain integration | -| **Storage** | AsyncStorage | 2.2.0 | Persistent storage | -| **Security** | Expo SecureStore | 15.0.7 | Encrypted storage | -| **Biometrics** | expo-local-authentication | 17.0.7 | Fingerprint/FaceID | -| **i18n** | i18next | 25.6.2 | Multi-language | - -### Shared Library (`/shared/`) - -- **Language:** TypeScript (100% typed) -- **Runtime:** Platform-agnostic (Node.js + Browser + React Native) -- **Dependencies:** Minimal (Polkadot.js only) - ---- - -## 🔑 Key Files & Entry Points - -### Web Application - -**Entry Points:** -- `web/src/main.tsx` - React root render -- `web/src/App.tsx` - Provider hierarchy & routing -- `web/index.html` - HTML template - -**Configuration:** -- `web/vite.config.ts` - Vite bundler config with path aliases -- `web/tailwind.config.ts` - Tailwind with Kurdistan color theme -- `web/tsconfig.json` - TypeScript strict mode + path mappings -- `web/postcss.config.js` - PostCSS for Tailwind - -**State Management (6 Contexts):** -- `contexts/PolkadotContext.tsx` - Blockchain API connection -- `contexts/WalletContext.tsx` - Wallet state & multi-token balances -- `contexts/AuthContext.tsx` - Supabase authentication -- `contexts/AppContext.tsx` - Global application state -- `contexts/WebSocketContext.tsx` - Real-time blockchain updates -- `contexts/IdentityContext.tsx` - User identity & KYC status - -**Backend:** -- `src/lib/supabase.ts` - Supabase client initialization -- `supabase/migrations/*.sql` - Database schema migrations (9 files) - -### Mobile Application - -**Entry Points:** -- `mobile/index.ts` - Expo registerRootComponent -- `mobile/App.tsx` - Root with i18n initialization -- `mobile/src/navigation/AppNavigator.tsx` - Navigation setup - -### Shared Library - -**Core Files:** -- `shared/blockchain/endpoints.ts` - Network endpoint configurations -- `shared/blockchain/polkadot.ts` - Polkadot.js utilities -- `shared/constants/index.ts` - KNOWN_TOKENS, KURDISTAN_COLORS, LANGUAGES -- `shared/i18n/index.ts` - i18n configuration -- `shared/types/blockchain.ts` - Blockchain type definitions -- `shared/lib/wallet.ts` - Wallet utilities & formatters - -**Business Logic Libraries:** -- `shared/lib/citizenship-workflow.ts` - KYC & citizenship workflow -- `shared/lib/tiki.ts` - 70+ government roles (Hemwelatî, Parlementer, etc.) -- `shared/lib/perwerde.ts` - Education platform logic -- `shared/lib/p2p-fiat.ts` - P2P fiat trading system (production-ready) -- `shared/lib/staking.ts` - Staking operations -- `shared/lib/multisig.ts` - Multisig treasury operations -- `shared/lib/validator-pool.ts` - Validator pool management - ---- - -## 🚀 Development Workflows - -### Web Development - -```bash -# Navigate to web directory -cd web - -# Install dependencies -npm install - -# Start development server (localhost:8081) -npm run dev - -# Build for production -npm run build - -# Preview production build -npm run preview - -# Lint code -npm run lint -``` - -**Environment Setup:** -1. Copy `.env.example` to `.env` -2. Set `VITE_NETWORK=local` (or testnet/beta/mainnet) -3. Configure Supabase credentials: - - `VITE_SUPABASE_URL` - - `VITE_SUPABASE_ANON_KEY` -4. Set blockchain endpoint (optional, defaults to beta) - -### Mobile Development - -```bash -# Navigate to mobile directory -cd mobile - -# Install dependencies -npm install - -# Start Expo development server -npm start - -# Run on Android emulator -npm run android - -# Run on iOS simulator -npm run ios - -# Run in web browser -npm run web -``` - -### Deploying to Production (Web) - -```bash -# 1. Build locally -cd /home/mamostehp/pwap/web -npm run build - -# 2. Deploy to VPS -rsync -avz dist/ pezkuwi-vps:/var/www/pezkuwichain/web/dist/ - -# 3. Reload Nginx (no restart needed) -ssh pezkuwi-vps "systemctl reload nginx" -``` - -**Important:** Always test locally with `npm run build && npm run preview` before deploying to VPS. - ---- - -## 📂 Code Organization Patterns - -### Component Structure - -**Web Components:** -``` -web/src/components/ -├── ui/ # shadcn/ui primitives (50+ components) -│ ├── button.tsx -│ ├── card.tsx -│ ├── dialog.tsx -│ └── ... -├── auth/ # Authentication components -├── citizenship/ # Citizenship/KYC UI -├── dex/ # DEX/Swap interface -├── delegation/ # Delegation management -├── forum/ # Forum components -├── governance/ # Governance interface -├── p2p/ # P2P fiat trading -├── perwerde/ # Education platform -├── staking/ # Staking dashboard -└── wallet/ # Wallet components -``` - -**Pattern:** Feature-based organization with co-located types and utilities. - -### File Naming Conventions - -- **Components:** PascalCase (`StakingDashboard.tsx`) -- **Utilities:** camelCase (`wallet.ts`, `formatting.ts`) -- **Types:** PascalCase interfaces/types (`WalletAccount`, `TokenInfo`) -- **Constants:** UPPER_SNAKE_CASE exports (`ASSET_IDS`, `KURDISTAN_COLORS`) - -### Import Patterns - -**Path Aliases (Web):** -```typescript -// Local imports -import { Component } from '@/components/ui/component'; -import { useWallet } from '@/contexts/WalletContext'; - -// Shared library imports -import { formatBalance } from '@pezkuwi/lib/wallet'; -import { WalletAccount } from '@pezkuwi/types'; -import { KURDISTAN_COLORS } from '@pezkuwi/constants'; -import { translations } from '@pezkuwi/i18n'; -``` - -**Import Order (Follow This!):** -1. React imports -2. External libraries -3. Shared imports (`@pezkuwi/*`) -4. Local imports (`@/`) -5. Types -6. Styles/assets - -**Example:** -```typescript -import React, { useState, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; -import { useQuery } from '@tanstack/react-query'; -import { formatBalance } from '@pezkuwi/lib/wallet'; -import { WalletAccount } from '@pezkuwi/types'; -import { ASSET_IDS } from '@pezkuwi/constants'; -import { useWallet } from '@/contexts/WalletContext'; -import { Card } from '@/components/ui/card'; -import type { PoolInfo } from '@/types/dex'; -import '@/styles/dashboard.css'; -``` - -### TypeScript Conventions - -**Strict Mode Enabled:** -```json -{ - "strict": true, - "noImplicitAny": true, - "strictNullChecks": true, - "noUnusedLocals": true, - "noUnusedParameters": true -} -``` - -**Type Patterns:** -- Use `interface` for object shapes -- Use `type` for unions, intersections, and complex types -- Use `enum` for fixed sets of values -- Use `as const` for literal types -- Avoid `any` - use `unknown` and type guards instead - ---- - -## ⛓️ Blockchain Integration - -### Network Endpoints - -```typescript -// shared/blockchain/endpoints.ts -const ENDPOINTS = { - MAINNET: 'wss://mainnet.pezkuwichain.io', - BETA: 'wss://rpc.pezkuwichain.io:9944', // Currently active - STAGING: 'wss://staging.pezkuwichain.io', - TESTNET: 'wss://testnet.pezkuwichain.io', - LOCAL: 'ws://127.0.0.1:9944' -}; - -// Default for development -DEFAULT_ENDPOINT = 'ws://127.0.0.1:9944'; -``` - -### Asset System - -**⚠️ CRITICAL: wUSDT uses 6 decimals, not 12!** - -```typescript -// Native token (no Asset ID) -HEZ - Accessed via system.account.data.free - -// Assets pallet (12 decimals except wUSDT) -ASSET_IDS = { - WHEZ: 0, // Wrapped HEZ - 12 decimals - PEZ: 1, // Utility token - 12 decimals - WUSDT: 2, // Wrapped USDT - 6 decimals ⚠️ -} - -// Display mapping (internal vs user-facing) -TOKEN_DISPLAY_SYMBOLS = { - 'wHEZ': 'HEZ', // Show as HEZ to users - 'wUSDT': 'USDT', // Show as USDT to users - 'PEZ': 'PEZ' // Keep as PEZ -} -``` - -### Polkadot.js Connection Pattern - -```typescript -import { ApiPromise, WsProvider } from '@polkadot/api'; - -// Initialize API -const provider = new WsProvider(endpoint); -const api = await ApiPromise.create({ provider }); -await api.isReady; - -// Query native balance -const { data } = await api.query.system.account(address); -const balance = data.free.toString(); - -// Query asset balance -const assetData = await api.query.assets.account(ASSET_IDS.PEZ, address); -const amount = assetData.unwrap().balance.toString(); -``` - -### Transaction Pattern - -```typescript -// Simple transaction -const extrinsic = api.tx.balances.transfer(dest, amount); -const hash = await extrinsic.signAndSend(account, { signer }); - -// With event handling -const result = await new Promise((resolve, reject) => { - let unsub; - - api.tx.module.method(params) - .signAndSend(account, { signer }, ({ status, events, dispatchError }) => { - if (dispatchError) { - if (dispatchError.isModule) { - const decoded = api.registry.findMetaError(dispatchError.asModule); - reject(new Error(`${decoded.section}.${decoded.name}: ${decoded.docs}`)); - } else { - reject(new Error(dispatchError.toString())); - } - if (unsub) unsub(); - return; - } - - if (status.isInBlock) { - // Extract data from events - const event = events.find(e => - e.event.section === 'module' && - e.event.method === 'EventName' - ); - resolve(event.data[0].toString()); - if (unsub) unsub(); - } - }) - .then(unsubscribe => { unsub = unsubscribe; }); -}); -``` - -### Custom Pallets - -1. **pallet-tiki** - Governance roles (70+ roles: Hemwelatî, Parlementer, Serok, Wezir, etc.) -2. **pallet-identity-kyc** - Zero-knowledge citizenship & KYC -3. **pallet-perwerde** - Education platform (courses, enrollments, certificates) -4. **pallet-validator-pool** - Validator pool categories & staking -5. **pallet-welati** - P2P fiat trading with escrow - ---- - -## 🎨 UI Patterns & Styling - -### shadcn/ui Components - -Located in `web/src/components/ui/` - 50+ components built on Radix UI primitives. - -**Component Variants (CVA Pattern):** -```typescript -import { cva } from 'class-variance-authority'; - -const buttonVariants = cva( - 'inline-flex items-center justify-center rounded-md font-medium', - { - variants: { - variant: { - default: 'bg-kurdish-green text-white', - destructive: 'bg-kurdish-red text-white', - outline: 'border border-input bg-background', - }, - size: { - default: 'h-10 px-4 py-2', - sm: 'h-9 px-3', - lg: 'h-11 px-8', - } - }, - defaultVariants: { - variant: 'default', - size: 'default', - } - } -); -``` - -### Kurdistan Color System - -**Primary Colors:** -```typescript -KURDISTAN_COLORS = { - kesk: '#00A94F', // Green (Kesk) - Primary brand color - sor: '#EE2A35', // Red (Sor) - Danger/error - zer: '#FFD700', // Yellow/Gold (Zer) - Warning/accent - spi: '#FFFFFF', // White (Spî) - res: '#000000', // Black (Reş) -} -``` - -**Tailwind Usage:** -```css -bg-kurdish-green -bg-kurdish-green-dark -bg-kurdish-green-light -text-kurdish-red -border-kurdish-yellow -``` - ---- - -## 🌍 Internationalization (i18n) - -### Supported Languages - -| Code | Language | Direction | Status | -|------|----------|-----------|--------| -| `en` | English | LTR | ✅ Complete | -| `tr` | Türkçe (Turkish) | LTR | ✅ Complete | -| `kmr` | Kurmancî (Kurdish Kurmanji) | LTR | ✅ Complete | -| `ckb` | سۆرانی (Kurdish Sorani) | RTL | ✅ Complete | -| `ar` | العربية (Arabic) | RTL | ✅ Complete | -| `fa` | فارسی (Persian) | RTL | ✅ Complete | - -### Translation Files - -- **Web:** `web/src/i18n/locales/*.ts` (TypeScript modules - local imports) -- **Mobile:** `mobile/src/i18n/locales/*.ts` -- **Shared:** `shared/i18n/locales/*.json` (JSON files) - -**⚠️ Important:** Web uses `.ts` files with local imports, not shared JSON files. This was changed to fix loading issues. - -### RTL Support - -```typescript -import { isRTL } from '@pezkuwi/i18n'; - -// Detect RTL languages -const isRightToLeft = isRTL(currentLanguage); // true for ckb, ar, fa - -// Apply direction -document.dir = isRightToLeft ? 'rtl' : 'ltr'; -``` - -### Usage Pattern - -```typescript -import { useTranslation } from 'react-i18next'; - -function Component() { - const { t, i18n } = useTranslation(); - - return ( -
-

{t('welcome.title')}

- -
- ); -} -``` - ---- - -## 🗄️ State Management - -### Provider Hierarchy - -**Order matters!** This is the provider nesting in `web/src/App.tsx`: - -```typescript - // Dark/light mode - // Error handling - // Supabase authentication - // Global app state - // Blockchain API connection - // Wallet state & balances - // Real-time blockchain events - // User identity & KYC - - - - - - - - - -``` - -### Context APIs - -**PolkadotContext:** -```typescript -interface PolkadotContextType { - api: ApiPromise | null; - isApiReady: boolean; - accounts: InjectedAccountWithMeta[]; - selectedAccount: InjectedAccountWithMeta | null; - connectWallet: () => Promise; - disconnectWallet: () => void; - error: string | null; -} -``` - -**WalletContext:** -```typescript -interface WalletContextType { - isConnected: boolean; - account: string | null; - accounts: InjectedAccountWithMeta[]; - balance: string; // HEZ native balance - balances: { - HEZ: string; - PEZ: string; - wHEZ: string; - USDT: string; - }; - signer: Signer | null; - connectWallet: () => Promise; - disconnect: () => void; - switchAccount: (account: InjectedAccountWithMeta) => void; - signTransaction: (tx: SubmittableExtrinsic) => Promise; - refreshBalances: () => Promise; -} -``` - -### TanStack Query (React Query) - -Used for server state caching and automatic refetching: - -```typescript -import { useQuery } from '@tanstack/react-query'; - -const { data, isLoading, error } = useQuery({ - queryKey: ['proposals'], - queryFn: () => fetchProposals(api), - refetchInterval: 30000, // Refresh every 30 seconds - enabled: !!api, // Only run when API is ready -}); -``` - ---- - -## 🔐 Security Best Practices - -### Environment Variables - -**NEVER commit `.env` files!** - -```bash -# .env.example (commit this) -VITE_SUPABASE_URL=your_supabase_url -VITE_SUPABASE_ANON_KEY=your_anon_key -VITE_NETWORK=local - -# .env (DO NOT commit) -VITE_SUPABASE_URL=https://actual-url.supabase.co -VITE_SUPABASE_ANON_KEY=actual_key_here -VITE_NETWORK=beta -``` - -**Access in code:** -```typescript -// Web (Vite) -const supabaseUrl = import.meta.env.VITE_SUPABASE_URL; - -// Mobile (Expo) -const supabaseUrl = process.env.EXPO_PUBLIC_SUPABASE_URL; -``` - -### Sensitive Data Handling - -- **Wallet seeds:** NEVER stored in app - Polkadot.js extension only -- **Private keys:** NEVER accessible to frontend code -- **KYC data:** AES-GCM encrypted → IPFS → Hash stored on-chain -- **API keys:** Environment variables only, never hardcoded - -### Error Handling - -```typescript -// ErrorBoundary for React errors - - - - -// Try-catch for async operations -try { - await api.tx.method(params).signAndSend(account, { signer }); - toast.success('Transaction successful!'); -} catch (error) { - console.error('Transaction failed:', error); - toast.error(error.message || 'Transaction failed'); - // Don't expose sensitive error details to users -} -``` - ---- - -## 🧰 Utility Functions - -### Formatting - -```typescript -import { formatAddress, formatBalance, parseAmount } from '@pezkuwi/utils/formatting'; - -// Address formatting -formatAddress('5GrwVaEbzhSSC2biT...xQjz') -// → '5GrwV...xQjz' - -// Balance formatting (with decimals) -formatBalance('1234567890000', 12) // HEZ, PEZ, wHEZ -// → '1234.5679' - -formatBalance('1234567', 6) // wUSDT (6 decimals!) -// → '1.2346' - -// Amount parsing (to BigInt) -parseAmount('100', 12) -// → 100000000000000n -``` - -### Validation - -```typescript -import { isValidAddress, isValidAmount } from '@pezkuwi/utils/validation'; - -isValidAddress('5GrwVaEbzhSSC2biT...') // true -isValidAmount('100.5') // true -isValidAmount('abc') // false -``` - ---- - -## 🧪 Testing & Quality - -### Before Committing - -1. **Run linter:** `npm run lint` -2. **Check no `.env` committed:** `git status` -3. **Remove debug logs:** Search for `console.log` -4. **Update types:** If API changed -5. **Test i18n:** Check all 6 languages -6. **Test RTL:** Check ckb, ar, fa layouts - -### Before Deploying - -1. **Test production build:** - ```bash - npm run build - npm run preview - ``` -2. **Verify environment variables** set correctly -3. **Check Supabase migrations** applied -4. **Backup database** (if schema changed) -5. **Monitor blockchain** validator status - ---- - -## 📊 Database Schema (Supabase) - -### Core Tables - -- **profiles** - User profiles (linked to auth.users) -- **forum_categories** - Forum categories -- **forum_threads** - Forum threads -- **forum_posts** - Forum posts with moderation -- **courses** - Perwerde education courses -- **enrollments** - Course enrollments -- **p2p_offers** - P2P fiat trading offers -- **p2p_trades** - Active trades with escrow -- **p2p_reputation** - User reputation scores -- **payment_methods** - Payment method registry - -### Hybrid Architecture - -**Blockchain = Source of Truth** -``` -User action → Blockchain transaction → Event emitted - ↓ -Event listener → Supabase sync (for indexing/caching) - ↓ -UI queries Supabase (fast) + Blockchain (verification) -``` - -**Example Flow (Creating a Course):** -1. User submits form -2. Frontend calls `api.tx.perwerde.createCourse(...)` -3. Transaction finalized on-chain -4. Event listener catches `CourseCreated` event -5. Sync to Supabase for UI display -6. UI reads from Supabase (fast) but trusts blockchain - ---- - -## 🚨 Common Issues & Solutions - -### Issue: Polkadot.js API not connecting - -**Solution:** -1. Check endpoint is reachable: `curl -I http://37.60.230.9:9944` -2. Verify WebSocket protocol (wss vs ws) -3. Check CORS settings on blockchain node -4. Ensure validators are running: `ssh pezkuwi-vps "ps aux | grep pezkuwi"` - -### Issue: Transaction fails with "BadOrigin" - -**Solution:** -- User doesn't have required role (check pallet-tiki roles) -- Use `dispatch_as` if needed for elevated permissions - -### Issue: Balance shows as 0 - -**Solution:** -- Check correct Asset ID (wHEZ: 0, PEZ: 1, wUSDT: 2) -- Remember wUSDT uses 6 decimals, not 12 -- Verify account has opted-in to asset (required for assets pallet) - -### Issue: i18n translations not loading - -**Solution:** -- Web uses local `.ts` files (not shared JSON) -- Check import path: `import en from './locales/en.ts'` -- Not: `import en from '@pezkuwi/i18n/locales/en.json'` - -### Issue: Build fails with "Can't resolve @pezkuwi/..." - -**Solution:** -- Check Vite path aliases in `vite.config.ts` -- Verify TypeScript path mappings in `tsconfig.json` -- Run `npm install` in shared directory if using symlinks - ---- - -## 📝 Commit Guidelines - -### Commit Message Format - -``` -: - - -``` - -**Types:** -- `feat:` New feature -- `fix:` Bug fix -- `docs:` Documentation changes -- `style:` Code style changes (formatting) -- `refactor:` Code refactoring -- `test:` Adding tests -- `chore:` Build process, dependencies - -**Examples:** -```bash -git commit -m "feat: add P2P fiat trading interface" -git commit -m "fix: wUSDT decimals now correctly use 6 instead of 12" -git commit -m "docs: update CLAUDE.md with blockchain integration patterns" -``` - ---- - -## 🎓 Learning Resources - -### Polkadot.js - -- **API Docs:** https://polkadot.js.org/docs/ -- **Apps UI:** https://github.com/polkadot-js/apps -- **Extension:** https://polkadot.js.org/extension/ - -### UI/UX - -- **shadcn/ui:** https://ui.shadcn.com/ -- **Radix UI:** https://www.radix-ui.com/ -- **Tailwind CSS:** https://tailwindcss.com/ - -### Mobile - -- **Expo:** https://docs.expo.dev/ -- **React Native:** https://reactnative.dev/ -- **React Navigation:** https://reactnavigation.org/ - -### Backend - -- **Supabase:** https://supabase.com/docs -- **PostgreSQL:** https://www.postgresql.org/docs/ - ---- - -## 🔧 Useful Commands - -### Blockchain Health Check - -```bash -# Check validator logs -ssh pezkuwi-vps "tail -f /tmp/validator-1.log" - -# Check finalization -ssh pezkuwi-vps "tail -30 /tmp/validator-1.log | grep -E 'peers|finalized' | tail -5" - -# View all validators -ssh pezkuwi-vps "ps aux | grep pezkuwi" -``` - -### Deployment - -```bash -# Full web deployment -cd web && \ -npm run build && \ -rsync -avz dist/ pezkuwi-vps:/var/www/pezkuwichain/web/dist/ && \ -ssh pezkuwi-vps "systemctl reload nginx" -``` - -### Database - -```bash -# Apply Supabase migrations -cd web/supabase -supabase db push - -# Reset local database -supabase db reset -``` - ---- - -## 🎯 AI Assistant Guidelines - -### When Working on Features - -1. **Read critical docs first:** `CLAUDE_README_KRITIK.md` -2. **Check current branch:** Verify you're on correct feature branch -3. **Test blockchain connectivity:** Before making blockchain changes -4. **Use existing patterns:** Follow component/context patterns -5. **Maintain type safety:** No `any` types -6. **Test all languages:** Check i18n keys exist -7. **Test RTL layout:** For ckb, ar, fa languages - -### When Making Blockchain Changes - -1. **Understand pallet first:** Read Rust pallet code if needed -2. **Test on local node:** Before testnet -3. **Handle errors properly:** Extract dispatchError correctly -4. **Update Supabase:** If creating indexable data -5. **Monitor events:** Use WebSocketContext for real-time updates - -### When Deploying - -1. **Never deploy without testing** -2. **Check validator status first:** Ensure blockchain is healthy -3. **Deploy during low-traffic hours:** If possible -4. **Monitor logs after deploy:** Watch for errors -5. **Have rollback plan:** Keep previous build - ---- - -## 📞 Getting Help - -### Documentation Files - -- `README.md` - Project overview -- `CLAUDE_README_KRITIK.md` - Critical operational guidelines (Turkish) -- `PRODUCTION_READINESS.md` - Production status report -- `web/SECURITY.md` - Security policies -- `web/mimari.txt` - Detailed system architecture (Turkish) - -### VPS Access - -- **IP:** 37.60.230.9 -- **SSH:** `ssh pezkuwi-vps` (alias assumed configured) -- **Web Root:** `/var/www/pezkuwichain/web/dist/` -- **Nginx Config:** `/etc/nginx/sites-available/pezkuwichain.io` - ---- - -## ✅ Quick Reference Checklist - -**Starting a new feature:** -- [ ] Create feature branch -- [ ] Read relevant shared libraries -- [ ] Check existing similar features -- [ ] Plan component structure -- [ ] Add i18n keys for all languages - -**Before committing:** -- [ ] Run `npm run lint` -- [ ] Remove console.logs -- [ ] Check no `.env` changes -- [ ] Test in browser -- [ ] Write clear commit message - -**Before deploying:** -- [ ] Test production build locally -- [ ] Verify environment variables -- [ ] Check blockchain connection -- [ ] Monitor validator status -- [ ] Plan rollback strategy - -**After deploying:** -- [ ] Test live site -- [ ] Check browser console -- [ ] Monitor error logs -- [ ] Verify blockchain transactions work - ---- - -**Last Updated:** 2025-11-17 -**Maintained By:** PezkuwiChain Development Team -**Production Status:** 95% Complete - Beta Testnet Active diff --git a/backend/package.json b/backend/package.json index 7bea1444..eb6001ba 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,34 +1,21 @@ { - "name": "pezkuwi-kyc-backend", + "name": "pezkuwi-indexer-service", "version": "1.0.0", - "description": "KYC Approval Council Backend", + "description": "Simple Transaction Indexer for Pezkuwi Chain", "main": "src/index.js", "type": "module", "scripts": { - "dev": "node --watch src/index.js", "start": "node src/index.js", - "lint": "eslint 'src/**/*.js' --fix" + "dev": "node --watch src/index.js" }, "dependencies": { - "@pezkuwi/keyring": "^12.5.1", - "@pezkuwi/util-crypto": "^12.5.1", - "@supabase/supabase-js": "^2.83.0", + "@pezkuwi/api": "^16.5.9", + "@pezkuwi/util": "^14.0.11", + "@pezkuwi/util-crypto": "^14.0.11", "cors": "^2.8.5", - "dotenv": "^16.3.1", - "express": "^4.18.2", - "pino": "^10.1.0", - "pino-http": "^11.0.0", - "pino-pretty": "^13.1.2" - }, - "devDependencies": { - "@pezkuwi/api": "^16.5.2", - "eslint": "^8.57.1", - "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.32.0", - "eslint-plugin-n": "^16.6.2", - "eslint-plugin-promise": "^6.6.0", - "jest": "^30.2.0", - "nodemon": "^3.0.2", - "supertest": "^7.1.4" + "dotenv": "^17.2.3", + "express": "^5.2.1", + "sqlite": "^5.1.1", + "sqlite3": "^5.1.7" } } diff --git a/backend/src/index.js b/backend/src/index.js index 04f0e21b..406c9281 100644 --- a/backend/src/index.js +++ b/backend/src/index.js @@ -1,7 +1,134 @@ -import { app, logger } from './server.js' +import express from 'express'; +import cors from 'cors'; +import { open } from 'sqlite'; +import sqlite3 from 'sqlite3'; +import { ApiPromise, WsProvider } from '@pezkuwi/api'; +import dotenv from 'dotenv'; -const PORT = process.env.PORT || 3001 +dotenv.config(); -app.listen(PORT, () => { - logger.info(`🚀 KYC Council Backend running on port ${PORT}`) -}) \ No newline at end of file +const app = express(); +const port = process.env.PORT || 3001; +const WS_ENDPOINT = process.env.WS_ENDPOINT || 'wss://rpc.pezkuwichain.io'; + +app.use(cors()); +app.use(express.json()); + +// Initialize Database +async function initDb() { + const db = await open({ + filename: './transactions.db', + driver: sqlite3.Database + }); + + await db.exec(` + CREATE TABLE IF NOT EXISTS transfers ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + hash TEXT UNIQUE, + sender TEXT, + receiver TEXT, + amount TEXT, + asset_id INTEGER DEFAULT NULL, + symbol TEXT, + block_number INTEGER, + timestamp DATETIME DEFAULT CURRENT_TIMESTAMP + ) + `); + + return db; +} + +// Start Indexing +async function startIndexer(db) { + console.log(`Connecting to Pezkuwi Node: ${WS_ENDPOINT}`); + const provider = new WsProvider(WS_ENDPOINT); + const api = await ApiPromise.create({ provider }); + + console.log('Connected! Listening for new blocks...'); + + api.rpc.chain.subscribeNewHeads(async (header) => { + const blockNumber = header.number.toNumber(); + const blockHash = await api.rpc.chain.getBlockHash(blockNumber); + const signedBlock = await api.rpc.chain.getBlock(blockHash); + + signedBlock.block.extrinsics.forEach(async (ex) => { + const { method: { method, section }, signer } = ex; + + // 1. Handle Native HEZ Transfers + if (section === 'balances' && (method === 'transfer' || method === 'transferKeepAlive')) { + const [dest, value] = ex.method.args; + await saveTransfer(db, { + hash: ex.hash.toHex(), + sender: signer.toString(), + receiver: dest.toString(), + amount: value.toString(), + asset_id: null, + symbol: 'HEZ', + block_number: blockNumber + }); + } + + // 2. Handle Asset Transfers (PEZ, USDT) + if (section === 'assets' && method === 'transfer') { + const [id, dest, value] = ex.method.args; + const assetId = id.toNumber(); + const symbol = assetId === 1 ? 'PEZ' : assetId === 1000 ? 'USDT' : `ASSET-${assetId}`; + + await saveTransfer(db, { + hash: ex.hash.toHex(), + sender: signer.toString(), + receiver: dest.toString(), + amount: value.toString(), + asset_id: assetId, + symbol: symbol, + block_number: blockNumber + }); + } + }); + }); +} + +async function saveTransfer(db, tx) { + try { + await db.run( + `INSERT OR IGNORE INTO transfers (hash, sender, receiver, amount, asset_id, symbol, block_number) + VALUES (?, ?, ?, ?, ?, ?, ?)`, + [tx.hash, tx.sender, tx.receiver, tx.amount, tx.asset_id, tx.symbol, tx.block_number] + ); + console.log(`Indexed ${tx.symbol} Transfer: ${tx.hash.slice(0, 10)}...`); + } catch (err) { + console.error('DB Insert Error:', err); + } +} + +// API Routes +async function startServer(db) { + app.get('/api/history/:address', async (req, res) => { + const { address } = req.params; + try { + const history = await db.all( + `SELECT * FROM transfers + WHERE sender = ? OR receiver = ? + ORDER BY block_number DESC LIMIT 50`, + [address, address] + ); + res.json(history); + } catch (err) { + res.status(500).json({ error: err.message }); + } + }); + + app.get('/api/stats', async (req, res) => { + const stats = await db.get('SELECT COUNT(*) as total FROM transfers'); + res.json(stats); + }); + + app.listen(port, () => { + console.log(`Indexer API running at http://localhost:${port}`); + }); +} + +// Launch +const db = await initDb(); +startIndexer(db); +startServer(db); diff --git a/mobile/.gitignore b/mobile/.gitignore index d914c328..9ff23102 100644 --- a/mobile/.gitignore +++ b/mobile/.gitignore @@ -39,3 +39,8 @@ yarn-error.* # generated native folders /ios /android + +# Environment files +.env +.env.local +.env.*.local diff --git a/mobile/FIX_SCHEMA_COMPATIBILITY.sql b/mobile/FIX_SCHEMA_COMPATIBILITY.sql new file mode 100644 index 00000000..c60c2165 --- /dev/null +++ b/mobile/FIX_SCHEMA_COMPATIBILITY.sql @@ -0,0 +1,117 @@ +-- ================================================== +-- Schema Compatibility Fix +-- ================================================== +-- This SQL adds missing columns to existing tables +-- to make them compatible with mobile app +-- ================================================== + +-- 1. Add missing columns to forum_discussions +ALTER TABLE forum_discussions +ADD COLUMN IF NOT EXISTS likes INTEGER DEFAULT 0; + +-- Update existing rows +UPDATE forum_discussions SET likes = 0 WHERE likes IS NULL; + +-- 2. Add missing columns to forum_replies +ALTER TABLE forum_replies +ADD COLUMN IF NOT EXISTS likes INTEGER DEFAULT 0; + +-- Update existing rows +UPDATE forum_replies SET likes = 0 WHERE likes IS NULL; + +-- 3. Fix notifications table +-- Check if user_id exists and rename to user_address +DO $$ +BEGIN + -- If user_id exists, rename it to user_address + IF EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'user_id' + ) THEN + ALTER TABLE notifications RENAME COLUMN user_id TO user_address; + END IF; + + -- If user_address still doesn't exist, add it + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'user_address' + ) THEN + ALTER TABLE notifications ADD COLUMN user_address VARCHAR(100); + END IF; + + -- Add other missing columns + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'type' + ) THEN + ALTER TABLE notifications ADD COLUMN type VARCHAR(20) DEFAULT 'system'; + END IF; + + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'title' + ) THEN + ALTER TABLE notifications ADD COLUMN title VARCHAR(200); + END IF; + + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'read' + ) THEN + ALTER TABLE notifications ADD COLUMN read BOOLEAN DEFAULT FALSE; + END IF; + + IF NOT EXISTS ( + SELECT 1 FROM information_schema.columns + WHERE table_name = 'notifications' + AND column_name = 'metadata' + ) THEN + ALTER TABLE notifications ADD COLUMN metadata JSONB; + END IF; +END $$; + +-- ================================================== +-- Verify Fix +-- ================================================== + +-- Check forum_discussions +SELECT 'forum_discussions' as table_name, + column_name, + data_type, + is_nullable +FROM information_schema.columns +WHERE table_name = 'forum_discussions' + AND column_name IN ('likes', 'created_at', 'updated_at') +ORDER BY ordinal_position; + +-- Check forum_replies +SELECT 'forum_replies' as table_name, + column_name, + data_type, + is_nullable +FROM information_schema.columns +WHERE table_name = 'forum_replies' + AND column_name IN ('likes', 'created_at') +ORDER BY ordinal_position; + +-- Check notifications +SELECT 'notifications' as table_name, + column_name, + data_type, + is_nullable +FROM information_schema.columns +WHERE table_name = 'notifications' + AND column_name IN ('user_address', 'type', 'title', 'message', 'read', 'metadata', 'created_at') +ORDER BY ordinal_position; + +-- ================================================== +-- SUCCESS MESSAGE +-- ================================================== + +SELECT '✅ Schema compatibility fix complete!' as status; +SELECT 'Run check_schema_compatibility.cjs again to verify' as next_step; diff --git a/mobile/SUPABASE_SCHEMA.sql b/mobile/SUPABASE_SCHEMA.sql new file mode 100644 index 00000000..e5429cd6 --- /dev/null +++ b/mobile/SUPABASE_SCHEMA.sql @@ -0,0 +1,276 @@ +-- ================================================== +-- Pezkuwi Mobile App - Supabase Database Schema +-- ================================================== +-- This schema creates all tables needed for web2 features: +-- - Forum (discussions, categories, replies) +-- - P2P Platform (ads, trades) +-- - Notifications +-- - Referrals +-- ================================================== + +-- Enable UUID extension +CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; + +-- ================================================== +-- FORUM TABLES +-- ================================================== + +-- Forum Categories +CREATE TABLE IF NOT EXISTS forum_categories ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + name VARCHAR(100) NOT NULL UNIQUE, + description TEXT, + icon VARCHAR(50), + created_at TIMESTAMPTZ DEFAULT NOW(), + updated_at TIMESTAMPTZ DEFAULT NOW() +); + +-- Forum Discussions (Threads) +CREATE TABLE IF NOT EXISTS forum_discussions ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + category_id UUID NOT NULL REFERENCES forum_categories(id) ON DELETE CASCADE, + author_address VARCHAR(100) NOT NULL, + author_name VARCHAR(100), + title VARCHAR(200) NOT NULL, + content TEXT NOT NULL, + likes INTEGER DEFAULT 0, + replies_count INTEGER DEFAULT 0, + created_at TIMESTAMPTZ DEFAULT NOW(), + updated_at TIMESTAMPTZ DEFAULT NOW() +); + +-- Forum Replies +CREATE TABLE IF NOT EXISTS forum_replies ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + discussion_id UUID NOT NULL REFERENCES forum_discussions(id) ON DELETE CASCADE, + author_address VARCHAR(100) NOT NULL, + author_name VARCHAR(100), + content TEXT NOT NULL, + likes INTEGER DEFAULT 0, + created_at TIMESTAMPTZ DEFAULT NOW() +); + +-- ================================================== +-- P2P PLATFORM TABLES +-- ================================================== + +-- P2P Ads +CREATE TABLE IF NOT EXISTS p2p_ads ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + user_address VARCHAR(100) NOT NULL, + type VARCHAR(10) NOT NULL CHECK (type IN ('buy', 'sell')), + merchant_name VARCHAR(100) NOT NULL, + rating DECIMAL(3,2) DEFAULT 0.00 CHECK (rating >= 0 AND rating <= 5), + trades_count INTEGER DEFAULT 0, + price DECIMAL(18,2) NOT NULL, + currency VARCHAR(10) NOT NULL DEFAULT 'USD', + amount VARCHAR(50) NOT NULL, + min_limit VARCHAR(50) NOT NULL, + max_limit VARCHAR(50) NOT NULL, + payment_methods TEXT[] NOT NULL, + status VARCHAR(20) NOT NULL DEFAULT 'active' CHECK (status IN ('active', 'inactive', 'completed')), + created_at TIMESTAMPTZ DEFAULT NOW(), + updated_at TIMESTAMPTZ DEFAULT NOW() +); + +-- P2P Trades +CREATE TABLE IF NOT EXISTS p2p_trades ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + ad_id UUID NOT NULL REFERENCES p2p_ads(id) ON DELETE CASCADE, + buyer_address VARCHAR(100) NOT NULL, + seller_address VARCHAR(100) NOT NULL, + amount VARCHAR(50) NOT NULL, + price DECIMAL(18,2) NOT NULL, + total DECIMAL(18,2) NOT NULL, + status VARCHAR(20) NOT NULL DEFAULT 'pending' CHECK (status IN ('pending', 'paid', 'confirmed', 'disputed', 'completed', 'cancelled')), + payment_method VARCHAR(100) NOT NULL, + escrow_address VARCHAR(100), + chat_messages JSONB DEFAULT '[]'::jsonb, + created_at TIMESTAMPTZ DEFAULT NOW(), + updated_at TIMESTAMPTZ DEFAULT NOW() +); + +-- ================================================== +-- NOTIFICATIONS TABLE +-- ================================================== + +CREATE TABLE IF NOT EXISTS notifications ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + user_address VARCHAR(100) NOT NULL, + type VARCHAR(20) NOT NULL CHECK (type IN ('transaction', 'governance', 'p2p', 'referral', 'system')), + title VARCHAR(200) NOT NULL, + message TEXT NOT NULL, + read BOOLEAN DEFAULT FALSE, + metadata JSONB, + created_at TIMESTAMPTZ DEFAULT NOW() +); + +-- ================================================== +-- REFERRALS TABLE +-- ================================================== + +CREATE TABLE IF NOT EXISTS referrals ( + id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), + referrer_address VARCHAR(100) NOT NULL, + referee_address VARCHAR(100) NOT NULL UNIQUE, + status VARCHAR(20) NOT NULL DEFAULT 'pending' CHECK (status IN ('pending', 'active', 'completed')), + earnings DECIMAL(18,2) DEFAULT 0.00, + created_at TIMESTAMPTZ DEFAULT NOW(), + updated_at TIMESTAMPTZ DEFAULT NOW(), + UNIQUE(referrer_address, referee_address) +); + +-- ================================================== +-- INDEXES FOR PERFORMANCE +-- ================================================== + +-- Forum indexes +CREATE INDEX IF NOT EXISTS idx_forum_discussions_category ON forum_discussions(category_id); +CREATE INDEX IF NOT EXISTS idx_forum_discussions_author ON forum_discussions(author_address); +CREATE INDEX IF NOT EXISTS idx_forum_discussions_created ON forum_discussions(created_at DESC); +CREATE INDEX IF NOT EXISTS idx_forum_replies_discussion ON forum_replies(discussion_id); +CREATE INDEX IF NOT EXISTS idx_forum_replies_author ON forum_replies(author_address); + +-- P2P indexes +CREATE INDEX IF NOT EXISTS idx_p2p_ads_user ON p2p_ads(user_address); +CREATE INDEX IF NOT EXISTS idx_p2p_ads_type ON p2p_ads(type); +CREATE INDEX IF NOT EXISTS idx_p2p_ads_status ON p2p_ads(status); +CREATE INDEX IF NOT EXISTS idx_p2p_ads_created ON p2p_ads(created_at DESC); +CREATE INDEX IF NOT EXISTS idx_p2p_trades_ad ON p2p_trades(ad_id); +CREATE INDEX IF NOT EXISTS idx_p2p_trades_buyer ON p2p_trades(buyer_address); +CREATE INDEX IF NOT EXISTS idx_p2p_trades_seller ON p2p_trades(seller_address); +CREATE INDEX IF NOT EXISTS idx_p2p_trades_status ON p2p_trades(status); + +-- Notifications indexes +CREATE INDEX IF NOT EXISTS idx_notifications_user ON notifications(user_address); +CREATE INDEX IF NOT EXISTS idx_notifications_read ON notifications(read); +CREATE INDEX IF NOT EXISTS idx_notifications_created ON notifications(created_at DESC); + +-- Referrals indexes +CREATE INDEX IF NOT EXISTS idx_referrals_referrer ON referrals(referrer_address); +CREATE INDEX IF NOT EXISTS idx_referrals_referee ON referrals(referee_address); +CREATE INDEX IF NOT EXISTS idx_referrals_status ON referrals(status); + +-- ================================================== +-- ROW LEVEL SECURITY (RLS) POLICIES +-- ================================================== + +-- Enable RLS on all tables +ALTER TABLE forum_categories ENABLE ROW LEVEL SECURITY; +ALTER TABLE forum_discussions ENABLE ROW LEVEL SECURITY; +ALTER TABLE forum_replies ENABLE ROW LEVEL SECURITY; +ALTER TABLE p2p_ads ENABLE ROW LEVEL SECURITY; +ALTER TABLE p2p_trades ENABLE ROW LEVEL SECURITY; +ALTER TABLE notifications ENABLE ROW LEVEL SECURITY; +ALTER TABLE referrals ENABLE ROW LEVEL SECURITY; + +-- Forum policies (public read, authenticated write) +CREATE POLICY "Forum categories are viewable by everyone" ON forum_categories FOR SELECT USING (true); +CREATE POLICY "Forum discussions are viewable by everyone" ON forum_discussions FOR SELECT USING (true); +CREATE POLICY "Forum discussions can be created by anyone" ON forum_discussions FOR INSERT WITH CHECK (true); +CREATE POLICY "Forum discussions can be updated by author" ON forum_discussions FOR UPDATE USING (author_address = current_setting('request.jwt.claims', true)::json->>'address'); +CREATE POLICY "Forum replies are viewable by everyone" ON forum_replies FOR SELECT USING (true); +CREATE POLICY "Forum replies can be created by anyone" ON forum_replies FOR INSERT WITH CHECK (true); + +-- P2P policies (users can only see active ads and their own trades) +CREATE POLICY "P2P ads are viewable by everyone" ON p2p_ads FOR SELECT USING (status = 'active' OR user_address = current_setting('request.jwt.claims', true)::json->>'address'); +CREATE POLICY "P2P ads can be created by anyone" ON p2p_ads FOR INSERT WITH CHECK (true); +CREATE POLICY "P2P ads can be updated by owner" ON p2p_ads FOR UPDATE USING (user_address = current_setting('request.jwt.claims', true)::json->>'address'); +CREATE POLICY "P2P trades are viewable by participants" ON p2p_trades FOR SELECT USING ( + buyer_address = current_setting('request.jwt.claims', true)::json->>'address' OR + seller_address = current_setting('request.jwt.claims', true)::json->>'address' +); +CREATE POLICY "P2P trades can be created by anyone" ON p2p_trades FOR INSERT WITH CHECK (true); +CREATE POLICY "P2P trades can be updated by participants" ON p2p_trades FOR UPDATE USING ( + buyer_address = current_setting('request.jwt.claims', true)::json->>'address' OR + seller_address = current_setting('request.jwt.claims', true)::json->>'address' +); + +-- Notifications policies (users can only see their own) +CREATE POLICY "Users can view their own notifications" ON notifications FOR SELECT USING (user_address = current_setting('request.jwt.claims', true)::json->>'address'); +CREATE POLICY "Users can update their own notifications" ON notifications FOR UPDATE USING (user_address = current_setting('request.jwt.claims', true)::json->>'address'); + +-- Referrals policies (users can see their own referrals) +CREATE POLICY "Users can view their own referrals" ON referrals FOR SELECT USING ( + referrer_address = current_setting('request.jwt.claims', true)::json->>'address' OR + referee_address = current_setting('request.jwt.claims', true)::json->>'address' +); +CREATE POLICY "Referrals can be created by anyone" ON referrals FOR INSERT WITH CHECK (true); + +-- ================================================== +-- SAMPLE DATA FOR TESTING +-- ================================================== + +-- Insert sample forum categories +INSERT INTO forum_categories (name, description, icon) VALUES + ('General', 'General discussions about PezkuwiChain', '💬'), + ('Governance', 'Proposals, voting, and governance topics', '🏛️'), + ('Technical', 'Technical discussions and development', '💻'), + ('Trading', 'P2P trading and market discussions', '📈'), + ('Support', 'Get help and support', '❓') +ON CONFLICT (name) DO NOTHING; + +-- ================================================== +-- FUNCTIONS AND TRIGGERS +-- ================================================== + +-- Function to update updated_at timestamp +CREATE OR REPLACE FUNCTION update_updated_at_column() +RETURNS TRIGGER AS $$ +BEGIN + NEW.updated_at = NOW(); + RETURN NEW; +END; +$$ language 'plpgsql'; + +-- Triggers for updated_at +CREATE TRIGGER update_forum_discussions_updated_at BEFORE UPDATE ON forum_discussions FOR EACH ROW EXECUTE FUNCTION update_updated_at_column(); +CREATE TRIGGER update_p2p_ads_updated_at BEFORE UPDATE ON p2p_ads FOR EACH ROW EXECUTE FUNCTION update_updated_at_column(); +CREATE TRIGGER update_p2p_trades_updated_at BEFORE UPDATE ON p2p_trades FOR EACH ROW EXECUTE FUNCTION update_updated_at_column(); +CREATE TRIGGER update_referrals_updated_at BEFORE UPDATE ON referrals FOR EACH ROW EXECUTE FUNCTION update_updated_at_column(); + +-- Function to increment replies_count +CREATE OR REPLACE FUNCTION increment_replies_count() +RETURNS TRIGGER AS $$ +BEGIN + UPDATE forum_discussions + SET replies_count = replies_count + 1 + WHERE id = NEW.discussion_id; + RETURN NEW; +END; +$$ language 'plpgsql'; + +-- Trigger for replies count +CREATE TRIGGER increment_forum_replies_count +AFTER INSERT ON forum_replies +FOR EACH ROW +EXECUTE FUNCTION increment_replies_count(); + +-- ================================================== +-- GRANT PERMISSIONS +-- ================================================== + +-- Grant usage on all tables to anon and authenticated users +GRANT USAGE ON SCHEMA public TO anon, authenticated; +GRANT ALL ON ALL TABLES IN SCHEMA public TO anon, authenticated; +GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO anon, authenticated; + +-- ================================================== +-- SCHEMA COMPLETE +-- ================================================== + +-- Verify table creation +SELECT + 'forum_categories' as table_name, COUNT(*) as row_count FROM forum_categories +UNION ALL +SELECT 'forum_discussions', COUNT(*) FROM forum_discussions +UNION ALL +SELECT 'forum_replies', COUNT(*) FROM forum_replies +UNION ALL +SELECT 'p2p_ads', COUNT(*) FROM p2p_ads +UNION ALL +SELECT 'p2p_trades', COUNT(*) FROM p2p_trades +UNION ALL +SELECT 'notifications', COUNT(*) FROM notifications +UNION ALL +SELECT 'referrals', COUNT(*) FROM referrals; diff --git a/mobile/app.json b/mobile/app.json index 3c7754fe..a496076a 100644 --- a/mobile/app.json +++ b/mobile/app.json @@ -1,7 +1,7 @@ { "expo": { - "name": "mobile", - "slug": "mobile", + "name": "Pezkuwi Wallet", + "slug": "pezkuwi-wallet", "version": "1.0.0", "orientation": "portrait", "icon": "./assets/icon.png", @@ -16,6 +16,7 @@ "supportsTablet": true }, "android": { + "package": "io.pezkuwichain.wallet", "adaptiveIcon": { "foregroundImage": "./assets/adaptive-icon.png", "backgroundColor": "#ffffff" diff --git a/mobile/assets/adaptive-icon.png b/mobile/assets/adaptive-icon.png index 03d6f6b6..445f8f22 100644 Binary files a/mobile/assets/adaptive-icon.png and b/mobile/assets/adaptive-icon.png differ diff --git a/mobile/assets/icon.png b/mobile/assets/icon.png index a0b1526f..445f8f22 100644 Binary files a/mobile/assets/icon.png and b/mobile/assets/icon.png differ diff --git a/mobile/assets/kurdistan-map.png b/mobile/assets/kurdistan-map.png new file mode 100644 index 00000000..281a3b00 Binary files /dev/null and b/mobile/assets/kurdistan-map.png differ diff --git a/mobile/check_existing_tables.cjs b/mobile/check_existing_tables.cjs new file mode 100644 index 00000000..02b58db6 --- /dev/null +++ b/mobile/check_existing_tables.cjs @@ -0,0 +1,126 @@ +/** + * Check Existing Supabase Tables + * + * This script connects to Supabase and lists all existing tables + * to check for conflicts with new schema + */ + +const { createClient } = require('@supabase/supabase-js'); + +const supabaseUrl = 'https://vsyrpfiwhjvahofxwytr.supabase.co'; +const supabaseKey = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InZzeXJwZml3aGp2YWhvZnh3eXRyIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjAwMjYxNTgsImV4cCI6MjA3NTYwMjE1OH0.dO2c8YWIph2D95X7jFdlGYJ8MXyuyorkLcjQ6onH-HE'; + +const supabase = createClient(supabaseUrl, supabaseKey); + +// Tables we want to create +const newTables = [ + 'forum_categories', + 'forum_discussions', + 'forum_replies', + 'p2p_ads', + 'p2p_trades', + 'notifications', + 'referrals' +]; + +async function checkTables() { + console.log('🔍 Checking existing Supabase tables...\n'); + + try { + // Get list of all tables using information_schema + const { data, error } = await supabase + .from('information_schema.tables') + .select('table_name') + .eq('table_schema', 'public') + .eq('table_type', 'BASE TABLE'); + + if (error) { + // If we can't query information_schema, try a different approach + console.log('⚠️ Cannot access information_schema with anon key'); + console.log('ℹ️ This is normal - anon key has limited permissions'); + console.log('\n📋 Tables we will create:\n'); + newTables.forEach(table => { + console.log(` - ${table}`); + }); + console.log('\n✅ Safe to proceed: Using CREATE TABLE IF NOT EXISTS'); + console.log(' → Existing tables will NOT be affected'); + console.log(' → Only missing tables will be created\n'); + return; + } + + const existingTables = data.map(row => row.table_name); + + console.log(`📊 Found ${existingTables.length} existing tables in Supabase:\n`); + existingTables.forEach(table => { + console.log(` - ${table}`); + }); + + console.log('\n📋 Tables we want to create:\n'); + + const conflicts = []; + const newToCreate = []; + + newTables.forEach(table => { + if (existingTables.includes(table)) { + conflicts.push(table); + console.log(` ⚠️ ${table} (ALREADY EXISTS)`); + } else { + newToCreate.push(table); + console.log(` ✅ ${table} (WILL BE CREATED)`); + } + }); + + console.log('\n' + '='.repeat(60)); + + if (conflicts.length > 0) { + console.log('\n⚠️ CONFLICT ANALYSIS:\n'); + console.log(` ${conflicts.length} table(s) already exist:`); + conflicts.forEach(table => { + console.log(` - ${table}`); + }); + console.log('\n✅ SAFE TO PROCEED:'); + console.log(' → SQL uses "CREATE TABLE IF NOT EXISTS"'); + console.log(' → Existing tables will be SKIPPED'); + console.log(' → No data will be modified or deleted'); + console.log(' → Only missing tables will be created\n'); + } + + if (newToCreate.length > 0) { + console.log(`\n📝 ${newToCreate.length} new table(s) will be created:`); + newToCreate.forEach(table => { + console.log(` - ${table}`); + }); + } + + console.log('\n' + '='.repeat(60)); + console.log('\n🎯 RECOMMENDATION:\n'); + + if (conflicts.length === 0) { + console.log(' ✅ No conflicts found'); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql'); + console.log(' ✅ All 7 tables will be created\n'); + } else if (newToCreate.length === 0) { + console.log(' ℹ️ All tables already exist'); + console.log(' ℹ️ You can safely run the SQL (it will skip existing tables)'); + console.log(' ℹ️ Or you can skip running it entirely\n'); + } else { + console.log(' ⚠️ Some tables exist, some don\'t'); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql'); + console.log(` ✅ Will create ${newToCreate.length} missing tables`); + console.log(` ℹ️ Will skip ${conflicts.length} existing tables\n`); + } + + } catch (error) { + console.error('❌ Error:', error.message); + console.log('\nℹ️ If you see permission errors, this is expected with anon key'); + console.log('✅ Proceed with SQL execution - it\'s safe!\n'); + } +} + +checkTables().then(() => { + console.log('✅ Analysis complete\n'); + process.exit(0); +}).catch(err => { + console.error('❌ Fatal error:', err); + process.exit(1); +}); diff --git a/mobile/check_schema_compatibility.cjs b/mobile/check_schema_compatibility.cjs new file mode 100644 index 00000000..5c50ccbb --- /dev/null +++ b/mobile/check_schema_compatibility.cjs @@ -0,0 +1,107 @@ +/** + * Check Schema Compatibility + */ + +const { createClient } = require('@supabase/supabase-js'); + +const supabaseUrl = 'https://vsyrpfiwhjvahofxwytr.supabase.co'; +const supabaseServiceKey = 'sb_secret_oXy8Diay2J_u8dKPZLxdcQ_hq69Mrb6'; + +const supabase = createClient(supabaseUrl, supabaseServiceKey); + +// Expected schemas for mobile app +const expectedSchemas = { + forum_categories: ['id', 'name', 'description', 'icon', 'created_at'], + forum_discussions: ['id', 'category_id', 'author_address', 'author_name', 'title', 'content', 'likes', 'replies_count', 'created_at', 'updated_at'], + forum_replies: ['id', 'discussion_id', 'author_address', 'author_name', 'content', 'likes', 'created_at'], + notifications: ['id', 'user_address', 'type', 'title', 'message', 'read', 'metadata', 'created_at'], +}; + +async function checkSchema(tableName, expectedColumns) { + console.log(`\n🔍 Checking ${tableName}...`); + + try { + // Try to select from table with expected columns + const selectQuery = expectedColumns.map(col => `${col}`).join(', '); + const { data, error } = await supabase + .from(tableName) + .select(selectQuery) + .limit(1); + + if (error) { + console.log(` ❌ ERROR: ${error.message}`); + console.log(` ⚠️ Schema might be incompatible`); + return { compatible: false, error: error.message }; + } + + console.log(` ✅ COMPATIBLE - All expected columns found`); + return { compatible: true }; + + } catch (e) { + console.log(` ❌ ERROR: ${e.message}`); + return { compatible: false, error: e.message }; + } +} + +async function checkAllSchemas() { + console.log('=' .repeat(70)); + console.log('📋 SCHEMA COMPATIBILITY CHECK'); + console.log('='.repeat(70)); + + const results = {}; + + for (const [tableName, columns] of Object.entries(expectedSchemas)) { + results[tableName] = await checkSchema(tableName, columns); + } + + console.log('\n' + '='.repeat(70)); + console.log('📊 SUMMARY:'); + console.log('='.repeat(70)); + + const compatible = Object.entries(results).filter(([_, r]) => r.compatible); + const incompatible = Object.entries(results).filter(([_, r]) => !r.compatible); + + if (compatible.length > 0) { + console.log(`\n✅ ${compatible.length} table(s) are COMPATIBLE:\n`); + compatible.forEach(([table]) => { + console.log(` ✅ ${table}`); + }); + } + + if (incompatible.length > 0) { + console.log(`\n⚠️ ${incompatible.length} table(s) have ISSUES:\n`); + incompatible.forEach(([table, result]) => { + console.log(` ❌ ${table}`); + console.log(` Error: ${result.error}`); + }); + + console.log('\n🔧 RECOMMENDED ACTIONS:\n'); + incompatible.forEach(([table]) => { + console.log(` ${table}:`); + console.log(` 1. Check column names and types`); + console.log(` 2. Add missing columns with ALTER TABLE`); + console.log(` 3. Or drop and recreate (data will be lost!)\n`); + }); + } + + console.log('='.repeat(70)); + console.log('\n🎯 FINAL RECOMMENDATION:\n'); + + if (incompatible.length === 0) { + console.log(' ✅ All existing tables are compatible'); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql'); + console.log(' ✅ Only missing tables will be created\n'); + } else { + console.log(' ⚠️ Some tables have schema issues'); + console.log(' ⚠️ Fix schemas before running mobile app'); + console.log(' ✅ You can still run SQL (it will skip existing tables)\n'); + } +} + +checkAllSchemas().then(() => { + console.log('✅ Schema check complete\n'); + process.exit(0); +}).catch(err => { + console.error('❌ Fatal error:', err.message); + process.exit(1); +}); diff --git a/mobile/check_tables_admin.cjs b/mobile/check_tables_admin.cjs new file mode 100644 index 00000000..d8e51275 --- /dev/null +++ b/mobile/check_tables_admin.cjs @@ -0,0 +1,207 @@ +/** + * Check Existing Supabase Tables with Admin Access + */ + +const { createClient } = require('@supabase/supabase-js'); + +const supabaseUrl = 'https://vsyrpfiwhjvahofxwytr.supabase.co'; +const supabaseServiceKey = process.env.SUPABASE_SERVICE_KEY || 'sb_secret_oXy8Diay2J_u8dKPZLxdcQ_hq69Mrb6'; + +const supabase = createClient(supabaseUrl, supabaseServiceKey, { + auth: { + autoRefreshToken: false, + persistSession: false + } +}); + +const newTables = [ + 'forum_categories', + 'forum_discussions', + 'forum_replies', + 'p2p_ads', + 'p2p_trades', + 'notifications', + 'referrals' +]; + +async function checkTables() { + console.log('🔍 Fetching existing tables with admin access...\n'); + + try { + // Use RPC to query information_schema + const { data, error } = await supabase.rpc('get_table_list', {}); + + if (error) { + // Fallback: Direct query + const query = ` + SELECT + table_name, + (SELECT COUNT(*) + FROM information_schema.columns + WHERE table_name = t.table_name + AND table_schema = 'public') as column_count + FROM information_schema.tables t + WHERE table_schema = 'public' + AND table_type = 'BASE TABLE' + ORDER BY table_name; + `; + + const { data: tableData, error: queryError } = await supabase + .from('_placeholder') + .select(); + + if (queryError) { + console.log('⚠️ Cannot query information_schema directly'); + console.log('ℹ️ Will check for conflicts manually\n'); + await checkConflictsManually(); + return; + } + } + + // If we got data, process it + if (data && Array.isArray(data)) { + const existingTables = data.map(row => row.table_name); + displayAnalysis(existingTables); + } else { + await checkConflictsManually(); + } + + } catch (error) { + console.log('⚠️ Error:', error.message); + console.log('ℹ️ Checking conflicts manually...\n'); + await checkConflictsManually(); + } +} + +async function checkConflictsManually() { + console.log('📋 Checking each table individually...\n'); + + const results = { + existing: [], + missing: [], + errors: [] + }; + + for (const tableName of newTables) { + try { + const { data, error } = await supabase + .from(tableName) + .select('*') + .limit(0); + + if (error) { + if (error.message.includes('does not exist') || error.code === '42P01') { + results.missing.push(tableName); + console.log(` ✅ ${tableName} - NOT FOUND (will be created)`); + } else { + results.errors.push({ table: tableName, error: error.message }); + console.log(` ⚠️ ${tableName} - ERROR: ${error.message}`); + } + } else { + results.existing.push(tableName); + console.log(` ⚠️ ${tableName} - ALREADY EXISTS`); + } + } catch (e) { + results.errors.push({ table: tableName, error: e.message }); + console.log(` ❌ ${tableName} - ERROR: ${e.message}`); + } + } + + console.log('\n' + '='.repeat(70)); + console.log('\n📊 CONFLICT ANALYSIS:\n'); + + if (results.existing.length > 0) { + console.log(`⚠️ ${results.existing.length} table(s) ALREADY EXIST:\n`); + results.existing.forEach(table => { + console.log(` - ${table}`); + }); + console.log('\n ℹ️ These tables will be SKIPPED'); + console.log(' ℹ️ Existing data will NOT be modified\n'); + } + + if (results.missing.length > 0) { + console.log(`✅ ${results.missing.length} table(s) WILL BE CREATED:\n`); + results.missing.forEach(table => { + console.log(` - ${table}`); + }); + console.log(''); + } + + if (results.errors.length > 0) { + console.log(`⚠️ ${results.errors.length} error(s) encountered:\n`); + results.errors.forEach(({ table, error }) => { + console.log(` - ${table}: ${error}`); + }); + console.log(''); + } + + console.log('='.repeat(70)); + console.log('\n🎯 RECOMMENDATION:\n'); + + if (results.missing.length === newTables.length) { + console.log(' ✅ NO CONFLICTS - All tables are new'); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql'); + console.log(' ✅ All 7 tables will be created\n'); + } else if (results.existing.length === newTables.length) { + console.log(' ℹ️ ALL TABLES ALREADY EXIST'); + console.log(' ℹ️ SQL will skip all tables (no changes)'); + console.log(' ⚠️ Check if schemas match mobile app expectations\n'); + } else { + console.log(' ⚠️ PARTIAL CONFLICT'); + console.log(` ✅ ${results.missing.length} tables will be created`); + console.log(` ℹ️ ${results.existing.length} tables will be skipped`); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql\n'); + } +} + +function displayAnalysis(existingTables) { + console.log(`📊 Found ${existingTables.length} existing tables:\n`); + + existingTables.forEach(table => { + const isConflict = newTables.includes(table); + console.log(` ${isConflict ? '⚠️ ' : ' '} ${table}${isConflict ? ' (CONFLICT)' : ''}`); + }); + + console.log('\n' + '='.repeat(70)); + console.log('\n📋 New tables to create:\n'); + + const conflicts = []; + const newToCreate = []; + + newTables.forEach(table => { + if (existingTables.includes(table)) { + conflicts.push(table); + console.log(` ⚠️ ${table} (ALREADY EXISTS - will be skipped)`); + } else { + newToCreate.push(table); + console.log(` ✅ ${table} (WILL BE CREATED)`); + } + }); + + console.log('\n' + '='.repeat(70)); + console.log('\n🎯 SUMMARY:\n'); + console.log(` Total existing tables: ${existingTables.length}`); + console.log(` Conflicting tables: ${conflicts.length}`); + console.log(` New tables to create: ${newToCreate.length}`); + console.log(` After SQL: ${existingTables.length + newToCreate.length} total tables\n`); + + console.log('='.repeat(70)); + console.log('\n✅ RECOMMENDATION:\n'); + + if (conflicts.length === 0) { + console.log(' ✅ NO CONFLICTS'); + console.log(' ✅ Safe to run SUPABASE_SCHEMA.sql\n'); + } else { + console.log(' ⚠️ Some tables already exist'); + console.log(' ✅ Safe to run SQL (will skip existing tables)'); + console.log(' ℹ️ Check schemas of existing tables for compatibility\n'); + } +} + +checkTables().then(() => { + console.log('✅ Analysis complete\n'); + process.exit(0); +}).catch(err => { + console.error('❌ Fatal error:', err.message); + process.exit(1); +}); diff --git a/mobile/docs/FAZ_1_SUMMARY.md b/mobile/docs/FAZ_1_SUMMARY.md deleted file mode 100644 index c6339f2d..00000000 --- a/mobile/docs/FAZ_1_SUMMARY.md +++ /dev/null @@ -1,343 +0,0 @@ -# FAZ 1: Mobile App Temel Yapı - Özet Rapor - -## Genel Bakış -FAZ 1, mobil uygulama için temel kullanıcı akışının ve blockchain bağlantısının kurulmasını kapsar. Bu faz tamamlandığında kullanıcı, dil seçimi yapabilecek, insan doğrulamasından geçecek ve gerçek blockchain verilerini görebilecek. - -## Tamamlanan Görevler ✅ - -### 1. WelcomeScreen - Dil Seçimi ✅ -**Dosya:** `/home/mamostehp/pwap/mobile/src/screens/WelcomeScreen.tsx` - -**Durum:** Tamamen hazır, değişiklik gerekmez - -**Özellikler:** -- 6 dil desteği (EN, TR, KMR, CKB, AR, FA) -- RTL (Sağdan-sola) dil desteği badge'i -- Kurdistan renk paleti ile gradient tasarım -- i18next entegrasyonu aktif -- LanguageContext ile dil state yönetimi - -**Kod İncelemesi:** -- Lines 22-42: 6 dil tanımı (name, nativeName, code, rtl) -- Lines 44-58: handleLanguageSelect() - Dil değişim fonksiyonu -- Lines 59-88: Dil kartları UI (TouchableOpacity ile seçilebilir) -- Lines 104-107: Devam butonu (dil seçildikten sonra aktif olur) - -### 2. VerificationScreen - İnsan Doğrulama ✅ -**Dosya:** `/home/mamostehp/pwap/mobile/src/screens/VerificationScreen.tsx` - -**Durum:** Syntax hatası düzeltildi (line 50: KurdistanColors) - -**Özellikler:** -- Mock doğrulama (FAZ 1.2 için yeterli) -- Dev modunda "Skip" butonu (__DEV__ flag) -- 1.5 saniye simüle doğrulama delay'i -- Linear gradient tasarım (Kesk → Zer) -- i18n çeviri desteği -- Loading state (ActivityIndicator) - -**Kod İncelemesi:** -- Lines 30-38: handleVerify() - 1.5s simüle doğrulama -- Lines 40-45: handleSkip() - Sadece dev modda aktif -- Lines 50: **FIX APPLIED** - `KurdistanColors.kesk` (was: `Kurdistan Colors.kesk`) -- Lines 75-81: Dev mode badge gösterimi -- Lines 100-110: Skip butonu (sadece __DEV__) - -**Düzeltilen Hata:** -```diff -- colors={[Kurdistan Colors.kesk, KurdistanColors.zer]} -+ colors={[KurdistanColors.kesk, KurdistanColors.zer]} -``` - -## Devam Eden Görevler 🚧 - -### 3. DashboardScreen - Blockchain Bağlantısı 🚧 -**Dosya:** `/home/mamostehp/pwap/mobile/src/screens/DashboardScreen.tsx` - -**Durum:** UI hazır, blockchain entegrasyonu gerekli - -**Hardcoded Değerler (Değiştirilmesi Gereken):** - -#### Balance Card (Lines 94-108) -```typescript -// ❌ ŞU AN HARDCODED: -0.00 HEZ - -// Satır 98-101: Total Staked -0.00 - -// Satır 103-106: Rewards -0.00 -``` - -**Gerekli Değişiklik:** -```typescript -// ✅ OLMASI GEREKEN: -import { useBalance } from '@pezkuwi/shared/hooks/blockchain/useBalance'; - -const { balance, isLoading, error } = useBalance(api, userAddress); - - - {isLoading ? 'Loading...' : formatBalance(balance.free)} HEZ - -``` - -#### Active Proposals Card (Lines 133-142) -```typescript -// ❌ ŞU AN HARDCODED: -0 -``` - -**Gerekli Değişiklik:** -```typescript -// ✅ OLMASI GEREKEN: -import { useProposals } from '@pezkuwi/shared/hooks/blockchain/useProposals'; - -const { proposals, isLoading } = useProposals(api); - - - {isLoading ? '...' : proposals.length} - -``` - -### 4. Quick Actions - Gerçek Veri Bağlantısı 🚧 -**Durum:** UI hazır, blockchain queries gerekli - -**Mevcut Quick Actions:** -1. 💼 **Wallet** - `onNavigateToWallet()` ✅ (navigation var) -2. 🔒 **Staking** - `console.log()` ❌ (stub) -3. 🗳️ **Governance** - `console.log()` ❌ (stub) -4. 💱 **DEX** - `console.log()` ❌ (stub) -5. 📜 **History** - `console.log()` ❌ (stub) -6. ⚙️ **Settings** - `onNavigateToSettings()` ✅ (navigation var) - -**FAZ 1 İçin Gerekli:** -- Quick Actions'lar gerçek blockchain data ile çalışacak şekilde güncellenecek -- Her action için ilgili screen navigation'ı eklenecek -- FAZ 2'de detaylı implementasyonlar yapılacak (şimdilik sadece navigation yeterli) - -## Gerekli Shared Hooks (Oluşturulmalı) - -### 1. useBalance Hook ✅ (ZATEN OLUŞTURULDU) -**Dosya:** `/home/mamostehp/pwap/shared/hooks/blockchain/usePolkadotApi.ts` - -**Durum:** Platform-agnostic API connection hook hazır - -**Kod:** -```typescript -export function usePolkadotApi(endpoint?: string): UsePolkadotApiReturn { - const [api, setApi] = useState(null); - const [isReady, setIsReady] = useState(false); - const [error, setError] = useState(null); - - // Auto-connect on mount, disconnect on unmount - // Returns: { api, isReady, error, connect, disconnect } -} -``` - -**Kullanım:** -```typescript -import { usePolkadotApi } from '@pezkuwi/shared/hooks/blockchain/usePolkadotApi'; - -const { api, isReady, error } = usePolkadotApi('ws://localhost:9944'); -``` - -### 2. useBalance Hook (Oluşturulacak) -**Dosya:** `/home/mamostehp/pwap/shared/hooks/blockchain/useBalance.ts` (YOK) - -**Gerekli Kod:** -```typescript -import { useState, useEffect } from 'react'; -import { ApiPromise } from '@polkadot/api'; - -interface Balance { - free: string; - reserved: string; - frozen: string; -} - -export function useBalance(api: ApiPromise | null, address: string) { - const [balance, setBalance] = useState({ - free: '0', - reserved: '0', - frozen: '0' - }); - const [isLoading, setIsLoading] = useState(true); - const [error, setError] = useState(null); - - useEffect(() => { - if (!api || !address) return; - - setIsLoading(true); - - api.query.system.account(address) - .then((account: any) => { - setBalance({ - free: account.data.free.toString(), - reserved: account.data.reserved.toString(), - frozen: account.data.frozen.toString(), - }); - setIsLoading(false); - }) - .catch((err) => { - setError(err); - setIsLoading(false); - }); - }, [api, address]); - - return { balance, isLoading, error }; -} -``` - -### 3. useStaking Hook (Oluşturulacak) -**Dosya:** `/home/mamostehp/pwap/shared/hooks/blockchain/useStaking.ts` (YOK) - -**Gerekli Queries:** -- `api.query.staking.bonded(address)` - Bonded amount -- `api.query.staking.ledger(address)` - Staking ledger -- `api.query.staking.payee(address)` - Reward destination - -### 4. useProposals Hook (Oluşturulacak) -**Dosya:** `/home/mamostehp/pwap/shared/hooks/blockchain/useProposals.ts` (YOK) - -**Gerekli Queries:** -- `api.query.welati.proposals()` - All active proposals -- `api.query.welati.proposalCount()` - Total proposal count - -## FAZ 1 Tamamlama Planı - -### Adım 1: Shared Hooks Oluşturma ⏳ -1. `useBalance.ts` - Balance fetching -2. `useStaking.ts` - Staking info -3. `useProposals.ts` - Governance proposals -4. `formatBalance.ts` utility - Token formatting - -### Adım 2: DashboardScreen Entegrasyonu ⏳ -1. Import shared hooks -2. Replace hardcoded `0.00 HEZ` with real balance -3. Replace hardcoded `0.00` staked amount -4. Replace hardcoded `0.00` rewards -5. Replace hardcoded `0` proposals count - -### Adım 3: Error Handling & Loading States ⏳ -1. Add loading spinners for blockchain queries -2. Add error messages for failed queries -3. Add retry mechanism -4. Add offline state detection - -### Adım 4: Testing ⏳ -1. Test with local dev node (ws://localhost:9944) -2. Test with beta testnet -3. Test offline behavior -4. Test error scenarios - -## Blockchain Endpoints - -### Development -```typescript -const DEV_ENDPOINT = 'ws://localhost:9944'; -``` - -### Beta Testnet -```typescript -const BETA_ENDPOINT = 'ws://beta.pezkuwichain.io:9944'; -``` - -### Mainnet (Future) -```typescript -const MAINNET_ENDPOINT = 'wss://mainnet.pezkuwichain.io'; -``` - -## Dosya Yapısı - -``` -pwap/ -├── mobile/ -│ ├── src/ -│ │ ├── screens/ -│ │ │ ├── WelcomeScreen.tsx ✅ (Tamamlandı) -│ │ │ ├── VerificationScreen.tsx ✅ (Tamamlandı, syntax fix) -│ │ │ ├── DashboardScreen.tsx 🚧 (Blockchain entegrasyonu gerekli) -│ │ │ ├── WalletScreen.tsx ❌ (FAZ 2) -│ │ │ └── SettingsScreen.tsx ❌ (Var, ama update gerekli) -│ │ └── theme/ -│ │ └── colors.ts ✅ -│ └── docs/ -│ ├── QUICK_ACTIONS_IMPLEMENTATION.md ✅ (400+ satır) -│ └── FAZ_1_SUMMARY.md ✅ (Bu dosya) -└── shared/ - └── hooks/ - └── blockchain/ - ├── usePolkadotApi.ts ✅ (Tamamlandı) - ├── useBalance.ts ❌ (Oluşturulacak) - ├── useStaking.ts ❌ (Oluşturulacak) - └── useProposals.ts ❌ (Oluşturulacak) -``` - -## Sonraki Adımlar (Öncelik Sırasına Göre) - -### FAZ 1.3 (Şu An) 🚧 -1. `useBalance.ts` hook'unu oluştur -2. `useStaking.ts` hook'unu oluştur -3. `useProposals.ts` hook'unu oluştur -4. `formatBalance.ts` utility'sini oluştur -5. DashboardScreen'e entegre et -6. Test et - -### FAZ 1.4 (Sonraki) ⏳ -1. Quick Actions navigation'larını ekle -2. Her action için loading state ekle -3. Error handling ekle -4. Offline state detection ekle - -### FAZ 2 (Gelecek) 📅 -1. WalletScreen - Transfer, Receive, History -2. StakingScreen - Bond, Unbond, Nominate -3. GovernanceScreen - Proposals, Voting -4. DEXScreen - Swap, Liquidity -5. HistoryScreen - Transaction list -6. Detailed documentation (QUICK_ACTIONS_IMPLEMENTATION.md zaten var) - -## Beklenen Timeline - -- **FAZ 1.3 (Blockchain Bağlantısı):** 2-3 gün -- **FAZ 1.4 (Quick Actions Navigation):** 1 gün -- **FAZ 1 Toplam:** ~1 hafta -- **FAZ 2 (Detaylı Features):** 3-4 hafta (daha önce planlandı) - -## Bağımlılıklar - -### NPM Paketleri (Zaten Kurulu) -- `@polkadot/api` v16.5.2 ✅ -- `@polkadot/util` v13.5.7 ✅ -- `@polkadot/util-crypto` v13.5.7 ✅ -- `react-i18next` ✅ -- `expo-linear-gradient` ✅ - -### Platform Desteği -- ✅ React Native (mobile) -- ✅ Web (shared hooks platform-agnostic) - -## Notlar - -### Güvenlik -- Mnemonic/private key'ler SecureStore'da saklanacak -- Biometric authentication FAZ 2'de eklenecek -- Demo mode sadece `__DEV__` flag'inde aktif - -### i18n -- 6 dil desteği aktif (EN, TR, KMR, CKB, AR, FA) -- RTL diller için özel layout (AR, FA) -- Çeviriler `/home/mamostehp/pwap/mobile/src/locales/` klasöründe - -### Tasarım -- Kurdistan renk paleti: Kesk (green), Zer (yellow), Sor (red), Spi (white), Reş (black) -- Linear gradient backgrounds -- Shadow/elevation effects -- Responsive grid layout - ---- - -**Durum:** FAZ 1.2 tamamlandı, FAZ 1.3 devam ediyor -**Güncelleme:** 2025-11-17 -**Yazar:** Claude Code diff --git a/mobile/eas.json b/mobile/eas.json new file mode 100644 index 00000000..66d91018 --- /dev/null +++ b/mobile/eas.json @@ -0,0 +1,25 @@ +{ + "cli": { + "version": ">= 13.2.0" + }, + "build": { + "development": { + "developmentClient": true, + "distribution": "internal" + }, + "preview": { + "distribution": "internal", + "android": { + "buildType": "apk" + } + }, + "production": { + "android": { + "buildType": "apk" + } + } + }, + "submit": { + "production": {} + } +} diff --git a/mobile/execute_sql.cjs b/mobile/execute_sql.cjs new file mode 100644 index 00000000..323a943d --- /dev/null +++ b/mobile/execute_sql.cjs @@ -0,0 +1,152 @@ +/** + * Execute SQL Files on Supabase + * + * This script runs SQL files directly on Supabase database + */ + +const { createClient } = require('@supabase/supabase-js'); +const fs = require('fs'); +const path = require('path'); + +const supabaseUrl = 'https://vsyrpfiwhjvahofxwytr.supabase.co'; +const supabaseServiceKey = 'sb_secret_oXy8Diay2J_u8dKPZLxdcQ_hq69Mrb6'; + +const supabase = createClient(supabaseUrl, supabaseServiceKey, { + auth: { + autoRefreshToken: false, + persistSession: false + } +}); + +async function executeSQLFile(filename) { + console.log(`\n${'='.repeat(70)}`); + console.log(`📄 Executing: ${filename}`); + console.log('='.repeat(70)); + + try { + const sqlContent = fs.readFileSync(path.join(__dirname, filename), 'utf8'); + + // Split SQL by semicolons (simple parser) + const statements = sqlContent + .split(';') + .map(s => s.trim()) + .filter(s => s.length > 0 && !s.startsWith('--') && !s.match(/^\/\*/)); + + console.log(`\n📊 Found ${statements.length} SQL statements\n`); + + let successCount = 0; + let errorCount = 0; + + for (let i = 0; i < statements.length; i++) { + const statement = statements[i]; + + // Skip comments and empty statements + if (statement.startsWith('--') || statement.length < 5) { + continue; + } + + // Show first 80 chars of statement + const preview = statement.substring(0, 80).replace(/\s+/g, ' '); + process.stdout.write(` [${i + 1}/${statements.length}] ${preview}...`); + + try { + // Execute using RPC query function (if available) + // Note: This requires a custom RPC function in Supabase + // Alternative: Use REST API directly + + const response = await fetch(`${supabaseUrl}/rest/v1/rpc/exec_sql`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'apikey': supabaseServiceKey, + 'Authorization': `Bearer ${supabaseServiceKey}` + }, + body: JSON.stringify({ sql: statement }) + }); + + if (response.ok) { + console.log(' ✅'); + successCount++; + } else { + const error = await response.text(); + console.log(` ❌ ${error}`); + errorCount++; + } + } catch (error) { + console.log(` ❌ ${error.message}`); + errorCount++; + } + } + + console.log(`\n${'='.repeat(70)}`); + console.log(`📊 Results: ${successCount} succeeded, ${errorCount} failed`); + console.log('='.repeat(70)); + + return { success: successCount, errors: errorCount }; + + } catch (error) { + console.error(`❌ Error reading file: ${error.message}`); + return { success: 0, errors: 1 }; + } +} + +async function main() { + console.log('\n🚀 Starting SQL Execution...\n'); + + // Step 1: Fix schema compatibility + console.log('📝 Step 1: Fixing schema compatibility...'); + const result1 = await executeSQLFile('FIX_SCHEMA_COMPATIBILITY.sql'); + + // Step 2: Create missing tables + console.log('\n📝 Step 2: Creating missing tables...'); + const result2 = await executeSQLFile('SUPABASE_SCHEMA.sql'); + + // Summary + console.log('\n' + '='.repeat(70)); + console.log('🎉 EXECUTION SUMMARY'); + console.log('='.repeat(70)); + console.log(`\nStep 1 (Compatibility Fix):`); + console.log(` ✅ Success: ${result1.success}`); + console.log(` ❌ Errors: ${result1.errors}`); + console.log(`\nStep 2 (Create Tables):`); + console.log(` ✅ Success: ${result2.success}`); + console.log(` ❌ Errors: ${result2.errors}`); + console.log('\n' + '='.repeat(70)); + + if (result1.errors === 0 && result2.errors === 0) { + console.log('\n✅ ALL OPERATIONS COMPLETED SUCCESSFULLY!\n'); + console.log('📝 Next step: Run verification script'); + console.log(' node check_schema_compatibility.cjs\n'); + } else { + console.log('\n⚠️ Some operations failed. Check errors above.\n'); + } +} + +// Alternative: Use Management API +async function executeViaManagementAPI() { + console.log('\n📝 Attempting to execute via Management API...\n'); + + // Supabase doesn't have a public SQL execution API + // Best option is to use Supabase Dashboard SQL Editor + console.log('⚠️ Supabase JS SDK does not support direct SQL execution'); + console.log('ℹ️ SQL must be executed via Supabase Dashboard\n'); + console.log('📋 Instructions:'); + console.log(' 1. Go to: https://app.supabase.com'); + console.log(' 2. Select project: vsyrpfiwhjvahofxwytr'); + console.log(' 3. Open: SQL Editor (left menu)'); + console.log(' 4. Copy contents of: FIX_SCHEMA_COMPATIBILITY.sql'); + console.log(' 5. Paste and click: Run'); + console.log(' 6. Repeat for: SUPABASE_SCHEMA.sql\n'); + + return false; +} + +// Check if we can execute SQL programmatically +executeViaManagementAPI().then(canExecute => { + if (!canExecute) { + console.log('⚠️ Manual execution required via Supabase Dashboard\n'); + process.exit(1); + } else { + main().then(() => process.exit(0)); + } +}); diff --git a/mobile/index.ts b/mobile/index.ts index 1d6e981e..131c464f 100644 --- a/mobile/index.ts +++ b/mobile/index.ts @@ -1,6 +1,44 @@ -import { registerRootComponent } from 'expo'; +// CRITICAL: Import crypto polyfill FIRST before anything else +console.log('🚀 [INDEX] Starting app initialization...'); +console.log('📦 [INDEX] Loading react-native-get-random-values...'); +import 'react-native-get-random-values'; +console.log('✅ [INDEX] react-native-get-random-values loaded'); +// React Native polyfills for @pezkuwi packages +console.log('📦 [INDEX] Loading URL polyfill...'); +import 'react-native-url-polyfill/auto'; +console.log('✅ [INDEX] URL polyfill loaded'); + +console.log('📦 [INDEX] Setting up Buffer...'); +import { Buffer } from 'buffer'; + +// Global polyfills for Polkadot.js +// @ts-ignore +global.Buffer = Buffer; +console.log('✅ [INDEX] Buffer configured'); + +// TextEncoder/TextDecoder polyfill +console.log('📦 [INDEX] Setting up TextEncoder/TextDecoder...'); +if (typeof global.TextEncoder === 'undefined') { + const { TextEncoder, TextDecoder } = require('text-encoding'); + // @ts-ignore + global.TextEncoder = TextEncoder; + // @ts-ignore + global.TextDecoder = TextDecoder; + console.log('✅ [INDEX] TextEncoder/TextDecoder configured'); +} else { + console.log('ℹ️ [INDEX] TextEncoder/TextDecoder already available'); +} + +console.log('📦 [INDEX] Loading Expo...'); +import { registerRootComponent } from 'expo'; +console.log('✅ [INDEX] Expo loaded'); + +console.log('📦 [INDEX] Loading App component...'); import App from './App'; +console.log('✅ [INDEX] App component loaded'); + +console.log('🎯 [INDEX] All imports successful, registering root component...'); // registerRootComponent calls AppRegistry.registerComponent('main', () => App); // It also ensures that whether you load the app in Expo Go or in a native build, diff --git a/mobile/jest.config.cjs b/mobile/jest.config.cjs index 77f7ecbb..092c616e 100644 --- a/mobile/jest.config.cjs +++ b/mobile/jest.config.cjs @@ -3,11 +3,10 @@ module.exports = { setupFiles: ['/jest.setup.before.cjs'], setupFilesAfterEnv: ['/jest.setup.cjs'], transformIgnorePatterns: [ - 'node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg|@polkadot/.*|@babel/runtime)', + 'node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg|@polkadot/.*|@pezkuwi/.*|@babel/runtime)', '!../shared/.*', ], moduleNameMapper: { - '^@pezkuwi/(.*)$': '/../shared/$1', '^@/(.*)$': '/src/$1', 'react-native-gesture-handler': '/__mocks__/react-native-gesture-handler.js', 'react-native-reanimated': '/__mocks__/react-native-reanimated.js', diff --git a/mobile/jest.setup.cjs b/mobile/jest.setup.cjs index 0ef0da82..837f4a79 100644 --- a/mobile/jest.setup.cjs +++ b/mobile/jest.setup.cjs @@ -69,6 +69,74 @@ jest.mock('@polkadot/api', () => ({ WsProvider: jest.fn(), })); +// Mock @pezkuwi packages (aliases for @polkadot packages) +jest.mock('@pezkuwi/api', () => ({ + ApiPromise: { + create: jest.fn(() => + Promise.resolve({ + isReady: Promise.resolve(true), + query: { + treasury: { + treasury: jest.fn(() => Promise.resolve({ toString: () => '1000000000000000' })), + proposals: { + entries: jest.fn(() => Promise.resolve([])), + }, + }, + democracy: { + referendumInfoOf: { + entries: jest.fn(() => Promise.resolve([])), + }, + }, + dynamicCommissionCollective: { + proposals: jest.fn(() => Promise.resolve([])), + voting: jest.fn(() => Promise.resolve({ isSome: false })), + }, + }, + tx: {}, + rpc: {}, + disconnect: jest.fn(), + }) + ), + }, + WsProvider: jest.fn(), +})); + +jest.mock('@pezkuwi/keyring', () => ({ + Keyring: jest.fn().mockImplementation(() => ({ + addFromUri: jest.fn((mnemonic, meta, type) => ({ + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + meta: meta || {}, + type: type || 'sr25519', + publicKey: new Uint8Array(32), + sign: jest.fn(), + verify: jest.fn(), + })), + addFromMnemonic: jest.fn((mnemonic, meta, type) => ({ + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + meta: meta || {}, + type: type || 'sr25519', + publicKey: new Uint8Array(32), + sign: jest.fn(), + verify: jest.fn(), + })), + getPairs: jest.fn(() => []), + getPair: jest.fn((address) => ({ + address: address, + meta: {}, + type: 'sr25519', + publicKey: new Uint8Array(32), + sign: jest.fn(), + verify: jest.fn(), + })), + })), +})); + +jest.mock('@pezkuwi/util-crypto', () => ({ + cryptoWaitReady: jest.fn(() => Promise.resolve(true)), + mnemonicGenerate: jest.fn(() => 'test test test test test test test test test test test junk'), + mnemonicValidate: jest.fn(() => true), +})); + // Mock Supabase jest.mock('./src/lib/supabase', () => ({ supabase: { @@ -98,17 +166,12 @@ jest.mock('./src/lib/supabase', () => ({ })); // Mock shared blockchain utilities -jest.mock('../shared/blockchain/polkadot', () => ({ +jest.mock('../shared/blockchain', () => ({ PEZKUWI_NETWORK: { name: 'Pezkuwi', - endpoint: 'wss://beta-rpc.pezkuwi.art', + endpoint: 'wss://rpc.pezkuwichain.io:9944', chainId: 'pezkuwi', }, - BLOCKCHAIN_ENDPOINTS: { - mainnet: 'wss://mainnet.pezkuwichain.io', - testnet: 'wss://ws.pezkuwichain.io', - local: 'ws://127.0.0.1:9944', - }, DEFAULT_ENDPOINT: 'ws://127.0.0.1:9944', getExplorerUrl: jest.fn((txHash) => `https://explorer.pezkuwichain.app/tx/${txHash}`), })); @@ -205,6 +268,8 @@ jest.mock('i18next', () => ({ isInitialized: true, })); +// Note: Alert is mocked in individual test files where needed + // Silence console warnings in tests global.console = { ...console, diff --git a/mobile/metro.config.cjs b/mobile/metro.config.cjs new file mode 100644 index 00000000..64603a57 --- /dev/null +++ b/mobile/metro.config.cjs @@ -0,0 +1,48 @@ +// Learn more https://docs.expo.io/guides/customizing-metro +const { getDefaultConfig } = require('expo/metro-config'); +const path = require('path'); + +/** @type {import('expo/metro-config').MetroConfig} */ +const config = getDefaultConfig(__dirname); + +// ============================================ +// WORKSPACE CONFIGURATION +// ============================================ + +const projectRoot = __dirname; + +// Use default watchFolders (no custom configuration) + +// ============================================ +// CUSTOM MODULE RESOLUTION +// ============================================ +// DISABLED: Custom resolver causes empty-module.js resolution issues +// Using npm packages directly instead + +// ============================================ +// FILE EXTENSIONS +// ============================================ + +config.resolver.sourceExts = [ + 'expo.ts', + 'expo.tsx', + 'expo.js', + 'expo.jsx', + 'ts', + 'tsx', + 'js', + 'jsx', + 'json', + 'wasm', + 'svg', + 'cjs', + 'mjs', +]; + +// ============================================ +// NODE POLYFILLS +// ============================================ + +// Polyfills will be resolved from project's own node_modules + +module.exports = config; diff --git a/mobile/metro.config.js b/mobile/metro.config.js deleted file mode 100644 index 18401def..00000000 --- a/mobile/metro.config.js +++ /dev/null @@ -1,71 +0,0 @@ -// Learn more https://docs.expo.io/guides/customizing-metro -const { getDefaultConfig } = require('expo/metro-config'); -const path = require('path'); - -/** @type {import('expo/metro-config').MetroConfig} */ -const config = getDefaultConfig(__dirname); - -// Monorepo support: Watch and resolve modules from parent directory -const projectRoot = __dirname; -const workspaceRoot = path.resolve(projectRoot, '..'); - -// Watch all files in the monorepo -config.watchFolders = [workspaceRoot]; - -// Let Metro resolve modules from the workspace root -config.resolver.nodeModulesPaths = [ - path.resolve(projectRoot, 'node_modules'), - path.resolve(workspaceRoot, 'node_modules'), -]; - -// Enable symlinks for shared library -config.resolver.resolveRequest = (context, moduleName, platform) => { - // Handle @pezkuwi/* imports (shared library) - if (moduleName.startsWith('@pezkuwi/')) { - const sharedPath = moduleName.replace('@pezkuwi/', ''); - const sharedDir = path.resolve(workspaceRoot, 'shared', sharedPath); - - // Try .ts extension first, then .tsx, then .js - const extensions = ['.ts', '.tsx', '.js', '.json']; - for (const ext of extensions) { - const filePath = sharedDir + ext; - if (require('fs').existsSync(filePath)) { - return { - filePath, - type: 'sourceFile', - }; - } - } - - // Try index files - for (const ext of extensions) { - const indexPath = path.join(sharedDir, `index${ext}`); - if (require('fs').existsSync(indexPath)) { - return { - filePath: indexPath, - type: 'sourceFile', - }; - } - } - } - - // Fall back to the default resolver - return context.resolveRequest(context, moduleName, platform); -}; - -// Ensure all file extensions are resolved -config.resolver.sourceExts = [ - 'expo.ts', - 'expo.tsx', - 'expo.js', - 'expo.jsx', - 'ts', - 'tsx', - 'js', - 'jsx', - 'json', - 'wasm', - 'svg', -]; - -module.exports = config; diff --git a/mobile/node-pnp-wrapper.sh b/mobile/node-pnp-wrapper.sh new file mode 100755 index 00000000..928fc052 --- /dev/null +++ b/mobile/node-pnp-wrapper.sh @@ -0,0 +1,4 @@ +#!/bin/bash +# Wrapper to run node with Yarn PnP support +cd /home/mamostehp/pwap/mobile +exec yarn node "$@" diff --git a/mobile/package-lock.json b/mobile/package-lock.json deleted file mode 100644 index a1aba70c..00000000 --- a/mobile/package-lock.json +++ /dev/null @@ -1,18585 +0,0 @@ -{ - "name": "mobile", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "mobile", - "version": "1.0.0", - "dependencies": { - "@polkadot/api": "^16.5.2", - "@polkadot/keyring": "^13.5.8", - "@polkadot/util": "^13.5.8", - "@polkadot/util-crypto": "^13.5.8", - "@react-native-async-storage/async-storage": "^2.2.0", - "@react-navigation/bottom-tabs": "^7.8.5", - "@react-navigation/native": "^7.1.20", - "@react-navigation/stack": "^7.6.4", - "expo": "~54.0.23", - "expo-linear-gradient": "^15.0.7", - "expo-local-authentication": "^17.0.7", - "expo-secure-store": "^15.0.7", - "expo-status-bar": "~3.0.8", - "i18next": "^25.6.2", - "react": "19.1.0", - "react-i18next": "^16.3.3", - "react-native": "0.81.5", - "react-native-safe-area-context": "^5.6.2", - "react-native-screens": "^4.18.0", - "react-native-url-polyfill": "^3.0.0", - "react-native-vector-icons": "^10.3.0" - }, - "devDependencies": { - "@babel/runtime": "^7.28.4", - "@testing-library/jest-native": "^5.4.3", - "@testing-library/react-native": "^13.3.3", - "@types/jest": "^29.5.12", - "@types/react": "~19.1.0", - "@typescript-eslint/eslint-plugin": "^8.47.0", - "@typescript-eslint/parser": "^8.47.0", - "eslint": "^9.39.1", - "eslint-plugin-react": "^7.37.5", - "eslint-plugin-react-hooks": "^7.0.1", - "eslint-plugin-react-native": "^5.0.0", - "globals": "^16.5.0", - "jest": "^29.7.0", - "jest-expo": "^54.0.13", - "typescript": "~5.9.2", - "typescript-eslint": "^8.47.0" - } - }, - "node_modules/@0no-co/graphql.web": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@0no-co/graphql.web/-/graphql.web-1.2.0.tgz", - "integrity": "sha512-/1iHy9TTr63gE1YcR5idjx8UREz1s0kFhydf3bBLCXyqjhkIc6igAzTOx3zPifCwFR87tsh/4Pa9cNts6d2otw==", - "license": "MIT", - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0" - }, - "peerDependenciesMeta": { - "graphql": { - "optional": true - } - } - }, - "node_modules/@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", - "license": "MIT", - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.5.tgz", - "integrity": "sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz", - "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.5", - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-module-transforms": "^7.28.3", - "@babel/helpers": "^7.28.4", - "@babel/parser": "^7.28.5", - "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.5", - "@babel/types": "^7.28.5", - "@jridgewell/remapping": "^2.3.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.5.tgz", - "integrity": "sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.28.5", - "@babel/types": "^7.28.5", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", - "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.27.3" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", - "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.27.2", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.5.tgz", - "integrity": "sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.3", - "@babel/helper-member-expression-to-functions": "^7.28.5", - "@babel/helper-optimise-call-expression": "^7.27.1", - "@babel/helper-replace-supers": "^7.27.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/traverse": "^7.28.5", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz", - "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.3", - "regexpu-core": "^6.3.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz", - "integrity": "sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==", - "license": "MIT", - "dependencies": { - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-plugin-utils": "^7.27.1", - "debug": "^4.4.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.22.10" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz", - "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.28.5", - "@babel/types": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", - "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", - "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-validator-identifier": "^7.27.1", - "@babel/traverse": "^7.28.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", - "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", - "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", - "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-wrap-function": "^7.27.1", - "@babel/traverse": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", - "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", - "license": "MIT", - "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.27.1", - "@babel/helper-optimise-call-expression": "^7.27.1", - "@babel/traverse": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", - "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.27.1", - "@babel/types": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.3.tgz", - "integrity": "sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.27.2", - "@babel/traverse": "^7.28.3", - "@babel/types": "^7.28.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", - "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.9.tgz", - "integrity": "sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.9", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", - "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.5" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-proposal-decorators": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.28.0.tgz", - "integrity": "sha512-zOiZqvANjWDUaUS9xMxbMcK/Zccztbe/6ikvUXaG9nsPH3w6qh5UaPGAnirI/WhIbZ8m3OHU0ReyPrknG+ZKeg==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-syntax-decorators": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-default-from": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.27.1.tgz", - "integrity": "sha512-hjlsMBl1aJc5lp8MoCDEZCiYzlgdRAShOjAfRw6X+GlpLpUPU7c3XNLsKFZbQk/1cRzBlJ7CXg3xJAJMrFa1Uw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-decorators": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.27.1.tgz", - "integrity": "sha512-YMq8Z87Lhl8EGkmb0MwYkt36QnxC+fzCgrl66ereamPlYToRpIk5nUjKUY3QKLWq8mwUB1BgbeXcTJhZOCDg5A==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-default-from": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.27.1.tgz", - "integrity": "sha512-eBC/3KSekshx19+N40MzjWqJd7KTEdOoLesAfa4IDFI8eRz5a47i5Oszus6zG/cwIXN63YhgLOMSSNJx49sENg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-flow": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.27.1.tgz", - "integrity": "sha512-p9OkPbZ5G7UT1MofwYFigGebnrzGJacoBSQM0/6bi/PUMVE+qlWDD/OalvQKbwgQzU6dl0xAv6r4X7Jme0RYxA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-attributes": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", - "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", - "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", - "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", - "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz", - "integrity": "sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-remap-async-to-generator": "^7.27.1", - "@babel/traverse": "^7.28.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", - "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-remap-async-to-generator": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.5.tgz", - "integrity": "sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", - "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.28.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.3.tgz", - "integrity": "sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.28.3", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.4.tgz", - "integrity": "sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.3", - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-globals": "^7.28.0", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-replace-supers": "^7.27.1", - "@babel/traverse": "^7.28.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", - "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/template": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz", - "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/traverse": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", - "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-flow-strip-types": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.27.1.tgz", - "integrity": "sha512-G5eDKsu50udECw7DL2AcsysXiQyB7Nfg521t2OAJ4tbfTJ27doHLeF/vlI1NZGlLdbb/v+ibvtL1YBQqYOwJGg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-syntax-flow": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", - "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", - "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-compilation-targets": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/traverse": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", - "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.5.tgz", - "integrity": "sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", - "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", - "license": "MIT", - "dependencies": { - "@babel/helper-module-transforms": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", - "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", - "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", - "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.4.tgz", - "integrity": "sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==", - "license": "MIT", - "dependencies": { - "@babel/helper-compilation-targets": "^7.27.2", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-transform-destructuring": "^7.28.0", - "@babel/plugin-transform-parameters": "^7.27.7", - "@babel/traverse": "^7.28.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", - "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.5.tgz", - "integrity": "sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.27.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", - "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", - "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", - "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-create-class-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-display-name": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.28.0.tgz", - "integrity": "sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz", - "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/plugin-syntax-jsx": "^7.27.1", - "@babel/types": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-development": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz", - "integrity": "sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==", - "license": "MIT", - "dependencies": { - "@babel/plugin-transform-react-jsx": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", - "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", - "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-pure-annotations": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz", - "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz", - "integrity": "sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.28.5.tgz", - "integrity": "sha512-20NUVgOrinudkIBzQ2bNxP08YpKprUkRTiRSd2/Z5GOdPImJGkoN4Z7IQe1T5AdyKI1i5L6RBmluqdSzvaq9/w==", - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1", - "babel-plugin-polyfill-corejs2": "^0.4.14", - "babel-plugin-polyfill-corejs3": "^0.13.0", - "babel-plugin-polyfill-regenerator": "^0.6.5", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", - "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", - "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", - "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.5.tgz", - "integrity": "sha512-x2Qa+v/CuEoX7Dr31iAfr0IhInrVOWZU/2vJMJ00FOR/2nM0BcBEclpaf9sWCDc+v5e9dMrhSH8/atq/kX7+bA==", - "license": "MIT", - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.27.3", - "@babel/helper-create-class-features-plugin": "^7.28.5", - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/plugin-syntax-typescript": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", - "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", - "license": "MIT", - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.27.1", - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-react": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz", - "integrity": "sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-validator-option": "^7.27.1", - "@babel/plugin-transform-react-display-name": "^7.28.0", - "@babel/plugin-transform-react-jsx": "^7.27.1", - "@babel/plugin-transform-react-jsx-development": "^7.27.1", - "@babel/plugin-transform-react-pure-annotations": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-typescript": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.28.5.tgz", - "integrity": "sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1", - "@babel/helper-validator-option": "^7.27.1", - "@babel/plugin-syntax-jsx": "^7.27.1", - "@babel/plugin-transform-modules-commonjs": "^7.27.1", - "@babel/plugin-transform-typescript": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.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==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", - "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/parser": "^7.27.2", - "@babel/types": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", - "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.5", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.5", - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.5", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse--for-generate-function-map": { - "name": "@babel/traverse", - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", - "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.27.1", - "@babel/generator": "^7.28.5", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.28.5", - "@babel/template": "^7.27.2", - "@babel/types": "^7.28.5", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse--for-generate-function-map/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", - "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@egjs/hammerjs": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", - "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", - "license": "MIT", - "peer": true, - "dependencies": { - "@types/hammerjs": "^2.0.36" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "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, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", - "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", - "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/object-schema": "^2.1.7", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-array/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", - "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", - "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/@eslint/eslintrc/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz", - "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", - "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", - "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0", - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@expo/code-signing-certificates": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@expo/code-signing-certificates/-/code-signing-certificates-0.0.5.tgz", - "integrity": "sha512-BNhXkY1bblxKZpltzAx98G2Egj9g1Q+JRcvR7E99DOj862FTCX+ZPsAUtPTr7aHxwtrL7+fL3r0JSmM9kBm+Bw==", - "license": "MIT", - "dependencies": { - "node-forge": "^1.2.1", - "nullthrows": "^1.1.1" - } - }, - "node_modules/@expo/config": { - "version": "12.0.10", - "resolved": "https://registry.npmjs.org/@expo/config/-/config-12.0.10.tgz", - "integrity": "sha512-lJMof5Nqakq1DxGYlghYB/ogSBjmv4Fxn1ovyDmcjlRsQdFCXgu06gEUogkhPtc9wBt9WlTTfqENln5HHyLW6w==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "~7.10.4", - "@expo/config-plugins": "~54.0.2", - "@expo/config-types": "^54.0.8", - "@expo/json-file": "^10.0.7", - "deepmerge": "^4.3.1", - "getenv": "^2.0.0", - "glob": "^10.4.2", - "require-from-string": "^2.0.2", - "resolve-from": "^5.0.0", - "resolve-workspace-root": "^2.0.0", - "semver": "^7.6.0", - "slugify": "^1.3.4", - "sucrase": "3.35.0" - } - }, - "node_modules/@expo/config-plugins": { - "version": "54.0.2", - "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-54.0.2.tgz", - "integrity": "sha512-jD4qxFcURQUVsUFGMcbo63a/AnviK8WUGard+yrdQE3ZrB/aurn68SlApjirQQLEizhjI5Ar2ufqflOBlNpyPg==", - "license": "MIT", - "dependencies": { - "@expo/config-types": "^54.0.8", - "@expo/json-file": "~10.0.7", - "@expo/plist": "^0.4.7", - "@expo/sdk-runtime-versions": "^1.0.0", - "chalk": "^4.1.2", - "debug": "^4.3.5", - "getenv": "^2.0.0", - "glob": "^10.4.2", - "resolve-from": "^5.0.0", - "semver": "^7.5.4", - "slash": "^3.0.0", - "slugify": "^1.6.6", - "xcode": "^3.0.1", - "xml2js": "0.6.0" - } - }, - "node_modules/@expo/config-plugins/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/config-plugins/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/config-plugins/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/config-plugins/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==", - "license": "MIT" - }, - "node_modules/@expo/config-plugins/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/config-plugins/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/config-types": { - "version": "54.0.8", - "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-54.0.8.tgz", - "integrity": "sha512-lyIn/x/Yz0SgHL7IGWtgTLg6TJWC9vL7489++0hzCHZ4iGjVcfZmPTUfiragZ3HycFFj899qN0jlhl49IHa94A==", - "license": "MIT" - }, - "node_modules/@expo/devcert": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@expo/devcert/-/devcert-1.2.0.tgz", - "integrity": "sha512-Uilcv3xGELD5t/b0eM4cxBFEKQRIivB3v7i+VhWLV/gL98aw810unLKKJbGAxAIhY6Ipyz8ChWibFsKFXYwstA==", - "license": "MIT", - "dependencies": { - "@expo/sudo-prompt": "^9.3.1", - "debug": "^3.1.0", - "glob": "^10.4.2" - } - }, - "node_modules/@expo/devcert/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@expo/devtools": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@expo/devtools/-/devtools-0.1.7.tgz", - "integrity": "sha512-dfIa9qMyXN+0RfU6SN4rKeXZyzKWsnz6xBSDccjL4IRiE+fQ0t84zg0yxgN4t/WK2JU5v6v4fby7W7Crv9gJvA==", - "license": "MIT", - "dependencies": { - "chalk": "^4.1.2" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/@expo/devtools/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/devtools/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/devtools/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/devtools/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==", - "license": "MIT" - }, - "node_modules/@expo/devtools/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/devtools/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/env": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@expo/env/-/env-2.0.7.tgz", - "integrity": "sha512-BNETbLEohk3HQ2LxwwezpG8pq+h7Fs7/vAMP3eAtFT1BCpprLYoBBFZH7gW4aqGfqOcVP4Lc91j014verrYNGg==", - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "debug": "^4.3.4", - "dotenv": "~16.4.5", - "dotenv-expand": "~11.0.6", - "getenv": "^2.0.0" - } - }, - "node_modules/@expo/env/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/env/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/env/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/env/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==", - "license": "MIT" - }, - "node_modules/@expo/env/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/env/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/fingerprint": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/@expo/fingerprint/-/fingerprint-0.15.3.tgz", - "integrity": "sha512-8YPJpEYlmV171fi+t+cSLMX1nC5ngY9j2FiN70dHldLpd6Ct6ouGhk96svJ4BQZwsqwII2pokwzrDAwqo4Z0FQ==", - "license": "MIT", - "dependencies": { - "@expo/spawn-async": "^1.7.2", - "arg": "^5.0.2", - "chalk": "^4.1.2", - "debug": "^4.3.4", - "getenv": "^2.0.0", - "glob": "^10.4.2", - "ignore": "^5.3.1", - "minimatch": "^9.0.0", - "p-limit": "^3.1.0", - "resolve-from": "^5.0.0", - "semver": "^7.6.0" - }, - "bin": { - "fingerprint": "bin/cli.js" - } - }, - "node_modules/@expo/fingerprint/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/fingerprint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/fingerprint/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/fingerprint/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==", - "license": "MIT" - }, - "node_modules/@expo/fingerprint/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/fingerprint/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/image-utils": { - "version": "0.8.7", - "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.8.7.tgz", - "integrity": "sha512-SXOww4Wq3RVXLyOaXiCCuQFguCDh8mmaHBv54h/R29wGl4jRY8GEyQEx8SypV/iHt1FbzsU/X3Qbcd9afm2W2w==", - "license": "MIT", - "dependencies": { - "@expo/spawn-async": "^1.7.2", - "chalk": "^4.0.0", - "getenv": "^2.0.0", - "jimp-compact": "0.16.1", - "parse-png": "^2.1.0", - "resolve-from": "^5.0.0", - "resolve-global": "^1.0.0", - "semver": "^7.6.0", - "temp-dir": "~2.0.0", - "unique-string": "~2.0.0" - } - }, - "node_modules/@expo/image-utils/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/image-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/image-utils/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/image-utils/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==", - "license": "MIT" - }, - "node_modules/@expo/image-utils/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/image-utils/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/json-file": { - "version": "10.0.7", - "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-10.0.7.tgz", - "integrity": "sha512-z2OTC0XNO6riZu98EjdNHC05l51ySeTto6GP7oSQrCvQgG9ARBwD1YvMQaVZ9wU7p/4LzSf1O7tckL3B45fPpw==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "~7.10.4", - "json5": "^2.2.3" - } - }, - "node_modules/@expo/mcp-tunnel": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@expo/mcp-tunnel/-/mcp-tunnel-0.1.0.tgz", - "integrity": "sha512-rJ6hl0GnIZj9+ssaJvFsC7fwyrmndcGz+RGFzu+0gnlm78X01957yjtHgjcmnQAgL5hWEOR6pkT0ijY5nU5AWw==", - "license": "MIT", - "dependencies": { - "ws": "^8.18.3", - "zod": "^3.25.76", - "zod-to-json-schema": "^3.24.6" - }, - "peerDependencies": { - "@modelcontextprotocol/sdk": "^1.13.2" - }, - "peerDependenciesMeta": { - "@modelcontextprotocol/sdk": { - "optional": true - } - } - }, - "node_modules/@expo/mcp-tunnel/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/@expo/metro": { - "version": "54.1.0", - "resolved": "https://registry.npmjs.org/@expo/metro/-/metro-54.1.0.tgz", - "integrity": "sha512-MgdeRNT/LH0v1wcO0TZp9Qn8zEF0X2ACI0wliPtv5kXVbXWI+yK9GyrstwLAiTXlULKVIg3HVSCCvmLu0M3tnw==", - "license": "MIT", - "dependencies": { - "metro": "0.83.2", - "metro-babel-transformer": "0.83.2", - "metro-cache": "0.83.2", - "metro-cache-key": "0.83.2", - "metro-config": "0.83.2", - "metro-core": "0.83.2", - "metro-file-map": "0.83.2", - "metro-resolver": "0.83.2", - "metro-runtime": "0.83.2", - "metro-source-map": "0.83.2", - "metro-transform-plugins": "0.83.2", - "metro-transform-worker": "0.83.2" - } - }, - "node_modules/@expo/osascript": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/@expo/osascript/-/osascript-2.3.7.tgz", - "integrity": "sha512-IClSOXxR0YUFxIriUJVqyYki7lLMIHrrzOaP01yxAL1G8pj2DWV5eW1y5jSzIcIfSCNhtGsshGd1tU/AYup5iQ==", - "license": "MIT", - "dependencies": { - "@expo/spawn-async": "^1.7.2", - "exec-async": "^2.2.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@expo/package-manager": { - "version": "1.9.8", - "resolved": "https://registry.npmjs.org/@expo/package-manager/-/package-manager-1.9.8.tgz", - "integrity": "sha512-4/I6OWquKXYnzo38pkISHCOCOXxfeEmu4uDoERq1Ei/9Ur/s9y3kLbAamEkitUkDC7gHk1INxRWEfFNzGbmOrA==", - "license": "MIT", - "dependencies": { - "@expo/json-file": "^10.0.7", - "@expo/spawn-async": "^1.7.2", - "chalk": "^4.0.0", - "npm-package-arg": "^11.0.0", - "ora": "^3.4.0", - "resolve-workspace-root": "^2.0.0" - } - }, - "node_modules/@expo/package-manager/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/package-manager/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/package-manager/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/package-manager/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==", - "license": "MIT" - }, - "node_modules/@expo/package-manager/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/package-manager/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/plist": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/@expo/plist/-/plist-0.4.7.tgz", - "integrity": "sha512-dGxqHPvCZKeRKDU1sJZMmuyVtcASuSYh1LPFVaM1DuffqPL36n6FMEL0iUqq2Tx3xhWk8wCnWl34IKplUjJDdA==", - "license": "MIT", - "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "base64-js": "^1.2.3", - "xmlbuilder": "^15.1.1" - } - }, - "node_modules/@expo/schema-utils": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@expo/schema-utils/-/schema-utils-0.1.7.tgz", - "integrity": "sha512-jWHoSuwRb5ZczjahrychMJ3GWZu54jK9ulNdh1d4OzAEq672K9E5yOlnlBsfIHWHGzUAT+0CL7Yt1INiXTz68g==", - "license": "MIT" - }, - "node_modules/@expo/sdk-runtime-versions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@expo/sdk-runtime-versions/-/sdk-runtime-versions-1.0.0.tgz", - "integrity": "sha512-Doz2bfiPndXYFPMRwPyGa1k5QaKDVpY806UJj570epIiMzWaYyCtobasyfC++qfIXVb5Ocy7r3tP9d62hAQ7IQ==", - "license": "MIT" - }, - "node_modules/@expo/spawn-async": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@expo/spawn-async/-/spawn-async-1.7.2.tgz", - "integrity": "sha512-QdWi16+CHB9JYP7gma19OVVg0BFkvU8zNj9GjWorYI8Iv8FUxjOCcYRuAmX4s/h91e4e7BPsskc8cSrZYho9Ew==", - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@expo/sudo-prompt": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/@expo/sudo-prompt/-/sudo-prompt-9.3.2.tgz", - "integrity": "sha512-HHQigo3rQWKMDzYDLkubN5WQOYXJJE2eNqIQC2axC2iO3mHdwnIR7FgZVvHWtBwAdzBgAP0ECp8KqS8TiMKvgw==", - "license": "MIT" - }, - "node_modules/@expo/ws-tunnel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@expo/ws-tunnel/-/ws-tunnel-1.0.6.tgz", - "integrity": "sha512-nDRbLmSrJar7abvUjp3smDwH8HcbZcoOEa5jVPUv9/9CajgmWw20JNRwTuBRzWIWIkEJDkz20GoNA+tSwUqk0Q==", - "license": "MIT" - }, - "node_modules/@expo/xcpretty": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@expo/xcpretty/-/xcpretty-4.3.2.tgz", - "integrity": "sha512-ReZxZ8pdnoI3tP/dNnJdnmAk7uLT4FjsKDGW7YeDdvdOMz2XCQSmSCM9IWlrXuWtMF9zeSB6WJtEhCQ41gQOfw==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/code-frame": "7.10.4", - "chalk": "^4.1.0", - "find-up": "^5.0.0", - "js-yaml": "^4.1.0" - }, - "bin": { - "excpretty": "build/cli.js" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "Python-2.0" - }, - "node_modules/@expo/xcpretty/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT" - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/xcpretty/node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@expo/xcpretty/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", - "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.4.0" - }, - "engines": { - "node": ">=18.18.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, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/fs-minipass": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", - "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", - "license": "ISC", - "dependencies": { - "minipass": "^7.0.4" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@isaacs/ttlcache": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz", - "integrity": "sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "license": "ISC", - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", - "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/console/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/console/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/console/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jest/console/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", - "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/reporters": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-resolve-dependencies": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "jest-watcher": "^29.7.0", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/core/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jest/core/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/create-cache-key-function": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz", - "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/diff-sequences": { - "version": "30.0.1", - "resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz", - "integrity": "sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "license": "MIT", - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", - "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/get-type": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz", - "integrity": "sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", - "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", - "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/reporters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/reporters/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@jest/reporters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/reporters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jest/reporters/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@jest/reporters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", - "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.23.9", - "@babel/parser": "^7.23.9", - "@istanbuljs/schema": "^0.1.3", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@jest/reporters/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/reporters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "license": "MIT", - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", - "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", - "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/transform/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/transform/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==", - "license": "MIT" - }, - "node_modules/@jest/transform/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "license": "MIT", - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@jest/types/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==", - "license": "MIT" - }, - "node_modules/@jest/types/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@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==", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", - "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "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==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@noble/curves": { - "version": "1.9.7", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz", - "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==", - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.8.0" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/hashes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@polkadot-api/json-rpc-provider": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@polkadot-api/json-rpc-provider/-/json-rpc-provider-0.0.1.tgz", - "integrity": "sha512-/SMC/l7foRjpykLTUTacIH05H3mr9ip8b5xxfwXlVezXrNVLp3Cv0GX6uItkKd+ZjzVPf3PFrDF2B2/HLSNESA==", - "license": "MIT", - "optional": true - }, - "node_modules/@polkadot-api/json-rpc-provider-proxy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@polkadot-api/json-rpc-provider-proxy/-/json-rpc-provider-proxy-0.1.0.tgz", - "integrity": "sha512-8GSFE5+EF73MCuLQm8tjrbCqlgclcHBSRaswvXziJ0ZW7iw3UEMsKkkKvELayWyBuOPa2T5i1nj6gFOeIsqvrg==", - "license": "MIT", - "optional": true - }, - "node_modules/@polkadot-api/metadata-builders": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@polkadot-api/metadata-builders/-/metadata-builders-0.3.2.tgz", - "integrity": "sha512-TKpfoT6vTb+513KDzMBTfCb/ORdgRnsS3TDFpOhAhZ08ikvK+hjHMt5plPiAX/OWkm1Wc9I3+K6W0hX5Ab7MVg==", - "license": "MIT", - "optional": true, - "dependencies": { - "@polkadot-api/substrate-bindings": "0.6.0", - "@polkadot-api/utils": "0.1.0" - } - }, - "node_modules/@polkadot-api/observable-client": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@polkadot-api/observable-client/-/observable-client-0.3.2.tgz", - "integrity": "sha512-HGgqWgEutVyOBXoGOPp4+IAq6CNdK/3MfQJmhCJb8YaJiaK4W6aRGrdQuQSTPHfERHCARt9BrOmEvTXAT257Ug==", - "license": "MIT", - "optional": true, - "dependencies": { - "@polkadot-api/metadata-builders": "0.3.2", - "@polkadot-api/substrate-bindings": "0.6.0", - "@polkadot-api/utils": "0.1.0" - }, - "peerDependencies": { - "@polkadot-api/substrate-client": "0.1.4", - "rxjs": ">=7.8.0" - } - }, - "node_modules/@polkadot-api/substrate-bindings": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@polkadot-api/substrate-bindings/-/substrate-bindings-0.6.0.tgz", - "integrity": "sha512-lGuhE74NA1/PqdN7fKFdE5C1gNYX357j1tWzdlPXI0kQ7h3kN0zfxNOpPUN7dIrPcOFZ6C0tRRVrBylXkI6xPw==", - "license": "MIT", - "optional": true, - "dependencies": { - "@noble/hashes": "^1.3.1", - "@polkadot-api/utils": "0.1.0", - "@scure/base": "^1.1.1", - "scale-ts": "^1.6.0" - } - }, - "node_modules/@polkadot-api/substrate-client": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@polkadot-api/substrate-client/-/substrate-client-0.1.4.tgz", - "integrity": "sha512-MljrPobN0ZWTpn++da9vOvt+Ex+NlqTlr/XT7zi9sqPtDJiQcYl+d29hFAgpaeTqbeQKZwz3WDE9xcEfLE8c5A==", - "license": "MIT", - "optional": true, - "dependencies": { - "@polkadot-api/json-rpc-provider": "0.0.1", - "@polkadot-api/utils": "0.1.0" - } - }, - "node_modules/@polkadot-api/utils": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@polkadot-api/utils/-/utils-0.1.0.tgz", - "integrity": "sha512-MXzWZeuGxKizPx2Xf/47wx9sr/uxKw39bVJUptTJdsaQn/TGq+z310mHzf1RCGvC1diHM8f593KrnDgc9oNbJA==", - "license": "MIT", - "optional": true - }, - "node_modules/@polkadot/api": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-16.5.2.tgz", - "integrity": "sha512-EOkxs7KTgcytIhIxlIhIMV8EQQ/5F3bFs4hIRIqVFPJhNQn3tbq130HiJbQmvOnlxa3PXCEu7XVoCL0zkV08YQ==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/api-augment": "16.5.2", - "@polkadot/api-base": "16.5.2", - "@polkadot/api-derive": "16.5.2", - "@polkadot/keyring": "^13.5.8", - "@polkadot/rpc-augment": "16.5.2", - "@polkadot/rpc-core": "16.5.2", - "@polkadot/rpc-provider": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/types-augment": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/types-create": "16.5.2", - "@polkadot/types-known": "16.5.2", - "@polkadot/util": "^13.5.8", - "@polkadot/util-crypto": "^13.5.8", - "eventemitter3": "^5.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/api-augment": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-16.5.2.tgz", - "integrity": "sha512-gDExOFPNHERqhnc7/4Fikvx63lOR7bsMUs5lXfNi6H5X773zIecnH+QbgILK6OfB8w+HCiUoUriKyYvFsI0zrA==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/api-base": "16.5.2", - "@polkadot/rpc-augment": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/types-augment": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/api-base": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-16.5.2.tgz", - "integrity": "sha512-YbXY4/ocZVXjx3a3H3HzGa7qrZ2itttkZz4q9Rrba0QFPyeN06KnaDLqDSo3mvJ4EVbhpuYgiNp10/tBb1+Llw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/rpc-core": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/util": "^13.5.8", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/api-derive": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-16.5.2.tgz", - "integrity": "sha512-QBL7Yu4qa+nWWBEgpzmxbNoVC2uXFv7WQGPgH0pT/37hfcMXtCwQ9p37e1dGDxkB6oq0Jt4YJCNwVUxTZfi2vg==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/api": "16.5.2", - "@polkadot/api-augment": "16.5.2", - "@polkadot/api-base": "16.5.2", - "@polkadot/rpc-core": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/util": "^13.5.8", - "@polkadot/util-crypto": "^13.5.8", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/keyring": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-13.5.8.tgz", - "integrity": "sha512-BiTvXuLVxDpUw0c2E0Jr9H/QQ1p8YM7XV4XUucodtV/hrDHHpfp5jNg6zeeRTpU+qSkOYQmgL2dzw0hyWORcUQ==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/util": "13.5.8", - "@polkadot/util-crypto": "13.5.8", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "13.5.8", - "@polkadot/util-crypto": "13.5.8" - } - }, - "node_modules/@polkadot/networks": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/networks/-/networks-13.5.8.tgz", - "integrity": "sha512-e8wPLmTC/YtowkbkTG1BbeDy7PBKcclePSTZe72Xctx8kVssmAX6lKUQNk7tgu1BttGOhn6x9M8RXBBD4zB9Vw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/util": "13.5.8", - "@substrate/ss58-registry": "^1.51.0", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/rpc-augment": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-16.5.2.tgz", - "integrity": "sha512-wFMkvWNy3Cjjat+dVDnKeXP8brZK/WxEuDHYuEoyDziJstuBQdMoXhO97W3gvsXDp7OVI61xqLmsnEYo+HXwTw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/rpc-core": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/rpc-core": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-16.5.2.tgz", - "integrity": "sha512-Q+vcaqvLyVtRyKn7OuoEMJEB5EA1cq7axVwLpljbTzYwV1qENlubkEFR5TViVyg/zPH8G7eJ2hHzMgXf/14e0w==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/rpc-augment": "16.5.2", - "@polkadot/rpc-provider": "16.5.2", - "@polkadot/types": "16.5.2", - "@polkadot/util": "^13.5.8", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/rpc-provider": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-16.5.2.tgz", - "integrity": "sha512-NEgGQUwOjlMb+83BAOCuWTNrVJ7zTCX2y828bh18XWOpF8sCltjrqYu6ZYaUucFa43emJMBlrm5M+jhJI37ofQ==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/keyring": "^13.5.8", - "@polkadot/types": "16.5.2", - "@polkadot/types-support": "16.5.2", - "@polkadot/util": "^13.5.8", - "@polkadot/util-crypto": "^13.5.8", - "@polkadot/x-fetch": "^13.5.8", - "@polkadot/x-global": "^13.5.8", - "@polkadot/x-ws": "^13.5.8", - "eventemitter3": "^5.0.1", - "mock-socket": "^9.3.1", - "nock": "^13.5.5", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@substrate/connect": "0.8.11" - } - }, - "node_modules/@polkadot/types": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.2.tgz", - "integrity": "sha512-Lsie9bCE/CxmxG76bpYnRU4/UcRTi5q9zYPtAjt9GbgPpUSr17mMqsWAitq+qFYF29Bxo9EvAbFkj9QxoFWNsA==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/keyring": "^13.5.8", - "@polkadot/types-augment": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/types-create": "16.5.2", - "@polkadot/util": "^13.5.8", - "@polkadot/util-crypto": "^13.5.8", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/types-augment": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.2.tgz", - "integrity": "sha512-Psl96Fiolg3lVpRO/gbnPqBwXw6RNNbsRotvjG39O6r6OFiwkB61hfhIfaRSa+rSETQFDBpfa5O60hFA8w6Jvw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/types": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/types-codec": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.2.tgz", - "integrity": "sha512-buhc+JckA1Xcaq8GssSLqsb6hTdEV87zT8X2ZWdn4MGPDfpZKAQAqWON51dYD/thfqclW502G7UMu1SynwXPjg==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/util": "^13.5.8", - "@polkadot/x-bigint": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/types-create": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.2.tgz", - "integrity": "sha512-4Y+ZC/qXP6wH2GizJqr6WGRyiVLbr1EwbKXLc6jkGe5UsEHczx/B4ZQq3z1SOkIOgOsZ2EyH7R6HmH15lJXI+Q==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/types-codec": "16.5.2", - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/types-known": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-16.5.2.tgz", - "integrity": "sha512-5gaZngP/PiR751ZjulkOuz4dbql+hOFpotGX4hxhKfw4fVr0P0tdPmgKkC7koev93j3y16NdzIVhA3HaoEmEIg==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/networks": "^13.5.8", - "@polkadot/types": "16.5.2", - "@polkadot/types-codec": "16.5.2", - "@polkadot/types-create": "16.5.2", - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/types-support": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-16.5.2.tgz", - "integrity": "sha512-l9cTx9aDY9Qk2QuYgzn/npuNzVYag3mfqQG4vUt7/6qtDHVVCfyreGUBz5RHueYjem7R4m9byh6aFh0m6ljZgg==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/util": "^13.5.8", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/util": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-13.5.8.tgz", - "integrity": "sha512-5xEfNoum/Ct+gYWN3AYvBQ8vq8KiS4HsY3BexPUPXvSXSx3Id/JYA5oFLYnkuRp8hwoQGjX0wqUJ6Hp8D8LHKw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-bigint": "13.5.8", - "@polkadot/x-global": "13.5.8", - "@polkadot/x-textdecoder": "13.5.8", - "@polkadot/x-textencoder": "13.5.8", - "@types/bn.js": "^5.1.6", - "bn.js": "^5.2.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/util-crypto": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/util-crypto/-/util-crypto-13.5.8.tgz", - "integrity": "sha512-3nnyqyZsrYkO3RkQn9opUnrJrQTR5/5LXgT3u/gCXrLPwjj6x8P7CZYJT2fn8aUVXbQe9iGM0SAs1mbG3aDCCQ==", - "license": "Apache-2.0", - "dependencies": { - "@noble/curves": "^1.3.0", - "@noble/hashes": "^1.3.3", - "@polkadot/networks": "13.5.8", - "@polkadot/util": "13.5.8", - "@polkadot/wasm-crypto": "^7.5.2", - "@polkadot/wasm-util": "^7.5.2", - "@polkadot/x-bigint": "13.5.8", - "@polkadot/x-randomvalues": "13.5.8", - "@scure/base": "^1.1.7", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "13.5.8" - } - }, - "node_modules/@polkadot/wasm-bridge": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.5.2.tgz", - "integrity": "sha512-P9qLGa+PFnBaaPLAYaYfzRV2kgavKJgzYXOIT4ESTeGfPyPQ51DWe4WKQACXHcZLJ2875okC0jHH9bu2ueUsQw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/wasm-util": "7.5.2", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-crypto": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.5.2.tgz", - "integrity": "sha512-1/J+qu0D1R6Xe5AKZitTGQNmYCmWm+oYFXWx/YG0OjFmEDqMblBwcgh2skwqE83IR87DIwYjHrLt34UMuPx39A==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/wasm-bridge": "7.5.2", - "@polkadot/wasm-crypto-asmjs": "7.5.2", - "@polkadot/wasm-crypto-init": "7.5.2", - "@polkadot/wasm-crypto-wasm": "7.5.2", - "@polkadot/wasm-util": "7.5.2", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-asmjs": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.5.2.tgz", - "integrity": "sha512-bb5k2yPuvSu1iyhTyTs9w0X3CUC2tYyqXL9o1Pfi9yiwNtlRFP1RScjSbYMBP7lmibOJ466i1P26w4UYYV/P0g==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-init": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.5.2.tgz", - "integrity": "sha512-mT+UVAjwDL8VW0pjAn1TjC3XdkaXm3WZ8vLwCjIeWnrsW33QCVLwGrcaUGWejrTTWAzZmfTGdtIDfaSM5QUSNQ==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/wasm-bridge": "7.5.2", - "@polkadot/wasm-crypto-asmjs": "7.5.2", - "@polkadot/wasm-crypto-wasm": "7.5.2", - "@polkadot/wasm-util": "7.5.2", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*", - "@polkadot/x-randomvalues": "*" - } - }, - "node_modules/@polkadot/wasm-crypto-wasm": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.5.2.tgz", - "integrity": "sha512-Tf2HvEJ//HnGalel/FaHfd8wvHYsqY0IYVu5nCeLmbo7HGNR+apEXKIJ7W0kcXg+2U7JhxpT8KspMJg+e3f0kA==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/wasm-util": "7.5.2", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/wasm-util": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.5.2.tgz", - "integrity": "sha512-DIKy6CMiPsbguU5nUHz/hnD05eZmkT7R/E70cotk+QMaQWT189syJ05Z/YGQD/JdPoRf4uVNA5xHCWLikmzwZQ==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "*" - } - }, - "node_modules/@polkadot/x-bigint": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-13.5.8.tgz", - "integrity": "sha512-4ltTNgFDZoPnuQBrP7Z3m3imQ3xKb7jKScAT/Gy89h9siLYyJdZ+qawZfO1cll6fqYlka+k7USqGeyOEqoyCfg==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-fetch": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-fetch/-/x-fetch-13.5.8.tgz", - "integrity": "sha512-htNuY8zFw5vzNS2mFm9P22oBJg7Az8Xbg3fMmR/A6ZDhAfxfM6IbX9pPHkNJY2Wng3tysrY5VMOUMb1IIrSf3w==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "node-fetch": "^3.3.2", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-global": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-13.5.8.tgz", - "integrity": "sha512-KDK3CEG/RvfCu3w4HZ/iv6c49XrN5Hz/3mXUQdLfR+TFKADdNCoIhMZ9f7vHYgdnB9tlY9s6Dn2svY99h1wRiw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-randomvalues": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-randomvalues/-/x-randomvalues-13.5.8.tgz", - "integrity": "sha512-u9Nw5wP2mruo2AzRLWmK4KrYStsaTWH86H96O/6aRSsse6E3QCoqTzwDTDHBT05PWekbDNa7qwKmgKw4UNJfPw==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@polkadot/util": "13.5.8", - "@polkadot/wasm-util": "*" - } - }, - "node_modules/@polkadot/x-textdecoder": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-13.5.8.tgz", - "integrity": "sha512-Uzz6spRDzzQDQBN6PNpjz0HVp2kqhQVJRh1ShLP9rBg+nH4we9VGriWGG5stkgNKjRGT0Z7cvx0FupRQoNDU4A==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-textencoder": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-13.5.8.tgz", - "integrity": "sha512-2jcVte6mUy+GXjpZsS7dFca8C2r8EGgaG5o7mVQZ+PjauD06O/UP2g48UuDJHGe1QCJN0f0WaoD+RNw9tOF2yQ==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-ws": { - "version": "13.5.8", - "resolved": "https://registry.npmjs.org/@polkadot/x-ws/-/x-ws-13.5.8.tgz", - "integrity": "sha512-tEs69W3O7Y2lPGihOFWwSE91GkaMEAzJhkDouTfacBKwD6O2b1/Im97jBdxQBmi7kN3pAWGXXTk9sz8TCh30Ug==", - "license": "Apache-2.0", - "dependencies": { - "@polkadot/x-global": "13.5.8", - "tslib": "^2.8.0", - "ws": "^8.18.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@polkadot/x-ws/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/@react-native-async-storage/async-storage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@react-native-async-storage/async-storage/-/async-storage-2.2.0.tgz", - "integrity": "sha512-gvRvjR5JAaUZF8tv2Kcq/Gbt3JHwbKFYfmb445rhOj6NUMx3qPLixmDx5pZAyb9at1bYvJ4/eTUipU5aki45xw==", - "license": "MIT", - "dependencies": { - "merge-options": "^3.0.4" - }, - "peerDependencies": { - "react-native": "^0.0.0-0 || >=0.65 <1.0" - } - }, - "node_modules/@react-native/assets-registry": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/assets-registry/-/assets-registry-0.81.5.tgz", - "integrity": "sha512-705B6x/5Kxm1RKRvSv0ADYWm5JOnoiQ1ufW7h8uu2E6G9Of/eE6hP/Ivw3U5jI16ERqZxiKQwk34VJbB0niX9w==", - "license": "MIT", - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/babel-plugin-codegen": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.81.5.tgz", - "integrity": "sha512-oF71cIH6je3fSLi6VPjjC3Sgyyn57JLHXs+mHWc9MoCiJJcM4nqsS5J38zv1XQ8d3zOW2JtHro+LF0tagj2bfQ==", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.3", - "@react-native/codegen": "0.81.5" - }, - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/babel-preset": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/babel-preset/-/babel-preset-0.81.5.tgz", - "integrity": "sha512-UoI/x/5tCmi+pZ3c1+Ypr1DaRMDLI3y+Q70pVLLVgrnC3DHsHRIbHcCHIeG/IJvoeFqFM2sTdhSOLJrf8lOPrA==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.25.2", - "@babel/plugin-proposal-export-default-from": "^7.24.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-default-from": "^7.24.7", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-transform-arrow-functions": "^7.24.7", - "@babel/plugin-transform-async-generator-functions": "^7.25.4", - "@babel/plugin-transform-async-to-generator": "^7.24.7", - "@babel/plugin-transform-block-scoping": "^7.25.0", - "@babel/plugin-transform-class-properties": "^7.25.4", - "@babel/plugin-transform-classes": "^7.25.4", - "@babel/plugin-transform-computed-properties": "^7.24.7", - "@babel/plugin-transform-destructuring": "^7.24.8", - "@babel/plugin-transform-flow-strip-types": "^7.25.2", - "@babel/plugin-transform-for-of": "^7.24.7", - "@babel/plugin-transform-function-name": "^7.25.1", - "@babel/plugin-transform-literals": "^7.25.2", - "@babel/plugin-transform-logical-assignment-operators": "^7.24.7", - "@babel/plugin-transform-modules-commonjs": "^7.24.8", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7", - "@babel/plugin-transform-numeric-separator": "^7.24.7", - "@babel/plugin-transform-object-rest-spread": "^7.24.7", - "@babel/plugin-transform-optional-catch-binding": "^7.24.7", - "@babel/plugin-transform-optional-chaining": "^7.24.8", - "@babel/plugin-transform-parameters": "^7.24.7", - "@babel/plugin-transform-private-methods": "^7.24.7", - "@babel/plugin-transform-private-property-in-object": "^7.24.7", - "@babel/plugin-transform-react-display-name": "^7.24.7", - "@babel/plugin-transform-react-jsx": "^7.25.2", - "@babel/plugin-transform-react-jsx-self": "^7.24.7", - "@babel/plugin-transform-react-jsx-source": "^7.24.7", - "@babel/plugin-transform-regenerator": "^7.24.7", - "@babel/plugin-transform-runtime": "^7.24.7", - "@babel/plugin-transform-shorthand-properties": "^7.24.7", - "@babel/plugin-transform-spread": "^7.24.7", - "@babel/plugin-transform-sticky-regex": "^7.24.7", - "@babel/plugin-transform-typescript": "^7.25.2", - "@babel/plugin-transform-unicode-regex": "^7.24.7", - "@babel/template": "^7.25.0", - "@react-native/babel-plugin-codegen": "0.81.5", - "babel-plugin-syntax-hermes-parser": "0.29.1", - "babel-plugin-transform-flow-enums": "^0.0.2", - "react-refresh": "^0.14.0" - }, - "engines": { - "node": ">= 20.19.4" - }, - "peerDependencies": { - "@babel/core": "*" - } - }, - "node_modules/@react-native/codegen": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/codegen/-/codegen-0.81.5.tgz", - "integrity": "sha512-a2TDA03Up8lpSa9sh5VRGCQDXgCTOyDOFH+aqyinxp1HChG8uk89/G+nkJ9FPd0rqgi25eCTR16TWdS3b+fA6g==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.25.2", - "@babel/parser": "^7.25.3", - "glob": "^7.1.1", - "hermes-parser": "0.29.1", - "invariant": "^2.2.4", - "nullthrows": "^1.1.1", - "yargs": "^17.6.2" - }, - "engines": { - "node": ">= 20.19.4" - }, - "peerDependencies": { - "@babel/core": "*" - } - }, - "node_modules/@react-native/codegen/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==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@react-native/codegen/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@react-native/codegen/node_modules/hermes-estree": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.29.1.tgz", - "integrity": "sha512-jl+x31n4/w+wEqm0I2r4CMimukLbLQEYpisys5oCre611CI5fc9TxhqkBBCJ1edDG4Kza0f7CgNz8xVMLZQOmQ==", - "license": "MIT" - }, - "node_modules/@react-native/codegen/node_modules/hermes-parser": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.29.1.tgz", - "integrity": "sha512-xBHWmUtRC5e/UL0tI7Ivt2riA/YBq9+SiYFU7C1oBa/j2jYGlIF9043oak1F47ihuDIxQ5nbsKueYJDRY02UgA==", - "license": "MIT", - "dependencies": { - "hermes-estree": "0.29.1" - } - }, - "node_modules/@react-native/codegen/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@react-native/community-cli-plugin": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/community-cli-plugin/-/community-cli-plugin-0.81.5.tgz", - "integrity": "sha512-yWRlmEOtcyvSZ4+OvqPabt+NS36vg0K/WADTQLhrYrm9qdZSuXmq8PmdJWz/68wAqKQ+4KTILiq2kjRQwnyhQw==", - "license": "MIT", - "dependencies": { - "@react-native/dev-middleware": "0.81.5", - "debug": "^4.4.0", - "invariant": "^2.2.4", - "metro": "^0.83.1", - "metro-config": "^0.83.1", - "metro-core": "^0.83.1", - "semver": "^7.1.3" - }, - "engines": { - "node": ">= 20.19.4" - }, - "peerDependencies": { - "@react-native-community/cli": "*", - "@react-native/metro-config": "*" - }, - "peerDependenciesMeta": { - "@react-native-community/cli": { - "optional": true - }, - "@react-native/metro-config": { - "optional": true - } - } - }, - "node_modules/@react-native/debugger-frontend": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/debugger-frontend/-/debugger-frontend-0.81.5.tgz", - "integrity": "sha512-bnd9FSdWKx2ncklOetCgrlwqSGhMHP2zOxObJbOWXoj7GHEmih4MKarBo5/a8gX8EfA1EwRATdfNBQ81DY+h+w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/dev-middleware": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/dev-middleware/-/dev-middleware-0.81.5.tgz", - "integrity": "sha512-WfPfZzboYgo/TUtysuD5xyANzzfka8Ebni6RIb2wDxhb56ERi7qDrE4xGhtPsjCL4pQBXSVxyIlCy0d8I6EgGA==", - "license": "MIT", - "dependencies": { - "@isaacs/ttlcache": "^1.4.1", - "@react-native/debugger-frontend": "0.81.5", - "chrome-launcher": "^0.15.2", - "chromium-edge-launcher": "^0.2.0", - "connect": "^3.6.5", - "debug": "^4.4.0", - "invariant": "^2.2.4", - "nullthrows": "^1.1.1", - "open": "^7.0.3", - "serve-static": "^1.16.2", - "ws": "^6.2.3" - }, - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/dev-middleware/node_modules/ws": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz", - "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==", - "license": "MIT", - "dependencies": { - "async-limiter": "~1.0.0" - } - }, - "node_modules/@react-native/gradle-plugin": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/gradle-plugin/-/gradle-plugin-0.81.5.tgz", - "integrity": "sha512-hORRlNBj+ReNMLo9jme3yQ6JQf4GZpVEBLxmTXGGlIL78MAezDZr5/uq9dwElSbcGmLEgeiax6e174Fie6qPLg==", - "license": "MIT", - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/js-polyfills": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/js-polyfills/-/js-polyfills-0.81.5.tgz", - "integrity": "sha512-fB7M1CMOCIUudTRuj7kzxIBTVw2KXnsgbQ6+4cbqSxo8NmRRhA0Ul4ZUzZj3rFd3VznTL4Brmocv1oiN0bWZ8w==", - "license": "MIT", - "engines": { - "node": ">= 20.19.4" - } - }, - "node_modules/@react-native/normalize-colors": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/normalize-colors/-/normalize-colors-0.81.5.tgz", - "integrity": "sha512-0HuJ8YtqlTVRXGZuGeBejLE04wSQsibpTI+RGOyVqxZvgtlLLC/Ssw0UmbHhT4lYMp2fhdtvKZSs5emWB1zR/g==", - "license": "MIT" - }, - "node_modules/@react-navigation/bottom-tabs": { - "version": "7.8.5", - "resolved": "https://registry.npmjs.org/@react-navigation/bottom-tabs/-/bottom-tabs-7.8.5.tgz", - "integrity": "sha512-Zm9UOTfEtBLL7Wm+JBc0v/lh72cen9a8WVN5KSCEN7EtiQIPXbQUZg1ktEzme600HhxvaNZzzSz0X+w2E5nG5w==", - "license": "MIT", - "dependencies": { - "@react-navigation/elements": "^2.8.2", - "color": "^4.2.3", - "sf-symbols-typescript": "^2.1.0" - }, - "peerDependencies": { - "@react-navigation/native": "^7.1.20", - "react": ">= 18.2.0", - "react-native": "*", - "react-native-safe-area-context": ">= 4.0.0", - "react-native-screens": ">= 4.0.0" - } - }, - "node_modules/@react-navigation/core": { - "version": "7.13.1", - "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-7.13.1.tgz", - "integrity": "sha512-aPf1vjQhMytPC9CmJu28hT5eTaBJuqIf9T6IRICtap5HHgFLrsYizLZrg3D0H2AoPyOoijMPWzwf7VCBzfGvrg==", - "license": "MIT", - "dependencies": { - "@react-navigation/routers": "^7.5.1", - "escape-string-regexp": "^4.0.0", - "fast-deep-equal": "^3.1.3", - "nanoid": "^3.3.11", - "query-string": "^7.1.3", - "react-is": "^19.1.0", - "use-latest-callback": "^0.2.4", - "use-sync-external-store": "^1.5.0" - }, - "peerDependencies": { - "react": ">= 18.2.0" - } - }, - "node_modules/@react-navigation/core/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@react-navigation/core/node_modules/react-is": { - "version": "19.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.2.0.tgz", - "integrity": "sha512-x3Ax3kNSMIIkyVYhWPyO09bu0uttcAIoecO/um/rKGQ4EltYWVYtyiGkS/3xMynrbVQdS69Jhlv8FXUEZehlzA==", - "license": "MIT" - }, - "node_modules/@react-navigation/elements": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-2.8.2.tgz", - "integrity": "sha512-K5NWIMar81oAoRAgLwrWcLpXzY2K5yG3gNU/56uyC12u+i5SyIVAv+ygP36UXvrNLzDigg8OdRSdEBb8ePqQtA==", - "license": "MIT", - "dependencies": { - "color": "^4.2.3", - "use-latest-callback": "^0.2.4", - "use-sync-external-store": "^1.5.0" - }, - "peerDependencies": { - "@react-native-masked-view/masked-view": ">= 0.2.0", - "@react-navigation/native": "^7.1.20", - "react": ">= 18.2.0", - "react-native": "*", - "react-native-safe-area-context": ">= 4.0.0" - }, - "peerDependenciesMeta": { - "@react-native-masked-view/masked-view": { - "optional": true - } - } - }, - "node_modules/@react-navigation/native": { - "version": "7.1.20", - "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-7.1.20.tgz", - "integrity": "sha512-15luFq+35M2IOMHgbTJ0XDkPY7gm3YlR3yQKTuOTOHs+EeAUX71DlUuqcWMRqB0tt+OT6HimDQR7OboTB0N30g==", - "license": "MIT", - "dependencies": { - "@react-navigation/core": "^7.13.1", - "escape-string-regexp": "^4.0.0", - "fast-deep-equal": "^3.1.3", - "nanoid": "^3.3.11", - "use-latest-callback": "^0.2.4" - }, - "peerDependencies": { - "react": ">= 18.2.0", - "react-native": "*" - } - }, - "node_modules/@react-navigation/native/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@react-navigation/routers": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/@react-navigation/routers/-/routers-7.5.1.tgz", - "integrity": "sha512-pxipMW/iEBSUrjxz2cDD7fNwkqR4xoi0E/PcfTQGCcdJwLoaxzab5kSadBLj1MTJyT0YRrOXL9umHpXtp+Dv4w==", - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.11" - } - }, - "node_modules/@react-navigation/stack": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@react-navigation/stack/-/stack-7.6.4.tgz", - "integrity": "sha512-KweDIIFcSyG8x2ylyC1V+u6T5GpykPra9WoOOH7Ijoumvxuda6UETOoJPX5h/DUZKM5ve7mIfv7oXpbH9Ik/Jg==", - "license": "MIT", - "dependencies": { - "@react-navigation/elements": "^2.8.2", - "color": "^4.2.3", - "use-latest-callback": "^0.2.4" - }, - "peerDependencies": { - "@react-navigation/native": "^7.1.20", - "react": ">= 18.2.0", - "react-native": "*", - "react-native-gesture-handler": ">= 2.0.0", - "react-native-safe-area-context": ">= 4.0.0", - "react-native-screens": ">= 4.0.0" - } - }, - "node_modules/@scure/base": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", - "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "license": "MIT" - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "license": "BSD-3-Clause", - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "license": "BSD-3-Clause", - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@substrate/connect": { - "version": "0.8.11", - "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.8.11.tgz", - "integrity": "sha512-ofLs1PAO9AtDdPbdyTYj217Pe+lBfTLltdHDs3ds8no0BseoLeAGxpz1mHfi7zB4IxI3YyAiLjH6U8cw4pj4Nw==", - "deprecated": "versions below 1.x are no longer maintained", - "license": "GPL-3.0-only", - "optional": true, - "dependencies": { - "@substrate/connect-extension-protocol": "^2.0.0", - "@substrate/connect-known-chains": "^1.1.5", - "@substrate/light-client-extension-helpers": "^1.0.0", - "smoldot": "2.0.26" - } - }, - "node_modules/@substrate/connect-extension-protocol": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@substrate/connect-extension-protocol/-/connect-extension-protocol-2.2.2.tgz", - "integrity": "sha512-t66jwrXA0s5Goq82ZtjagLNd7DPGCNjHeehRlE/gcJmJ+G56C0W+2plqOMRicJ8XGR1/YFnUSEqUFiSNbjGrAA==", - "license": "GPL-3.0-only", - "optional": true - }, - "node_modules/@substrate/connect-known-chains": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/@substrate/connect-known-chains/-/connect-known-chains-1.10.3.tgz", - "integrity": "sha512-OJEZO1Pagtb6bNE3wCikc2wrmvEU5x7GxFFLqqbz1AJYYxSlrPCGu4N2og5YTExo4IcloNMQYFRkBGue0BKZ4w==", - "license": "GPL-3.0-only", - "optional": true - }, - "node_modules/@substrate/light-client-extension-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@substrate/light-client-extension-helpers/-/light-client-extension-helpers-1.0.0.tgz", - "integrity": "sha512-TdKlni1mBBZptOaeVrKnusMg/UBpWUORNDv5fdCaJklP4RJiFOzBCrzC+CyVI5kQzsXBisZ+2pXm+rIjS38kHg==", - "license": "MIT", - "optional": true, - "dependencies": { - "@polkadot-api/json-rpc-provider": "^0.0.1", - "@polkadot-api/json-rpc-provider-proxy": "^0.1.0", - "@polkadot-api/observable-client": "^0.3.0", - "@polkadot-api/substrate-client": "^0.1.2", - "@substrate/connect-extension-protocol": "^2.0.0", - "@substrate/connect-known-chains": "^1.1.5", - "rxjs": "^7.8.1" - }, - "peerDependencies": { - "smoldot": "2.x" - } - }, - "node_modules/@substrate/ss58-registry": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/@substrate/ss58-registry/-/ss58-registry-1.51.0.tgz", - "integrity": "sha512-TWDurLiPxndFgKjVavCniytBIw+t4ViOi7TYp9h/D0NMmkEc9klFTo+827eyEJ0lELpqO207Ey7uGxUa+BS1jQ==", - "license": "Apache-2.0" - }, - "node_modules/@testing-library/jest-native": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/@testing-library/jest-native/-/jest-native-5.4.3.tgz", - "integrity": "sha512-/sSDGaOuE+PJ1Z9Kp4u7PQScSVVXGud59I/qsBFFJvIbcn4P6yYw6cBnBmbPF+X9aRIsTJRDl6gzw5ZkJNm66w==", - "deprecated": "DEPRECATED: This package is no longer maintained.\nPlease use the built-in Jest matchers available in @testing-library/react-native v12.4+.\n\nSee migration guide: https://callstack.github.io/react-native-testing-library/docs/migration/jest-matchers", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.2", - "jest-diff": "^29.0.1", - "jest-matcher-utils": "^29.0.1", - "pretty-format": "^29.0.3", - "redent": "^3.0.0" - }, - "peerDependencies": { - "react": ">=16.0.0", - "react-native": ">=0.59", - "react-test-renderer": ">=16.0.0" - } - }, - "node_modules/@testing-library/jest-native/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@testing-library/jest-native/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@testing-library/jest-native/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@testing-library/jest-native/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@testing-library/jest-native/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/jest-native/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/react-native": { - "version": "13.3.3", - "resolved": "https://registry.npmjs.org/@testing-library/react-native/-/react-native-13.3.3.tgz", - "integrity": "sha512-k6Mjsd9dbZgvY4Bl7P1NIpePQNi+dfYtlJ5voi9KQlynxSyQkfOgJmYGCYmw/aSgH/rUcFvG8u5gd4npzgRDyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-matcher-utils": "^30.0.5", - "picocolors": "^1.1.1", - "pretty-format": "^30.0.5", - "redent": "^3.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "jest": ">=29.0.0", - "react": ">=18.2.0", - "react-native": ">=0.71", - "react-test-renderer": ">=18.2.0" - }, - "peerDependenciesMeta": { - "jest": { - "optional": true - } - } - }, - "node_modules/@testing-library/react-native/node_modules/@jest/schemas": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz", - "integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sinclair/typebox": "^0.34.0" - }, - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@testing-library/react-native/node_modules/@sinclair/typebox": { - "version": "0.34.41", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.41.tgz", - "integrity": "sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g==", - "dev": true, - "license": "MIT" - }, - "node_modules/@testing-library/react-native/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@testing-library/react-native/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@testing-library/react-native/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@testing-library/react-native/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@testing-library/react-native/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/react-native/node_modules/jest-diff": { - "version": "30.2.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", - "integrity": "sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/diff-sequences": "30.0.1", - "@jest/get-type": "30.1.0", - "chalk": "^4.1.2", - "pretty-format": "30.2.0" - }, - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@testing-library/react-native/node_modules/jest-matcher-utils": { - "version": "30.2.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", - "integrity": "sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/get-type": "30.1.0", - "chalk": "^4.1.2", - "jest-diff": "30.2.0", - "pretty-format": "30.2.0" - }, - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@testing-library/react-native/node_modules/pretty-format": { - "version": "30.2.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", - "integrity": "sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/schemas": "30.0.5", - "ansi-styles": "^5.2.0", - "react-is": "^18.3.1" - }, - "engines": { - "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" - } - }, - "node_modules/@testing-library/react-native/node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@testing-library/react-native/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.2" - } - }, - "node_modules/@types/bn.js": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.2.0.tgz", - "integrity": "sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/hammerjs": { - "version": "2.0.46", - "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.46.tgz", - "integrity": "sha512-ynRvcq6wvqexJ9brDMS4BnBLzmr0e14d6ZJTEShTBWKymQiHwlAyGu0ZPEFI2Fh1U53F7tN9ufClWM5KvqkKOw==", - "license": "MIT", - "peer": true - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "license": "MIT" - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/jsdom": { - "version": "20.0.1", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", - "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/tough-cookie": "*", - "parse5": "^7.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "24.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", - "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", - "license": "MIT", - "dependencies": { - "undici-types": "~7.16.0" - } - }, - "node_modules/@types/react": { - "version": "19.1.17", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.17.tgz", - "integrity": "sha512-Qec1E3mhALmaspIrhWt9jkQMNdw6bReVu64mjvhbhq2NFPftLPVr+l1SZgmw/66WwBNpDh7ao5AT6gF5v41PFA==", - "devOptional": true, - "license": "MIT", - "dependencies": { - "csstype": "^3.0.2" - } - }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "license": "MIT" - }, - "node_modules/@types/tough-cookie": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", - "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/yargs": { - "version": "17.0.34", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.34.tgz", - "integrity": "sha512-KExbHVa92aJpw9WDQvzBaGVE2/Pz+pLZQloT2hjL8IqsZnV62rlPOYvNnLmf/L2dyllfVUOVBj64M0z/46eR2A==", - "license": "MIT", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "license": "MIT" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.47.0.tgz", - "integrity": "sha512-fe0rz9WJQ5t2iaLfdbDc9T80GJy0AeO453q8C3YCilnGozvOyCG5t+EZtg7j7D88+c3FipfP/x+wzGnh1xp8ZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.47.0", - "@typescript-eslint/type-utils": "8.47.0", - "@typescript-eslint/utils": "8.47.0", - "@typescript-eslint/visitor-keys": "8.47.0", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.47.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.47.0.tgz", - "integrity": "sha512-lJi3PfxVmo0AkEY93ecfN+r8SofEqZNGByvHAI3GBLrvt1Cw6H5k1IM02nSzu0RfUafr2EvFSw0wAsZgubNplQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/scope-manager": "8.47.0", - "@typescript-eslint/types": "8.47.0", - "@typescript-eslint/typescript-estree": "8.47.0", - "@typescript-eslint/visitor-keys": "8.47.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.47.0.tgz", - "integrity": "sha512-2X4BX8hUeB5JcA1TQJ7GjcgulXQ+5UkNb0DL8gHsHUHdFoiCTJoYLTpib3LtSDPZsRET5ygN4qqIWrHyYIKERA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.47.0", - "@typescript-eslint/types": "^8.47.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.47.0.tgz", - "integrity": "sha512-a0TTJk4HXMkfpFkL9/WaGTNuv7JWfFTQFJd6zS9dVAjKsojmv9HT55xzbEpnZoY+VUb+YXLMp+ihMLz/UlZfDg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.47.0", - "@typescript-eslint/visitor-keys": "8.47.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.47.0.tgz", - "integrity": "sha512-ybUAvjy4ZCL11uryalkKxuT3w3sXJAuWhOoGS3T/Wu+iUu1tGJmk5ytSY8gbdACNARmcYEB0COksD2j6hfGK2g==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.47.0.tgz", - "integrity": "sha512-QC9RiCmZ2HmIdCEvhd1aJELBlD93ErziOXXlHEZyuBo3tBiAZieya0HLIxp+DoDWlsQqDawyKuNEhORyku+P8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.47.0", - "@typescript-eslint/typescript-estree": "8.47.0", - "@typescript-eslint/utils": "8.47.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.47.0.tgz", - "integrity": "sha512-nHAE6bMKsizhA2uuYZbEbmp5z2UpffNrPEqiKIeN7VsV6UY/roxanWfoRrf6x/k9+Obf+GQdkm0nPU+vnMXo9A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.47.0.tgz", - "integrity": "sha512-k6ti9UepJf5NpzCjH31hQNLHQWupTRPhZ+KFF8WtTuTpy7uHPfeg2NM7cP27aCGajoEplxJDFVCEm9TGPYyiVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/project-service": "8.47.0", - "@typescript-eslint/tsconfig-utils": "8.47.0", - "@typescript-eslint/types": "8.47.0", - "@typescript-eslint/visitor-keys": "8.47.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.47.0.tgz", - "integrity": "sha512-g7XrNf25iL4TJOiPqatNuaChyqt49a/onq5YsJ9+hXeugK+41LVg7AxikMfM02PC6jbNtZLCJj6AUcQXJS/jGQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.47.0", - "@typescript-eslint/types": "8.47.0", - "@typescript-eslint/typescript-estree": "8.47.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.47.0.tgz", - "integrity": "sha512-SIV3/6eftCy1bNzCQoPmbWsRLujS8t5iDIZ4spZOBHqrM+yfX2ogg8Tt3PDTAVKw3sSCiUgg30uOAvK2r9zGjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.47.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@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==", - "license": "ISC" - }, - "node_modules/@urql/core": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@urql/core/-/core-5.2.0.tgz", - "integrity": "sha512-/n0ieD0mvvDnVAXEQgX/7qJiVcvYvNkOHeBvkwtylfjydar123caCXcl58PXFY11oU1oquJocVXHxLAbtv4x1A==", - "license": "MIT", - "dependencies": { - "@0no-co/graphql.web": "^1.0.13", - "wonka": "^6.3.2" - } - }, - "node_modules/@urql/exchange-retry": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@urql/exchange-retry/-/exchange-retry-1.3.2.tgz", - "integrity": "sha512-TQMCz2pFJMfpNxmSfX1VSfTjwUIFx/mL+p1bnfM1xjjdla7Z+KnGMW/EhFbpckp3LyWAH4PgOsMwOMnIN+MBFg==", - "license": "MIT", - "dependencies": { - "@urql/core": "^5.1.2", - "wonka": "^6.3.2" - }, - "peerDependencies": { - "@urql/core": "^5.0.0" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", - "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", - "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", - "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", - "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", - "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.13.2", - "@webassemblyjs/helper-api-error": "1.13.2", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", - "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", - "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/wasm-gen": "1.14.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", - "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", - "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", - "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", - "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/helper-wasm-section": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-opt": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1", - "@webassemblyjs/wast-printer": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", - "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", - "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", - "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-api-error": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", - "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xmldom/xmldom": { - "version": "0.8.11", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", - "integrity": "sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "license": "Apache-2.0", - "peer": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "deprecated": "Use your platform's native atob() and btoa() methods instead", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "license": "MIT", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-globals": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", - "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.1.0", - "acorn-walk": "^8.0.2" - } - }, - "node_modules/acorn-import-phases": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz", - "integrity": "sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "acorn": "^8.14.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-loose": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/acorn-loose/-/acorn-loose-8.5.2.tgz", - "integrity": "sha512-PPvV6g8UGMGgjrMu+n/f9E/tCSkNQ2Y97eFvuVdJfG11+xdIeDcLyNdC8SHcrHbRqkfwLASdplyR6B6sKM1U4A==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.15.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", - "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "license": "MIT", - "engines": { - "node": ">= 14" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/anser": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/anser/-/anser-1.4.10.tgz", - "integrity": "sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==", - "license": "MIT" - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "license": "MIT" - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "license": "MIT", - "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.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "license": "MIT" - }, - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "license": "MIT" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", - "license": "MIT", - "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-jest/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/babel-jest/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/babel-jest/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==", - "license": "MIT" - }, - "node_modules/babel-jest/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-jest/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "license": "MIT", - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz", - "integrity": "sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==", - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.27.7", - "@babel/helper-define-polyfill-provider": "^0.6.5", - "semver": "^6.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz", - "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==", - "license": "MIT", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.5", - "core-js-compat": "^3.43.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz", - "integrity": "sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==", - "license": "MIT", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.5" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/babel-plugin-react-compiler": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-react-compiler/-/babel-plugin-react-compiler-1.0.0.tgz", - "integrity": "sha512-Ixm8tFfoKKIPYdCCKYTsqv+Fd4IJ0DQqMyEimo+pxUOMUR9cVPlwTrFt9Avu+3cb6Zp3mAzl+t1MrG2fxxKsxw==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.26.0" - } - }, - "node_modules/babel-plugin-react-native-web": { - "version": "0.21.2", - "resolved": "https://registry.npmjs.org/babel-plugin-react-native-web/-/babel-plugin-react-native-web-0.21.2.tgz", - "integrity": "sha512-SPD0J6qjJn8231i0HZhlAGH6NORe+QvRSQM2mwQEzJ2Fb3E4ruWTiiicPlHjmeWShDXLcvoorOCXjeR7k/lyWA==", - "license": "MIT" - }, - "node_modules/babel-plugin-syntax-hermes-parser": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-hermes-parser/-/babel-plugin-syntax-hermes-parser-0.29.1.tgz", - "integrity": "sha512-2WFYnoWGdmih1I1J5eIqxATOeycOqRwYxAQBu3cUu/rhwInwHUg7k60AFNbuGjSDL8tje5GDrAnxzRLcu2pYcA==", - "license": "MIT", - "dependencies": { - "hermes-parser": "0.29.1" - } - }, - "node_modules/babel-plugin-syntax-hermes-parser/node_modules/hermes-estree": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.29.1.tgz", - "integrity": "sha512-jl+x31n4/w+wEqm0I2r4CMimukLbLQEYpisys5oCre611CI5fc9TxhqkBBCJ1edDG4Kza0f7CgNz8xVMLZQOmQ==", - "license": "MIT" - }, - "node_modules/babel-plugin-syntax-hermes-parser/node_modules/hermes-parser": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.29.1.tgz", - "integrity": "sha512-xBHWmUtRC5e/UL0tI7Ivt2riA/YBq9+SiYFU7C1oBa/j2jYGlIF9043oak1F47ihuDIxQ5nbsKueYJDRY02UgA==", - "license": "MIT", - "dependencies": { - "hermes-estree": "0.29.1" - } - }, - "node_modules/babel-plugin-transform-flow-enums": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-enums/-/babel-plugin-transform-flow-enums-0.0.2.tgz", - "integrity": "sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==", - "license": "MIT", - "dependencies": { - "@babel/plugin-syntax-flow": "^7.12.1" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", - "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==", - "license": "MIT", - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-import-attributes": "^7.24.7", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5" - }, - "peerDependencies": { - "@babel/core": "^7.0.0 || ^8.0.0-0" - } - }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", - "license": "MIT", - "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "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==", - "license": "MIT" - }, - "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" - } - ], - "license": "MIT" - }, - "node_modules/baseline-browser-mapping": { - "version": "2.8.28", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.28.tgz", - "integrity": "sha512-gYjt7OIqdM0PcttNYP2aVrr2G0bMALkBaoehD4BuRGjAOtipg0b6wHg1yNL+s5zSnLZZrGHOw4IrND8CD+3oIQ==", - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.js" - } - }, - "node_modules/better-opn": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz", - "integrity": "sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==", - "license": "MIT", - "dependencies": { - "open": "^8.0.4" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/better-opn/node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "license": "MIT", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "license": "Unlicense", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/bn.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz", - "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==", - "license": "MIT" - }, - "node_modules/bplist-creator": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.1.0.tgz", - "integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==", - "license": "MIT", - "dependencies": { - "stream-buffers": "2.2.x" - } - }, - "node_modules/bplist-parser": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.1.tgz", - "integrity": "sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==", - "license": "MIT", - "dependencies": { - "big-integer": "1.6.x" - }, - "engines": { - "node": ">= 5.10.0" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz", - "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.8.25", - "caniuse-lite": "^1.0.30001754", - "electron-to-chromium": "^1.5.249", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.1.4" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "license": "Apache-2.0", - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "license": "MIT" - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.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==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001754", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz", - "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/chownr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", - "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", - "license": "BlueOak-1.0.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/chrome-launcher": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz", - "integrity": "sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==", - "license": "Apache-2.0", - "dependencies": { - "@types/node": "*", - "escape-string-regexp": "^4.0.0", - "is-wsl": "^2.2.0", - "lighthouse-logger": "^1.0.0" - }, - "bin": { - "print-chrome-path": "bin/print-chrome-path.js" - }, - "engines": { - "node": ">=12.13.0" - } - }, - "node_modules/chrome-launcher/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/chromium-edge-launcher": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/chromium-edge-launcher/-/chromium-edge-launcher-0.2.0.tgz", - "integrity": "sha512-JfJjUnq25y9yg4FABRRVPmBGWPZZi+AQXT4mxupb67766/0UlhG8PAZCz6xzEMXTbW3CsSoE8PcCWA49n35mKg==", - "license": "Apache-2.0", - "dependencies": { - "@types/node": "*", - "escape-string-regexp": "^4.0.0", - "is-wsl": "^2.2.0", - "lighthouse-logger": "^1.0.0", - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "node_modules/chromium-edge-launcher/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "license": "MIT" - }, - "node_modules/cjs-module-lexer": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", - "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "license": "MIT", - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-spinners": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/cliui/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/cliui/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/cliui/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==", - "license": "MIT" - }, - "node_modules/cliui/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==", - "license": "MIT" - }, - "node_modules/cliui/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==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/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==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui/node_modules/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==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", - "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==", - "dev": true, - "license": "MIT" - }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "license": "MIT", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/color/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color/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==", - "license": "MIT" - }, - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "license": "MIT", - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", - "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", - "license": "MIT", - "dependencies": { - "bytes": "3.1.2", - "compressible": "~2.0.18", - "debug": "2.6.9", - "negotiator": "~0.6.4", - "on-headers": "~1.1.0", - "safe-buffer": "5.2.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/compression/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", - "license": "MIT", - "engines": { - "node": ">= 0.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==", - "license": "MIT" - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "license": "MIT" - }, - "node_modules/core-js-compat": { - "version": "3.46.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.46.0.tgz", - "integrity": "sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==", - "license": "MIT", - "dependencies": { - "browserslist": "^4.26.3" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/create-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", - "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "bin": { - "create-jest": "bin/create-jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/create-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/create-jest/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/create-jest/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/create-jest/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/create-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/create-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/cssom": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", - "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", - "dev": true, - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true, - "license": "MIT" - }, - "node_modules/csstype": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.0.tgz", - "integrity": "sha512-si++xzRAY9iPp60roQiFta7OFbhrgvcthrhlNAGeQptSY25uJjkfUV8OArC3KLocB8JT8ohz+qgxWCmz8RhjIg==", - "devOptional": true, - "license": "MIT" - }, - "node_modules/data-uri-to-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", - "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/data-urls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decimal.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", - "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", - "dev": true, - "license": "MIT" - }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/dedent": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.0.tgz", - "integrity": "sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" - }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "license": "MIT", - "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "license": "MIT", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-libc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "license": "Apache-2.0", - "engines": { - "node": ">=8" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/domexception": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", - "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", - "deprecated": "Use your platform's native DOMException instead", - "dev": true, - "license": "MIT", - "dependencies": { - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/dotenv": { - "version": "16.4.7", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", - "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" - } - }, - "node_modules/dotenv-expand": { - "version": "11.0.7", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", - "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", - "license": "BSD-2-Clause", - "dependencies": { - "dotenv": "^16.4.5" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "license": "MIT" - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "license": "MIT" - }, - "node_modules/electron-to-chromium": { - "version": "1.5.252", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.252.tgz", - "integrity": "sha512-53uTpjtRgS7gjIxZ4qCgFdNO2q+wJt/Z8+xAvxbCqXPJrY6h7ighUkadQmNMXH96crtpa6gPFNP7BF4UBGDuaA==", - "license": "ISC" - }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.18.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", - "integrity": "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-editor": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/env-editor/-/env-editor-0.4.2.tgz", - "integrity": "sha512-ObFo8v4rQJAE59M69QzwloxPZtd33TpYEIjtKD1rrFDcM1Gd7IkDxEBU+HriziN6HSHQnBJi8Dmy+JWkav5HKA==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/error-ex": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", - "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/error-ex/node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true, - "license": "MIT" - }, - "node_modules/error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "license": "MIT", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "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, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", - "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.6", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.6", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "iterator.prototype": "^1.1.4", - "safe-array-concat": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-module-lexer": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", - "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "license": "MIT" - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz", - "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.8.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.21.1", - "@eslint/config-helpers": "^0.4.2", - "@eslint/core": "^0.17.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.39.1", - "@eslint/plugin-kit": "^0.4.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.4.0", - "eslint-visitor-keys": "^4.2.1", - "espree": "^10.4.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.37.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", - "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.3", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.2.1", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.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": "7.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.0.1.tgz", - "integrity": "sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.24.4", - "@babel/parser": "^7.24.4", - "hermes-parser": "^0.25.1", - "zod": "^3.25.0 || ^4.0.0", - "zod-validation-error": "^3.5.0 || ^4.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-react-hooks/node_modules/hermes-estree": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", - "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", - "dev": true, - "license": "MIT" - }, - "node_modules/eslint-plugin-react-hooks/node_modules/hermes-parser": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", - "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hermes-estree": "0.25.1" - } - }, - "node_modules/eslint-plugin-react-native": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-native/-/eslint-plugin-react-native-5.0.0.tgz", - "integrity": "sha512-VyWlyCC/7FC/aONibOwLkzmyKg4j9oI8fzrk9WYNs4I8/m436JuOTAFwLvEn1CVvc7La4cPfbCyspP4OYpP52Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-plugin-react-native-globals": "^0.1.1" - }, - "peerDependencies": { - "eslint": "^3.17.0 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" - } - }, - "node_modules/eslint-plugin-react-native-globals": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz", - "integrity": "sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==", - "dev": true, - "license": "MIT" - }, - "node_modules/eslint-plugin-react/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint-plugin-react/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/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, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/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, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-scope": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", - "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", - "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.15.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/eventemitter3": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", - "license": "MIT" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/exec-async": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/exec-async/-/exec-async-2.2.0.tgz", - "integrity": "sha512-87OpwcEiMia/DeiKFzaQNBNFeN3XkkpYIh9FyOqq5mS2oKv3CBE67PXoEKcr6nodWdXNogTiQ0jE2NGuoffXPw==", - "license": "MIT" - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execa/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/execa/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/expect-utils": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/expo": { - "version": "54.0.23", - "resolved": "https://registry.npmjs.org/expo/-/expo-54.0.23.tgz", - "integrity": "sha512-b4uQoiRwQ6nwqsT2709RS15CWYNGF3eJtyr1KyLw9WuMAK7u4jjofkhRiO0+3o1C2NbV+WooyYTOZGubQQMBaQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.20.0", - "@expo/cli": "54.0.16", - "@expo/config": "~12.0.10", - "@expo/config-plugins": "~54.0.2", - "@expo/devtools": "0.1.7", - "@expo/fingerprint": "0.15.3", - "@expo/metro": "~54.1.0", - "@expo/metro-config": "54.0.9", - "@expo/vector-icons": "^15.0.3", - "@ungap/structured-clone": "^1.3.0", - "babel-preset-expo": "~54.0.7", - "expo-asset": "~12.0.9", - "expo-constants": "~18.0.10", - "expo-file-system": "~19.0.17", - "expo-font": "~14.0.9", - "expo-keep-awake": "~15.0.7", - "expo-modules-autolinking": "3.0.21", - "expo-modules-core": "3.0.25", - "pretty-format": "^29.7.0", - "react-refresh": "^0.14.2", - "whatwg-url-without-unicode": "8.0.0-3" - }, - "bin": { - "expo": "bin/cli", - "expo-modules-autolinking": "bin/autolinking", - "fingerprint": "bin/fingerprint" - }, - "peerDependencies": { - "@expo/dom-webview": "*", - "@expo/metro-runtime": "*", - "react": "*", - "react-native": "*", - "react-native-webview": "*" - }, - "peerDependenciesMeta": { - "@expo/dom-webview": { - "optional": true - }, - "@expo/metro-runtime": { - "optional": true - }, - "react-native-webview": { - "optional": true - } - } - }, - "node_modules/expo-linear-gradient": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/expo-linear-gradient/-/expo-linear-gradient-15.0.7.tgz", - "integrity": "sha512-yF+y+9Shpr/OQFfy/wglB/0bykFMbwHBTuMRa5Of/r2P1wbkcacx8rg0JsUWkXH/rn2i2iWdubyqlxSJa3ggZA==", - "license": "MIT", - "peerDependencies": { - "expo": "*", - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo-local-authentication": { - "version": "17.0.7", - "resolved": "https://registry.npmjs.org/expo-local-authentication/-/expo-local-authentication-17.0.7.tgz", - "integrity": "sha512-yRWcgYn/OIwxEDEk7cM7tRjQSHaTp5hpKwzq+g9NmSMJ1etzUzt0yGzkDiOjObj3YqFo0ucyDJ8WfanLhZDtMw==", - "license": "MIT", - "dependencies": { - "invariant": "^2.2.4" - }, - "peerDependencies": { - "expo": "*" - } - }, - "node_modules/expo-modules-autolinking": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-3.0.21.tgz", - "integrity": "sha512-pOtPDLln3Ju8DW1zRW4OwZ702YqZ8g+kM/tEY1sWfv22kWUtxkvK+ytRDRpRdnKEnC28okbhWqeMnmVkSFzP6Q==", - "license": "MIT", - "dependencies": { - "@expo/spawn-async": "^1.7.2", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "require-from-string": "^2.0.2", - "resolve-from": "^5.0.0" - }, - "bin": { - "expo-modules-autolinking": "bin/expo-modules-autolinking.js" - } - }, - "node_modules/expo-modules-autolinking/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/expo-modules-autolinking/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/expo-modules-autolinking/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/expo-modules-autolinking/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==", - "license": "MIT" - }, - "node_modules/expo-modules-autolinking/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/expo-modules-autolinking/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/expo-modules-core": { - "version": "3.0.25", - "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-3.0.25.tgz", - "integrity": "sha512-0P8PT8UV6c5/+p8zeVM/FXvBgn/ErtGcMaasqUgbzzBUg94ktbkIrij9t9reGCrir03BYt/Bcpv+EQtYC8JOug==", - "license": "MIT", - "dependencies": { - "invariant": "^2.2.4" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo-secure-store": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/expo-secure-store/-/expo-secure-store-15.0.7.tgz", - "integrity": "sha512-9q7+G1Zxr5P6J5NRIlm86KulvmYwc6UnQlYPjQLDu1drDnerz6AT6l884dPu29HgtDTn4rR0heYeeGFhMKM7/Q==", - "license": "MIT", - "peerDependencies": { - "expo": "*" - } - }, - "node_modules/expo-server": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/expo-server/-/expo-server-1.0.4.tgz", - "integrity": "sha512-IN06r3oPxFh3plSXdvBL7dx0x6k+0/g0bgxJlNISs6qL5Z+gyPuWS750dpTzOeu37KyBG0RcyO9cXUKzjYgd4A==", - "license": "MIT", - "engines": { - "node": ">=20.16.0" - } - }, - "node_modules/expo-status-bar": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/expo-status-bar/-/expo-status-bar-3.0.8.tgz", - "integrity": "sha512-L248XKPhum7tvREoS1VfE0H6dPCaGtoUWzRsUv7hGKdiB4cus33Rc0sxkWkoQ77wE8stlnUlL5lvmT0oqZ3ZBw==", - "license": "MIT", - "dependencies": { - "react-native-is-edge-to-edge": "^1.2.1" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/expo/node_modules/@expo/cli": { - "version": "54.0.16", - "resolved": "https://registry.npmjs.org/@expo/cli/-/cli-54.0.16.tgz", - "integrity": "sha512-hY/OdRaJMs5WsVPuVSZ+RLH3VObJmL/pv5CGCHEZHN2PxZjSZSdctyKV8UcFBXTF0yIKNAJ9XLs1dlNYXHh4Cw==", - "license": "MIT", - "dependencies": { - "@0no-co/graphql.web": "^1.0.8", - "@expo/code-signing-certificates": "^0.0.5", - "@expo/config": "~12.0.10", - "@expo/config-plugins": "~54.0.2", - "@expo/devcert": "^1.1.2", - "@expo/env": "~2.0.7", - "@expo/image-utils": "^0.8.7", - "@expo/json-file": "^10.0.7", - "@expo/mcp-tunnel": "~0.1.0", - "@expo/metro": "~54.1.0", - "@expo/metro-config": "~54.0.9", - "@expo/osascript": "^2.3.7", - "@expo/package-manager": "^1.9.8", - "@expo/plist": "^0.4.7", - "@expo/prebuild-config": "^54.0.6", - "@expo/schema-utils": "^0.1.7", - "@expo/spawn-async": "^1.7.2", - "@expo/ws-tunnel": "^1.0.1", - "@expo/xcpretty": "^4.3.0", - "@react-native/dev-middleware": "0.81.5", - "@urql/core": "^5.0.6", - "@urql/exchange-retry": "^1.3.0", - "accepts": "^1.3.8", - "arg": "^5.0.2", - "better-opn": "~3.0.2", - "bplist-creator": "0.1.0", - "bplist-parser": "^0.3.1", - "chalk": "^4.0.0", - "ci-info": "^3.3.0", - "compression": "^1.7.4", - "connect": "^3.7.0", - "debug": "^4.3.4", - "env-editor": "^0.4.1", - "expo-server": "^1.0.4", - "freeport-async": "^2.0.0", - "getenv": "^2.0.0", - "glob": "^10.4.2", - "lan-network": "^0.1.6", - "minimatch": "^9.0.0", - "node-forge": "^1.3.1", - "npm-package-arg": "^11.0.0", - "ora": "^3.4.0", - "picomatch": "^3.0.1", - "pretty-bytes": "^5.6.0", - "pretty-format": "^29.7.0", - "progress": "^2.0.3", - "prompts": "^2.3.2", - "qrcode-terminal": "0.11.0", - "require-from-string": "^2.0.2", - "requireg": "^0.2.2", - "resolve": "^1.22.2", - "resolve-from": "^5.0.0", - "resolve.exports": "^2.0.3", - "semver": "^7.6.0", - "send": "^0.19.0", - "slugify": "^1.3.4", - "source-map-support": "~0.5.21", - "stacktrace-parser": "^0.1.10", - "structured-headers": "^0.4.1", - "tar": "^7.4.3", - "terminal-link": "^2.1.1", - "undici": "^6.18.2", - "wrap-ansi": "^7.0.0", - "ws": "^8.12.1" - }, - "bin": { - "expo-internal": "build/bin/cli" - }, - "peerDependencies": { - "expo": "*", - "expo-router": "*", - "react-native": "*" - }, - "peerDependenciesMeta": { - "expo-router": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/expo/node_modules/@expo/cli/node_modules/@expo/prebuild-config": { - "version": "54.0.6", - "resolved": "https://registry.npmjs.org/@expo/prebuild-config/-/prebuild-config-54.0.6.tgz", - "integrity": "sha512-xowuMmyPNy+WTNq+YX0m0EFO/Knc68swjThk4dKivgZa8zI1UjvFXOBIOp8RX4ljCXLzwxQJM5oBBTvyn+59ZA==", - "license": "MIT", - "dependencies": { - "@expo/config": "~12.0.10", - "@expo/config-plugins": "~54.0.2", - "@expo/config-types": "^54.0.8", - "@expo/image-utils": "^0.8.7", - "@expo/json-file": "^10.0.7", - "@react-native/normalize-colors": "0.81.5", - "debug": "^4.3.1", - "resolve-from": "^5.0.0", - "semver": "^7.6.0", - "xml2js": "0.6.0" - }, - "peerDependencies": { - "expo": "*" - } - }, - "node_modules/expo/node_modules/@expo/metro-config": { - "version": "54.0.9", - "resolved": "https://registry.npmjs.org/@expo/metro-config/-/metro-config-54.0.9.tgz", - "integrity": "sha512-CRI4WgFXrQ2Owyr8q0liEBJveUIF9DcYAKadMRsJV7NxGNBdrIIKzKvqreDfsGiRqivbLsw6UoNb3UE7/SvPfg==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.20.0", - "@babel/core": "^7.20.0", - "@babel/generator": "^7.20.5", - "@expo/config": "~12.0.10", - "@expo/env": "~2.0.7", - "@expo/json-file": "~10.0.7", - "@expo/metro": "~54.1.0", - "@expo/spawn-async": "^1.7.2", - "browserslist": "^4.25.0", - "chalk": "^4.1.0", - "debug": "^4.3.2", - "dotenv": "~16.4.5", - "dotenv-expand": "~11.0.6", - "getenv": "^2.0.0", - "glob": "^10.4.2", - "hermes-parser": "^0.29.1", - "jsc-safe-url": "^0.2.4", - "lightningcss": "^1.30.1", - "minimatch": "^9.0.0", - "postcss": "~8.4.32", - "resolve-from": "^5.0.0" - }, - "peerDependencies": { - "expo": "*" - }, - "peerDependenciesMeta": { - "expo": { - "optional": true - } - } - }, - "node_modules/expo/node_modules/@expo/vector-icons": { - "version": "15.0.3", - "resolved": "https://registry.npmjs.org/@expo/vector-icons/-/vector-icons-15.0.3.tgz", - "integrity": "sha512-SBUyYKphmlfUBqxSfDdJ3jAdEVSALS2VUPOUyqn48oZmb2TL/O7t7/PQm5v4NQujYEPLPMTLn9KVw6H7twwbTA==", - "license": "MIT", - "peerDependencies": { - "expo-font": ">=14.0.4", - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/expo/node_modules/babel-preset-expo": { - "version": "54.0.7", - "resolved": "https://registry.npmjs.org/babel-preset-expo/-/babel-preset-expo-54.0.7.tgz", - "integrity": "sha512-JENWk0bvxW4I1ftveO8GRtX2t2TH6N4Z0TPvIHxroZ/4SswUfyNsUNbbP7Fm4erj3ar/JHGri5kTZ+s3xdjHZw==", - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.25.9", - "@babel/plugin-proposal-decorators": "^7.12.9", - "@babel/plugin-proposal-export-default-from": "^7.24.7", - "@babel/plugin-syntax-export-default-from": "^7.24.7", - "@babel/plugin-transform-class-static-block": "^7.27.1", - "@babel/plugin-transform-export-namespace-from": "^7.25.9", - "@babel/plugin-transform-flow-strip-types": "^7.25.2", - "@babel/plugin-transform-modules-commonjs": "^7.24.8", - "@babel/plugin-transform-object-rest-spread": "^7.24.7", - "@babel/plugin-transform-parameters": "^7.24.7", - "@babel/plugin-transform-private-methods": "^7.24.7", - "@babel/plugin-transform-private-property-in-object": "^7.24.7", - "@babel/plugin-transform-runtime": "^7.24.7", - "@babel/preset-react": "^7.22.15", - "@babel/preset-typescript": "^7.23.0", - "@react-native/babel-preset": "0.81.5", - "babel-plugin-react-compiler": "^1.0.0", - "babel-plugin-react-native-web": "~0.21.0", - "babel-plugin-syntax-hermes-parser": "^0.29.1", - "babel-plugin-transform-flow-enums": "^0.0.2", - "debug": "^4.3.4", - "resolve-from": "^5.0.0" - }, - "peerDependencies": { - "@babel/runtime": "^7.20.0", - "expo": "*", - "react-refresh": ">=0.14.0 <1.0.0" - }, - "peerDependenciesMeta": { - "@babel/runtime": { - "optional": true - }, - "expo": { - "optional": true - } - } - }, - "node_modules/expo/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/expo/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/expo/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==", - "license": "MIT" - }, - "node_modules/expo/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==", - "license": "MIT" - }, - "node_modules/expo/node_modules/expo-asset": { - "version": "12.0.9", - "resolved": "https://registry.npmjs.org/expo-asset/-/expo-asset-12.0.9.tgz", - "integrity": "sha512-vrdRoyhGhBmd0nJcssTSk1Ypx3Mbn/eXaaBCQVkL0MJ8IOZpAObAjfD5CTy8+8RofcHEQdh3wwZVCs7crvfOeg==", - "license": "MIT", - "dependencies": { - "@expo/image-utils": "^0.8.7", - "expo-constants": "~18.0.9" - }, - "peerDependencies": { - "expo": "*", - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo/node_modules/expo-constants": { - "version": "18.0.10", - "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-18.0.10.tgz", - "integrity": "sha512-Rhtv+X974k0Cahmvx6p7ER5+pNhBC0XbP1lRviL2J1Xl4sT2FBaIuIxF/0I0CbhOsySf0ksqc5caFweAy9Ewiw==", - "license": "MIT", - "dependencies": { - "@expo/config": "~12.0.10", - "@expo/env": "~2.0.7" - }, - "peerDependencies": { - "expo": "*", - "react-native": "*" - } - }, - "node_modules/expo/node_modules/expo-file-system": { - "version": "19.0.17", - "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-19.0.17.tgz", - "integrity": "sha512-WwaS01SUFrxBnExn87pg0sCTJjZpf2KAOzfImG0o8yhkU7fbYpihpl/oocXBEsNbj58a8hVt1Y4CVV5c1tzu/g==", - "license": "MIT", - "peerDependencies": { - "expo": "*", - "react-native": "*" - } - }, - "node_modules/expo/node_modules/expo-font": { - "version": "14.0.9", - "resolved": "https://registry.npmjs.org/expo-font/-/expo-font-14.0.9.tgz", - "integrity": "sha512-xCoQbR/36qqB6tew/LQ6GWICpaBmHLhg/Loix5Rku/0ZtNaXMJv08M9o1AcrdiGTn/Xf/BnLu6DgS45cWQEHZg==", - "license": "MIT", - "dependencies": { - "fontfaceobserver": "^2.1.0" - }, - "peerDependencies": { - "expo": "*", - "react": "*", - "react-native": "*" - } - }, - "node_modules/expo/node_modules/expo-keep-awake": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/expo-keep-awake/-/expo-keep-awake-15.0.7.tgz", - "integrity": "sha512-CgBNcWVPnrIVII5G54QDqoE125l+zmqR4HR8q+MQaCfHet+dYpS5vX5zii/RMayzGN4jPgA4XYIQ28ePKFjHoA==", - "license": "MIT", - "peerDependencies": { - "expo": "*", - "react": "*" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/expo/node_modules/hermes-estree": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.29.1.tgz", - "integrity": "sha512-jl+x31n4/w+wEqm0I2r4CMimukLbLQEYpisys5oCre611CI5fc9TxhqkBBCJ1edDG4Kza0f7CgNz8xVMLZQOmQ==", - "license": "MIT" - }, - "node_modules/expo/node_modules/hermes-parser": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.29.1.tgz", - "integrity": "sha512-xBHWmUtRC5e/UL0tI7Ivt2riA/YBq9+SiYFU7C1oBa/j2jYGlIF9043oak1F47ihuDIxQ5nbsKueYJDRY02UgA==", - "license": "MIT", - "dependencies": { - "hermes-estree": "0.29.1" - } - }, - "node_modules/expo/node_modules/picomatch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", - "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/expo/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/expo/node_modules/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==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/expo/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/exponential-backoff": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", - "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", - "license": "Apache-2.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==", - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", - "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause", - "peer": 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==", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "license": "Apache-2.0", - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fetch-blob": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", - "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "paypal", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "dependencies": { - "node-domexception": "^1.0.0", - "web-streams-polyfill": "^3.0.3" - }, - "engines": { - "node": "^12.20 || >= 14.13" - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/filter-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", - "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true, - "license": "ISC" - }, - "node_modules/flow-enums-runtime": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/flow-enums-runtime/-/flow-enums-runtime-0.0.6.tgz", - "integrity": "sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==", - "license": "MIT" - }, - "node_modules/fontfaceobserver": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/fontfaceobserver/-/fontfaceobserver-2.3.0.tgz", - "integrity": "sha512-6FPvD/IVyT4ZlNe7Wcn5Fb/4ChigpucKYSvD6a+0iMoLn2inpo711eyIcKjmDtE5XNcgAkSH9uN/nfAeZzHEfg==", - "license": "BSD-2-Clause" - }, - "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, - "license": "MIT", - "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==", - "license": "ISC", - "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.5", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", - "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", - "dev": true, - "license": "MIT", - "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/formdata-polyfill": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", - "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", - "license": "MIT", - "dependencies": { - "fetch-blob": "^3.1.2" - }, - "engines": { - "node": ">=12.20.0" - } - }, - "node_modules/freeport-async": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/freeport-async/-/freeport-async-2.0.0.tgz", - "integrity": "sha512-K7od3Uw45AJg00XUmy15+Hae2hOcgKcmN3/EF6Y7i01O0gaqiRx8sUSpsb9+BRNL8RPBrhzPsVfy8q9ADlJuWQ==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "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==", - "license": "ISC" - }, - "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, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "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==", - "dev": true, - "license": "MIT", - "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-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/getenv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/getenv/-/getenv-2.0.0.tgz", - "integrity": "sha512-VilgtJj/ALgGY77fiLam5iD336eSWi96Q15JSAG1zi8NRBysm3LXKdGnHb4m5cuyxvOLQQKWpBZAT6ni4FI2iQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "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==", - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-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==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true - }, - "node_modules/global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", - "license": "MIT", - "dependencies": { - "ini": "^1.3.4" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/globals": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz", - "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/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==", - "license": "ISC" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, - "license": "MIT" - }, - "node_modules/has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hermes-estree": { - "version": "0.32.0", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.32.0.tgz", - "integrity": "sha512-KWn3BqnlDOl97Xe1Yviur6NbgIZ+IP+UVSpshlZWkq+EtoHg6/cwiDj/osP9PCEgFE15KBm1O55JRwbMEm5ejQ==", - "license": "MIT" - }, - "node_modules/hermes-parser": { - "version": "0.32.0", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.32.0.tgz", - "integrity": "sha512-g4nBOWFpuiTqjR3LZdRxKUkij9iyveWeuks7INEsMX741f3r9xxrOe8TeQfUxtda0eXmiIFiMQzoeSQEno33Hw==", - "license": "MIT", - "dependencies": { - "hermes-estree": "0.32.0" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/hoist-non-react-statics/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "license": "MIT", - "peer": true - }, - "node_modules/hosted-git-info": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz", - "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==", - "license": "ISC", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/hosted-git-info/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==", - "license": "ISC" - }, - "node_modules/html-encoding-sniffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", - "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true, - "license": "MIT" - }, - "node_modules/html-parse-stringify": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz", - "integrity": "sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==", - "license": "MIT", - "dependencies": { - "void-elements": "3.1.0" - } - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "license": "MIT", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/i18next": { - "version": "25.6.2", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-25.6.2.tgz", - "integrity": "sha512-0GawNyVUw0yvJoOEBq1VHMAsqdM23XrHkMtl2gKEjviJQSLVXsrPqsoYAxBEugW5AB96I2pZkwRxyl8WZVoWdw==", - "funding": [ - { - "type": "individual", - "url": "https://locize.com" - }, - { - "type": "individual", - "url": "https://locize.com/i18next.html" - }, - { - "type": "individual", - "url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project" - } - ], - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.27.6" - }, - "peerDependencies": { - "typescript": "^5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/image-size": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", - "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", - "license": "MIT", - "dependencies": { - "queue": "6.0.2" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=16.x" - } - }, - "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, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/import-local": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", - "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", - "dev": true, - "license": "MIT", - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "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.", - "license": "ISC", - "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==", - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "license": "ISC" - }, - "node_modules/internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.4.tgz", - "integrity": "sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==", - "license": "MIT" - }, - "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, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "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, - "license": "MIT", - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "license": "ISC" - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-reports": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", - "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/iterator.prototype": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", - "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "get-proto": "^1.0.0", - "has-symbols": "^1.1.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", - "dev": true, - "license": "MIT", - "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", - "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.7.0", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-circus/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-circus/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-circus/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-circus/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", - "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@types/node": "*", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/jest-config/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-config/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/jest-config/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-config/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-config/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-config/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/jest-config/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/jest-config/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-config/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-diff/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-diff/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-diff/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-diff/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-diff/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", - "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-each/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-each/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-each/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-each/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", - "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/jsdom": "^20.0.0", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0", - "jsdom": "^20.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-expo": { - "version": "54.0.13", - "resolved": "https://registry.npmjs.org/jest-expo/-/jest-expo-54.0.13.tgz", - "integrity": "sha512-V0xefV7VJ9RD6v6Jo64I8RzQCchgEWVn6ip5r+u4TlgsGau0DA8CAqzitn4ShoSKlmjmpuaMqcGxeCz1p9Cfvg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@expo/config": "~12.0.10", - "@expo/json-file": "^10.0.7", - "@jest/create-cache-key-function": "^29.2.1", - "@jest/globals": "^29.2.1", - "babel-jest": "^29.2.1", - "jest-environment-jsdom": "^29.2.1", - "jest-snapshot": "^29.2.1", - "jest-watch-select-projects": "^2.0.0", - "jest-watch-typeahead": "2.2.1", - "json5": "^2.2.3", - "lodash": "^4.17.19", - "react-server-dom-webpack": "~19.0.0", - "react-test-renderer": "19.1.0", - "server-only": "^0.0.1", - "stacktrace-js": "^2.0.2" - }, - "bin": { - "jest": "bin/jest.js" - }, - "peerDependencies": { - "expo": "*", - "react-native": "*" - } - }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "license": "MIT", - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-leak-detector": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", - "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-matcher-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-matcher-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-matcher-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/jest-message-util/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-message-util/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-message-util/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==", - "license": "MIT" - }, - "node_modules/jest-message-util/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "license": "MIT", - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", - "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", - "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-resolve/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-resolve/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-resolve/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", - "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/environment": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-leak-detector": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-resolve": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-util": "^29.7.0", - "jest-watcher": "^29.7.0", - "jest-worker": "^29.7.0", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runner/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-runner/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runner/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runner/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-runner/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/jest-runner/node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/jest-runner/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runtime/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-runtime/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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/jest-runtime/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-runtime/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-runtime/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-runtime/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runtime/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/jest-runtime/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-snapshot": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", - "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "natural-compare": "^1.4.0", - "pretty-format": "^29.7.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-snapshot/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-snapshot/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-snapshot/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-util/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-util/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==", - "license": "MIT" - }, - "node_modules/jest-util/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", - "license": "MIT", - "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-validate/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-validate/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-validate/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==", - "license": "MIT" - }, - "node_modules/jest-validate/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-validate/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watch-select-projects": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/jest-watch-select-projects/-/jest-watch-select-projects-2.0.0.tgz", - "integrity": "sha512-j00nW4dXc2NiCW6znXgFLF9g8PJ0zP25cpQ1xRro/HU2GBfZQFZD0SoXnAlaoKkIY4MlfTMkKGbNXFpvCdjl1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.3.0", - "chalk": "^3.0.0", - "prompts": "^2.2.1" - } - }, - "node_modules/jest-watch-select-projects/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watch-select-projects/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watch-select-projects/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-watch-select-projects/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-watch-select-projects/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watch-select-projects/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watch-typeahead": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-2.2.1.tgz", - "integrity": "sha512-jYpYmUnTzysmVnwq49TAxlmtOAwp8QIqvZyoofQFn8fiWhEDZj33ZXzg3JA4nGnzWFm1hbWf3ADpteUokvXgFA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^6.0.0", - "chalk": "^4.0.0", - "jest-regex-util": "^29.0.0", - "jest-watcher": "^29.0.0", - "slash": "^5.0.0", - "string-length": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": "^14.17.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "jest": "^27.0.0 || ^28.0.0 || ^29.0.0" - } - }, - "node_modules/jest-watch-typeahead/node_modules/ansi-escapes": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.1.tgz", - "integrity": "sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watch-typeahead/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watch-typeahead/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-watch-typeahead/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-watch-typeahead/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-watch-typeahead/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watch-typeahead/node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watch-typeahead/node_modules/string-length": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", - "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", - "dev": true, - "license": "MIT", - "dependencies": { - "char-regex": "^2.0.0", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watch-typeahead/node_modules/string-length/node_modules/char-regex": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.2.tgz", - "integrity": "sha512-cbGOjAptfM2LVmWhwRFHEKTPkLwNddVmuqYZQt895yXwAsWsXObCG+YN4DGQ/JBtT4GP1a1lPPdio2z413LmTg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" - } - }, - "node_modules/jest-watch-typeahead/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-watcher/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-watcher/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jest-watcher/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/jest-watcher/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-watcher/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", - "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", - "license": "MIT", - "dependencies": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/jimp-compact": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/jimp-compact/-/jimp-compact-0.16.1.tgz", - "integrity": "sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww==", - "license": "MIT" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsc-safe-url": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/jsc-safe-url/-/jsc-safe-url-0.2.4.tgz", - "integrity": "sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==", - "license": "0BSD" - }, - "node_modules/jsdom": { - "version": "20.0.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", - "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "acorn": "^8.8.1", - "acorn-globals": "^7.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.2", - "decimal.js": "^10.4.2", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.1", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.2", - "parse5": "^7.1.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.2", - "w3c-xmlserializer": "^4.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0", - "ws": "^8.11.0", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/jsdom/node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/jsdom/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/jsdom/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "license": "ISC" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/lan-network": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/lan-network/-/lan-network-0.1.7.tgz", - "integrity": "sha512-mnIlAEMu4OyEvUNdzco9xpuB9YVcPkQec+QsgycBCtPZvEqWPCDPfbAE4OJMdBBWpZWtpCn1xw9jJYlwjWI5zQ==", - "license": "MIT", - "bin": { - "lan-network": "dist/lan-network-cli.js" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lighthouse-logger": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz", - "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==", - "license": "Apache-2.0", - "dependencies": { - "debug": "^2.6.9", - "marky": "^1.2.2" - } - }, - "node_modules/lighthouse-logger/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/lighthouse-logger/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/lightningcss": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz", - "integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==", - "license": "MPL-2.0", - "dependencies": { - "detect-libc": "^2.0.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "lightningcss-android-arm64": "1.30.2", - "lightningcss-darwin-arm64": "1.30.2", - "lightningcss-darwin-x64": "1.30.2", - "lightningcss-freebsd-x64": "1.30.2", - "lightningcss-linux-arm-gnueabihf": "1.30.2", - "lightningcss-linux-arm64-gnu": "1.30.2", - "lightningcss-linux-arm64-musl": "1.30.2", - "lightningcss-linux-x64-gnu": "1.30.2", - "lightningcss-linux-x64-musl": "1.30.2", - "lightningcss-win32-arm64-msvc": "1.30.2", - "lightningcss-win32-x64-msvc": "1.30.2" - } - }, - "node_modules/lightningcss-android-arm64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz", - "integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==", - "cpu": [ - "arm64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-arm64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz", - "integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==", - "cpu": [ - "arm64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-x64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz", - "integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-freebsd-x64": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz", - "integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz", - "integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==", - "cpu": [ - "arm" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz", - "integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==", - "cpu": [ - "arm64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz", - "integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==", - "cpu": [ - "arm64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz", - "integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-musl": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz", - "integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-arm64-msvc": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz", - "integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==", - "cpu": [ - "arm64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.30.2", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz", - "integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==", - "cpu": [ - "x64" - ], - "license": "MPL-2.0", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "license": "MIT" - }, - "node_modules/loader-runner": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz", - "integrity": "sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.11.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "license": "MIT" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", - "license": "MIT" - }, - "node_modules/log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "license": "MIT", - "dependencies": { - "chalk": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "license": "MIT", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "license": "BSD-3-Clause", - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/marky": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/marky/-/marky-1.3.0.tgz", - "integrity": "sha512-ocnPZQLNpvbedwTy9kNrQEsknEfgvcLMvOtz3sFeWApDq1MXH1TqkCIx58xlpESsfwQOnuBO9beyQuNGzVvuhQ==", - "license": "Apache-2.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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/memoize-one": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", - "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==", - "license": "MIT" - }, - "node_modules/merge-options": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/merge-options/-/merge-options-3.0.4.tgz", - "integrity": "sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==", - "license": "MIT", - "dependencies": { - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/metro": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro/-/metro-0.83.2.tgz", - "integrity": "sha512-HQgs9H1FyVbRptNSMy/ImchTTE5vS2MSqLoOo7hbDoBq6hPPZokwJvBMwrYSxdjQZmLXz2JFZtdvS+ZfgTc9yw==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.24.7", - "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.3", - "@babel/types": "^7.25.2", - "accepts": "^1.3.7", - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "connect": "^3.6.5", - "debug": "^4.4.0", - "error-stack-parser": "^2.0.6", - "flow-enums-runtime": "^0.0.6", - "graceful-fs": "^4.2.4", - "hermes-parser": "0.32.0", - "image-size": "^1.0.2", - "invariant": "^2.2.4", - "jest-worker": "^29.7.0", - "jsc-safe-url": "^0.2.2", - "lodash.throttle": "^4.1.1", - "metro-babel-transformer": "0.83.2", - "metro-cache": "0.83.2", - "metro-cache-key": "0.83.2", - "metro-config": "0.83.2", - "metro-core": "0.83.2", - "metro-file-map": "0.83.2", - "metro-resolver": "0.83.2", - "metro-runtime": "0.83.2", - "metro-source-map": "0.83.2", - "metro-symbolicate": "0.83.2", - "metro-transform-plugins": "0.83.2", - "metro-transform-worker": "0.83.2", - "mime-types": "^2.1.27", - "nullthrows": "^1.1.1", - "serialize-error": "^2.1.0", - "source-map": "^0.5.6", - "throat": "^5.0.0", - "ws": "^7.5.10", - "yargs": "^17.6.2" - }, - "bin": { - "metro": "src/cli.js" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-babel-transformer": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.83.2.tgz", - "integrity": "sha512-rirY1QMFlA1uxH3ZiNauBninwTioOgwChnRdDcbB4tgRZ+bGX9DiXoh9QdpppiaVKXdJsII932OwWXGGV4+Nlw==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.25.2", - "flow-enums-runtime": "^0.0.6", - "hermes-parser": "0.32.0", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-cache": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.83.2.tgz", - "integrity": "sha512-Z43IodutUZeIS7OTH+yQFjc59QlFJ6s5OvM8p2AP9alr0+F8UKr8ADzFzoGKoHefZSKGa4bJx7MZJLF6GwPDHQ==", - "license": "MIT", - "dependencies": { - "exponential-backoff": "^3.1.1", - "flow-enums-runtime": "^0.0.6", - "https-proxy-agent": "^7.0.5", - "metro-core": "0.83.2" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-cache-key": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.83.2.tgz", - "integrity": "sha512-3EMG/GkGKYoTaf5RqguGLSWRqGTwO7NQ0qXKmNBjr0y6qD9s3VBXYlwB+MszGtmOKsqE9q3FPrE5Nd9Ipv7rZw==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-config": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.83.2.tgz", - "integrity": "sha512-1FjCcdBe3e3D08gSSiU9u3Vtxd7alGH3x/DNFqWDFf5NouX4kLgbVloDDClr1UrLz62c0fHh2Vfr9ecmrOZp+g==", - "license": "MIT", - "dependencies": { - "connect": "^3.6.5", - "flow-enums-runtime": "^0.0.6", - "jest-validate": "^29.7.0", - "metro": "0.83.2", - "metro-cache": "0.83.2", - "metro-core": "0.83.2", - "metro-runtime": "0.83.2", - "yaml": "^2.6.1" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-core": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.83.2.tgz", - "integrity": "sha512-8DRb0O82Br0IW77cNgKMLYWUkx48lWxUkvNUxVISyMkcNwE/9ywf1MYQUE88HaKwSrqne6kFgCSA/UWZoUT0Iw==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6", - "lodash.throttle": "^4.1.1", - "metro-resolver": "0.83.2" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-file-map": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.83.2.tgz", - "integrity": "sha512-cMSWnEqZrp/dzZIEd7DEDdk72PXz6w5NOKriJoDN9p1TDQ5nAYrY2lHi8d6mwbcGLoSlWmpPyny9HZYFfPWcGQ==", - "license": "MIT", - "dependencies": { - "debug": "^4.4.0", - "fb-watchman": "^2.0.0", - "flow-enums-runtime": "^0.0.6", - "graceful-fs": "^4.2.4", - "invariant": "^2.2.4", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "nullthrows": "^1.1.1", - "walker": "^1.0.7" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-minify-terser": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.83.2.tgz", - "integrity": "sha512-zvIxnh7U0JQ7vT4quasKsijId3dOAWgq+ip2jF/8TMrPUqQabGrs04L2dd0haQJ+PA+d4VvK/bPOY8X/vL2PWw==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6", - "terser": "^5.15.0" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-resolver": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.83.2.tgz", - "integrity": "sha512-Yf5mjyuiRE/Y+KvqfsZxrbHDA15NZxyfg8pIk0qg47LfAJhpMVEX+36e6ZRBq7KVBqy6VDX5Sq55iHGM4xSm7Q==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-runtime": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.83.2.tgz", - "integrity": "sha512-nnsPtgRvFbNKwemqs0FuyFDzXLl+ezuFsUXDbX8o0SXOfsOPijqiQrf3kuafO1Zx1aUWf4NOrKJMAQP5EEHg9A==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.25.0", - "flow-enums-runtime": "^0.0.6" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-source-map": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.83.2.tgz", - "integrity": "sha512-5FL/6BSQvshIKjXOennt9upFngq2lFvDakZn5LfauIVq8+L4sxXewIlSTcxAtzbtjAIaXeOSVMtCJ5DdfCt9AA==", - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.25.3", - "@babel/traverse--for-generate-function-map": "npm:@babel/traverse@^7.25.3", - "@babel/types": "^7.25.2", - "flow-enums-runtime": "^0.0.6", - "invariant": "^2.2.4", - "metro-symbolicate": "0.83.2", - "nullthrows": "^1.1.1", - "ob1": "0.83.2", - "source-map": "^0.5.6", - "vlq": "^1.0.0" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-symbolicate": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.83.2.tgz", - "integrity": "sha512-KoU9BLwxxED6n33KYuQQuc5bXkIxF3fSwlc3ouxrrdLWwhu64muYZNQrukkWzhVKRNFIXW7X2iM8JXpi2heIPw==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6", - "invariant": "^2.2.4", - "metro-source-map": "0.83.2", - "nullthrows": "^1.1.1", - "source-map": "^0.5.6", - "vlq": "^1.0.0" - }, - "bin": { - "metro-symbolicate": "src/index.js" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-transform-plugins": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.83.2.tgz", - "integrity": "sha512-5WlW25WKPkiJk2yA9d8bMuZrgW7vfA4f4MBb9ZeHbTB3eIAoNN8vS8NENgG/X/90vpTB06X66OBvxhT3nHwP6A==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/template": "^7.25.0", - "@babel/traverse": "^7.25.3", - "flow-enums-runtime": "^0.0.6", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro-transform-worker": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.83.2.tgz", - "integrity": "sha512-G5DsIg+cMZ2KNfrdLnWMvtppb3+Rp1GMyj7Bvd9GgYc/8gRmvq1XVEF9XuO87Shhb03kFhGqMTgZerz3hZ1v4Q==", - "license": "MIT", - "dependencies": { - "@babel/core": "^7.25.2", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", - "@babel/types": "^7.25.2", - "flow-enums-runtime": "^0.0.6", - "metro": "0.83.2", - "metro-babel-transformer": "0.83.2", - "metro-cache": "0.83.2", - "metro-cache-key": "0.83.2", - "metro-minify-terser": "0.83.2", - "metro-source-map": "0.83.2", - "metro-transform-plugins": "0.83.2", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/metro/node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/metro/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/metro/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/metro/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/metro/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==", - "license": "MIT" - }, - "node_modules/metro/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/metro/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "license": "MIT", - "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==", - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/minizlib": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", - "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", - "license": "MIT", - "dependencies": { - "minipass": "^7.1.2" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mock-socket": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/mock-socket/-/mock-socket-9.3.1.tgz", - "integrity": "sha512-qxBgB7Qa2sEQgHFjj0dSigq7fX4k6Saisd5Nelwp2q8mlbAFh5dHV9JTTlF8viYJLSSWgMCZFUom8PJcMNBoJw==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/nested-error-stacks": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.0.1.tgz", - "integrity": "sha512-SrQrok4CATudVzBS7coSz26QRSmlK9TzzoFbeKfcPBUFPjcQM9Rqvr/DlJkOrwI/0KcgvMub1n1g5Jt9EgRn4A==", - "license": "MIT" - }, - "node_modules/nock": { - "version": "13.5.6", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.5.6.tgz", - "integrity": "sha512-o2zOYiCpzRqSzPj0Zt/dQ/DqZeYoaQ7TUonc/xUPjCGl9WeHpNbxgVvOquXYAaJzI0M9BXV3HTzG0p8IUAbBTQ==", - "license": "MIT", - "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "propagate": "^2.0.0" - }, - "engines": { - "node": ">= 10.13" - } - }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "deprecated": "Use your platform's native DOMException instead", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-fetch": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", - "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", - "license": "MIT", - "dependencies": { - "data-uri-to-buffer": "^4.0.0", - "fetch-blob": "^3.1.4", - "formdata-polyfill": "^4.0.10" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/node-fetch" - } - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "license": "(BSD-3-Clause OR GPL-2.0)", - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "license": "MIT" - }, - "node_modules/node-releases": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", - "license": "MIT" - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-package-arg": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.3.tgz", - "integrity": "sha512-sHGJy8sOC1YraBywpzQlIKBE4pBbGbiF95U6Auspzyem956E0+FtDtsx1ZxlOJkQCZ1AFXAY/yuvtFYrOxF+Bw==", - "license": "ISC", - "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^4.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nullthrows": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", - "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", - "license": "MIT" - }, - "node_modules/nwsapi": { - "version": "2.2.22", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.22.tgz", - "integrity": "sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/ob1": { - "version": "0.83.2", - "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.83.2.tgz", - "integrity": "sha512-XlK3w4M+dwd1g1gvHzVbxiXEbUllRONEgcF2uEO0zm4nxa0eKlh41c6N65q1xbiDOeKKda1tvNOAD33fNjyvCg==", - "license": "MIT", - "dependencies": { - "flow-enums-runtime": "^0.0.6" - }, - "engines": { - "node": ">=20.19.4" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", - "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "license": "MIT", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", - "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "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==", - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "license": "MIT", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ora": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz", - "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", - "license": "MIT", - "dependencies": { - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-spinners": "^2.0.0", - "log-symbols": "^2.2.0", - "strip-ansi": "^5.2.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/ora/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ora/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-locate/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "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==", - "license": "BlueOak-1.0.0" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-png": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-png/-/parse-png-2.1.0.tgz", - "integrity": "sha512-Nt/a5SfCLiTnQAjx3fHlqp8hRgTL3z7kTQZzvIMS9uCAepnCyjpdEc6M/sz69WqMBdaDBw9sF1F1UaHROYzGkQ==", - "license": "MIT", - "dependencies": { - "pngjs": "^3.3.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/parse5": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", - "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "dev": true, - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "license": "MIT" - }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/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==", - "license": "ISC" - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/plist": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", - "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", - "license": "MIT", - "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "base64-js": "^1.5.1", - "xmlbuilder": "^15.1.1" - }, - "engines": { - "node": ">=10.4.0" - } - }, - "node_modules/pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.4.49", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", - "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "license": "MIT", - "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/proc-log": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", - "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/promise": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", - "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", - "license": "MIT", - "dependencies": { - "asap": "~2.0.6" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "license": "MIT", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/prop-types/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "license": "MIT" - }, - "node_modules/propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" - }, - "funding": { - "url": "https://github.com/sponsors/lupomontero" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pure-rand": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", - "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ], - "license": "MIT" - }, - "node_modules/qrcode-terminal": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/qrcode-terminal/-/qrcode-terminal-0.11.0.tgz", - "integrity": "sha512-Uu7ii+FQy4Qf82G4xu7ShHhjhGahEpCWc3x8UavY3CTcWV+ufmmCtwkr7ZKsX42jdL0kr1B5FKUeqJvAn51jzQ==", - "bin": { - "qrcode-terminal": "bin/qrcode-terminal.js" - } - }, - "node_modules/query-string": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-7.1.3.tgz", - "integrity": "sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==", - "license": "MIT", - "dependencies": { - "decode-uri-component": "^0.2.2", - "filter-obj": "^1.1.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "license": "MIT", - "dependencies": { - "inherits": "~2.0.3" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/react": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", - "integrity": "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-devtools-core": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-6.1.5.tgz", - "integrity": "sha512-ePrwPfxAnB+7hgnEr8vpKxL9cmnp7F322t8oqcPshbIQQhDKgFDW4tjhF2wjVbdXF9O/nyuy3sQWd9JGpiLPvA==", - "license": "MIT", - "dependencies": { - "shell-quote": "^1.6.1", - "ws": "^7" - } - }, - "node_modules/react-dom": { - "version": "19.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz", - "integrity": "sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "scheduler": "^0.27.0" - }, - "peerDependencies": { - "react": "^19.2.0" - } - }, - "node_modules/react-dom/node_modules/scheduler": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", - "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/react-freeze": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/react-freeze/-/react-freeze-1.0.4.tgz", - "integrity": "sha512-r4F0Sec0BLxWicc7HEyo2x3/2icUTrRmDjaaRyzzn+7aDyFZliszMDOgLVwSnQnYENOlL1o569Ze2HZefk8clA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=17.0.0" - } - }, - "node_modules/react-i18next": { - "version": "16.3.3", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-16.3.3.tgz", - "integrity": "sha512-IaY2W+ueVd/fe7H6Wj2S4bTuLNChnajFUlZFfCTrTHWzGcOrUHlVzW55oXRSl+J51U8Onn6EvIhQ+Bar9FUcjw==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.27.6", - "html-parse-stringify": "^3.0.1", - "use-sync-external-store": "^1.6.0" - }, - "peerDependencies": { - "i18next": ">= 25.6.2", - "react": ">= 16.8.0", - "typescript": "^5" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "license": "MIT" - }, - "node_modules/react-native": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.81.5.tgz", - "integrity": "sha512-1w+/oSjEXZjMqsIvmkCRsOc8UBYv163bTWKTI8+1mxztvQPhCRYGTvZ/PL1w16xXHneIj/SLGfxWg2GWN2uexw==", - "license": "MIT", - "dependencies": { - "@jest/create-cache-key-function": "^29.7.0", - "@react-native/assets-registry": "0.81.5", - "@react-native/codegen": "0.81.5", - "@react-native/community-cli-plugin": "0.81.5", - "@react-native/gradle-plugin": "0.81.5", - "@react-native/js-polyfills": "0.81.5", - "@react-native/normalize-colors": "0.81.5", - "@react-native/virtualized-lists": "0.81.5", - "abort-controller": "^3.0.0", - "anser": "^1.4.9", - "ansi-regex": "^5.0.0", - "babel-jest": "^29.7.0", - "babel-plugin-syntax-hermes-parser": "0.29.1", - "base64-js": "^1.5.1", - "commander": "^12.0.0", - "flow-enums-runtime": "^0.0.6", - "glob": "^7.1.1", - "invariant": "^2.2.4", - "jest-environment-node": "^29.7.0", - "memoize-one": "^5.0.0", - "metro-runtime": "^0.83.1", - "metro-source-map": "^0.83.1", - "nullthrows": "^1.1.1", - "pretty-format": "^29.7.0", - "promise": "^8.3.0", - "react-devtools-core": "^6.1.5", - "react-refresh": "^0.14.0", - "regenerator-runtime": "^0.13.2", - "scheduler": "0.26.0", - "semver": "^7.1.3", - "stacktrace-parser": "^0.1.10", - "whatwg-fetch": "^3.0.0", - "ws": "^6.2.3", - "yargs": "^17.6.2" - }, - "bin": { - "react-native": "cli.js" - }, - "engines": { - "node": ">= 20.19.4" - }, - "peerDependencies": { - "@types/react": "^19.1.0", - "react": "^19.1.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-native-gesture-handler": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.29.1.tgz", - "integrity": "sha512-du3qmv0e3Sm7qsd9SfmHps+AggLiylcBBQ8ztz7WUtd8ZjKs5V3kekAbi9R2W9bRLSg47Ntp4GGMYZOhikQdZA==", - "license": "MIT", - "peer": true, - "dependencies": { - "@egjs/hammerjs": "^2.0.17", - "hoist-non-react-statics": "^3.3.0", - "invariant": "^2.2.4" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/react-native-is-edge-to-edge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/react-native-is-edge-to-edge/-/react-native-is-edge-to-edge-1.2.1.tgz", - "integrity": "sha512-FLbPWl/MyYQWz+KwqOZsSyj2JmLKglHatd3xLZWskXOpRaio4LfEDEz8E/A6uD8QoTHW6Aobw1jbEwK7KMgR7Q==", - "license": "MIT", - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/react-native-safe-area-context": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-5.6.2.tgz", - "integrity": "sha512-4XGqMNj5qjUTYywJqpdWZ9IG8jgkS3h06sfVjfw5yZQZfWnRFXczi0GnYyFyCc2EBps/qFmoCH8fez//WumdVg==", - "license": "MIT", - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/react-native-screens": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-4.18.0.tgz", - "integrity": "sha512-mRTLWL7Uc1p/RFNveEIIrhP22oxHduC2ZnLr/2iHwBeYpGXR0rJZ7Bgc0ktxQSHRjWTPT70qc/7yd4r9960PBQ==", - "license": "MIT", - "dependencies": { - "react-freeze": "^1.0.0", - "warn-once": "^0.1.0" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/react-native-url-polyfill": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-native-url-polyfill/-/react-native-url-polyfill-3.0.0.tgz", - "integrity": "sha512-aA5CiuUCUb/lbrliVCJ6lZ17/RpNJzvTO/C7gC/YmDQhTUoRD5q5HlJfwLWcxz4VgAhHwXKzhxH+wUN24tAdqg==", - "license": "MIT", - "dependencies": { - "whatwg-url-without-unicode": "8.0.0-3" - }, - "peerDependencies": { - "react-native": "*" - } - }, - "node_modules/react-native-vector-icons": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-10.3.0.tgz", - "integrity": "sha512-IFQ0RE57819hOUdFvgK4FowM5aMXg7C7XKsuGLevqXkkIJatc3QopN0wYrb2IrzUgmdpfP+QVIbI3S6h7M0btw==", - "deprecated": "react-native-vector-icons package has moved to a new model of per-icon-family packages. See the https://github.com/oblador/react-native-vector-icons/blob/master/MIGRATION.md on how to migrate", - "license": "MIT", - "dependencies": { - "prop-types": "^15.7.2", - "yargs": "^16.1.1" - }, - "bin": { - "fa-upgrade.sh": "bin/fa-upgrade.sh", - "fa5-upgrade": "bin/fa5-upgrade.sh", - "fa6-upgrade": "bin/fa6-upgrade.sh", - "generate-icon": "bin/generate-icon.js" - } - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/react-native-vector-icons/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT" - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT" - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/react-native-vector-icons/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==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/react-native-vector-icons/node_modules/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==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/react-native-vector-icons/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "license": "MIT", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/react-native-vector-icons/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/react-native/node_modules/@react-native/virtualized-lists": { - "version": "0.81.5", - "resolved": "https://registry.npmjs.org/@react-native/virtualized-lists/-/virtualized-lists-0.81.5.tgz", - "integrity": "sha512-UVXgV/db25OPIvwZySeToXD/9sKKhOdkcWmmf4Jh8iBZuyfML+/5CasaZ1E7Lqg6g3uqVQq75NqIwkYmORJMPw==", - "license": "MIT", - "dependencies": { - "invariant": "^2.2.4", - "nullthrows": "^1.1.1" - }, - "engines": { - "node": ">= 20.19.4" - }, - "peerDependencies": { - "@types/react": "^19.1.0", - "react": "*", - "react-native": "*" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-native/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==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/react-native/node_modules/commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/react-native/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/react-native/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/react-native/node_modules/ws": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz", - "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==", - "license": "MIT", - "dependencies": { - "async-limiter": "~1.0.0" - } - }, - "node_modules/react-refresh": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", - "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-server-dom-webpack": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/react-server-dom-webpack/-/react-server-dom-webpack-19.0.0.tgz", - "integrity": "sha512-hLug9KEXLc8vnU9lDNe2b2rKKDaqrp5gNiES4uyu2Up3FZfZJZmdwLFXlWzdA9gTB/6/cWduSB2K1Lfag2pSvw==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn-loose": "^8.3.0", - "neo-async": "^2.6.1", - "webpack-sources": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "peerDependencies": { - "react": "^19.0.0", - "react-dom": "^19.0.0", - "webpack": "^5.59.0" - } - }, - "node_modules/react-test-renderer": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-19.1.0.tgz", - "integrity": "sha512-jXkSl3CpvPYEF+p/eGDLB4sPoDX8pKkYvRl9+rR8HxLY0X04vW7hCm1/0zHoUSjPZ3bDa+wXWNTDVIw/R8aDVw==", - "dev": true, - "license": "MIT", - "dependencies": { - "react-is": "^19.1.0", - "scheduler": "^0.26.0" - }, - "peerDependencies": { - "react": "^19.1.0" - } - }, - "node_modules/react-test-renderer/node_modules/react-is": { - "version": "19.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.2.0.tgz", - "integrity": "sha512-x3Ax3kNSMIIkyVYhWPyO09bu0uttcAIoecO/um/rKGQ4EltYWVYtyiGkS/3xMynrbVQdS69Jhlv8FXUEZehlzA==", - "dev": true, - "license": "MIT" - }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "license": "MIT" - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz", - "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==", - "license": "MIT", - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "license": "MIT" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexpu-core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz", - "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==", - "license": "MIT", - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.2.2", - "regjsgen": "^0.8.0", - "regjsparser": "^0.13.0", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.2.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", - "license": "MIT" - }, - "node_modules/regjsparser": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz", - "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==", - "license": "BSD-2-Clause", - "dependencies": { - "jsesc": "~3.1.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requireg": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/requireg/-/requireg-0.2.2.tgz", - "integrity": "sha512-nYzyjnFcPNGR3lx9lwPPPnuQxv6JWEZd2Ci0u9opN7N5zUEPIhY/GbL3vMGOr2UXwEg9WwSyV9X9Y/kLFgPsOg==", - "dependencies": { - "nested-error-stacks": "~2.0.1", - "rc": "~1.2.7", - "resolve": "~1.7.1" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/requireg/node_modules/resolve": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz", - "integrity": "sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==", - "license": "MIT", - "dependencies": { - "path-parse": "^1.0.5" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.16.1", - "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-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-global": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz", - "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==", - "license": "MIT", - "dependencies": { - "global-dirs": "^0.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-workspace-root": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-workspace-root/-/resolve-workspace-root-2.0.0.tgz", - "integrity": "sha512-IsaBUZETJD5WsI11Wt8PKHwaIe45or6pwNc8yflvLJ4DWtImK9kuLoH5kUva/2Mmx/RdIyr4aONNSa2v9LTJsw==", - "license": "MIT" - }, - "node_modules/resolve.exports": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", - "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "license": "MIT", - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/restore-cursor/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "license": "ISC" - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/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", - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/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==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "license": "Apache-2.0", - "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, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "license": "MIT" - }, - "node_modules/sax": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz", - "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==", - "license": "BlueOak-1.0.0" - }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "dev": true, - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, - "node_modules/scale-ts": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/scale-ts/-/scale-ts-1.6.1.tgz", - "integrity": "sha512-PBMc2AWc6wSEqJYBDPcyCLUj9/tMKnLX70jLOSndMtcUoLQucP/DM0vnQo1wJAYjTrQiq8iG9rD0q6wFzgjH7g==", - "license": "MIT", - "optional": true - }, - "node_modules/scheduler": { - "version": "0.26.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", - "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==", - "license": "MIT" - }, - "node_modules/schema-utils": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", - "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "license": "MIT", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", - "license": "MIT", - "dependencies": { - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.19.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-static/node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/server-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/server-only/-/server-only-0.0.1.tgz", - "integrity": "sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==", - "dev": true, - "license": "MIT" - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "license": "ISC" - }, - "node_modules/sf-symbols-typescript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sf-symbols-typescript/-/sf-symbols-typescript-2.1.0.tgz", - "integrity": "sha512-ezT7gu/SHTPIOEEoG6TF+O0m5eewl0ZDAO4AtdBi5HjsrUI6JdCG17+Q8+aKp0heM06wZKApRCn5olNbs0Wb/A==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", - "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/simple-plist": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/simple-plist/-/simple-plist-1.3.1.tgz", - "integrity": "sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw==", - "license": "MIT", - "dependencies": { - "bplist-creator": "0.1.0", - "bplist-parser": "0.3.1", - "plist": "^3.0.5" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.4.tgz", - "integrity": "sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "license": "MIT" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/slugify": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", - "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/smoldot": { - "version": "2.0.26", - "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-2.0.26.tgz", - "integrity": "sha512-F+qYmH4z2s2FK+CxGj8moYcd1ekSIKH8ywkdqlOz88Dat35iB1DIYL11aILN46YSGMzQW/lbJNS307zBSDN5Ig==", - "license": "GPL-3.0-or-later WITH Classpath-exception-2.0", - "optional": true, - "dependencies": { - "ws": "^8.8.1" - } - }, - "node_modules/smoldot/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split-on-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", - "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "license": "BSD-3-Clause" - }, - "node_modules/stack-generator": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.10.tgz", - "integrity": "sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", - "license": "MIT" - }, - "node_modules/stacktrace-gps": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz", - "integrity": "sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "source-map": "0.5.6", - "stackframe": "^1.3.4" - } - }, - "node_modules/stacktrace-gps/node_modules/source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stacktrace-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", - "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", - "dev": true, - "license": "MIT", - "dependencies": { - "error-stack-parser": "^2.0.6", - "stack-generator": "^2.0.5", - "stacktrace-gps": "^3.0.4" - } - }, - "node_modules/stacktrace-parser": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz", - "integrity": "sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==", - "license": "MIT", - "dependencies": { - "type-fest": "^0.7.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "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, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/stream-buffers": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz", - "integrity": "sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==", - "license": "Unlicense", - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/strict-uri-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", - "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-length/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/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==", - "license": "MIT" - }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", - "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.6", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "regexp.prototype.flags": "^1.5.3", - "set-function-name": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.repeat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-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==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-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==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/structured-headers": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/structured-headers/-/structured-headers-0.4.1.tgz", - "integrity": "sha512-0MP/Cxx5SzeeZ10p/bZI0S6MpgD+yxAhi1BOQ34jgnMXsCq3j1t6tQnZu+KdlL7dvJTLT3g9xN8tl10TqgFMcg==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/sucrase/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks/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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks/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==", - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true, - "license": "MIT" - }, - "node_modules/tapable": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", - "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/tar": { - "version": "7.5.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", - "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/fs-minipass": "^4.0.0", - "chownr": "^3.0.0", - "minipass": "^7.1.2", - "minizlib": "^3.1.0", - "yallist": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/tar/node_modules/yallist": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", - "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", - "license": "BlueOak-1.0.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/terser": { - "version": "5.44.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.1.tgz", - "integrity": "sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==", - "license": "BSD-2-Clause", - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.15.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.14", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", - "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.25", - "jest-worker": "^27.4.5", - "schema-utils": "^4.3.0", - "serialize-javascript": "^6.0.2", - "terser": "^5.31.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/terser-webpack-plugin/node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "license": "MIT" - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "license": "ISC", - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/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==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "license": "MIT", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/throat": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", - "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", - "license": "MIT" - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "license": "BSD-3-Clause" - }, - "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==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "license": "MIT", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/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==", - "license": "Apache-2.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==", - "license": "0BSD" - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", - "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - "devOptional": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-eslint": { - "version": "8.47.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.47.0.tgz", - "integrity": "sha512-Lwe8i2XQ3WoMjua/r1PHrCTpkubPYJCAfOurtn+mtTzqB6jNd+14n9UN1bJ4s3F49x9ixAm0FLflB/JzQ57M8Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.47.0", - "@typescript-eslint/parser": "8.47.0", - "@typescript-eslint/typescript-estree": "8.47.0", - "@typescript-eslint/utils": "8.47.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.22.0.tgz", - "integrity": "sha512-hU/10obOIu62MGYjdskASR3CUAiYaFTtC9Pa6vHyf//mAipSvSQg6od2CnJswq7fvzNS3zJhxoRkgNVaHurWKw==", - "license": "MIT", - "engines": { - "node": ">=18.17" - } - }, - "node_modules/undici-types": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", - "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", - "license": "MIT" - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", - "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "license": "MIT", - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", - "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", - "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "license": "MIT", - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz", - "integrity": "sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/use-latest-callback": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/use-latest-callback/-/use-latest-callback-0.2.6.tgz", - "integrity": "sha512-FvRG9i1HSo0wagmX63Vrm8SnlUU3LMM3WyZkQ76RnslpBrX694AdG4A0zQBx2B3ZifFA0yv/BaEHGBnEax5rZg==", - "license": "MIT", - "peerDependencies": { - "react": ">=16.8" - } - }, - "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==", - "license": "MIT", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", - "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-to-istanbul": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", - "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", - "dev": true, - "license": "ISC", - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^2.0.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/validate-npm-package-name": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", - "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vlq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/vlq/-/vlq-1.0.1.tgz", - "integrity": "sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==", - "license": "MIT" - }, - "node_modules/void-elements": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", - "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", - "dev": true, - "license": "MIT", - "dependencies": { - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "license": "Apache-2.0", - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/warn-once": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/warn-once/-/warn-once-0.1.1.tgz", - "integrity": "sha512-VkQZJbO8zVImzYFteBXvBOZEl1qL175WH8VmZcxF2fZAoudNhNDvHi+doCaAEdU2l2vtcIwa2zn0QK5+I1HQ3Q==", - "license": "MIT" - }, - "node_modules/watchpack": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", - "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "license": "MIT", - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack": { - "version": "5.103.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.103.0.tgz", - "integrity": "sha512-HU1JOuV1OavsZ+mfigY0j8d1TgQgbZ6M+J75zDkpEAwYeXjWSqrGJtgnPblJjd/mAyTNQ7ygw0MiKOn6etz8yw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint-scope": "^3.7.7", - "@types/estree": "^1.0.8", - "@types/json-schema": "^7.0.15", - "@webassemblyjs/ast": "^1.14.1", - "@webassemblyjs/wasm-edit": "^1.14.1", - "@webassemblyjs/wasm-parser": "^1.14.1", - "acorn": "^8.15.0", - "acorn-import-phases": "^1.0.3", - "browserslist": "^4.26.3", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.3", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.3.1", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^4.3.3", - "tapable": "^2.3.0", - "terser-webpack-plugin": "^5.3.11", - "watchpack": "^2.4.4", - "webpack-sources": "^3.3.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-sources": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.3.tgz", - "integrity": "sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/webpack/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/whatwg-encoding": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-fetch": { - "version": "3.6.20", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", - "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", - "license": "MIT" - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-url-without-unicode": { - "version": "8.0.0-3", - "resolved": "https://registry.npmjs.org/whatwg-url-without-unicode/-/whatwg-url-without-unicode-8.0.0-3.tgz", - "integrity": "sha512-HoKuzZrUlgpz35YO27XgD28uh/WJH4B0+3ttFqRo//lmq+9T/mIOJ6kqmINI9HpUpz1imRC/nR/lxKpJiv0uig==", - "license": "MIT", - "dependencies": { - "buffer": "^5.4.3", - "punycode": "^2.1.1", - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/whatwg-url/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "license": "MIT", - "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/wonka": { - "version": "6.3.5", - "resolved": "https://registry.npmjs.org/wonka/-/wonka-6.3.5.tgz", - "integrity": "sha512-SSil+ecw6B4/Dm7Pf2sAshKQ5hWFvfyGlfPbEd6A14dOH6VDjrmbY86u6nZvy9omGwwIPFR8V41+of1EezgoUw==", - "license": "MIT" - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi-cjs/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==", - "license": "MIT" - }, - "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==", - "license": "MIT" - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?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==", - "license": "ISC" - }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/write-file-atomic/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "license": "ISC" - }, - "node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xcode": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz", - "integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==", - "license": "Apache-2.0", - "dependencies": { - "simple-plist": "^1.1.0", - "uuid": "^7.0.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12" - } - }, - "node_modules/xml2js": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.0.tgz", - "integrity": "sha512-eLTh0kA8uHceqesPqSE+VvO1CDDJWMwlQfB6LuN6T8w6MaDJ8Txm8P7s5cHD0miF0V+GGTZrDQfxPZQVsur33w==", - "license": "MIT", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xml2js/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "license": "MIT", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - "license": "MIT", - "engines": { - "node": ">=8.0" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true, - "license": "MIT" - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "license": "ISC" - }, - "node_modules/yaml": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", - "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - } - }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs/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==", - "license": "MIT" - }, - "node_modules/yargs/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==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/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==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/zod-to-json-schema": { - "version": "3.24.6", - "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.24.6.tgz", - "integrity": "sha512-h/z3PKvcTcTetyjl1fkj79MHNEjm+HpD6NXheWjzOekY7kV+lwDYnHw+ivHkijnCSMz1yJaWBD9vu/Fcmk+vEg==", - "license": "ISC", - "peerDependencies": { - "zod": "^3.24.1" - } - }, - "node_modules/zod-validation-error": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", - "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "zod": "^3.25.0 || ^4.0.0" - } - } - } -} diff --git a/mobile/package.json b/mobile/package.json index dee5daad..382ab93a 100644 --- a/mobile/package.json +++ b/mobile/package.json @@ -5,8 +5,24 @@ "main": "index.ts", "scripts": { "start": "expo start", - "android": "expo start --android", - "ios": "expo start --ios", + "dev": "cp .env.development .env && expo start --clear", + "dev:tunnel": "cp .env.development .env && expo start --tunnel --clear", + "dev:android": "cp .env.development .env && expo run:android", + "dev:ios": "cp .env.development .env && expo run:ios", + "dev:web": "cp .env.development .env && expo start --web", + "prod": "cp .env.production .env && expo start --no-dev --minify", + "build:dev": "cp .env.development .env && eas build --profile development", + "build:preview": "cp .env.production .env && eas build --profile preview", + "build:prod": "cp .env.production .env && eas build --profile production", + "build:en": "EXPO_PUBLIC_DEFAULT_LANGUAGE=en eas build --platform android --profile production", + "build:tr": "EXPO_PUBLIC_DEFAULT_LANGUAGE=tr eas build --platform android --profile production", + "build:kmr": "EXPO_PUBLIC_DEFAULT_LANGUAGE=kmr eas build --platform android --profile production", + "build:ckb": "EXPO_PUBLIC_DEFAULT_LANGUAGE=ckb eas build --platform android --profile production", + "build:ar": "EXPO_PUBLIC_DEFAULT_LANGUAGE=ar eas build --platform android --profile production", + "build:fa": "EXPO_PUBLIC_DEFAULT_LANGUAGE=fa eas build --platform android --profile production", + "build:all": "npm run build:en && npm run build:tr && npm run build:kmr && npm run build:ckb && npm run build:ar && npm run build:fa", + "android": "expo run:android", + "ios": "expo run:ios", "web": "expo start --web", "test": "jest", "test:watch": "jest --watch", @@ -15,36 +31,73 @@ "lint:fix": "eslint . --fix" }, "dependencies": { - "@pezkuwi/api": "^16.5.2", - "@pezkuwi/keyring": "^14.0.5", - "@pezkuwi/util": "^14.0.5", - "@pezkuwi/util-crypto": "^14.0.5", + "@babel/runtime": "^7.28.4", + "@pezkuwi/api": "16.5.9", + "@pezkuwi/keyring": "14.0.11", + "@pezkuwi/types": "16.5.9", + "@pezkuwi/util": "14.0.11", + "@pezkuwi/util-crypto": "14.0.11", "@react-native-async-storage/async-storage": "^2.2.0", + "@react-native-picker/picker": "^2.9.2", "@react-navigation/bottom-tabs": "^7.8.5", "@react-navigation/native": "^7.1.20", "@react-navigation/stack": "^7.6.4", + "@supabase/supabase-js": "^2.90.1", + "buffer": "^6.0.3", "expo": "~54.0.23", + "expo-image-picker": "~17.0.10", "expo-linear-gradient": "^15.0.7", "expo-local-authentication": "^17.0.7", "expo-secure-store": "^15.0.7", "expo-status-bar": "~3.0.8", "i18next": "^25.6.2", + "invariant": "^2.2.4", + "metro-runtime": "^0.81.0", "react": "19.1.0", + "react-dom": "19.1.0", "react-i18next": "^16.3.3", "react-native": "0.81.5", + "react-native-gesture-handler": "~2.28.0", + "react-native-get-random-values": "~1.11.0", + "react-native-qrcode-svg": "^6.3.11", "react-native-safe-area-context": "^5.6.2", - "react-native-screens": "^4.18.0", + "react-native-screens": "~4.16.0", + "react-native-svg": "15.12.1", "react-native-url-polyfill": "^3.0.0", - "react-native-vector-icons": "^10.3.0" + "react-native-vector-icons": "^10.3.0", + "react-native-web": "^0.21.0", + "react-native-webview": "13.15.0", + "react-refresh": "^0.14.2", + "text-encoding": "^0.7.0" + }, + "overrides": { + "@pezkuwi/api-augment": "16.5.9", + "@pezkuwi/api-base": "16.5.9", + "@pezkuwi/api-derive": "16.5.9", + "@pezkuwi/rpc-augment": "16.5.9", + "@pezkuwi/rpc-core": "16.5.9", + "@pezkuwi/rpc-provider": "16.5.9", + "@pezkuwi/types": "16.5.9", + "@pezkuwi/types-augment": "16.5.9", + "@pezkuwi/types-codec": "16.5.9", + "@pezkuwi/types-create": "16.5.9", + "@pezkuwi/types-known": "16.5.9", + "@pezkuwi/networks": "14.0.11", + "@pezkuwi/keyring": "14.0.11", + "@pezkuwi/util": "14.0.11", + "@pezkuwi/util-crypto": "14.0.11" }, "devDependencies": { - "@babel/runtime": "^7.28.4", + "@expo/ngrok": "^4.1.0", "@testing-library/jest-native": "^5.4.3", "@testing-library/react-native": "^13.3.3", + "@types/invariant": "^2", "@types/jest": "^29.5.12", - "@types/react": "~19.1.0", + "@types/react": "~19.1.10", + "@types/text-encoding": "^0", "@typescript-eslint/eslint-plugin": "^8.47.0", "@typescript-eslint/parser": "^8.47.0", + "babel-preset-expo": "~54.0.9", "eslint": "^9.39.1", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^7.0.1", diff --git a/mobile/run_sql.sh b/mobile/run_sql.sh new file mode 100755 index 00000000..86a4f2b9 --- /dev/null +++ b/mobile/run_sql.sh @@ -0,0 +1,71 @@ +#!/bin/bash + +# Supabase Database Connection +DB_HOST="db.vsyrpfiwhjvahofxwytr.supabase.co" +DB_PORT="5432" +DB_NAME="postgres" +DB_USER="postgres" +DB_PASS="SqM210305yBkB@#nm90" + +CONNECTION_STRING="postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}" + +echo "======================================================================" +echo "🚀 Executing SQL Scripts on Supabase" +echo "======================================================================" + +# Check if psql is available +if ! command -v psql &> /dev/null; then + echo "" + echo "❌ psql not found. Installing PostgreSQL client..." + echo "" + + # Try to install psql + if command -v apt-get &> /dev/null; then + sudo apt-get update && sudo apt-get install -y postgresql-client + elif command -v yum &> /dev/null; then + sudo yum install -y postgresql + else + echo "❌ Cannot install PostgreSQL client automatically" + echo "" + echo "📋 Manual Setup Required:" + echo " Go to: https://app.supabase.com/project/vsyrpfiwhjvahofxwytr/sql" + echo " Run the SQL from: QUICK_SETUP_GUIDE.md" + echo "" + exit 1 + fi +fi + +echo "" +echo "📝 Step 1: Fixing schema compatibility..." +echo "======================================================================" + +psql "${CONNECTION_STRING}" -f FIX_SCHEMA_COMPATIBILITY.sql + +if [ $? -eq 0 ]; then + echo "✅ Schema compatibility fix completed!" +else + echo "❌ Error in schema fix" + exit 1 +fi + +echo "" +echo "📝 Step 2: Creating missing tables..." +echo "======================================================================" + +psql "${CONNECTION_STRING}" -f SUPABASE_SCHEMA.sql + +if [ $? -eq 0 ]; then + echo "✅ Table creation completed!" +else + echo "❌ Error in table creation" + exit 1 +fi + +echo "" +echo "======================================================================" +echo "🎉 ALL SQL SCRIPTS EXECUTED SUCCESSFULLY!" +echo "======================================================================" +echo "" +echo "📝 Next step: Verify schema compatibility" +echo " node check_schema_compatibility.cjs" +echo "" diff --git a/mobile/src/__tests__/integration/governance-integration.test.tsx b/mobile/src/__tests__/integration/governance-integration.test.tsx new file mode 100644 index 00000000..4c35da37 --- /dev/null +++ b/mobile/src/__tests__/integration/governance-integration.test.tsx @@ -0,0 +1,250 @@ +/** + * Governance Integration Tests + * + * End-to-end tests for governance features + */ + +import React from 'react'; +import { render, waitFor, fireEvent } from '@testing-library/react-native'; +import { NavigationContainer } from '@react-navigation/native'; +import TreasuryScreen from '../../screens/governance/TreasuryScreen'; +import ProposalsScreen from '../../screens/governance/ProposalsScreen'; +import ElectionsScreen from '../../screens/governance/ElectionsScreen'; +import { PezkuwiProvider } from '../../contexts/PezkuwiContext'; +import { ApiPromise, WsProvider } from '@polkadot/api'; + +// Integration tests use real blockchain connection +describe('Governance Integration Tests', () => { + let api: ApiPromise; + + beforeAll(async () => { + // Connect to local zombinet + const wsProvider = new WsProvider('ws://127.0.0.1:9944'); + api = await ApiPromise.create({ provider: wsProvider }); + }, 30000); // 30 second timeout for blockchain connection + + afterAll(async () => { + await api?.disconnect(); + }); + + describe('Treasury Integration', () => { + it('should fetch real treasury balance from blockchain', async () => { + const { getByText } = render( + + + + ); + + // Wait for blockchain data to load + await waitFor( + () => { + // Treasury balance should be displayed (even if 0) + expect(getByText(/HEZ/i)).toBeTruthy(); + }, + { timeout: 10000 } + ); + }); + + it('should handle real blockchain connection errors', async () => { + // Temporarily disconnect + await api.disconnect(); + + const { getByText } = render( + + + + ); + + await waitFor(() => { + // Should show error or empty state + expect( + getByText(/No proposals found/i) || getByText(/Error/i) + ).toBeTruthy(); + }); + + // Reconnect for other tests + const wsProvider = new WsProvider('ws://127.0.0.1:9944'); + api = await ApiPromise.create({ provider: wsProvider }); + }); + }); + + describe('Proposals Integration', () => { + it('should fetch real referenda from democracy pallet', async () => { + const { getByText, queryByText } = render( + + + + ); + + await waitFor( + () => { + // Should either show referenda or empty state + expect( + queryByText(/Referendum/i) || queryByText(/No proposals found/i) + ).toBeTruthy(); + }, + { timeout: 10000 } + ); + }); + + it('should display real vote counts', async () => { + const referenda = await api.query.democracy.referendumInfoOf.entries(); + + if (referenda.length > 0) { + const { getByText } = render( + + + + ); + + await waitFor( + () => { + // Should show vote percentages + expect(getByText(/%/)).toBeTruthy(); + }, + { timeout: 10000 } + ); + } + }); + }); + + describe('Elections Integration', () => { + it('should fetch real commission proposals', async () => { + const { queryByText } = render( + + + + ); + + await waitFor( + () => { + // Should either show elections or empty state + expect( + queryByText(/Election/i) || queryByText(/No elections available/i) + ).toBeTruthy(); + }, + { timeout: 10000 } + ); + }); + }); + + describe('Cross-Feature Integration', () => { + it('should maintain blockchain connection across screens', async () => { + // Test that API connection is shared + const treasuryBalance = await api.query.treasury?.treasury(); + const referenda = await api.query.democracy.referendumInfoOf.entries(); + const proposals = await api.query.dynamicCommissionCollective.proposals(); + + // All queries should succeed without creating new connections + expect(treasuryBalance).toBeDefined(); + expect(referenda).toBeDefined(); + expect(proposals).toBeDefined(); + }); + + it('should handle simultaneous data fetching', async () => { + // Render all governance screens at once + const treasury = render( + + + + ); + + const proposals = render( + + + + ); + + const elections = render( + + + + ); + + // All should load without conflicts + await Promise.all([ + waitFor(() => expect(treasury.queryByText(/Treasury/i)).toBeTruthy(), { + timeout: 10000, + }), + waitFor(() => expect(proposals.queryByText(/Proposals/i)).toBeTruthy(), { + timeout: 10000, + }), + waitFor(() => expect(elections.queryByText(/Elections/i)).toBeTruthy(), { + timeout: 10000, + }), + ]); + }); + }); + + describe('Real-time Updates', () => { + it('should receive blockchain updates', async () => { + const { rerender } = render( + + + + ); + + // Subscribe to balance changes + const unsubscribe = await api.query.treasury.treasury((balance: any) => { + // Balance updates should trigger rerender + rerender( + + + + ); + }); + + // Wait for subscription to be active + await waitFor(() => { + expect(unsubscribe).toBeDefined(); + }); + + // Cleanup + if (unsubscribe) { + unsubscribe(); + } + }, 15000); + }); + + describe('Performance', () => { + it('should load treasury data within 5 seconds', async () => { + const startTime = Date.now(); + + const { getByText } = render( + + + + ); + + await waitFor(() => { + expect(getByText(/Treasury/i)).toBeTruthy(); + }); + + const loadTime = Date.now() - startTime; + expect(loadTime).toBeLessThan(5000); + }); + + it('should handle rapid screen transitions', async () => { + const screens = [TreasuryScreen, ProposalsScreen, ElectionsScreen]; + + for (const Screen of screens) { + const { unmount } = render( + + + + ); + + await waitFor(() => { + // Screen should render + expect(true).toBe(true); + }); + + // Quickly unmount and move to next screen + unmount(); + } + + // No memory leaks or crashes + expect(true).toBe(true); + }); + }); +}); diff --git a/mobile/src/__tests__/test-utils.tsx b/mobile/src/__tests__/test-utils.tsx index d875968c..1430606c 100644 --- a/mobile/src/__tests__/test-utils.tsx +++ b/mobile/src/__tests__/test-utils.tsx @@ -3,7 +3,7 @@ import { render, RenderOptions } from '@testing-library/react-native'; // Mock all contexts with simple implementations const MockAuthProvider = ({ children }: { children: React.ReactNode }) => <>{children}; -const MockPolkadotProvider = ({ children }: { children: React.ReactNode }) => <>{children}; +const MockPezkuwiProvider = ({ children }: { children: React.ReactNode }) => <>{children}; const MockLanguageProvider = ({ children }: { children: React.ReactNode }) => <>{children}; const MockBiometricAuthProvider = ({ children }: { children: React.ReactNode }) => <>{children}; @@ -11,13 +11,13 @@ const MockBiometricAuthProvider = ({ children }: { children: React.ReactNode }) const AllTheProviders = ({ children }: { children: React.ReactNode }) => { return ( - + {children} - + ); }; diff --git a/mobile/src/components/AvatarPickerModal.tsx b/mobile/src/components/AvatarPickerModal.tsx new file mode 100644 index 00000000..65aeb68c --- /dev/null +++ b/mobile/src/components/AvatarPickerModal.tsx @@ -0,0 +1,512 @@ +import React, { useState } from 'react'; +import { + View, + Text, + Modal, + TouchableOpacity, + StyleSheet, + ScrollView, + Image, + Alert, + ActivityIndicator, + Platform, +} from 'react-native'; +import * as ImagePicker from 'expo-image-picker'; +import { KurdistanColors } from '../theme/colors'; +import { useAuth } from '../contexts/AuthContext'; +import { supabase } from '../lib/supabase'; + +// Avatar pool - Kurdish/Middle Eastern themed avatars +const AVATAR_POOL = [ + { id: 'avatar1', emoji: '👨🏻', label: 'Man 1' }, + { id: 'avatar2', emoji: '👨🏼', label: 'Man 2' }, + { id: 'avatar3', emoji: '👨🏽', label: 'Man 3' }, + { id: 'avatar4', emoji: '👨🏾', label: 'Man 4' }, + { id: 'avatar5', emoji: '👩🏻', label: 'Woman 1' }, + { id: 'avatar6', emoji: '👩🏼', label: 'Woman 2' }, + { id: 'avatar7', emoji: '👩🏽', label: 'Woman 3' }, + { id: 'avatar8', emoji: '👩🏾', label: 'Woman 4' }, + { id: 'avatar9', emoji: '🧔🏻', label: 'Beard 1' }, + { id: 'avatar10', emoji: '🧔🏼', label: 'Beard 2' }, + { id: 'avatar11', emoji: '🧔🏽', label: 'Beard 3' }, + { id: 'avatar12', emoji: '🧔🏾', label: 'Beard 4' }, + { id: 'avatar13', emoji: '👳🏻‍♂️', label: 'Turban 1' }, + { id: 'avatar14', emoji: '👳🏼‍♂️', label: 'Turban 2' }, + { id: 'avatar15', emoji: '👳🏽‍♂️', label: 'Turban 3' }, + { id: 'avatar16', emoji: '🧕🏻', label: 'Hijab 1' }, + { id: 'avatar17', emoji: '🧕🏼', label: 'Hijab 2' }, + { id: 'avatar18', emoji: '🧕🏽', label: 'Hijab 3' }, + { id: 'avatar19', emoji: '👴🏻', label: 'Elder 1' }, + { id: 'avatar20', emoji: '👴🏼', label: 'Elder 2' }, + { id: 'avatar21', emoji: '👵🏻', label: 'Elder Woman 1' }, + { id: 'avatar22', emoji: '👵🏼', label: 'Elder Woman 2' }, + { id: 'avatar23', emoji: '👦🏻', label: 'Boy 1' }, + { id: 'avatar24', emoji: '👦🏼', label: 'Boy 2' }, + { id: 'avatar25', emoji: '👧🏻', label: 'Girl 1' }, + { id: 'avatar26', emoji: '👧🏼', label: 'Girl 2' }, +]; + +interface AvatarPickerModalProps { + visible: boolean; + onClose: () => void; + currentAvatar?: string; + onAvatarSelected?: (avatarUrl: string) => void; +} + +const AvatarPickerModal: React.FC = ({ + visible, + onClose, + currentAvatar, + onAvatarSelected, +}) => { + const { user } = useAuth(); + const [selectedAvatar, setSelectedAvatar] = useState(currentAvatar || null); + const [uploadedImageUri, setUploadedImageUri] = useState(null); + const [isSaving, setIsSaving] = useState(false); + const [isUploading, setIsUploading] = useState(false); + + const handleAvatarSelect = (avatarId: string) => { + setSelectedAvatar(avatarId); + setUploadedImageUri(null); // Clear uploaded image when selecting from pool + }; + + const requestPermissions = async () => { + if (Platform.OS !== 'web') { + const { status } = await ImagePicker.requestMediaLibraryPermissionsAsync(); + if (status !== 'granted') { + Alert.alert( + 'Permission Required', + 'Sorry, we need camera roll permissions to upload your photo!' + ); + return false; + } + } + return true; + }; + + const handlePickImage = async () => { + const hasPermission = await requestPermissions(); + if (!hasPermission) return; + + try { + const result = await ImagePicker.launchImageLibraryAsync({ + mediaTypes: 'images', + allowsEditing: true, + aspect: [1, 1], + quality: 0.8, + }); + + if (!result.canceled && result.assets[0]) { + setIsUploading(true); + const imageUri = result.assets[0].uri; + + if (__DEV__) console.log('[AvatarPicker] Uploading image:', imageUri); + + // Upload to Supabase Storage + const uploadedUrl = await uploadImageToSupabase(imageUri); + + setIsUploading(false); + + if (uploadedUrl) { + if (__DEV__) console.log('[AvatarPicker] Upload successful:', uploadedUrl); + setUploadedImageUri(uploadedUrl); + setSelectedAvatar(null); // Clear emoji selection + Alert.alert('Success', 'Photo uploaded successfully!'); + } else { + if (__DEV__) console.error('[AvatarPicker] Upload failed: no URL returned'); + Alert.alert('Upload Failed', 'Could not upload your photo. Please check your internet connection and try again.'); + } + } + } catch (error) { + setIsUploading(false); + if (__DEV__) console.error('[AvatarPicker] Error picking image:', error); + Alert.alert('Error', 'Failed to pick image. Please try again.'); + } + }; + + const uploadImageToSupabase = async (imageUri: string): Promise => { + if (!user) { + if (__DEV__) console.error('[AvatarPicker] No user found'); + return null; + } + + try { + if (__DEV__) console.log('[AvatarPicker] Fetching image blob...'); + // Convert image URI to blob for web, or use file for native + const response = await fetch(imageUri); + const blob = await response.blob(); + if (__DEV__) console.log('[AvatarPicker] Blob size:', blob.size, 'bytes'); + + // Generate unique filename + const fileExt = imageUri.split('.').pop()?.toLowerCase() || 'jpg'; + const fileName = `${user.id}-${Date.now()}.${fileExt}`; + const filePath = `avatars/${fileName}`; + if (__DEV__) console.log('[AvatarPicker] Uploading to:', filePath); + + // Upload to Supabase Storage + const { data: uploadData, error: uploadError } = await supabase.storage + .from('profiles') + .upload(filePath, blob, { + contentType: `image/${fileExt}`, + upsert: false, + }); + + if (uploadError) { + if (__DEV__) console.error('[AvatarPicker] Upload error:', uploadError); + return null; + } + + if (__DEV__) console.log('[AvatarPicker] Upload successful:', uploadData); + + // Get public URL + const { data } = supabase.storage + .from('profiles') + .getPublicUrl(filePath); + + if (__DEV__) console.log('[AvatarPicker] Public URL:', data.publicUrl); + + return data.publicUrl; + } catch (error) { + if (__DEV__) console.error('[AvatarPicker] Error uploading to Supabase:', error); + return null; + } + }; + + const handleSave = async () => { + const avatarToSave = uploadedImageUri || selectedAvatar; + + if (!avatarToSave || !user) { + Alert.alert('Error', 'Please select an avatar or upload a photo'); + return; + } + + if (__DEV__) console.log('[AvatarPicker] Saving avatar:', avatarToSave); + + setIsSaving(true); + + try { + // Update avatar in Supabase profiles table + const { data, error } = await supabase + .from('profiles') + .update({ avatar_url: avatarToSave }) + .eq('id', user.id) + .select(); + + if (error) { + if (__DEV__) console.error('[AvatarPicker] Save error:', error); + throw error; + } + + if (__DEV__) console.log('[AvatarPicker] Avatar saved successfully:', data); + + Alert.alert('Success', 'Avatar updated successfully!'); + + if (onAvatarSelected) { + onAvatarSelected(avatarToSave); + } + + onClose(); + } catch (error) { + if (__DEV__) console.error('[AvatarPicker] Error updating avatar:', error); + Alert.alert('Error', 'Failed to update avatar. Please try again.'); + } finally { + setIsSaving(false); + } + }; + + return ( + + + + {/* Header */} + + Choose Your Avatar + + + + + + {/* Upload Photo Button */} + + + {isUploading ? ( + + ) : ( + <> + 📷 + Upload Your Photo + + )} + + + {/* Uploaded Image Preview */} + {uploadedImageUri && ( + + + setUploadedImageUri(null)} + > + + + + )} + + + {/* Divider */} + + + OR CHOOSE FROM POOL + + + + {/* Avatar Grid */} + + + {AVATAR_POOL.map((avatar) => ( + handleAvatarSelect(avatar.id)} + > + {avatar.emoji} + {selectedAvatar === avatar.id && ( + + + + )} + + ))} + + + + {/* Footer Actions */} + + + Cancel + + + {isSaving ? ( + + ) : ( + Save Avatar + )} + + + + + + ); +}; + +const styles = StyleSheet.create({ + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0, 0, 0, 0.5)', + justifyContent: 'flex-end', + }, + modalContainer: { + backgroundColor: KurdistanColors.spi, + borderTopLeftRadius: 24, + borderTopRightRadius: 24, + maxHeight: '80%', + paddingBottom: 20, + }, + modalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + padding: 20, + borderBottomWidth: 1, + borderBottomColor: '#E0E0E0', + }, + modalTitle: { + fontSize: 20, + fontWeight: 'bold', + color: KurdistanColors.reş, + }, + closeButton: { + width: 32, + height: 32, + borderRadius: 16, + backgroundColor: '#F0F0F0', + justifyContent: 'center', + alignItems: 'center', + }, + closeButtonText: { + fontSize: 18, + color: '#666', + }, + avatarScroll: { + padding: 20, + }, + avatarGrid: { + flexDirection: 'row', + flexWrap: 'wrap', + justifyContent: 'space-between', + }, + avatarOption: { + width: '22%', + aspectRatio: 1, + backgroundColor: '#F8F9FA', + borderRadius: 16, + justifyContent: 'center', + alignItems: 'center', + marginBottom: 12, + borderWidth: 3, + borderColor: 'transparent', + }, + avatarOptionSelected: { + borderColor: KurdistanColors.kesk, + backgroundColor: '#E8F5E9', + }, + avatarEmoji: { + fontSize: 36, + }, + selectedBadge: { + position: 'absolute', + top: -4, + right: -4, + width: 24, + height: 24, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + }, + selectedBadgeText: { + fontSize: 14, + color: KurdistanColors.spi, + fontWeight: 'bold', + }, + modalFooter: { + flexDirection: 'row', + paddingHorizontal: 20, + paddingTop: 16, + gap: 12, + }, + cancelButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: '#F0F0F0', + alignItems: 'center', + }, + cancelButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#666', + }, + saveButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + alignItems: 'center', + }, + saveButtonDisabled: { + opacity: 0.6, + }, + saveButtonText: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.spi, + }, + uploadSection: { + paddingHorizontal: 20, + paddingVertical: 16, + borderBottomWidth: 1, + borderBottomColor: '#E0E0E0', + }, + uploadButton: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + backgroundColor: KurdistanColors.kesk, + paddingVertical: 14, + paddingHorizontal: 20, + borderRadius: 12, + gap: 8, + }, + uploadButtonDisabled: { + opacity: 0.6, + }, + uploadButtonIcon: { + fontSize: 20, + }, + uploadButtonText: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.spi, + }, + uploadedPreview: { + marginTop: 12, + alignItems: 'center', + position: 'relative', + }, + uploadedImage: { + width: 100, + height: 100, + borderRadius: 50, + borderWidth: 3, + borderColor: KurdistanColors.kesk, + }, + removeUploadButton: { + position: 'absolute', + top: -4, + right: '38%', + width: 28, + height: 28, + borderRadius: 14, + backgroundColor: KurdistanColors.sor, + justifyContent: 'center', + alignItems: 'center', + boxShadow: '0px 2px 3px rgba(0, 0, 0, 0.3)', + elevation: 4, + }, + removeUploadText: { + color: KurdistanColors.spi, + fontSize: 14, + fontWeight: 'bold', + }, + divider: { + flexDirection: 'row', + alignItems: 'center', + paddingHorizontal: 20, + paddingVertical: 16, + }, + dividerLine: { + flex: 1, + height: 1, + backgroundColor: '#E0E0E0', + }, + dividerText: { + fontSize: 11, + fontWeight: '600', + color: '#999', + marginHorizontal: 12, + letterSpacing: 0.5, + }, +}); + +export default AvatarPickerModal; diff --git a/mobile/src/components/AvatarPickerModal.tsx.bak b/mobile/src/components/AvatarPickerModal.tsx.bak new file mode 100644 index 00000000..f0823b37 --- /dev/null +++ b/mobile/src/components/AvatarPickerModal.tsx.bak @@ -0,0 +1,515 @@ +import React, { useState } from 'react'; +import { + View, + Text, + Modal, + TouchableOpacity, + StyleSheet, + ScrollView, + Image, + Alert, + ActivityIndicator, + Platform, +} from 'react-native'; +import * as ImagePicker from 'expo-image-picker'; +import { KurdistanColors } from '../theme/colors'; +import { useAuth } from '../contexts/AuthContext'; +import { supabase } from '../lib/supabase'; + +// Avatar pool - Kurdish/Middle Eastern themed avatars +const AVATAR_POOL = [ + { id: 'avatar1', emoji: '👨🏻', label: 'Man 1' }, + { id: 'avatar2', emoji: '👨🏼', label: 'Man 2' }, + { id: 'avatar3', emoji: '👨🏽', label: 'Man 3' }, + { id: 'avatar4', emoji: '👨🏾', label: 'Man 4' }, + { id: 'avatar5', emoji: '👩🏻', label: 'Woman 1' }, + { id: 'avatar6', emoji: '👩🏼', label: 'Woman 2' }, + { id: 'avatar7', emoji: '👩🏽', label: 'Woman 3' }, + { id: 'avatar8', emoji: '👩🏾', label: 'Woman 4' }, + { id: 'avatar9', emoji: '🧔🏻', label: 'Beard 1' }, + { id: 'avatar10', emoji: '🧔🏼', label: 'Beard 2' }, + { id: 'avatar11', emoji: '🧔🏽', label: 'Beard 3' }, + { id: 'avatar12', emoji: '🧔🏾', label: 'Beard 4' }, + { id: 'avatar13', emoji: '👳🏻‍♂️', label: 'Turban 1' }, + { id: 'avatar14', emoji: '👳🏼‍♂️', label: 'Turban 2' }, + { id: 'avatar15', emoji: '👳🏽‍♂️', label: 'Turban 3' }, + { id: 'avatar16', emoji: '🧕🏻', label: 'Hijab 1' }, + { id: 'avatar17', emoji: '🧕🏼', label: 'Hijab 2' }, + { id: 'avatar18', emoji: '🧕🏽', label: 'Hijab 3' }, + { id: 'avatar19', emoji: '👴🏻', label: 'Elder 1' }, + { id: 'avatar20', emoji: '👴🏼', label: 'Elder 2' }, + { id: 'avatar21', emoji: '👵🏻', label: 'Elder Woman 1' }, + { id: 'avatar22', emoji: '👵🏼', label: 'Elder Woman 2' }, + { id: 'avatar23', emoji: '👦🏻', label: 'Boy 1' }, + { id: 'avatar24', emoji: '👦🏼', label: 'Boy 2' }, + { id: 'avatar25', emoji: '👧🏻', label: 'Girl 1' }, + { id: 'avatar26', emoji: '👧🏼', label: 'Girl 2' }, +]; + +interface AvatarPickerModalProps { + visible: boolean; + onClose: () => void; + currentAvatar?: string; + onAvatarSelected?: (avatarUrl: string) => void; +} + +const AvatarPickerModal: React.FC = ({ + visible, + onClose, + currentAvatar, + onAvatarSelected, +}) => { + const { user } = useAuth(); + const [selectedAvatar, setSelectedAvatar] = useState(currentAvatar || null); + const [uploadedImageUri, setUploadedImageUri] = useState(null); + const [isSaving, setIsSaving] = useState(false); + const [isUploading, setIsUploading] = useState(false); + + const handleAvatarSelect = (avatarId: string) => { + setSelectedAvatar(avatarId); + setUploadedImageUri(null); // Clear uploaded image when selecting from pool + }; + + const requestPermissions = async () => { + if (Platform.OS !== 'web') { + const { status } = await ImagePicker.requestMediaLibraryPermissionsAsync(); + if (status !== 'granted') { + Alert.alert( + 'Permission Required', + 'Sorry, we need camera roll permissions to upload your photo!' + ); + return false; + } + } + return true; + }; + + const handlePickImage = async () => { + const hasPermission = await requestPermissions(); + if (!hasPermission) return; + + try { + const result = await ImagePicker.launchImageLibraryAsync({ + mediaTypes: 'images', + allowsEditing: true, + aspect: [1, 1], + quality: 0.8, + }); + + if (!result.canceled && result.assets[0]) { + setIsUploading(true); + const imageUri = result.assets[0].uri; + + if (__DEV__) console.log('[AvatarPicker] Uploading image:', imageUri); + + // Upload to Supabase Storage + const uploadedUrl = await uploadImageToSupabase(imageUri); + + setIsUploading(false); + + if (uploadedUrl) { + if (__DEV__) console.log('[AvatarPicker] Upload successful:', uploadedUrl); + setUploadedImageUri(uploadedUrl); + setSelectedAvatar(null); // Clear emoji selection + Alert.alert('Success', 'Photo uploaded successfully!'); + } else { + if (__DEV__) console.error('[AvatarPicker] Upload failed: no URL returned'); + Alert.alert('Upload Failed', 'Could not upload your photo. Please check your internet connection and try again.'); + } + } + } catch (error) { + setIsUploading(false); + if (__DEV__) console.error('[AvatarPicker] Error picking image:', error); + Alert.alert('Error', 'Failed to pick image. Please try again.'); + } + }; + + const uploadImageToSupabase = async (imageUri: string): Promise => { + if (!user) { + if (__DEV__) console.error('[AvatarPicker] No user found'); + return null; + } + + try { + if (__DEV__) console.log('[AvatarPicker] Fetching image blob...'); + // Convert image URI to blob for web, or use file for native + const response = await fetch(imageUri); + const blob = await response.blob(); + if (__DEV__) console.log('[AvatarPicker] Blob size:', blob.size, 'bytes'); + + // Generate unique filename + const fileExt = imageUri.split('.').pop()?.toLowerCase() || 'jpg'; + const fileName = `${user.id}-${Date.now()}.${fileExt}`; + const filePath = `avatars/${fileName}`; + if (__DEV__) console.log('[AvatarPicker] Uploading to:', filePath); + + // Upload to Supabase Storage + const { data: uploadData, error: uploadError } = await supabase.storage + .from('profiles') + .upload(filePath, blob, { + contentType: `image/${fileExt}`, + upsert: false, + }); + + if (uploadError) { + if (__DEV__) console.error('[AvatarPicker] Upload error:', uploadError); + return null; + } + + if (__DEV__) console.log('[AvatarPicker] Upload successful:', uploadData); + + // Get public URL + const { data } = supabase.storage + .from('profiles') + .getPublicUrl(filePath); + + if (__DEV__) console.log('[AvatarPicker] Public URL:', data.publicUrl); + + return data.publicUrl; + } catch (error) { + if (__DEV__) console.error('[AvatarPicker] Error uploading to Supabase:', error); + return null; + } + }; + + const handleSave = async () => { + const avatarToSave = uploadedImageUri || selectedAvatar; + + if (!avatarToSave || !user) { + Alert.alert('Error', 'Please select an avatar or upload a photo'); + return; + } + + if (__DEV__) console.log('[AvatarPicker] Saving avatar:', avatarToSave); + + setIsSaving(true); + + try { + // Update avatar in Supabase profiles table + const { data, error } = await supabase + .from('profiles') + .update({ avatar_url: avatarToSave }) + .eq('id', user.id) + .select(); + + if (error) { + if (__DEV__) console.error('[AvatarPicker] Save error:', error); + throw error; + } + + if (__DEV__) console.log('[AvatarPicker] Avatar saved successfully:', data); + + Alert.alert('Success', 'Avatar updated successfully!'); + + if (onAvatarSelected) { + onAvatarSelected(avatarToSave); + } + + onClose(); + } catch (error) { + if (__DEV__) console.error('[AvatarPicker] Error updating avatar:', error); + Alert.alert('Error', 'Failed to update avatar. Please try again.'); + } finally { + setIsSaving(false); + } + }; + + return ( + + + + {/* Header */} + + Choose Your Avatar + + + + + + {/* Upload Photo Button */} + + + {isUploading ? ( + + ) : ( + <> + 📷 + Upload Your Photo + + )} + + + {/* Uploaded Image Preview */} + {uploadedImageUri && ( + + + setUploadedImageUri(null)} + > + + + + )} + + + {/* Divider */} + + + OR CHOOSE FROM POOL + + + + {/* Avatar Grid */} + + + {AVATAR_POOL.map((avatar) => ( + handleAvatarSelect(avatar.id)} + > + {avatar.emoji} + {selectedAvatar === avatar.id && ( + + + + )} + + ))} + + + + {/* Footer Actions */} + + + Cancel + + + {isSaving ? ( + + ) : ( + Save Avatar + )} + + + + + + ); +}; + +const styles = StyleSheet.create({ + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0, 0, 0, 0.5)', + justifyContent: 'flex-end', + }, + modalContainer: { + backgroundColor: KurdistanColors.spi, + borderTopLeftRadius: 24, + borderTopRightRadius: 24, + maxHeight: '80%', + paddingBottom: 20, + }, + modalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + padding: 20, + borderBottomWidth: 1, + borderBottomColor: '#E0E0E0', + }, + modalTitle: { + fontSize: 20, + fontWeight: 'bold', + color: KurdistanColors.reş, + }, + closeButton: { + width: 32, + height: 32, + borderRadius: 16, + backgroundColor: '#F0F0F0', + justifyContent: 'center', + alignItems: 'center', + }, + closeButtonText: { + fontSize: 18, + color: '#666', + }, + avatarScroll: { + padding: 20, + }, + avatarGrid: { + flexDirection: 'row', + flexWrap: 'wrap', + justifyContent: 'space-between', + }, + avatarOption: { + width: '22%', + aspectRatio: 1, + backgroundColor: '#F8F9FA', + borderRadius: 16, + justifyContent: 'center', + alignItems: 'center', + marginBottom: 12, + borderWidth: 3, + borderColor: 'transparent', + }, + avatarOptionSelected: { + borderColor: KurdistanColors.kesk, + backgroundColor: '#E8F5E9', + }, + avatarEmoji: { + fontSize: 36, + }, + selectedBadge: { + position: 'absolute', + top: -4, + right: -4, + width: 24, + height: 24, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + }, + selectedBadgeText: { + fontSize: 14, + color: KurdistanColors.spi, + fontWeight: 'bold', + }, + modalFooter: { + flexDirection: 'row', + paddingHorizontal: 20, + paddingTop: 16, + gap: 12, + }, + cancelButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: '#F0F0F0', + alignItems: 'center', + }, + cancelButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#666', + }, + saveButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + alignItems: 'center', + }, + saveButtonDisabled: { + opacity: 0.6, + }, + saveButtonText: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.spi, + }, + uploadSection: { + paddingHorizontal: 20, + paddingVertical: 16, + borderBottomWidth: 1, + borderBottomColor: '#E0E0E0', + }, + uploadButton: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + backgroundColor: KurdistanColors.kesk, + paddingVertical: 14, + paddingHorizontal: 20, + borderRadius: 12, + gap: 8, + }, + uploadButtonDisabled: { + opacity: 0.6, + }, + uploadButtonIcon: { + fontSize: 20, + }, + uploadButtonText: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.spi, + }, + uploadedPreview: { + marginTop: 12, + alignItems: 'center', + position: 'relative', + }, + uploadedImage: { + width: 100, + height: 100, + borderRadius: 50, + borderWidth: 3, + borderColor: KurdistanColors.kesk, + }, + removeUploadButton: { + position: 'absolute', + top: -4, + right: '38%', + width: 28, + height: 28, + borderRadius: 14, + backgroundColor: KurdistanColors.sor, + justifyContent: 'center', + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.3, + shadowRadius: 3, + elevation: 4, + }, + removeUploadText: { + color: KurdistanColors.spi, + fontSize: 14, + fontWeight: 'bold', + }, + divider: { + flexDirection: 'row', + alignItems: 'center', + paddingHorizontal: 20, + paddingVertical: 16, + }, + dividerLine: { + flex: 1, + height: 1, + backgroundColor: '#E0E0E0', + }, + dividerText: { + fontSize: 11, + fontWeight: '600', + color: '#999', + marginHorizontal: 12, + letterSpacing: 0.5, + }, +}); + +export default AvatarPickerModal; diff --git a/mobile/src/components/BalanceCard.tsx b/mobile/src/components/BalanceCard.tsx index dfe97892..ab37eb42 100644 --- a/mobile/src/components/BalanceCard.tsx +++ b/mobile/src/components/BalanceCard.tsx @@ -66,10 +66,7 @@ const styles = StyleSheet.create({ padding: 16, borderRadius: 12, marginBottom: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.1, - shadowRadius: 4, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.1)', elevation: 3, }, row: { diff --git a/mobile/src/components/BalanceCard.tsx.bak b/mobile/src/components/BalanceCard.tsx.bak new file mode 100644 index 00000000..dfe97892 --- /dev/null +++ b/mobile/src/components/BalanceCard.tsx.bak @@ -0,0 +1,120 @@ +import React from 'react'; +import { View, Text, StyleSheet, TouchableOpacity } from 'react-native'; +import { TokenIcon } from './TokenIcon'; +import { KurdistanColors } from '../theme/colors'; + +interface BalanceCardProps { + symbol: string; + name: string; + balance: string; + value?: string; + change?: string; + onPress?: () => void; +} + +export const BalanceCard: React.FC = ({ + symbol, + name, + balance, + value, + change, + onPress, +}) => { + const changeValue = parseFloat(change || '0'); + const isPositive = changeValue >= 0; + + return ( + + + + + + {symbol} + {balance} + + + {name} + {value && {value}} + + + + {change && ( + + + {isPositive ? '+' : ''} + {change} + + + )} + + ); +}; + +const styles = StyleSheet.create({ + container: { + backgroundColor: '#FFFFFF', + padding: 16, + borderRadius: 12, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 3, + }, + row: { + flexDirection: 'row', + alignItems: 'center', + }, + info: { + flex: 1, + marginLeft: 12, + }, + nameRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 4, + }, + symbol: { + fontSize: 18, + fontWeight: '700', + color: '#000', + }, + balance: { + fontSize: 18, + fontWeight: '600', + color: '#000', + }, + detailsRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + name: { + fontSize: 14, + color: '#666', + }, + value: { + fontSize: 14, + color: '#666', + }, + changeContainer: { + marginTop: 8, + alignItems: 'flex-end', + }, + change: { + fontSize: 12, + fontWeight: '600', + }, +}); diff --git a/mobile/src/components/BottomSheet.tsx b/mobile/src/components/BottomSheet.tsx index 613a264e..32127d27 100644 --- a/mobile/src/components/BottomSheet.tsx +++ b/mobile/src/components/BottomSheet.tsx @@ -130,10 +130,7 @@ const styles = StyleSheet.create({ borderTopLeftRadius: 24, borderTopRightRadius: 24, paddingBottom: 34, // Safe area - shadowColor: '#000', - shadowOffset: { width: 0, height: -4 }, - shadowOpacity: 0.15, - shadowRadius: 12, + boxShadow: '0px -4px 12px rgba(0, 0, 0, 0.15)', elevation: 20, }, handleContainer: { diff --git a/mobile/src/components/BottomSheet.tsx.bak b/mobile/src/components/BottomSheet.tsx.bak new file mode 100644 index 00000000..613a264e --- /dev/null +++ b/mobile/src/components/BottomSheet.tsx.bak @@ -0,0 +1,165 @@ +import React, { useEffect, useRef } from 'react'; +import { + View, + Text, + Modal, + Animated, + Pressable, + StyleSheet, + Dimensions, + PanResponder, +} from 'react-native'; +import { AppColors } from '../theme/colors'; + +const { height: SCREEN_HEIGHT } = Dimensions.get('window'); + +interface BottomSheetProps { + visible: boolean; + onClose: () => void; + title?: string; + children: React.ReactNode; + height?: number; + showHandle?: boolean; +} + +/** + * Modern Bottom Sheet Component + * Swipe to dismiss, smooth animations + */ +export const BottomSheet: React.FC = ({ + visible, + onClose, + title, + children, + height = SCREEN_HEIGHT * 0.6, + showHandle = true, +}) => { + const translateY = useRef(new Animated.Value(height)).current; + const panResponder = useRef( + PanResponder.create({ + onStartShouldSetPanResponder: () => true, + onMoveShouldSetPanResponder: (_, gestureState) => { + return gestureState.dy > 5; + }, + onPanResponderMove: (_, gestureState) => { + if (gestureState.dy > 0) { + translateY.setValue(gestureState.dy); + } + }, + onPanResponderRelease: (_, gestureState) => { + if (gestureState.dy > 100) { + closeSheet(); + } else { + Animated.spring(translateY, { + toValue: 0, + useNativeDriver: true, + }).start(); + } + }, + }) + ).current; + + const openSheet = React.useCallback(() => { + Animated.spring(translateY, { + toValue: 0, + useNativeDriver: true, + damping: 20, + }).start(); + }, [translateY]); + + useEffect(() => { + if (visible) { + openSheet(); + } + }, [visible, openSheet]); + + const closeSheet = () => { + Animated.timing(translateY, { + toValue: height, + duration: 250, + useNativeDriver: true, + }).start(() => { + onClose(); + }); + }; + + return ( + + + + + {showHandle && ( + + + + )} + {title && ( + + {title} + + )} + {children} + + + + ); +}; + +const styles = StyleSheet.create({ + overlay: { + flex: 1, + justifyContent: 'flex-end', + }, + backdrop: { + ...StyleSheet.absoluteFillObject, + backgroundColor: 'rgba(0, 0, 0, 0.5)', + }, + sheet: { + backgroundColor: AppColors.surface, + borderTopLeftRadius: 24, + borderTopRightRadius: 24, + paddingBottom: 34, // Safe area + shadowColor: '#000', + shadowOffset: { width: 0, height: -4 }, + shadowOpacity: 0.15, + shadowRadius: 12, + elevation: 20, + }, + handleContainer: { + alignItems: 'center', + paddingTop: 12, + paddingBottom: 8, + }, + handle: { + width: 40, + height: 4, + borderRadius: 2, + backgroundColor: AppColors.border, + }, + header: { + paddingHorizontal: 20, + paddingVertical: 16, + borderBottomWidth: 1, + borderBottomColor: AppColors.border, + }, + title: { + fontSize: 20, + fontWeight: '700', + color: AppColors.text, + }, + content: { + flex: 1, + padding: 20, + }, +}); diff --git a/mobile/src/components/Button.tsx b/mobile/src/components/Button.tsx index 8335c49a..7eb3e518 100644 --- a/mobile/src/components/Button.tsx +++ b/mobile/src/components/Button.tsx @@ -95,18 +95,12 @@ const styles = StyleSheet.create({ // Variants primary: { backgroundColor: KurdistanColors.kesk, - shadowColor: KurdistanColors.kesk, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 128, 0, 0.3)', elevation: 4, }, secondary: { backgroundColor: KurdistanColors.zer, - shadowColor: KurdistanColors.zer, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.2, - shadowRadius: 6, + boxShadow: '0px 4px 6px rgba(255, 215, 0, 0.2)', elevation: 3, }, outline: { @@ -119,10 +113,7 @@ const styles = StyleSheet.create({ }, danger: { backgroundColor: KurdistanColors.sor, - shadowColor: KurdistanColors.sor, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(255, 0, 0, 0.3)', elevation: 4, }, // Sizes @@ -146,7 +137,7 @@ const styles = StyleSheet.create({ }, disabled: { opacity: 0.5, - shadowOpacity: 0, + boxShadow: 'none', elevation: 0, }, pressed: { diff --git a/mobile/src/components/Button.tsx.bak b/mobile/src/components/Button.tsx.bak new file mode 100644 index 00000000..8335c49a --- /dev/null +++ b/mobile/src/components/Button.tsx.bak @@ -0,0 +1,188 @@ +import React from 'react'; +import { + Pressable, + Text, + StyleSheet, + ActivityIndicator, + ViewStyle, + TextStyle, +} from 'react-native'; +import { AppColors, KurdistanColors } from '../theme/colors'; + +interface ButtonProps { + title: string; + onPress: () => void; + variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger'; + size?: 'small' | 'medium' | 'large'; + loading?: boolean; + disabled?: boolean; + fullWidth?: boolean; + style?: ViewStyle; + textStyle?: TextStyle; + icon?: React.ReactNode; + testID?: string; +} + +/** + * Modern Button Component + * Uses Kurdistan colors for primary branding + */ +export const Button: React.FC = ({ + title, + onPress, + variant = 'primary', + size = 'medium', + loading = false, + disabled = false, + fullWidth = false, + style, + textStyle, + icon, + testID, +}) => { + const isDisabled = disabled || loading; + + const buttonStyle = [ + styles.base, + styles[variant], + styles[`${size}Size`], + fullWidth && styles.fullWidth, + isDisabled && styles.disabled, + style, + ]; + + const textStyles = [ + styles.text, + styles[`${variant}Text`], + styles[`${size}Text`], + isDisabled && styles.disabledText, + textStyle, + ]; + + return ( + [ + ...buttonStyle, + pressed && !isDisabled && styles.pressed, + ]} + > + {loading ? ( + + ) : ( + <> + {icon} + {title} + + )} + + ); +}; + +const styles = StyleSheet.create({ + base: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + borderRadius: 12, + paddingHorizontal: 24, + paddingVertical: 12, + }, + // Variants + primary: { + backgroundColor: KurdistanColors.kesk, + shadowColor: KurdistanColors.kesk, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 4, + }, + secondary: { + backgroundColor: KurdistanColors.zer, + shadowColor: KurdistanColors.zer, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.2, + shadowRadius: 6, + elevation: 3, + }, + outline: { + backgroundColor: 'transparent', + borderWidth: 2, + borderColor: KurdistanColors.kesk, + }, + ghost: { + backgroundColor: 'transparent', + }, + danger: { + backgroundColor: KurdistanColors.sor, + shadowColor: KurdistanColors.sor, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 4, + }, + // Sizes + smallSize: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 8, + }, + mediumSize: { + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 12, + }, + largeSize: { + paddingHorizontal: 32, + paddingVertical: 16, + borderRadius: 16, + }, + fullWidth: { + width: '100%', + }, + disabled: { + opacity: 0.5, + shadowOpacity: 0, + elevation: 0, + }, + pressed: { + opacity: 0.8, + transform: [{ scale: 0.97 }], + }, + // Text styles + text: { + fontWeight: '600', + textAlign: 'center', + }, + primaryText: { + color: '#FFFFFF', + }, + secondaryText: { + color: '#000000', + }, + outlineText: { + color: KurdistanColors.kesk, + }, + ghostText: { + color: KurdistanColors.kesk, + }, + dangerText: { + color: '#FFFFFF', + }, + smallText: { + fontSize: 14, + }, + mediumText: { + fontSize: 16, + }, + largeText: { + fontSize: 18, + }, + disabledText: { + opacity: 0.7, + }, +}); diff --git a/mobile/src/components/Card.tsx b/mobile/src/components/Card.tsx index 2886e3d3..a2307888 100644 --- a/mobile/src/components/Card.tsx +++ b/mobile/src/components/Card.tsx @@ -72,21 +72,18 @@ const styles = StyleSheet.create({ marginBottom: 12, }, elevated: { - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.1, - shadowRadius: 8, + boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.1)', elevation: 4, }, outlined: { borderWidth: 1, borderColor: AppColors.border, - shadowOpacity: 0, + boxShadow: 'none', elevation: 0, }, filled: { backgroundColor: AppColors.background, - shadowOpacity: 0, + boxShadow: 'none', elevation: 0, }, pressed: { diff --git a/mobile/src/components/Card.tsx.bak b/mobile/src/components/Card.tsx.bak new file mode 100644 index 00000000..2886e3d3 --- /dev/null +++ b/mobile/src/components/Card.tsx.bak @@ -0,0 +1,96 @@ +import React from 'react'; +import { View, StyleSheet, ViewStyle, Pressable, Text } from 'react-native'; +import { AppColors } from '../theme/colors'; + +interface CardProps { + children: React.ReactNode; + title?: string; + style?: ViewStyle; + onPress?: () => void; + variant?: 'elevated' | 'outlined' | 'filled'; + testID?: string; + elevation?: number; +} + +/** + * Modern Card Component + * Inspired by Material Design 3 and Kurdistan aesthetics + */ +export const Card: React.FC = ({ + children, + title, + style, + onPress, + variant = 'elevated', + testID, + elevation, +}) => { + const cardStyle = [ + styles.card, + variant === 'elevated' && styles.elevated, + variant === 'outlined' && styles.outlined, + variant === 'filled' && styles.filled, + elevation && { elevation }, + style, + ]; + + const content = ( + <> + {title && {title}} + {children} + + ); + + if (onPress) { + return ( + [ + ...cardStyle, + pressed && styles.pressed, + ]} + > + {content} + + ); + } + + return {content}; +}; + +const styles = StyleSheet.create({ + card: { + borderRadius: 16, + padding: 16, + backgroundColor: AppColors.surface, + }, + title: { + fontSize: 18, + fontWeight: '600', + color: AppColors.text, + marginBottom: 12, + }, + elevated: { + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 4, + }, + outlined: { + borderWidth: 1, + borderColor: AppColors.border, + shadowOpacity: 0, + elevation: 0, + }, + filled: { + backgroundColor: AppColors.background, + shadowOpacity: 0, + elevation: 0, + }, + pressed: { + opacity: 0.7, + transform: [{ scale: 0.98 }], + }, +}); diff --git a/mobile/src/components/Input.tsx b/mobile/src/components/Input.tsx index 99d28e5b..31c1451a 100644 --- a/mobile/src/components/Input.tsx +++ b/mobile/src/components/Input.tsx @@ -115,10 +115,7 @@ const styles = StyleSheet.create({ inputContainerFocused: { borderColor: KurdistanColors.kesk, borderWidth: 2, - shadowColor: KurdistanColors.kesk, - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.1, - shadowRadius: 4, + boxShadow: '0px 2px 4px rgba(0, 128, 0, 0.1)', elevation: 2, }, inputContainerError: { diff --git a/mobile/src/components/Input.tsx.bak b/mobile/src/components/Input.tsx.bak new file mode 100644 index 00000000..99d28e5b --- /dev/null +++ b/mobile/src/components/Input.tsx.bak @@ -0,0 +1,154 @@ +import React, { useState } from 'react'; +import { + TextInput, + View, + Text, + StyleSheet, + TextInputProps, + Pressable, +} from 'react-native'; +import { AppColors, KurdistanColors } from '../theme/colors'; + +interface InputProps extends TextInputProps { + label?: string; + error?: string; + helperText?: string; + leftIcon?: React.ReactNode; + rightIcon?: React.ReactNode; + onRightIconPress?: () => void; +} + +/** + * Modern Input Component + * Floating label, validation states, icons + */ +export const Input: React.FC = ({ + label, + error, + helperText, + leftIcon, + rightIcon, + onRightIconPress, + style, + ...props +}) => { + const [isFocused, setIsFocused] = useState(false); + const hasValue = props.value && props.value.length > 0; + + return ( + + {label && ( + + {label} + + )} + + {leftIcon && {leftIcon}} + { + setIsFocused(true); + props.onFocus?.(e); + }} + onBlur={(e) => { + setIsFocused(false); + props.onBlur?.(e); + }} + placeholderTextColor={AppColors.textSecondary} + /> + {rightIcon && ( + + {rightIcon} + + )} + + {(error || helperText) && ( + + {error || helperText} + + )} + + ); +}; + +const styles = StyleSheet.create({ + container: { + marginBottom: 16, + }, + label: { + fontSize: 14, + fontWeight: '500', + color: AppColors.textSecondary, + marginBottom: 8, + transition: 'all 0.2s', + }, + labelFocused: { + color: KurdistanColors.kesk, + }, + labelError: { + color: KurdistanColors.sor, + }, + inputContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: AppColors.surface, + borderWidth: 1.5, + borderColor: AppColors.border, + borderRadius: 12, + paddingHorizontal: 16, + minHeight: 52, + }, + inputContainerFocused: { + borderColor: KurdistanColors.kesk, + borderWidth: 2, + shadowColor: KurdistanColors.kesk, + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 2, + }, + inputContainerError: { + borderColor: KurdistanColors.sor, + }, + input: { + flex: 1, + fontSize: 16, + color: AppColors.text, + paddingVertical: 12, + }, + inputWithLeftIcon: { + marginLeft: 12, + }, + leftIcon: { + justifyContent: 'center', + alignItems: 'center', + }, + rightIcon: { + padding: 8, + justifyContent: 'center', + alignItems: 'center', + }, + helperText: { + fontSize: 12, + color: AppColors.textSecondary, + marginTop: 4, + marginLeft: 16, + }, + errorText: { + color: KurdistanColors.sor, + }, +}); diff --git a/mobile/src/components/NotificationBell.tsx b/mobile/src/components/NotificationBell.tsx new file mode 100644 index 00000000..d4e520c7 --- /dev/null +++ b/mobile/src/components/NotificationBell.tsx @@ -0,0 +1,81 @@ +import React, { useState, useEffect } from 'react'; +import { View, Text, TouchableOpacity, StyleSheet } from 'react-native'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; +import { KurdistanColors } from '../theme/colors'; +import { supabaseHelpers } from '../lib/supabase'; + +interface NotificationBellProps { + onPress: () => void; + style?: any; +} + +export const NotificationBell: React.FC = ({ onPress, style }) => { + const { selectedAccount, api, isApiReady } = usePezkuwi(); + const [unreadCount, setUnreadCount] = useState(0); + + useEffect(() => { + if (!api || !isApiReady || !selectedAccount) { + setUnreadCount(0); + return; + } + + // Fetch unread notification count from Supabase + const fetchUnreadCount = async () => { + try { + const count = await supabaseHelpers.getUnreadNotificationsCount(selectedAccount.address); + setUnreadCount(count); + } catch (error) { + console.error('Failed to fetch unread count:', error); + // If tables don't exist yet, set to 0 + setUnreadCount(0); + } + }; + + fetchUnreadCount(); + + // Refresh every 30 seconds + const interval = setInterval(fetchUnreadCount, 30000); + return () => clearInterval(interval); + }, [api, isApiReady, selectedAccount]); + + return ( + + 🔔 + {unreadCount > 0 && ( + + {unreadCount > 9 ? '9+' : unreadCount} + + )} + + ); +}; + +const styles = StyleSheet.create({ + container: { + position: 'relative', + width: 40, + height: 40, + justifyContent: 'center', + alignItems: 'center', + }, + bellIcon: { + fontSize: 24, + }, + badge: { + position: 'absolute', + top: 4, + right: 4, + backgroundColor: KurdistanColors.sor, + borderRadius: 10, + minWidth: 20, + height: 20, + justifyContent: 'center', + alignItems: 'center', + paddingHorizontal: 4, + }, + badgeText: { + color: '#FFFFFF', + fontSize: 11, + fontWeight: 'bold', + }, +}); diff --git a/mobile/src/components/NotificationCenterModal.tsx b/mobile/src/components/NotificationCenterModal.tsx new file mode 100644 index 00000000..7c9d78a1 --- /dev/null +++ b/mobile/src/components/NotificationCenterModal.tsx @@ -0,0 +1,455 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + Modal, + StyleSheet, + ScrollView, + TouchableOpacity, + Alert, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; +import { supabaseHelpers } from '../lib/supabase'; + +interface Notification { + id: string; + type: 'transaction' | 'governance' | 'p2p' | 'referral' | 'system'; + title: string; + message: string; + read: boolean; + timestamp: string; +} + +interface NotificationCenterModalProps { + visible: boolean; + onClose: () => void; +} + +// Notifications are stored in Supabase database + +export const NotificationCenterModal: React.FC = ({ + visible, + onClose, +}) => { + const { selectedAccount } = usePezkuwi(); + const [notifications, setNotifications] = useState([]); + const [loading, setLoading] = useState(false); + + useEffect(() => { + if (visible && selectedAccount) { + const fetchNotifications = async () => { + try { + setLoading(true); + + // Fetch notifications from Supabase + const data = await supabaseHelpers.getUserNotifications(selectedAccount.address); + + // Transform to match component interface + const transformed = data.map(n => ({ + ...n, + timestamp: n.created_at, + })); + + setNotifications(transformed); + + } catch (error) { + console.error('Failed to fetch notifications:', error); + // If tables don't exist yet, show empty state + setNotifications([]); + } finally { + setLoading(false); + } + }; + + fetchNotifications(); + } + }, [visible, selectedAccount]); + + const handleMarkAsRead = async (notificationId: string) => { + try { + // Update UI immediately + setNotifications(prev => + prev.map(n => (n.id === notificationId ? { ...n, read: true } : n)) + ); + + // Update in Supabase + await supabaseHelpers.markNotificationAsRead(notificationId); + } catch (error) { + console.error('Failed to mark notification as read:', error); + } + }; + + const handleMarkAllAsRead = async () => { + if (!selectedAccount) return; + + try { + // Update UI immediately + setNotifications(prev => prev.map(n => ({ ...n, read: true }))); + + // Update in Supabase + await supabaseHelpers.markAllNotificationsAsRead(selectedAccount.address); + + Alert.alert('Success', 'All notifications marked as read'); + } catch (error) { + console.error('Failed to mark all as read:', error); + Alert.alert('Error', 'Failed to update notifications'); + } + }; + + const handleClearAll = () => { + Alert.alert( + 'Clear All Notifications', + 'Are you sure you want to clear all notifications?', + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Clear', + style: 'destructive', + onPress: async () => { + try { + setNotifications([]); + // TODO: Implement delete from Supabase when needed + // For now, just clear from UI + } catch (error) { + console.error('Failed to clear notifications:', error); + } + }, + }, + ] + ); + }; + + const getNotificationIcon = (type: string): string => { + const icons: Record = { + transaction: '💰', + governance: '🏛️', + p2p: '🤝', + referral: '👥', + system: '⚙️', + }; + return icons[type] || '📬'; + }; + + const getNotificationColor = (type: string): string => { + const colors: Record = { + transaction: KurdistanColors.kesk, + governance: '#3B82F6', + p2p: '#F59E0B', + referral: '#8B5CF6', + system: '#6B7280', + }; + return colors[type] || '#666'; + }; + + const formatTimestamp = (timestamp: string): string => { + const date = new Date(timestamp); + const now = new Date(); + const diffMs = now.getTime() - date.getTime(); + const diffMins = Math.floor(diffMs / 60000); + const diffHours = Math.floor(diffMins / 60); + const diffDays = Math.floor(diffHours / 24); + + if (diffMins < 60) return `${diffMins}m ago`; + if (diffHours < 24) return `${diffHours}h ago`; + if (diffDays < 7) return `${diffDays}d ago`; + return date.toLocaleDateString(); + }; + + const unreadCount = notifications.filter(n => !n.read).length; + const groupedNotifications = { + today: notifications.filter(n => { + const date = new Date(n.timestamp); + const today = new Date(); + return date.toDateString() === today.toDateString(); + }), + earlier: notifications.filter(n => { + const date = new Date(n.timestamp); + const today = new Date(); + return date.toDateString() !== today.toDateString(); + }), + }; + + return ( + + + + {/* Header */} + + + Notifications + {unreadCount > 0 && ( + {unreadCount} unread + )} + + + + + + + {/* Actions */} + {notifications.length > 0 && ( + + {unreadCount > 0 && ( + + Mark all as read + + )} + + Clear all + + + )} + + {/* Notifications List */} + + {notifications.length === 0 ? ( + + 📬 + No notifications + You're all caught up! + + ) : ( + <> + {/* Today */} + {groupedNotifications.today.length > 0 && ( + <> + Today + {groupedNotifications.today.map((notification) => ( + handleMarkAsRead(notification.id)} + > + + + {getNotificationIcon(notification.type)} + + + + + {notification.title} + {!notification.read && } + + + {notification.message} + + + {formatTimestamp(notification.timestamp)} + + + + ))} + + )} + + {/* Earlier */} + {groupedNotifications.earlier.length > 0 && ( + <> + Earlier + {groupedNotifications.earlier.map((notification) => ( + handleMarkAsRead(notification.id)} + > + + + {getNotificationIcon(notification.type)} + + + + + {notification.title} + {!notification.read && } + + + {notification.message} + + + {formatTimestamp(notification.timestamp)} + + + + ))} + + )} + + )} + + + + + ); +}; + +const styles = StyleSheet.create({ + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0, 0, 0, 0.5)', + justifyContent: 'flex-end', + }, + modalContent: { + backgroundColor: '#FFFFFF', + borderTopLeftRadius: 24, + borderTopRightRadius: 24, + maxHeight: '85%', + }, + header: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + padding: 20, + borderBottomWidth: 1, + borderBottomColor: '#F0F0F0', + }, + headerTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + }, + headerSubtitle: { + fontSize: 14, + color: KurdistanColors.kesk, + marginTop: 2, + }, + closeButton: { + width: 32, + height: 32, + borderRadius: 16, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + }, + closeButtonText: { + fontSize: 18, + color: '#666', + }, + actions: { + flexDirection: 'row', + gap: 12, + paddingHorizontal: 20, + paddingVertical: 12, + borderBottomWidth: 1, + borderBottomColor: '#F0F0F0', + }, + actionButton: { + paddingHorizontal: 12, + paddingVertical: 6, + borderRadius: 8, + backgroundColor: '#F5F5F5', + }, + actionButtonText: { + fontSize: 13, + fontWeight: '500', + color: '#666', + }, + actionButtonDanger: { + color: '#EF4444', + }, + notificationsList: { + flex: 1, + padding: 20, + }, + sectionTitle: { + fontSize: 14, + fontWeight: '600', + color: '#999', + marginBottom: 12, + marginTop: 8, + }, + notificationCard: { + flexDirection: 'row', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 12, + marginBottom: 12, + borderWidth: 1, + borderColor: '#F0F0F0', + }, + notificationCardUnread: { + backgroundColor: '#F8F9FA', + borderColor: KurdistanColors.kesk, + }, + notificationIcon: { + width: 44, + height: 44, + borderRadius: 22, + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + notificationIconText: { + fontSize: 20, + }, + notificationContent: { + flex: 1, + }, + notificationHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 4, + }, + notificationTitle: { + fontSize: 14, + fontWeight: '600', + color: '#333', + flex: 1, + }, + unreadDot: { + width: 8, + height: 8, + borderRadius: 4, + backgroundColor: KurdistanColors.kesk, + marginLeft: 8, + }, + notificationMessage: { + fontSize: 13, + color: '#666', + lineHeight: 18, + marginBottom: 4, + }, + notificationTime: { + fontSize: 11, + color: '#999', + }, + emptyState: { + alignItems: 'center', + paddingVertical: 60, + }, + emptyStateIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyStateText: { + fontSize: 18, + fontWeight: '600', + color: '#333', + marginBottom: 8, + }, + emptyStateSubtext: { + fontSize: 14, + color: '#999', + }, +}); diff --git a/mobile/src/components/PezkuwiWebView.tsx b/mobile/src/components/PezkuwiWebView.tsx new file mode 100644 index 00000000..47896b5e --- /dev/null +++ b/mobile/src/components/PezkuwiWebView.tsx @@ -0,0 +1,406 @@ +import React, { useRef, useState, useCallback } from 'react'; +import { + View, + StyleSheet, + ActivityIndicator, + Text, + TouchableOpacity, + BackHandler, + Platform, +} from 'react-native'; +import { WebView, WebViewMessageEvent } from 'react-native-webview'; +import { useFocusEffect } from '@react-navigation/native'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; + +// Base URL for the web app +const WEB_BASE_URL = 'https://pezkuwichain.io'; + +export interface PezkuwiWebViewProps { + // The path to load (e.g., '/p2p', '/forum', '/elections') + path: string; + // Optional title for the header + title?: string; + // Callback when navigation state changes + onNavigationStateChange?: (canGoBack: boolean) => void; +} + +interface WebViewMessage { + type: string; + payload?: unknown; +} + +const PezkuwiWebView: React.FC = ({ + path, + title, + onNavigationStateChange, +}) => { + const webViewRef = useRef(null); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + const [canGoBack, setCanGoBack] = useState(false); + + const { selectedAccount, getKeyPair } = usePezkuwi(); + + // JavaScript to inject into the WebView + // This creates a bridge between the web app and native app + const injectedJavaScript = ` + (function() { + // Mark this as mobile app + window.PEZKUWI_MOBILE = true; + window.PEZKUWI_PLATFORM = '${Platform.OS}'; + + // Inject wallet address if connected + ${selectedAccount ? `window.PEZKUWI_ADDRESS = '${selectedAccount.address}';` : ''} + ${selectedAccount ? `window.PEZKUWI_ACCOUNT_NAME = '${selectedAccount.meta?.name || 'Mobile Wallet'}';` : ''} + + // Override console.log to send to React Native (for debugging) + const originalConsoleLog = console.log; + console.log = function(...args) { + originalConsoleLog.apply(console, args); + window.ReactNativeWebView?.postMessage(JSON.stringify({ + type: 'CONSOLE_LOG', + payload: args.map(arg => typeof arg === 'object' ? JSON.stringify(arg) : String(arg)).join(' ') + })); + }; + + // Create native bridge for wallet operations + window.PezkuwiNativeBridge = { + // Request transaction signing from native wallet + signTransaction: function(extrinsicHex, callback) { + window.__pendingSignCallback = callback; + window.ReactNativeWebView?.postMessage(JSON.stringify({ + type: 'SIGN_TRANSACTION', + payload: { extrinsicHex } + })); + }, + + // Request wallet connection + connectWallet: function() { + window.ReactNativeWebView?.postMessage(JSON.stringify({ + type: 'CONNECT_WALLET' + })); + }, + + // Navigate back in native app + goBack: function() { + window.ReactNativeWebView?.postMessage(JSON.stringify({ + type: 'GO_BACK' + })); + }, + + // Check if wallet is connected + isWalletConnected: function() { + return !!window.PEZKUWI_ADDRESS; + }, + + // Get connected address + getAddress: function() { + return window.PEZKUWI_ADDRESS || null; + } + }; + + // Notify web app that native bridge is ready + window.dispatchEvent(new CustomEvent('pezkuwi-native-ready', { + detail: { + address: window.PEZKUWI_ADDRESS, + platform: window.PEZKUWI_PLATFORM + } + })); + + true; // Required for injectedJavaScript + })(); + `; + + // Handle messages from WebView + const handleMessage = useCallback(async (event: WebViewMessageEvent) => { + try { + const message: WebViewMessage = JSON.parse(event.nativeEvent.data); + + switch (message.type) { + case 'SIGN_TRANSACTION': + // Handle transaction signing + if (!selectedAccount) { + // Send error back to WebView + webViewRef.current?.injectJavaScript(` + if (window.__pendingSignCallback) { + window.__pendingSignCallback(null, 'Wallet not connected'); + delete window.__pendingSignCallback; + } + `); + return; + } + + try { + const { extrinsicHex } = message.payload as { extrinsicHex: string }; + const keyPair = await getKeyPair(selectedAccount.address); + + if (!keyPair) { + throw new Error('Could not retrieve key pair'); + } + + // Sign the transaction + const signature = keyPair.sign(extrinsicHex); + const signatureHex = Buffer.from(signature).toString('hex'); + + // Send signature back to WebView + webViewRef.current?.injectJavaScript(` + if (window.__pendingSignCallback) { + window.__pendingSignCallback('${signatureHex}', null); + delete window.__pendingSignCallback; + } + `); + } catch (signError) { + webViewRef.current?.injectJavaScript(` + if (window.__pendingSignCallback) { + window.__pendingSignCallback(null, '${(signError as Error).message}'); + delete window.__pendingSignCallback; + } + `); + } + break; + + case 'CONNECT_WALLET': + // Trigger native wallet connection + // This would open a modal or navigate to wallet screen + if (__DEV__) console.log('WebView requested wallet connection'); + break; + + case 'GO_BACK': + // Handle back navigation from web + if (canGoBack && webViewRef.current) { + webViewRef.current.goBack(); + } + break; + + case 'CONSOLE_LOG': + // Forward console logs from WebView (debug only) + if (__DEV__) { + console.log('[WebView]:', message.payload); + } + break; + + default: + if (__DEV__) { + console.log('Unknown message type:', message.type); + } + } + } catch (parseError) { + if (__DEV__) { + console.error('Failed to parse WebView message:', parseError); + } + } + }, [selectedAccount, getKeyPair, canGoBack]); + + // Handle Android back button + useFocusEffect( + useCallback(() => { + const onBackPress = () => { + if (canGoBack && webViewRef.current) { + webViewRef.current.goBack(); + return true; // Prevent default behavior + } + return false; // Allow default behavior + }; + + const subscription = BackHandler.addEventListener('hardwareBackPress', onBackPress); + return () => subscription.remove(); + }, [canGoBack]) + ); + + // Reload the WebView + const handleReload = () => { + setError(null); + setLoading(true); + webViewRef.current?.reload(); + }; + + // Go back in WebView history + const handleGoBack = () => { + if (canGoBack && webViewRef.current) { + webViewRef.current.goBack(); + } + }; + + // Build the full URL + const fullUrl = `${WEB_BASE_URL}${path}`; + + // Error view + if (error) { + return ( + + ! + Connection Error + {error} + + Try Again + + + ); + } + + return ( + + {/* Optional header with back button */} + {title && ( + + {canGoBack && ( + + {'<'} + + )} + {title} + + Reload + + + )} + + {/* WebView */} + setLoading(true)} + onLoadEnd={() => setLoading(false)} + onError={(syntheticEvent) => { + const { nativeEvent } = syntheticEvent; + setError(nativeEvent.description || 'Failed to load page'); + setLoading(false); + }} + onHttpError={(syntheticEvent) => { + const { nativeEvent } = syntheticEvent; + if (nativeEvent.statusCode >= 400) { + setError(`HTTP Error: ${nativeEvent.statusCode}`); + } + }} + onNavigationStateChange={(navState) => { + setCanGoBack(navState.canGoBack); + onNavigationStateChange?.(navState.canGoBack); + }} + // Security settings + javaScriptEnabled={true} + domStorageEnabled={true} + sharedCookiesEnabled={true} + thirdPartyCookiesEnabled={true} + // Performance settings + cacheEnabled={true} + cacheMode="LOAD_DEFAULT" + // UI settings + showsHorizontalScrollIndicator={false} + showsVerticalScrollIndicator={true} + bounces={true} + pullToRefreshEnabled={true} + // Behavior settings + allowsBackForwardNavigationGestures={true} + allowsInlineMediaPlayback={true} + mediaPlaybackRequiresUserAction={false} + // Debugging (dev only) + webviewDebuggingEnabled={__DEV__} + /> + + {/* Loading overlay */} + {loading && ( + + + Loading... + + )} + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#FFFFFF', + }, + header: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + paddingHorizontal: 16, + paddingVertical: 12, + backgroundColor: '#FFFFFF', + borderBottomWidth: 1, + borderBottomColor: '#E0E0E0', + }, + headerTitle: { + flex: 1, + fontSize: 18, + fontWeight: '700', + color: '#000', + textAlign: 'center', + }, + backButton: { + padding: 8, + marginRight: 8, + }, + backButtonText: { + fontSize: 24, + color: KurdistanColors.kesk, + fontWeight: '600', + }, + reloadButton: { + padding: 8, + }, + reloadButtonText: { + fontSize: 14, + color: KurdistanColors.kesk, + fontWeight: '600', + }, + webView: { + flex: 1, + }, + loadingOverlay: { + ...StyleSheet.absoluteFillObject, + backgroundColor: 'rgba(255, 255, 255, 0.9)', + justifyContent: 'center', + alignItems: 'center', + }, + loadingText: { + marginTop: 12, + fontSize: 14, + color: '#666', + }, + errorContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + backgroundColor: '#FFFFFF', + }, + errorIcon: { + fontSize: 48, + color: KurdistanColors.sor, + marginBottom: 16, + fontWeight: '700', + }, + errorTitle: { + fontSize: 20, + fontWeight: '700', + color: '#000', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 16, + fontWeight: '600', + }, +}); + +export default PezkuwiWebView; diff --git a/mobile/src/components/PrivacyPolicyModal.tsx b/mobile/src/components/PrivacyPolicyModal.tsx new file mode 100644 index 00000000..ea457fe9 --- /dev/null +++ b/mobile/src/components/PrivacyPolicyModal.tsx @@ -0,0 +1,215 @@ +import React from 'react'; +import { + Modal, + View, + Text, + ScrollView, + TouchableOpacity, + StyleSheet, + SafeAreaView, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; + +interface PrivacyPolicyModalProps { + visible: boolean; + onClose: () => void; +} + +const PrivacyPolicyModal: React.FC = ({ visible, onClose }) => { + return ( + + + + Privacy Policy + + + + + + + Data Minimization Principle + + Pezkuwi collects the MINIMUM data necessary to provide blockchain wallet functionality. + We operate on a "your keys, your coins, your responsibility" model. + + + What Data We Collect + + Stored LOCALLY on Your Device (NOT sent to Pezkuwi servers): + + Private Keys / Seed Phrase: Encrypted and stored in device secure storage + Account Balance: Cached from blockchain queries + Transaction History: Cached from blockchain queries + Settings: Language preference, theme, biometric settings + + + Stored on Supabase (Third-party service): + + Profile Information: Username, email (if provided), avatar image + Citizenship Applications: Application data if you apply for citizenship + Forum Posts: Public posts and comments + + + Stored on Blockchain (Public, immutable): + + Transactions: All transactions are publicly visible on PezkuwiChain + Account Address: Your public address is visible to all + + + Never Collected: + + Browsing History: We don't track which screens you visit + Device Identifiers: No IMEI, MAC address, or advertising ID collection + Location Data: No GPS or location tracking + Contact Lists: We don't access your contacts + Third-party Analytics: No Google Analytics, Facebook Pixel, or similar trackers + + + Why We Need Permissions + + Internet (REQUIRED) + + • Connect to PezkuwiChain blockchain RPC endpoint{'\n'} + • Query balances and transaction history{'\n'} + • Submit transactions + + + Storage (REQUIRED) + + • Save encrypted seed phrase locally{'\n'} + • Cache account data for offline viewing{'\n'} + • Store profile avatar + + + Camera (OPTIONAL) + + • Take profile photos{'\n'} + • Scan QR codes for payments{'\n'} + • Capture NFT images + + + Biometric (OPTIONAL) + + • Secure authentication for transactions{'\n'} + • Protect seed phrase viewing{'\n'} + • Alternative to password entry + + + Notifications (OPTIONAL) + + • Alert you to incoming transfers{'\n'} + • Notify staking reward claims{'\n'} + • Governance proposal notifications + + + Zero-Knowledge Proofs & Encryption + + Citizenship applications are encrypted using ZK-proofs (Zero-Knowledge Proofs). + This means: + + + • Your personal data is encrypted before storage + • Only a cryptographic hash is stored on the blockchain + • Your data is uploaded to IPFS (decentralized storage) in encrypted form + • Even if someone accesses the data, they cannot decrypt it without your private key + + + Your Data Rights + + Export Data: You can export your seed phrase and account data anytime + Delete Data: Delete your local data by uninstalling the app + Supabase Data: Contact support@pezkuwichain.io to delete profile data + + + Contact + + For privacy concerns: privacy@pezkuwichain.io{'\n'} + General support: info@pezkuwichain.io + + + + Last updated: {new Date().toLocaleDateString()}{'\n'} + © {new Date().getFullYear()} PezkuwiChain + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#FFFFFF', + }, + header: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + padding: 16, + borderBottomWidth: 1, + borderBottomColor: '#E5E5E5', + }, + headerTitle: { + fontSize: 20, + fontWeight: 'bold', + color: KurdistanColors.reş, + }, + closeButton: { + padding: 8, + }, + closeButtonText: { + fontSize: 24, + color: KurdistanColors.reş, + }, + content: { + flex: 1, + padding: 20, + }, + sectionTitle: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.kesk, + marginTop: 24, + marginBottom: 12, + }, + subsectionTitle: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.reş, + marginTop: 16, + marginBottom: 8, + }, + paragraph: { + fontSize: 14, + lineHeight: 22, + color: '#333', + marginBottom: 12, + }, + bulletList: { + marginBottom: 12, + }, + bulletItem: { + fontSize: 14, + lineHeight: 22, + color: '#333', + marginBottom: 6, + }, + bold: { + fontWeight: '600', + }, + footer: { + fontSize: 12, + color: '#999', + textAlign: 'center', + marginTop: 32, + marginBottom: 32, + }, +}); + +export default PrivacyPolicyModal; diff --git a/mobile/src/components/TermsOfServiceModal.tsx b/mobile/src/components/TermsOfServiceModal.tsx new file mode 100644 index 00000000..4066008b --- /dev/null +++ b/mobile/src/components/TermsOfServiceModal.tsx @@ -0,0 +1,249 @@ +import React from 'react'; +import { + Modal, + View, + Text, + ScrollView, + TouchableOpacity, + StyleSheet, + SafeAreaView, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; + +interface TermsOfServiceModalProps { + visible: boolean; + onClose: () => void; +} + +const TermsOfServiceModal: React.FC = ({ visible, onClose }) => { + return ( + + + + Terms of Service + + + + + + + 1. Acceptance of Terms + + By accessing or using the Pezkuwi mobile application ("App"), you agree to be bound by these + Terms of Service ("Terms"). If you do not agree to these Terms, do not use the App. + + + 2. Description of Service + + Pezkuwi is a non-custodial blockchain wallet and governance platform that allows users to: + + + • Manage blockchain accounts and private keys + • Send and receive cryptocurrency tokens + • Participate in decentralized governance + • Apply for digital citizenship + • Access educational content and earn rewards + + + 3. User Responsibilities + + 3.1 Account Security + + You are solely responsible for: + + + • Maintaining the confidentiality of your seed phrase and private keys + • All activities that occur under your account + • Securing your device with appropriate passcodes and biometric authentication + + + 3.2 Prohibited Activities + + You agree NOT to: + + + • Use the App for any illegal or unauthorized purpose + • Attempt to gain unauthorized access to other users' accounts + • Interfere with or disrupt the App or servers + • Upload malicious code or viruses + • Engage in fraudulent transactions or money laundering + • Create fake identities or impersonate others + + + 4. Non-Custodial Nature + + Pezkuwi is a non-custodial wallet. This means: + + + • We DO NOT have access to your private keys or funds + • We CANNOT recover your funds if you lose your seed phrase + • We CANNOT reverse transactions or freeze accounts + • You have full control and full responsibility for your assets + + + 5. Blockchain Transactions + + When you submit a transaction: + + + • Transactions are irreversible once confirmed on the blockchain + • Transaction fees (gas) are determined by network demand + • We are not responsible for transaction failures due to insufficient fees + • You acknowledge the risks of blockchain technology + + + 6. Digital Citizenship + + Citizenship applications: + + + • Require KYC (Know Your Customer) verification + • Are subject to approval by governance mechanisms + • Involve storing encrypted personal data on IPFS + • Can be revoked if fraudulent information is detected + + + 7. Disclaimer of Warranties + + THE APP IS PROVIDED "AS IS" WITHOUT WARRANTIES OF ANY KIND. WE DO NOT GUARANTEE: + + + • Uninterrupted or error-free service + • Accuracy of displayed data or prices + • Security from unauthorized access or hacking + • Protection from loss of funds due to user error + + + 8. Limitation of Liability + + TO THE MAXIMUM EXTENT PERMITTED BY LAW, PEZKUWI SHALL NOT BE LIABLE FOR: + + + • Loss of funds due to forgotten seed phrases + • Unauthorized transactions from compromised devices + • Network congestion or blockchain failures + • Price volatility of cryptocurrencies + • Third-party services (IPFS, Supabase, RPC providers) + + + 9. Intellectual Property + + The Pezkuwi App, including its design, code, and content, is protected by copyright and trademark laws. + You may not: + + + • Copy, modify, or distribute the App without permission + • Reverse engineer or decompile the App + • Use the Pezkuwi name or logo without authorization + + + 10. Governing Law + + These Terms shall be governed by the laws of decentralized autonomous organizations (DAOs) + and international arbitration. Disputes will be resolved through community governance mechanisms + when applicable. + + + 11. Changes to Terms + + We reserve the right to modify these Terms at any time. Changes will be effective upon posting + in the App. Your continued use of the App constitutes acceptance of modified Terms. + + + 12. Termination + + We may terminate or suspend your access to the App at any time for violations of these Terms. + You may stop using the App at any time by deleting it from your device. + + + 13. Contact + + For questions about these Terms:{'\n'} + Email: legal@pezkuwichain.io{'\n'} + Support: info@pezkuwichain.io{'\n'} + Website: https://pezkuwichain.io + + + + Last updated: {new Date().toLocaleDateString()}{'\n'} + © {new Date().getFullYear()} PezkuwiChain + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#FFFFFF', + }, + header: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + padding: 16, + borderBottomWidth: 1, + borderBottomColor: '#E5E5E5', + }, + headerTitle: { + fontSize: 20, + fontWeight: 'bold', + color: KurdistanColors.reş, + }, + closeButton: { + padding: 8, + }, + closeButtonText: { + fontSize: 24, + color: KurdistanColors.reş, + }, + content: { + flex: 1, + padding: 20, + }, + sectionTitle: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.kesk, + marginTop: 24, + marginBottom: 12, + }, + subsectionTitle: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.reş, + marginTop: 16, + marginBottom: 8, + }, + paragraph: { + fontSize: 14, + lineHeight: 22, + color: '#333', + marginBottom: 12, + }, + bulletList: { + marginBottom: 12, + }, + bulletItem: { + fontSize: 14, + lineHeight: 22, + color: '#333', + marginBottom: 6, + }, + footer: { + fontSize: 12, + color: '#999', + textAlign: 'center', + marginTop: 32, + marginBottom: 32, + }, +}); + +export default TermsOfServiceModal; diff --git a/mobile/src/components/ValidatorSelectionSheet.tsx b/mobile/src/components/ValidatorSelectionSheet.tsx new file mode 100644 index 00000000..a520337e --- /dev/null +++ b/mobile/src/components/ValidatorSelectionSheet.tsx @@ -0,0 +1,199 @@ +import React, { useState, useEffect } from 'react'; +import { View, Text, FlatList, ActivityIndicator, Alert, StyleSheet, TouchableOpacity } from 'react-native'; +import { BottomSheet, Button } from './index'; // Assuming these are exported from index.ts or index.tsx in the same folder +import { usePezkuwi } from '../contexts/PezkuwiContext'; +import { KurdistanColors, AppColors } from '../theme/colors'; + +interface Validator { + address: string; + commission: number; + totalStake: string; // Formatted balance + selfStake: string; // Formatted balance + nominators: number; + // Add other relevant validator info +} + +interface ValidatorSelectionSheetProps { + visible: boolean; + onClose: () => void; + onConfirmNominations: (validators: string[]) => void; + // Add other props like currentNominations if needed +} + +export function ValidatorSelectionSheet({ + visible, + onClose, + onConfirmNominations, +}: ValidatorSelectionSheetProps) { + const { api, isApiReady, selectedAccount } = usePezkuwi(); + const [validators, setValidators] = useState([]); + const [loading, setLoading] = useState(true); + const [processing, setProcessing] = useState(false); + const [selectedValidators, setSelectedValidators] = useState([]); + + // Fetch real validators from chain + useEffect(() => { + const fetchValidators = async () => { + if (!api || !isApiReady) return; + + setLoading(true); + try { + const chainValidators: Validator[] = []; + // Attempt to fetch from pallet-validator-pool first + if (api.query.validatorPool && api.query.validatorPool.validators) { + const rawValidators = await api.query.validatorPool.validators(); + // Assuming rawValidators is a list of validator addresses or objects + // This parsing logic will need adjustment based on the exact structure returned + for (const rawValidator of rawValidators.toHuman() as any[]) { // Adjust 'any' based on actual type + // Placeholder: Assume rawValidator is just an address for now + chainValidators.push({ + address: rawValidator.toString(), // or rawValidator.address if it's an object + commission: 0.05, // Placeholder: Fetch actual commission + totalStake: '0 HEZ', // Placeholder: Fetch actual stake + selfStake: '0 HEZ', // Placeholder: Fetch actual self stake + nominators: 0, // Placeholder: Fetch actual nominators + }); + } + } else { + // Fallback to general staking validators if validatorPool pallet is not found/used + const rawStakingValidators = await api.query.staking.validators(); + for (const validatorAddress of rawStakingValidators.keys) { + const address = validatorAddress.args[0].toString(); + // Fetch more details about each validator if needed, e.g., commission, total stake + const validatorPrefs = await api.query.staking.validators(address); + const commission = validatorPrefs.commission.toNumber() / 10_000_000; // Assuming 10^7 for percentage + + // For simplicity, total stake and nominators are placeholders for now + // A more complete implementation would query for detailed exposure + chainValidators.push({ + address: address, + commission: commission, + totalStake: 'Fetching...', + selfStake: 'Fetching...', + nominators: 0, + }); + } + } + + setValidators(chainValidators); + } catch (error) { + if (__DEV__) console.error('Error fetching validators:', error); + Alert.alert('Error', 'Failed to fetch validators.'); + } finally { + setLoading(false); + } + }; + + fetchValidators(); + }, [api, isApiReady]); + + + const toggleValidatorSelection = (address: string) => { + setSelectedValidators(prev => + prev.includes(address) + ? prev.filter(item => item !== address) + : [...prev, address] + ); + }; + + const handleConfirm = () => { + if (selectedValidators.length === 0) { + Alert.alert('Selection Required', 'Please select at least one validator.'); + return; + } + // Pass selected validators to parent component to initiate transaction + onConfirmNominations(selectedValidators); + onClose(); + }; + + const renderValidatorItem = ({ item }: { item: Validator }) => ( + toggleValidatorSelection(item.address)} + > + + + {item.address.substring(0, 8)}...{item.address.substring(item.address.length - 6)} + + Commission: {item.commission * 100}% + Total Stake: {item.totalStake} + Self Stake: {item.selfStake} + Nominators: {item.nominators} + + {selectedValidators.includes(item.address) && ( + + + + )} + + ); + + return ( + + {loading ? ( + + ) : ( + item.address} + renderItem={renderValidatorItem} + style={styles.list} + /> + )} + - )} - - {enrolled && !completed && ( - - )} - - {completed && ( - - )} - - ); - }; - - const displayCourses = - activeTab === 'all' - ? courses - : courses.filter((c) => isEnrolled(c.id)); - - const renderEmptyState = () => ( - - - {activeTab === 'all' ? '📚' : '🎓'} - - - {activeTab === 'all' ? 'No Courses Available' : 'No Enrolled Courses'} - - - {activeTab === 'all' - ? 'Check back later for new courses' - : 'Browse available courses and enroll to start learning'} - - {activeTab === 'my-courses' && ( - - )} - - ); - return ( - {/* Header */} - - - Perwerde 🎓 - Decentralized Education Platform - - - - {/* Connection Warning */} - {!isApiReady && ( - - Connecting to blockchain... - - )} - - {/* Tabs */} - - setActiveTab('all')} - > - - All Courses - - - - setActiveTab('my-courses')} - > - - My Courses ({enrollments.length}) - - - - - {/* Course List */} - {loading && !refreshing ? ( - - - Loading courses... - - ) : ( - item.id.toString()} - contentContainerStyle={styles.listContent} - ListEmptyComponent={renderEmptyState} - refreshControl={ - - } - /> - )} + ); }; @@ -373,187 +23,7 @@ const EducationScreen: React.FC = () => { const styles = StyleSheet.create({ container: { flex: 1, - backgroundColor: AppColors.background, - }, - header: { - padding: 16, - paddingBottom: 12, - }, - title: { - fontSize: 28, - fontWeight: '700', - color: '#000', - marginBottom: 4, - }, - subtitle: { - fontSize: 14, - color: '#666', - }, - warningBanner: { - backgroundColor: '#FFF3CD', - padding: 12, - marginHorizontal: 16, - marginBottom: 12, - borderRadius: 8, - borderWidth: 1, - borderColor: '#FFE69C', - }, - warningText: { - fontSize: 14, - color: '#856404', - textAlign: 'center', - }, - tabs: { - flexDirection: 'row', - paddingHorizontal: 16, - borderBottomWidth: 1, - borderBottomColor: '#E0E0E0', - marginBottom: 16, - }, - tab: { - flex: 1, - paddingVertical: 12, - alignItems: 'center', - borderBottomWidth: 2, - borderBottomColor: 'transparent', - }, - activeTab: { - borderBottomColor: KurdistanColors.kesk, - }, - tabText: { - fontSize: 16, - fontWeight: '600', - color: '#666', - }, - activeTabText: { - color: KurdistanColors.kesk, - }, - listContent: { - padding: 16, - paddingTop: 0, - }, - courseCard: { - padding: 16, - marginBottom: 16, - }, - courseHeader: { - flexDirection: 'row', - alignItems: 'flex-start', - marginBottom: 12, - }, - courseIcon: { - width: 56, - height: 56, - borderRadius: 12, - backgroundColor: '#F0F9F4', - justifyContent: 'center', - alignItems: 'center', - }, - courseIconText: { - fontSize: 28, - }, - courseInfo: { - flex: 1, - marginLeft: 12, - }, - courseName: { - fontSize: 18, - fontWeight: '700', - color: '#000', - marginBottom: 4, - }, - courseInstructor: { - fontSize: 14, - color: '#666', - }, - courseDescription: { - fontSize: 14, - color: '#666', - lineHeight: 20, - marginBottom: 16, - }, - progressContainer: { - marginBottom: 16, - }, - progressLabel: { - fontSize: 12, - color: '#666', - marginBottom: 8, - }, - progressBar: { - height: 8, - backgroundColor: '#E0E0E0', - borderRadius: 4, - overflow: 'hidden', - marginBottom: 4, - }, - progressFill: { - height: '100%', - backgroundColor: KurdistanColors.kesk, - borderRadius: 4, - }, - progressText: { - fontSize: 12, - color: KurdistanColors.kesk, - fontWeight: '600', - }, - courseMetadata: { - borderTopWidth: 1, - borderTopColor: '#F0F0F0', - paddingTop: 12, - marginBottom: 16, - }, - metadataItem: { - flexDirection: 'row', - alignItems: 'center', - marginBottom: 8, - }, - metadataIcon: { - fontSize: 16, - marginRight: 8, - }, - metadataText: { - fontSize: 12, - color: '#666', - }, - enrollButton: { - marginTop: 8, - }, - loadingContainer: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - }, - loadingText: { - marginTop: 12, - fontSize: 14, - color: '#666', - }, - emptyState: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - paddingVertical: 60, - }, - emptyIcon: { - fontSize: 64, - marginBottom: 16, - }, - emptyTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', - marginBottom: 8, - }, - emptyText: { - fontSize: 14, - color: '#666', - textAlign: 'center', - marginBottom: 24, - paddingHorizontal: 32, - }, - browseButton: { - minWidth: 150, + backgroundColor: '#FFFFFF', }, }); diff --git a/mobile/src/screens/ForumScreen.tsx b/mobile/src/screens/ForumScreen.tsx index 54738f3f..63209e93 100644 --- a/mobile/src/screens/ForumScreen.tsx +++ b/mobile/src/screens/ForumScreen.tsx @@ -1,351 +1,20 @@ -import React, { useState } from 'react'; -import { - View, - Text, - StyleSheet, - SafeAreaView, - FlatList, - TouchableOpacity, - ActivityIndicator, - RefreshControl, -} from 'react-native'; -import { useTranslation } from 'react-i18next'; -import { Card, Badge } from '../components'; -import { KurdistanColors, AppColors } from '../theme/colors'; -import { supabase } from '../lib/supabase'; - -interface ForumThread { - id: string; - title: string; - content: string; - author: string; - category: string; - replies_count: number; - views_count: number; - created_at: string; - last_activity: string; - is_pinned: boolean; - is_locked: boolean; -} - -interface ForumCategory { - id: string; - name: string; - description: string; - threads_count: number; - icon: string; -} - -const CATEGORIES: ForumCategory[] = [ - { - id: '1', - name: 'General Discussion', - description: 'General topics about PezkuwiChain', - threads_count: 42, - icon: '💬', - }, - { - id: '2', - name: 'Governance', - description: 'Discuss proposals and governance', - threads_count: 28, - icon: '🏛️', - }, - { - id: '3', - name: 'Technical', - description: 'Development and technical discussions', - threads_count: 35, - icon: '⚙️', - }, - { - id: '4', - name: 'Trading', - description: 'Market discussions and trading', - threads_count: 18, - icon: '📈', - }, -]; - -// Mock data - will be replaced with Supabase -const MOCK_THREADS: ForumThread[] = [ - { - id: '1', - title: 'Welcome to PezkuwiChain Forum!', - content: 'Introduce yourself and join the community...', - author: '5GrwV...xQjz', - category: 'General Discussion', - replies_count: 24, - views_count: 156, - created_at: '2024-01-15T10:00:00Z', - last_activity: '2024-01-20T14:30:00Z', - is_pinned: true, - is_locked: false, - }, - { - id: '2', - title: 'New Governance Proposal: Treasury Allocation', - content: 'Discussion about treasury fund allocation...', - author: '5HpG8...kLm2', - category: 'Governance', - replies_count: 45, - views_count: 289, - created_at: '2024-01-18T09:15:00Z', - last_activity: '2024-01-20T16:45:00Z', - is_pinned: false, - is_locked: false, - }, - { - id: '3', - title: 'How to stake PEZ tokens?', - content: 'Guide for staking PEZ tokens...', - author: '5FHne...pQr8', - category: 'General Discussion', - replies_count: 12, - views_count: 98, - created_at: '2024-01-19T11:20:00Z', - last_activity: '2024-01-20T13:10:00Z', - is_pinned: false, - is_locked: false, - }, -]; - -type ViewType = 'categories' | 'threads'; +import React from 'react'; +import { SafeAreaView, StyleSheet } from 'react-native'; +import { PezkuwiWebView } from '../components'; +/** + * Forum Screen + * + * Uses WebView to load the full-featured forum from the web app. + * Includes categories, threads, posts, replies, and moderation features. + */ const ForumScreen: React.FC = () => { - const { t: _t } = useTranslation(); - - const [viewType, setViewType] = useState('categories'); - const [selectedCategory, setSelectedCategory] = useState(null); - const [threads, setThreads] = useState(MOCK_THREADS); - const [loading, setLoading] = useState(false); - const [refreshing, setRefreshing] = useState(false); - - const fetchThreads = async (categoryId?: string) => { - setLoading(true); - try { - // Fetch from Supabase - let query = supabase - .from('forum_threads') - .select(` - *, - forum_categories(name) - `) - .order('is_pinned', { ascending: false }) - .order('last_activity', { ascending: false }); - - // Filter by category if provided - if (categoryId) { - query = query.eq('category_id', categoryId); - } - - const { data, error } = await query; - - if (error) { - if (__DEV__) console.error('Supabase fetch error:', error); - // Fallback to mock data on error - setThreads(MOCK_THREADS); - return; - } - - if (data && data.length > 0) { - // Transform Supabase data to match ForumThread interface - const transformedThreads: ForumThread[] = data.map((thread: Record) => ({ - id: String(thread.id), - title: String(thread.title), - content: String(thread.content), - author: String(thread.author_id), - category: (thread.forum_categories as { name?: string })?.name || 'Unknown', - replies_count: Number(thread.replies_count) || 0, - views_count: Number(thread.views_count) || 0, - created_at: String(thread.created_at), - last_activity: String(thread.last_activity || thread.created_at), - is_pinned: Boolean(thread.is_pinned), - is_locked: Boolean(thread.is_locked), - })); - setThreads(transformedThreads); - } else { - // No data, use mock data - setThreads(MOCK_THREADS); - } - } catch (error) { - if (__DEV__) console.error('Failed to fetch threads:', error); - // Fallback to mock data on error - setThreads(MOCK_THREADS); - } finally { - setLoading(false); - setRefreshing(false); - } - }; - - const handleRefresh = () => { - setRefreshing(true); - fetchThreads(selectedCategory || undefined); - }; - - const handleCategoryPress = (categoryId: string, _categoryName: string) => { - setSelectedCategory(categoryId); - setViewType('threads'); - fetchThreads(categoryId); - }; - - const formatTimeAgo = (dateString: string) => { - const date = new Date(dateString); - const now = new Date(); - const seconds = Math.floor((now.getTime() - date.getTime()) / 1000); - - if (seconds < 60) return 'Just now'; - if (seconds < 3600) return `${Math.floor(seconds / 60)}m ago`; - if (seconds < 86400) return `${Math.floor(seconds / 3600)}h ago`; - return `${Math.floor(seconds / 86400)}d ago`; - }; - - const renderCategoryCard = ({ item }: { item: ForumCategory }) => ( - handleCategoryPress(item.id, item.name)}> - - - - {item.icon} - - - {item.name} - - {item.description} - - - - - - {item.threads_count} threads - - - - - - ); - - const renderThreadCard = ({ item }: { item: ForumThread }) => ( - - - {/* Thread Header */} - - {item.is_pinned && ( - - 📌 - - )} - - {item.title} - - {item.is_locked && ( - 🔒 - )} - - - {/* Thread Meta */} - - by {item.author} - - - - {/* Thread Stats */} - - - 💬 - {item.replies_count} - - - 👁️ - {item.views_count} - - - 🕐 - - {formatTimeAgo(item.last_activity)} - - - - - - ); - - const renderEmptyState = () => ( - - 💬 - No Threads Yet - - Be the first to start a discussion in this category - - - ); - return ( - {/* Header */} - - - - {viewType === 'categories' ? 'Forum' : 'Threads'} - - - {viewType === 'categories' - ? 'Join the community discussion' - : selectedCategory || 'All threads'} - - - {viewType === 'threads' && ( - setViewType('categories')} - > - ← Back - - )} - - - {/* Content */} - {loading && !refreshing ? ( - - - Loading... - - ) : viewType === 'categories' ? ( - item.id} - contentContainerStyle={styles.listContent} - refreshControl={ - - } - /> - ) : ( - item.id} - contentContainerStyle={styles.listContent} - ListEmptyComponent={renderEmptyState} - refreshControl={ - - } - /> - )} - - {/* Create Thread FAB */} - {viewType === 'threads' && ( - - ✏️ - - )} + ); }; @@ -353,196 +22,7 @@ const ForumScreen: React.FC = () => { const styles = StyleSheet.create({ container: { flex: 1, - backgroundColor: AppColors.background, - }, - header: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'flex-start', - padding: 16, - paddingBottom: 12, - }, - title: { - fontSize: 28, - fontWeight: '700', - color: '#000', - marginBottom: 4, - }, - subtitle: { - fontSize: 14, - color: '#666', - }, - backButton: { - paddingHorizontal: 12, - paddingVertical: 8, - borderRadius: 8, - backgroundColor: '#F5F5F5', - }, - backButtonText: { - fontSize: 14, - fontWeight: '600', - color: KurdistanColors.kesk, - }, - listContent: { - padding: 16, - paddingTop: 8, - }, - categoryCard: { - padding: 16, - marginBottom: 12, - }, - categoryHeader: { - flexDirection: 'row', - alignItems: 'flex-start', - marginBottom: 12, - }, - categoryIcon: { - width: 48, - height: 48, - borderRadius: 12, - backgroundColor: '#F0F9F4', - justifyContent: 'center', - alignItems: 'center', - marginRight: 12, - }, - categoryIconText: { - fontSize: 24, - }, - categoryInfo: { - flex: 1, - }, - categoryName: { - fontSize: 18, - fontWeight: '700', - color: '#000', - marginBottom: 4, - }, - categoryDescription: { - fontSize: 14, - color: '#666', - lineHeight: 20, - }, - categoryFooter: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - paddingTop: 12, - borderTopWidth: 1, - borderTopColor: '#F0F0F0', - }, - categoryStats: { - fontSize: 14, - color: '#666', - }, - categoryArrow: { - fontSize: 20, - color: KurdistanColors.kesk, - }, - threadCard: { - padding: 16, - marginBottom: 12, - }, - threadHeader: { - flexDirection: 'row', - alignItems: 'flex-start', - marginBottom: 8, - }, - pinnedBadge: { - marginRight: 8, - }, - pinnedIcon: { - fontSize: 16, - }, - threadTitle: { - flex: 1, - fontSize: 16, - fontWeight: '700', - color: '#000', - lineHeight: 22, - }, - lockedIcon: { - fontSize: 16, - marginLeft: 8, - }, - threadMeta: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - marginBottom: 12, - }, - threadAuthor: { - fontSize: 12, - color: '#666', - }, - threadStats: { - flexDirection: 'row', - gap: 16, - paddingTop: 12, - borderTopWidth: 1, - borderTopColor: '#F0F0F0', - }, - statItem: { - flexDirection: 'row', - alignItems: 'center', - gap: 4, - }, - statIcon: { - fontSize: 14, - }, - statText: { - fontSize: 12, - color: '#666', - }, - loadingContainer: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - }, - loadingText: { - marginTop: 12, - fontSize: 14, - color: '#666', - }, - emptyState: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - paddingVertical: 60, - }, - emptyIcon: { - fontSize: 64, - marginBottom: 16, - }, - emptyTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', - marginBottom: 8, - }, - emptyText: { - fontSize: 14, - color: '#666', - textAlign: 'center', - paddingHorizontal: 32, - }, - fab: { - position: 'absolute', - right: 20, - bottom: 20, - width: 56, - height: 56, - borderRadius: 28, - backgroundColor: KurdistanColors.kesk, - justifyContent: 'center', - alignItems: 'center', - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, - elevation: 8, - }, - fabIcon: { - fontSize: 24, + backgroundColor: '#FFFFFF', }, }); diff --git a/mobile/src/screens/GovernanceScreen.tsx b/mobile/src/screens/GovernanceScreen.tsx index 28c995dc..3afe5a5d 100644 --- a/mobile/src/screens/GovernanceScreen.tsx +++ b/mobile/src/screens/GovernanceScreen.tsx @@ -1,1057 +1,30 @@ -import React, { useState, useEffect, useCallback } from 'react'; -import { - View, - Text, - StyleSheet, - ScrollView, - RefreshControl, - Alert, - TouchableOpacity, -} from 'react-native'; -import { usePolkadot } from '../contexts/PolkadotContext'; -import { AppColors, KurdistanColors } from '../theme/colors'; -import { - Card, - Button, - BottomSheet, - Badge, - CardSkeleton, -} from '../components'; - -interface Proposal { - index: number; - proposer: string; - description: string; - value: string; - beneficiary: string; - bond: string; - ayes: number; - nays: number; - status: 'active' | 'approved' | 'rejected'; - endBlock: number; -} - -interface Election { - id: number; - type: 'Presidential' | 'Parliamentary' | 'Constitutional Court'; - status: 'Registration' | 'Campaign' | 'Voting' | 'Completed'; - candidates: Candidate[]; - totalVotes: number; - endBlock: number; - currentBlock: number; -} - -interface Candidate { - id: string; - name: string; - votes: number; - percentage: number; - party?: string; - trustScore: number; -} - -type TabType = 'proposals' | 'elections' | 'parliament'; +import React from 'react'; +import { SafeAreaView, StyleSheet } from 'react-native'; +import { PezkuwiWebView } from '../components'; /** * Governance Screen - * View proposals, vote, participate in governance - * Inspired by Polkadot governance and modern DAO interfaces + * + * Uses WebView to load the governance interface from the web app. + * Includes elections, proposals, voting, and government role management. + * Native wallet bridge allows transaction signing for votes. */ -export default function GovernanceScreen() { - const { api, selectedAccount, isApiReady } = usePolkadot(); - const [activeTab, setActiveTab] = useState('proposals'); - const [proposals, setProposals] = useState([]); - const [elections, setElections] = useState([]); - const [loading, setLoading] = useState(true); - const [refreshing, setRefreshing] = useState(false); - const [selectedProposal, setSelectedProposal] = useState(null); - const [selectedElection, setSelectedElection] = useState(null); - const [voteSheetVisible, setVoteSheetVisible] = useState(false); - const [electionSheetVisible, setElectionSheetVisible] = useState(false); - const [voting, setVoting] = useState(false); - const [votedCandidates, setVotedCandidates] = useState([]); - - const fetchProposals = useCallback(async () => { - try { - setLoading(true); - - if (!api) return; - - // Fetch democracy proposals - const proposalEntries = await api.query.democracy?.publicProps(); - - if (!proposalEntries || proposalEntries.isEmpty) { - setProposals([]); - return; - } - - const proposalsList: Proposal[] = []; - - // Parse proposals - const publicProps = proposalEntries.toJSON() as unknown[]; - - for (const [index, _proposal, proposer] of publicProps as Array<[unknown, unknown, unknown]>) { - // For demo, create sample proposals - // In production, decode actual proposal data - proposalsList.push({ - index: index as number, - proposer: proposer as string, - description: `Proposal #${index}: Infrastructure Development`, - value: '10000', - beneficiary: '5GrwvaEF...', - bond: '1000', - ayes: Math.floor(Math.random() * 1000), - nays: Math.floor(Math.random() * 200), - status: 'active', - endBlock: 1000000, - }); - } - - setProposals(proposalsList); - } catch (error) { - if (__DEV__) console.error('Error fetching proposals:', error); - Alert.alert('Error', 'Failed to load proposals'); - } finally { - setLoading(false); - setRefreshing(false); - } - }, [api]); - - const fetchElections = useCallback(async () => { - try { - // Mock elections data - // In production, this would fetch from pallet-tiki or election pallet - const mockElections: Election[] = [ - { - id: 1, - type: 'Presidential', - status: 'Voting', - totalVotes: 45678, - endBlock: 1000000, - currentBlock: 995000, - candidates: [ - { id: '1', name: 'Candidate A', votes: 23456, percentage: 51.3, trustScore: 850 }, - { id: '2', name: 'Candidate B', votes: 22222, percentage: 48.7, trustScore: 780 } - ] - }, - { - id: 2, - type: 'Parliamentary', - status: 'Campaign', - totalVotes: 12340, - endBlock: 1200000, - currentBlock: 995000, - candidates: [ - { id: '3', name: 'Candidate C', votes: 5678, percentage: 46.0, party: 'Green Party', trustScore: 720 }, - { id: '4', name: 'Candidate D', votes: 4567, percentage: 37.0, party: 'Democratic Alliance', trustScore: 690 }, - { id: '5', name: 'Candidate E', votes: 2095, percentage: 17.0, party: 'Independent', trustScore: 650 } - ] - } - ]; - setElections(mockElections); - } catch (error) { - if (__DEV__) console.error('Error fetching elections:', error); - } - }, []); - - useEffect(() => { - if (isApiReady && selectedAccount) { - void fetchProposals(); - void fetchElections(); - } - }, [isApiReady, selectedAccount, fetchProposals, fetchElections]); - - const handleVote = async (approve: boolean) => { - if (!selectedProposal) return; - - try { - setVoting(true); - - if (!api || !selectedAccount) return; - - // Vote on proposal (referendum) - const tx = approve - ? api.tx.democracy.vote(selectedProposal.index, { Standard: { vote: { aye: true, conviction: 'None' }, balance: '1000000000000' } }) - : api.tx.democracy.vote(selectedProposal.index, { Standard: { vote: { aye: false, conviction: 'None' }, balance: '1000000000000' } }); - - await tx.signAndSend(selectedAccount.address, ({ status }) => { - if (status.isInBlock) { - Alert.alert( - 'Success', - `Vote ${approve ? 'FOR' : 'AGAINST'} recorded successfully!` - ); - setVoteSheetVisible(false); - setSelectedProposal(null); - fetchProposals(); - } - }); - } catch (error: unknown) { - if (__DEV__) console.error('Voting error:', error); - Alert.alert('Error', error instanceof Error ? error.message : 'Failed to submit vote'); - } finally { - setVoting(false); - } - }; - - const handleElectionVote = (candidateId: string) => { - if (!selectedElection) return; - - if (selectedElection.type === 'Parliamentary') { - // Multiple selection for Parliamentary - setVotedCandidates(prev => - prev.includes(candidateId) - ? prev.filter(id => id !== candidateId) - : [...prev, candidateId] - ); - } else { - // Single selection for Presidential - setVotedCandidates([candidateId]); - } - }; - - const submitElectionVote = async () => { - if (votedCandidates.length === 0) { - Alert.alert('Error', 'Please select at least one candidate'); - return; - } - - if (!api || !selectedAccount || !selectedElection) { - Alert.alert('Error', 'Wallet not connected'); - return; - } - - try { - setVoting(true); - - // Submit vote to blockchain via pallet-welati - // For single vote (Presidential): api.tx.welati.voteInElection(electionId, candidateId) - // For multiple votes (Parliamentary): submit each vote separately - const electionId = selectedElection.id; - - if (selectedElection.type === 'Parliamentary') { - // Submit multiple votes for parliamentary elections - const txs = votedCandidates.map(candidateId => - api.tx.welati.voteInElection(electionId, candidateId) - ); - - // Batch all votes together - const batchTx = api.tx.utility.batch(txs); - - await batchTx.signAndSend(selectedAccount.address, ({ status, dispatchError }) => { - if (dispatchError) { - if (dispatchError.isModule) { - const decoded = api.registry.findMetaError(dispatchError.asModule); - throw new Error(`${decoded.section}.${decoded.name}: ${decoded.docs}`); - } else { - throw new Error(dispatchError.toString()); - } - } - - if (status.isInBlock) { - Alert.alert('Success', `Your ${votedCandidates.length} votes have been recorded!`); - setElectionSheetVisible(false); - setSelectedElection(null); - setVotedCandidates([]); - fetchElections(); - } - }); - } else { - // Single vote for presidential/other elections - const candidateId = votedCandidates[0]; - const tx = api.tx.welati.voteInElection(electionId, candidateId); - - await tx.signAndSend(selectedAccount.address, ({ status, dispatchError }) => { - if (dispatchError) { - if (dispatchError.isModule) { - const decoded = api.registry.findMetaError(dispatchError.asModule); - throw new Error(`${decoded.section}.${decoded.name}: ${decoded.docs}`); - } else { - throw new Error(dispatchError.toString()); - } - } - - if (status.isInBlock) { - Alert.alert('Success', 'Your vote has been recorded!'); - setElectionSheetVisible(false); - setSelectedElection(null); - setVotedCandidates([]); - fetchElections(); - } - }); - } - } catch (error: unknown) { - if (__DEV__) console.error('Election voting error:', error); - Alert.alert('Error', error instanceof Error ? error.message : 'Failed to submit vote'); - } finally { - setVoting(false); - } - }; - - if (loading && proposals.length === 0) { - return ( - - - - - - ); - } - +const GovernanceScreen: React.FC = () => { return ( - - {/* Header */} - - Governance - - Participate in digital democracy - - - - {/* Tabs */} - - setActiveTab('proposals')} - > - - Proposals ({proposals.length}) - - - - setActiveTab('elections')} - > - - Elections ({elections.length}) - - - - setActiveTab('parliament')} - > - - Parliament - - - - - { - setRefreshing(true); - fetchProposals(); - fetchElections(); - }} - /> - } - > - {/* Stats */} - - - {proposals.length} - Active Proposals - - - {elections.length} - Active Elections - - - - {/* Tab Content */} - {activeTab === 'proposals' && ( - <> - Active Proposals - {proposals.length === 0 ? ( - - No active proposals - - Check back later for new governance proposals - - - ) : ( - proposals.map((proposal) => ( - { - setSelectedProposal(proposal); - setVoteSheetVisible(true); - }} - /> - )) - )} - - )} - - {activeTab === 'elections' && ( - <> - Active Elections - {elections.length === 0 ? ( - - No active elections - - Check back later for upcoming elections - - - ) : ( - elections.map((election) => ( - { - setSelectedElection(election); - setVotedCandidates([]); - setElectionSheetVisible(true); - }} - /> - )) - )} - - )} - - {activeTab === 'parliament' && ( - <> - Parliament Status - - - Active Members - 0 / 27 - - - Current Session - - - - Pending Votes - 5 - - - - Dîwan (Constitutional Court) - - - Active Judges - 0 / 9 - - - Pending Reviews - 3 - - - Recent Decisions - 12 - - - - )} - - {/* Info Card */} - - 🗳️ How Voting Works - - Each HEZ token equals one vote. Your vote helps shape the future of Digital Kurdistan. Proposals need majority approval to pass. - - - - - {/* Vote Bottom Sheet */} - setVoteSheetVisible(false)} - title="Vote on Proposal" - height={500} - > - {selectedProposal && ( - - - {selectedProposal.description} - - - - - - - - {/* Vote Progress */} - - - - - - {selectedProposal.ayes} For - {selectedProposal.nays} Against - - - - {/* Vote Buttons */} - - - - ); - - const renderEmptyState = () => ( - - 📭 - No Offers Available - - {activeTab === 'my-offers' - ? 'You haven\'t created any offers yet' - : 'No active offers at the moment'} - - {activeTab === 'my-offers' && ( - - )} - - ); - return ( - {/* Header */} - - - P2P Trading - Buy and sell crypto with local currency - - setShowCreateOffer(true)} - > - + Post Ad - - - - {/* Tabs */} - - setActiveTab('buy')} - > - - Buy - - - - setActiveTab('sell')} - > - - Sell - - - - setActiveTab('my-offers')} - > - - My Offers - - - - - {/* Offer List */} - {loading && !refreshing ? ( - - - Loading offers... - - ) : ( - item.id} - contentContainerStyle={styles.listContent} - ListEmptyComponent={renderEmptyState} - refreshControl={ - - } - /> - )} - - {/* Trade Modal */} - setShowTradeModal(false)} - > - - - - - Buy {selectedOffer?.token || 'Token'} - - { - setShowTradeModal(false); - setTradeAmount(''); - }} - > - - - - - - {selectedOffer && ( - <> - {/* Seller Info */} - - Trading with - - {selectedOffer.seller_wallet.slice(0, 6)}... - {selectedOffer.seller_wallet.slice(-4)} - - - - {/* Price Info */} - - - Price - - {selectedOffer.price_per_unit.toFixed(2)}{' '} - {selectedOffer.fiat_currency} - - - - Available - - {selectedOffer.remaining_amount} {selectedOffer.token} - - - - - {/* Amount Input */} - - - Amount to Buy ({selectedOffer.token}) - - - {selectedOffer.min_order_amount && ( - - Min: {selectedOffer.min_order_amount} {selectedOffer.token} - - )} - {selectedOffer.max_order_amount && ( - - Max: {selectedOffer.max_order_amount} {selectedOffer.token} - - )} - - - {/* Calculation */} - {parseFloat(tradeAmount) > 0 && ( - - You will pay - - {(parseFloat(tradeAmount) * selectedOffer.price_per_unit).toFixed(2)}{' '} - {selectedOffer.fiat_currency} - - - )} - - {/* Trade Button */} - - - )} - - - - - - {/* Create Offer Modal */} - setShowCreateOffer(false)} - > - - - - Create Offer - setShowCreateOffer(false)}> - - - - - - - 🚧 - Coming Soon - - Create P2P offer functionality will be available in the next update. - The blockchain integration is ready and waiting for final testing! - - - - - - - + ); }; @@ -464,312 +23,7 @@ const P2PScreen: React.FC = () => { const styles = StyleSheet.create({ container: { flex: 1, - backgroundColor: AppColors.background, - }, - header: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'flex-start', - padding: 16, - paddingBottom: 12, - }, - title: { - fontSize: 28, - fontWeight: '700', - color: '#000', - marginBottom: 4, - }, - subtitle: { - fontSize: 14, - color: '#666', - }, - createButton: { - backgroundColor: KurdistanColors.kesk, - paddingHorizontal: 16, - paddingVertical: 10, - borderRadius: 8, - }, - createButtonText: { - color: '#FFFFFF', - fontSize: 14, - fontWeight: '600', - }, - tabs: { - flexDirection: 'row', - paddingHorizontal: 16, - borderBottomWidth: 1, - borderBottomColor: '#E0E0E0', - marginBottom: 16, - }, - tab: { - flex: 1, - paddingVertical: 12, - alignItems: 'center', - borderBottomWidth: 2, - borderBottomColor: 'transparent', - }, - activeTab: { - borderBottomColor: KurdistanColors.kesk, - }, - tabText: { - fontSize: 16, - fontWeight: '600', - color: '#666', - }, - activeTabText: { - color: KurdistanColors.kesk, - }, - listContent: { - padding: 16, - paddingTop: 0, - }, - offerCard: { - padding: 16, - marginBottom: 16, - }, - sellerRow: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'flex-start', - marginBottom: 16, - paddingBottom: 16, - borderBottomWidth: 1, - borderBottomColor: '#F0F0F0', - }, - sellerInfo: { - flexDirection: 'row', - alignItems: 'center', - }, - sellerAvatar: { - width: 48, - height: 48, - borderRadius: 24, - backgroundColor: KurdistanColors.kesk, - justifyContent: 'center', - alignItems: 'center', - }, - sellerAvatarText: { - fontSize: 18, - fontWeight: '700', - color: '#FFFFFF', - }, - sellerDetails: { - marginLeft: 12, - }, - sellerName: { - fontSize: 16, - fontWeight: '600', - color: '#000', - marginBottom: 4, - }, - reputationRow: { - flexDirection: 'row', - alignItems: 'center', - gap: 8, - }, - tradesCount: { - fontSize: 12, - color: '#666', - }, - verifiedBadge: { - width: 24, - height: 24, - borderRadius: 12, - backgroundColor: KurdistanColors.kesk, - justifyContent: 'center', - alignItems: 'center', - }, - verifiedIcon: { - fontSize: 14, - color: '#FFFFFF', - fontWeight: '700', - }, - offerDetails: { - marginBottom: 16, - }, - detailRow: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - paddingVertical: 8, - }, - detailLabel: { - fontSize: 14, - color: '#666', - }, - detailValue: { - fontSize: 14, - fontWeight: '600', - color: '#000', - }, - totalValue: { - fontSize: 16, - color: KurdistanColors.kesk, - }, - tradeButton: { - marginTop: 8, - }, - loadingContainer: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - }, - loadingText: { - marginTop: 12, - fontSize: 14, - color: '#666', - }, - emptyState: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - paddingVertical: 60, - }, - emptyIcon: { - fontSize: 64, - marginBottom: 16, - }, - emptyTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', - marginBottom: 8, - }, - emptyText: { - fontSize: 14, - color: '#666', - textAlign: 'center', - marginBottom: 24, - }, - modalOverlay: { - flex: 1, - backgroundColor: 'rgba(0, 0, 0, 0.5)', - justifyContent: 'flex-end', - }, - modalContent: { backgroundColor: '#FFFFFF', - borderTopLeftRadius: 20, - borderTopRightRadius: 20, - paddingTop: 20, - paddingHorizontal: 20, - paddingBottom: 40, - maxHeight: '90%', - }, - modalHeader: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - marginBottom: 20, - paddingBottom: 16, - borderBottomWidth: 1, - borderBottomColor: '#E0E0E0', - }, - modalTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', - }, - modalClose: { - fontSize: 24, - color: '#666', - fontWeight: '600', - }, - modalSection: { - marginBottom: 20, - }, - modalSectionTitle: { - fontSize: 12, - color: '#666', - marginBottom: 8, - textTransform: 'uppercase', - }, - modalAddress: { - fontSize: 16, - fontWeight: '600', - color: '#000', - }, - priceSection: { - backgroundColor: '#F5F5F5', - padding: 16, - borderRadius: 12, - }, - priceRow: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - marginBottom: 8, - }, - priceLabel: { - fontSize: 14, - color: '#666', - }, - priceValue: { - fontSize: 16, - fontWeight: '700', - color: KurdistanColors.kesk, - }, - inputLabel: { - fontSize: 14, - fontWeight: '600', - color: '#000', - marginBottom: 8, - }, - modalInput: { - backgroundColor: '#F5F5F5', - borderRadius: 12, - padding: 16, - fontSize: 16, - borderWidth: 1, - borderColor: '#E0E0E0', - }, - inputHint: { - fontSize: 12, - color: '#666', - marginTop: 4, - }, - calculationSection: { - backgroundColor: 'rgba(0, 169, 79, 0.1)', - padding: 16, - borderRadius: 12, - borderWidth: 1, - borderColor: 'rgba(0, 169, 79, 0.3)', - }, - calculationLabel: { - fontSize: 12, - color: '#666', - marginBottom: 4, - }, - calculationValue: { - fontSize: 24, - fontWeight: '700', - color: KurdistanColors.kesk, - }, - tradeModalButton: { - marginTop: 20, - }, - comingSoonContainer: { - alignItems: 'center', - paddingVertical: 40, - }, - comingSoonIcon: { - fontSize: 64, - marginBottom: 16, - }, - comingSoonTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', - marginBottom: 12, - }, - comingSoonText: { - fontSize: 14, - color: '#666', - textAlign: 'center', - marginBottom: 24, - lineHeight: 20, - }, - comingSoonButton: { - minWidth: 120, }, }); diff --git a/mobile/src/screens/PoolBrowserScreen.tsx b/mobile/src/screens/PoolBrowserScreen.tsx new file mode 100644 index 00000000..3a397a5f --- /dev/null +++ b/mobile/src/screens/PoolBrowserScreen.tsx @@ -0,0 +1,527 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + TextInput, + ActivityIndicator, + RefreshControl, + Alert, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; + +interface PoolInfo { + id: string; + asset1: number; + asset2: number; + asset1Symbol: string; + asset2Symbol: string; + asset1Decimals: number; + asset2Decimals: number; + reserve1: string; + reserve2: string; + feeRate?: string; + volume24h?: string; + apr7d?: string; +} + +const PoolBrowserScreen: React.FC = () => { + const { api, isApiReady } = usePezkuwi(); + + const [pools, setPools] = useState([]); + const [loading, setLoading] = useState(true); + const [refreshing, setRefreshing] = useState(false); + const [searchTerm, setSearchTerm] = useState(''); + + const fetchPools = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch all pools from chain + const poolsEntries = await api.query.assetConversion.pools.entries(); + + const poolsData: PoolInfo[] = []; + + for (const [key, value] of poolsEntries) { + const poolAccount = value.toString(); + + // Parse pool assets from key + const keyData = key.toHuman() as any; + const assets = keyData[0]; + + if (!assets || assets.length !== 2) continue; + + const asset1 = parseInt(assets[0]); + const asset2 = parseInt(assets[1]); + + // Fetch metadata for both assets + let asset1Symbol = asset1 === 0 ? 'wHEZ' : 'Unknown'; + let asset2Symbol = asset2 === 0 ? 'wHEZ' : 'Unknown'; + let asset1Decimals = 12; + let asset2Decimals = 12; + + try { + if (asset1 !== 0) { + const metadata1 = await api.query.assets.metadata(asset1); + const meta1 = metadata1.toJSON() as any; + asset1Symbol = meta1.symbol || `Asset ${asset1}`; + asset1Decimals = meta1.decimals || 12; + } + + if (asset2 !== 0) { + const metadata2 = await api.query.assets.metadata(asset2); + const meta2 = metadata2.toJSON() as any; + asset2Symbol = meta2.symbol || `Asset ${asset2}`; + asset2Decimals = meta2.decimals || 12; + } + } catch (error) { + console.error('Failed to fetch asset metadata:', error); + } + + // Fetch pool reserves + let reserve1 = '0'; + let reserve2 = '0'; + + try { + if (asset1 === 0) { + // Native token (wHEZ) + const balance1 = await api.query.system.account(poolAccount); + reserve1 = balance1.data.free.toString(); + } else { + const balance1 = await api.query.assets.account(asset1, poolAccount); + reserve1 = balance1.isSome ? balance1.unwrap().balance.toString() : '0'; + } + + if (asset2 === 0) { + const balance2 = await api.query.system.account(poolAccount); + reserve2 = balance2.data.free.toString(); + } else { + const balance2 = await api.query.assets.account(asset2, poolAccount); + reserve2 = balance2.isSome ? balance2.unwrap().balance.toString() : '0'; + } + } catch (error) { + console.error('Failed to fetch reserves:', error); + } + + poolsData.push({ + id: `${asset1}-${asset2}`, + asset1, + asset2, + asset1Symbol, + asset2Symbol, + asset1Decimals, + asset2Decimals, + reserve1, + reserve2, + feeRate: '0.3', // 0.3% default + volume24h: 'N/A', + apr7d: 'N/A', + }); + } + + setPools(poolsData); + } catch (error) { + console.error('Failed to load pools:', error); + Alert.alert('Error', 'Failed to load liquidity pools'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchPools(); + + // Refresh pools every 10 seconds + const interval = setInterval(fetchPools, 10000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchPools(); + }; + + const filteredPools = pools.filter((pool) => { + if (!searchTerm) return true; + const search = searchTerm.toLowerCase(); + return ( + pool.asset1Symbol.toLowerCase().includes(search) || + pool.asset2Symbol.toLowerCase().includes(search) || + pool.id.toLowerCase().includes(search) + ); + }); + + const formatBalance = (balance: string, decimals: number): string => { + return (Number(balance) / Math.pow(10, decimals)).toFixed(2); + }; + + const calculateExchangeRate = (pool: PoolInfo): string => { + const reserve1Num = Number(pool.reserve1); + const reserve2Num = Number(pool.reserve2); + + if (reserve1Num === 0) return '0'; + + const rate = reserve2Num / reserve1Num; + return rate.toFixed(4); + }; + + const handleAddLiquidity = (pool: PoolInfo) => { + Alert.alert('Add Liquidity', `Adding liquidity to ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to AddLiquidityModal + }; + + const handleRemoveLiquidity = (pool: PoolInfo) => { + Alert.alert('Remove Liquidity', `Removing liquidity from ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to RemoveLiquidityModal + }; + + const handleSwap = (pool: PoolInfo) => { + Alert.alert('Swap', `Swapping in ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to SwapScreen with pool pre-selected + }; + + if (loading && pools.length === 0) { + return ( + + + + Loading liquidity pools... + + + ); + } + + return ( + + + } + > + {/* Header */} + + Liquidity Pools + + + {/* Search Bar */} + + 🔍 + + + + {/* Pools List */} + {filteredPools.length === 0 ? ( + + 💧 + + {searchTerm + ? 'No pools found matching your search' + : 'No liquidity pools available yet'} + + + ) : ( + + {filteredPools.map((pool) => ( + + {/* Pool Header */} + + + {pool.asset1Symbol} + / + {pool.asset2Symbol} + + + Active + + + + {/* Reserves */} + + + Reserve {pool.asset1Symbol} + + {formatBalance(pool.reserve1, pool.asset1Decimals)} {pool.asset1Symbol} + + + + Reserve {pool.asset2Symbol} + + {formatBalance(pool.reserve2, pool.asset2Decimals)} {pool.asset2Symbol} + + + + + {/* Exchange Rate */} + + Exchange Rate + + 1 {pool.asset1Symbol} = {calculateExchangeRate(pool)} {pool.asset2Symbol} + + + + {/* Stats Row */} + + + Fee + {pool.feeRate}% + + + Volume 24h + {pool.volume24h} + + + APR + + {pool.apr7d} + + + + + {/* Action Buttons */} + + handleAddLiquidity(pool)} + > + 💧 Add + + handleRemoveLiquidity(pool)} + > + Remove + + handleSwap(pool)} + > + 📈 Swap + + + + ))} + + )} + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + centerContent: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 40, + }, + loadingText: { + marginTop: 16, + fontSize: 16, + color: '#666', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 24, + fontWeight: 'bold', + color: '#333', + }, + searchContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + marginHorizontal: 20, + marginBottom: 20, + paddingHorizontal: 16, + paddingVertical: 12, + borderRadius: 12, + boxShadow: '0px 1px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + searchIcon: { + fontSize: 18, + marginRight: 8, + }, + searchInput: { + flex: 1, + fontSize: 16, + color: '#333', + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + poolsList: { + padding: 16, + gap: 16, + }, + poolCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + poolHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + poolTitleRow: { + flexDirection: 'row', + alignItems: 'center', + }, + poolAsset1: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + poolSeparator: { + fontSize: 18, + color: '#999', + marginHorizontal: 4, + }, + poolAsset2: { + fontSize: 18, + fontWeight: 'bold', + color: '#F59E0B', + }, + activeBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 12, + paddingVertical: 4, + borderRadius: 12, + borderWidth: 1, + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + activeBadgeText: { + fontSize: 12, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + reservesSection: { + gap: 8, + marginBottom: 16, + }, + reserveRow: { + flexDirection: 'row', + justifyContent: 'space-between', + }, + reserveLabel: { + fontSize: 14, + color: '#666', + }, + reserveValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + fontFamily: 'monospace', + }, + exchangeRateCard: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + padding: 12, + marginBottom: 16, + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + exchangeRateLabel: { + fontSize: 14, + color: '#666', + }, + exchangeRateValue: { + fontSize: 14, + fontWeight: '600', + color: '#3B82F6', + fontFamily: 'monospace', + }, + statsRow: { + flexDirection: 'row', + gap: 8, + paddingTop: 16, + borderTopWidth: 1, + borderTopColor: '#E5E5E5', + marginBottom: 16, + }, + statBox: { + flex: 1, + alignItems: 'center', + }, + statLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + statValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + statValuePositive: { + color: KurdistanColors.kesk, + }, + actionButtons: { + flexDirection: 'row', + gap: 8, + }, + actionButton: { + flex: 1, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + borderWidth: 1, + }, + addButton: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + removeButton: { + backgroundColor: 'rgba(239, 68, 68, 0.1)', + borderColor: 'rgba(239, 68, 68, 0.3)', + }, + swapButton: { + backgroundColor: 'rgba(59, 130, 246, 0.1)', + borderColor: 'rgba(59, 130, 246, 0.3)', + }, + actionButtonText: { + fontSize: 12, + fontWeight: '600', + color: '#333', + }, +}); + +export default PoolBrowserScreen; diff --git a/mobile/src/screens/PoolBrowserScreen.tsx.bak b/mobile/src/screens/PoolBrowserScreen.tsx.bak new file mode 100644 index 00000000..4e6bea45 --- /dev/null +++ b/mobile/src/screens/PoolBrowserScreen.tsx.bak @@ -0,0 +1,533 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + TextInput, + ActivityIndicator, + RefreshControl, + Alert, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; + +interface PoolInfo { + id: string; + asset1: number; + asset2: number; + asset1Symbol: string; + asset2Symbol: string; + asset1Decimals: number; + asset2Decimals: number; + reserve1: string; + reserve2: string; + feeRate?: string; + volume24h?: string; + apr7d?: string; +} + +const PoolBrowserScreen: React.FC = () => { + const { api, isApiReady } = usePezkuwi(); + + const [pools, setPools] = useState([]); + const [loading, setLoading] = useState(true); + const [refreshing, setRefreshing] = useState(false); + const [searchTerm, setSearchTerm] = useState(''); + + const fetchPools = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch all pools from chain + const poolsEntries = await api.query.assetConversion.pools.entries(); + + const poolsData: PoolInfo[] = []; + + for (const [key, value] of poolsEntries) { + const poolAccount = value.toString(); + + // Parse pool assets from key + const keyData = key.toHuman() as any; + const assets = keyData[0]; + + if (!assets || assets.length !== 2) continue; + + const asset1 = parseInt(assets[0]); + const asset2 = parseInt(assets[1]); + + // Fetch metadata for both assets + let asset1Symbol = asset1 === 0 ? 'wHEZ' : 'Unknown'; + let asset2Symbol = asset2 === 0 ? 'wHEZ' : 'Unknown'; + let asset1Decimals = 12; + let asset2Decimals = 12; + + try { + if (asset1 !== 0) { + const metadata1 = await api.query.assets.metadata(asset1); + const meta1 = metadata1.toJSON() as any; + asset1Symbol = meta1.symbol || `Asset ${asset1}`; + asset1Decimals = meta1.decimals || 12; + } + + if (asset2 !== 0) { + const metadata2 = await api.query.assets.metadata(asset2); + const meta2 = metadata2.toJSON() as any; + asset2Symbol = meta2.symbol || `Asset ${asset2}`; + asset2Decimals = meta2.decimals || 12; + } + } catch (error) { + console.error('Failed to fetch asset metadata:', error); + } + + // Fetch pool reserves + let reserve1 = '0'; + let reserve2 = '0'; + + try { + if (asset1 === 0) { + // Native token (wHEZ) + const balance1 = await api.query.system.account(poolAccount); + reserve1 = balance1.data.free.toString(); + } else { + const balance1 = await api.query.assets.account(asset1, poolAccount); + reserve1 = balance1.isSome ? balance1.unwrap().balance.toString() : '0'; + } + + if (asset2 === 0) { + const balance2 = await api.query.system.account(poolAccount); + reserve2 = balance2.data.free.toString(); + } else { + const balance2 = await api.query.assets.account(asset2, poolAccount); + reserve2 = balance2.isSome ? balance2.unwrap().balance.toString() : '0'; + } + } catch (error) { + console.error('Failed to fetch reserves:', error); + } + + poolsData.push({ + id: `${asset1}-${asset2}`, + asset1, + asset2, + asset1Symbol, + asset2Symbol, + asset1Decimals, + asset2Decimals, + reserve1, + reserve2, + feeRate: '0.3', // 0.3% default + volume24h: 'N/A', + apr7d: 'N/A', + }); + } + + setPools(poolsData); + } catch (error) { + console.error('Failed to load pools:', error); + Alert.alert('Error', 'Failed to load liquidity pools'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchPools(); + + // Refresh pools every 10 seconds + const interval = setInterval(fetchPools, 10000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchPools(); + }; + + const filteredPools = pools.filter((pool) => { + if (!searchTerm) return true; + const search = searchTerm.toLowerCase(); + return ( + pool.asset1Symbol.toLowerCase().includes(search) || + pool.asset2Symbol.toLowerCase().includes(search) || + pool.id.toLowerCase().includes(search) + ); + }); + + const formatBalance = (balance: string, decimals: number): string => { + return (Number(balance) / Math.pow(10, decimals)).toFixed(2); + }; + + const calculateExchangeRate = (pool: PoolInfo): string => { + const reserve1Num = Number(pool.reserve1); + const reserve2Num = Number(pool.reserve2); + + if (reserve1Num === 0) return '0'; + + const rate = reserve2Num / reserve1Num; + return rate.toFixed(4); + }; + + const handleAddLiquidity = (pool: PoolInfo) => { + Alert.alert('Add Liquidity', `Adding liquidity to ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to AddLiquidityModal + }; + + const handleRemoveLiquidity = (pool: PoolInfo) => { + Alert.alert('Remove Liquidity', `Removing liquidity from ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to RemoveLiquidityModal + }; + + const handleSwap = (pool: PoolInfo) => { + Alert.alert('Swap', `Swapping in ${pool.asset1Symbol}/${pool.asset2Symbol} pool`); + // TODO: Navigate to SwapScreen with pool pre-selected + }; + + if (loading && pools.length === 0) { + return ( + + + + Loading liquidity pools... + + + ); + } + + return ( + + + } + > + {/* Header */} + + Liquidity Pools + + + {/* Search Bar */} + + 🔍 + + + + {/* Pools List */} + {filteredPools.length === 0 ? ( + + 💧 + + {searchTerm + ? 'No pools found matching your search' + : 'No liquidity pools available yet'} + + + ) : ( + + {filteredPools.map((pool) => ( + + {/* Pool Header */} + + + {pool.asset1Symbol} + / + {pool.asset2Symbol} + + + Active + + + + {/* Reserves */} + + + Reserve {pool.asset1Symbol} + + {formatBalance(pool.reserve1, pool.asset1Decimals)} {pool.asset1Symbol} + + + + Reserve {pool.asset2Symbol} + + {formatBalance(pool.reserve2, pool.asset2Decimals)} {pool.asset2Symbol} + + + + + {/* Exchange Rate */} + + Exchange Rate + + 1 {pool.asset1Symbol} = {calculateExchangeRate(pool)} {pool.asset2Symbol} + + + + {/* Stats Row */} + + + Fee + {pool.feeRate}% + + + Volume 24h + {pool.volume24h} + + + APR + + {pool.apr7d} + + + + + {/* Action Buttons */} + + handleAddLiquidity(pool)} + > + 💧 Add + + handleRemoveLiquidity(pool)} + > + Remove + + handleSwap(pool)} + > + 📈 Swap + + + + ))} + + )} + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + centerContent: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 40, + }, + loadingText: { + marginTop: 16, + fontSize: 16, + color: '#666', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 24, + fontWeight: 'bold', + color: '#333', + }, + searchContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + marginHorizontal: 20, + marginBottom: 20, + paddingHorizontal: 16, + paddingVertical: 12, + borderRadius: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 1 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + searchIcon: { + fontSize: 18, + marginRight: 8, + }, + searchInput: { + flex: 1, + fontSize: 16, + color: '#333', + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + poolsList: { + padding: 16, + gap: 16, + }, + poolCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + poolHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + poolTitleRow: { + flexDirection: 'row', + alignItems: 'center', + }, + poolAsset1: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + poolSeparator: { + fontSize: 18, + color: '#999', + marginHorizontal: 4, + }, + poolAsset2: { + fontSize: 18, + fontWeight: 'bold', + color: '#F59E0B', + }, + activeBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 12, + paddingVertical: 4, + borderRadius: 12, + borderWidth: 1, + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + activeBadgeText: { + fontSize: 12, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + reservesSection: { + gap: 8, + marginBottom: 16, + }, + reserveRow: { + flexDirection: 'row', + justifyContent: 'space-between', + }, + reserveLabel: { + fontSize: 14, + color: '#666', + }, + reserveValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + fontFamily: 'monospace', + }, + exchangeRateCard: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + padding: 12, + marginBottom: 16, + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + exchangeRateLabel: { + fontSize: 14, + color: '#666', + }, + exchangeRateValue: { + fontSize: 14, + fontWeight: '600', + color: '#3B82F6', + fontFamily: 'monospace', + }, + statsRow: { + flexDirection: 'row', + gap: 8, + paddingTop: 16, + borderTopWidth: 1, + borderTopColor: '#E5E5E5', + marginBottom: 16, + }, + statBox: { + flex: 1, + alignItems: 'center', + }, + statLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + statValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + statValuePositive: { + color: KurdistanColors.kesk, + }, + actionButtons: { + flexDirection: 'row', + gap: 8, + }, + actionButton: { + flex: 1, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + borderWidth: 1, + }, + addButton: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + removeButton: { + backgroundColor: 'rgba(239, 68, 68, 0.1)', + borderColor: 'rgba(239, 68, 68, 0.3)', + }, + swapButton: { + backgroundColor: 'rgba(59, 130, 246, 0.1)', + borderColor: 'rgba(59, 130, 246, 0.3)', + }, + actionButtonText: { + fontSize: 12, + fontWeight: '600', + color: '#333', + }, +}); + +export default PoolBrowserScreen; diff --git a/mobile/src/screens/ProfileScreen.tsx b/mobile/src/screens/ProfileScreen.tsx index d6c21e8b..940300a9 100644 --- a/mobile/src/screens/ProfileScreen.tsx +++ b/mobile/src/screens/ProfileScreen.tsx @@ -1,4 +1,4 @@ -import React from 'react'; +import React, { useState, useEffect } from 'react'; import { View, Text, @@ -7,152 +7,242 @@ import { SafeAreaView, ScrollView, StatusBar, + Image, + ActivityIndicator, Alert, } from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; import { useTranslation } from 'react-i18next'; -import { useLanguage } from '../contexts/LanguageContext'; -import { languages } from '../i18n'; +import { useNavigation } from '@react-navigation/native'; +import { useAuth } from '../contexts/AuthContext'; import { KurdistanColors } from '../theme/colors'; +import { supabase } from '../lib/supabase'; +import AvatarPickerModal from '../components/AvatarPickerModal'; -interface SettingsScreenProps { - onBack: () => void; - onLogout: () => void; +// Avatar pool matching AvatarPickerModal +const AVATAR_POOL = [ + { id: 'avatar1', emoji: '👨🏻' }, + { id: 'avatar2', emoji: '👨🏼' }, + { id: 'avatar3', emoji: '👨🏽' }, + { id: 'avatar4', emoji: '👨🏾' }, + { id: 'avatar5', emoji: '👩🏻' }, + { id: 'avatar6', emoji: '👩🏼' }, + { id: 'avatar7', emoji: '👩🏽' }, + { id: 'avatar8', emoji: '👩🏾' }, + { id: 'avatar9', emoji: '🧔🏻' }, + { id: 'avatar10', emoji: '🧔🏼' }, + { id: 'avatar11', emoji: '🧔🏽' }, + { id: 'avatar12', emoji: '🧔🏾' }, + { id: 'avatar13', emoji: '👳🏻‍♂️' }, + { id: 'avatar14', emoji: '👳🏼‍♂️' }, + { id: 'avatar15', emoji: '👳🏽‍♂️' }, + { id: 'avatar16', emoji: '🧕🏻' }, + { id: 'avatar17', emoji: '🧕🏼' }, + { id: 'avatar18', emoji: '🧕🏽' }, + { id: 'avatar19', emoji: '👴🏻' }, + { id: 'avatar20', emoji: '👴🏼' }, + { id: 'avatar21', emoji: '👵🏻' }, + { id: 'avatar22', emoji: '👵🏼' }, + { id: 'avatar23', emoji: '👦🏻' }, + { id: 'avatar24', emoji: '👦🏼' }, + { id: 'avatar25', emoji: '👧🏻' }, + { id: 'avatar26', emoji: '👧🏼' }, +]; + +// Helper function to get emoji from avatar ID +const getEmojiFromAvatarId = (avatarId: string): string => { + const avatar = AVATAR_POOL.find(a => a.id === avatarId); + return avatar ? avatar.emoji : '👤'; // Default to person emoji if not found +}; + +interface ProfileData { + full_name: string | null; + avatar_url: string | null; + wallet_address: string | null; + created_at: string; + referral_code: string | null; + referral_count: number; } -const SettingsScreen: React.FC = ({ onBack, onLogout }) => { +const ProfileScreen: React.FC = () => { const { t } = useTranslation(); - const { currentLanguage, changeLanguage } = useLanguage(); + const navigation = useNavigation(); + const { user, signOut } = useAuth(); + const [profileData, setProfileData] = useState(null); + const [loading, setLoading] = useState(true); + const [avatarModalVisible, setAvatarModalVisible] = useState(false); - const handleLanguageChange = async (languageCode: string) => { - if (languageCode === currentLanguage) return; + useEffect(() => { + fetchProfileData(); + }, [user]); + const fetchProfileData = async () => { + if (!user) { + setLoading(false); + return; + } + + try { + const { data, error} = await supabase + .from('profiles') + .select('*') + .eq('id', user.id) + .single(); + + if (error) throw error; + + setProfileData(data); + } catch (error) { + if (__DEV__) console.error('Error fetching profile:', error); + } finally { + setLoading(false); + } + }; + + const handleLogout = () => { Alert.alert( - 'Change Language', - `Switch to ${languages.find(l => l.code === languageCode)?.nativeName}?`, + 'Logout', + 'Are you sure you want to logout?', [ - { text: t('common.cancel'), style: 'cancel' }, + { text: 'Cancel', style: 'cancel' }, { - text: t('common.confirm'), + text: 'Logout', + style: 'destructive', onPress: async () => { - await changeLanguage(languageCode); - Alert.alert( - t('common.success'), - 'Language updated successfully! The app will now use your selected language.' - ); + await signOut(); }, }, ] ); }; - const handleLogout = () => { - Alert.alert( - t('settings.logout'), - 'Are you sure you want to logout?', - [ - { text: t('common.cancel'), style: 'cancel' }, - { - text: t('settings.logout'), - style: 'destructive', - onPress: onLogout, - }, - ] - ); + const handleAvatarSelected = (avatarUrl: string) => { + setProfileData(prev => prev ? { ...prev, avatar_url: avatarUrl } : null); }; + const ProfileCard = ({ icon, title, value, onPress }: { icon: string; title: string; value: string; onPress?: () => void }) => ( + + {icon} + + {title} + {value} + + {onPress && } + + ); + + if (loading) { + return ( + + + + + + ); + } + return ( - - - {/* Header */} - - - - - {t('settings.title')} - - + - {/* Language Section */} - - {t('settings.language')} - {languages.map((language) => ( - handleLanguageChange(language.code)} - > - - - {language.nativeName} - - {language.name} - - {currentLanguage === language.code && ( - - + {/* Header with Gradient */} + + + setAvatarModalVisible(true)} style={styles.avatarWrapper}> + {profileData?.avatar_url ? ( + // Check if avatar_url is a URL (starts with http) or an emoji ID + profileData.avatar_url.startsWith('http') ? ( + + ) : ( + // It's an emoji ID, render as emoji text + + + {getEmojiFromAvatarId(profileData.avatar_url)} + + + ) + ) : ( + + + {profileData?.full_name?.charAt(0)?.toUpperCase() || user?.email?.charAt(0)?.toUpperCase() || '?'} + )} + + 📷 + - ))} - - - {/* Theme Section */} - - {t('settings.theme')} - - Dark Mode - Off - - - - {/* Notifications Section */} - - {t('settings.notifications')} - - Push Notifications - Enabled - - - Transaction Alerts - Enabled - - - - {/* Security Section */} - - {t('settings.security')} - - Biometric Login - Disabled - - - Change Password - - - - - {/* About Section */} - - {t('settings.about')} - - Version - 1.0.0 + + {profileData?.full_name || user?.email?.split('@')[0] || 'User'} + + {user?.email} - - Terms of Service - + + + {/* Profile Info Cards */} + + + + + + (navigation as any).navigate('Referral')} + /> + + {profileData?.referral_code && ( + + )} + + {profileData?.wallet_address && ( + + )} + + + {/* Action Buttons */} + + Alert.alert('Coming Soon', 'Edit profile feature will be available soon')} + > + ✏️ + Edit Profile + - - Privacy Policy - + + Alert.alert( + 'About Pezkuwi', + 'Pezkuwi is a decentralized blockchain platform for Digital Kurdistan.\n\nVersion: 1.0.0\n\n© 2026 Digital Kurdistan', + [{ text: 'OK' }] + )} + > + ℹ️ + About Pezkuwi + @@ -162,15 +252,24 @@ const SettingsScreen: React.FC = ({ onBack, onLogout }) => onPress={handleLogout} activeOpacity={0.8} > - {t('settings.logout')} + Logout Pezkuwi Blockchain • {new Date().getFullYear()} + Version 1.0.0 + + {/* Avatar Picker Modal */} + setAvatarModalVisible(false)} + currentAvatar={profileData?.avatar_url || undefined} + onAvatarSelected={handleAvatarSelected} + /> ); }; @@ -180,130 +279,165 @@ const styles = StyleSheet.create({ flex: 1, backgroundColor: '#F5F5F5', }, - header: { - flexDirection: 'row', - alignItems: 'center', - justifyContent: 'space-between', - padding: 20, - backgroundColor: KurdistanColors.spi, - borderBottomWidth: 1, - borderBottomColor: '#E0E0E0', - }, - backButton: { - width: 40, - height: 40, + loadingContainer: { + flex: 1, justifyContent: 'center', alignItems: 'center', }, - backButtonText: { - fontSize: 24, - color: KurdistanColors.kesk, - }, - headerTitle: { - fontSize: 18, - fontWeight: '600', - color: KurdistanColors.reş, - }, - placeholder: { - width: 40, - }, - section: { - marginTop: 20, - paddingHorizontal: 20, - }, - sectionTitle: { - fontSize: 14, - fontWeight: '600', - color: '#999', - marginBottom: 12, - textTransform: 'uppercase', - }, - languageItem: { - flexDirection: 'row', + header: { + paddingTop: 40, + paddingBottom: 30, alignItems: 'center', - justifyContent: 'space-between', - backgroundColor: KurdistanColors.spi, - padding: 16, - borderRadius: 12, - marginBottom: 8, - borderWidth: 2, - borderColor: 'transparent', }, - languageItemActive: { - borderColor: KurdistanColors.kesk, - backgroundColor: '#F0FAF5', + avatarContainer: { + alignItems: 'center', }, - languageInfo: { - flex: 1, + avatarWrapper: { + position: 'relative', + marginBottom: 16, }, - languageName: { + avatar: { + width: 100, + height: 100, + borderRadius: 50, + borderWidth: 4, + borderColor: '#FFFFFF', + }, + avatarPlaceholder: { + width: 100, + height: 100, + borderRadius: 50, + backgroundColor: 'rgba(255, 255, 255, 0.3)', + justifyContent: 'center', + alignItems: 'center', + borderWidth: 4, + borderColor: '#FFFFFF', + }, + avatarText: { + fontSize: 40, + fontWeight: 'bold', + color: '#FFFFFF', + }, + avatarEmojiLarge: { + fontSize: 60, + }, + editAvatarButton: { + position: 'absolute', + bottom: 0, + right: 0, + backgroundColor: '#FFFFFF', + width: 32, + height: 32, + borderRadius: 16, + justifyContent: 'center', + alignItems: 'center', + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.2)', + elevation: 4, + }, + editAvatarIcon: { fontSize: 16, - fontWeight: '600', - color: KurdistanColors.reş, + }, + name: { + fontSize: 24, + fontWeight: 'bold', + color: '#FFFFFF', marginBottom: 4, }, - languageNameActive: { - color: KurdistanColors.kesk, - }, - languageSubtext: { + email: { fontSize: 14, - color: '#999', + color: 'rgba(255, 255, 255, 0.9)', }, - checkmark: { - width: 24, - height: 24, - borderRadius: 12, - backgroundColor: KurdistanColors.kesk, - justifyContent: 'center', - alignItems: 'center', + cardsContainer: { + padding: 16, }, - checkmarkText: { - color: KurdistanColors.spi, - fontSize: 14, - fontWeight: 'bold', - }, - settingItem: { + profileCard: { flexDirection: 'row', alignItems: 'center', - justifyContent: 'space-between', - backgroundColor: KurdistanColors.spi, - padding: 16, + backgroundColor: '#FFFFFF', borderRadius: 12, - marginBottom: 8, + padding: 16, + marginBottom: 12, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.1)', + elevation: 2, }, - settingText: { + cardIcon: { + fontSize: 32, + marginRight: 16, + }, + cardContent: { + flex: 1, + }, + cardTitle: { + fontSize: 12, + color: '#999', + marginBottom: 4, + }, + cardValue: { fontSize: 16, + fontWeight: '600', color: KurdistanColors.reş, }, - settingValue: { + cardArrow: { + fontSize: 20, + color: '#999', + marginLeft: 8, + }, + actionsContainer: { + paddingHorizontal: 16, + marginBottom: 16, + }, + actionButton: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 16, + marginBottom: 12, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.1)', + elevation: 2, + }, + actionIcon: { + fontSize: 24, + marginRight: 12, + }, + actionText: { + flex: 1, fontSize: 16, + fontWeight: '500', + color: KurdistanColors.reş, + }, + actionArrow: { + fontSize: 20, color: '#999', }, logoutButton: { backgroundColor: KurdistanColors.sor, - margin: 20, + marginHorizontal: 16, + marginBottom: 16, padding: 16, borderRadius: 12, alignItems: 'center', - shadowColor: KurdistanColors.sor, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, + boxShadow: '0px 4px 6px rgba(255, 0, 0, 0.3)', elevation: 6, }, logoutButtonText: { fontSize: 16, fontWeight: 'bold', - color: KurdistanColors.spi, + color: '#FFFFFF', }, footer: { alignItems: 'center', - paddingVertical: 20, + paddingVertical: 24, }, footerText: { fontSize: 12, color: '#999', + marginBottom: 4, + }, + footerVersion: { + fontSize: 10, + color: '#CCC', }, }); -export default SettingsScreen; +export default ProfileScreen; diff --git a/mobile/src/screens/ProfileScreen.tsx.bak b/mobile/src/screens/ProfileScreen.tsx.bak new file mode 100644 index 00000000..9d2afdcf --- /dev/null +++ b/mobile/src/screens/ProfileScreen.tsx.bak @@ -0,0 +1,455 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + TouchableOpacity, + StyleSheet, + SafeAreaView, + ScrollView, + StatusBar, + Image, + ActivityIndicator, + Alert, +} from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; +import { useTranslation } from 'react-i18next'; +import { useNavigation } from '@react-navigation/native'; +import { useAuth } from '../contexts/AuthContext'; +import { KurdistanColors } from '../theme/colors'; +import { supabase } from '../lib/supabase'; +import AvatarPickerModal from '../components/AvatarPickerModal'; + +// Avatar pool matching AvatarPickerModal +const AVATAR_POOL = [ + { id: 'avatar1', emoji: '👨🏻' }, + { id: 'avatar2', emoji: '👨🏼' }, + { id: 'avatar3', emoji: '👨🏽' }, + { id: 'avatar4', emoji: '👨🏾' }, + { id: 'avatar5', emoji: '👩🏻' }, + { id: 'avatar6', emoji: '👩🏼' }, + { id: 'avatar7', emoji: '👩🏽' }, + { id: 'avatar8', emoji: '👩🏾' }, + { id: 'avatar9', emoji: '🧔🏻' }, + { id: 'avatar10', emoji: '🧔🏼' }, + { id: 'avatar11', emoji: '🧔🏽' }, + { id: 'avatar12', emoji: '🧔🏾' }, + { id: 'avatar13', emoji: '👳🏻‍♂️' }, + { id: 'avatar14', emoji: '👳🏼‍♂️' }, + { id: 'avatar15', emoji: '👳🏽‍♂️' }, + { id: 'avatar16', emoji: '🧕🏻' }, + { id: 'avatar17', emoji: '🧕🏼' }, + { id: 'avatar18', emoji: '🧕🏽' }, + { id: 'avatar19', emoji: '👴🏻' }, + { id: 'avatar20', emoji: '👴🏼' }, + { id: 'avatar21', emoji: '👵🏻' }, + { id: 'avatar22', emoji: '👵🏼' }, + { id: 'avatar23', emoji: '👦🏻' }, + { id: 'avatar24', emoji: '👦🏼' }, + { id: 'avatar25', emoji: '👧🏻' }, + { id: 'avatar26', emoji: '👧🏼' }, +]; + +// Helper function to get emoji from avatar ID +const getEmojiFromAvatarId = (avatarId: string): string => { + const avatar = AVATAR_POOL.find(a => a.id === avatarId); + return avatar ? avatar.emoji : '👤'; // Default to person emoji if not found +}; + +interface ProfileData { + full_name: string | null; + avatar_url: string | null; + wallet_address: string | null; + created_at: string; + referral_code: string | null; + referral_count: number; +} + +const ProfileScreen: React.FC = () => { + const { t } = useTranslation(); + const navigation = useNavigation(); + const { user, signOut } = useAuth(); + const [profileData, setProfileData] = useState(null); + const [loading, setLoading] = useState(true); + const [avatarModalVisible, setAvatarModalVisible] = useState(false); + + useEffect(() => { + fetchProfileData(); + }, [user]); + + const fetchProfileData = async () => { + if (!user) { + setLoading(false); + return; + } + + try { + const { data, error} = await supabase + .from('profiles') + .select('*') + .eq('id', user.id) + .single(); + + if (error) throw error; + + setProfileData(data); + } catch (error) { + if (__DEV__) console.error('Error fetching profile:', error); + } finally { + setLoading(false); + } + }; + + const handleLogout = () => { + Alert.alert( + 'Logout', + 'Are you sure you want to logout?', + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Logout', + style: 'destructive', + onPress: async () => { + await signOut(); + }, + }, + ] + ); + }; + + const handleAvatarSelected = (avatarUrl: string) => { + setProfileData(prev => prev ? { ...prev, avatar_url: avatarUrl } : null); + }; + + const ProfileCard = ({ icon, title, value, onPress }: { icon: string; title: string; value: string; onPress?: () => void }) => ( + + {icon} + + {title} + {value} + + {onPress && } + + ); + + if (loading) { + return ( + + + + + + ); + } + + return ( + + + + + {/* Header with Gradient */} + + + setAvatarModalVisible(true)} style={styles.avatarWrapper}> + {profileData?.avatar_url ? ( + // Check if avatar_url is a URL (starts with http) or an emoji ID + profileData.avatar_url.startsWith('http') ? ( + + ) : ( + // It's an emoji ID, render as emoji text + + + {getEmojiFromAvatarId(profileData.avatar_url)} + + + ) + ) : ( + + + {profileData?.full_name?.charAt(0)?.toUpperCase() || user?.email?.charAt(0)?.toUpperCase() || '?'} + + + )} + + 📷 + + + + {profileData?.full_name || user?.email?.split('@')[0] || 'User'} + + {user?.email} + + + + {/* Profile Info Cards */} + + + + + + (navigation as any).navigate('Referral')} + /> + + {profileData?.referral_code && ( + + )} + + {profileData?.wallet_address && ( + + )} + + + {/* Action Buttons */} + + Alert.alert('Coming Soon', 'Edit profile feature will be available soon')} + > + ✏️ + Edit Profile + + + + Alert.alert( + 'About Pezkuwi', + 'Pezkuwi is a decentralized blockchain platform for Digital Kurdistan.\n\nVersion: 1.0.0\n\n© 2026 Digital Kurdistan', + [{ text: 'OK' }] + )} + > + ℹ️ + About Pezkuwi + + + + + {/* Logout Button */} + + Logout + + + + + Pezkuwi Blockchain • {new Date().getFullYear()} + + Version 1.0.0 + + + + {/* Avatar Picker Modal */} + setAvatarModalVisible(false)} + currentAvatar={profileData?.avatar_url || undefined} + onAvatarSelected={handleAvatarSelected} + /> + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F5F5F5', + }, + loadingContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + }, + header: { + paddingTop: 40, + paddingBottom: 30, + alignItems: 'center', + }, + avatarContainer: { + alignItems: 'center', + }, + avatarWrapper: { + position: 'relative', + marginBottom: 16, + }, + avatar: { + width: 100, + height: 100, + borderRadius: 50, + borderWidth: 4, + borderColor: '#FFFFFF', + }, + avatarPlaceholder: { + width: 100, + height: 100, + borderRadius: 50, + backgroundColor: 'rgba(255, 255, 255, 0.3)', + justifyContent: 'center', + alignItems: 'center', + borderWidth: 4, + borderColor: '#FFFFFF', + }, + avatarText: { + fontSize: 40, + fontWeight: 'bold', + color: '#FFFFFF', + }, + avatarEmojiLarge: { + fontSize: 60, + }, + editAvatarButton: { + position: 'absolute', + bottom: 0, + right: 0, + backgroundColor: '#FFFFFF', + width: 32, + height: 32, + borderRadius: 16, + justifyContent: 'center', + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.2, + shadowRadius: 4, + elevation: 4, + }, + editAvatarIcon: { + fontSize: 16, + }, + name: { + fontSize: 24, + fontWeight: 'bold', + color: '#FFFFFF', + marginBottom: 4, + }, + email: { + fontSize: 14, + color: 'rgba(255, 255, 255, 0.9)', + }, + cardsContainer: { + padding: 16, + }, + profileCard: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 2, + }, + cardIcon: { + fontSize: 32, + marginRight: 16, + }, + cardContent: { + flex: 1, + }, + cardTitle: { + fontSize: 12, + color: '#999', + marginBottom: 4, + }, + cardValue: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.reş, + }, + cardArrow: { + fontSize: 20, + color: '#999', + marginLeft: 8, + }, + actionsContainer: { + paddingHorizontal: 16, + marginBottom: 16, + }, + actionButton: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 2, + }, + actionIcon: { + fontSize: 24, + marginRight: 12, + }, + actionText: { + flex: 1, + fontSize: 16, + fontWeight: '500', + color: KurdistanColors.reş, + }, + actionArrow: { + fontSize: 20, + color: '#999', + }, + logoutButton: { + backgroundColor: KurdistanColors.sor, + marginHorizontal: 16, + marginBottom: 16, + padding: 16, + borderRadius: 12, + alignItems: 'center', + shadowColor: KurdistanColors.sor, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 6, + elevation: 6, + }, + logoutButtonText: { + fontSize: 16, + fontWeight: 'bold', + color: '#FFFFFF', + }, + footer: { + alignItems: 'center', + paddingVertical: 24, + }, + footerText: { + fontSize: 12, + color: '#999', + marginBottom: 4, + }, + footerVersion: { + fontSize: 10, + color: '#CCC', + }, +}); + +export default ProfileScreen; diff --git a/mobile/src/screens/ReferralScreen.tsx b/mobile/src/screens/ReferralScreen.tsx index 39887430..e538f04e 100644 --- a/mobile/src/screens/ReferralScreen.tsx +++ b/mobile/src/screens/ReferralScreen.tsx @@ -1,4 +1,4 @@ -import React from 'react'; +import React, { useState, useEffect, useCallback } from 'react'; import { View, Text, @@ -10,17 +10,26 @@ import { Share, Alert, Clipboard, + ActivityIndicator, } from 'react-native'; import { LinearGradient } from 'expo-linear-gradient'; import { useTranslation } from 'react-i18next'; -import { usePolkadot } from '../contexts/PolkadotContext'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; import { KurdistanColors } from '../theme/colors'; +import { + getReferralStats, + getMyReferrals, + calculateReferralScore, + type ReferralStats as BlockchainReferralStats, +} from '@pezkuwi/lib/referral'; interface ReferralStats { totalReferrals: number; activeReferrals: number; totalEarned: string; pendingRewards: string; + referralScore: number; + whoInvitedMe: string | null; } interface Referral { @@ -33,28 +42,86 @@ interface Referral { const ReferralScreen: React.FC = () => { const { t: _t } = useTranslation(); - const { selectedAccount, api: _api, connectWallet } = usePolkadot(); + const { selectedAccount, api, connectWallet, isApiReady } = usePezkuwi(); const isConnected = !!selectedAccount; - // Removed setState in effect - derive from selectedAccount directly + // State for blockchain data + const [stats, setStats] = useState({ + totalReferrals: 0, + activeReferrals: 0, + totalEarned: '0.00 HEZ', + pendingRewards: '0.00 HEZ', + referralScore: 0, + whoInvitedMe: null, + }); + const [referrals, setReferrals] = useState([]); + const [loading, setLoading] = useState(false); // Generate referral code from wallet address const referralCode = selectedAccount ? `PZK-${selectedAccount.address.slice(0, 8).toUpperCase()}` : 'PZK-CONNECT-WALLET'; - // Mock stats - will be fetched from pallet_referral - // TODO: Fetch real stats from blockchain - const stats: ReferralStats = { - totalReferrals: 0, - activeReferrals: 0, - totalEarned: '0.00 HEZ', - pendingRewards: '0.00 HEZ', - }; + // Fetch referral data from blockchain + const fetchReferralData = useCallback(async () => { + if (!api || !isApiReady || !selectedAccount) { + setStats({ + totalReferrals: 0, + activeReferrals: 0, + totalEarned: '0.00 HEZ', + pendingRewards: '0.00 HEZ', + referralScore: 0, + whoInvitedMe: null, + }); + setReferrals([]); + return; + } - // Mock referrals - will be fetched from blockchain - // TODO: Query pallet-trust or referral pallet for actual referrals - const referrals: Referral[] = []; + setLoading(true); + + try { + const [blockchainStats, myReferralsList] = await Promise.all([ + getReferralStats(api, selectedAccount.address), + getMyReferrals(api, selectedAccount.address), + ]); + + // Calculate rewards (placeholder for now - will be from pallet_rewards) + const scoreValue = blockchainStats.referralScore; + const earnedAmount = (scoreValue * 0.1).toFixed(2); + + setStats({ + totalReferrals: blockchainStats.referralCount, + activeReferrals: blockchainStats.referralCount, + totalEarned: `${earnedAmount} HEZ`, + pendingRewards: '0.00 HEZ', + referralScore: blockchainStats.referralScore, + whoInvitedMe: blockchainStats.whoInvitedMe, + }); + + // Transform blockchain referrals to UI format + const referralData: Referral[] = myReferralsList.map((address, index) => ({ + id: address, + address, + joinedDate: 'KYC Completed', + status: 'active' as const, + earned: `+${index < 10 ? 10 : index < 50 ? 5 : index < 100 ? 4 : 0} points`, + })); + + setReferrals(referralData); + } catch (error) { + if (__DEV__) console.error('Error fetching referral data:', error); + Alert.alert('Error', 'Failed to load referral data from blockchain'); + } finally { + setLoading(false); + } + }, [api, isApiReady, selectedAccount]); + + // Fetch data on mount and when connection changes + useEffect(() => { + if (isConnected && api && isApiReady) { + fetchReferralData(); + } + }, [isConnected, api, isApiReady, fetchReferralData]); const handleConnectWallet = async () => { try { @@ -131,6 +198,13 @@ const ReferralScreen: React.FC = () => { + {loading && ( + + + Loading referral data... + + )} + {/* Referral Code Card */} Your Referral Code @@ -155,6 +229,19 @@ const ReferralScreen: React.FC = () => { + {/* Who Invited Me */} + {stats.whoInvitedMe && ( + + + 🎁 + You Were Invited By + + + {stats.whoInvitedMe.slice(0, 10)}...{stats.whoInvitedMe.slice(-8)} + + + )} + {/* Stats Grid */} @@ -178,6 +265,94 @@ const ReferralScreen: React.FC = () => { + {/* Score Breakdown */} + + Score Calculation + + How referrals contribute to your trust score + + + + + 1-10 referrals + 10 points each + + + + + + 11-50 referrals + 100 + 5 points each + + + + + + 51-100 referrals + 300 + 4 points each + + + + + + 101+ referrals + 500 points (max) + + + + + {/* Leaderboard */} + + Top Referrers + Community leaderboard + + + + + 🥇 + + + 5GrwvaEF...KutQY + 156 referrals + + 500 pts + + + + + + + 🥈 + + + 5FHneW46...94ty + 89 referrals + + 456 pts + + + + + + + 🥉 + + + 5FLSigC9...hXcS59Y + 67 referrals + + 385 pts + + + + + ℹ️ + + Leaderboard updates every 24 hours. Keep inviting to climb the ranks! + + + + {/* How It Works */} How It Works @@ -283,10 +458,7 @@ const styles = StyleSheet.create({ justifyContent: 'center', alignItems: 'center', marginBottom: 20, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.3)', elevation: 8, }, logoText: { @@ -310,10 +482,7 @@ const styles = StyleSheet.create({ paddingHorizontal: 40, paddingVertical: 16, borderRadius: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, + boxShadow: '0px 4px 6px rgba(0, 0, 0, 0.3)', elevation: 6, }, connectButtonText: { @@ -345,10 +514,7 @@ const styles = StyleSheet.create({ borderRadius: 16, padding: 20, marginBottom: 20, - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.1, - shadowRadius: 8, + boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.1)', elevation: 4, }, codeLabel: { @@ -407,10 +573,7 @@ const styles = StyleSheet.create({ borderRadius: 12, padding: 16, alignItems: 'center', - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.05, - shadowRadius: 6, + boxShadow: '0px 2px 6px rgba(0, 0, 0, 0.05)', elevation: 3, }, statValue: { @@ -430,18 +593,99 @@ const styles = StyleSheet.create({ fontSize: 18, fontWeight: '600', color: KurdistanColors.reş, + marginBottom: 8, + }, + sectionSubtitle: { + fontSize: 14, + color: '#666', marginBottom: 16, }, + scoreCard: { + backgroundColor: 'rgba(0, 0, 0, 0.03)', + borderRadius: 12, + padding: 12, + marginBottom: 8, + }, + scoreRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + scoreRange: { + fontSize: 14, + color: '#666', + }, + scorePoints: { + fontSize: 14, + fontWeight: '600', + }, + leaderboardCard: { + backgroundColor: KurdistanColors.spi, + borderRadius: 12, + padding: 16, + marginBottom: 12, + boxShadow: '0px 2px 6px rgba(0, 0, 0, 0.05)', + elevation: 3, + }, + leaderboardRow: { + flexDirection: 'row', + alignItems: 'center', + }, + leaderboardRank: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + leaderboardRankText: { + fontSize: 20, + }, + leaderboardInfo: { + flex: 1, + }, + leaderboardAddress: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 2, + fontFamily: 'monospace', + }, + leaderboardStats: { + fontSize: 12, + color: '#666', + }, + leaderboardScore: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + leaderboardNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + borderRadius: 12, + padding: 12, + marginTop: 8, + gap: 8, + }, + leaderboardNoteIcon: { + fontSize: 16, + }, + leaderboardNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, stepCard: { flexDirection: 'row', backgroundColor: KurdistanColors.spi, borderRadius: 12, padding: 16, marginBottom: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.05, - shadowRadius: 6, + boxShadow: '0px 2px 6px rgba(0, 0, 0, 0.05)', elevation: 3, }, stepNumber: { @@ -498,10 +742,7 @@ const styles = StyleSheet.create({ borderRadius: 12, padding: 16, marginBottom: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.05, - shadowRadius: 6, + boxShadow: '0px 2px 6px rgba(0, 0, 0, 0.05)', elevation: 3, }, referralInfo: { @@ -538,6 +779,48 @@ const styles = StyleSheet.create({ fontWeight: '600', color: KurdistanColors.sor, }, + loadingOverlay: { + padding: 20, + alignItems: 'center', + backgroundColor: 'rgba(255, 255, 255, 0.9)', + borderRadius: 12, + marginBottom: 20, + }, + loadingText: { + marginTop: 12, + fontSize: 14, + color: '#666', + }, + invitedByCard: { + backgroundColor: KurdistanColors.spi, + borderRadius: 16, + padding: 16, + marginBottom: 20, + borderLeftWidth: 4, + borderLeftColor: KurdistanColors.kesk, + boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.1)', + elevation: 4, + }, + invitedByHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 8, + }, + invitedByIcon: { + fontSize: 20, + marginRight: 8, + }, + invitedByTitle: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + invitedByAddress: { + fontSize: 14, + fontFamily: 'monospace', + color: KurdistanColors.kesk, + fontWeight: '600', + }, }); export default ReferralScreen; diff --git a/mobile/src/screens/ReferralScreen.tsx.bak b/mobile/src/screens/ReferralScreen.tsx.bak new file mode 100644 index 00000000..6f355e44 --- /dev/null +++ b/mobile/src/screens/ReferralScreen.tsx.bak @@ -0,0 +1,850 @@ +import React, { useState, useEffect, useCallback } from 'react'; +import { + View, + Text, + TouchableOpacity, + StyleSheet, + SafeAreaView, + ScrollView, + StatusBar, + Share, + Alert, + Clipboard, + ActivityIndicator, +} from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; +import { useTranslation } from 'react-i18next'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; +import { KurdistanColors } from '../theme/colors'; +import { + getReferralStats, + getMyReferrals, + calculateReferralScore, + type ReferralStats as BlockchainReferralStats, +} from '@pezkuwi/lib/referral'; + +interface ReferralStats { + totalReferrals: number; + activeReferrals: number; + totalEarned: string; + pendingRewards: string; + referralScore: number; + whoInvitedMe: string | null; +} + +interface Referral { + id: string; + address: string; + joinedDate: string; + status: 'active' | 'pending'; + earned: string; +} + +const ReferralScreen: React.FC = () => { + const { t: _t } = useTranslation(); + const { selectedAccount, api, connectWallet, isApiReady } = usePezkuwi(); + const isConnected = !!selectedAccount; + + // State for blockchain data + const [stats, setStats] = useState({ + totalReferrals: 0, + activeReferrals: 0, + totalEarned: '0.00 HEZ', + pendingRewards: '0.00 HEZ', + referralScore: 0, + whoInvitedMe: null, + }); + const [referrals, setReferrals] = useState([]); + const [loading, setLoading] = useState(false); + + // Generate referral code from wallet address + const referralCode = selectedAccount + ? `PZK-${selectedAccount.address.slice(0, 8).toUpperCase()}` + : 'PZK-CONNECT-WALLET'; + + // Fetch referral data from blockchain + const fetchReferralData = useCallback(async () => { + if (!api || !isApiReady || !selectedAccount) { + setStats({ + totalReferrals: 0, + activeReferrals: 0, + totalEarned: '0.00 HEZ', + pendingRewards: '0.00 HEZ', + referralScore: 0, + whoInvitedMe: null, + }); + setReferrals([]); + return; + } + + setLoading(true); + + try { + const [blockchainStats, myReferralsList] = await Promise.all([ + getReferralStats(api, selectedAccount.address), + getMyReferrals(api, selectedAccount.address), + ]); + + // Calculate rewards (placeholder for now - will be from pallet_rewards) + const scoreValue = blockchainStats.referralScore; + const earnedAmount = (scoreValue * 0.1).toFixed(2); + + setStats({ + totalReferrals: blockchainStats.referralCount, + activeReferrals: blockchainStats.referralCount, + totalEarned: `${earnedAmount} HEZ`, + pendingRewards: '0.00 HEZ', + referralScore: blockchainStats.referralScore, + whoInvitedMe: blockchainStats.whoInvitedMe, + }); + + // Transform blockchain referrals to UI format + const referralData: Referral[] = myReferralsList.map((address, index) => ({ + id: address, + address, + joinedDate: 'KYC Completed', + status: 'active' as const, + earned: `+${index < 10 ? 10 : index < 50 ? 5 : index < 100 ? 4 : 0} points`, + })); + + setReferrals(referralData); + } catch (error) { + if (__DEV__) console.error('Error fetching referral data:', error); + Alert.alert('Error', 'Failed to load referral data from blockchain'); + } finally { + setLoading(false); + } + }, [api, isApiReady, selectedAccount]); + + // Fetch data on mount and when connection changes + useEffect(() => { + if (isConnected && api && isApiReady) { + fetchReferralData(); + } + }, [isConnected, api, isApiReady, fetchReferralData]); + + const handleConnectWallet = async () => { + try { + await connectWallet(); + Alert.alert('Connected', 'Your wallet has been connected to the referral system!'); + } catch (error) { + if (__DEV__) console.error('Wallet connection error:', error); + Alert.alert('Error', 'Failed to connect wallet. Please try again.'); + } + }; + + const handleCopyCode = () => { + Clipboard.setString(referralCode); + Alert.alert('Copied!', 'Referral code copied to clipboard'); + }; + + const handleShareCode = async () => { + try { + const result = await Share.share({ + message: `Join Pezkuwi using my referral code: ${referralCode}\n\nGet rewards for becoming a citizen!`, + title: 'Join Pezkuwi', + }); + + if (result.action === Share.sharedAction) { + if (__DEV__) console.warn('Shared successfully'); + } + } catch (error) { + if (__DEV__) console.error('Error sharing:', error); + } + }; + + if (!isConnected) { + return ( + + + + + + 🤝 + + Referral Program + + Connect your wallet to access your referral dashboard + + + Connect Wallet + + + + + ); + } + + return ( + + + + {/* Header */} + + Referral Program + Earn rewards by inviting friends + + + + {loading && ( + + + Loading referral data... + + )} + + {/* Referral Code Card */} + + Your Referral Code + + {referralCode} + + + + 📋 + Copy + + + 📤 + Share + + + + + {/* Who Invited Me */} + {stats.whoInvitedMe && ( + + + 🎁 + You Were Invited By + + + {stats.whoInvitedMe.slice(0, 10)}...{stats.whoInvitedMe.slice(-8)} + + + )} + + {/* Stats Grid */} + + + {stats.totalReferrals} + Total Referrals + + + {stats.activeReferrals} + Active + + + + + + {stats.totalEarned} + Total Earned + + + {stats.pendingRewards} + Pending + + + + {/* Score Breakdown */} + + Score Calculation + + How referrals contribute to your trust score + + + + + 1-10 referrals + 10 points each + + + + + + 11-50 referrals + 100 + 5 points each + + + + + + 51-100 referrals + 300 + 4 points each + + + + + + 101+ referrals + 500 points (max) + + + + + {/* Leaderboard */} + + Top Referrers + Community leaderboard + + + + + 🥇 + + + 5GrwvaEF...KutQY + 156 referrals + + 500 pts + + + + + + + 🥈 + + + 5FHneW46...94ty + 89 referrals + + 456 pts + + + + + + + 🥉 + + + 5FLSigC9...hXcS59Y + 67 referrals + + 385 pts + + + + + ℹ️ + + Leaderboard updates every 24 hours. Keep inviting to climb the ranks! + + + + + {/* How It Works */} + + How It Works + + + 1 + + + Share Your Code + + Share your unique referral code with friends + + + + + + + 2 + + + Friend Joins + + They use your code when applying for citizenship + + + + + + + 3 + + + Earn Rewards + + Get HEZ tokens when they become active citizens + + + + + + {/* Referrals List */} + + Your Referrals + {referrals.length === 0 ? ( + + 👥 + No referrals yet + + Start inviting friends to earn rewards! + + + ) : ( + referrals.map((referral) => ( + + + + {referral.address.substring(0, 8)}... + {referral.address.substring(referral.address.length - 6)} + + {referral.joinedDate} + + + + {referral.status} + + {referral.earned} + + + )) + )} + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F5F5F5', + }, + connectGradient: { + flex: 1, + }, + connectContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 20, + }, + logoContainer: { + width: 100, + height: 100, + borderRadius: 50, + backgroundColor: KurdistanColors.spi, + justifyContent: 'center', + alignItems: 'center', + marginBottom: 20, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 8, + }, + logoText: { + fontSize: 48, + }, + connectTitle: { + fontSize: 28, + fontWeight: 'bold', + color: KurdistanColors.spi, + marginBottom: 12, + }, + connectSubtitle: { + fontSize: 16, + color: KurdistanColors.spi, + textAlign: 'center', + opacity: 0.9, + marginBottom: 40, + }, + connectButton: { + backgroundColor: KurdistanColors.spi, + paddingHorizontal: 40, + paddingVertical: 16, + borderRadius: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 6, + elevation: 6, + }, + connectButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.sor, + }, + header: { + padding: 20, + paddingTop: 40, + }, + headerTitle: { + fontSize: 24, + fontWeight: 'bold', + color: KurdistanColors.spi, + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: KurdistanColors.spi, + opacity: 0.9, + }, + content: { + flex: 1, + padding: 20, + }, + codeCard: { + backgroundColor: KurdistanColors.spi, + borderRadius: 16, + padding: 20, + marginBottom: 20, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 4, + }, + codeLabel: { + fontSize: 14, + color: '#666', + marginBottom: 12, + }, + codeContainer: { + backgroundColor: '#F5F5F5', + borderRadius: 12, + padding: 16, + marginBottom: 16, + }, + codeText: { + fontSize: 20, + fontWeight: 'bold', + color: KurdistanColors.sor, + textAlign: 'center', + fontFamily: 'monospace', + }, + codeActions: { + flexDirection: 'row', + gap: 12, + }, + codeButton: { + flex: 1, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + padding: 12, + borderRadius: 8, + gap: 8, + }, + copyButton: { + backgroundColor: '#F0F0F0', + }, + shareButton: { + backgroundColor: KurdistanColors.sor, + }, + codeButtonIcon: { + fontSize: 16, + }, + codeButtonText: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + }, + statsGrid: { + flexDirection: 'row', + gap: 12, + marginBottom: 12, + }, + statCard: { + flex: 1, + backgroundColor: KurdistanColors.spi, + borderRadius: 12, + padding: 16, + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 6, + elevation: 3, + }, + statValue: { + fontSize: 24, + fontWeight: 'bold', + color: KurdistanColors.sor, + marginBottom: 4, + }, + statLabel: { + fontSize: 12, + color: '#666', + }, + section: { + marginTop: 20, + }, + sectionTitle: { + fontSize: 18, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 8, + }, + sectionSubtitle: { + fontSize: 14, + color: '#666', + marginBottom: 16, + }, + scoreCard: { + backgroundColor: 'rgba(0, 0, 0, 0.03)', + borderRadius: 12, + padding: 12, + marginBottom: 8, + }, + scoreRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + scoreRange: { + fontSize: 14, + color: '#666', + }, + scorePoints: { + fontSize: 14, + fontWeight: '600', + }, + leaderboardCard: { + backgroundColor: KurdistanColors.spi, + borderRadius: 12, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 6, + elevation: 3, + }, + leaderboardRow: { + flexDirection: 'row', + alignItems: 'center', + }, + leaderboardRank: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + leaderboardRankText: { + fontSize: 20, + }, + leaderboardInfo: { + flex: 1, + }, + leaderboardAddress: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 2, + fontFamily: 'monospace', + }, + leaderboardStats: { + fontSize: 12, + color: '#666', + }, + leaderboardScore: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + leaderboardNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + borderRadius: 12, + padding: 12, + marginTop: 8, + gap: 8, + }, + leaderboardNoteIcon: { + fontSize: 16, + }, + leaderboardNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, + stepCard: { + flexDirection: 'row', + backgroundColor: KurdistanColors.spi, + borderRadius: 12, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 6, + elevation: 3, + }, + stepNumber: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: KurdistanColors.sor, + justifyContent: 'center', + alignItems: 'center', + marginRight: 16, + }, + stepNumberText: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.spi, + }, + stepContent: { + flex: 1, + }, + stepTitle: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 4, + }, + stepDescription: { + fontSize: 14, + color: '#666', + }, + emptyState: { + alignItems: 'center', + padding: 40, + }, + emptyStateIcon: { + fontSize: 48, + marginBottom: 16, + }, + emptyStateText: { + fontSize: 16, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 8, + }, + emptyStateSubtext: { + fontSize: 14, + color: '#666', + textAlign: 'center', + }, + referralCard: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + backgroundColor: KurdistanColors.spi, + borderRadius: 12, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 6, + elevation: 3, + }, + referralInfo: { + flex: 1, + }, + referralAddress: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 4, + fontFamily: 'monospace', + }, + referralDate: { + fontSize: 12, + color: '#666', + }, + referralStats: { + alignItems: 'flex-end', + }, + referralStatus: { + fontSize: 12, + fontWeight: '600', + marginBottom: 4, + textTransform: 'uppercase', + }, + statusActive: { + color: KurdistanColors.kesk, + }, + statusPending: { + color: KurdistanColors.zer, + }, + referralEarned: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.sor, + }, + loadingOverlay: { + padding: 20, + alignItems: 'center', + backgroundColor: 'rgba(255, 255, 255, 0.9)', + borderRadius: 12, + marginBottom: 20, + }, + loadingText: { + marginTop: 12, + fontSize: 14, + color: '#666', + }, + invitedByCard: { + backgroundColor: KurdistanColors.spi, + borderRadius: 16, + padding: 16, + marginBottom: 20, + borderLeftWidth: 4, + borderLeftColor: KurdistanColors.kesk, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 4, + }, + invitedByHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 8, + }, + invitedByIcon: { + fontSize: 20, + marginRight: 8, + }, + invitedByTitle: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + invitedByAddress: { + fontSize: 14, + fontFamily: 'monospace', + color: KurdistanColors.kesk, + fontWeight: '600', + }, +}); + +export default ReferralScreen; diff --git a/mobile/src/screens/SignInScreen.tsx b/mobile/src/screens/SignInScreen.tsx index 6ad6fc21..6b1a7428 100644 --- a/mobile/src/screens/SignInScreen.tsx +++ b/mobile/src/screens/SignInScreen.tsx @@ -179,10 +179,7 @@ const styles = StyleSheet.create({ justifyContent: 'center', alignItems: 'center', marginBottom: 16, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.3)', elevation: 8, }, logoText: { @@ -205,10 +202,7 @@ const styles = StyleSheet.create({ backgroundColor: KurdistanColors.spi, borderRadius: 20, padding: 24, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.2, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.2)', elevation: 8, }, inputGroup: { @@ -242,10 +236,7 @@ const styles = StyleSheet.create({ borderRadius: 12, padding: 16, alignItems: 'center', - shadowColor: KurdistanColors.kesk, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, + boxShadow: '0px 4px 6px rgba(0, 128, 0, 0.3)', elevation: 6, }, signInButtonText: { diff --git a/mobile/src/screens/SignInScreen.tsx.bak b/mobile/src/screens/SignInScreen.tsx.bak new file mode 100644 index 00000000..6ad6fc21 --- /dev/null +++ b/mobile/src/screens/SignInScreen.tsx.bak @@ -0,0 +1,287 @@ +import React, { useState } from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + StyleSheet, + SafeAreaView, + KeyboardAvoidingView, + Platform, + ScrollView, + StatusBar, + Alert, + ActivityIndicator, +} from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; +import { useTranslation } from 'react-i18next'; +import { useAuth } from '../contexts/AuthContext'; +import { KurdistanColors } from '../theme/colors'; + +interface SignInScreenProps { + onSignIn: () => void; + onNavigateToSignUp: () => void; +} + +const SignInScreen: React.FC = ({ onSignIn, onNavigateToSignUp }) => { + const { t } = useTranslation(); + const { signIn } = useAuth(); + const [email, setEmail] = useState(''); + const [password, setPassword] = useState(''); + const [isLoading, setIsLoading] = useState(false); + + const handleSignIn = async () => { + if (!email || !password) { + Alert.alert('Error', 'Please enter both email and password'); + return; + } + + setIsLoading(true); + + try { + const { error } = await signIn(email, password); + + if (error) { + Alert.alert('Sign In Failed', error.message); + return; + } + + // Success - navigate to app + onSignIn(); + } catch (error) { + Alert.alert('Error', 'An unexpected error occurred'); + if (__DEV__) console.error('Sign in error:', error); + } finally { + setIsLoading(false); + } + }; + + return ( + + + + + + {/* Header */} + + + PZK + + {t('auth.welcomeBack')} + {t('auth.signIn')} + + + {/* Form */} + + + {t('auth.email')} + + + + + {t('auth.password')} + + + + + + {t('auth.forgotPassword')} + + + + + {isLoading ? ( + + ) : ( + {t('auth.signIn')} + )} + + + + + or + + + + + + {t('auth.noAccount')}{' '} + {t('auth.signUp')} + + + + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: KurdistanColors.kesk, + }, + gradient: { + flex: 1, + }, + keyboardView: { + flex: 1, + }, + scrollContent: { + flexGrow: 1, + padding: 20, + paddingTop: 60, + }, + header: { + alignItems: 'center', + marginBottom: 40, + }, + logoContainer: { + width: 80, + height: 80, + borderRadius: 40, + backgroundColor: KurdistanColors.spi, + justifyContent: 'center', + alignItems: 'center', + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 8, + }, + logoText: { + fontSize: 28, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + title: { + fontSize: 24, + fontWeight: 'bold', + color: KurdistanColors.spi, + marginBottom: 8, + }, + subtitle: { + fontSize: 16, + color: KurdistanColors.spi, + opacity: 0.9, + }, + form: { + backgroundColor: KurdistanColors.spi, + borderRadius: 20, + padding: 24, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.2, + shadowRadius: 8, + elevation: 8, + }, + inputGroup: { + marginBottom: 20, + }, + label: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 8, + }, + input: { + backgroundColor: '#F5F5F5', + borderRadius: 12, + padding: 16, + fontSize: 16, + borderWidth: 1, + borderColor: '#E0E0E0', + }, + forgotPassword: { + alignItems: 'flex-end', + marginBottom: 24, + }, + forgotPasswordText: { + fontSize: 14, + color: KurdistanColors.kesk, + fontWeight: '600', + }, + signInButton: { + backgroundColor: KurdistanColors.kesk, + borderRadius: 12, + padding: 16, + alignItems: 'center', + shadowColor: KurdistanColors.kesk, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 6, + elevation: 6, + }, + signInButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.spi, + }, + buttonDisabled: { + opacity: 0.6, + }, + divider: { + flexDirection: 'row', + alignItems: 'center', + marginVertical: 24, + }, + dividerLine: { + flex: 1, + height: 1, + backgroundColor: '#E0E0E0', + }, + dividerText: { + marginHorizontal: 12, + fontSize: 14, + color: '#999', + }, + signUpPrompt: { + alignItems: 'center', + }, + signUpPromptText: { + fontSize: 14, + color: '#666', + }, + signUpLink: { + color: KurdistanColors.kesk, + fontWeight: 'bold', + }, +}); + +export default SignInScreen; diff --git a/mobile/src/screens/SignUpScreen.tsx b/mobile/src/screens/SignUpScreen.tsx index 6858bd09..baafff72 100644 --- a/mobile/src/screens/SignUpScreen.tsx +++ b/mobile/src/screens/SignUpScreen.tsx @@ -204,10 +204,7 @@ const styles = StyleSheet.create({ justifyContent: 'center', alignItems: 'center', marginBottom: 16, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.3)', elevation: 8, }, logoText: { @@ -230,10 +227,7 @@ const styles = StyleSheet.create({ backgroundColor: KurdistanColors.spi, borderRadius: 20, padding: 24, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.2, - shadowRadius: 8, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.2)', elevation: 8, }, inputGroup: { @@ -259,10 +253,7 @@ const styles = StyleSheet.create({ padding: 16, alignItems: 'center', marginTop: 8, - shadowColor: KurdistanColors.sor, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, + boxShadow: '0px 4px 6px rgba(255, 0, 0, 0.3)', elevation: 6, }, signUpButtonText: { diff --git a/mobile/src/screens/SignUpScreen.tsx.bak b/mobile/src/screens/SignUpScreen.tsx.bak new file mode 100644 index 00000000..6858bd09 --- /dev/null +++ b/mobile/src/screens/SignUpScreen.tsx.bak @@ -0,0 +1,304 @@ +import React, { useState } from 'react'; +import { + View, + Text, + TextInput, + TouchableOpacity, + StyleSheet, + SafeAreaView, + KeyboardAvoidingView, + Platform, + ScrollView, + StatusBar, + Alert, + ActivityIndicator, +} from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; +import { useTranslation } from 'react-i18next'; +import { useAuth } from '../contexts/AuthContext'; +import { KurdistanColors } from '../theme/colors'; + +interface SignUpScreenProps { + onSignUp: () => void; + onNavigateToSignIn: () => void; +} + +const SignUpScreen: React.FC = ({ onSignUp, onNavigateToSignIn }) => { + const { t } = useTranslation(); + const { signUp } = useAuth(); + const [email, setEmail] = useState(''); + const [password, setPassword] = useState(''); + const [confirmPassword, setConfirmPassword] = useState(''); + const [username, setUsername] = useState(''); + const [isLoading, setIsLoading] = useState(false); + + const handleSignUp = async () => { + if (!email || !password || !username) { + Alert.alert('Error', 'Please fill all required fields'); + return; + } + + if (password !== confirmPassword) { + Alert.alert('Error', 'Passwords do not match'); + return; + } + + setIsLoading(true); + + try { + const { error } = await signUp(email, password, username); + + if (error) { + Alert.alert('Sign Up Failed', error.message); + return; + } + + // Success - navigate to app + onSignUp(); + } catch (error) { + Alert.alert('Error', 'An unexpected error occurred'); + if (__DEV__) console.error('Sign up error:', error); + } finally { + setIsLoading(false); + } + }; + + return ( + + + + + + {/* Header */} + + + PZK + + {t('auth.getStarted')} + {t('auth.createAccount')} + + + {/* Form */} + + + {t('auth.email')} + + + + + {t('auth.username')} + + + + + {t('auth.password')} + + + + + {t('auth.confirmPassword')} + + + + + {isLoading ? ( + + ) : ( + {t('auth.signUp')} + )} + + + + + or + + + + + + {t('auth.haveAccount')}{' '} + {t('auth.signIn')} + + + + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: KurdistanColors.sor, + }, + gradient: { + flex: 1, + }, + keyboardView: { + flex: 1, + }, + scrollContent: { + flexGrow: 1, + padding: 20, + paddingTop: 60, + }, + header: { + alignItems: 'center', + marginBottom: 40, + }, + logoContainer: { + width: 80, + height: 80, + borderRadius: 40, + backgroundColor: KurdistanColors.spi, + justifyContent: 'center', + alignItems: 'center', + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 8, + }, + logoText: { + fontSize: 28, + fontWeight: 'bold', + color: KurdistanColors.sor, + }, + title: { + fontSize: 24, + fontWeight: 'bold', + color: KurdistanColors.spi, + marginBottom: 8, + }, + subtitle: { + fontSize: 16, + color: KurdistanColors.spi, + opacity: 0.9, + }, + form: { + backgroundColor: KurdistanColors.spi, + borderRadius: 20, + padding: 24, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.2, + shadowRadius: 8, + elevation: 8, + }, + inputGroup: { + marginBottom: 20, + }, + label: { + fontSize: 14, + fontWeight: '600', + color: KurdistanColors.reş, + marginBottom: 8, + }, + input: { + backgroundColor: '#F5F5F5', + borderRadius: 12, + padding: 16, + fontSize: 16, + borderWidth: 1, + borderColor: '#E0E0E0', + }, + signUpButton: { + backgroundColor: KurdistanColors.sor, + borderRadius: 12, + padding: 16, + alignItems: 'center', + marginTop: 8, + shadowColor: KurdistanColors.sor, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 6, + elevation: 6, + }, + signUpButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: KurdistanColors.spi, + }, + buttonDisabled: { + opacity: 0.6, + }, + divider: { + flexDirection: 'row', + alignItems: 'center', + marginVertical: 24, + }, + dividerLine: { + flex: 1, + height: 1, + backgroundColor: '#E0E0E0', + }, + dividerText: { + marginHorizontal: 12, + fontSize: 14, + color: '#999', + }, + signInPrompt: { + alignItems: 'center', + }, + signInPromptText: { + fontSize: 14, + color: '#666', + }, + signInLink: { + color: KurdistanColors.sor, + fontWeight: 'bold', + }, +}); + +export default SignUpScreen; diff --git a/mobile/src/screens/StakingScreen.tsx b/mobile/src/screens/StakingScreen.tsx index bc17da2d..885f88c7 100644 --- a/mobile/src/screens/StakingScreen.tsx +++ b/mobile/src/screens/StakingScreen.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from 'react'; +import React, { useState, useEffect, useCallback } from 'react'; import { View, Text, @@ -7,7 +7,7 @@ import { RefreshControl, Alert, } from 'react-native'; -import { usePolkadot } from '../contexts/PolkadotContext'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; import { AppColors, KurdistanColors } from '../theme/colors'; import { Card, @@ -15,105 +15,103 @@ import { Input, BottomSheet, Badge, + ValidatorSelectionSheet, CardSkeleton, } from '../components'; -import { - calculateTikiScore, - calculateWeightedScore, - calculateMonthlyPEZReward, - SCORE_WEIGHTS, -} from '@pezkuwi/lib/staking'; -import { fetchUserTikis } from '@pezkuwi/lib/tiki'; +import { getStakingInfo } from '@pezkuwi/lib/staking'; +import { getAllScores } from '@pezkuwi/lib/scores'; import { formatBalance } from '@pezkuwi/lib/wallet'; -interface StakingData { +// Helper types derived from shared lib +interface StakingScreenData { stakedAmount: string; unbondingAmount: string; - totalRewards: string; monthlyReward: string; tikiScore: number; + stakingScore: number; weightedScore: number; estimatedAPY: string; + unlocking: { amount: string; era: number; blocksRemaining: number }[]; + currentEra: number; } -/** - * Staking Screen - * View staking status, stake/unstake, track rewards - * Inspired by Polkadot.js and Argent staking interfaces - */ +const SCORE_WEIGHTS = { + tiki: 40, + citizenship: 30, + staking: 30, +}; + export default function StakingScreen() { - const { api, selectedAccount, isApiReady } = usePolkadot(); - const [stakingData, setStakingData] = useState(null); + const { api, selectedAccount, isApiReady } = usePezkuwi(); + const [loading, setLoading] = useState(true); const [refreshing, setRefreshing] = useState(false); + const [processing, setProcessing] = useState(false); + const [stakingData, setStakingData] = useState(null); + + // Modal states const [stakeSheetVisible, setStakeSheetVisible] = useState(false); const [unstakeSheetVisible, setUnstakeSheetVisible] = useState(false); + const [validatorSheetVisible, setValidatorSheetVisible] = useState(false); + const [stakeAmount, setStakeAmount] = useState(''); const [unstakeAmount, setUnstakeAmount] = useState(''); - const [processing, setProcessing] = useState(false); - const fetchStakingData = React.useCallback(async () => { + const fetchStakingData = useCallback(async () => { try { - setLoading(true); + if (!refreshing) setLoading(true); - if (!api || !selectedAccount) return; + if (!api || !selectedAccount || !isApiReady) return; - // Get staking info from chain - const stakingInfo = await api.query.staking?.ledger(selectedAccount.address); + // 1. Get Staking Info + const stakingInfo = await getStakingInfo(api, selectedAccount.address); + + // 2. Get Scores + const scores = await getAllScores(api, selectedAccount.address); - let stakedAmount = '0'; - let unbondingAmount = '0'; + // 3. Get Current Era + const currentEraOpt = await api.query.staking.currentEra(); + const currentEra = currentEraOpt.unwrapOrDefault().toNumber(); - if (stakingInfo && stakingInfo.isSome) { - const ledger = stakingInfo.unwrap(); - stakedAmount = ledger.active.toString(); + // Calculations + const stakedAmount = stakingInfo.bonded; + const unbondingAmount = stakingInfo.unlocking.reduce( + (acc, chunk) => acc + parseFloat(formatBalance(chunk.amount, 12)), + 0 + ).toString(); // Keep as string for now to match UI expectations if needed, or re-format - // Calculate unbonding - if (ledger.unlocking && ledger.unlocking.length > 0) { - unbondingAmount = ledger.unlocking - .reduce((sum: bigint, unlock: { value: { toString: () => string } }) => sum + BigInt(unlock.value.toString()), BigInt(0)) - .toString(); - } - } + // Estimate Monthly Reward (Simplified) + // 15% APY Base + Score Bonus (up to 5% extra) + const baseAPY = 0.15; + const scoreBonus = (scores.totalScore / 1000) * 0.05; // Example logic + const totalAPY = baseAPY + scoreBonus; + + const stakedNum = parseFloat(stakedAmount); + const monthlyReward = stakedNum > 0 + ? ((stakedNum * totalAPY) / 12).toFixed(2) + : '0.00'; + + const estimatedAPY = (totalAPY * 100).toFixed(2); - // Get user's tiki roles - const tikis = await fetchUserTikis(api, selectedAccount.address); - const tikiScore = calculateTikiScore(tikis); - - // Get citizenship status score - const citizenStatus = await api.query.identityKyc?.kycStatus(selectedAccount.address); - const citizenshipScore = citizenStatus && !citizenStatus.isEmpty ? 100 : 0; - - // Calculate weighted score - const weightedScore = calculateWeightedScore( - tikiScore, - citizenshipScore, - 0 // NFT score (would need to query NFT ownership) - ); - - // Calculate monthly reward - const monthlyReward = calculateMonthlyPEZReward(weightedScore); - - // Get total rewards (would need historical data) - const totalRewards = '0'; // Placeholder - - // Estimated APY (simplified calculation) - const stakedAmountNum = parseFloat(formatBalance(stakedAmount, 12)); - const monthlyRewardNum = monthlyReward; - const yearlyReward = monthlyRewardNum * 12; - const estimatedAPY = stakedAmountNum > 0 - ? ((yearlyReward / stakedAmountNum) * 100).toFixed(2) - : '0'; + // Unlocking Chunks + const unlocking = stakingInfo.unlocking.map(u => ({ + amount: u.amount, + era: u.era, + blocksRemaining: u.blocksRemaining + })); setStakingData({ - stakedAmount, - unbondingAmount, - totalRewards, - monthlyReward: monthlyReward.toFixed(2), - tikiScore, - weightedScore, + stakedAmount: stakedAmount, + unbondingAmount: unbondingAmount, // This might need formatting depending on formatBalance output + monthlyReward, + tikiScore: scores.tikiScore, + stakingScore: scores.stakingScore, + weightedScore: scores.totalScore, // Using total score as weighted score estimatedAPY, + unlocking, + currentEra }); + } catch (error) { if (__DEV__) console.error('Error fetching staking data:', error); Alert.alert('Error', 'Failed to load staking data'); @@ -121,11 +119,11 @@ export default function StakingScreen() { setLoading(false); setRefreshing(false); } - }, [api, selectedAccount]); + }, [api, selectedAccount, isApiReady, refreshing]); useEffect(() => { if (isApiReady && selectedAccount) { - void fetchStakingData(); + fetchStakingData(); } }, [isApiReady, selectedAccount, fetchStakingData]); @@ -137,14 +135,18 @@ export default function StakingScreen() { try { setProcessing(true); - if (!api || !selectedAccount) return; - // Convert amount to planck (smallest unit) + // Convert amount to planck const amountPlanck = BigInt(Math.floor(parseFloat(stakeAmount) * 1e12)); - // Bond tokens - const tx = api.tx.staking.bond(amountPlanck.toString(), 'Staked'); + // Bond tokens (or bond_extra if already bonding) + // For simplicity, using bond_extra if already bonded, otherwise bond + // But UI should handle controller/stash logic. Assuming simple setup. + // This part is simplified. + + const tx = api.tx.staking.bondExtra(amountPlanck); + await tx.signAndSend(selectedAccount.address, ({ status }) => { if (status.isInBlock) { Alert.alert('Success', `Successfully staked ${stakeAmount} HEZ!`); @@ -169,18 +171,16 @@ export default function StakingScreen() { try { setProcessing(true); - if (!api || !selectedAccount) return; const amountPlanck = BigInt(Math.floor(parseFloat(unstakeAmount) * 1e12)); - // Unbond tokens - const tx = api.tx.staking.unbond(amountPlanck.toString()); + const tx = api.tx.staking.unbond(amountPlanck); await tx.signAndSend(selectedAccount.address, ({ status }) => { if (status.isInBlock) { Alert.alert( 'Success', - `Successfully initiated unstaking of ${unstakeAmount} HEZ!\n\nTokens will be available after the unbonding period (28 eras / ~28 days).` + `Successfully initiated unstaking of ${unstakeAmount} HEZ!\n\nTokens will be available after unbonding period.` ); setUnstakeSheetVisible(false); setUnstakeAmount(''); @@ -194,14 +194,63 @@ export default function StakingScreen() { setProcessing(false); } }; + + const handleWithdrawUnbonded = async () => { + try { + setProcessing(true); + if (!api || !selectedAccount) return; + + // Withdraw all available unbonded funds + // num_slashing_spans is usually 0 for simple stakers + const tx = api.tx.staking.withdrawUnbonded(0); + await tx.signAndSend(selectedAccount.address, ({ status }) => { + if (status.isInBlock) { + Alert.alert('Success', 'Successfully withdrawn unbonded tokens!'); + fetchStakingData(); + } + }); + } catch (error: unknown) { + if (__DEV__) console.error('Withdraw error:', error); + Alert.alert('Error', error instanceof Error ? error.message : 'Failed to withdraw tokens'); + } finally { + setProcessing(false); + } + }; + + const handleNominateValidators = async (validators: string[]) => { + if (!validators || validators.length === 0) { + Alert.alert('Error', 'Please select at least one validator.'); + return; + } + if (!api || !selectedAccount) return; + + setProcessing(true); + try { + const tx = api.tx.staking.nominate(validators); + await tx.signAndSend(selectedAccount.address, ({ status }) => { + if (status.isInBlock) { + Alert.alert('Success', 'Nomination transaction sent!'); + setValidatorSheetVisible(false); + fetchStakingData(); + } + }); + } catch (error: unknown) { + if (__DEV__) console.error('Nomination error:', error); + Alert.alert('Error', error instanceof Error ? error.message : 'Failed to nominate validators.'); + } finally { + setProcessing(false); + } + }; if (loading && !stakingData) { return ( - - - - - + + + + + + + ); } @@ -209,7 +258,7 @@ export default function StakingScreen() { return ( - Failed to load staking data + No staking data available + + {hasInsufficientBalance + ? `Insufficient ${fromToken.symbol} Balance` + : 'Swap Tokens'} + + + {/* Token Selector Modal */} + setShowTokenSelector(null)}> + + + Select Token + {TOKENS.map((token) => ( + handleTokenSelect(token)} + > + + + {token.symbol} + {token.name} + + + ))} + setShowTokenSelector(null)}> + Cancel + + + + + {/* Settings Modal */} - setSettingsModalVisible(false)} - > - - - Swap Settings - - Slippage Tolerance (%) - - - - {['0.5', '1.0', '2.0', '5.0'].map((value) => ( + setShowSettings(false)}> + + + Swap Settings + Slippage Tolerance + + {[0.1, 0.5, 1.0, 2.0].map((val) => ( setTempSlippage(value)} + key={val} + style={[styles.slippageButton, slippage === val && styles.slippageButtonActive]} + onPress={() => setSlippage(val)} > - - {value}% + + {val}% ))} + setShowSettings(false)}> + Close + + + + - - setSettingsModalVisible(false)} - > - Cancel + {/* Confirm Modal */} + setShowConfirm(false)}> + + + Confirm Swap + + + You Pay + {fromAmount} {fromToken.symbol} + + + You Receive + {toAmount} {toToken.symbol} + + + Slippage + {slippage}% + + + + setShowConfirm(false)}> + Cancel - - - Save + + Confirm Swap @@ -695,12 +490,27 @@ const SwapScreen: React.FC = () => { const styles = StyleSheet.create({ container: { flex: 1, - backgroundColor: AppColors.background, + backgroundColor: '#F8F9FA', }, - scrollView: { + centerContent: { flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 40, + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', }, scrollContent: { + flex: 1, + }, + scrollContentContainer: { padding: 16, }, header: { @@ -709,88 +519,124 @@ const styles = StyleSheet.create({ alignItems: 'center', marginBottom: 20, }, - title: { - fontSize: 28, - fontWeight: '700', - color: '#000', + headerTitle: { + fontSize: 24, + fontWeight: 'bold', + color: '#333', }, settingsButton: { - padding: 8, - }, - settingsIcon: { - fontSize: 24, - }, - warningCard: { - padding: 16, - marginBottom: 16, - backgroundColor: '#FFF3CD', - borderColor: '#FFE69C', - }, - warningText: { - fontSize: 14, - color: '#856404', - textAlign: 'center', - }, - swapCard: { - padding: 20, - marginBottom: 16, - }, - swapSection: { - marginBottom: 8, - }, - amountInput: { - fontSize: 32, - fontWeight: '700', - color: '#000', - padding: 16, - backgroundColor: '#F5F5F5', - borderRadius: 12, - marginTop: 8, - borderWidth: 1, - borderColor: '#E0E0E0', - }, - disabledInput: { - opacity: 0.6, - }, - balanceText: { - fontSize: 12, - color: '#666', - marginTop: 4, - textAlign: 'right', - }, - swapIconContainer: { - alignItems: 'center', - marginVertical: 8, - }, - swapIcon: { width: 40, height: 40, borderRadius: 20, - backgroundColor: KurdistanColors.kesk, + backgroundColor: '#F5F5F5', justifyContent: 'center', alignItems: 'center', }, - swapIconText: { + settingsIcon: { + fontSize: 20, + }, + tokenCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 8, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + tokenCardHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + }, + tokenCardLabel: { + fontSize: 14, + color: '#666', + }, + tokenCardBalance: { + fontSize: 12, + color: '#999', + }, + tokenInputRow: { + flexDirection: 'row', + alignItems: 'center', + gap: 12, + }, + amountInput: { + flex: 1, + fontSize: 28, + fontWeight: 'bold', + color: '#333', + padding: 0, + }, + tokenSelector: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#F5F5F5', + paddingHorizontal: 12, + paddingVertical: 8, + borderRadius: 12, + gap: 8, + }, + tokenLogo: { + width: 24, + height: 24, + }, + tokenSymbol: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + tokenSelectorArrow: { + fontSize: 10, + color: '#666', + }, + maxButton: { + alignSelf: 'flex-start', + marginTop: 8, + paddingHorizontal: 12, + paddingVertical: 6, + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderRadius: 8, + borderWidth: 1, + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + maxButtonText: { + fontSize: 12, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + swapDirectionContainer: { + alignItems: 'center', + marginVertical: -12, + zIndex: 10, + }, + swapDirectionButton: { + width: 48, + height: 48, + borderRadius: 24, + backgroundColor: '#FFFFFF', + borderWidth: 2, + borderColor: '#E5E5E5', + justifyContent: 'center', + alignItems: 'center', + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.1)', + elevation: 3, + }, + swapDirectionIcon: { fontSize: 24, - color: '#FFFFFF', + color: '#333', }, detailsCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, padding: 16, + marginTop: 16, marginBottom: 16, }, - detailsTitle: { - fontSize: 16, - fontWeight: '700', - color: '#000', - marginBottom: 12, - }, detailRow: { flexDirection: 'row', justifyContent: 'space-between', - alignItems: 'center', paddingVertical: 8, - borderBottomWidth: 1, - borderBottomColor: '#F0F0F0', }, detailLabel: { fontSize: 14, @@ -798,102 +644,217 @@ const styles = StyleSheet.create({ }, detailValue: { fontSize: 14, + color: '#333', + fontWeight: '500', + }, + detailValueHighlight: { + fontSize: 14, + color: '#3B82F6', fontWeight: '600', - color: '#000', }, - highImpact: { - color: KurdistanColors.sor, + warningCard: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FEF3C7', + borderRadius: 12, + padding: 12, + marginBottom: 16, + gap: 8, }, - mediumImpact: { - color: KurdistanColors.zer, + errorCard: { + backgroundColor: '#FEE2E2', + }, + warningIcon: { + fontSize: 20, + }, + warningText: { + flex: 1, + fontSize: 14, + color: '#991B1B', }, swapButton: { - marginTop: 8, + backgroundColor: KurdistanColors.kesk, + borderRadius: 16, + padding: 18, + alignItems: 'center', + marginBottom: 20, }, - modalContainer: { + swapButtonDisabled: { + backgroundColor: '#CCC', + }, + swapButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: '#FFFFFF', + }, + loadingOverlay: { + position: 'absolute', + top: 0, + left: 0, + right: 0, + bottom: 0, + backgroundColor: 'rgba(0,0,0,0.7)', + justifyContent: 'center', + alignItems: 'center', + zIndex: 1000, + }, + loadingCard: { + backgroundColor: '#FFFFFF', + borderRadius: 20, + padding: 32, + alignItems: 'center', + gap: 16, + }, + loadingText: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + modalOverlay: { flex: 1, - backgroundColor: 'rgba(0, 0, 0, 0.5)', + backgroundColor: 'rgba(0,0,0,0.5)', justifyContent: 'center', alignItems: 'center', padding: 20, }, - modalContent: { + modalCard: { backgroundColor: '#FFFFFF', borderRadius: 20, padding: 24, width: '100%', maxWidth: 400, }, - modalTitle: { - fontSize: 20, - fontWeight: '700', - color: '#000', + modalHeader: { + fontSize: 22, + fontWeight: 'bold', + color: '#333', marginBottom: 20, - }, - inputLabel: { - fontSize: 14, - fontWeight: '600', - color: '#666', - marginBottom: 8, - }, - settingsInput: { - fontSize: 18, - padding: 16, - backgroundColor: '#F5F5F5', - borderRadius: 12, - borderWidth: 1, - borderColor: '#E0E0E0', - marginBottom: 16, - }, - presetContainer: { - flexDirection: 'row', - justifyContent: 'space-between', - marginBottom: 24, - }, - presetButton: { - flex: 1, - padding: 12, - backgroundColor: '#F5F5F5', - borderRadius: 8, - borderWidth: 1, - borderColor: '#E0E0E0', - marginHorizontal: 4, - }, - presetButtonActive: { - backgroundColor: KurdistanColors.kesk, - borderColor: KurdistanColors.kesk, - }, - presetText: { - fontSize: 14, - fontWeight: '600', - color: '#666', textAlign: 'center', }, - presetTextActive: { + tokenOption: { + flexDirection: 'row', + alignItems: 'center', + padding: 16, + borderRadius: 12, + backgroundColor: '#F8F9FA', + marginBottom: 8, + gap: 12, + }, + tokenOptionLogo: { + width: 40, + height: 40, + }, + tokenOptionInfo: { + flex: 1, + }, + tokenOptionSymbol: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + tokenOptionName: { + fontSize: 12, + color: '#666', + }, + modalCloseButton: { + backgroundColor: '#EEE', + borderRadius: 12, + padding: 16, + alignItems: 'center', + marginTop: 12, + }, + modalCloseButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + settingsLabel: { + fontSize: 14, + fontWeight: '500', + color: '#666', + marginBottom: 12, + }, + slippageButtons: { + flexDirection: 'row', + gap: 8, + marginBottom: 20, + }, + slippageButton: { + flex: 1, + padding: 12, + borderRadius: 12, + backgroundColor: '#F5F5F5', + alignItems: 'center', + }, + slippageButtonActive: { + backgroundColor: KurdistanColors.kesk, + }, + slippageButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + slippageButtonTextActive: { color: '#FFFFFF', }, - modalButtons: { + confirmDetails: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + padding: 16, + marginBottom: 20, + }, + confirmRow: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingVertical: 8, + }, + confirmRowBorder: { + borderTopWidth: 1, + borderTopColor: '#E5E5E5', + marginTop: 8, + paddingTop: 16, + }, + confirmLabel: { + fontSize: 14, + color: '#666', + }, + confirmValue: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + confirmLabelSmall: { + fontSize: 12, + color: '#999', + }, + confirmValueSmall: { + fontSize: 12, + color: '#666', + }, + confirmButtons: { flexDirection: 'row', gap: 12, }, - modalButton: { + confirmCancelButton: { flex: 1, padding: 16, borderRadius: 12, + backgroundColor: '#EEE', alignItems: 'center', }, - cancelButton: { - backgroundColor: '#F5F5F5', - }, - cancelButtonText: { + confirmCancelButtonText: { fontSize: 16, fontWeight: '600', - color: '#666', + color: '#333', }, - saveButton: { + confirmSwapButton: { + flex: 1, + padding: 16, + borderRadius: 12, backgroundColor: KurdistanColors.kesk, + alignItems: 'center', }, - saveButtonText: { + confirmSwapButtonText: { fontSize: 16, fontWeight: '600', color: '#FFFFFF', diff --git a/mobile/src/screens/SwapScreen.tsx.bak b/mobile/src/screens/SwapScreen.tsx.bak new file mode 100644 index 00000000..f99209a2 --- /dev/null +++ b/mobile/src/screens/SwapScreen.tsx.bak @@ -0,0 +1,870 @@ +import React, { useState, useEffect, useMemo } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + TextInput, + Modal, + ActivityIndicator, + Alert, + Platform, + Image, +} from 'react-native'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; + +// Token Images +const hezLogo = require('../../../shared/images/hez_logo.png'); +const pezLogo = require('../../../shared/images/pez_logo.jpg'); +const usdtLogo = require('../../../shared/images/USDT(hez)logo.png'); + +interface TokenInfo { + symbol: string; + name: string; + assetId: number; + decimals: number; + logo: any; +} + +const TOKENS: TokenInfo[] = [ + { symbol: 'HEZ', name: 'Hemuwelet', assetId: 0, decimals: 12, logo: hezLogo }, + { symbol: 'PEZ', name: 'Pezkunel', assetId: 1, decimals: 12, logo: pezLogo }, + { symbol: 'USDT', name: 'Tether USD', assetId: 1000, decimals: 6, logo: usdtLogo }, +]; + +type TransactionStatus = 'idle' | 'signing' | 'submitting' | 'success' | 'error'; + +const SwapScreen: React.FC = () => { + const { api, isApiReady, selectedAccount, getKeyPair } = usePezkuwi(); + + const [fromToken, setFromToken] = useState(TOKENS[0]); + const [toToken, setToToken] = useState(TOKENS[1]); + const [fromAmount, setFromAmount] = useState(''); + const [toAmount, setToAmount] = useState(''); + const [slippage, setSlippage] = useState(0.5); // 0.5% default + + const [fromBalance, setFromBalance] = useState('0'); + const [toBalance, setToBalance] = useState('0'); + + const [txStatus, setTxStatus] = useState('idle'); + const [errorMessage, setErrorMessage] = useState(''); + + const [showTokenSelector, setShowTokenSelector] = useState<'from' | 'to' | null>(null); + const [showSettings, setShowSettings] = useState(false); + const [showConfirm, setShowConfirm] = useState(false); + + // Fetch balances + useEffect(() => { + const fetchBalances = async () => { + if (!api || !isApiReady || !selectedAccount) return; + + // Fetch From Token Balance + try { + if (fromToken.symbol === 'HEZ') { + const accountInfo = await api.query.system.account(selectedAccount.address); + setFromBalance(accountInfo.data.free.toString()); + } else { + const balanceData = await api.query.assets.account(fromToken.assetId, selectedAccount.address); + setFromBalance(balanceData.isSome ? balanceData.unwrap().balance.toString() : '0'); + } + } catch (error) { + console.error('Failed to fetch from balance:', error); + setFromBalance('0'); + } + + // Fetch To Token Balance + try { + if (toToken.symbol === 'HEZ') { + const accountInfo = await api.query.system.account(selectedAccount.address); + setToBalance(accountInfo.data.free.toString()); + } else { + const balanceData = await api.query.assets.account(toToken.assetId, selectedAccount.address); + setToBalance(balanceData.isSome ? balanceData.unwrap().balance.toString() : '0'); + } + } catch (error) { + console.error('Failed to fetch to balance:', error); + setToBalance('0'); + } + }; + + fetchBalances(); + }, [api, isApiReady, selectedAccount, fromToken, toToken]); + + // Calculate output amount (simple 1:1 for now - should use pool reserves) + useEffect(() => { + if (!fromAmount || parseFloat(fromAmount) <= 0) { + setToAmount(''); + return; + } + + // TODO: Implement proper AMM calculation using pool reserves + // For now, simple 1:1 conversion (placeholder) + const calculatedAmount = (parseFloat(fromAmount) * 0.97).toFixed(6); // 3% fee simulation + setToAmount(calculatedAmount); + }, [fromAmount, fromToken, toToken]); + + // Calculate formatted balances + const fromBalanceFormatted = useMemo(() => { + return (Number(fromBalance) / Math.pow(10, fromToken.decimals)).toFixed(4); + }, [fromBalance, fromToken]); + + const toBalanceFormatted = useMemo(() => { + return (Number(toBalance) / Math.pow(10, toToken.decimals)).toFixed(4); + }, [toBalance, toToken]); + + const hasInsufficientBalance = useMemo(() => { + const amountNum = parseFloat(fromAmount || '0'); + const balanceNum = parseFloat(fromBalanceFormatted); + return amountNum > 0 && amountNum > balanceNum; + }, [fromAmount, fromBalanceFormatted]); + + const handleSwapDirection = () => { + const tempToken = fromToken; + const tempBalance = fromBalance; + const tempAmount = fromAmount; + + setFromToken(toToken); + setToToken(tempToken); + setFromBalance(toBalance); + setToBalance(tempBalance); + setFromAmount(toAmount); + setToAmount(tempAmount); + }; + + const handleMaxClick = () => { + setFromAmount(fromBalanceFormatted); + }; + + const handleTokenSelect = (token: TokenInfo) => { + if (showTokenSelector === 'from') { + if (token.symbol === toToken.symbol) { + Alert.alert('Error', 'Cannot select the same token for both sides'); + return; + } + setFromToken(token); + } else if (showTokenSelector === 'to') { + if (token.symbol === fromToken.symbol) { + Alert.alert('Error', 'Cannot select the same token for both sides'); + return; + } + setToToken(token); + } + setShowTokenSelector(null); + }; + + const handleConfirmSwap = async () => { + if (!api || !selectedAccount) { + Alert.alert('Error', 'Please connect your wallet'); + return; + } + + setTxStatus('signing'); + setShowConfirm(false); + setErrorMessage(''); + + try { + const keypair = await getKeyPair(selectedAccount.address); + if (!keypair) throw new Error('Failed to load keypair'); + + const amountIn = BigInt(Math.floor(parseFloat(fromAmount) * Math.pow(10, fromToken.decimals))); + const minAmountOut = BigInt( + Math.floor(parseFloat(toAmount) * (1 - slippage / 100) * Math.pow(10, toToken.decimals)) + ); + + let tx; + + if (fromToken.symbol === 'HEZ' && toToken.symbol === 'PEZ') { + // HEZ → PEZ: wrap(HEZ→wHEZ) then swap(wHEZ→PEZ) + const wrapTx = api.tx.tokenWrapper.wrap(amountIn.toString()); + const swapTx = api.tx.assetConversion.swapExactTokensForTokens( + [0, 1], // wHEZ → PEZ + amountIn.toString(), + minAmountOut.toString(), + selectedAccount.address, + true + ); + tx = api.tx.utility.batchAll([wrapTx, swapTx]); + + } else if (fromToken.symbol === 'PEZ' && toToken.symbol === 'HEZ') { + // PEZ → HEZ: swap(PEZ→wHEZ) then unwrap(wHEZ→HEZ) + const swapTx = api.tx.assetConversion.swapExactTokensForTokens( + [1, 0], // PEZ → wHEZ + amountIn.toString(), + minAmountOut.toString(), + selectedAccount.address, + true + ); + const unwrapTx = api.tx.tokenWrapper.unwrap(minAmountOut.toString()); + tx = api.tx.utility.batchAll([swapTx, unwrapTx]); + + } else if (fromToken.symbol === 'HEZ') { + // HEZ → Any Asset: wrap(HEZ→wHEZ) then swap(wHEZ→Asset) + const wrapTx = api.tx.tokenWrapper.wrap(amountIn.toString()); + const swapTx = api.tx.assetConversion.swapExactTokensForTokens( + [0, toToken.assetId], + amountIn.toString(), + minAmountOut.toString(), + selectedAccount.address, + true + ); + tx = api.tx.utility.batchAll([wrapTx, swapTx]); + + } else if (toToken.symbol === 'HEZ') { + // Any Asset → HEZ: swap(Asset→wHEZ) then unwrap(wHEZ→HEZ) + const swapTx = api.tx.assetConversion.swapExactTokensForTokens( + [fromToken.assetId, 0], + amountIn.toString(), + minAmountOut.toString(), + selectedAccount.address, + true + ); + const unwrapTx = api.tx.tokenWrapper.unwrap(minAmountOut.toString()); + tx = api.tx.utility.batchAll([swapTx, unwrapTx]); + + } else { + // Direct swap between assets (PEZ ↔ USDT, etc.) + tx = api.tx.assetConversion.swapExactTokensForTokens( + [fromToken.assetId, toToken.assetId], + amountIn.toString(), + minAmountOut.toString(), + selectedAccount.address, + true + ); + } + + setTxStatus('submitting'); + + await tx.signAndSend(keypair, ({ status, dispatchError }) => { + if (status.isInBlock) { + if (dispatchError) { + const errorMsg = dispatchError.toString(); + setErrorMessage(errorMsg); + setTxStatus('error'); + Alert.alert('Transaction Failed', errorMsg); + } else { + setTxStatus('success'); + Alert.alert('Success!', `Swapped ${fromAmount} ${fromToken.symbol} for ~${toAmount} ${toToken.symbol}`); + setTimeout(() => { + setFromAmount(''); + setToAmount(''); + setTxStatus('idle'); + }, 2000); + } + } + }); + } catch (error: any) { + console.error('Swap failed:', error); + setErrorMessage(error.message || 'Transaction failed'); + setTxStatus('error'); + Alert.alert('Error', error.message || 'Swap transaction failed'); + } + }; + + if (!selectedAccount) { + return ( + + + 💱 + Connect your wallet to swap tokens + + + ); + } + + return ( + + {/* Transaction Loading Overlay */} + {(txStatus === 'signing' || txStatus === 'submitting') && ( + + + + + {txStatus === 'signing' ? 'Waiting for signature...' : 'Processing swap...'} + + + + )} + + + {/* Header */} + + Swap Tokens + setShowSettings(true)} style={styles.settingsButton}> + ⚙️ + + + + {/* From Token Card */} + + + From + + Balance: {fromBalanceFormatted} {fromToken.symbol} + + + + + + setShowTokenSelector('from')} + > + + {fromToken.symbol} + + + + + + MAX + + + + {/* Swap Direction Button */} + + + + + + + {/* To Token Card */} + + + To + + Balance: {toBalanceFormatted} {toToken.symbol} + + + + + + setShowTokenSelector('to')} + > + + {toToken.symbol} + + + + + + {/* Swap Details */} + + + ℹ️ Exchange Rate + 1 {fromToken.symbol} ≈ 1 {toToken.symbol} + + + Slippage Tolerance + {slippage}% + + + + {/* Warnings */} + {hasInsufficientBalance && ( + + ⚠️ + Insufficient {fromToken.symbol} balance + + )} + + {/* Swap Button */} + setShowConfirm(true)} + disabled={!fromAmount || hasInsufficientBalance || txStatus !== 'idle'} + > + + {hasInsufficientBalance + ? `Insufficient ${fromToken.symbol} Balance` + : 'Swap Tokens'} + + + + + {/* Token Selector Modal */} + setShowTokenSelector(null)}> + + + Select Token + {TOKENS.map((token) => ( + handleTokenSelect(token)} + > + + + {token.symbol} + {token.name} + + + ))} + setShowTokenSelector(null)}> + Cancel + + + + + + {/* Settings Modal */} + setShowSettings(false)}> + + + Swap Settings + Slippage Tolerance + + {[0.1, 0.5, 1.0, 2.0].map((val) => ( + setSlippage(val)} + > + + {val}% + + + ))} + + setShowSettings(false)}> + Close + + + + + + {/* Confirm Modal */} + setShowConfirm(false)}> + + + Confirm Swap + + + You Pay + {fromAmount} {fromToken.symbol} + + + You Receive + {toAmount} {toToken.symbol} + + + Slippage + {slippage}% + + + + setShowConfirm(false)}> + Cancel + + + Confirm Swap + + + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + centerContent: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 40, + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + scrollContent: { + flex: 1, + }, + scrollContentContainer: { + padding: 16, + }, + header: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 20, + }, + headerTitle: { + fontSize: 24, + fontWeight: 'bold', + color: '#333', + }, + settingsButton: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + }, + settingsIcon: { + fontSize: 20, + }, + tokenCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 8, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + tokenCardHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + }, + tokenCardLabel: { + fontSize: 14, + color: '#666', + }, + tokenCardBalance: { + fontSize: 12, + color: '#999', + }, + tokenInputRow: { + flexDirection: 'row', + alignItems: 'center', + gap: 12, + }, + amountInput: { + flex: 1, + fontSize: 28, + fontWeight: 'bold', + color: '#333', + padding: 0, + }, + tokenSelector: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#F5F5F5', + paddingHorizontal: 12, + paddingVertical: 8, + borderRadius: 12, + gap: 8, + }, + tokenLogo: { + width: 24, + height: 24, + }, + tokenSymbol: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + tokenSelectorArrow: { + fontSize: 10, + color: '#666', + }, + maxButton: { + alignSelf: 'flex-start', + marginTop: 8, + paddingHorizontal: 12, + paddingVertical: 6, + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderRadius: 8, + borderWidth: 1, + borderColor: 'rgba(0, 143, 67, 0.3)', + }, + maxButtonText: { + fontSize: 12, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + swapDirectionContainer: { + alignItems: 'center', + marginVertical: -12, + zIndex: 10, + }, + swapDirectionButton: { + width: 48, + height: 48, + borderRadius: 24, + backgroundColor: '#FFFFFF', + borderWidth: 2, + borderColor: '#E5E5E5', + justifyContent: 'center', + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 3, + }, + swapDirectionIcon: { + fontSize: 24, + color: '#333', + }, + detailsCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginTop: 16, + marginBottom: 16, + }, + detailRow: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingVertical: 8, + }, + detailLabel: { + fontSize: 14, + color: '#666', + }, + detailValue: { + fontSize: 14, + color: '#333', + fontWeight: '500', + }, + detailValueHighlight: { + fontSize: 14, + color: '#3B82F6', + fontWeight: '600', + }, + warningCard: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FEF3C7', + borderRadius: 12, + padding: 12, + marginBottom: 16, + gap: 8, + }, + errorCard: { + backgroundColor: '#FEE2E2', + }, + warningIcon: { + fontSize: 20, + }, + warningText: { + flex: 1, + fontSize: 14, + color: '#991B1B', + }, + swapButton: { + backgroundColor: KurdistanColors.kesk, + borderRadius: 16, + padding: 18, + alignItems: 'center', + marginBottom: 20, + }, + swapButtonDisabled: { + backgroundColor: '#CCC', + }, + swapButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: '#FFFFFF', + }, + loadingOverlay: { + position: 'absolute', + top: 0, + left: 0, + right: 0, + bottom: 0, + backgroundColor: 'rgba(0,0,0,0.7)', + justifyContent: 'center', + alignItems: 'center', + zIndex: 1000, + }, + loadingCard: { + backgroundColor: '#FFFFFF', + borderRadius: 20, + padding: 32, + alignItems: 'center', + gap: 16, + }, + loadingText: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0,0,0,0.5)', + justifyContent: 'center', + alignItems: 'center', + padding: 20, + }, + modalCard: { + backgroundColor: '#FFFFFF', + borderRadius: 20, + padding: 24, + width: '100%', + maxWidth: 400, + }, + modalHeader: { + fontSize: 22, + fontWeight: 'bold', + color: '#333', + marginBottom: 20, + textAlign: 'center', + }, + tokenOption: { + flexDirection: 'row', + alignItems: 'center', + padding: 16, + borderRadius: 12, + backgroundColor: '#F8F9FA', + marginBottom: 8, + gap: 12, + }, + tokenOptionLogo: { + width: 40, + height: 40, + }, + tokenOptionInfo: { + flex: 1, + }, + tokenOptionSymbol: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + tokenOptionName: { + fontSize: 12, + color: '#666', + }, + modalCloseButton: { + backgroundColor: '#EEE', + borderRadius: 12, + padding: 16, + alignItems: 'center', + marginTop: 12, + }, + modalCloseButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + settingsLabel: { + fontSize: 14, + fontWeight: '500', + color: '#666', + marginBottom: 12, + }, + slippageButtons: { + flexDirection: 'row', + gap: 8, + marginBottom: 20, + }, + slippageButton: { + flex: 1, + padding: 12, + borderRadius: 12, + backgroundColor: '#F5F5F5', + alignItems: 'center', + }, + slippageButtonActive: { + backgroundColor: KurdistanColors.kesk, + }, + slippageButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + slippageButtonTextActive: { + color: '#FFFFFF', + }, + confirmDetails: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + padding: 16, + marginBottom: 20, + }, + confirmRow: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingVertical: 8, + }, + confirmRowBorder: { + borderTopWidth: 1, + borderTopColor: '#E5E5E5', + marginTop: 8, + paddingTop: 16, + }, + confirmLabel: { + fontSize: 14, + color: '#666', + }, + confirmValue: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + confirmLabelSmall: { + fontSize: 12, + color: '#999', + }, + confirmValueSmall: { + fontSize: 12, + color: '#666', + }, + confirmButtons: { + flexDirection: 'row', + gap: 12, + }, + confirmCancelButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: '#EEE', + alignItems: 'center', + }, + confirmCancelButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#333', + }, + confirmSwapButton: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + alignItems: 'center', + }, + confirmSwapButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, +}); + +export default SwapScreen; diff --git a/mobile/src/screens/WalletScreen.tsx b/mobile/src/screens/WalletScreen.tsx index 53e6894c..a654df3d 100644 --- a/mobile/src/screens/WalletScreen.tsx +++ b/mobile/src/screens/WalletScreen.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from 'react'; +import React, { useState, useEffect, useCallback } from 'react'; import { View, Text, @@ -11,11 +11,29 @@ import { TextInput, Alert, ActivityIndicator, + RefreshControl, + Image, + Platform, + Clipboard, + Share, } from 'react-native'; import { LinearGradient } from 'expo-linear-gradient'; import { useTranslation } from 'react-i18next'; +import { useNavigation } from '@react-navigation/native'; +import QRCode from 'react-native-qrcode-svg'; import { KurdistanColors } from '../theme/colors'; -import { usePolkadot } from '../contexts/PolkadotContext'; +import { usePezkuwi, NetworkType, NETWORKS } from '../contexts/PezkuwiContext'; +import { AddTokenModal } from '../components/wallet/AddTokenModal'; + +// Token Images - From shared/images +const hezLogo = require('../../../shared/images/hez_logo.png'); +const pezLogo = require('../../../shared/images/pez_logo.jpg'); +const usdtLogo = require('../../../shared/images/USDT(hez)logo.png'); +const dotLogo = require('../../../shared/images/dot.png'); +const btcLogo = require('../../../shared/images/bitcoin.png'); +const ethLogo = require('../../../shared/images/etherium.png'); +const bnbLogo = require('../../../shared/images/BNB_logo.png'); +const adaLogo = require('../../../shared/images/ADAlogo.png'); interface Token { symbol: string; @@ -23,12 +41,26 @@ interface Token { balance: string; value: string; change: string; - logo: string; - isLive: boolean; // true = canlı blockchain, false = coming soon + logo: any; // Image source + assetId?: number; + isLive: boolean; +} + +interface Transaction { + hash: string; + method: string; + section: string; + from: string; + to?: string; + amount?: string; + blockNumber: number; + timestamp?: number; + isIncoming: boolean; } const WalletScreen: React.FC = () => { const { t } = useTranslation(); + const navigation = useNavigation(); const { api, isApiReady, @@ -38,20 +70,32 @@ const WalletScreen: React.FC = () => { disconnectWallet, createWallet, getKeyPair, - error: polkadotError - } = usePolkadot(); + currentNetwork, + switchNetwork, + error: pezkuwiError + } = usePezkuwi(); const [selectedToken, setSelectedToken] = useState(null); const [sendModalVisible, setSendModalVisible] = useState(false); const [receiveModalVisible, setReceiveModalVisible] = useState(false); const [createWalletModalVisible, setCreateWalletModalVisible] = useState(false); + const [importWalletModalVisible, setImportWalletModalVisible] = useState(false); + const [backupModalVisible, setBackupModalVisible] = useState(false); + const [networkSelectorVisible, setNetworkSelectorVisible] = useState(false); + const [addTokenModalVisible, setAddTokenModalVisible] = useState(false); const [recipientAddress, setRecipientAddress] = useState(''); const [sendAmount, setSendAmount] = useState(''); const [walletName, setWalletName] = useState(''); + const [importMnemonic, setImportMnemonic] = useState(''); + const [importWalletName, setImportWalletName] = useState(''); + const [userMnemonic, setUserMnemonic] = useState(''); const [isSending, setIsSending] = useState(false); const [isLoadingBalances, setIsLoadingBalances] = useState(false); + + // Transaction History State + const [transactions, setTransactions] = useState([]); + const [isLoadingHistory, setIsLoadingHistory] = useState(false); - // Token balances from blockchain const [balances, setBalances] = useState<{ [key: string]: string }>({ HEZ: '0.00', PEZ: '0.00', @@ -65,8 +109,8 @@ const WalletScreen: React.FC = () => { balance: balances.HEZ, value: '$0.00', change: '+0.00%', - logo: '🟡', - isLive: true, + logo: hezLogo, + isLive: true }, { symbol: 'PEZ', @@ -74,8 +118,9 @@ const WalletScreen: React.FC = () => { balance: balances.PEZ, value: '$0.00', change: '+0.00%', - logo: '🟣', - isLive: true, + logo: pezLogo, + assetId: 1, + isLive: true }, { symbol: 'USDT', @@ -83,166 +128,98 @@ const WalletScreen: React.FC = () => { balance: balances.USDT, value: '$0.00', change: '+0.00%', - logo: '💵', - isLive: true, - }, - { - symbol: 'ETH', - name: 'Ethereum', - balance: '0.00', - value: '$0.00', - change: '+0.00%', - logo: '⟠', - isLive: false, - }, - { - symbol: 'BTC', - name: 'Bitcoin', - balance: '0.00', - value: '$0.00', - change: '+0.00%', - logo: '₿', - isLive: false, - }, - { - symbol: 'DOT', - name: 'Polkadot', - balance: '0.00', - value: '$0.00', - change: '+0.00%', - logo: '●', - isLive: false, - }, - { - symbol: 'BNB', - name: 'Binance Coin', - balance: '0.00', - value: '$0.00', - change: '+0.00%', - logo: '◆', - isLive: false, + logo: usdtLogo, + assetId: 1000, + isLive: true }, ]; - // Fetch token balances from blockchain - useEffect(() => { - const fetchBalances = async () => { - if (!api || !isApiReady || !selectedAccount) { - return; - } + // Fetch balances and history + const fetchData = useCallback(async () => { + if (!api || !isApiReady || !selectedAccount) return; - setIsLoadingBalances(true); + setIsLoadingBalances(true); + try { + // 1. Fetch Balances + const accountInfo = await api.query.system.account(selectedAccount.address); + const hezBalance = (Number(accountInfo.data.free.toString()) / 1e12).toFixed(2); + + let pezBalance = '0.00'; try { - // Fetch HEZ balance (native token) - const accountInfo = await api.query.system.account(selectedAccount.address); - const freeBalance = accountInfo.data.free.toString(); - const hezBalance = (Number(freeBalance) / 1e12).toFixed(2); - - // Fetch PEZ balance (asset ID 1) - let pezBalance = '0.00'; - try { - if (api.query.assets?.account) { - const pezAsset = await api.query.assets.account(1, selectedAccount.address); - if (pezAsset.isSome) { - const pezData = pezAsset.unwrap(); - pezBalance = (Number(pezData.balance.toString()) / 1e12).toFixed(2); - } - } - } catch { - if (__DEV__) console.warn('PEZ asset not found or not accessible'); + if (api.query.assets?.account) { + const pezAsset = await api.query.assets.account(1, selectedAccount.address); + if (pezAsset.isSome) pezBalance = (Number(pezAsset.unwrap().balance.toString()) / 1e12).toFixed(2); } + } catch {} - // Fetch USDT balance (wUSDT - asset ID 2) - let usdtBalance = '0.00'; - try { - if (api.query.assets?.account) { - const usdtAsset = await api.query.assets.account(2, selectedAccount.address); - if (usdtAsset.isSome) { - const usdtData = usdtAsset.unwrap(); - usdtBalance = (Number(usdtData.balance.toString()) / 1e12).toFixed(2); - } + let usdtBalance = '0.00'; + try { + if (api.query.assets?.account) { + // Check ID 1000 first (as per constants), fallback to 2 just in case + let usdtAsset = await api.query.assets.account(1000, selectedAccount.address); + if (usdtAsset.isNone) { + usdtAsset = await api.query.assets.account(2, selectedAccount.address); + } + + if (usdtAsset.isSome) { + // USDT uses 6 decimals usually, checking constants or assuming standard + usdtBalance = (Number(usdtAsset.unwrap().balance.toString()) / 1e6).toFixed(2); } - } catch { - if (__DEV__) console.warn('USDT asset not found or not accessible'); } + } catch {} - setBalances({ - HEZ: hezBalance, - PEZ: pezBalance, - USDT: usdtBalance, - }); - } catch (_err) { - if (__DEV__) console.error('Failed to fetch balances:', _err); - Alert.alert('Error', 'Failed to fetch token balances'); - } finally { - setIsLoadingBalances(false); + setBalances({ HEZ: hezBalance, PEZ: pezBalance, USDT: usdtBalance }); + + // 2. Fetch History from Indexer API (MUCH FASTER) + setIsLoadingHistory(true); + try { + const INDEXER_URL = 'http://172.31.134.70:3001'; // Update this to your local IP for physical device testing + const response = await fetch(`${INDEXER_URL}/api/history/${selectedAccount.address}`); + const data = await response.json(); + + const txList = data.map((tx: any) => ({ + hash: tx.hash, + method: tx.asset_id ? 'transfer' : 'transfer', + section: tx.asset_id ? 'assets' : 'balances', + from: tx.sender, + to: tx.receiver, + amount: tx.amount, + blockNumber: tx.block_number, + isIncoming: tx.receiver === selectedAccount.address, + })); + + setTransactions(txList); + } catch (e) { + console.warn('Indexer API unreachable, history not updated', e); } - }; - fetchBalances(); - - // Refresh balances every 30 seconds - const interval = setInterval(fetchBalances, 30000); - return () => clearInterval(interval); + } catch (error) { + console.error('Fetch error:', error); + } finally { + setIsLoadingBalances(false); + setIsLoadingHistory(false); + } }, [api, isApiReady, selectedAccount]); - const handleConnectWallet = async () => { - try { - if (accounts.length === 0) { - // No wallet exists, show create wallet modal - setCreateWalletModalVisible(true); - return; - } - - // Connect existing wallet - await connectWallet(); - Alert.alert('Connected', 'Wallet connected successfully!'); - } catch (err) { - if (__DEV__) console.error('Failed to connect wallet:', err); - Alert.alert('Error', 'Failed to connect wallet'); - } - }; - - const handleCreateWallet = async () => { - if (!walletName.trim()) { - Alert.alert('Error', 'Please enter a wallet name'); - return; - } - - try { - const { address, mnemonic } = await createWallet(walletName); - setCreateWalletModalVisible(false); - setWalletName(''); - - Alert.alert( - 'Wallet Created', - `Your wallet has been created!\n\nAddress: ${address.substring(0, 10)}...\n\nIMPORTANT: Save your recovery phrase:\n${mnemonic}\n\nStore it securely - you'll need it to recover your wallet!`, - [{ text: 'OK', onPress: () => connectWallet() }] - ); - } catch (err) { - if (__DEV__) console.error('Failed to create wallet:', err); - Alert.alert('Error', 'Failed to create wallet'); - } - }; + useEffect(() => { + fetchData(); + const interval = setInterval(fetchData, 30000); + return () => clearInterval(interval); + }, [fetchData]); const handleTokenPress = (token: Token) => { - if (!token.isLive) { - Alert.alert( - 'Coming Soon', - `${token.name} (${token.symbol}) support is coming soon!`, - [{ text: 'OK' }] - ); - return; - } + if (!token.isLive) return; setSelectedToken(token); + setSendModalVisible(true); }; const handleSend = () => { - if (!selectedToken) return; + setSelectedToken(tokens[0]); // Default to HEZ setSendModalVisible(true); }; const handleReceive = () => { + setSelectedToken(tokens[0]); setReceiveModalVisible(true); }; @@ -251,316 +228,466 @@ const WalletScreen: React.FC = () => { Alert.alert('Error', 'Please enter recipient address and amount'); return; } - - const amount = parseFloat(sendAmount); - if (isNaN(amount) || amount <= 0) { - Alert.alert('Error', 'Please enter a valid amount'); - return; - } - - Alert.alert( - 'Confirm Transaction', - `Send ${sendAmount} ${selectedToken.symbol} to ${recipientAddress.substring(0, 10)}...?`, - [ - { text: 'Cancel', style: 'cancel' }, - { - text: 'Confirm', - onPress: async () => { - setIsSending(true); - try { - const keypair = await getKeyPair(selectedAccount.address); - if (!keypair) { - throw new Error('Failed to load keypair'); - } - - // Convert amount to blockchain units (12 decimals) - const amountInUnits = BigInt(Math.floor(amount * 1e12)); - - let tx; - if (selectedToken.symbol === 'HEZ') { - // Send native token - tx = api.tx.balances.transfer(recipientAddress, amountInUnits); - } else if (selectedToken.symbol === 'PEZ') { - // Send PEZ asset (asset ID 1) - tx = api.tx.assets.transfer(1, recipientAddress, amountInUnits); - } else if (selectedToken.symbol === 'USDT') { - // Send USDT (wUSDT on blockchain - asset ID 2) - tx = api.tx.assets.transfer(2, recipientAddress, amountInUnits); - } else { - throw new Error('Unsupported token'); - } - - // Sign and send transaction - await tx.signAndSend(keypair, ({ status }) => { - if (status.isInBlock) { - if (__DEV__) console.warn(`Transaction included in block: ${status.asInBlock}`); - } else if (status.isFinalized) { - if (__DEV__) console.warn(`Transaction finalized: ${status.asFinalized}`); - - setSendModalVisible(false); - setRecipientAddress(''); - setSendAmount(''); - setIsSending(false); - - Alert.alert( - 'Success', - `Successfully sent ${sendAmount} ${selectedToken.symbol}!` - ); - - // Refresh balances - // The useEffect will automatically refresh after 30s, but we could trigger it manually here - } - }); - } catch (_err) { - console.error('Transaction failed:', _err); - setIsSending(false); - Alert.alert('Error', `Transaction failed: ${_err instanceof Error ? _err.message : 'Unknown error'}`); + + setIsSending(true); + try { + const keypair = await getKeyPair(selectedAccount.address); + if (!keypair) throw new Error('Failed to load keypair'); + + // Adjust decimals based on token + const decimals = selectedToken.symbol === 'USDT' ? 1e6 : 1e12; + const amountInUnits = BigInt(Math.floor(parseFloat(sendAmount) * decimals)); + + let tx; + if (selectedToken.symbol === 'HEZ') { + tx = api.tx.balances.transfer(recipientAddress, amountInUnits); + } else if (selectedToken.assetId !== undefined) { + tx = api.tx.assets.transfer(selectedToken.assetId, recipientAddress, amountInUnits); + } else { + throw new Error('Unknown token type'); + } + + await tx.signAndSend(keypair, ({ status }) => { + if (status.isFinalized) { + setSendModalVisible(false); + setIsSending(false); + Alert.alert('Success', 'Transaction Sent!'); + fetchData(); } - }, - }, - ] - ); + }); + } catch (e: any) { + setIsSending(false); + Alert.alert('Error', e.message); + } }; - // Show loading state while API is initializing - if (!isApiReady) { - return ( - - - - Connecting to blockchain... - - - ); - } + // Connect/Create Wallet handlers + const handleConnectWallet = async () => { + if (accounts.length === 0) setCreateWalletModalVisible(true); + else await connectWallet(); + }; + + const handleCreateWallet = async () => { + try { + const { address, mnemonic } = await createWallet(walletName); + setUserMnemonic(mnemonic); // Save for backup + setCreateWalletModalVisible(false); + Alert.alert('Wallet Created', `Save this mnemonic:\n${mnemonic}`, [{ text: 'OK', onPress: () => connectWallet() }]); + } catch (e) { Alert.alert('Error', 'Failed'); } + }; + + // Copy Address Handler + const handleCopyAddress = () => { + if (!selectedAccount) return; + Clipboard.setString(selectedAccount.address); + Alert.alert('Copied!', 'Address copied to clipboard'); + }; + + // Import Wallet Handler + const handleImportWallet = async () => { + if (!importMnemonic.trim()) { + Alert.alert('Error', 'Please enter a valid mnemonic'); + return; + } + try { + // Use createWallet but inject mnemonic (you may need to modify PezkuwiContext) + // For now, basic implementation: + const { Keyring } = await import('@pezkuwi/keyring'); + const keyring = new Keyring({ type: 'sr25519' }); + const pair = keyring.addFromMnemonic(importMnemonic.trim()); + + // Store in AsyncStorage (via context method ideally) + Alert.alert('Success', `Wallet imported: ${pair.address.slice(0,8)}...`); + setImportWalletModalVisible(false); + setImportMnemonic(''); + connectWallet(); + } catch (e: any) { + Alert.alert('Error', e.message || 'Invalid mnemonic'); + } + }; + + // Backup Mnemonic Handler + const handleBackupMnemonic = async () => { + // Retrieve mnemonic from secure storage + // For demo, we show the saved one or prompt user + if (userMnemonic) { + setBackupModalVisible(true); + } else { + Alert.alert('No Backup', 'Mnemonic not available. Create a new wallet or import existing one.'); + } + }; + + // Share QR Code + const handleShareQR = async () => { + if (!selectedAccount) return; + try { + await Share.share({ + message: `My Pezkuwichain Address:\n${selectedAccount.address}`, + }); + } catch (e) { + console.error(e); + } + }; + + // Network Switch Handler + const handleNetworkSwitch = async (network: NetworkType) => { + try { + await switchNetwork(network); + setNetworkSelectorVisible(false); + Alert.alert('Success', `Switched to ${NETWORKS[network].displayName}`); + } catch (e: any) { + Alert.alert('Error', e.message || 'Failed to switch network'); + } + }; - // Show connect/create wallet screen if no account is selected if (!selectedAccount) { - return ( - - - - - - 👛 - - {t('wallet.title')} - - {accounts.length === 0 - ? 'Create a new wallet to get started' - : 'Connect your wallet to manage your tokens'} - - + - - {accounts.length === 0 ? 'Create Wallet' : t('wallet.connect')} - - - {polkadotError && ( - {polkadotError} - )} - - + + 🔐 + Welcome to + Pezkuwichain Wallet + + Secure, Fast & Decentralized + + + - {/* Create Wallet Modal */} - setCreateWalletModalVisible(false)} - > - - - Create New Wallet - - - setCreateWalletModalVisible(false)} + + + - {t('common.cancel')} - - - Create - + + + + + Create New Wallet + + Get started in seconds + + + + + + setImportWalletModalVisible(true)} + activeOpacity={0.8} + > + + + 📥 + + + Import Existing Wallet + + Use your seed phrase + + + + + + + 🛡️ + + Your keys are encrypted and stored locally on your device + - - - - ); + + {/* Create Wallet Modal */} + setCreateWalletModalVisible(false)}> + + + Create New Wallet + + + setCreateWalletModalVisible(false)}>Cancel + Create + + + + + + {/* Import Wallet Modal */} + setImportWalletModalVisible(false)}> + + + Import Wallet + Enter your 12 or 24 word mnemonic phrase + + + setImportWalletModalVisible(false)}>Cancel + Import + + + + + + ); } return ( - + - {/* Header */} - } + showsVerticalScrollIndicator={false} > - {t('wallet.title')} - - {t('wallet.address')}: - - {selectedAccount.address.substring(0, 8)}...{selectedAccount.address.substring(selectedAccount.address.length - 6)} - - - {isLoadingBalances && ( - - )} - - {t('wallet.disconnect')} - - - - {/* Tokens List */} - - Your Tokens - {tokens.map((token, index) => ( - handleTokenPress(token)} - activeOpacity={0.7} - > - - - {token.logo} - - - {token.symbol} - {token.name} - - - - {token.balance} - {token.value} - - {!token.isLive && ( - - Coming Soon - - )} + {/* Header */} + + pezkuwi wallet + setNetworkSelectorVisible(true)}> + 🌐 {NETWORKS[currentNetwork].displayName} - ))} + + + {/* Main Token Cards - HEZ and PEZ side by side */} + + {/* HEZ Card */} + handleTokenPress(tokens[0])}> + + HEZ + {balances.HEZ} + Hemuwelet Token + + + {/* PEZ Card */} + handleTokenPress(tokens[1])}> + + PEZ + {balances.PEZ} + Pezkunel Token + + + + {/* Action Buttons Grid - 2x4 */} + + {/* Row 1 */} + + + Send + + + + + Receive + + + Alert.alert('Scan', 'QR Scanner coming soon')}> + + Scan + + + Alert.alert('P2P', 'Navigate to P2P Platform')}> + 👥 + P2P + + + {/* Row 2 */} + Alert.alert('Vote', 'Navigate to Governance')}> + 🗳️ + Vote + + + Alert.alert('Dapps', 'Navigate to Apps')}> + + Dapps + + + Alert.alert('Staking', 'Navigate to Staking')}> + 🥩 + Staking + + + setNetworkSelectorVisible(true)}> + 🔗 + Connect + + + + {/* Tokens List */} + + + Tokens + + + 🔍 + + setAddTokenModalVisible(true)}> + + + + ⚙️ + + + + + {/* USDT */} + + + + USDT + PEZ Network + + + {balances.USDT} + $0.00 + + + + {/* DOT */} + + + + DOT + Polkadot + + + 0.00 + $0.00 + + + + + - {/* Action Buttons */} - {selectedToken && selectedToken.isLive && ( - - - 📤 - {t('wallet.send')} - - - 📥 - {t('wallet.receive')} - - - )} - - {/* Send Modal */} - !isSending && setSendModalVisible(false)} - > + {/* Modals */} + setSendModalVisible(false)}> - - - Send {selectedToken?.symbol} - - - Available: {selectedToken?.balance} {selectedToken?.symbol} - - - - - setSendModalVisible(false)} - disabled={isSending} - > - {t('common.cancel')} - - - {isSending ? ( - - ) : ( - {t('common.confirm')} - )} - + + Send {selectedToken?.symbol} + + {selectedToken && } + + + + + setSendModalVisible(false)}>Cancel + + {isSending ? 'Sending...' : 'Confirm'} + + - - {/* Receive Modal */} - setReceiveModalVisible(false)} - > + setReceiveModalVisible(false)}> - - Receive {selectedToken?.symbol} - QR Code Here - {selectedAccount.address} - setReceiveModalVisible(false)} - > - {t('common.close')} - - + + Receive Address + + {selectedAccount && } + + {selectedAccount?.address} + + + 📋 Copy + + + 📤 Share + + + setReceiveModalVisible(false)}> + Close + + + + {/* Backup Mnemonic Modal */} + setBackupModalVisible(false)}> + + + 🔐 Backup Mnemonic + + ⚠️ NEVER share this with anyone! Write it down and store safely. + + + {userMnemonic} + + + { + Clipboard.setString(userMnemonic); + Alert.alert('Copied', 'Mnemonic copied to clipboard'); + }}> + 📋 Copy + + setBackupModalVisible(false)}> + Close + + + + + + + {/* Network Selector Modal */} + setNetworkSelectorVisible(false)}> + + + 🌐 Select Network + + Choose the network you want to connect to + + {(Object.keys(NETWORKS) as NetworkType[]).map((networkKey) => { + const network = NETWORKS[networkKey]; + const isSelected = networkKey === currentNetwork; + return ( + handleNetworkSwitch(networkKey)} + > + + + {network.displayName} + + + {network.type === 'mainnet' ? '🟢 Mainnet' : network.type === 'testnet' ? '🟡 Testnet' : '🟠 Canary'} + + + {isSelected && } + + ); + })} + setNetworkSelectorVisible(false)}> + Close + + + + + + {/* Add Token Modal */} + setAddTokenModalVisible(false)} + onTokenAdded={fetchData} + /> + ); }; @@ -568,316 +695,382 @@ const WalletScreen: React.FC = () => { const styles = StyleSheet.create({ container: { flex: 1, - backgroundColor: '#F5F5F5', + backgroundColor: '#F8F9FA' }, - loadingContainer: { + scrollContent: { flex: 1, - justifyContent: 'center', + }, + + // Header Styles (New Design) + headerContainer: { + flexDirection: 'row', + justifyContent: 'space-between', alignItems: 'center', - padding: 20, - }, - loadingText: { - marginTop: 16, - fontSize: 16, - color: '#666', - }, - errorText: { - marginTop: 20, - fontSize: 14, - color: KurdistanColors.sor, - textAlign: 'center', paddingHorizontal: 20, + paddingTop: Platform.OS === 'android' ? 16 : 12, + paddingBottom: 16, + backgroundColor: '#FFFFFF', }, - connectGradient: { - flex: 1, - }, - connectContainer: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - padding: 20, - }, - logoContainer: { - width: 100, - height: 100, - borderRadius: 50, - backgroundColor: KurdistanColors.spi, - justifyContent: 'center', - alignItems: 'center', - marginBottom: 20, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 8, - elevation: 8, - }, - logoText: { - fontSize: 48, - }, - connectTitle: { - fontSize: 28, + walletTitle: { + fontSize: 22, fontWeight: 'bold', - color: KurdistanColors.spi, + color: '#333', + }, + networkBadge: { + fontSize: 14, + color: KurdistanColors.kesk, + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 12, + paddingVertical: 6, + borderRadius: 16, + overflow: 'hidden', + }, + + // Main Token Cards (HEZ & PEZ) - New Design + mainTokensRow: { + flexDirection: 'row', + paddingHorizontal: 16, + paddingVertical: 16, + gap: 12, + }, + mainTokenCard: { + flex: 1, + backgroundColor: '#FFFFFF', + borderRadius: 20, + padding: 20, + alignItems: 'center', + boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.08)', + elevation: 4, + }, + mainTokenLogo: { + width: 56, + height: 56, marginBottom: 12, }, - connectSubtitle: { - fontSize: 16, - color: KurdistanColors.spi, - textAlign: 'center', - opacity: 0.9, - marginBottom: 40, - }, - connectButton: { - backgroundColor: KurdistanColors.spi, - paddingHorizontal: 40, - paddingVertical: 16, - borderRadius: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, - elevation: 6, - }, - connectButtonText: { + mainTokenSymbol: { fontSize: 18, fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + mainTokenBalance: { + fontSize: 24, + fontWeight: 'bold', color: KurdistanColors.kesk, + marginBottom: 4, }, - header: { - padding: 20, - paddingTop: 40, + mainTokenSubtitle: { + fontSize: 11, + color: '#888', }, - headerTitle: { - fontSize: 24, - fontWeight: 'bold', - color: KurdistanColors.spi, - marginBottom: 12, - }, - addressContainer: { + + // Action Buttons Grid (2x4) - New Design + actionsGrid: { flexDirection: 'row', - alignItems: 'center', - marginBottom: 12, - }, - addressLabel: { - fontSize: 14, - color: KurdistanColors.spi, - opacity: 0.9, - marginRight: 8, - }, - addressText: { - fontSize: 14, - color: KurdistanColors.spi, - fontFamily: 'monospace', - }, - disconnectButton: { - alignSelf: 'flex-start', + flexWrap: 'wrap', paddingHorizontal: 16, paddingVertical: 8, - backgroundColor: 'rgba(255, 255, 255, 0.2)', - borderRadius: 8, - }, - disconnectButtonText: { - fontSize: 12, - color: KurdistanColors.spi, - fontWeight: '600', - }, - tokensContainer: { - flex: 1, - padding: 20, - }, - sectionTitle: { - fontSize: 18, - fontWeight: '600', - color: KurdistanColors.reş, - marginBottom: 16, - }, - tokenCard: { - flexDirection: 'row', - alignItems: 'center', - justifyContent: 'space-between', - backgroundColor: KurdistanColors.spi, - borderRadius: 16, - padding: 16, - marginBottom: 12, - shadowColor: '#000', - shadowOffset: { width: 0, height: 2 }, - shadowOpacity: 0.05, - shadowRadius: 6, - elevation: 3, - }, - tokenCardDisabled: { - opacity: 0.6, - }, - tokenInfo: { - flexDirection: 'row', - alignItems: 'center', - flex: 1, - }, - tokenLogoContainer: { - width: 48, - height: 48, - borderRadius: 24, - backgroundColor: '#F0F0F0', - justifyContent: 'center', - alignItems: 'center', - marginRight: 12, - }, - tokenLogo: { - fontSize: 24, - }, - tokenDetails: { - flex: 1, - }, - tokenSymbol: { - fontSize: 16, - fontWeight: '600', - color: KurdistanColors.reş, - marginBottom: 4, - }, - tokenName: { - fontSize: 14, - color: '#666', - }, - tokenBalance: { - alignItems: 'flex-end', - }, - balanceAmount: { - fontSize: 16, - fontWeight: '600', - color: KurdistanColors.reş, - marginBottom: 4, - }, - balanceValue: { - fontSize: 14, - color: '#666', - }, - comingSoonBadge: { - position: 'absolute', - top: 8, - right: 8, - backgroundColor: KurdistanColors.zer, - paddingHorizontal: 8, - paddingVertical: 4, - borderRadius: 4, - }, - comingSoonText: { - fontSize: 10, - fontWeight: 'bold', - color: KurdistanColors.reş, - }, - actionsContainer: { - flexDirection: 'row', - padding: 20, gap: 12, }, actionButton: { - flex: 1, - backgroundColor: KurdistanColors.kesk, - borderRadius: 12, - padding: 16, + width: '23%', + aspectRatio: 1, + borderRadius: 16, + justifyContent: 'center', alignItems: 'center', - shadowColor: KurdistanColors.kesk, - shadowOffset: { width: 0, height: 4 }, - shadowOpacity: 0.3, - shadowRadius: 6, - elevation: 6, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.1)', + elevation: 3, }, actionIcon: { fontSize: 24, - marginBottom: 8, + color: '#FFFFFF', + marginBottom: 4, }, - actionText: { - fontSize: 14, + actionLabel: { + fontSize: 11, fontWeight: '600', - color: KurdistanColors.spi, + color: '#FFFFFF', }, - modalOverlay: { - flex: 1, - backgroundColor: 'rgba(0, 0, 0, 0.5)', - justifyContent: 'center', + + // Tokens List Section - New Design + tokensSection: { + paddingHorizontal: 16, + paddingTop: 20, + }, + tokensSectionHeader: { + flexDirection: 'row', + justifyContent: 'space-between', alignItems: 'center', - padding: 20, + marginBottom: 16, + paddingHorizontal: 4, }, - modalContent: { - backgroundColor: KurdistanColors.spi, - borderRadius: 20, - padding: 24, - width: '100%', - maxWidth: 400, - }, - modalTitle: { + tokensTitle: { fontSize: 20, fontWeight: 'bold', - color: KurdistanColors.reş, - marginBottom: 12, - textAlign: 'center', + color: '#333', }, - balanceHint: { - fontSize: 14, - color: '#666', - marginBottom: 20, - textAlign: 'center', - }, - input: { - backgroundColor: '#F5F5F5', - borderRadius: 12, - padding: 16, - fontSize: 16, - marginBottom: 16, - borderWidth: 1, - borderColor: '#E0E0E0', - }, - modalButtons: { + tokenHeaderIcons: { flexDirection: 'row', gap: 12, }, - modalButton: { + tokenHeaderIcon: { + width: 36, + height: 36, + borderRadius: 18, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + }, + tokenListItem: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + boxShadow: '0px 1px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + tokenListLogo: { + width: 44, + height: 44, + marginRight: 12, + }, + tokenListInfo: { + flex: 1, + }, + tokenListSymbol: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + tokenListNetwork: { + fontSize: 12, + color: '#888', + }, + tokenListBalance: { + alignItems: 'flex-end', + }, + tokenListAmount: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + tokenListUsdValue: { + fontSize: 12, + color: '#888', + }, + + // Modal Styles + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0,0,0,0.5)', + justifyContent: 'center', + alignItems: 'center', + padding: 20 + }, + modalCard: { + backgroundColor: 'white', + borderRadius: 20, + padding: 24, + width: '100%', + alignItems: 'center' + }, + modalHeader: { + fontSize: 20, + fontWeight: 'bold', + marginBottom: 20 + }, + inputField: { + width: '100%', + backgroundColor: '#F5F5F5', + padding: 16, + borderRadius: 12, + marginBottom: 12 + }, + modalActions: { + flexDirection: 'row', + width: '100%', + gap: 12, + marginTop: 10 + }, + btnCancel: { flex: 1, padding: 16, borderRadius: 12, - alignItems: 'center', + backgroundColor: '#EEE', + alignItems: 'center' }, - cancelButton: { - backgroundColor: '#E0E0E0', - }, - cancelButtonText: { - fontSize: 16, - fontWeight: '600', - color: '#666', - }, - confirmButton: { - backgroundColor: KurdistanColors.kesk, - }, - confirmButtonText: { - fontSize: 16, - fontWeight: '600', - color: KurdistanColors.spi, - }, - disabledButton: { - opacity: 0.5, - }, - qrPlaceholder: { - width: 200, - height: 200, - backgroundColor: '#F0F0F0', + btnConfirm: { + flex: 1, + padding: 16, borderRadius: 12, - alignSelf: 'center', - marginBottom: 20, - textAlign: 'center', - lineHeight: 200, - fontSize: 16, - color: '#999', + backgroundColor: KurdistanColors.kesk, + alignItems: 'center' }, - addressDisplay: { - fontSize: 12, - fontFamily: 'monospace', - color: '#666', + addrFull: { textAlign: 'center', - marginBottom: 20, - padding: 12, + color: '#666', + fontSize: 12, + marginVertical: 10, + fontFamily: 'monospace' + }, + + // Network Selector Styles + networkOption: { + flexDirection: 'row', + width: '100%', + padding: 16, + borderRadius: 12, backgroundColor: '#F5F5F5', - borderRadius: 8, + marginBottom: 8, + alignItems: 'center' + }, + networkOptionSelected: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderWidth: 2, + borderColor: KurdistanColors.kesk + }, + networkName: { + fontSize: 16, + fontWeight: '600', + color: '#333' + }, + networkType: { + fontSize: 12, + color: '#666', + marginTop: 4 + }, + + // Welcome Screen Styles + welcomeGradient: { + flex: 0.45, + justifyContent: 'center', + alignItems: 'center', + borderBottomLeftRadius: 32, + borderBottomRightRadius: 32, + }, + welcomeContent: { + alignItems: 'center', + paddingHorizontal: 20, + }, + welcomeEmoji: { + fontSize: 64, + marginBottom: 16, + }, + welcomeTitle: { + fontSize: 18, + color: 'rgba(255,255,255,0.8)', + marginBottom: 8, + }, + welcomeBrand: { + fontSize: 32, + fontWeight: 'bold', + color: 'white', + marginBottom: 8, + textAlign: 'center', + }, + welcomeSubtitle: { + fontSize: 16, + color: 'rgba(255,255,255,0.7)', + textAlign: 'center', + }, + + // Button Container (Welcome Screen) + buttonContainer: { + flex: 0.55, + paddingHorizontal: 24, + paddingTop: 32, + justifyContent: 'flex-start', + }, + + // Primary Button (Welcome Screen) + primaryWalletButton: { + marginBottom: 16, + borderRadius: 16, + overflow: 'hidden', + boxShadow: '0px 4px 8px rgba(0, 128, 0, 0.3)', + elevation: 8, + }, + buttonGradient: { + flexDirection: 'row', + alignItems: 'center', + padding: 20, + borderRadius: 16, + }, + buttonIcon: { + width: 52, + height: 52, + borderRadius: 26, + backgroundColor: 'rgba(255,255,255,0.2)', + justifyContent: 'center', + alignItems: 'center', + marginRight: 16, + }, + buttonIconText: { + fontSize: 24, + color: 'white', + }, + buttonTextContainer: { + flex: 1, + }, + primaryButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: 'white', + marginBottom: 4, + }, + primaryButtonSubtext: { + fontSize: 14, + color: 'rgba(255,255,255,0.8)', + }, + + // Secondary Button (Welcome Screen) + secondaryWalletButton: { + backgroundColor: 'white', + borderRadius: 16, + marginBottom: 24, + boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.1)', + elevation: 4, + }, + secondaryButtonContent: { + flexDirection: 'row', + alignItems: 'center', + padding: 20, + }, + secondaryButtonText: { + fontSize: 18, + fontWeight: '600', + color: '#333', + marginBottom: 4, + }, + secondaryButtonSubtext: { + fontSize: 14, + color: '#666', + }, + + // Security Notice (Welcome Screen) + securityNotice: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: 'rgba(0,105,62,0.05)', + padding: 16, + borderRadius: 12, + marginTop: 'auto', + marginBottom: 20, + }, + securityIcon: { + fontSize: 20, + marginRight: 12, + }, + securityText: { + flex: 1, + fontSize: 12, + color: '#666', + lineHeight: 18, }, }); -export default WalletScreen; +export default WalletScreen; \ No newline at end of file diff --git a/mobile/src/screens/WalletScreen.tsx.bak b/mobile/src/screens/WalletScreen.tsx.bak new file mode 100644 index 00000000..c9089e4f --- /dev/null +++ b/mobile/src/screens/WalletScreen.tsx.bak @@ -0,0 +1,1091 @@ +import React, { useState, useEffect, useCallback } from 'react'; +import { + View, + Text, + TouchableOpacity, + StyleSheet, + SafeAreaView, + ScrollView, + StatusBar, + Modal, + TextInput, + Alert, + ActivityIndicator, + RefreshControl, + Image, + Platform, + Clipboard, + Share, +} from 'react-native'; +import { LinearGradient } from 'expo-linear-gradient'; +import { useTranslation } from 'react-i18next'; +import { useNavigation } from '@react-navigation/native'; +import QRCode from 'react-native-qrcode-svg'; +import { KurdistanColors } from '../theme/colors'; +import { usePezkuwi, NetworkType, NETWORKS } from '../contexts/PezkuwiContext'; +import { AddTokenModal } from '../components/wallet/AddTokenModal'; + +// Token Images - From shared/images +const hezLogo = require('../../../shared/images/hez_logo.png'); +const pezLogo = require('../../../shared/images/pez_logo.jpg'); +const usdtLogo = require('../../../shared/images/USDT(hez)logo.png'); +const dotLogo = require('../../../shared/images/dot.png'); +const btcLogo = require('../../../shared/images/bitcoin.png'); +const ethLogo = require('../../../shared/images/etherium.png'); +const bnbLogo = require('../../../shared/images/BNB_logo.png'); +const adaLogo = require('../../../shared/images/ADAlogo.png'); + +interface Token { + symbol: string; + name: string; + balance: string; + value: string; + change: string; + logo: any; // Image source + assetId?: number; + isLive: boolean; +} + +interface Transaction { + hash: string; + method: string; + section: string; + from: string; + to?: string; + amount?: string; + blockNumber: number; + timestamp?: number; + isIncoming: boolean; +} + +const WalletScreen: React.FC = () => { + const { t } = useTranslation(); + const navigation = useNavigation(); + const { + api, + isApiReady, + accounts, + selectedAccount, + connectWallet, + disconnectWallet, + createWallet, + getKeyPair, + currentNetwork, + switchNetwork, + error: pezkuwiError + } = usePezkuwi(); + + const [selectedToken, setSelectedToken] = useState(null); + const [sendModalVisible, setSendModalVisible] = useState(false); + const [receiveModalVisible, setReceiveModalVisible] = useState(false); + const [createWalletModalVisible, setCreateWalletModalVisible] = useState(false); + const [importWalletModalVisible, setImportWalletModalVisible] = useState(false); + const [backupModalVisible, setBackupModalVisible] = useState(false); + const [networkSelectorVisible, setNetworkSelectorVisible] = useState(false); + const [addTokenModalVisible, setAddTokenModalVisible] = useState(false); + const [recipientAddress, setRecipientAddress] = useState(''); + const [sendAmount, setSendAmount] = useState(''); + const [walletName, setWalletName] = useState(''); + const [importMnemonic, setImportMnemonic] = useState(''); + const [importWalletName, setImportWalletName] = useState(''); + const [userMnemonic, setUserMnemonic] = useState(''); + const [isSending, setIsSending] = useState(false); + const [isLoadingBalances, setIsLoadingBalances] = useState(false); + + // Transaction History State + const [transactions, setTransactions] = useState([]); + const [isLoadingHistory, setIsLoadingHistory] = useState(false); + + const [balances, setBalances] = useState<{ [key: string]: string }>({ + HEZ: '0.00', + PEZ: '0.00', + USDT: '0.00', + }); + + const tokens: Token[] = [ + { + symbol: 'HEZ', + name: 'Pezkuwi', + balance: balances.HEZ, + value: '$0.00', + change: '+0.00%', + logo: hezLogo, + isLive: true + }, + { + symbol: 'PEZ', + name: 'Pezkuwi Token', + balance: balances.PEZ, + value: '$0.00', + change: '+0.00%', + logo: pezLogo, + assetId: 1, + isLive: true + }, + { + symbol: 'USDT', + name: 'Tether USD', + balance: balances.USDT, + value: '$0.00', + change: '+0.00%', + logo: usdtLogo, + assetId: 1000, + isLive: true + }, + ]; + + // Fetch balances and history + const fetchData = useCallback(async () => { + if (!api || !isApiReady || !selectedAccount) return; + + setIsLoadingBalances(true); + try { + // 1. Fetch Balances + const accountInfo = await api.query.system.account(selectedAccount.address); + const hezBalance = (Number(accountInfo.data.free.toString()) / 1e12).toFixed(2); + + let pezBalance = '0.00'; + try { + if (api.query.assets?.account) { + const pezAsset = await api.query.assets.account(1, selectedAccount.address); + if (pezAsset.isSome) pezBalance = (Number(pezAsset.unwrap().balance.toString()) / 1e12).toFixed(2); + } + } catch {} + + let usdtBalance = '0.00'; + try { + if (api.query.assets?.account) { + // Check ID 1000 first (as per constants), fallback to 2 just in case + let usdtAsset = await api.query.assets.account(1000, selectedAccount.address); + if (usdtAsset.isNone) { + usdtAsset = await api.query.assets.account(2, selectedAccount.address); + } + + if (usdtAsset.isSome) { + // USDT uses 6 decimals usually, checking constants or assuming standard + usdtBalance = (Number(usdtAsset.unwrap().balance.toString()) / 1e6).toFixed(2); + } + } + } catch {} + + setBalances({ HEZ: hezBalance, PEZ: pezBalance, USDT: usdtBalance }); + + // 2. Fetch History from Indexer API (MUCH FASTER) + setIsLoadingHistory(true); + try { + const INDEXER_URL = 'http://172.31.134.70:3001'; // Update this to your local IP for physical device testing + const response = await fetch(`${INDEXER_URL}/api/history/${selectedAccount.address}`); + const data = await response.json(); + + const txList = data.map((tx: any) => ({ + hash: tx.hash, + method: tx.asset_id ? 'transfer' : 'transfer', + section: tx.asset_id ? 'assets' : 'balances', + from: tx.sender, + to: tx.receiver, + amount: tx.amount, + blockNumber: tx.block_number, + isIncoming: tx.receiver === selectedAccount.address, + })); + + setTransactions(txList); + } catch (e) { + console.warn('Indexer API unreachable, history not updated', e); + } + + } catch (error) { + console.error('Fetch error:', error); + } finally { + setIsLoadingBalances(false); + setIsLoadingHistory(false); + } + }, [api, isApiReady, selectedAccount]); + + useEffect(() => { + fetchData(); + const interval = setInterval(fetchData, 30000); + return () => clearInterval(interval); + }, [fetchData]); + + const handleTokenPress = (token: Token) => { + if (!token.isLive) return; + setSelectedToken(token); + setSendModalVisible(true); + }; + + const handleSend = () => { + setSelectedToken(tokens[0]); // Default to HEZ + setSendModalVisible(true); + }; + + const handleReceive = () => { + setSelectedToken(tokens[0]); + setReceiveModalVisible(true); + }; + + const handleConfirmSend = async () => { + if (!recipientAddress || !sendAmount || !selectedToken || !selectedAccount || !api) { + Alert.alert('Error', 'Please enter recipient address and amount'); + return; + } + + setIsSending(true); + try { + const keypair = await getKeyPair(selectedAccount.address); + if (!keypair) throw new Error('Failed to load keypair'); + + // Adjust decimals based on token + const decimals = selectedToken.symbol === 'USDT' ? 1e6 : 1e12; + const amountInUnits = BigInt(Math.floor(parseFloat(sendAmount) * decimals)); + + let tx; + if (selectedToken.symbol === 'HEZ') { + tx = api.tx.balances.transfer(recipientAddress, amountInUnits); + } else if (selectedToken.assetId !== undefined) { + tx = api.tx.assets.transfer(selectedToken.assetId, recipientAddress, amountInUnits); + } else { + throw new Error('Unknown token type'); + } + + await tx.signAndSend(keypair, ({ status }) => { + if (status.isFinalized) { + setSendModalVisible(false); + setIsSending(false); + Alert.alert('Success', 'Transaction Sent!'); + fetchData(); + } + }); + } catch (e: any) { + setIsSending(false); + Alert.alert('Error', e.message); + } + }; + + // Connect/Create Wallet handlers + const handleConnectWallet = async () => { + if (accounts.length === 0) setCreateWalletModalVisible(true); + else await connectWallet(); + }; + + const handleCreateWallet = async () => { + try { + const { address, mnemonic } = await createWallet(walletName); + setUserMnemonic(mnemonic); // Save for backup + setCreateWalletModalVisible(false); + Alert.alert('Wallet Created', `Save this mnemonic:\n${mnemonic}`, [{ text: 'OK', onPress: () => connectWallet() }]); + } catch (e) { Alert.alert('Error', 'Failed'); } + }; + + // Copy Address Handler + const handleCopyAddress = () => { + if (!selectedAccount) return; + Clipboard.setString(selectedAccount.address); + Alert.alert('Copied!', 'Address copied to clipboard'); + }; + + // Import Wallet Handler + const handleImportWallet = async () => { + if (!importMnemonic.trim()) { + Alert.alert('Error', 'Please enter a valid mnemonic'); + return; + } + try { + // Use createWallet but inject mnemonic (you may need to modify PezkuwiContext) + // For now, basic implementation: + const { Keyring } = await import('@pezkuwi/keyring'); + const keyring = new Keyring({ type: 'sr25519' }); + const pair = keyring.addFromMnemonic(importMnemonic.trim()); + + // Store in AsyncStorage (via context method ideally) + Alert.alert('Success', `Wallet imported: ${pair.address.slice(0,8)}...`); + setImportWalletModalVisible(false); + setImportMnemonic(''); + connectWallet(); + } catch (e: any) { + Alert.alert('Error', e.message || 'Invalid mnemonic'); + } + }; + + // Backup Mnemonic Handler + const handleBackupMnemonic = async () => { + // Retrieve mnemonic from secure storage + // For demo, we show the saved one or prompt user + if (userMnemonic) { + setBackupModalVisible(true); + } else { + Alert.alert('No Backup', 'Mnemonic not available. Create a new wallet or import existing one.'); + } + }; + + // Share QR Code + const handleShareQR = async () => { + if (!selectedAccount) return; + try { + await Share.share({ + message: `My Pezkuwichain Address:\n${selectedAccount.address}`, + }); + } catch (e) { + console.error(e); + } + }; + + // Network Switch Handler + const handleNetworkSwitch = async (network: NetworkType) => { + try { + await switchNetwork(network); + setNetworkSelectorVisible(false); + Alert.alert('Success', `Switched to ${NETWORKS[network].displayName}`); + } catch (e: any) { + Alert.alert('Error', e.message || 'Failed to switch network'); + } + }; + + if (!selectedAccount) { + return ( + + + + 🔐 + Welcome to + Pezkuwichain Wallet + + Secure, Fast & Decentralized + + + + + + + + + + + + Create New Wallet + + Get started in seconds + + + + + + setImportWalletModalVisible(true)} + activeOpacity={0.8} + > + + + 📥 + + + Import Existing Wallet + + Use your seed phrase + + + + + + + 🛡️ + + Your keys are encrypted and stored locally on your device + + + + + {/* Create Wallet Modal */} + setCreateWalletModalVisible(false)}> + + + Create New Wallet + + + setCreateWalletModalVisible(false)}>Cancel + Create + + + + + + {/* Import Wallet Modal */} + setImportWalletModalVisible(false)}> + + + Import Wallet + Enter your 12 or 24 word mnemonic phrase + + + setImportWalletModalVisible(false)}>Cancel + Import + + + + + + ); + } + + return ( + + + + } + showsVerticalScrollIndicator={false} + > + {/* Header */} + + pezkuwi wallet + setNetworkSelectorVisible(true)}> + 🌐 {NETWORKS[currentNetwork].displayName} + + + + {/* Main Token Cards - HEZ and PEZ side by side */} + + {/* HEZ Card */} + handleTokenPress(tokens[0])}> + + HEZ + {balances.HEZ} + Hemuwelet Token + + + {/* PEZ Card */} + handleTokenPress(tokens[1])}> + + PEZ + {balances.PEZ} + Pezkunel Token + + + + {/* Action Buttons Grid - 2x4 */} + + {/* Row 1 */} + + + Send + + + + + Receive + + + Alert.alert('Scan', 'QR Scanner coming soon')}> + + Scan + + + Alert.alert('P2P', 'Navigate to P2P Platform')}> + 👥 + P2P + + + {/* Row 2 */} + Alert.alert('Vote', 'Navigate to Governance')}> + 🗳️ + Vote + + + Alert.alert('Dapps', 'Navigate to Apps')}> + + Dapps + + + Alert.alert('Staking', 'Navigate to Staking')}> + 🥩 + Staking + + + setNetworkSelectorVisible(true)}> + 🔗 + Connect + + + + {/* Tokens List */} + + + Tokens + + + 🔍 + + setAddTokenModalVisible(true)}> + + + + ⚙️ + + + + + {/* USDT */} + + + + USDT + PEZ Network + + + {balances.USDT} + $0.00 + + + + {/* DOT */} + + + + DOT + Polkadot + + + 0.00 + $0.00 + + + + + + + + {/* Modals */} + setSendModalVisible(false)}> + + + Send {selectedToken?.symbol} + + {selectedToken && } + + + + + setSendModalVisible(false)}>Cancel + + {isSending ? 'Sending...' : 'Confirm'} + + + + + + + setReceiveModalVisible(false)}> + + + Receive Address + + {selectedAccount && } + + {selectedAccount?.address} + + + 📋 Copy + + + 📤 Share + + + setReceiveModalVisible(false)}> + Close + + + + + + {/* Backup Mnemonic Modal */} + setBackupModalVisible(false)}> + + + 🔐 Backup Mnemonic + + ⚠️ NEVER share this with anyone! Write it down and store safely. + + + {userMnemonic} + + + { + Clipboard.setString(userMnemonic); + Alert.alert('Copied', 'Mnemonic copied to clipboard'); + }}> + 📋 Copy + + setBackupModalVisible(false)}> + Close + + + + + + + {/* Network Selector Modal */} + setNetworkSelectorVisible(false)}> + + + 🌐 Select Network + + Choose the network you want to connect to + + {(Object.keys(NETWORKS) as NetworkType[]).map((networkKey) => { + const network = NETWORKS[networkKey]; + const isSelected = networkKey === currentNetwork; + return ( + handleNetworkSwitch(networkKey)} + > + + + {network.displayName} + + + {network.type === 'mainnet' ? '🟢 Mainnet' : network.type === 'testnet' ? '🟡 Testnet' : '🟠 Canary'} + + + {isSelected && } + + ); + })} + setNetworkSelectorVisible(false)}> + Close + + + + + + {/* Add Token Modal */} + setAddTokenModalVisible(false)} + onTokenAdded={fetchData} + /> + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA' + }, + scrollContent: { + flex: 1, + }, + + // Header Styles (New Design) + headerContainer: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + paddingHorizontal: 20, + paddingTop: Platform.OS === 'android' ? 16 : 12, + paddingBottom: 16, + backgroundColor: '#FFFFFF', + }, + walletTitle: { + fontSize: 22, + fontWeight: 'bold', + color: '#333', + }, + networkBadge: { + fontSize: 14, + color: KurdistanColors.kesk, + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 12, + paddingVertical: 6, + borderRadius: 16, + overflow: 'hidden', + }, + + // Main Token Cards (HEZ & PEZ) - New Design + mainTokensRow: { + flexDirection: 'row', + paddingHorizontal: 16, + paddingVertical: 16, + gap: 12, + }, + mainTokenCard: { + flex: 1, + backgroundColor: '#FFFFFF', + borderRadius: 20, + padding: 20, + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.08, + shadowRadius: 8, + elevation: 4, + }, + mainTokenLogo: { + width: 56, + height: 56, + marginBottom: 12, + }, + mainTokenSymbol: { + fontSize: 18, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + mainTokenBalance: { + fontSize: 24, + fontWeight: 'bold', + color: KurdistanColors.kesk, + marginBottom: 4, + }, + mainTokenSubtitle: { + fontSize: 11, + color: '#888', + }, + + // Action Buttons Grid (2x4) - New Design + actionsGrid: { + flexDirection: 'row', + flexWrap: 'wrap', + paddingHorizontal: 16, + paddingVertical: 8, + gap: 12, + }, + actionButton: { + width: '23%', + aspectRatio: 1, + borderRadius: 16, + justifyContent: 'center', + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 4, + elevation: 3, + }, + actionIcon: { + fontSize: 24, + color: '#FFFFFF', + marginBottom: 4, + }, + actionLabel: { + fontSize: 11, + fontWeight: '600', + color: '#FFFFFF', + }, + + // Tokens List Section - New Design + tokensSection: { + paddingHorizontal: 16, + paddingTop: 20, + }, + tokensSectionHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + paddingHorizontal: 4, + }, + tokensTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + }, + tokenHeaderIcons: { + flexDirection: 'row', + gap: 12, + }, + tokenHeaderIcon: { + width: 36, + height: 36, + borderRadius: 18, + backgroundColor: '#F5F5F5', + justifyContent: 'center', + alignItems: 'center', + }, + tokenListItem: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 1 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + tokenListLogo: { + width: 44, + height: 44, + marginRight: 12, + }, + tokenListInfo: { + flex: 1, + }, + tokenListSymbol: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + tokenListNetwork: { + fontSize: 12, + color: '#888', + }, + tokenListBalance: { + alignItems: 'flex-end', + }, + tokenListAmount: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + tokenListUsdValue: { + fontSize: 12, + color: '#888', + }, + + // Modal Styles + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0,0,0,0.5)', + justifyContent: 'center', + alignItems: 'center', + padding: 20 + }, + modalCard: { + backgroundColor: 'white', + borderRadius: 20, + padding: 24, + width: '100%', + alignItems: 'center' + }, + modalHeader: { + fontSize: 20, + fontWeight: 'bold', + marginBottom: 20 + }, + inputField: { + width: '100%', + backgroundColor: '#F5F5F5', + padding: 16, + borderRadius: 12, + marginBottom: 12 + }, + modalActions: { + flexDirection: 'row', + width: '100%', + gap: 12, + marginTop: 10 + }, + btnCancel: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: '#EEE', + alignItems: 'center' + }, + btnConfirm: { + flex: 1, + padding: 16, + borderRadius: 12, + backgroundColor: KurdistanColors.kesk, + alignItems: 'center' + }, + addrFull: { + textAlign: 'center', + color: '#666', + fontSize: 12, + marginVertical: 10, + fontFamily: 'monospace' + }, + + // Network Selector Styles + networkOption: { + flexDirection: 'row', + width: '100%', + padding: 16, + borderRadius: 12, + backgroundColor: '#F5F5F5', + marginBottom: 8, + alignItems: 'center' + }, + networkOptionSelected: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + borderWidth: 2, + borderColor: KurdistanColors.kesk + }, + networkName: { + fontSize: 16, + fontWeight: '600', + color: '#333' + }, + networkType: { + fontSize: 12, + color: '#666', + marginTop: 4 + }, + + // Welcome Screen Styles + welcomeGradient: { + flex: 0.45, + justifyContent: 'center', + alignItems: 'center', + borderBottomLeftRadius: 32, + borderBottomRightRadius: 32, + }, + welcomeContent: { + alignItems: 'center', + paddingHorizontal: 20, + }, + welcomeEmoji: { + fontSize: 64, + marginBottom: 16, + }, + welcomeTitle: { + fontSize: 18, + color: 'rgba(255,255,255,0.8)', + marginBottom: 8, + }, + welcomeBrand: { + fontSize: 32, + fontWeight: 'bold', + color: 'white', + marginBottom: 8, + textAlign: 'center', + }, + welcomeSubtitle: { + fontSize: 16, + color: 'rgba(255,255,255,0.7)', + textAlign: 'center', + }, + + // Button Container (Welcome Screen) + buttonContainer: { + flex: 0.55, + paddingHorizontal: 24, + paddingTop: 32, + justifyContent: 'flex-start', + }, + + // Primary Button (Welcome Screen) + primaryWalletButton: { + marginBottom: 16, + borderRadius: 16, + overflow: 'hidden', + shadowColor: KurdistanColors.kesk, + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.3, + shadowRadius: 8, + elevation: 8, + }, + buttonGradient: { + flexDirection: 'row', + alignItems: 'center', + padding: 20, + borderRadius: 16, + }, + buttonIcon: { + width: 52, + height: 52, + borderRadius: 26, + backgroundColor: 'rgba(255,255,255,0.2)', + justifyContent: 'center', + alignItems: 'center', + marginRight: 16, + }, + buttonIconText: { + fontSize: 24, + color: 'white', + }, + buttonTextContainer: { + flex: 1, + }, + primaryButtonText: { + fontSize: 18, + fontWeight: 'bold', + color: 'white', + marginBottom: 4, + }, + primaryButtonSubtext: { + fontSize: 14, + color: 'rgba(255,255,255,0.8)', + }, + + // Secondary Button (Welcome Screen) + secondaryWalletButton: { + backgroundColor: 'white', + borderRadius: 16, + marginBottom: 24, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 4, + }, + secondaryButtonContent: { + flexDirection: 'row', + alignItems: 'center', + padding: 20, + }, + secondaryButtonText: { + fontSize: 18, + fontWeight: '600', + color: '#333', + marginBottom: 4, + }, + secondaryButtonSubtext: { + fontSize: 14, + color: '#666', + }, + + // Security Notice (Welcome Screen) + securityNotice: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: 'rgba(0,105,62,0.05)', + padding: 16, + borderRadius: 12, + marginTop: 'auto', + marginBottom: 20, + }, + securityIcon: { + fontSize: 20, + marginRight: 12, + }, + securityText: { + flex: 1, + fontSize: 12, + color: '#666', + lineHeight: 18, + }, +}); + +export default WalletScreen; \ No newline at end of file diff --git a/mobile/src/screens/__tests__/BeCitizenScreen.test.tsx b/mobile/src/screens/__tests__/BeCitizenScreen.test.tsx index b6ede908..7e61d83c 100644 --- a/mobile/src/screens/__tests__/BeCitizenScreen.test.tsx +++ b/mobile/src/screens/__tests__/BeCitizenScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import BeCitizenScreen from '../BeCitizenScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const BeCitizenScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/EducationScreen.test.tsx b/mobile/src/screens/__tests__/EducationScreen.test.tsx index bc56c335..dd0afdb0 100644 --- a/mobile/src/screens/__tests__/EducationScreen.test.tsx +++ b/mobile/src/screens/__tests__/EducationScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import EducationScreen from '../EducationScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const EducationScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/GovernanceScreen.test.tsx b/mobile/src/screens/__tests__/GovernanceScreen.test.tsx index bacc96c3..787659be 100644 --- a/mobile/src/screens/__tests__/GovernanceScreen.test.tsx +++ b/mobile/src/screens/__tests__/GovernanceScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import GovernanceScreen from '../GovernanceScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const GovernanceScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/NFTGalleryScreen.test.tsx b/mobile/src/screens/__tests__/NFTGalleryScreen.test.tsx index b1fe471d..4f478f80 100644 --- a/mobile/src/screens/__tests__/NFTGalleryScreen.test.tsx +++ b/mobile/src/screens/__tests__/NFTGalleryScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import NFTGalleryScreen from '../NFTGalleryScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const NFTGalleryScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/P2PScreen.test.tsx b/mobile/src/screens/__tests__/P2PScreen.test.tsx index 24101a32..5f8a592a 100644 --- a/mobile/src/screens/__tests__/P2PScreen.test.tsx +++ b/mobile/src/screens/__tests__/P2PScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import P2PScreen from '../P2PScreen'; jest.mock('@react-navigation/native', () => ({ @@ -12,9 +12,9 @@ jest.mock('@react-navigation/native', () => ({ // Wrapper with required providers const P2PScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/ReferralScreen.test.tsx b/mobile/src/screens/__tests__/ReferralScreen.test.tsx index 3e27c1f1..148103b3 100644 --- a/mobile/src/screens/__tests__/ReferralScreen.test.tsx +++ b/mobile/src/screens/__tests__/ReferralScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import ReferralScreen from '../ReferralScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const ReferralScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/StakingScreen.test.tsx b/mobile/src/screens/__tests__/StakingScreen.test.tsx index b5aa5813..09567f7c 100644 --- a/mobile/src/screens/__tests__/StakingScreen.test.tsx +++ b/mobile/src/screens/__tests__/StakingScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import StakingScreen from '../StakingScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const StakingScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/SwapScreen.test.tsx b/mobile/src/screens/__tests__/SwapScreen.test.tsx index 58596304..9692952a 100644 --- a/mobile/src/screens/__tests__/SwapScreen.test.tsx +++ b/mobile/src/screens/__tests__/SwapScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import SwapScreen from '../SwapScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const SwapScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/__tests__/WalletScreen.test.tsx b/mobile/src/screens/__tests__/WalletScreen.test.tsx index 1cbede0b..f228830b 100644 --- a/mobile/src/screens/__tests__/WalletScreen.test.tsx +++ b/mobile/src/screens/__tests__/WalletScreen.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { render } from '@testing-library/react-native'; import { LanguageProvider } from '../../contexts/LanguageContext'; -import { PolkadotProvider } from '../../contexts/PolkadotContext'; +import { PezkuwiProvider } from '../contexts/PezkuwiContext'; import WalletScreen from '../WalletScreen'; jest.mock('@react-navigation/native', () => ({ @@ -11,9 +11,9 @@ jest.mock('@react-navigation/native', () => ({ const WalletScreenWrapper = () => ( - + - + ); diff --git a/mobile/src/screens/governance/DelegationScreen.tsx b/mobile/src/screens/governance/DelegationScreen.tsx new file mode 100644 index 00000000..839e4380 --- /dev/null +++ b/mobile/src/screens/governance/DelegationScreen.tsx @@ -0,0 +1,795 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + TextInput, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Delegate { + id: string; + address: string; + name: string; + description: string; + reputation: number; + successRate: number; + totalDelegated: string; + delegatorCount: number; + activeProposals: number; + categories: string[]; +} + +interface UserDelegation { + id: string; + delegate: string; + delegateAddress: string; + amount: string; + conviction: number; + category?: string; + status: 'active' | 'revoked'; +} + +// Mock data removed - using real democracy.voting queries + +const DelegationScreen: React.FC = () => { + const { api, isApiReady, selectedAccount } = usePezkuwi(); + + const [delegates, setDelegates] = useState([]); + const [userDelegations, setUserDelegations] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedView, setSelectedView] = useState<'explore' | 'my-delegations'>('explore'); + const [selectedDelegate, setSelectedDelegate] = useState(null); + const [delegationAmount, setDelegationAmount] = useState(''); + + // Stats + const stats = { + activeDelegates: delegates.length, + totalDelegated: delegates.reduce((sum, d) => sum + parseFloat(d.totalDelegated.replace(/[^0-9]/g, '') || '0'), 0).toLocaleString(), + avgSuccessRate: delegates.length > 0 ? Math.round(delegates.reduce((sum, d) => sum + d.successRate, 0) / delegates.length) : 0, + userDelegated: userDelegations.reduce((sum, d) => sum + parseFloat(d.amount.replace(/,/g, '') || '0'), 0).toLocaleString(), + }; + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchDelegationData = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch voting delegations from democracy pallet + if (api.query.democracy?.voting) { + const votingEntries = await api.query.democracy.voting.entries(); + const delegatesMap = new Map(); + + votingEntries.forEach(([key, value]: any) => { + const voter = key.args[0].toString(); + const voting = value; + + if (voting.isDelegating) { + const delegating = voting.asDelegating; + const target = delegating.target.toString(); + const balance = BigInt(delegating.balance.toString()); + + if (delegatesMap.has(target)) { + const existing = delegatesMap.get(target)!; + delegatesMap.set(target, { + delegated: existing.delegated + balance, + count: existing.count + 1, + }); + } else { + delegatesMap.set(target, { delegated: balance, count: 1 }); + } + } + }); + + // Convert to delegates array + const delegatesData: Delegate[] = Array.from(delegatesMap.entries()).map(([address, data]) => ({ + id: address, + address, + name: `Delegate ${address.slice(0, 8)}`, + description: 'Community delegate', + reputation: data.count * 10, + successRate: 90, + totalDelegated: formatBalance(data.delegated.toString()), + delegatorCount: data.count, + activeProposals: 0, + categories: ['Governance'], + })); + + setDelegates(delegatesData); + + // Fetch user's delegations + if (selectedAccount) { + const userVoting = await api.query.democracy.voting(selectedAccount.address); + if (userVoting.isDelegating) { + const delegating = userVoting.asDelegating; + setUserDelegations([{ + id: '1', + delegate: `Delegate ${delegating.target.toString().slice(0, 8)}`, + delegateAddress: delegating.target.toString(), + amount: formatBalance(delegating.balance.toString()), + conviction: delegating.conviction.toNumber(), + status: 'active' as const, + }]); + } else { + setUserDelegations([]); + } + } + } + } catch (error) { + console.error('Failed to load delegation data:', error); + Alert.alert('Error', 'Failed to load delegation data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchDelegationData(); + const interval = setInterval(fetchDelegationData, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchDelegationData(); + }; + + const handleDelegatePress = (delegate: Delegate) => { + setSelectedDelegate(delegate); + }; + + const handleDelegate = async () => { + if (!selectedDelegate || !delegationAmount) { + Alert.alert('Error', 'Please enter delegation amount'); + return; + } + + Alert.alert( + 'Confirm Delegation', + `Delegate ${delegationAmount} HEZ to ${selectedDelegate.name}?`, + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Confirm', + onPress: async () => { + // TODO: Submit delegation transaction + // const tx = api.tx.delegation.delegate(selectedDelegate.address, delegationAmount); + // await tx.signAndSend(selectedAccount.address); + Alert.alert('Success', `Delegated ${delegationAmount} HEZ to ${selectedDelegate.name}`); + setSelectedDelegate(null); + setDelegationAmount(''); + }, + }, + ] + ); + }; + + const handleRevokeDelegation = (delegation: UserDelegation) => { + Alert.alert( + 'Revoke Delegation', + `Revoke delegation of ${delegation.amount} HEZ to ${delegation.delegate}?`, + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Revoke', + onPress: async () => { + // TODO: Submit revoke transaction + // const tx = api.tx.delegation.undelegate(delegation.delegateAddress); + // await tx.signAndSend(selectedAccount.address); + Alert.alert('Success', 'Delegation revoked successfully'); + }, + }, + ] + ); + }; + + const getCategoryColor = (category: string) => { + const colors: Record = { + Treasury: '#F59E0B', + Technical: '#3B82F6', + Security: '#EF4444', + Governance: KurdistanColors.kesk, + Community: '#8B5CF6', + Education: '#EC4899', + }; + return colors[category] || '#666'; + }; + + return ( + + } + > + {/* Header */} + + Delegation + Delegate your voting power + + + {/* Stats Overview */} + + + 👥 + {stats.activeDelegates} + Active Delegates + + + 💰 + {stats.totalDelegated} + Total Delegated + + + 📊 + {stats.avgSuccessRate}% + Avg Success Rate + + + 🎯 + {stats.userDelegated} + Your Delegated + + + + {/* View Toggle */} + + setSelectedView('explore')} + > + + Explore Delegates + + + setSelectedView('my-delegations')} + > + + My Delegations + + + + + {/* Explore Delegates View */} + {selectedView === 'explore' && ( + + {delegates.map((delegate) => ( + handleDelegatePress(delegate)} + > + {/* Delegate Header */} + + + {delegate.name.substring(0, 2).toUpperCase()} + + + {delegate.name} + + {delegate.successRate}% success + + + + + {/* Address */} + + {delegate.address.slice(0, 10)}...{delegate.address.slice(-6)} + + + {/* Description */} + + {delegate.description} + + + {/* Categories */} + + {delegate.categories.map((cat) => ( + + {cat} + + ))} + + + {/* Stats Row */} + + + + {delegate.reputation} rep + + + 💰 + {delegate.totalDelegated} + + + 👥 + {delegate.delegatorCount} delegators + + + 📋 + {delegate.activeProposals} active + + + + ))} + + )} + + {/* My Delegations View */} + {selectedView === 'my-delegations' && ( + + {userDelegations.length === 0 ? ( + + 🎯 + + {selectedAccount + ? "You haven't delegated any voting power yet" + : 'Connect your wallet to view delegations'} + + + ) : ( + userDelegations.map((delegation) => ( + + {/* Delegation Header */} + + + {delegation.delegate} + + {delegation.delegateAddress.slice(0, 10)}...{delegation.delegateAddress.slice(-6)} + + + + {delegation.status.toUpperCase()} + + + + {/* Delegation Info */} + + + Amount + {delegation.amount} HEZ + + + Conviction + {delegation.conviction}x + + {delegation.category && ( + + Category + {delegation.category} + + )} + + + {/* Action Buttons */} + + Alert.alert('Modify Delegation', 'Modify delegation modal would open here')} + > + Modify + + handleRevokeDelegation(delegation)} + > + Revoke + + + + )) + )} + + )} + + {/* Delegation Form (when delegate selected) */} + {selectedDelegate && ( + + + Delegate to {selectedDelegate.name} + setSelectedDelegate(null)}> + + + + + + Amount (HEZ) + + + Minimum delegation: 100 HEZ + + + Confirm Delegation + + + + )} + + {/* Info Note */} + + ℹ️ + + Delegating allows trusted community members to vote on your behalf. You can revoke delegation at any time. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + statsGrid: { + flexDirection: 'row', + flexWrap: 'wrap', + paddingHorizontal: 16, + gap: 12, + marginBottom: 20, + }, + statCard: { + flex: 1, + minWidth: '45%', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 16, + borderLeftWidth: 4, + boxShadow: '0px 1px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + statIcon: { + fontSize: 24, + marginBottom: 8, + }, + statValue: { + fontSize: 18, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + statLabel: { + fontSize: 11, + color: '#999', + }, + viewToggle: { + flexDirection: 'row', + marginHorizontal: 16, + marginBottom: 20, + backgroundColor: '#E5E5E5', + borderRadius: 12, + padding: 4, + }, + viewToggleButton: { + flex: 1, + paddingVertical: 10, + alignItems: 'center', + borderRadius: 10, + }, + viewToggleButtonActive: { + backgroundColor: '#FFFFFF', + }, + viewToggleText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + viewToggleTextActive: { + color: KurdistanColors.kesk, + }, + section: { + paddingHorizontal: 16, + gap: 16, + }, + delegateCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + delegateHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + }, + delegateAvatar: { + width: 48, + height: 48, + borderRadius: 24, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + delegateAvatarText: { + fontSize: 16, + fontWeight: 'bold', + color: '#FFFFFF', + }, + delegateHeaderInfo: { + flex: 1, + }, + delegateName: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + successBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + alignSelf: 'flex-start', + }, + successBadgeText: { + fontSize: 11, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + delegateAddress: { + fontSize: 12, + color: '#999', + fontFamily: 'monospace', + marginBottom: 8, + }, + delegateDescription: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 12, + }, + categoriesRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 12, + }, + categoryBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + categoryBadgeText: { + fontSize: 11, + fontWeight: '600', + }, + delegateStats: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 12, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + delegateStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + delegateStatIcon: { + fontSize: 14, + }, + delegateStatText: { + fontSize: 12, + color: '#666', + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + delegationCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + delegationHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + delegationDelegate: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + delegationAddress: { + fontSize: 11, + color: '#999', + fontFamily: 'monospace', + }, + statusBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + color: KurdistanColors.kesk, + }, + delegationInfo: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + paddingVertical: 12, + backgroundColor: '#F8F9FA', + borderRadius: 8, + paddingHorizontal: 12, + }, + delegationInfoItem: { + alignItems: 'center', + }, + delegationInfoLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + delegationInfoValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + delegationActions: { + flexDirection: 'row', + gap: 8, + }, + delegationActionButton: { + flex: 1, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + }, + modifyButton: { + backgroundColor: '#E5E5E5', + }, + revokeButton: { + backgroundColor: 'rgba(239, 68, 68, 0.1)', + }, + delegationActionButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + delegationForm: { + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 16, + borderRadius: 16, + padding: 16, + borderWidth: 2, + borderColor: KurdistanColors.kesk, + boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.1)', + elevation: 4, + }, + formHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + formTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + formClose: { + fontSize: 24, + color: '#999', + }, + formContent: { + gap: 12, + }, + formLabel: { + fontSize: 14, + fontWeight: '600', + color: '#333', + marginBottom: 4, + }, + formInput: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + paddingHorizontal: 16, + paddingVertical: 12, + fontSize: 16, + color: '#333', + borderWidth: 1, + borderColor: '#E5E5E5', + }, + formHint: { + fontSize: 12, + color: '#999', + }, + confirmButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + marginTop: 8, + }, + confirmButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, +}); + +export default DelegationScreen; diff --git a/mobile/src/screens/governance/DelegationScreen.tsx.bak b/mobile/src/screens/governance/DelegationScreen.tsx.bak new file mode 100644 index 00000000..ea19f34e --- /dev/null +++ b/mobile/src/screens/governance/DelegationScreen.tsx.bak @@ -0,0 +1,807 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + TextInput, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Delegate { + id: string; + address: string; + name: string; + description: string; + reputation: number; + successRate: number; + totalDelegated: string; + delegatorCount: number; + activeProposals: number; + categories: string[]; +} + +interface UserDelegation { + id: string; + delegate: string; + delegateAddress: string; + amount: string; + conviction: number; + category?: string; + status: 'active' | 'revoked'; +} + +// Mock data removed - using real democracy.voting queries + +const DelegationScreen: React.FC = () => { + const { api, isApiReady, selectedAccount } = usePezkuwi(); + + const [delegates, setDelegates] = useState([]); + const [userDelegations, setUserDelegations] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedView, setSelectedView] = useState<'explore' | 'my-delegations'>('explore'); + const [selectedDelegate, setSelectedDelegate] = useState(null); + const [delegationAmount, setDelegationAmount] = useState(''); + + // Stats + const stats = { + activeDelegates: delegates.length, + totalDelegated: delegates.reduce((sum, d) => sum + parseFloat(d.totalDelegated.replace(/[^0-9]/g, '') || '0'), 0).toLocaleString(), + avgSuccessRate: delegates.length > 0 ? Math.round(delegates.reduce((sum, d) => sum + d.successRate, 0) / delegates.length) : 0, + userDelegated: userDelegations.reduce((sum, d) => sum + parseFloat(d.amount.replace(/,/g, '') || '0'), 0).toLocaleString(), + }; + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchDelegationData = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch voting delegations from democracy pallet + if (api.query.democracy?.voting) { + const votingEntries = await api.query.democracy.voting.entries(); + const delegatesMap = new Map(); + + votingEntries.forEach(([key, value]: any) => { + const voter = key.args[0].toString(); + const voting = value; + + if (voting.isDelegating) { + const delegating = voting.asDelegating; + const target = delegating.target.toString(); + const balance = BigInt(delegating.balance.toString()); + + if (delegatesMap.has(target)) { + const existing = delegatesMap.get(target)!; + delegatesMap.set(target, { + delegated: existing.delegated + balance, + count: existing.count + 1, + }); + } else { + delegatesMap.set(target, { delegated: balance, count: 1 }); + } + } + }); + + // Convert to delegates array + const delegatesData: Delegate[] = Array.from(delegatesMap.entries()).map(([address, data]) => ({ + id: address, + address, + name: `Delegate ${address.slice(0, 8)}`, + description: 'Community delegate', + reputation: data.count * 10, + successRate: 90, + totalDelegated: formatBalance(data.delegated.toString()), + delegatorCount: data.count, + activeProposals: 0, + categories: ['Governance'], + })); + + setDelegates(delegatesData); + + // Fetch user's delegations + if (selectedAccount) { + const userVoting = await api.query.democracy.voting(selectedAccount.address); + if (userVoting.isDelegating) { + const delegating = userVoting.asDelegating; + setUserDelegations([{ + id: '1', + delegate: `Delegate ${delegating.target.toString().slice(0, 8)}`, + delegateAddress: delegating.target.toString(), + amount: formatBalance(delegating.balance.toString()), + conviction: delegating.conviction.toNumber(), + status: 'active' as const, + }]); + } else { + setUserDelegations([]); + } + } + } + } catch (error) { + console.error('Failed to load delegation data:', error); + Alert.alert('Error', 'Failed to load delegation data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchDelegationData(); + const interval = setInterval(fetchDelegationData, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchDelegationData(); + }; + + const handleDelegatePress = (delegate: Delegate) => { + setSelectedDelegate(delegate); + }; + + const handleDelegate = async () => { + if (!selectedDelegate || !delegationAmount) { + Alert.alert('Error', 'Please enter delegation amount'); + return; + } + + Alert.alert( + 'Confirm Delegation', + `Delegate ${delegationAmount} HEZ to ${selectedDelegate.name}?`, + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Confirm', + onPress: async () => { + // TODO: Submit delegation transaction + // const tx = api.tx.delegation.delegate(selectedDelegate.address, delegationAmount); + // await tx.signAndSend(selectedAccount.address); + Alert.alert('Success', `Delegated ${delegationAmount} HEZ to ${selectedDelegate.name}`); + setSelectedDelegate(null); + setDelegationAmount(''); + }, + }, + ] + ); + }; + + const handleRevokeDelegation = (delegation: UserDelegation) => { + Alert.alert( + 'Revoke Delegation', + `Revoke delegation of ${delegation.amount} HEZ to ${delegation.delegate}?`, + [ + { text: 'Cancel', style: 'cancel' }, + { + text: 'Revoke', + onPress: async () => { + // TODO: Submit revoke transaction + // const tx = api.tx.delegation.undelegate(delegation.delegateAddress); + // await tx.signAndSend(selectedAccount.address); + Alert.alert('Success', 'Delegation revoked successfully'); + }, + }, + ] + ); + }; + + const getCategoryColor = (category: string) => { + const colors: Record = { + Treasury: '#F59E0B', + Technical: '#3B82F6', + Security: '#EF4444', + Governance: KurdistanColors.kesk, + Community: '#8B5CF6', + Education: '#EC4899', + }; + return colors[category] || '#666'; + }; + + return ( + + } + > + {/* Header */} + + Delegation + Delegate your voting power + + + {/* Stats Overview */} + + + 👥 + {stats.activeDelegates} + Active Delegates + + + 💰 + {stats.totalDelegated} + Total Delegated + + + 📊 + {stats.avgSuccessRate}% + Avg Success Rate + + + 🎯 + {stats.userDelegated} + Your Delegated + + + + {/* View Toggle */} + + setSelectedView('explore')} + > + + Explore Delegates + + + setSelectedView('my-delegations')} + > + + My Delegations + + + + + {/* Explore Delegates View */} + {selectedView === 'explore' && ( + + {delegates.map((delegate) => ( + handleDelegatePress(delegate)} + > + {/* Delegate Header */} + + + {delegate.name.substring(0, 2).toUpperCase()} + + + {delegate.name} + + {delegate.successRate}% success + + + + + {/* Address */} + + {delegate.address.slice(0, 10)}...{delegate.address.slice(-6)} + + + {/* Description */} + + {delegate.description} + + + {/* Categories */} + + {delegate.categories.map((cat) => ( + + {cat} + + ))} + + + {/* Stats Row */} + + + + {delegate.reputation} rep + + + 💰 + {delegate.totalDelegated} + + + 👥 + {delegate.delegatorCount} delegators + + + 📋 + {delegate.activeProposals} active + + + + ))} + + )} + + {/* My Delegations View */} + {selectedView === 'my-delegations' && ( + + {userDelegations.length === 0 ? ( + + 🎯 + + {selectedAccount + ? "You haven't delegated any voting power yet" + : 'Connect your wallet to view delegations'} + + + ) : ( + userDelegations.map((delegation) => ( + + {/* Delegation Header */} + + + {delegation.delegate} + + {delegation.delegateAddress.slice(0, 10)}...{delegation.delegateAddress.slice(-6)} + + + + {delegation.status.toUpperCase()} + + + + {/* Delegation Info */} + + + Amount + {delegation.amount} HEZ + + + Conviction + {delegation.conviction}x + + {delegation.category && ( + + Category + {delegation.category} + + )} + + + {/* Action Buttons */} + + Alert.alert('Modify Delegation', 'Modify delegation modal would open here')} + > + Modify + + handleRevokeDelegation(delegation)} + > + Revoke + + + + )) + )} + + )} + + {/* Delegation Form (when delegate selected) */} + {selectedDelegate && ( + + + Delegate to {selectedDelegate.name} + setSelectedDelegate(null)}> + + + + + + Amount (HEZ) + + + Minimum delegation: 100 HEZ + + + Confirm Delegation + + + + )} + + {/* Info Note */} + + ℹ️ + + Delegating allows trusted community members to vote on your behalf. You can revoke delegation at any time. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + statsGrid: { + flexDirection: 'row', + flexWrap: 'wrap', + paddingHorizontal: 16, + gap: 12, + marginBottom: 20, + }, + statCard: { + flex: 1, + minWidth: '45%', + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 16, + borderLeftWidth: 4, + shadowColor: '#000', + shadowOffset: { width: 0, height: 1 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + statIcon: { + fontSize: 24, + marginBottom: 8, + }, + statValue: { + fontSize: 18, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + statLabel: { + fontSize: 11, + color: '#999', + }, + viewToggle: { + flexDirection: 'row', + marginHorizontal: 16, + marginBottom: 20, + backgroundColor: '#E5E5E5', + borderRadius: 12, + padding: 4, + }, + viewToggleButton: { + flex: 1, + paddingVertical: 10, + alignItems: 'center', + borderRadius: 10, + }, + viewToggleButtonActive: { + backgroundColor: '#FFFFFF', + }, + viewToggleText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + viewToggleTextActive: { + color: KurdistanColors.kesk, + }, + section: { + paddingHorizontal: 16, + gap: 16, + }, + delegateCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + delegateHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + }, + delegateAvatar: { + width: 48, + height: 48, + borderRadius: 24, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + delegateAvatarText: { + fontSize: 16, + fontWeight: 'bold', + color: '#FFFFFF', + }, + delegateHeaderInfo: { + flex: 1, + }, + delegateName: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + successBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + alignSelf: 'flex-start', + }, + successBadgeText: { + fontSize: 11, + fontWeight: '600', + color: KurdistanColors.kesk, + }, + delegateAddress: { + fontSize: 12, + color: '#999', + fontFamily: 'monospace', + marginBottom: 8, + }, + delegateDescription: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 12, + }, + categoriesRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 12, + }, + categoryBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + categoryBadgeText: { + fontSize: 11, + fontWeight: '600', + }, + delegateStats: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 12, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + delegateStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + delegateStatIcon: { + fontSize: 14, + }, + delegateStatText: { + fontSize: 12, + color: '#666', + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + delegationCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + delegationHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + delegationDelegate: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + delegationAddress: { + fontSize: 11, + color: '#999', + fontFamily: 'monospace', + }, + statusBadge: { + backgroundColor: 'rgba(0, 143, 67, 0.1)', + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + color: KurdistanColors.kesk, + }, + delegationInfo: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + paddingVertical: 12, + backgroundColor: '#F8F9FA', + borderRadius: 8, + paddingHorizontal: 12, + }, + delegationInfoItem: { + alignItems: 'center', + }, + delegationInfoLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + delegationInfoValue: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + delegationActions: { + flexDirection: 'row', + gap: 8, + }, + delegationActionButton: { + flex: 1, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + }, + modifyButton: { + backgroundColor: '#E5E5E5', + }, + revokeButton: { + backgroundColor: 'rgba(239, 68, 68, 0.1)', + }, + delegationActionButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + delegationForm: { + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 16, + borderRadius: 16, + padding: 16, + borderWidth: 2, + borderColor: KurdistanColors.kesk, + shadowColor: '#000', + shadowOffset: { width: 0, height: 4 }, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 4, + }, + formHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + formTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + }, + formClose: { + fontSize: 24, + color: '#999', + }, + formContent: { + gap: 12, + }, + formLabel: { + fontSize: 14, + fontWeight: '600', + color: '#333', + marginBottom: 4, + }, + formInput: { + backgroundColor: '#F8F9FA', + borderRadius: 12, + paddingHorizontal: 16, + paddingVertical: 12, + fontSize: 16, + color: '#333', + borderWidth: 1, + borderColor: '#E5E5E5', + }, + formHint: { + fontSize: 12, + color: '#999', + }, + confirmButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + marginTop: 8, + }, + confirmButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, +}); + +export default DelegationScreen; diff --git a/mobile/src/screens/governance/ElectionsScreen.tsx b/mobile/src/screens/governance/ElectionsScreen.tsx new file mode 100644 index 00000000..57630314 --- /dev/null +++ b/mobile/src/screens/governance/ElectionsScreen.tsx @@ -0,0 +1,543 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface ElectionInfo { + id: string; + type: 'presidential' | 'parliamentary' | 'speaker' | 'constitutional_court'; + status: 'active' | 'completed' | 'scheduled'; + endBlock: number; + candidates: number; + totalVotes: number; +} + +interface Candidate { + address: string; + name: string; + votes: number; + platform: string; +} + +// Mock data removed - using dynamicCommissionCollective pallet for elections + +const ElectionsScreen: React.FC = () => { + const { api, isApiReady, error: connectionError } = usePezkuwi(); + + const [elections, setElections] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedType, setSelectedType] = useState<'all' | 'presidential' | 'parliamentary' | 'speaker' | 'constitutional_court'>('all'); + + const fetchElections = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch commission proposals (acting as elections) + if (api.query.dynamicCommissionCollective?.proposals) { + const proposalHashes = await api.query.dynamicCommissionCollective.proposals(); + + const electionsData: ElectionInfo[] = []; + + for (const hash of proposalHashes) { + const voting = await api.query.dynamicCommissionCollective.voting(hash); + if (voting.isSome) { + const voteData = voting.unwrap(); + electionsData.push({ + id: hash.toString(), + type: 'parliamentary' as const, + status: 'active' as const, + endBlock: voteData.end?.toNumber() || 0, + candidates: voteData.threshold?.toNumber() || 0, + totalVotes: (voteData.ayes?.length || 0) + (voteData.nays?.length || 0), + }); + } + } + + setElections(electionsData); + } + } catch (error) { + console.error('Failed to load elections:', error); + Alert.alert('Error', 'Failed to load elections data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchElections(); + const interval = setInterval(fetchElections, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchElections(); + }; + + const handleElectionPress = (election: ElectionInfo) => { + Alert.alert( + getElectionTypeLabel(election.type), + `Candidates: ${election.candidates}\nTotal Votes: ${election.totalVotes}\nStatus: ${election.status}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'View Details', onPress: () => Alert.alert('Election Details', 'ElectionDetailsScreen would open here') }, + ] + ); + }; + + const handleRegisterAsCandidate = () => { + Alert.alert('Register as Candidate', 'Candidate registration form would open here'); + }; + + const getElectionTypeLabel = (type: string): string => { + const labels: Record = { + presidential: '👑 Presidential Election', + parliamentary: '🏛️ Parliamentary Election', + speaker: '🎤 Speaker Election', + constitutional_court: '⚖️ Constitutional Court', + }; + return labels[type] || type; + }; + + const getElectionIcon = (type: string): string => { + const icons: Record = { + presidential: '👑', + parliamentary: '🏛️', + speaker: '🎤', + constitutional_court: '⚖️', + }; + return icons[type] || '🗳️'; + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'active': + return KurdistanColors.kesk; + case 'completed': + return '#999'; + case 'scheduled': + return '#F59E0B'; + default: + return '#666'; + } + }; + + const filteredElections = selectedType === 'all' + ? elections + : elections.filter(e => e.type === selectedType); + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && elections.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Elections + Democratic governance for Kurdistan + + + {/* Register Button */} + + ➕ Register as Candidate + + + {/* Filter Tabs */} + + + setSelectedType('all')} + > + + All + + + setSelectedType('presidential')} + > + + 👑 Presidential + + + setSelectedType('parliamentary')} + > + + 🏛️ Parliamentary + + + setSelectedType('speaker')} + > + + 🎤 Speaker + + + + + + {/* Elections List */} + + {filteredElections.length === 0 ? ( + + 🗳️ + No elections available + + ) : ( + filteredElections.map((election) => ( + handleElectionPress(election)} + > + {/* Election Header */} + + + {getElectionIcon(election.type)} + {getElectionTypeLabel(election.type)} + + + + {election.status.toUpperCase()} + + + + + {/* Election Stats */} + + + 👥 + Candidates + {election.candidates} + + + + 🗳️ + Total Votes + {election.totalVotes.toLocaleString()} + + + + + End Block + {election.endBlock.toLocaleString()} + + + + {/* Vote Button */} + {election.status === 'active' && ( + + View Candidates & Vote + + )} + + {election.status === 'completed' && ( + + View Results + + )} + + )) + )} + + + {/* Info Note */} + + ℹ️ + + Only citizens with verified citizenship status can vote in elections. Your vote is anonymous and recorded on-chain. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + registerButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + registerButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + filterTabs: { + marginBottom: 20, + paddingHorizontal: 16, + }, + filterTab: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + marginRight: 8, + }, + filterTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + filterTabText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + filterTabTextActive: { + color: '#FFFFFF', + }, + electionsList: { + paddingHorizontal: 16, + gap: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + electionCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + electionHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + electionTitleRow: { + flexDirection: 'row', + alignItems: 'center', + flex: 1, + }, + electionIcon: { + fontSize: 24, + marginRight: 8, + }, + electionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + flex: 1, + }, + statusBadge: { + paddingHorizontal: 12, + paddingVertical: 6, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 11, + fontWeight: '700', + }, + electionStats: { + flexDirection: 'row', + marginBottom: 16, + paddingVertical: 12, + backgroundColor: '#F8F9FA', + borderRadius: 12, + }, + statItem: { + flex: 1, + alignItems: 'center', + }, + statDivider: { + width: 1, + backgroundColor: '#E5E5E5', + }, + statIcon: { + fontSize: 20, + marginBottom: 4, + }, + statLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + statValue: { + fontSize: 14, + fontWeight: 'bold', + color: '#333', + }, + voteButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 12, + borderRadius: 12, + alignItems: 'center', + }, + voteButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + resultsButton: { + backgroundColor: '#E5E5E5', + paddingVertical: 12, + borderRadius: 12, + alignItems: 'center', + }, + resultsButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default ElectionsScreen; diff --git a/mobile/src/screens/governance/ElectionsScreen.tsx.bak b/mobile/src/screens/governance/ElectionsScreen.tsx.bak new file mode 100644 index 00000000..07f24cd0 --- /dev/null +++ b/mobile/src/screens/governance/ElectionsScreen.tsx.bak @@ -0,0 +1,546 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface ElectionInfo { + id: string; + type: 'presidential' | 'parliamentary' | 'speaker' | 'constitutional_court'; + status: 'active' | 'completed' | 'scheduled'; + endBlock: number; + candidates: number; + totalVotes: number; +} + +interface Candidate { + address: string; + name: string; + votes: number; + platform: string; +} + +// Mock data removed - using dynamicCommissionCollective pallet for elections + +const ElectionsScreen: React.FC = () => { + const { api, isApiReady, error: connectionError } = usePezkuwi(); + + const [elections, setElections] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedType, setSelectedType] = useState<'all' | 'presidential' | 'parliamentary' | 'speaker' | 'constitutional_court'>('all'); + + const fetchElections = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch commission proposals (acting as elections) + if (api.query.dynamicCommissionCollective?.proposals) { + const proposalHashes = await api.query.dynamicCommissionCollective.proposals(); + + const electionsData: ElectionInfo[] = []; + + for (const hash of proposalHashes) { + const voting = await api.query.dynamicCommissionCollective.voting(hash); + if (voting.isSome) { + const voteData = voting.unwrap(); + electionsData.push({ + id: hash.toString(), + type: 'parliamentary' as const, + status: 'active' as const, + endBlock: voteData.end?.toNumber() || 0, + candidates: voteData.threshold?.toNumber() || 0, + totalVotes: (voteData.ayes?.length || 0) + (voteData.nays?.length || 0), + }); + } + } + + setElections(electionsData); + } + } catch (error) { + console.error('Failed to load elections:', error); + Alert.alert('Error', 'Failed to load elections data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchElections(); + const interval = setInterval(fetchElections, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchElections(); + }; + + const handleElectionPress = (election: ElectionInfo) => { + Alert.alert( + getElectionTypeLabel(election.type), + `Candidates: ${election.candidates}\nTotal Votes: ${election.totalVotes}\nStatus: ${election.status}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'View Details', onPress: () => Alert.alert('Election Details', 'ElectionDetailsScreen would open here') }, + ] + ); + }; + + const handleRegisterAsCandidate = () => { + Alert.alert('Register as Candidate', 'Candidate registration form would open here'); + }; + + const getElectionTypeLabel = (type: string): string => { + const labels: Record = { + presidential: '👑 Presidential Election', + parliamentary: '🏛️ Parliamentary Election', + speaker: '🎤 Speaker Election', + constitutional_court: '⚖️ Constitutional Court', + }; + return labels[type] || type; + }; + + const getElectionIcon = (type: string): string => { + const icons: Record = { + presidential: '👑', + parliamentary: '🏛️', + speaker: '🎤', + constitutional_court: '⚖️', + }; + return icons[type] || '🗳️'; + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'active': + return KurdistanColors.kesk; + case 'completed': + return '#999'; + case 'scheduled': + return '#F59E0B'; + default: + return '#666'; + } + }; + + const filteredElections = selectedType === 'all' + ? elections + : elections.filter(e => e.type === selectedType); + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && elections.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Elections + Democratic governance for Kurdistan + + + {/* Register Button */} + + ➕ Register as Candidate + + + {/* Filter Tabs */} + + + setSelectedType('all')} + > + + All + + + setSelectedType('presidential')} + > + + 👑 Presidential + + + setSelectedType('parliamentary')} + > + + 🏛️ Parliamentary + + + setSelectedType('speaker')} + > + + 🎤 Speaker + + + + + + {/* Elections List */} + + {filteredElections.length === 0 ? ( + + 🗳️ + No elections available + + ) : ( + filteredElections.map((election) => ( + handleElectionPress(election)} + > + {/* Election Header */} + + + {getElectionIcon(election.type)} + {getElectionTypeLabel(election.type)} + + + + {election.status.toUpperCase()} + + + + + {/* Election Stats */} + + + 👥 + Candidates + {election.candidates} + + + + 🗳️ + Total Votes + {election.totalVotes.toLocaleString()} + + + + + End Block + {election.endBlock.toLocaleString()} + + + + {/* Vote Button */} + {election.status === 'active' && ( + + View Candidates & Vote + + )} + + {election.status === 'completed' && ( + + View Results + + )} + + )) + )} + + + {/* Info Note */} + + ℹ️ + + Only citizens with verified citizenship status can vote in elections. Your vote is anonymous and recorded on-chain. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + registerButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + registerButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + filterTabs: { + marginBottom: 20, + paddingHorizontal: 16, + }, + filterTab: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + marginRight: 8, + }, + filterTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + filterTabText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + filterTabTextActive: { + color: '#FFFFFF', + }, + electionsList: { + paddingHorizontal: 16, + gap: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + electionCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + electionHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 16, + }, + electionTitleRow: { + flexDirection: 'row', + alignItems: 'center', + flex: 1, + }, + electionIcon: { + fontSize: 24, + marginRight: 8, + }, + electionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + flex: 1, + }, + statusBadge: { + paddingHorizontal: 12, + paddingVertical: 6, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 11, + fontWeight: '700', + }, + electionStats: { + flexDirection: 'row', + marginBottom: 16, + paddingVertical: 12, + backgroundColor: '#F8F9FA', + borderRadius: 12, + }, + statItem: { + flex: 1, + alignItems: 'center', + }, + statDivider: { + width: 1, + backgroundColor: '#E5E5E5', + }, + statIcon: { + fontSize: 20, + marginBottom: 4, + }, + statLabel: { + fontSize: 11, + color: '#999', + marginBottom: 4, + }, + statValue: { + fontSize: 14, + fontWeight: 'bold', + color: '#333', + }, + voteButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 12, + borderRadius: 12, + alignItems: 'center', + }, + voteButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + resultsButton: { + backgroundColor: '#E5E5E5', + paddingVertical: 12, + borderRadius: 12, + alignItems: 'center', + }, + resultsButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default ElectionsScreen; diff --git a/mobile/src/screens/governance/ForumScreen.tsx b/mobile/src/screens/governance/ForumScreen.tsx new file mode 100644 index 00000000..395abf19 --- /dev/null +++ b/mobile/src/screens/governance/ForumScreen.tsx @@ -0,0 +1,716 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + TextInput, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Category { + id: string; + name: string; + icon: string; + color: string; +} + +interface Discussion { + id: string; + categoryId: string; + title: string; + content: string; + authorName: string; + authorAddress: string; + isPinned: boolean; + isLocked: boolean; + viewsCount: number; + repliesCount: number; + upvotes: number; + tags: string[]; + createdAt: string; + lastActivityAt: string; +} + +// Forum data stored in Supabase - categories and discussions fetched from database + +const ForumScreen: React.FC = () => { + const { selectedAccount } = usePezkuwi(); + + const [categories, setCategories] = useState([]); + const [discussions, setDiscussions] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedCategory, setSelectedCategory] = useState(null); + const [searchQuery, setSearchQuery] = useState(''); + const [sortBy, setSortBy] = useState<'recent' | 'popular' | 'replies'>('recent'); + + // Stats calculated from real data + const stats = { + totalDiscussions: discussions.length, + totalReplies: discussions.reduce((sum, d) => sum + d.repliesCount, 0), + totalMembers: 0, // Will be fetched from Supabase + onlineNow: 0, // Will be calculated from active sessions + }; + + const fetchForumData = async () => { + try { + setLoading(true); + + // Note: Forum uses Supabase database, not blockchain + // This is a web2 component for community discussions + // TODO: Implement Supabase client and fetch real data + // const { data: categoriesData } = await supabase.from('forum_categories').select('*'); + // const { data: discussionsData } = await supabase.from('forum_discussions').select('*'); + + // For now, set empty arrays - will be populated when Supabase is configured + setCategories([]); + setDiscussions([]); + + } catch (error) { + console.error('Failed to load forum data:', error); + Alert.alert('Error', 'Failed to load forum data from database'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchForumData(); + }, []); + + const handleRefresh = () => { + setRefreshing(true); + fetchForumData(); + }; + + const handleCreateTopic = () => { + if (!selectedAccount) { + Alert.alert('Login Required', 'You need to connect your wallet to create topics'); + return; + } + Alert.alert('Create Topic', 'Create topic modal would open here'); + // TODO: Navigate to CreateTopicScreen + }; + + const handleDiscussionPress = (discussion: Discussion) => { + Alert.alert( + discussion.title, + `${discussion.content.substring(0, 200)}...\n\nAuthor: ${discussion.authorName}\nReplies: ${discussion.repliesCount} | Views: ${discussion.viewsCount} | Upvotes: ${discussion.upvotes}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'View Thread', onPress: () => Alert.alert('Thread View', 'Thread details screen would open here') }, + ] + ); + }; + + const getCategoryById = (categoryId: string): Category | undefined => { + return CATEGORIES.find(c => c.id === categoryId); + }; + + const getTimeAgo = (dateString: string): string => { + const date = new Date(dateString); + const now = new Date(); + const diffMs = now.getTime() - date.getTime(); + const diffMins = Math.floor(diffMs / 60000); + const diffHours = Math.floor(diffMins / 60); + const diffDays = Math.floor(diffHours / 24); + + if (diffMins < 60) return `${diffMins}m ago`; + if (diffHours < 24) return `${diffHours}h ago`; + return `${diffDays}d ago`; + }; + + const filteredDiscussions = discussions + .filter(d => !selectedCategory || d.categoryId === selectedCategory) + .filter(d => !searchQuery || d.title.toLowerCase().includes(searchQuery.toLowerCase()) || d.content.toLowerCase().includes(searchQuery.toLowerCase())) + .sort((a, b) => { + if (a.isPinned && !b.isPinned) return -1; + if (!a.isPinned && b.isPinned) return 1; + + switch (sortBy) { + case 'popular': + return b.viewsCount - a.viewsCount; + case 'replies': + return b.repliesCount - a.repliesCount; + default: + return new Date(b.lastActivityAt).getTime() - new Date(a.lastActivityAt).getTime(); + } + }); + + return ( + + } + > + {/* Header */} + + Community Forum + Discuss, share ideas, and connect + + + {/* Stats Grid */} + + + 📋 + {stats.totalDiscussions} + Topics + + + 💬 + {stats.totalReplies} + Replies + + + 👥 + {stats.totalMembers} + Members + + + + {stats.onlineNow} + Online + + + + {/* Create Topic Button */} + + ➕ Create New Topic + + + {/* Search Bar */} + + 🔍 + + + + {/* Categories Filter */} + + Categories + + setSelectedCategory(null)} + > + + 📋 All Topics + + + {CATEGORIES.map((category) => ( + setSelectedCategory(category.id)} + > + + {category.icon} {category.name} + + + ))} + + + + {/* Sort Tabs */} + + setSortBy('recent')} + > + + ⏰ Recent + + + setSortBy('popular')} + > + + 👁️ Popular + + + setSortBy('replies')} + > + + 💬 Replies + + + + + {/* Discussions List */} + + {filteredDiscussions.length === 0 ? ( + + 💬 + + {searchQuery ? 'No discussions found matching your search' : 'No discussions yet'} + + {!searchQuery && ( + + Create First Topic + + )} + + ) : ( + filteredDiscussions.map((discussion) => { + const category = getCategoryById(discussion.categoryId); + return ( + handleDiscussionPress(discussion)} + > + {/* Discussion Header */} + + + + {discussion.authorName.charAt(0).toUpperCase()} + + + + {discussion.authorName} + {getTimeAgo(discussion.lastActivityAt)} + + + + {/* Badges */} + + {discussion.isPinned && ( + + 📌 PINNED + + )} + {discussion.isLocked && ( + + 🔒 LOCKED + + )} + {category && ( + + + {category.icon} {category.name} + + + )} + + + {/* Title */} + + {discussion.title} + + + {/* Content Preview */} + + {discussion.content} + + + {/* Tags */} + {discussion.tags.length > 0 && ( + + {discussion.tags.slice(0, 3).map((tag, idx) => ( + + #{tag} + + ))} + {discussion.tags.length > 3 && ( + +{discussion.tags.length - 3} more + )} + + )} + + {/* Stats */} + + + 💬 + {discussion.repliesCount} + + + 👁️ + {discussion.viewsCount} + + + 👍 + + {discussion.upvotes} + + + + + ); + }) + )} + + + {/* Info Note */} + + ℹ️ + + Connect your wallet to create topics, reply to discussions, and upvote helpful content. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + statsGrid: { + flexDirection: 'row', + paddingHorizontal: 16, + gap: 12, + marginBottom: 20, + }, + statCard: { + flex: 1, + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 12, + alignItems: 'center', + boxShadow: '0px 1px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + statIcon: { + fontSize: 20, + marginBottom: 4, + }, + statValue: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + statLabel: { + fontSize: 10, + color: '#999', + }, + onlineIndicator: { + width: 8, + height: 8, + borderRadius: 4, + backgroundColor: KurdistanColors.kesk, + marginBottom: 4, + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + searchContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 20, + paddingHorizontal: 16, + paddingVertical: 12, + borderRadius: 12, + boxShadow: '0px 1px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + searchIcon: { + fontSize: 18, + marginRight: 8, + }, + searchInput: { + flex: 1, + fontSize: 16, + color: '#333', + }, + categoriesSection: { + marginBottom: 20, + }, + sectionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + paddingHorizontal: 16, + marginBottom: 12, + }, + categoriesScroll: { + paddingHorizontal: 16, + }, + categoryChip: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + marginRight: 8, + }, + categoryChipActive: { + backgroundColor: KurdistanColors.kesk, + }, + categoryChipText: { + fontSize: 13, + fontWeight: '600', + color: '#666', + }, + categoryChipTextActive: { + color: '#FFFFFF', + }, + sortTabs: { + flexDirection: 'row', + marginHorizontal: 16, + marginBottom: 20, + gap: 8, + }, + sortTab: { + flex: 1, + paddingVertical: 8, + borderRadius: 12, + backgroundColor: '#E5E5E5', + alignItems: 'center', + }, + sortTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + sortTabText: { + fontSize: 13, + fontWeight: '600', + color: '#666', + }, + sortTabTextActive: { + color: '#FFFFFF', + }, + discussionsList: { + paddingHorizontal: 16, + gap: 12, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + emptyButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 12, + }, + emptyButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + discussionCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + discussionCardPinned: { + borderWidth: 1, + borderColor: '#F59E0B', + }, + discussionHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + }, + discussionAvatar: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + discussionAvatarText: { + fontSize: 16, + fontWeight: 'bold', + color: '#FFFFFF', + }, + discussionHeaderInfo: { + flex: 1, + }, + discussionAuthor: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + discussionTime: { + fontSize: 12, + color: '#999', + }, + badgesRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 8, + }, + pinnedBadge: { + backgroundColor: 'rgba(245, 158, 11, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + pinnedBadgeText: { + fontSize: 10, + fontWeight: '700', + color: '#F59E0B', + }, + lockedBadge: { + backgroundColor: 'rgba(102, 102, 102, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + lockedBadgeText: { + fontSize: 10, + fontWeight: '700', + color: '#666', + }, + categoryBadge: { + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + categoryBadgeText: { + fontSize: 10, + fontWeight: '600', + }, + discussionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + lineHeight: 22, + }, + discussionContent: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 12, + }, + tagsRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 12, + }, + tag: { + backgroundColor: '#F0F0F0', + paddingHorizontal: 8, + paddingVertical: 3, + borderRadius: 12, + }, + tagText: { + fontSize: 11, + color: '#666', + }, + tagsMore: { + fontSize: 11, + color: '#999', + alignSelf: 'center', + }, + discussionStats: { + flexDirection: 'row', + gap: 16, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + discussionStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + discussionStatIcon: { + fontSize: 14, + }, + discussionStatText: { + fontSize: 13, + color: '#666', + fontWeight: '500', + }, + discussionStatUpvotes: { + color: KurdistanColors.kesk, + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, +}); + +export default ForumScreen; diff --git a/mobile/src/screens/governance/ForumScreen.tsx.bak b/mobile/src/screens/governance/ForumScreen.tsx.bak new file mode 100644 index 00000000..fcea2ca9 --- /dev/null +++ b/mobile/src/screens/governance/ForumScreen.tsx.bak @@ -0,0 +1,725 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + TextInput, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Category { + id: string; + name: string; + icon: string; + color: string; +} + +interface Discussion { + id: string; + categoryId: string; + title: string; + content: string; + authorName: string; + authorAddress: string; + isPinned: boolean; + isLocked: boolean; + viewsCount: number; + repliesCount: number; + upvotes: number; + tags: string[]; + createdAt: string; + lastActivityAt: string; +} + +// Forum data stored in Supabase - categories and discussions fetched from database + +const ForumScreen: React.FC = () => { + const { selectedAccount } = usePezkuwi(); + + const [categories, setCategories] = useState([]); + const [discussions, setDiscussions] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedCategory, setSelectedCategory] = useState(null); + const [searchQuery, setSearchQuery] = useState(''); + const [sortBy, setSortBy] = useState<'recent' | 'popular' | 'replies'>('recent'); + + // Stats calculated from real data + const stats = { + totalDiscussions: discussions.length, + totalReplies: discussions.reduce((sum, d) => sum + d.repliesCount, 0), + totalMembers: 0, // Will be fetched from Supabase + onlineNow: 0, // Will be calculated from active sessions + }; + + const fetchForumData = async () => { + try { + setLoading(true); + + // Note: Forum uses Supabase database, not blockchain + // This is a web2 component for community discussions + // TODO: Implement Supabase client and fetch real data + // const { data: categoriesData } = await supabase.from('forum_categories').select('*'); + // const { data: discussionsData } = await supabase.from('forum_discussions').select('*'); + + // For now, set empty arrays - will be populated when Supabase is configured + setCategories([]); + setDiscussions([]); + + } catch (error) { + console.error('Failed to load forum data:', error); + Alert.alert('Error', 'Failed to load forum data from database'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchForumData(); + }, []); + + const handleRefresh = () => { + setRefreshing(true); + fetchForumData(); + }; + + const handleCreateTopic = () => { + if (!selectedAccount) { + Alert.alert('Login Required', 'You need to connect your wallet to create topics'); + return; + } + Alert.alert('Create Topic', 'Create topic modal would open here'); + // TODO: Navigate to CreateTopicScreen + }; + + const handleDiscussionPress = (discussion: Discussion) => { + Alert.alert( + discussion.title, + `${discussion.content.substring(0, 200)}...\n\nAuthor: ${discussion.authorName}\nReplies: ${discussion.repliesCount} | Views: ${discussion.viewsCount} | Upvotes: ${discussion.upvotes}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'View Thread', onPress: () => Alert.alert('Thread View', 'Thread details screen would open here') }, + ] + ); + }; + + const getCategoryById = (categoryId: string): Category | undefined => { + return CATEGORIES.find(c => c.id === categoryId); + }; + + const getTimeAgo = (dateString: string): string => { + const date = new Date(dateString); + const now = new Date(); + const diffMs = now.getTime() - date.getTime(); + const diffMins = Math.floor(diffMs / 60000); + const diffHours = Math.floor(diffMins / 60); + const diffDays = Math.floor(diffHours / 24); + + if (diffMins < 60) return `${diffMins}m ago`; + if (diffHours < 24) return `${diffHours}h ago`; + return `${diffDays}d ago`; + }; + + const filteredDiscussions = discussions + .filter(d => !selectedCategory || d.categoryId === selectedCategory) + .filter(d => !searchQuery || d.title.toLowerCase().includes(searchQuery.toLowerCase()) || d.content.toLowerCase().includes(searchQuery.toLowerCase())) + .sort((a, b) => { + if (a.isPinned && !b.isPinned) return -1; + if (!a.isPinned && b.isPinned) return 1; + + switch (sortBy) { + case 'popular': + return b.viewsCount - a.viewsCount; + case 'replies': + return b.repliesCount - a.repliesCount; + default: + return new Date(b.lastActivityAt).getTime() - new Date(a.lastActivityAt).getTime(); + } + }); + + return ( + + } + > + {/* Header */} + + Community Forum + Discuss, share ideas, and connect + + + {/* Stats Grid */} + + + 📋 + {stats.totalDiscussions} + Topics + + + 💬 + {stats.totalReplies} + Replies + + + 👥 + {stats.totalMembers} + Members + + + + {stats.onlineNow} + Online + + + + {/* Create Topic Button */} + + ➕ Create New Topic + + + {/* Search Bar */} + + 🔍 + + + + {/* Categories Filter */} + + Categories + + setSelectedCategory(null)} + > + + 📋 All Topics + + + {CATEGORIES.map((category) => ( + setSelectedCategory(category.id)} + > + + {category.icon} {category.name} + + + ))} + + + + {/* Sort Tabs */} + + setSortBy('recent')} + > + + ⏰ Recent + + + setSortBy('popular')} + > + + 👁️ Popular + + + setSortBy('replies')} + > + + 💬 Replies + + + + + {/* Discussions List */} + + {filteredDiscussions.length === 0 ? ( + + 💬 + + {searchQuery ? 'No discussions found matching your search' : 'No discussions yet'} + + {!searchQuery && ( + + Create First Topic + + )} + + ) : ( + filteredDiscussions.map((discussion) => { + const category = getCategoryById(discussion.categoryId); + return ( + handleDiscussionPress(discussion)} + > + {/* Discussion Header */} + + + + {discussion.authorName.charAt(0).toUpperCase()} + + + + {discussion.authorName} + {getTimeAgo(discussion.lastActivityAt)} + + + + {/* Badges */} + + {discussion.isPinned && ( + + 📌 PINNED + + )} + {discussion.isLocked && ( + + 🔒 LOCKED + + )} + {category && ( + + + {category.icon} {category.name} + + + )} + + + {/* Title */} + + {discussion.title} + + + {/* Content Preview */} + + {discussion.content} + + + {/* Tags */} + {discussion.tags.length > 0 && ( + + {discussion.tags.slice(0, 3).map((tag, idx) => ( + + #{tag} + + ))} + {discussion.tags.length > 3 && ( + +{discussion.tags.length - 3} more + )} + + )} + + {/* Stats */} + + + 💬 + {discussion.repliesCount} + + + 👁️ + {discussion.viewsCount} + + + 👍 + + {discussion.upvotes} + + + + + ); + }) + )} + + + {/* Info Note */} + + ℹ️ + + Connect your wallet to create topics, reply to discussions, and upvote helpful content. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + statsGrid: { + flexDirection: 'row', + paddingHorizontal: 16, + gap: 12, + marginBottom: 20, + }, + statCard: { + flex: 1, + backgroundColor: '#FFFFFF', + borderRadius: 12, + padding: 12, + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 1 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + statIcon: { + fontSize: 20, + marginBottom: 4, + }, + statValue: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 2, + }, + statLabel: { + fontSize: 10, + color: '#999', + }, + onlineIndicator: { + width: 8, + height: 8, + borderRadius: 4, + backgroundColor: KurdistanColors.kesk, + marginBottom: 4, + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + searchContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 20, + paddingHorizontal: 16, + paddingVertical: 12, + borderRadius: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 1 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + searchIcon: { + fontSize: 18, + marginRight: 8, + }, + searchInput: { + flex: 1, + fontSize: 16, + color: '#333', + }, + categoriesSection: { + marginBottom: 20, + }, + sectionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + paddingHorizontal: 16, + marginBottom: 12, + }, + categoriesScroll: { + paddingHorizontal: 16, + }, + categoryChip: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + marginRight: 8, + }, + categoryChipActive: { + backgroundColor: KurdistanColors.kesk, + }, + categoryChipText: { + fontSize: 13, + fontWeight: '600', + color: '#666', + }, + categoryChipTextActive: { + color: '#FFFFFF', + }, + sortTabs: { + flexDirection: 'row', + marginHorizontal: 16, + marginBottom: 20, + gap: 8, + }, + sortTab: { + flex: 1, + paddingVertical: 8, + borderRadius: 12, + backgroundColor: '#E5E5E5', + alignItems: 'center', + }, + sortTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + sortTabText: { + fontSize: 13, + fontWeight: '600', + color: '#666', + }, + sortTabTextActive: { + color: '#FFFFFF', + }, + discussionsList: { + paddingHorizontal: 16, + gap: 12, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + emptyButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 12, + }, + emptyButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + discussionCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + discussionCardPinned: { + borderWidth: 1, + borderColor: '#F59E0B', + }, + discussionHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + }, + discussionAvatar: { + width: 40, + height: 40, + borderRadius: 20, + backgroundColor: KurdistanColors.kesk, + justifyContent: 'center', + alignItems: 'center', + marginRight: 12, + }, + discussionAvatarText: { + fontSize: 16, + fontWeight: 'bold', + color: '#FFFFFF', + }, + discussionHeaderInfo: { + flex: 1, + }, + discussionAuthor: { + fontSize: 14, + fontWeight: '600', + color: '#333', + }, + discussionTime: { + fontSize: 12, + color: '#999', + }, + badgesRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 8, + }, + pinnedBadge: { + backgroundColor: 'rgba(245, 158, 11, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + pinnedBadgeText: { + fontSize: 10, + fontWeight: '700', + color: '#F59E0B', + }, + lockedBadge: { + backgroundColor: 'rgba(102, 102, 102, 0.1)', + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + lockedBadgeText: { + fontSize: 10, + fontWeight: '700', + color: '#666', + }, + categoryBadge: { + paddingHorizontal: 8, + paddingVertical: 2, + borderRadius: 8, + }, + categoryBadgeText: { + fontSize: 10, + fontWeight: '600', + }, + discussionTitle: { + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + lineHeight: 22, + }, + discussionContent: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 12, + }, + tagsRow: { + flexDirection: 'row', + flexWrap: 'wrap', + gap: 6, + marginBottom: 12, + }, + tag: { + backgroundColor: '#F0F0F0', + paddingHorizontal: 8, + paddingVertical: 3, + borderRadius: 12, + }, + tagText: { + fontSize: 11, + color: '#666', + }, + tagsMore: { + fontSize: 11, + color: '#999', + alignSelf: 'center', + }, + discussionStats: { + flexDirection: 'row', + gap: 16, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + discussionStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + discussionStatIcon: { + fontSize: 14, + }, + discussionStatText: { + fontSize: 13, + color: '#666', + fontWeight: '500', + }, + discussionStatUpvotes: { + color: KurdistanColors.kesk, + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#E0F2FE', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#0C4A6E', + lineHeight: 18, + }, +}); + +export default ForumScreen; diff --git a/mobile/src/screens/governance/ProposalsScreen.tsx b/mobile/src/screens/governance/ProposalsScreen.tsx new file mode 100644 index 00000000..fc039aff --- /dev/null +++ b/mobile/src/screens/governance/ProposalsScreen.tsx @@ -0,0 +1,575 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Proposal { + id: string; + title: string; + description: string; + proposer: string; + status: 'active' | 'passed' | 'rejected' | 'expired'; + votesFor: number; + votesAgainst: number; + endBlock: number; + deposit: string; +} + +// Mock data removed - using real blockchain queries from democracy pallet + +const ProposalsScreen: React.FC = () => { + const { api, isApiReady, selectedAccount, error: connectionError } = usePezkuwi(); + + const [proposals, setProposals] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedFilter, setSelectedFilter] = useState<'all' | 'active' | 'passed' | 'rejected'>('all'); + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchProposals = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch democracy referenda + if (api.query.democracy?.referendumInfoOf) { + const referendaData = await api.query.democracy.referendumInfoOf.entries(); + const parsedProposals: Proposal[] = referendaData.map(([key, value]: any) => { + const index = key.args[0].toNumber(); + const info = value.unwrap(); + + if (info.isOngoing) { + const ongoing = info.asOngoing; + const ayeVotes = ongoing.tally?.ayes ? BigInt(ongoing.tally.ayes.toString()) : BigInt(0); + const nayVotes = ongoing.tally?.nays ? BigInt(ongoing.tally.nays.toString()) : BigInt(0); + + return { + id: `${index}`, + title: `Referendum #${index}`, + description: `Proposal hash: ${ongoing.proposalHash?.toString().slice(0, 20)}...`, + proposer: 'Unknown', + status: 'active' as const, + votesFor: Number(ayeVotes / BigInt(10 ** 12)), + votesAgainst: Number(nayVotes / BigInt(10 ** 12)), + endBlock: ongoing.end?.toNumber() || 0, + deposit: '0', + }; + } + + return null; + }).filter(Boolean) as Proposal[]; + + setProposals(parsedProposals); + } + } catch (error) { + console.error('Failed to load proposals:', error); + Alert.alert('Error', 'Failed to load proposals from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchProposals(); + const interval = setInterval(fetchProposals, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchProposals(); + }; + + const handleProposalPress = (proposal: Proposal) => { + Alert.alert( + proposal.title, + `${proposal.description}\n\nProposer: ${proposal.proposer.slice(0, 10)}...\nDeposit: ${proposal.deposit}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'Vote', onPress: () => handleVote(proposal) }, + ] + ); + }; + + const handleVote = (proposal: Proposal) => { + Alert.alert( + 'Cast Your Vote', + `Vote on: ${proposal.title}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'Vote Yes', onPress: () => submitVote(proposal, true) }, + { text: 'Vote No', onPress: () => submitVote(proposal, false) }, + ] + ); + }; + + const submitVote = async (proposal: Proposal, voteYes: boolean) => { + Alert.alert('Success', `Voted ${voteYes ? 'YES' : 'NO'} on "${proposal.title}"`); + // TODO: Submit vote to chain + }; + + const handleCreateProposal = () => { + Alert.alert('Create Proposal', 'Create proposal form would open here'); + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'active': + return KurdistanColors.kesk; + case 'passed': + return '#3B82F6'; + case 'rejected': + return '#EF4444'; + case 'expired': + return '#999'; + default: + return '#666'; + } + }; + + const calculateVotePercentage = (proposal: Proposal) => { + const total = proposal.votesFor + proposal.votesAgainst; + if (total === 0) return { forPercentage: 0, againstPercentage: 0 }; + return { + forPercentage: Math.round((proposal.votesFor / total) * 100), + againstPercentage: Math.round((proposal.votesAgainst / total) * 100), + }; + }; + + const filteredProposals = selectedFilter === 'all' + ? proposals + : proposals.filter(p => p.status === selectedFilter); + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && proposals.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Proposals + Vote on governance proposals + + + {/* Create Proposal Button */} + + ➕ Create Proposal + + + {/* Filter Tabs */} + + setSelectedFilter('all')} + > + + All + + + setSelectedFilter('active')} + > + + Active + + + setSelectedFilter('passed')} + > + + Passed + + + setSelectedFilter('rejected')} + > + + Rejected + + + + + {/* Proposals List */} + + {filteredProposals.length === 0 ? ( + + 📋 + No proposals found + + ) : ( + filteredProposals.map((proposal) => { + const { forPercentage, againstPercentage } = calculateVotePercentage(proposal); + return ( + handleProposalPress(proposal)} + > + {/* Proposal Header */} + + {proposal.title} + + + {proposal.status.toUpperCase()} + + + + + {/* Description */} + + {proposal.description} + + + {/* Proposer */} + + By: {proposal.proposer.slice(0, 10)}...{proposal.proposer.slice(-6)} + + + {/* Vote Progress Bar */} + + + + + + + + {proposal.votesFor.toLocaleString()} ({forPercentage}%) + + + + {proposal.votesAgainst.toLocaleString()} ({againstPercentage}%) + + + + + {/* Metadata */} + + 📦 Deposit: {proposal.deposit} + ⏰ Block: {proposal.endBlock.toLocaleString()} + + + {/* Vote Button */} + {proposal.status === 'active' && ( + handleVote(proposal)} + > + Vote Now + + )} + + ); + }) + )} + + + {/* Info Note */} + + ℹ️ + + Creating a proposal requires a deposit that will be returned if the proposal passes. Only citizens can vote. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + filterTabs: { + flexDirection: 'row', + paddingHorizontal: 16, + marginBottom: 20, + gap: 8, + }, + filterTab: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + }, + filterTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + filterTabText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + filterTabTextActive: { + color: '#FFFFFF', + }, + proposalsList: { + paddingHorizontal: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + proposalCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + proposalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + proposalTitle: { + flex: 1, + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginRight: 8, + }, + statusBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + }, + proposalDescription: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 8, + }, + proposer: { + fontSize: 12, + color: '#999', + fontFamily: 'monospace', + marginBottom: 16, + }, + voteProgressContainer: { + marginBottom: 12, + }, + voteProgressBar: { + height: 8, + backgroundColor: '#FEE2E2', + borderRadius: 4, + overflow: 'hidden', + marginBottom: 8, + }, + voteProgressFor: { + height: '100%', + backgroundColor: KurdistanColors.kesk, + }, + voteStats: { + flexDirection: 'row', + justifyContent: 'space-between', + }, + voteStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + voteStatIcon: { + fontSize: 14, + }, + voteStatText: { + fontSize: 13, + color: '#666', + fontWeight: '500', + }, + proposalMetadata: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + metadataItem: { + fontSize: 12, + color: '#999', + }, + voteButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + }, + voteButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#FEF3C7', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#92400E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default ProposalsScreen; diff --git a/mobile/src/screens/governance/ProposalsScreen.tsx.bak b/mobile/src/screens/governance/ProposalsScreen.tsx.bak new file mode 100644 index 00000000..8ccb9d97 --- /dev/null +++ b/mobile/src/screens/governance/ProposalsScreen.tsx.bak @@ -0,0 +1,578 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface Proposal { + id: string; + title: string; + description: string; + proposer: string; + status: 'active' | 'passed' | 'rejected' | 'expired'; + votesFor: number; + votesAgainst: number; + endBlock: number; + deposit: string; +} + +// Mock data removed - using real blockchain queries from democracy pallet + +const ProposalsScreen: React.FC = () => { + const { api, isApiReady, selectedAccount, error: connectionError } = usePezkuwi(); + + const [proposals, setProposals] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + const [selectedFilter, setSelectedFilter] = useState<'all' | 'active' | 'passed' | 'rejected'>('all'); + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchProposals = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch democracy referenda + if (api.query.democracy?.referendumInfoOf) { + const referendaData = await api.query.democracy.referendumInfoOf.entries(); + const parsedProposals: Proposal[] = referendaData.map(([key, value]: any) => { + const index = key.args[0].toNumber(); + const info = value.unwrap(); + + if (info.isOngoing) { + const ongoing = info.asOngoing; + const ayeVotes = ongoing.tally?.ayes ? BigInt(ongoing.tally.ayes.toString()) : BigInt(0); + const nayVotes = ongoing.tally?.nays ? BigInt(ongoing.tally.nays.toString()) : BigInt(0); + + return { + id: `${index}`, + title: `Referendum #${index}`, + description: `Proposal hash: ${ongoing.proposalHash?.toString().slice(0, 20)}...`, + proposer: 'Unknown', + status: 'active' as const, + votesFor: Number(ayeVotes / BigInt(10 ** 12)), + votesAgainst: Number(nayVotes / BigInt(10 ** 12)), + endBlock: ongoing.end?.toNumber() || 0, + deposit: '0', + }; + } + + return null; + }).filter(Boolean) as Proposal[]; + + setProposals(parsedProposals); + } + } catch (error) { + console.error('Failed to load proposals:', error); + Alert.alert('Error', 'Failed to load proposals from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchProposals(); + const interval = setInterval(fetchProposals, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchProposals(); + }; + + const handleProposalPress = (proposal: Proposal) => { + Alert.alert( + proposal.title, + `${proposal.description}\n\nProposer: ${proposal.proposer.slice(0, 10)}...\nDeposit: ${proposal.deposit}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'Vote', onPress: () => handleVote(proposal) }, + ] + ); + }; + + const handleVote = (proposal: Proposal) => { + Alert.alert( + 'Cast Your Vote', + `Vote on: ${proposal.title}`, + [ + { text: 'Cancel', style: 'cancel' }, + { text: 'Vote Yes', onPress: () => submitVote(proposal, true) }, + { text: 'Vote No', onPress: () => submitVote(proposal, false) }, + ] + ); + }; + + const submitVote = async (proposal: Proposal, voteYes: boolean) => { + Alert.alert('Success', `Voted ${voteYes ? 'YES' : 'NO'} on "${proposal.title}"`); + // TODO: Submit vote to chain + }; + + const handleCreateProposal = () => { + Alert.alert('Create Proposal', 'Create proposal form would open here'); + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'active': + return KurdistanColors.kesk; + case 'passed': + return '#3B82F6'; + case 'rejected': + return '#EF4444'; + case 'expired': + return '#999'; + default: + return '#666'; + } + }; + + const calculateVotePercentage = (proposal: Proposal) => { + const total = proposal.votesFor + proposal.votesAgainst; + if (total === 0) return { forPercentage: 0, againstPercentage: 0 }; + return { + forPercentage: Math.round((proposal.votesFor / total) * 100), + againstPercentage: Math.round((proposal.votesAgainst / total) * 100), + }; + }; + + const filteredProposals = selectedFilter === 'all' + ? proposals + : proposals.filter(p => p.status === selectedFilter); + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && proposals.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Proposals + Vote on governance proposals + + + {/* Create Proposal Button */} + + ➕ Create Proposal + + + {/* Filter Tabs */} + + setSelectedFilter('all')} + > + + All + + + setSelectedFilter('active')} + > + + Active + + + setSelectedFilter('passed')} + > + + Passed + + + setSelectedFilter('rejected')} + > + + Rejected + + + + + {/* Proposals List */} + + {filteredProposals.length === 0 ? ( + + 📋 + No proposals found + + ) : ( + filteredProposals.map((proposal) => { + const { forPercentage, againstPercentage } = calculateVotePercentage(proposal); + return ( + handleProposalPress(proposal)} + > + {/* Proposal Header */} + + {proposal.title} + + + {proposal.status.toUpperCase()} + + + + + {/* Description */} + + {proposal.description} + + + {/* Proposer */} + + By: {proposal.proposer.slice(0, 10)}...{proposal.proposer.slice(-6)} + + + {/* Vote Progress Bar */} + + + + + + + + {proposal.votesFor.toLocaleString()} ({forPercentage}%) + + + + {proposal.votesAgainst.toLocaleString()} ({againstPercentage}%) + + + + + {/* Metadata */} + + 📦 Deposit: {proposal.deposit} + ⏰ Block: {proposal.endBlock.toLocaleString()} + + + {/* Vote Button */} + {proposal.status === 'active' && ( + handleVote(proposal)} + > + Vote Now + + )} + + ); + }) + )} + + + {/* Info Note */} + + ℹ️ + + Creating a proposal requires a deposit that will be returned if the proposal passes. Only citizens can vote. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 20, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + filterTabs: { + flexDirection: 'row', + paddingHorizontal: 16, + marginBottom: 20, + gap: 8, + }, + filterTab: { + paddingHorizontal: 16, + paddingVertical: 8, + borderRadius: 20, + backgroundColor: '#E5E5E5', + }, + filterTabActive: { + backgroundColor: KurdistanColors.kesk, + }, + filterTabText: { + fontSize: 14, + fontWeight: '600', + color: '#666', + }, + filterTabTextActive: { + color: '#FFFFFF', + }, + proposalsList: { + paddingHorizontal: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + proposalCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 16, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + proposalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + proposalTitle: { + flex: 1, + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginRight: 8, + }, + statusBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + }, + proposalDescription: { + fontSize: 14, + color: '#666', + lineHeight: 20, + marginBottom: 8, + }, + proposer: { + fontSize: 12, + color: '#999', + fontFamily: 'monospace', + marginBottom: 16, + }, + voteProgressContainer: { + marginBottom: 12, + }, + voteProgressBar: { + height: 8, + backgroundColor: '#FEE2E2', + borderRadius: 4, + overflow: 'hidden', + marginBottom: 8, + }, + voteProgressFor: { + height: '100%', + backgroundColor: KurdistanColors.kesk, + }, + voteStats: { + flexDirection: 'row', + justifyContent: 'space-between', + }, + voteStat: { + flexDirection: 'row', + alignItems: 'center', + gap: 4, + }, + voteStatIcon: { + fontSize: 14, + }, + voteStatText: { + fontSize: 13, + color: '#666', + fontWeight: '500', + }, + proposalMetadata: { + flexDirection: 'row', + justifyContent: 'space-between', + marginBottom: 12, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + metadataItem: { + fontSize: 12, + color: '#999', + }, + voteButton: { + backgroundColor: KurdistanColors.kesk, + paddingVertical: 10, + borderRadius: 12, + alignItems: 'center', + }, + voteButtonText: { + fontSize: 14, + fontWeight: '600', + color: '#FFFFFF', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#FEF3C7', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#92400E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default ProposalsScreen; diff --git a/mobile/src/screens/governance/TreasuryScreen.tsx b/mobile/src/screens/governance/TreasuryScreen.tsx new file mode 100644 index 00000000..5880a069 --- /dev/null +++ b/mobile/src/screens/governance/TreasuryScreen.tsx @@ -0,0 +1,467 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface TreasuryProposal { + id: string; + title: string; + beneficiary: string; + amount: string; + status: 'pending' | 'approved' | 'rejected'; + proposer: string; + bond: string; +} + +// Mock data removed - using real blockchain queries + +const TreasuryScreen: React.FC = () => { + const { api, isApiReady, error: connectionError } = usePezkuwi(); + + const [treasuryBalance, setTreasuryBalance] = useState('0'); + const [proposals, setProposals] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchTreasuryData = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch treasury balance + if (api.query.treasury?.treasury) { + const treasuryAccount = await api.query.treasury.treasury(); + if (treasuryAccount) { + setTreasuryBalance(formatBalance(treasuryAccount.toString())); + } + } + + // Fetch treasury proposals + if (api.query.treasury?.proposals) { + const proposalsData = await api.query.treasury.proposals.entries(); + const parsedProposals: TreasuryProposal[] = proposalsData.map(([key, value]: any) => { + const proposalIndex = key.args[0].toNumber(); + const proposal = value.unwrap(); + + return { + id: `${proposalIndex}`, + title: `Treasury Proposal #${proposalIndex}`, + beneficiary: proposal.beneficiary.toString(), + amount: formatBalance(proposal.value.toString()), + status: 'pending' as const, + proposer: proposal.proposer.toString(), + bond: formatBalance(proposal.bond.toString()), + }; + }); + setProposals(parsedProposals); + } + } catch (error) { + console.error('Failed to load treasury data:', error); + Alert.alert('Error', 'Failed to load treasury data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchTreasuryData(); + const interval = setInterval(fetchTreasuryData, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchTreasuryData(); + }; + + const handleProposalPress = (proposal: TreasuryProposal) => { + Alert.alert( + proposal.title, + `Amount: ${proposal.amount}\nBeneficiary: ${proposal.beneficiary.slice(0, 10)}...\nBond: ${proposal.bond}\nStatus: ${proposal.status}`, + [ + { text: 'OK' }, + ] + ); + }; + + const handleCreateProposal = () => { + Alert.alert('Create Spending Proposal', 'Spending proposal form would open here'); + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'pending': + return '#F59E0B'; + case 'approved': + return KurdistanColors.kesk; + case 'rejected': + return '#EF4444'; + default: + return '#666'; + } + }; + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && proposals.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Treasury + Community fund management + + + {/* Treasury Balance Card */} + + 💰 Total Treasury Balance + {treasuryBalance} HEZ + + Funds allocated through democratic governance + + + + {/* Create Proposal Button */} + + ➕ Propose Spending + + + {/* Spending Proposals */} + + Spending Proposals + + {proposals.length === 0 ? ( + + 📋 + No spending proposals + + ) : ( + proposals.map((proposal) => ( + handleProposalPress(proposal)} + > + {/* Proposal Header */} + + {proposal.title} + + + {proposal.status.toUpperCase()} + + + + + {/* Amount */} + + Requested Amount: + {proposal.amount} + + + {/* Beneficiary */} + + Beneficiary: {proposal.beneficiary.slice(0, 10)}...{proposal.beneficiary.slice(-6)} + + + {/* Proposer & Bond */} + + + 👤 {proposal.proposer.slice(0, 8)}... + + + 📦 Bond: {proposal.bond} + + + + )) + )} + + + {/* Info Note */} + + ℹ️ + + Spending proposals require council approval. A bond is required when creating a proposal and will be returned if approved. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + balanceCard: { + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 20, + padding: 24, + borderRadius: 16, + alignItems: 'center', + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + balanceLabel: { + fontSize: 14, + color: '#666', + marginBottom: 8, + }, + balanceValue: { + fontSize: 32, + fontWeight: 'bold', + color: KurdistanColors.kesk, + marginBottom: 8, + }, + balanceSubtext: { + fontSize: 12, + color: '#999', + textAlign: 'center', + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 24, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + section: { + paddingHorizontal: 16, + }, + sectionTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + proposalCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.05)', + elevation: 2, + }, + proposalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + proposalTitle: { + flex: 1, + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginRight: 8, + }, + statusBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + }, + amountRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 8, + paddingVertical: 8, + paddingHorizontal: 12, + backgroundColor: '#F8F9FA', + borderRadius: 8, + }, + amountLabel: { + fontSize: 14, + color: '#666', + }, + amountValue: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + beneficiary: { + fontSize: 12, + color: '#666', + fontFamily: 'monospace', + marginBottom: 12, + }, + metadataRow: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + metadataItem: { + fontSize: 12, + color: '#999', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#FEF3C7', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#92400E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default TreasuryScreen; diff --git a/mobile/src/screens/governance/TreasuryScreen.tsx.bak b/mobile/src/screens/governance/TreasuryScreen.tsx.bak new file mode 100644 index 00000000..57d7292d --- /dev/null +++ b/mobile/src/screens/governance/TreasuryScreen.tsx.bak @@ -0,0 +1,473 @@ +import React, { useState, useEffect } from 'react'; +import { + View, + Text, + StyleSheet, + SafeAreaView, + ScrollView, + TouchableOpacity, + RefreshControl, + Alert, + ActivityIndicator, +} from 'react-native'; +import { KurdistanColors } from '../../theme/colors'; +import { usePezkuwi } from '../../contexts/PezkuwiContext'; + +interface TreasuryProposal { + id: string; + title: string; + beneficiary: string; + amount: string; + status: 'pending' | 'approved' | 'rejected'; + proposer: string; + bond: string; +} + +// Mock data removed - using real blockchain queries + +const TreasuryScreen: React.FC = () => { + const { api, isApiReady, error: connectionError } = usePezkuwi(); + + const [treasuryBalance, setTreasuryBalance] = useState('0'); + const [proposals, setProposals] = useState([]); + const [loading, setLoading] = useState(false); + const [refreshing, setRefreshing] = useState(false); + + const formatBalance = (balance: string, decimals: number = 12): string => { + const value = BigInt(balance); + const divisor = BigInt(10 ** decimals); + const wholePart = value / divisor; + return wholePart.toLocaleString(); + }; + + const fetchTreasuryData = async () => { + if (!api || !isApiReady) return; + + try { + setLoading(true); + + // Fetch treasury balance + if (api.query.treasury?.treasury) { + const treasuryAccount = await api.query.treasury.treasury(); + if (treasuryAccount) { + setTreasuryBalance(formatBalance(treasuryAccount.toString())); + } + } + + // Fetch treasury proposals + if (api.query.treasury?.proposals) { + const proposalsData = await api.query.treasury.proposals.entries(); + const parsedProposals: TreasuryProposal[] = proposalsData.map(([key, value]: any) => { + const proposalIndex = key.args[0].toNumber(); + const proposal = value.unwrap(); + + return { + id: `${proposalIndex}`, + title: `Treasury Proposal #${proposalIndex}`, + beneficiary: proposal.beneficiary.toString(), + amount: formatBalance(proposal.value.toString()), + status: 'pending' as const, + proposer: proposal.proposer.toString(), + bond: formatBalance(proposal.bond.toString()), + }; + }); + setProposals(parsedProposals); + } + } catch (error) { + console.error('Failed to load treasury data:', error); + Alert.alert('Error', 'Failed to load treasury data from blockchain'); + } finally { + setLoading(false); + setRefreshing(false); + } + }; + + useEffect(() => { + fetchTreasuryData(); + const interval = setInterval(fetchTreasuryData, 30000); + return () => clearInterval(interval); + }, [api, isApiReady]); + + const handleRefresh = () => { + setRefreshing(true); + fetchTreasuryData(); + }; + + const handleProposalPress = (proposal: TreasuryProposal) => { + Alert.alert( + proposal.title, + `Amount: ${proposal.amount}\nBeneficiary: ${proposal.beneficiary.slice(0, 10)}...\nBond: ${proposal.bond}\nStatus: ${proposal.status}`, + [ + { text: 'OK' }, + ] + ); + }; + + const handleCreateProposal = () => { + Alert.alert('Create Spending Proposal', 'Spending proposal form would open here'); + }; + + const getStatusColor = (status: string) => { + switch (status) { + case 'pending': + return '#F59E0B'; + case 'approved': + return KurdistanColors.kesk; + case 'rejected': + return '#EF4444'; + default: + return '#666'; + } + }; + + // Show error state + if (connectionError && !api) { + return ( + + + ⚠️ + Connection Failed + {connectionError} + + • Check your internet connection{'\n'} + • Connection will retry automatically + + + Retry Now + + + + ); + } + + // Show loading state + if (!isApiReady || (loading && proposals.length === 0)) { + return ( + + + + Connecting to blockchain... + Please wait + + + ); + } + + return ( + + } + > + {/* Header */} + + Treasury + Community fund management + + + {/* Treasury Balance Card */} + + 💰 Total Treasury Balance + {treasuryBalance} HEZ + + Funds allocated through democratic governance + + + + {/* Create Proposal Button */} + + ➕ Propose Spending + + + {/* Spending Proposals */} + + Spending Proposals + + {proposals.length === 0 ? ( + + 📋 + No spending proposals + + ) : ( + proposals.map((proposal) => ( + handleProposalPress(proposal)} + > + {/* Proposal Header */} + + {proposal.title} + + + {proposal.status.toUpperCase()} + + + + + {/* Amount */} + + Requested Amount: + {proposal.amount} + + + {/* Beneficiary */} + + Beneficiary: {proposal.beneficiary.slice(0, 10)}...{proposal.beneficiary.slice(-6)} + + + {/* Proposer & Bond */} + + + 👤 {proposal.proposer.slice(0, 8)}... + + + 📦 Bond: {proposal.bond} + + + + )) + )} + + + {/* Info Note */} + + ℹ️ + + Spending proposals require council approval. A bond is required when creating a proposal and will be returned if approved. + + + + + ); +}; + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: '#F8F9FA', + }, + scrollContent: { + flex: 1, + }, + header: { + padding: 20, + paddingBottom: 16, + }, + headerTitle: { + fontSize: 28, + fontWeight: 'bold', + color: '#333', + marginBottom: 4, + }, + headerSubtitle: { + fontSize: 14, + color: '#666', + }, + balanceCard: { + backgroundColor: '#FFFFFF', + marginHorizontal: 16, + marginBottom: 20, + padding: 24, + borderRadius: 16, + alignItems: 'center', + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + balanceLabel: { + fontSize: 14, + color: '#666', + marginBottom: 8, + }, + balanceValue: { + fontSize: 32, + fontWeight: 'bold', + color: KurdistanColors.kesk, + marginBottom: 8, + }, + balanceSubtext: { + fontSize: 12, + color: '#999', + textAlign: 'center', + }, + createButton: { + backgroundColor: KurdistanColors.kesk, + marginHorizontal: 16, + marginBottom: 24, + paddingVertical: 14, + borderRadius: 12, + alignItems: 'center', + }, + createButtonText: { + fontSize: 16, + fontWeight: '600', + color: '#FFFFFF', + }, + section: { + paddingHorizontal: 16, + }, + sectionTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 16, + }, + emptyContainer: { + padding: 40, + alignItems: 'center', + }, + emptyIcon: { + fontSize: 64, + marginBottom: 16, + }, + emptyText: { + fontSize: 16, + color: '#666', + textAlign: 'center', + }, + proposalCard: { + backgroundColor: '#FFFFFF', + borderRadius: 16, + padding: 16, + marginBottom: 12, + shadowColor: '#000', + shadowOffset: { width: 0, height: 2 }, + shadowOpacity: 0.05, + shadowRadius: 4, + elevation: 2, + }, + proposalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'flex-start', + marginBottom: 12, + }, + proposalTitle: { + flex: 1, + fontSize: 16, + fontWeight: 'bold', + color: '#333', + marginRight: 8, + }, + statusBadge: { + paddingHorizontal: 10, + paddingVertical: 4, + borderRadius: 12, + }, + statusBadgeText: { + fontSize: 10, + fontWeight: '700', + }, + amountRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 8, + paddingVertical: 8, + paddingHorizontal: 12, + backgroundColor: '#F8F9FA', + borderRadius: 8, + }, + amountLabel: { + fontSize: 14, + color: '#666', + }, + amountValue: { + fontSize: 16, + fontWeight: 'bold', + color: KurdistanColors.kesk, + }, + beneficiary: { + fontSize: 12, + color: '#666', + fontFamily: 'monospace', + marginBottom: 12, + }, + metadataRow: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: '#F0F0F0', + }, + metadataItem: { + fontSize: 12, + color: '#999', + }, + infoNote: { + flexDirection: 'row', + backgroundColor: '#FEF3C7', + marginHorizontal: 16, + marginTop: 16, + marginBottom: 24, + padding: 16, + borderRadius: 12, + gap: 12, + }, + infoNoteIcon: { + fontSize: 20, + }, + infoNoteText: { + flex: 1, + fontSize: 12, + color: '#92400E', + lineHeight: 18, + }, + // Error & Loading States + centerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + padding: 32, + }, + errorIcon: { + fontSize: 64, + marginBottom: 16, + }, + errorTitle: { + fontSize: 20, + fontWeight: 'bold', + color: '#333', + marginBottom: 8, + }, + errorMessage: { + fontSize: 14, + color: '#666', + textAlign: 'center', + marginBottom: 16, + }, + errorHint: { + fontSize: 12, + color: '#999', + textAlign: 'center', + lineHeight: 20, + marginBottom: 24, + }, + retryButton: { + backgroundColor: KurdistanColors.kesk, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 8, + }, + retryButtonText: { + color: '#FFFFFF', + fontSize: 14, + fontWeight: '600', + }, + loadingText: { + fontSize: 16, + color: '#333', + marginTop: 16, + }, + loadingHint: { + fontSize: 12, + color: '#999', + marginTop: 8, + }, +}); + +export default TreasuryScreen; diff --git a/mobile/src/screens/governance/__tests__/ElectionsScreen.test.tsx b/mobile/src/screens/governance/__tests__/ElectionsScreen.test.tsx new file mode 100644 index 00000000..7b488601 --- /dev/null +++ b/mobile/src/screens/governance/__tests__/ElectionsScreen.test.tsx @@ -0,0 +1,344 @@ +/** + * ElectionsScreen Test Suite + * + * Tests for Elections feature with real dynamicCommissionCollective integration + */ + +import React from 'react'; +import { render, waitFor, fireEvent, act } from '@testing-library/react-native'; +import { Alert } from 'react-native'; +import ElectionsScreen from '../ElectionsScreen'; +import { usePezkuwi } from '../../../contexts/PezkuwiContext'; + +jest.mock('../../../contexts/PezkuwiContext'); + +// Mock Alert.alert +jest.spyOn(Alert, 'alert').mockImplementation(() => {}); + +describe('ElectionsScreen', () => { + const mockApi = { + query: { + dynamicCommissionCollective: { + proposals: jest.fn(), + voting: jest.fn(), + }, + }, + }; + + const mockUsePezkuwi = { + api: mockApi, + isApiReady: true, + selectedAccount: { + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + meta: { name: 'Test Account' }, + }, + }; + + beforeEach(() => { + jest.clearAllMocks(); + (usePezkuwi as jest.Mock).mockReturnValue(mockUsePezkuwi); + }); + + describe('Data Fetching', () => { + it('should fetch commission proposals on mount', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + '0xabcdef1234567890', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + + render(); + + await waitFor(() => { + expect(mockApi.query.dynamicCommissionCollective.proposals).toHaveBeenCalled(); + }); + }); + + it('should handle fetch errors', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockRejectedValue( + new Error('Network error') + ); + + render(); + + await waitFor(() => { + expect(Alert.alert).toHaveBeenCalledWith( + 'Error', + 'Failed to load elections data from blockchain' + ); + }); + }); + + it('should fetch voting data for each proposal', async () => { + const proposalHash = '0x1234567890abcdef'; + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([proposalHash]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + + render(); + + await waitFor(() => { + expect(mockApi.query.dynamicCommissionCollective.voting).toHaveBeenCalledWith( + proposalHash + ); + }); + }); + + it('should skip proposals with no voting data', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: false, + }); + + const { queryByText } = render(); + + await waitFor(() => { + expect(queryByText(/Parliamentary Election/)).toBeNull(); + }); + }); + }); + + describe('UI Rendering', () => { + beforeEach(() => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + }); + + it('should display election card', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/Parliamentary Election/)).toBeTruthy(); + }); + }); + + it('should display candidate count', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText('3')).toBeTruthy(); // threshold = candidates + }); + }); + + it('should display total votes', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText('7')).toBeTruthy(); // ayes(5) + nays(2) + }); + }); + + it('should display end block', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/2,000/)).toBeTruthy(); + }); + }); + + it('should display empty state when no elections', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText('No elections available')).toBeTruthy(); + }); + }); + }); + + describe('Election Type Filtering', () => { + beforeEach(() => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + }); + + it('should show all elections by default', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/Parliamentary Election/)).toBeTruthy(); + }); + }); + + it('should filter by parliamentary type', async () => { + const { getByText } = render(); + + await waitFor(() => { + const parliamentaryTab = getByText(/🏛️ Parliamentary/); + fireEvent.press(parliamentaryTab); + }); + + await waitFor(() => { + expect(getByText(/Parliamentary Election/)).toBeTruthy(); + }); + }); + }); + + describe('User Interactions', () => { + beforeEach(() => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + }); + + it('should handle election card press', async () => { + const { getByText } = render(); + + await waitFor(async () => { + const electionCard = getByText(/Parliamentary Election/); + fireEvent.press(electionCard); + }); + + expect(Alert.alert).toHaveBeenCalled(); + }); + + it('should handle register button press', async () => { + const { getByText } = render(); + + const registerButton = getByText(/Register as Candidate/); + fireEvent.press(registerButton); + + expect(Alert.alert).toHaveBeenCalledWith( + 'Register as Candidate', + 'Candidate registration form would open here' + ); + }); + + it('should have pull-to-refresh capability', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([]); + + const { UNSAFE_root } = render(); + + // Wait for initial load + await waitFor(() => { + expect(mockApi.query.dynamicCommissionCollective.proposals).toHaveBeenCalled(); + }); + + // Verify RefreshControl is present (pull-to-refresh enabled) + const refreshControls = UNSAFE_root.findAllByType('RCTRefreshControl'); + expect(refreshControls.length).toBeGreaterThan(0); + + // Note: Refresh behavior is fully tested via auto-refresh test + // which uses the same fetchElections() function + }); + }); + + describe('Election Status', () => { + it('should show active status badge', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText('ACTIVE')).toBeTruthy(); + }); + }); + + it('should show vote button for active elections', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([ + '0x1234567890abcdef', + ]); + + mockApi.query.dynamicCommissionCollective.voting.mockResolvedValue({ + isSome: true, + unwrap: () => ({ + end: { toNumber: () => 2000 }, + threshold: { toNumber: () => 3 }, + ayes: { length: 5 }, + nays: { length: 2 }, + }), + }); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText('View Candidates & Vote')).toBeTruthy(); + }); + }); + }); + + describe('Auto-refresh', () => { + jest.useFakeTimers(); + + it('should auto-refresh every 30 seconds', async () => { + mockApi.query.dynamicCommissionCollective.proposals.mockResolvedValue([]); + + render(); + + await waitFor(() => { + expect(mockApi.query.dynamicCommissionCollective.proposals).toHaveBeenCalledTimes(1); + }); + + jest.advanceTimersByTime(30000); + + await waitFor(() => { + expect(mockApi.query.dynamicCommissionCollective.proposals).toHaveBeenCalledTimes(2); + }); + }); + }); +}); diff --git a/mobile/src/screens/governance/__tests__/ProposalsScreen.test.tsx b/mobile/src/screens/governance/__tests__/ProposalsScreen.test.tsx new file mode 100644 index 00000000..2c4ca310 --- /dev/null +++ b/mobile/src/screens/governance/__tests__/ProposalsScreen.test.tsx @@ -0,0 +1,379 @@ +/** + * ProposalsScreen Test Suite + * + * Tests for Proposals feature with real democracy pallet integration + */ + +import React from 'react'; +import { render, waitFor, fireEvent, act } from '@testing-library/react-native'; +import { Alert } from 'react-native'; +import ProposalsScreen from '../ProposalsScreen'; +import { usePezkuwi } from '../../../contexts/PezkuwiContext'; + +jest.mock('../../../contexts/PezkuwiContext'); + +// Mock Alert.alert +jest.spyOn(Alert, 'alert').mockImplementation(() => {}); + +describe('ProposalsScreen', () => { + const mockApi = { + query: { + democracy: { + referendumInfoOf: { + entries: jest.fn(), + }, + }, + }, + }; + + const mockUsePezkuwi = { + api: mockApi, + isApiReady: true, + selectedAccount: { + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + meta: { name: 'Test Account' }, + }, + }; + + beforeEach(() => { + jest.clearAllMocks(); + (usePezkuwi as jest.Mock).mockReturnValue(mockUsePezkuwi); + }); + + describe('Data Fetching', () => { + it('should fetch referenda on mount', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0x1234567890abcdef1234567890abcdef' }, + tally: { + ayes: { toString: () => '100000000000000' }, + nays: { toString: () => '50000000000000' }, + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(mockApi.query.democracy.referendumInfoOf.entries).toHaveBeenCalled(); + expect(getByText(/Referendum #0/)).toBeTruthy(); + }); + }); + + it('should handle fetch errors', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockRejectedValue( + new Error('Connection failed') + ); + + render(); + + await waitFor(() => { + expect(Alert.alert).toHaveBeenCalledWith( + 'Error', + 'Failed to load proposals from blockchain' + ); + }); + }); + + it('should filter out non-ongoing proposals', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: false, + }), + }, + ], + ]); + + const { queryByText } = render(); + + await waitFor(() => { + expect(queryByText(/Referendum #0/)).toBeNull(); + }); + }); + }); + + describe('UI Rendering', () => { + it('should display referendum title', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 5 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '0' }, + nays: { toString: () => '0' }, + }, + end: { toNumber: () => 2000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/Referendum #5/)).toBeTruthy(); + }); + }); + + it('should display vote counts', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '200000000000000' }, // 200 HEZ + nays: { toString: () => '100000000000000' }, // 100 HEZ + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/200/)).toBeTruthy(); // Votes for + expect(getByText(/100/)).toBeTruthy(); // Votes against + }); + }); + + it('should display empty state when no proposals', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/No proposals found/)).toBeTruthy(); + }); + }); + }); + + describe('Vote Percentage Calculation', () => { + it('should calculate vote percentages correctly', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '750000000000000' }, // 75% + nays: { toString: () => '250000000000000' }, // 25% + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/75%/)).toBeTruthy(); + expect(getByText(/25%/)).toBeTruthy(); + }); + }); + + it('should handle zero votes', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '0' }, + nays: { toString: () => '0' }, + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getAllByText } = render(); + + await waitFor(() => { + const percentages = getAllByText(/0%/); + expect(percentages.length).toBeGreaterThan(0); + }); + }); + }); + + describe('Filtering', () => { + beforeEach(() => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '100000000000000' }, + nays: { toString: () => '50000000000000' }, + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + }); + + it('should show all proposals by default', async () => { + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/Referendum #0/)).toBeTruthy(); + }); + }); + + it('should filter by active status', async () => { + const { getByText } = render(); + + await waitFor(() => { + const activeTab = getByText('Active'); + fireEvent.press(activeTab); + }); + + await waitFor(() => { + expect(getByText(/Referendum #0/)).toBeTruthy(); + }); + }); + }); + + describe('User Interactions', () => { + it('should handle proposal press', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '0' }, + nays: { toString: () => '0' }, + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(async () => { + const proposal = getByText(/Referendum #0/); + fireEvent.press(proposal); + }); + + expect(Alert.alert).toHaveBeenCalled(); + }); + + it('should handle vote button press', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + isOngoing: true, + asOngoing: { + proposalHash: { toString: () => '0xabcdef' }, + tally: { + ayes: { toString: () => '0' }, + nays: { toString: () => '0' }, + }, + end: { toNumber: () => 1000 }, + }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(async () => { + const voteButton = getByText('Vote Now'); + fireEvent.press(voteButton); + }); + + expect(Alert.alert).toHaveBeenCalledWith( + 'Cast Your Vote', + expect.any(String), + expect.any(Array) + ); + }); + + it('should have pull-to-refresh capability', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([]); + + const { UNSAFE_root } = render(); + + // Wait for initial load + await waitFor(() => { + expect(mockApi.query.democracy.referendumInfoOf.entries).toHaveBeenCalled(); + }); + + // Verify RefreshControl is present (pull-to-refresh enabled) + const refreshControls = UNSAFE_root.findAllByType('RCTRefreshControl'); + expect(refreshControls.length).toBeGreaterThan(0); + + // Note: Refresh behavior is fully tested via auto-refresh test + // which uses the same fetchProposals() function + }); + }); + + describe('Auto-refresh', () => { + jest.useFakeTimers(); + + it('should auto-refresh every 30 seconds', async () => { + mockApi.query.democracy.referendumInfoOf.entries.mockResolvedValue([]); + + render(); + + await waitFor(() => { + expect(mockApi.query.democracy.referendumInfoOf.entries).toHaveBeenCalledTimes(1); + }); + + jest.advanceTimersByTime(30000); + + await waitFor(() => { + expect(mockApi.query.democracy.referendumInfoOf.entries).toHaveBeenCalledTimes(2); + }); + }); + }); +}); diff --git a/mobile/src/screens/governance/__tests__/TreasuryScreen.test.tsx b/mobile/src/screens/governance/__tests__/TreasuryScreen.test.tsx new file mode 100644 index 00000000..d3f5c93c --- /dev/null +++ b/mobile/src/screens/governance/__tests__/TreasuryScreen.test.tsx @@ -0,0 +1,274 @@ +/** + * TreasuryScreen Test Suite + * + * Tests for Treasury feature with real blockchain integration + */ + +import React from 'react'; +import { render, waitFor, fireEvent, act } from '@testing-library/react-native'; +import { Alert } from 'react-native'; +import TreasuryScreen from '../TreasuryScreen'; +import { usePezkuwi } from '../../../contexts/PezkuwiContext'; + +// Mock dependencies +jest.mock('../../../contexts/PezkuwiContext'); + +// Mock Alert.alert +jest.spyOn(Alert, 'alert').mockImplementation(() => {}); + +describe('TreasuryScreen', () => { + const mockApi = { + query: { + treasury: { + treasury: jest.fn(), + proposals: { + entries: jest.fn(), + }, + }, + }, + }; + + const mockUsePezkuwi = { + api: mockApi, + isApiReady: true, + selectedAccount: { + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + meta: { name: 'Test Account' }, + }, + }; + + beforeEach(() => { + jest.clearAllMocks(); + (usePezkuwi as jest.Mock).mockReturnValue(mockUsePezkuwi); + }); + + describe('Data Fetching', () => { + it('should fetch treasury balance on mount', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '1000000000000000', // 1000 HEZ + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(mockApi.query.treasury.treasury).toHaveBeenCalled(); + expect(getByText(/1,000/)).toBeTruthy(); + }); + }); + + it('should fetch treasury proposals on mount', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '0', + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + beneficiary: { toString: () => '5GrwvaEF...' }, + value: { toString: () => '100000000000000' }, + proposer: { toString: () => '5FHneW46...' }, + bond: { toString: () => '10000000000000' }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(mockApi.query.treasury.proposals.entries).toHaveBeenCalled(); + expect(getByText(/Treasury Proposal #0/)).toBeTruthy(); + }); + }); + + it('should handle fetch errors gracefully', async () => { + mockApi.query.treasury.treasury.mockRejectedValue(new Error('Network error')); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + render(); + + await waitFor(() => { + expect(Alert.alert).toHaveBeenCalledWith( + 'Error', + 'Failed to load treasury data from blockchain' + ); + }); + }); + }); + + describe('UI Rendering', () => { + it('should display treasury balance correctly', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '500000000000000', // 500 HEZ + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/500/)).toBeTruthy(); + }); + }); + + it('should display empty state when no proposals', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '0', + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/No spending proposals/)).toBeTruthy(); + }); + }); + + it('should display proposal list when proposals exist', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '0', + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + beneficiary: { toString: () => '5GrwvaEF...' }, + value: { toString: () => '100000000000000' }, + proposer: { toString: () => '5FHneW46...' }, + bond: { toString: () => '10000000000000' }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/Treasury Proposal #0/)).toBeTruthy(); + }); + }); + }); + + describe('User Interactions', () => { + it('should have pull-to-refresh capability', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '1000000000000000', + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { UNSAFE_root } = render(); + + // Wait for initial load + await waitFor(() => { + expect(mockApi.query.treasury.treasury).toHaveBeenCalled(); + }); + + // Verify RefreshControl is present (pull-to-refresh enabled) + const refreshControls = UNSAFE_root.findAllByType('RCTRefreshControl'); + expect(refreshControls.length).toBeGreaterThan(0); + + // Note: Refresh behavior is fully tested via auto-refresh test + // which uses the same fetchTreasuryData() function + }); + + it('should handle proposal press', async () => { + mockApi.query.treasury.treasury.mockResolvedValue({ + toString: () => '0', + }); + mockApi.query.treasury.proposals.entries.mockResolvedValue([ + [ + { args: [{ toNumber: () => 0 }] }, + { + unwrap: () => ({ + beneficiary: { toString: () => '5GrwvaEF...' }, + value: { toString: () => '100000000000000' }, + proposer: { toString: () => '5FHneW46...' }, + bond: { toString: () => '10000000000000' }, + }), + }, + ], + ]); + + const { getByText } = render(); + + await waitFor(() => { + const proposalCard = getByText(/Treasury Proposal #0/); + fireEvent.press(proposalCard); + }); + + expect(Alert.alert).toHaveBeenCalled(); + }); + }); + + describe('Balance Formatting', () => { + it('should format large balances with commas', async () => { + mockApi.query.treasury.treasury.mockResolvedValue('1000000000000000000'); // 1,000,000 HEZ + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/1,000,000/)).toBeTruthy(); + }); + }); + + it('should handle zero balance', async () => { + mockApi.query.treasury.treasury.mockResolvedValue('0'); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + const { getByText } = render(); + + await waitFor(() => { + expect(getByText(/0/)).toBeTruthy(); + }); + }); + }); + + describe('API State Handling', () => { + it('should not fetch when API is not ready', () => { + (usePezkuwi as jest.Mock).mockReturnValue({ + ...mockUsePezkuwi, + isApiReady: false, + }); + + render(); + + expect(mockApi.query.treasury.treasury).not.toHaveBeenCalled(); + }); + + it('should not fetch when API is null', () => { + (usePezkuwi as jest.Mock).mockReturnValue({ + ...mockUsePezkuwi, + api: null, + }); + + render(); + + expect(mockApi.query.treasury.treasury).not.toHaveBeenCalled(); + }); + }); + + describe('Auto-refresh', () => { + jest.useFakeTimers(); + + it('should refresh data every 30 seconds', async () => { + mockApi.query.treasury.treasury.mockResolvedValue('1000000000000000'); + mockApi.query.treasury.proposals.entries.mockResolvedValue([]); + + render(); + + await waitFor(() => { + expect(mockApi.query.treasury.treasury).toHaveBeenCalledTimes(1); + }); + + // Fast-forward 30 seconds + jest.advanceTimersByTime(30000); + + await waitFor(() => { + expect(mockApi.query.treasury.treasury).toHaveBeenCalledTimes(2); + }); + }); + }); +}); diff --git a/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/production.ts b/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/production.ts index b46d5415..01e37b58 100644 --- a/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/production.ts +++ b/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/production.ts @@ -4,7 +4,7 @@ import type { EndpointOption } from './types.js'; import { ZKVERIFY_GENESIS } from '../api/constants.js'; -import { chains3dpassSVG, chainsAnalogSVG, chainsBittensorPNG, chainsChainflipPNG, chainsCommuneaiPNG, chainsCreditcoinPNG, chainsDebioSVG, chainsFragnovaPNG, chainsJurPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsPolkadotCircleSVG, chainsSpannerPNG, chainsTanglePNG, chainsTorusPNG, chainsVaraPNG, chainsVtbPNG } from '../ui/logos/chains/index.js'; +import { chains3dpassSVG, chainsAnalogSVG, chainsBittensorPNG, chainsChainflipPNG, chainsCommuneaiPNG, chainsCreditcoinPNG, chainsDebioSVG, chainsFragnovaPNG, chainsJurPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsPezkuwiPNG, chainsPolkadotCircleSVG, chainsSpannerPNG, chainsTanglePNG, chainsTorusPNG, chainsVaraPNG, chainsVtbPNG } from '../ui/logos/chains/index.js'; import { nodesAresOdysseySVG, nodesAutonomysPNG, nodesCentrifugePNG, nodesCereSVG, nodesChainxSVG, nodesCompetitorsClubPNG, nodesCrownSterlingPNG, nodesCrustSVG, nodesDatahighwayPNG, nodesDockPNG, nodesEdgewareWhitePNG, nodesEfinitySVG, nodesElysiumPNG, nodesHanyonycashPNG, nodesHumanodePNG, nodesInnovatorPNG, nodesJoystreamSVG, nodesKulupuSVG, nodesKusariSVG, nodesMathSVG, nodesMinixPNG, nodesNftmartPNG, nodesNodleSVG, nodesPolkadexSVG, nodesPolymeshSVG, nodesRiochainSVG, nodesRobonomicsSVG, nodesSherpaxPNG, nodesSoraSubstrateSVG, nodesStafiPNG, nodesSubgameSVG, nodesSubsocialSVG, nodesSwapdexSVG, nodesTanssiSVG, nodesTernoaSVG, nodesThebifrostPNG, nodesTscsPNG, nodesUniartsPNG, nodesUnitnetworkPNG, nodesVFlowPNG, nodesZkVerifyPNG } from '../ui/logos/nodes/index.js'; export * from './productionRelayDicle.js'; @@ -486,12 +486,12 @@ export const prodChains: Omit[] = [ info: 'pezkuwi', homepage: 'https://pezkuwichain.app', providers: { - Pezkuwi: 'wss://pezkuwichain.app:9944' + Pezkuwi: 'wss://mainnet.pezkuwichain.io' }, text: 'Pezkuwi', ui: { color: '#00A94F', // Kurdistan Green (Kesk) - logo: chainsPolkadotCircleSVG // TODO: Replace with chainsPezkuwiPNG after running build:images + logo: chainsPezkuwiPNG } }, { diff --git a/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/testing.ts b/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/testing.ts index 9e7bb4c3..ea22dd9a 100644 --- a/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/testing.ts +++ b/pezkuwi-sdk-ui/packages/apps-config/src/endpoints/testing.ts @@ -4,7 +4,7 @@ import type { EndpointOption } from './types.js'; import { ZKVERIFY_VOLTA_GENESIS } from '../api/constants.js'; -import { chains3dpassSVG, chainsAcalaSVG, chainsAlephSVG, chainsAllfeatSVG, chainsAnalogSVG, chainsArgonSVG, chainsBrainstormPNG, chainsChainflipPNG, chainsCreditcoinTestPNG, chainsDebioSVG, chainsEquilibriumSVG, chainsFerrumPNG, chainsFragnovaPNG, chainsJurPNG, chainsKintsugiPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsQfNetworkPNG, chainsSkyekiwiPNG, chainsTanglePNG, chainsVaraTestnetPNG } from '../ui/logos/chains/index.js'; +import { chains3dpassSVG, chainsAcalaSVG, chainsAlephSVG, chainsAllfeatSVG, chainsAnalogSVG, chainsArgonSVG, chainsBrainstormPNG, chainsChainflipPNG, chainsCreditcoinTestPNG, chainsDebioSVG, chainsEquilibriumSVG, chainsFerrumPNG, chainsFragnovaPNG, chainsJurPNG, chainsKintsugiPNG, chainsLiberlandPNG, chainsLogionPNG, chainsMyriadPNG, chainsPezkuwiPNG, chainsQfNetworkPNG, chainsSkyekiwiPNG, chainsTanglePNG, chainsVaraTestnetPNG } from '../ui/logos/chains/index.js'; import { nodesArcticPNG, nodesAresGladiosSVG, nodesAutonomysPNG, nodesBifrostSVG, nodesBitcountryPNG, nodesCereSVG, nodesCessPNG, nodesCloverSVG, nodesCrustMaxwellSVG, nodesCurioSVG, nodesDancelightSVG, nodesDatahighwayPNG, nodesDockPNG, nodesDolphinSVG, nodesDotmogSVG, nodesEdgewareWhitePNG, nodesEncointerBlueSVG, nodesFantourPNG, nodesGalitalLogoPNG, nodesGamepowerSVG, nodesGeekSVG, nodesInterlaySVG, nodesIpsePNG, nodesJazPNG, nodesJupiterSVG, nodesKarmachainSVG, nodesKhalaSVG, nodesKlugPNG, nodesKylinPNG, nodesLaminarCircleSVG, nodesMantaPNG, nodesMathSVG, nodesMinixPNG, nodesMoonbaseAlphaSVG, nodesMybankPNG, nodesNftmartPNG, nodesNodleSVG, nodesOpportunityPNG, nodesPhalaSVG, nodesPhoenixPNG, nodesPhykenNetworkPNG, nodesPichiuPNG, nodesPolkadexSVG, nodesPolkafoundrySVG, nodesPolymeshSVG, nodesPontemSVG, nodesPrismPNG, nodesRealisPNG, nodesRiochainSVG, nodesSherpaxPNG, nodesSoonsocialPNG, nodesSoraSubstrateSVG, nodesSubdaoPNG, nodesSubgameSVG, nodesSubspacePNG, nodesSubstrateHexagonSVG, nodesTernoaSVG, nodesThebifrostPNG, nodesUniartsPNG, nodesUniqueSVG, nodesUnitnetworkPNG, nodesVFlowPNG, nodesWeb3gamesSVG, nodesZCloakSVG, nodesZeroSVG, nodesZkVerifyPNG } from '../ui/logos/nodes/index.js'; export * from './testingRelayTeyrChain.js'; @@ -704,6 +704,17 @@ export const testChains: Omit[] = [ logo: nodesPhalaSVG } }, + { + info: 'pezkuwi-testnet', + providers: { + Pezkuwi: 'wss://testnet.pezkuwichain.io' + }, + text: 'Pezkuwi Testnet (Beta)', + ui: { + color: '#00A94F', + logo: chainsPezkuwiPNG + } + }, { info: 'phoenix', providers: { diff --git a/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/generated/pezkuwiPNG.ts b/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/generated/pezkuwiPNG.ts index 8bf36ac7..2f303543 100644 --- a/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/generated/pezkuwiPNG.ts +++ b/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/generated/pezkuwiPNG.ts @@ -3,4 +3,4 @@ // Do not edit. Auto-generated via node scripts/imgConvert.mjs -export const chainsPezkuwiPNG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAA9CAYAAABC4behAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAgAElEQVR4nNV9958Uxdb3TtocYHfZTN5ADsvuklSUjCIZRJAgEkRyBkFBkgh6yaCgVzAgSo5Klsyygc0JzPe+z/P5vH/E9/2cU1093TM9Mz0z632e94f6TOquPlV14vecqgmxWOwwala37xwur0bXGN9vs9hhtzj4VTQHf6Zm5Sb6tfro00zT9kF9S3p99ev83Tk+i4n7zdOsnz9xX7BjNjc2blaXV5NzaWat/e3L//6c6+Bp3sVaB9aXxa0/4989r6kxDabX1urfGgS7FlraQvxhNH8GYrMKQQ+hh4TYEBJiQUiI1b1ZbHy9VBBWoz4DYFrDfkz26zrphhNu1F+Ai2C2D78WPgB6AnpOoGM1tb7CQHjkP2vj0WUN+H53JeyxLz952ef6NkJ/JhWAy4S7PlzzngTfaiXBJwG3IMwaimxHLAZGNsPkqHTMim2Bt6KbY3RkCvpGJCDDHsWTyNdbbbBZHbAa9W1yoOrke6LRtfk72Z7u9WchfNEVLEMEyxge1jagfrzNn9m+Xa8zut/ommDX1tqIaxHImM326Q89Lp/NKQDXCfFAhBQ+svgdw+LwTlwr7E/shJMp3XE5JQ9XUvJxNTUf11LzcSU1DxdS83A8pRs+SWiPSTFpSHFEsFfASiRQ78On4jDRn+nF01ond/fPFMM2hrAa9ufHvJkRVDNz6GnuPQmwhz5Nz503gfm7BdTij3A6DFoAfbrNlwnPyIdi808BeGlsxUNsiLeFY1mTtriQkodrqQW4mJKH0ym5OEEtubuzpeTiVGouzqb0wOVUujYf3yV1xYToNNg1fZpmZI+MZYJxfU2+lzE74z4vfXtjXCOmN7MWPqyU6djTkDHccRCnm+xjnCaFSIv9BCYA7utqypX3g0es/vKc1VyfHsNTn31p+/ERHpkcr2cF4HMB9fE2CX+yPQJ7kzrhx7QCnEjpIYQ8JRenU3pwO5OSqzR6T9/l4nRyLk4lC+VAyuB6WgGWNm0TFDDmZK5g4jsjIEgP2jVW/KhnNhMLqrtO74WYBha9Kjbj996u89WHX3Plw+PQAqiB8Yhn2qwe4nr/+M/zmM336bqW/gKMnpWOli7/MAAvk0iu+7vxbXE9vSd+YKEn4e+B06lS+LUtjxUBKwBFCTgVQS6upRVgaGQyYwgEJJrTsiYn2Q/L4jdy7QeN/guB9wU2pNEPOvxiUhPrYbo/n+vgCEyhBBtaWfzvK1jE31OfwShzX81vBeCmTRhIsCElNArfpnZjgSfXngU/VRF47at8r3oEiiegNMILfkzNx8aEbJEhCGYhPcWJwcRVZmPSQMMNLwJlWjC9xn2+XVz+3mh8wSrhRoi7dbQ1Qn8WXzTq5sKPcNTP9Q1oXYPt0x8FQJaYEHp5s0TrhQKwonVYNE6kCqvPlt9V8NnqU9MogFRFAbDCEO1kSi7Op+bhk8R2cHA2QSy69vnis2h+C4KrMP8nJ950P0Eoj/8EwzVmH43V39/dp6Wx19i3cJqmL4jx+lQAHIfQhUrengVRcfn5d0VII2yhOJTUGZdS8nAyWRv3S08gT+8BsPBLy99DbT9QxiCtAEuatmFcQTxPCAQ9k+oFLFxXIGoIRNrxb2Zaj/cEAFB6ZNQAUHujfq2NqESCZX6vzBkEGt6Y9Fm88X4QtHlYW58hS7Bj9NS3K+8or14VAAkbC5nFjh4RTVkoP0lsj+0J7fF6TDqiraEs/A4lAzAiKgU3Ugs4lv8huTu/aoXb2TTxPymD5B44ndyD4//zpEBScpHtiOE+mYYQG1qERmFxk9bYldgeHybk4M3Y5mhJ11iswj02mCxXYE0/+QG4cy59mwLuvAqA/rP5ajYzzRFYJkW9150+U4zWWEwb1HoENlcWHd8EBwRaAsEsPIzLGy3+9udKp0cFwFV8IVak2SOxIT4LF9PycDktn3P3l1Lz8HNaAbYkZCPcFqoyGimL8TFpbOEvpOSLTEByLnsE1EghUFaAX5Xv6PcfknNZCVxNycfJpG7oGx6vWnsS/taOaPwzqQsup+ZzeCDThqeSu2NmbHP2PoSick2TmJwsk8zlqULQv37dMwlmaTD67C2V5i9d+pSfHs1uTJTdaA6NBMeTYAVLkycaLUHxiTvq7n8/rulXdz7zJ4vga+48ZgFECa+Vi3m+SuoqhI1jeyHAlN77PiUXV9MLMCw6idF6LuVVQoUuYXHYGp+D88k9cCU1nwX2vBIOSMEn1P9cSg8OGah9m9QNi+NaobkjkoXZzhiDAyFWO9bHZ3E/3yd3Y4VxIkXUEpAHcSUtD5sTc9DEFqaEKFLIPKSJfGhGvxfOzzgsMKVhpAD83AdgOpTxkUI1MX/+fO+5XxP1FSZp85WutPq5Fr7m8O/ITgSaCfB1n4sCEPE2CVL70BgcT+6GC6lkyYW7LpF7LuxJ7Y4Lafl4Lz6LBVYOmoA6tt5WO7qENcGsmBb4MD4Hnyd1xvGk7qoH8F2zrjiQ2BFrmmRiRFQy0ljwCVdwxvUk/EmOSPyQ0o2VBacWpUdBSiClO45T1iBNgIZxpASIFjOYgL+L4Bo/BQvyNGZsa6bPxoiZ/47xBkKTmT6tjdifNUCBbIz+zPKy0qfPMNJljnQKQLgENiTYwxnQu5iWz/G4CtZp0HpK9VFYcCi5M8JsTrSe+iElIvsSuXw74mzhXPef6YhG29BopNojEWUPg4X2AHAjwRVeBBHGQKPFiuywGJxKy8PJVGc4wdgChQ0KbaQMbqTlY118W1istuAZzqygByIERv0a3uMjdvfF+P7SGaByC5hxdc/1UkbtjyIxO87/CQVsacT+AqHPqF9XD0AU9Niwsmlb/Kgp6BHWX9NICaTk4mJqHg4nd0G4RgE43UfhTTBqL5WBWxMeA6cUXQiVmYb2YXH4Ic1ZVXiG8QIXWlJzOXvwU3o+RkSn6AuIPE6GI2hBdcbfZqv3fNHSWEBbkBkFN7r9LLUNgDFNucxeBd2PsljX+60m6PBrvL7n3/o/NXcu94Xo434b+kQ1w+WMnjidlo8zaXk4k660NE1Lz8PptDxcSi/A7mYdNKCHcdytzdvzNmFls49RLb3WiyAFQej/6bQeOKd9vtJOaxp5CefS83EktRsSQymc0MbJEhMIBBEXtMl7gy8zdgS2n8AkAxhlJ/zDHbRzph1/YON1BxT15yGYYmSDtTACFs0rJycfWF0yJaYQey9rqh+vMeDrT99GIKBrCbk/a+K6FhoPwAFbiBVbI1vhfFxnnIjtgNNxHXE6roOzxXbAKaV9H9seF+M6YVlMSx0GICfaGLU2TnW5KhCrRgE0cYTj66btcTauA07EdcBJDQ2nmzhpOxnXAd/FtcPFJh3xelgzBZgM1QmYJ0DLfQIdfxNopGU01002GppMu3pGljnwjICe+YNNS/opVF7G7BRQ47LgwGgzJ3T+9mWKNp+eqfcyb4/PMOGNGGYBBHAXgvyWmbg6fg7Oj3gTF0bOwMVRb+Hi6LdwacxbuKxrM3F+1AzcHD8XI1t24Hu5Ss/FdRZFQg6EOhyw28iltyMuSryn6xx2xf3XhgDqvcr9IRZs6jUY1ya8jfOjZ+DS2Jm4NJpoexMXR1Kbjgsjp+ECvY56E1fHzMLXr05BXHSs8AIkXX7FU37G3j4W1BfTewUtzTKit9AlmDjU6NWUUGgY2Ux87HM9/Ng12Ngxt9WILzy999Gn3/MY7Fi9KzuhAOyhLMTvvb8B9b/+jsdPylFSXoWSCn0rVlslSqqqcb/kCbLaKQqA6gE0zGy3OeBgobehU+sYtG9JhT0W9O/eBM2a0L5/G/p1iUOYQ9QRsFJwGZjdQam9EEycMg21v/yGx2UVKK6sRnFlFYrL9U3SWFReiaq6BgwYMIjvpT6CZhBfzGGmT3+FwEx/Zhjjf2KsZvvxV0gbc6zWRqYzkHmzBtmXP7R56DtEWFkrwsOjcOLEKVRW1qDocQmKi5+gpKgUJcWiFVMrEq+PC4tRV/sUu3ftVYRfWHHuUAESm0aHoaB9E+47u3kMZrxC4JwVC8akoFObaMTHhGPJePrOhoTYMORmi8o/taKPsAIq8AkJQWpqOn6+dQdPnlSgiGl6omnOz0Rb4cMi1Nc9xcqVqwVtlGkIUgjYG7E5mB7qj1+VxuMOlsn8ZVqvffqJczQ2o/kac2OOtbGUh/VvUpy6OQmy7FmzD6dRxqtcoyiAELRo3hqFj4pQWlouhL9EEaoS2Uj4n6CouBRFxSUoK6tE7959hZUlobAKgYiNCmfXnoT5rVfS0C0rFqF2B3bOb4FQmwObZjRHj5xYvNonAQvHCcR+5vAkdGwdzQoiOiIUEWFhsHJ/Djjs4fyMFctXo6HhFxQWFgvaXBrRxvQ9LkF1dR0OHfqCaTDGHUy4lMpn8o7kHBk1rltQlIFPRjZsAQqsh9+Nwg1aG7stjJtXIfNIn9F7/2kzS6/v5gdNnujyMl6r1cE8TfNlSsH7oNP0GE0ruOBAY20LkVY2t1sPlJVXoUhaVq1glZSpnwsfF6Gu/im2bNmmxP4EtCmFOyEOdvVHPUcgnBUdW0Xhi1WZiAwLw4ElLTE4LwF7FmRgWM947JzfHAN6xGFAblN8/E4GK4Ks9GiMfi4e4aFC6EQT9DVrloyrV6+jgtx88gI0NEllxQqrqBQVFdU4e/YCHI5w3jjkCczyvTACgyBFlJCQjNatM5Gd0wHZ2e2Rk9MBLVq0RlhYpKIMLJ6VgBGTmQCi/OlLCyq63c8buZwKy9ezAq7m83CP38i6B+bXgpPawjOad7tZb8wAZLO6vbdplLwAuM2sg3ufwZ36zIpIUdzsbQYNQntRAAUFvVEuFUCJcXv8uIRDhGvXbyItLUOvALiJXXrj+jXD5pnNYbGEYsfcltg0oyXem5aBI+9m4vj7rbF7fkuc2ZSJCS82w+UdOeieGYPcrBjsXNACKfHiXECrVRQGketDgkzPeuWVV9m6czhiRKeqAKpw4fwlhPIZg2YXUN/kvDzXtx++/voYfvrpGu7df4Sioid4XERe0BPcufMAJ0+ewapVa9C2bRZfT6GCWcHwVwD8H4PwXLKycrDtox2YO3c+QkNpLm2m6PpP0OhvX64ZD2F4pHKz+mkVHW4CR4o8Ib4Z1q3bgPfWrUdCoih11yuXIC2vCU/JaVSlIrJ4zGI1igIgq1b6pJytvXT7dcJfVIwnZeUcAvTs2UeJ/cNUpL9JTBheyo1DSrwQ1rVvpODo6hYY+0Iz3NmVifNbM/HoQA7u7snGwwM5uP5JDn7emY2DS1tifL9E/Li9NdqmC+Hvlh2Lrm0jYVVjbYcKCM6btxANT39BURHhFOQJaOksY++gsqoGx459p9CmVAZazMd5ghFsiIiIxrlzF/DLL7+zd1RX9xT19c+4kRdUW1ePyspq1NbUobDwMSZOnKRiIgExRLAxrkt/pIyInoMHD+HPP/+N2toG9Ool185kyNIYMbJp99sPRcBjsyCuSVNMmzYDb8+dj7R0YZS8egJemk0Bw5cvX4k//vgLf/71b7z99jtqmBtQuOZpLvk7z30R/zkcoRg1eiyWr1iF7t17uBuYYPEQJwZgRWRkDM6dv4jyimo8JuFSY3+y/MUsVCWlZRgyeJgCrgnUXzZK8bVvFY3Ns9Kw9LUUpDeLwaFlLXF3dzauf5yJh/uzcWdPNu7uyWKFcHd3Jh7sy8KlrW1ZMQzvnYi8dk3x8fwMTB7SDJHhtBjONJ4oExaLvnrNWlYCJPDklXCoorRHhcWMFWxYv9GQTo8MpWUEJexo1aoNHtx/wMrm0aMifPHFEezdexBbP9yOT3buxtffHmMlVF5WwbSQYhg3boJvAWtMgffQl7Rm0dFNcPXqDTx5Us4YT9cu3T3T11hgoCvzG90fJJAncZnNW7fhl1//wG+//YkDBz51WmuzfVv1/ZIsHDlyFOVllagor8Rrr03SKABjfjE1hwEoohlvzcazX37j9uOPV9C0aaJfXqZX2qSiEQ8U1nX69Lfw669/sCAVFhWjsLgEJU8qWNiIifr2fZ6vI5dc5u75PAC7AxFhQpE4bA6seSMDVz7JwT9XtsGD/Tm4tycbd3ZnsfDf3ZMp2u5M3N6VicL9Wbi4tQ2OrmmLkxszkdcuTpwDYHMgLFRfJSfBthCLBbNmv81AZE1tHYpKSlH4uBiPCovwpLwCpU8q0LVrrlg48lLccvEOUwswaOAQDnkqK6vw7TffclgiXE2LyhT0nG+/Pc7XUZbi559vIyUlVW+J/GQGbxWLZt1A6dl16dKdFTjhIleuXEVcXFMDl9akIAci/I3ZlH6lcotrkoB79x5yOFhTU4/vvvtBhI8B0GlVFEpSUiquXbvJ4TCFlN26+lCY2vX1MgemsQ+N8j761Tc8LjLIDx8WonnzVipfNRawGCLBCvpAQMqKFauZkenBVdW1uHPnPlavXscTI5leBWKYUAeaRIdiWM84LBibiLkjkzAoP57R/uJPc3BnN1n9bNzdqxF+VgBCIdzenYVHB7JxYWsmewGjnkvAvNFJmDwoEV3aRCr7BOTzZDpOLFb37nn47LPDrLCI3praBjx8VITRY8YpEyXPKvAE9hg3GqNwBVeJfmvqsfGDzfxdaGiEAsqEaZgmGefPX0JpKdFRg9GjxxhaDSncToDTj7MBDFxvPfinr5STY5gw4XVUV9eisqIShw9TZsRiqFSMmMp0NaCs//BToAP9azQ5VhL2zZs+RE1tPfPpiy8OUJS+sfelm3fN8XJWjcLs1q0He5RlTypx48YtNG3aTFUA2vu8N32ZsetzfXkPkpap02awYSHlvWDBYhVz0/btbYxmFHGIO+hgRbucDhg//jUMGjQUKSlpKsAikUgd8myVR3TZ0axpOCYNTMBXa1vjx+3ZuL1TEX62/AYKYHem2q7tyMLJD7IZLMzNjoXDQQtsLBi80UiZJLvdgfbtO2HC+IkYO3YCmjdv7axMdKvFNgnQKYL92aeHUF1Vw8DjaxNeF96PXfF+lCazAAsXLUFNTS2qqmqwcaNQFuRZqWXInFoKV7dLiyZSiHZKNXqgw+5Sd+CtMRIulZgyPwRk1dbWcyOF5mrNGMTla+kPWcQGLhVdVxB2LdO5MqwUDG2f8rNMDXsScjF2BeH2Ili6ugtNnT3xXURkFAst1YoYxf/E07J2Q/xFnZh7uR5W5XpS6nT/+PETUE3rWFmFQ4cOi+fz/c5106Z9XdF+bSm13eC58n4j46BPG4qamA7tO6Fjxy4CFJcl98r8auddvA/T/Q2fnk7jDV363YBKh665bvcB64mOjQxDdkYk+nSKxeCCplg0LhU/bs/CfU3cryoAFvi2GuHP4vDgwb5s7F/SEq8PbIb+PeLQPSsaqQkRoqZAox1VN1BhDD1S6kzHGaZMfIJYMu1ISHASrl69xmFGackTdO7cTVE44pmi4tEBB6PqIXj99TfYYyJl8fHH/9BYDcFcMrVEr+RFhIVF8KtYLFlMpd1P4XBJR5lpWusu/mbt6NGvUVlRhaqqarz88nAdoMVeDKcFrYiKjFXeS2bRpg7F+Y/uTUuf3rPwil7LEm3N/UbpSXFdqAst2jW16p9DsbG6xlIAhTK3hFg4K0QKm5q818qKLlStN9m0cTOqa+p0CtNqFf9WFRERwwVzlFalMNCpbPRWXQLXkjYKmcPCI/lesebie2FE9MKvNch6GXRulXebX40c0NhiY5uqhkkoEgPlKjEP1x+k1pIXcUGEkbbSENMqNZJDgJnDm2HdG6nYs7A5K4B7e109AL3VlwqAv9+bha/WtcGGGRmYNzYZ4/onIL9dDCLDnZ6AERPR5Grpc6XfPxTbqQApvKBQqLy8EteuXUezZilOAEbti54vLMfcufMYZScFsG3bdtUVlf3FxjbBhAkTsXfvfpw9ex5nlEbpuby8AhWwdCphK+Li4rFkyXJs3LQF76/fiA0bNmPjxi1q27RpKzZv/pBfd3y8E6+/PlkIvoJhJKek4dat2ygrr8DjwiJ07NhZVUwyRIiJicO6devx8893sGzZCh4Tfd+8RUt8tH0HPtr+MTKat3QZu1L1GWLFm2/OxBdffInhw0dqmNqB2bPn8Fh7FvRymzeZnSCQdf2GTVyCbmTB5dzl5/fE3j0HMHnyVM33FqSnt2Bv67333kdCgtgAJl1fYQ0tCA0NQ//+g7Ft2w6cOX2O08MUrh04+Bl7jGHhEUoxlzA033xzjL24qqo6jB49lp8/YMBgHDr0Oa5cvYafrlzDzp17kJPdXg0zXYVfYkU9ehTw2E6cPI2LF3/Epcs/8doTzfn5vVR6xZideJEE5qdOfZPndsiQYarxoaxWeHgklixdjoMHP0OPHvnqOs6aOQenT53FjRs/4/KPV7BmzVrExyfoMR8XWdApAKm1bDY7axHKDDgtlNBqRsCH0+2woUOrGLw/vQVu7VLAP1cFoIYBzs/kAVCW4Ku1bfBqn0TERIrjvdSThzVa0SnoTq1ntdkQHR2HyCg6JJQskdVFUN3dLE+fpWBQCETCXFVViy/+edRptTSxlXTR6foD+w+yla2rbcDct+epeAG9Pv98P1y4cImtSkPDUzx79gunFklhUGqRQMaRI0e5CefkyVPw3//9fzm78PTZb6I9/RXPnv2GX379zZmSrKM+f2UhT0mmkE0w4EsvDUB5RRXKyipw8eJlREfFKuklYe1atWqLY8eOq3TdvHkLsQwShmDt2vdEKuzPPzFn9hwdpiEFs3PnrqioqMRvv/2By5d+RBT3H4K+fZ5DXV0d3/v98ePuyoPn2YGvjn7NoPNf//o/XEuhDU9kGJacnIob16/ht19/Q1lZGZqzMhI8+cHGzfjjj3/hzz//wvjxE1UahfCL+ofPD38hUrW1DdxovsS61vBckgKVCon6vnXzJsqelHPWpEOHTnj77Xm8pnV1DTyPlAqnub5+/ZZCi9PTk2B606YJ2LBhE548KROp47pnvGbUCE8iGuj5s2e9rYarMgSXyrtd+44c+//++5+4cOEir5n8beiQoXj27Bn+9a9/Y+c/dnN2gIDopw3Uby1X8xKtdO++fftV5aYts3dTALLirm/fF1jrXLlyA+fOXcK2D7cjV9EyTCAvkBZIcSAmMhSD8ptg/fRUfLq0BVa9nobNM5rjwT6R93c2rRIQ7+/szsSjg9k4vTETC8elYsfc5ti3qAVmjUhCZnqU5ll6LSvcnQiMGjUOn356GJcu/cSNFlQWKQn30b+UiZzkDes/QE11LWpq6rByldhXwIvAsTZ5ReR5iGuff64fpwOLHhdzuCBTbQzCjZ+oZBKEVbl9+x527trLFvzChcsMOJWXlePWzVtc7ShwBsFIL740ALdv38XPt+/yfQR03b37gF+vXbvBmQ9C+O8/eMRMtWfPfp0SmzN7LjNvVWUtW2Nt37169+WMBQlHGe+xKMFgxdLQXH/5z6Mc/hBDvfrqKJ0CkPjCa6+9zhhJeXkFPj34qeIVhCA3N48LpogRr1y5hoSEJKe7rQjnyBGjGDO5d+8BC8Ou3WJfiRqTK3NL80RrUF5ejsOHDqneUWhYBE6eOIUnzOyVGDhwsOAJOgsiJAR9+jyPe3cf8DNIoAnVv3LlOs6cOc/eTmVVLRoanjG6LuedslyV5ZT+q8CJH05yzcnTp89YaO/ff6R6hA8ePMLThqdYsniJ4rk5lU56WnP88MNpNNQ/YyVCRWlk/T/66GPs2PEPts6PFT6hue3WLVe3mU7Wu5AB4rUpq8A333wnjtlT1m7F8lV8b3VVFdatfR87dnyC//qv/+I0PWVF6JnEj48ePWYefuGFF3XKVReqiQUNUyeNJpO0FuW2KXasr29AaWkZVq9ey26GJETGTpQFSIgJQ2Z6JGMBZGH690jA+Q+z8dP2LNzeJYRf9QSky8+xfyaHCVe2Z+LGP7KxeVZLNIkhq2lHemIEWiaH845CrcKRk5CT057jWwlw0QJTI8v6/fETSrqLwB73QRuisKrrZWPFQn1QHpgm8OWXX1GZU1of0ax44YWXWDipAIno+PSzz5Sj0IQlJOEuKSlhxiE3PjklXe2DwopTp84yoxCTDxk8VCdo1H9Scipat8lCq9ZtkZmVw+XIGRmt2KWtqKxGYWERC/+hw19yWozPQVDW8x+f7GRGqaurx4IFC1XvjtK9JJy0riQgP/10RU2bcugR2xTXlVQYpdh65Obr0HWpgN9fv4EVQG1NLZavWKncb0N8fDPcunmbc+mPHj5Gu5yOyv3Cs4uNjcPZM+f494cPHjPgdvToUXX+5Rr36tWbBYDLvovLVGHh06rTMnD/3kOe3/v37qNNm0x1XbKz27GQEv0V5VWcQx885GU0aZLItFNo9M68hfjyy6MYM4bqNsR6TZv6JvN+aUkZu9BFRUW4e+cuJk2eiqysdiwf589fVBRjDf75xZeKey2AvsjIKHzz1beoq63nPqhSdPSY8exJy9RxSko6hwEkX6UlpcjtnucM/xTcgj6T+04eS011HdauXa8ob+G5kYEmfiGeO/79KV6DI0e/Qt/nXkTzFq0wbfoMlJSWc40MjWfGmzNVReXK/6oHQJNKHROzPHpUiOLiEhQXlbC2IitF7gtpoqSkFENtQhMQHRmGReNS8M26NhjzQhI+eac1nhzugJv/oBhfqQUgwd9FSkB8pjDh5q4cDO+ThPemZuCLla3Rq4OoBVCBIcVdka5rn77Ps9WjCSL6qBXTDsbHJXj0oJCVwMyZs3XCZKZJVzAjvSVbhpISocH7DxjEzEthBrmkVDX56qsjsX//pyzYJCTEEFQq3E7ZHh0dHYvTp84oSqQGq1a/qygRcsEj1HCLvBfW5tV1GKwUWcktzKKSUSoc8UrhzcqVa1DFuzZLuejpk3/sQWSk2EzFgKMiRCdPnmbrTLS99FJ/fiYpDlJUtKbk1h7+/AjSM1roQpaC/J5sQchykrVMZAsp9kRoFfHx4yfYSlGacU8jWb8AAByCSURBVOy48ZpQMYyVM42dnt2n93MqQEWvs2bNYaVFQiKsagWuXruuhBAi7KMquC+/PMJ9EE8uXbpCZ+Gff+5F9ly47PvCJfVeahQbV1fXsLt+6sw5pCoeoQAdZbiqB7npdeuWbSwwVPRF63Ht+g1kKbG+3S68mzlz5rLw0biPf3dCCdkEXy5cuBj1dQ0oelyEu/fuo2s3IdwMBLNgW9Q9LSS0BDJTCtkZBiiZtRA7Dh/+J3uNRM/EiZPVawgXIk+Xxk101jc8xZ69BxkXkOOhDNqxY9+z8qNxEDagVeA6uZWxFgEqDx4UslVQS2yLNZuAyNLUUbHFcY5xJNou0220/XdMv3j06ya8hBF9EnBlRxaWjEvD7V1Z+HlXNocEZPGpFPjWzmwUHsjB/sWt8NGc5vj63VZ8JkBqQjgm9k9EXk4Mx4uyks8JzvXAw4ek3SvFzkB1K7B4pd2A5LJR+Ssvuivw5wUEVOv/n+vH8Zfc/Uhu2+nT53DixBkuEqG6g8qqaq6OpPkiL+nqtRso6NlbXQQCkKRn8sP3p9QFkpaAmGLS5CmixLq0DHfv3uc1UK2BImhEk8wWEC6za+ceXgcKN6gUefWadWoGwZl2CmFP4e69h+zFkav/3PP9cOTIV3ja8AsrTJq/laveRWgYMa+FrQspJrp34uuTUFvTgIqKChz79piCfYiSatl/y5atmWayhmShpQchlcjmLVu5RLq6qhpTpkzVWO503Lh5k5XGhYs/4vyFy6wAyYtKTUln5qdrJ016g68hC3/q1BlEK96nzLpMn/YW6usJP6nBfq4AFFacrDS7wGS8CovQRSnkobHJHLxUUlZFkcm1P378e1ZYZFmpmKxXr76q4gpVlBfhMlWV1ey1fP31N4rSsTAeQGECKTWy2lJoaT7IsMiQpid7NZUsmLTHJFQW1RGYqGSgSMivXL3OniEpx169hAKlRkAuyaMseT995gLimsSrIapQNDZ89tnn/AyShalT3lQUnftuUHUvQNduPRSXz8NGG6q2Kyxii7NnrwAWaFASEwgPFSf/0ADy28XiqzUt0SI5CismZeCrdZn4+O0WuPRRNs5vzcJ377XB+a1tsXxCGi5vz0HzpCjMHZWED94kTS20NJUCkxVwgmJWRop/+ukqKisrUfio0G0nIE9MsdgNePr0WXEf7wVw+YdhD026X8JCPUUhbS2uqmWwiMpNCbCi9xRXU/EJpYvu3LmLVavXOON3xUvZs3efAJuqa7m2PD2tBTq074z+/Qdh/vyFjDYTOk/M+vTZU8yYOUsXCxLNMstB35PgkFYnq03MTQVH0xXXzmoT3ovWSxo2bDhbKhLOu3fu4+bNn5m5ybMhwVLdQo0wyHup1Lq29ikzz3q1pDpMUchijgYNHsL9kfIiPEKUqVpVCz1nzjuorannZ8m6CHZtV7/LtFdVVWDk6DHYsnUbzzWdMSHr3TMyWuDmzdvs/lNpOmEh0puTXtpHH20XoGt9A+bNF+ENNcpoyGzM5i0fqmtiuOZWJ+ZDOzvv3L3LW91pXZcpKUBZ9SoV26JFS3leSLFt+1DsiKVGJeAUChHN585dRExsnBMzUz2AEMyY8RZbfwq9tm7d5iwuszvBXwJXaY0J9Lx5S268E4Zj2LBX+F6SRZqb/gME9mFX6KQ1iIqKwanTIsQi/h069BXjsnitAsjNzecNL8bCr98RWN/wjFNO2rhChAEidp81PBmxUWFIjY/A+W3ZaJMRgz0LmmPqkCQcWNIcE/sn4Mi7rfFSbhMsGp+BtVPFAAfkxXMdgYhNnEi7TPvQASQErhC4QQrJiD4Cs8g9O3PmnKoN1cMUPGYCBEIqtfQnn+xk16uk9Am+/uYYu/qffvY5Dnx6GJ8d+oK9i/fe+wCjRo5FRoaSIqM/M1EUVUREFE6eOKlak9u37/MeBXpPAkx167///hcz6o2bP2PSlOlKDYCeLgnYZWZmM4rPAveENmQ9wajRotpR5rqlcpNMNH/+Ijx9Ks5PYFSY3eVqsX71TzFz1myncOj2dNi4YpCuJTedqtEkk5K3J/vftWuPki6r4RSZdN0liPXSSwPZoJACPPLlV8J6dejE5dqkmI5//4O68Yb4iWiUYNWGDRtZeVD78MPtOgCWaCSM5ocTJzk8IAU6aJAQAkk7MT0J2fDhrzoVh/aUaE0a167iDX3ZqyOFee/+A7Ru1UZXTSrlhABcWR06e85cVQFs2fIhz0VtbR3eW7/BqTw0BTv0+vnn5NpX8xxMmTpdoU/UOoQqynPsuAmswDjMOH5C4CLKvC5dupzDG8q+kEfH3p/CN5JGyu7QOpeWEM5Tjo6durgrACmzMhZt0yaLa44JSdSeB+B+8EYpazmyKDJ3q1aLWUOREh+J2CghsNOGJmHEcxQu2HFoeTqaRodjy6x0FHSIwRuDEjHjFcrd2rF5VnNkJEXxQDOaRSAqgpSKmDAJaA0Z8jJPyuPHRSzknhVAKTPAV19R7b5rmayXwz55HmyIiorD2XMXUFZeye6lPPTEZvNUlCNAUbKiUlE1S0zB1SvXxPZqttYU49fwolBe/uzZc9i9ex8mTZrCoJBkAm25qRR+qhG4desWI9Pktt++cxe9lJhaCoVwH0WKUmZzdu/axQAmWVZSGqTcyYMgGohRKW6OiY7V5K4daphx/fpNdlOpUTjEz7KHqwzaVwGLSbnQrsh316zVKCPxfALl6Hd6FuXdHfZQ7Nj+CSs9ik2HDn2Zr5s9a65Iz9U9xSsvD2cMRW7EIc9CxO8Ubop6FHpPSpeyITS/Dx8+ZkyG+mraJAHnz13g+ysrKpAv6ytcqhRlbYuVDkpR5pl2FLJlr67FP784qlZpOkvehWWl3aEMAlbXYsBAcewc9fv551+yS07jlSlJmjOBZ4Sr2REKEYgniJf7DxjI31O1rajREFaeCpDIABEtW7cKBSg9kH37DgrXvroOM2bMMkzP9uvXX6R/yyt5G3tiovBOjQqC1N2AMdFNcOHCjyirqOK4VJz8Y9xIi9c1PMPChUv0m4OUB5BQU2pwcB4dCWZDm9RILBxHqSAblk1MRresaGQ0i8SSCUSYFTktotCnE8V4spZZYWqloo+E45tvv2OBpG235KYJWsjlf+JOW/0zrF+/SQN8+E4FSteSYmdiXJq8u3cesGKUMbKu7JZcNk2ZrDN3bUF8fBIuX/5JzUy89dZsViSdOnZFamoGmihovVaRyENQtUz56vCRwtUjIKy2DhcvXVJBKYpLJSM7szJC2YWHRTKjkqCRMiecYsJrkxEVHcupR+qP4u5himso+xAxZlcUPiKlUcExbevWbQUDKkxMBTeUSiNGJ0+MhHeismNOKiSpSCj9Rcx6/foNTmtRfyTo+ziEFLH+mNHj+Rqun5g7D/v2H2QrSv1LYNGZfgxT03UCPKzC5ctXERNNGR8bwsKjeENQZYUAJqUHQHNFdAmB1FYf2lVkfcvmbWyVCbdZrQC2kq9liq95RksGeinseVxYiPbtRXaD2n6uAyHXvg6TJ03h78LDopQ+aKwWVvpEFykASuF26txVCPyKVbh06bJyVgP1dYCtP3lqVGgllVhMdBxjURUVlHqtUjEK4eE4vb8pU6axMqI+xP4P5wYi1/0XIVrNsf2jj/HHsz9RUVqJ6vIaVJVXc6umVlaNmvIa8X1ZNRpqnuLGlZto2iRRV2nEg7XYeSef2CFo4/P+CtqJM/9Gv5CAlilkSewY+VxTRISJbb90FJi8XwqD1JxDBw3DL3W/ovJJFarLapiOmrIapokb0yhoq3xSjd+e/oHRYyf4lQWQsS3lwkn4KcVGZyTK+81uXJFKgCyCRPfpIA6xCFYdEEiu2soVqzB92nQlTlUq0kJC8MaU6ezGkvBS27vvIO99197vbDT/zvw8pcEo/UbuH6WDBgwcol67ePFS1YU8rHXdFSang2HEaUui5eX1VO+ldCSds1BVXc1ZGAoXSRCpalIwqQhHhBdi5QwHCfz9+w+5gk7gNaVsCWWfVBFH3xOtBLCyV1H3lO+V/xblitFMmzadAUba4ETCIuveRfi2iy05GYuDBz5TDqlxzhllZ16fOAmzZs5GbEwTNW1KGS4SGBLiV14Z4QxvFSCaPvfo0ZPpZMXz40+IjyfeF/1T/YksMJI1F/RMi0V4iStWrBH4TXEpr+ftu/eR0KwZ0tMzcPfeA9RU16Nzxy5My+XLV9jLLisrV3fgCuPUlrML9D3NqQSNrXYnCEyf1659nxUZ0bJsmUjPaveJ6NOAmtLM7L65GH94BUbuXoARexdixJ6F/Dpq/0KM3r9IaYsxau9CjNw9D6MPLEJix9YqEa4Iu1QGTWPC+JgvEvQWyZHqe/ISqCLMcCsl0cVnC4agyxsD8dqRVRi5bxFGH1jMzyVaRu5bgBF75mPE7nkYsXs+Ru6ez9+P2r0Q8anivEG1Ak3bt2tGgJlLKJs5c+ejqqaeFcD6DR/oXUhP5cSa76S1oB2JFEOTBaddgkuXrUCHDp3Zw6BFpTwvxf9cHVZdjdZthKUlmue8PY83pHB6s6gE9+8/wOKly9kazJu/iBUKNQLa6FraDCMtFr0OHDQEFZVVKK+oxLfHjrO1lczRvn0H4eExyFTBVYrae6n6jcIo+p08hbPnL2LuOwu4IIcKkH799Tfs3XcAV2/cYkVJ2Q+RJnRaGRm+vPvuOgHwKedLkGBv2fqRYEglpqVx373/QDnPQSgd8uKoEs7dfVfSdVtlvF2LmbPm6FzkQYOHMkBb+Ogx00+Vcv1eeImtJZXWklInBfHXH3/hxRf78z3p6c1x/cZNXqei4iK0a9dRFzPLuaOzAcj1J+VCCl47b0OHvKykEB+jpLQUS5atQH7PXmxQCBCmTNGNm7dx6dIV9lAeFhYxiEv9kGK4dvUGIsKjkNk2m5UgKRkKF4k2kWkIwUv9B6KiqpoP7jn+wwk+sEZubGJFqYQtR45+wzRSmDBy5GjnWFxlQK0DoC+o3j7MjpDp2QhZ3AUhCzojZKFsnRCyoJPy2lm0eZ0QsqIbrC+2EJsjbAbW0Ju1NChL1DexWcTqCIN1akeELO6MkPkdBQ2LOiFkMbXOCFmkNKJzXkeELOmCkCEKTabQf+E2Swuya/c+VFbWsms7+Q2RvmIvwM89/WQJP965m0t2SeOTN0B5259v3+MFJMGgNB65jFQGS/MnYv5e7A6T8BMjkCCSQBLTUgaGwhtZAkxI/R9//JvDjfCIKFWRz5w9h89JIEu/cdMm585ExTshEJMsDtFE26mdzC72ERw7/j1q6xvwgGohSpVy1vpn+POPf2HTlm149dXRqK17yq4oudwSbHVW8QmBGTN2Aqpr69ltplCksLBEDWGEx0VxdSyfNUGW9f79Qg4tSQk7LbBzuzH/BbwtFKdOnhWptJo6DFLr5MUGJ+pz60fbOWtD80Zj5L39fGALZTbqeB6PHT+BRGV/R15+T66rIBquXr+BeN5XoMTMGs9qwwebUK0AgJRClc/lf7O2h+HgZ4fxlI6vV47Oo3WmVyrRra+vx5Chr2Ddexvwy6+/s4cmlEk1K4A3pk4TYd+IMWx8SHlRkRifiqV4IIsWL+M5J0/jw2079PG/ks5vGt8MV67e4PFSlqCHZp+JkZw59wKQFqESyz7NEfZeX4Qt64nQZb0Quqyn8l68hi2n1gvhy3oifE0fOF7vJJSHkTuseeX3LtZT94cYRgqCmCouGqELCxC2rBfClgoawmUjOqit1LQ1feFolcBjcUf/PbntzjCI3Cc6PotSgCp6KlNzJvpyhgFWREXHYNWqdxmoIsaRdfwkFGQBvvjyCFeoUXGQZLK+z72AKnbRqc6AtheLVlEp4r4ypT0pq0RxaTn3tXvPfl0F3dgxE5jJWUBkcRGfcus8/7G4tAy///EXn24kxuh0danijtzxBkp5Ut16dS0rg+XL17BSpp2RxGBUcDVf2afOSLbLZh+qSiNXl/YwVNc2YPacdzT5aLmn38JZFqrpp/6+PPKNKGoi5W9w/BUj/V8cwe9//Atnz19CAgNczk01Eqxbs/Z9pTqzgYFKUmDkEVHBEVnnhESxeYjoyczMYeVMmZktHwrBshmEHlQ9SAJeXlWDF/sLAJCBQmW85Ant2f8pqqrr1H0etHZXrt7EmLGvCW+2c3fcufuAeYGuISzgrdlvcyqXfu/V53kUl1Xi6bNf8fY783Vexrx5i5jGhoZfMXa89qQih+YEqDicOXsBv/35L3z73QlEKgVSnrZbaxSA8AKsYaGwzegC24qesC3Kg21pvtrsaiuAY0kBQlf2hGN2d+H+sxIweAh5BrSQ3LQCrnwnN9i4Kg52aaywpTdF6JICfqZ9WT7sywrgWJYPx9J88bpEeb8oD441vWEbkQ2rmvpzj9s9xfFaFHzEyLFsicUWV++nr3j62zG5f4EWqWWrthg77jUsXboSixcvY5SYwgF185X2gAqrnQuKqCqQdqENHDSUhZgUhWjDMGjQMI7rX+o/iA/BkIVZMmVFOxTp+759+2n+eNV5LgFbvYJemPDaJGXzjxbDEb9TUc6kSVOxcsUaTJs6A5mZ7VRFQdd37dodAwcO5ZScYDCXw0oUZUMhxTvvLEC/Fweyh6HbM68UviQmJnF4M/mNaUo9gUHoplmjtLTmGD16HOfutaGH67xnZbXnMl465IY29dB+AaEw5DbZUPH/eDyeXAwfPko3H9rTfTm9GxnNa0FZGHfaaO5JCTv4dxrz8hWr8eqI0apHIbMYVNY9a9bbfKpVdraoHBWnGlNfNvTq/TwGD3lFqZykbd2y1DiW974MHvyyIvj6LdRy7dpmZmPChElIT1dS1Br5cuVT/XZgFjoLrG3iYVveE7YlBbAtcVUAijAuKYBjBSmAXFjp3320XgANRGpvsuLUJwkTCSZdx43e03dWoXhcTmlRFUCreH4OCb59OQm/bIrgL1GEf2lP2N/KhTUmUjzTGsix1No96kL4TR8EaeDJqEeYefxPAWFd3BbFrzMAFGZ2UUTaZ7jSp93TIJhIPz5h/bR77Z0ls85Mj7Oi0eiMCNfnuAqq1vvS7/c32r+uXQMnbbzr08OpOJ7nXYB+2tOsLZrxeD6XQAinfl5d5s3wfAoBAoqzF+Q5CFoQVymx1gioc75cwWfX5xs3dSx8PJqBcXXNAugttiJ4PdNhW9MbdlIApAi0wq8oAPvyXrC/0UXPYMpffJELzuhksxjYuqXAOrA1rGNyYJvQDrbRObANawtb73TYMhNgjY5QFIHYxisr28iSW1Ni4FhZAPsK8gBEUy2/Ivx2Ev6lPWFt2dQZ+2tp8tbcFlqkiwwPQPFUUuwVG1DOrafdg8oZ785TcIz70Kb3fDUZ27v2o57j4AEHkRWWnqyDqPQUfZBHodv7YTW+36iJ9JukxXi+uMDI4Uxn+lK2siDJWTVpvAZMo9Kvmi71cFyYTTMe54EvLl6NpobAk2Fg5UMpYpoz+ao7qMT5LN3ZFZqmTe269i3Ho1tXw7Wl9KPv/6nQhwDqewVRfKEl7KtICRTAtljxAhQhtC/Kh31NH9heai0subT6ZNkdDtg6p8A+qaPwHtb0gn1tb9jf7QX76p6wr+oJ+5qesK8ugH1lPmwLe8A2Ngc28jykGyeLMByhsM/oCsfynrAvznOGARSGLM6HY6XwDmztmilgpI8/A/UjltfNTSP0J/d8Nyp9jT1WT30a/R4MXWoffnpY/8n5s/jRnz+0+aLT37GaWQsP/YZ4vYkscrdU2BcXwE7xNQka4QKL8mFb1YvDA7LwquDR9clxsL3RmX+3k3Cyt5AP++J88aoNJaQyoevW9WalYBuWBUs47WgjhUKhhRX2rimwU39LesC+MBf2JXmwU1iwrjds73SHtRVZfoux8De2sLv1a/Lvsv5uptV93wjHRgdCn/Y6Q7r8HGtjz53PebM3Po2NzXuBrqvfCkBVAhbYkmJgfzkL9rm5sK/oBduynrC92Q3WNgka4bfBmhzL1txOFp+EnZoUcl+Nry+A/d2+sI1tL8IHjYDZ+rYU16zpBdvyfNhmdmUPxRod7qTBbQyup9rq/z7LL4Y2bCasl6tQBLKARkwSbD+NSdP/Ctr0fxkWaF9Wt8+ez9PTvTccu/6kZlMnIJvgOfeCHg80mhijdwXAHQnLztY9LhK2tomwUpotPEzE+RItDbHDNqE9bO/2FtbeRcAdy7UxvMtv5M7L10X5cKztC1tButOqEx30rKZRsGUncqxvjVAEn0AbF+F3PwLcz390MWAC15RmIMdZO/vSAlpB/s2Urk9jwMf//twZLrC+3E+iNTpF1x9B0Aq5FqUPZNxWg34CnTNPvBfonOnnXp+RCGw99MrIiwIw0ibO479V5F5TtsvCmRAN+0LCCWTKzrhJFF/9joReXs/35nM6zz65k0bLGjxfpvqUa4JdOG8L6YlpVEY1ZV30YJspen32bcK6+HAfPY2xMefU1P8L+GGh3epLPPVjok+r2bGqc+jqUcpX/QnBPpWbSUvvmsL2f/69z7tvD8CVcJm7137HsX+Mki6kjIFvl9/VC9AqBI73p3SBheoLdEysqRtojDjN37H76i+YmM80Y5i0mo0RO3qbw2D7MKLX61g9MLKnuQt2LSzmx+uz4tXj3AXg/XmavwBbSKMxg90B+/QusK0W4KAv4feoACjbsK4PbIMyleyCRgn4osnThP9dwIzBdQEJZyALana8KqOZZLbGoM3sOujoa4T+jOY6kLWw+q+UTfflco9PD8bMmL3xnSuvuPRrTgEYEaXrUKkdyEkU2QEqIqI0ISuCfHMKYKki/Kt7w/5OHsf7ws33Y+KNBunjXp9us09mCKBIKBBFZIY5vN7vxYL6SZ/fezyCGaen8QbSZzBKw2KiX29rboZffNEXyNi98UzAHoAb6KIc202hQPtk2OflibQhpeqWyvSfpohIifupkk/NFJDbT/e82RW21Dg1xjcdKxswqRMA1DJucECPHjhyxrZekWeDhXMFdowAM3/pMv4uMJDRFbRz0hbo/HkGaj3On4k+3cGxwAFBiz9xtwkF6ewzGABaC2Lry9v9mjOFXu0ccdWhfwvoDmTpiFE8AWt8FOxD28A+Lxf2lVT801u8atsq5XsC/KjI562usPXK4OyCrpovCMYwYjQd/SYX0Qgl9o+xnPNnOG+NjLL7BMcMx+n+B6Pe5s/3uF15JZhsgmu/zpOezAuD5zDI6rcy8gQEGq+t/+urXQf3dQkkA6D/b0DnvIUEmw7TDZCYjFNyhNZbYYmOgC0nCbYXW8E+vh3s0zrDPrMbC7v9jU6wjcyBrU8L2FrEK/sJlP+g81TNZ4LZPDZP7nygrp+nvt0svetCmESHg6XN7xDBiLm9zJ+Ze1znwIc76vN+X56W13lzN2AWX30GMXdWX7xnwBfae73SFwAPe+I7LwogiAo33g+g7BDklJ2yEYgEm5B95RAQq0ta0avgW73R5JKVMNOCESRv8aNXOv2gzwydjdWPN8YKZu7+0+vhT3/Wv6G/xl4Py9/fl3kPIBAilL3hukIduWuQ71OUgWmL7/j/i8n+7r4s/2H6GrPP//Tc/R0CZWlknnPp09oY9PngnRAzwqW69z4e7hovu/VpWsg9x1jyObpJ89Cf62nAriGM14XwikG4Vmv5E4L4utZLys4PoXQHjwz60Y1Z/9faxutg0iv0yNxm59SbQBnR4Zler+69JfgqTFf6PPGVx2IoA8F3n0tXEDDATILKr873/w8iBKpv/RGafAAAAABJRU5ErkJggg=='; +export const chainsPezkuwiPNG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAADsCAYAAABdY7u7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAJnKSURBVHhe7L13nB11vf///MzM6dv7brLpvRFSIPQiEEARROyNYkO9V/QqXxuK13b92cWreOXalWsBRUUp0iIJJCG9bPr2fvbs6W1mPp/fHzPnsFlSNgUIYZ88Dtls5rSZeX0+78+7fYRSSjHOOOOc1mijfzHOOOOcfowLfZxxXgWMC32ccV4FjAt9nHFeBYwLfZxxXgWMC32ccV4FjAt9nHFeBYwLfZxxXgWMC32ccV4FjAt9nHFeBYwLfZxxXgWMC32ccV4FjAt9nHFeBYwLfZxxXgWMC32ccV4FjAt9nHFeBYwLfZxxXgWMC/00RCqJrWwU482DxnEQ462kXnmoEf+N/Hvh5z3xvdhJm/kN89CFjhBi1CuM82pjXOivMBQKG5s8efIqT4YMj2Qe5fvZ75EvzaN0RS6Xw/M7H3dWfYHrr34Duj4u9lc740I/RVEo5Kj/cjJHzIoRIcLt3M4WsQVb2ORlnoydBaHQUhrakI7/wQDfqPsGN7753RiGMS70VznjQj8FkUiyKkuSJANqgM3mFu6z/8gj3kdQSoEF0pSoqIIhAcMCvUMn0B+kLFtGaaSUCdYEvvfx7zBj6nQ0bdwV82pnXOgvM4WZ28YmKZP00MMAA+y0drJVbuOP1h8wNRM7bmMnbfRBA2+/j/JsOYEDAcrC5VRpVdTatUytm8K5K85l2ZlLCPiD+DxedG3cbB9nXOgvKwqFrWy67W726ftYa6/lUfUom9VmktkkxAWiS8AQhHaVMDE6kdmls5moNTO7fhZVpVVMnzyN+XPn4fV6DxK0QIwLfJwi40J/ibGxsbDIqRxPmU+xxbOFvfm9bGMbe5N7sSIWeo+B0eIhFCthRenZ1FHHjJIZTK+ZxhkLFlFfV48mNHRNR9M0NE0bF/U4R2Rc6C8BI0Nf3VY3j/EYa7W1rDZXs0fbgzVgo3Vq6Bs9eLZ7uWDCeZxTdw7TG6dzxoxF1FTVUFNTPb7WHue4GRf6i4yNjYlJp9XJ7+zfsUpfxT57HwPmIPYBG323jndrgMXqDN596TtpCjQxsXYC9dX1lIRKirO2EOOm+DjHz7jQXwRGhsTSKs2vs7/mHs89dFqdJM0UqgWMdR68z/mYGp3KXV/8DhOrmqmrqSXgD4wLepyTzrjQTzIKRY4cWZXlg5Fb+UfF37GkhZ2wkTsU3n/68W/0c8O8N/Klz/wnQV8AQ/egaxqacNbb44xzshkX+kmgECLLqzz9aoDfpn/Djz3/w4Dqxw5LjF6D0ofKqW2rY6F3AR9/30dZMG8BXo933JE2zkvCuNBPAnmVp0f1sFlt5m51N6vkKqxuC9UtqHiwkoXmQq6eeRXveMPbqKmqQRPPr7nHRT7OS8G40I+TQs55TMZ4zH6Mv8u/87B6mGh/FK3doHxNBfOT8zi/5nyuX/kGZk6bgdfrQ8C4uMd5yRkX+nFiY7M9v51f6b/ij9Yf6cp0IbZolG+o5JzMCi5puJhLll3CogULx83zcV52xoV+jJiYxO04fxJ/4o/mH/mX/Bdyt0JfbTC9dTpvP+PtXLHscmZMmkHA7x9PQR3nlGBc6GOgUO8tkaw31/O//C+PaY/RM9yDeEKn7JlyrvSu5MbXv4cz555JeXnZuPd8nFOKcaEfhULBSVqluU/dx7fVt+m0OzHX2xj/Mpi0ejLf/sw3WTh9IVUVlXgMz7iTbZxTjnGhHwGJxMRkv9zPrdatbNQ2Yg1a8KxG8Lchvnj1F3j3m9+F3+PH43EEfkqhlPOQ0vnzaCiFUoritxDCeRwGBVDwP4xbMKc040I/DBJJhgw75U5WspJ0Jo3crQg9UkLDv5r45Vd/xhnzFzmtmjQN7QiCeFlQCmXbqHQa1d+PME0Ax+s/+ljAikZJPPoo2ZZdaENhqm+/HaOx8QUCdu4Whe2KW5WVoVdWIrze50U/zinHuNAPgYlJWIZ5gif4cPbDpGNp9PUG9asbuZRL+cg7P8T8OfPweryjn/qiowqztBCIwmxt2yjTROXzkEyiursRySQqmSK7dw/mT3+KLxxGut1ANcByBW8BwueDyZOhoQGEQNuzB7OnBy8CWwg0nFleA2wFHhRJQOg6uXPOofINb4DKSkQgAOXl6E1NqGAQ4fOheb2g60XrQOBaCuO8pIwL/RDssnfxK/tX/Lf8IanBJN4HfCw8sIh3L34316+8jrq6upel3ltKSTIaRebyhCrK0UwT0d6OvW0bYngYolHo7MR+5BFUXx8AllLEARNIIEgDWQFxBAqICoEnFMIzdSrBxkYwDPItLSSHwtQIjaFkkoBt4wGCKCqVIqjAhyIIBAHDHTRsTcNsbsb7mtegGhuRlZVQV4e2ZAmishLbMPD4fHh9vpf83L3aGRe6i0KRJ882tY2783fzF/kXEhuSeNd5ubjjEm69/oNcuPwCfF4fuq6PfvqLi2uGZ/v6iGzdhhrop7a7Gy0WQ+zdS+7ZZ5G5HAmlyCpFWCmGECR0jX7dIB8M4q2rIxcKYXo8lDc30zihCdvrw9Z1dJ8PGQzS2tpKR0cHZjrNReeeQ0V5OeloDI+U6Ci8tk12YJDBAweQ6TTlpkm+pwd/PE6NbVNj25RKSakm8AqBJjRy5WV4Vq5EzppFqqyMmG7gXTCfSYsX4/H7R3/TcV4kxoVeELnKs0qu4i5xF09nnib5dJLQn0t5S8Obef+172fRgoUYhjH6qS8ehcuiFCqfR+7ejb15M3YqhRgexvjlL4l0dmIB7UKwR2j0CkG7YVC1aCGhxiYmzptHaNIkggE//qpqAsEAuuGhrqGe+vp6fO7MqpQinU7zxz/ex0MPP8xFF17AW9/6VsrKDg4TSikZGhqit6uLTCaLZuaJDQ4i4nHyg2GGWloY3rkDtf8ATZk0jVIxSdeoaGzEP3UqufJyOoaH+Ud5Obf86EdU1Nc//33HeVEZFzqQIcPT8mk+b3+e7f3bUWsUEx9p5otv+SIr5p7NhIYJL23LZNsGy8KKRMj95jcEnnkGmUxiT5oEs2cT1XW2P/QQWzZspLuslJoVK6hobiZYXU3TrFlMnDIFfyhEeWUloZKS58N9I/LrR2brKaVIJBL84Q9/5NFHH2Xq1Kl89KP/Tm1t7QusFyklSkrXoe9485WU5LJZEtEoyeFhzGiM9u3biHZ1Edmzh4rBQWY3NFCDoKuzg/+Nxfn6Y/+kfuLEg157nBePV7XQJRILi61qK++030lndyf2320Wb13MV97+Fc5Zfi5Bf2D0004+I8Ngto1MJMj9+Md4/vQn7N5eUvE4/SUlpJYsYXjFCuIVFbTs2k0kk+HDn/wEgbIy/H4/Hq+XQCBwzIOSUopoNMrvfv97nnjiCcKDg/z4xz9mypQpx2XFSCnJZjLkcjmyqRThjg5WPfh3hlpa6Nqzh7nXXcstn/wkZRUVo586zovEqzb4WYiRb5abWWmupLW7Fe2PGpdsuZQf3PoDLlhxAX6vb/TTXhykhHweuXMn+Y9+FLl0Kfo3vkFk927+lkjwQ8Pga7rODwyDbV4vg7pOyfTpzF6+jIlTp1JfX09FZSUlJSXHLHJcoSt3ZkYpstmsM3Mf5xygaRqBYJDyigpq6utpmjWL0PRpPJNKUnvNNbzpAx8gVFIy+mnjvIi86oReSGVNqiT3Zu7lsvxlZPZkCN4f5HXdr+NrH/oqi+YuKtaKv2hICaYJkQhq507s738f8/WvJ33vvbRFo9wrBF+qqeHBGTPouepqvvTUU/z3b37D2eedh+7xoHsMTNtG03XncYLtpmzbxrZtd83uhvFOgMLyQAF79+9n1Zo1WEpx3oUX0DhhAtpL7dB8lfMi3smnJgpFlCh/ln/mds/tZFuyBP8c5C2Zt3Dnh+5k4YKFeAzP6KedXJSCbBa1Zg18//vISy4h8aUvsWVwkJ8qxV3z5rHukks47847+e9Vq/j+L35O85QpBIJBJjY3F51kbW1tdHZ2IqUc/Q7HjGVZmKbpZLsd31hxSIaHh/nrX/9KMpEgGAwSDAbHC31eBl41Qi/Uj7fTzj3yHu6w7yCxJ0Hpr0u5qfom7rj5DqZNmfbi3YTuDK6Gh5GPPYb9s59hvfvdDH/3uzxrWfy6pIT7zz6b6E038Z7vfIdv/PKXvPFtb8MXDGJ4PMVZu6GhgVAohKZpNDY28rvf/Q7btk94BjZNk1wuB0qdlCw/pRSWZbFnzx7a2tpIp9OUlpZSVlZ2UgeSccbGq0boEkmbbOO/5X/z7fy36dndg+d7Hm5fcDt3vOsOmuqbXtSZXGYy5Neswf7ud1G3307uU59i/cAA/y0lf1y4EPsTn+ANX/0qd37nOyxZsYJgSQke7wuXD4W/a5qG1+tleHiYfD5/0DHHilIK27aRUhbN/xMd7JRSmKbJM888g23bmKbJzJkzaW5uHn3oOC8Bp73QC7uhtFqtfCv3LX6T+A2RnRFKflrCpxZ9in97+78RCoRO6ixTcGxJy0JmMthdXZg//zl87nOkf/hDNu7bx397vfx6xgwCH/84b/nqV/nAhz7E0mXLXiDs0YwMjWmahq7rrFq1avRhJ8SJiryAbdv09fVhWRalpaUsXLiQ8vLy0YcdNwWrwTRNTNM8KUuY05Uj31WnARLJkD3Ej1M/5l51L+F9YfTf6VwfvJ4br78Rn+FkurlZ2CcHpQj39bH/iSeI/uxn8L73ob7zHbo2bOD/Mhl+4Pejbr6Zd/3oR9z4b//GWeedhz8QGFMoSwjB7Nmzi9VyZWVl7N69+4RN94Ln3XHGndhr4b5ePp8nGo2Sy+Worq5mzpw5L4jLHy8FK2Tv3r1873vf409/+hPpdHr0YeO4nNZCVyiyKsvdqbv5uf/nJFoT+B7wcY26htvedRu1NbVHnUGPByuTwV63jon791MSDhPbt48nhob4kc/HzvPP56af/YxbPvlJlp51FpWVlcc0g2qadpD5axgGyWTyhMJhuMI5mTOiUopHHnmEfD6PaZpUVVUxY8aMk3K+C581Fotx9913s2HDBp577jl6enpGHzqOy4mf9VMUhcLEpMPq4FvBbxHvi2PcZ7Csexm3XX8bs6c/PyueNNx4uPXss1S1tODN50n5/Wxctoz/Ky2l6tZbueOXv+T8lSuprKnB667Bj+UzCCEwDIOKigo0TcPj8WAYBhs3bjwhoeq6PiaLYiwUhLhhw4ai2b548eIXbAR5vBTW/9/85jfp6+sjFosxODjoOBPHOSSnrdBtbPbKvVxgXkAmksH3Vx8X9V3EF2/5ImctP+vFcbwlEpiPP47nu9/FfuopwqkUW3w+ts+bx5kf/Sj/9ulPU1FVhe560I8XIQRLlizB4/Hg9/sRQrB+/Xosyxp96JgQQqDr+kkb+JSbOx+JRLAsC6UUjY2Now87bqSUbN68mY6ODtLpNMPDw0yePJnJkyePPnQcl+O/205hLCw6VSc3mzeTEin0x3UWbVnEp97xKVYsW4GhGyflhi5iWdDXh/zZz7A/+Un6V6/mHwcOcM/u3WxXCr28nJr6evoHBrDcpJQTpbGxsThgFLLhTsR093g8xRm3YGUcz+csrJ0ffPBBTNPEsiy8Xi+zZ88efehxYVkW7e3t/OIXv8A0TbLZLCtWrODWW28lGAyOPnwcl9NS6AMMcJe8i936buzNNvV/rOfmS27mwhUXvjjNIgYHUd/9LubXv86+/fv5hWXxYGUlvpkzKauqQmgaAwMDPPjggxw4cGD0s48LTdOYNm0aQgj8fj9KKbq6ukYfNiYKrxEMBhFCUFtbi8dz/BZPLpdj27ZtxWy7mTNnnjRv+9DQEL///e+JxWIkk0k0TePWW2+ltrb2pC09TkdOK6Hb2CRIcK+6lz/wB/I78pR+p5TbVt7GW69/6zGvh4+KZaH6+rC/+lXiP/kJz6bT/La0FOu663jr5z/PB//937n00ksxTROfz0cymWTPnj3E4/ETWk8XZt2ZM2diWRaGYTA4OMiWLVtGH3oYFEpJt/rMBmVjGFBealBWIrjqykupKA8hhEIp2324x7tbQB+JdDqNaZpFoV9++eUn7G0vrMvXrFnD/v37yWazhMNh3vrWtzJ58uQTWgq9Gjitzo6FxYM8yE/UT+jt68X4lsHXXvc1bnn7LQR8J3mXUimRkQjyk58k/Mtf8ng2y/+VleF95zt52+c+x2uuuoqS0lJqamqYO3cuuVyOsrIyenp66OzsxLbt0a94TGiaRm1tLeXl5cU19gvFpNyHLD6UsjBzcVKJDjKJfeTT+8ml9mOndzG7uZMbVsL5C/eh2fvIJvaTjjmPVKyVTGoA28od9HrPv8fzA0Aul0NKiW3bZLNZZs2adYjPdmxIKWlvb2fDhg3EYjH6+/t55zvfydvf/nZ8vpeo+OgVzGlRplrou75BbeAO7mBVZhXq+4oPyw/zhY9+gWDAya8+KSgFto29fz/q//0/Ek8+yZNC8PjEiSy++WauetObqKuvx3BNX9u26e3t5a9//WvRWVZRUcHVV19dDK0d7wBk2zYbNmxg27ZtpFNJFixcwEUXXoTQBAIJyiSb6iSf2oVPbkaYe5Ayhy5MlMojsBGAEh4kldjSQAgblT+ArnsQwnD6uykwLYHCwOPxYXjLkKHXkc5XonknUlI2EYQOwkApjb6+Pr75zW+yb99+zj//fD7+8Y8fV1VdAaUU3d3dPPDAA6xdu5be3l6qqqr44Q9/SEVFxQkPIq8GTguh29iEVZjvyu/yffV97Pttpt07jT9/+8/MmDzjhMR0EEo55vqOHdi3387QunX8XikemzmT//ja11i0fDnlo2qslZu9tXHjRh5//HHKy8uRUtLc3MzKlSuLXV6OBykl8ViUJ5/8J1ZumLrqPHPmn0tN7RRU+l/kwr/BozqQdhqhUiDTICCXF2SyAp8P/B7oHfJjMolgWRMlQZ10bDfxWA8aNmUhRWV5oRmsM3MLoaO0CqQykPiQlGEZS6DkKozgPDZtWsuDf3uIDRt3cdd//4jp049/RpdSkslkePjhh3nggQeIxWL09vby05/+lNmzZ5/QAPJq4rQQeooU98v7+bf8v5HclGTiDyfy23/7LUvPXIrXODmxW6QEKbFWrYI77qBv+3Ye1DTWzJzJN//8Zypqahwv+CFuaKUUmUyGtWvXsm3btmKSyznnnMO555573CJQSmJbGRJDWyC3HZ/owmf/C6wulDSxbEksIekdVJgW9PQL2nsNsnmdTFajq09jOKFTU+Wjtm4CureGWBIS0VZ01U/ILwAnJl5RpmiqU0ybKJkxyaK63ELTFIam0HUNTdMxVQ0pOZOhaJDOXotVa/Zy+xcfxO8vR2jHF+kwTZOWlhbuuece+vr66O7u5q1vfSs33ngjJW73nHGOzita6AqFhcUGawPvtt5NZ28nnu95+cTk/+BD7/oQlZWVxy2iIk5xNqRSqFWrML/+dYY2beKPXi//WriQ7/7yl9Q1NqIbR76RpdtvbfXq1fT09KCUYigS4SMf/nAx+eXIuJdJWSg7ATKOkmnszG40cw+2qMTMxxnqfozIwG4Ghw12t/tIZvwMRT30DflpmDiLc885j9LSKoIlpUybOo3S0jIQgngsxl//9iDr1q9n+bKlXHvt6yktKUFK211z20QiYQYH+ujv7+WZp/9CVckg05vzTG3MUFuZoaKyDm+gGU33oMkhRH47w+ZF+GrfRrBsFkqU4PFVoOkehNCPWg8rpWRwcJB7/vd/2bFjB/19fUyc2MznPvdZpk6dOu5lPwZe0UK3sYnICDelb+JR9Sihv4a4dP2lfO6Wz3HG/DOOKLwxIyWk08gHH8T+5jdp27WLPwId55zDf3z/+0yZPv2oIi+glGLLli0899xzWJaFbdsYhsFNN900hmQVCTIB+f3kIg8iUg8i873kbYO4dQ5pcTaRmM7mzRtp7YhTXTuLqdNmMn3mXGpr66ivb0DXjUP0VXfi7/l8nr/97W/885//5Morr+Syyy4jGAggNO35QaYoTYUCbMuku7uL/ftb2LzhMeqrFdVlearKklQF9tJQ3o7fJ8mbgoFICTnjPOqmvAFPaD6hsilo+uFDnYUlzzPPPMM999xDNBplYGCQz3/+DlauXHnyIyinOa9YoUskOZXjh7kf8kX1RXJrcpz11Fl85aqvsGLZipMTL1cKMhnMe+9F3nUXffv28XePh5Zly3jff/0XsxcuxGMYrhjGRi6XY9WqVRw4cMDxh0vJ+eedx7x589A0bdTM7oS/lEyhstshswYr/gjpeCuDEYvWTkFvpATTOIeK+rPJ5uHAgU6uuGIlCxYswuv1oGlH7z6jlCIWj/OXBx5g9eo1CAF3fP7zNNTXH9EiUm4hjBNGMxkK9/PQP+6jp3Mb1SVhzlteTia6ntqKNBWlklBAkbPKGc4vw195Gb6K86momgTCcGf457Ftm7Vr1/Lb3/6W/v5+otEoy5cv59Zbbx0vdT0Oxn6HnkIUSk//nPgzX+JLZDoyVDxWyVUTr2L54uUnNb1Vdndjf/WrDO3Zw1+kYuvChVx3++3MnDfPySQ7BpEDeL1ezjzzTKqqqhzhKcWTTz51iFx1hZIWMrUGIt/D6v8isY7vsX37Tv7yWJ6f3u9je89l2GUfZPKcNzNx0kKECFBdU088nkQIgcfjxTCMo85+SinyuRz5vImmawwMDJLLZo+aaSfceL6Tihskl1cMRRX7OgT1M26mdNKdxDwfoz3xJlZvqaCzV+LTh6gPPIzZ+2kyPV8h2vVLzHzyIKtBKUUqleL//u93DEUiDA1FaGxq4h3veAdNTU0HfYZxxsax3aWnCApFREb4nvY9MmYW7xofS3JLedPlbyrmfp8ISkqUaSL7+pCf+xyRgUEe9flpO2cFb/j4x1l61ll4TyB2W1VVxdlnn42ZNzEMD7qu097ejm1bzg2vsljxf6EGP4018BUGWn/Bpq37+cMjAf7vkQno1bdyyeu+yrVvvp13vPO9XHjhhUyZMpmKigoC/gAbNmykv7//mJJypJRIJdE1Hc8xFp8ot1305s2b6e7qJpPJsuTMJUyYMIlLV97Cmed9gmlL/osB9RH+uXE+2w+U4vNpVOoPo0e/RWTf7bS3/IxseggpLSzT5KGHHiaRTGKZFn6/n+uuvZbZs2ePwZdx7BSsEulWAB55eHtlcvLP2otMobnjN8Q32OXfBdsU9dvrueU1NzN5wuRjukEPhZSSTCxGeuNG1G23YT3yCJuFYNeiRVz72c9y7mWXUV5eftw3XMGEbmpqYv78eZhmHq/PQzabZP++FpSdwo7+DiJfRcbuo6VlF//3d8HvH6lDlr6HN7/ne1x5zQd4zeVvYPr0Wfh8frxeL2VlZVRVVaPrOkopWtvajknoQgh0zYkaeI/qLzgYKSV9/f3s3befVDpFJpNG0zR0w4m7V1ZPZN4Z1zBv2UeYd+53ENWfY92u6fQMCAKeCKX2A+jRb9G+/RvEIgcwrRzbt2/Ftiyi0RgzZ87ioosuwhijL2SsKLfKLpVKsW3bdp577jmi0ajTDfc04/ju1pcRiWRQDrKWtWQGMnjWeJneMYOVF11xwl5YJSWD3d30PfUUasMGZGMjm5on8bfZs7nuzjs569xzT0rhRMHkPeuss0gkU3g9GhPqLKo9f8Pufjdm/7fo7d7D7x7ycfd9Ewk1fYhPfPZe3vbOj3DG4uVUVla+YKAxDAOP1+ktV9/QgGUeWyWbUgqEW67qOTZB5fN5Ojs6GegfIJvJsXjxmZSUlh70GYUQlJdXMHnqQhYseTMXvO5XPLP/bfxjTR2JtJeasgiTyh5Ghv8/tj/3v5i5CJlsmjPPXMynPnX7ScuVH4lt2/T39/PrX/+G//mf/+Hb3/kev733/4jFYqMPfcXzihO6icn94n7acm2oHij7Uzl3fe37BAPBF9z8x4yUeKNR6sJh/Lkc2YkTCb/tbXjPXsGC5cvc6q4TfA8XTdPw+/287rVXEw4POeLXy0llA6zdavHDewMMyvfwzbse4t03/hv1jZMpL6/E4/G8YM0t3Bp14d68Ho+HnTtbiqboWFBKIRAYhgeP59i+ZzKZpK29Hcu2yGSzvOG666hwU3MLFAY3Xffg95dQUt7MW97zFS647iE2dN/Ixr3N5OxyyoMJZtZu4MpzYlQF27n9kx+lvu7kFqwUPPoDAwP84L9/xOo1zzAYHqKvvw/LtI5pkHulMPareQpgK5sN5gbute9lIDmA96d+vvjB/2TqpClox3BjHhalCEWjeLdvJzY4yHO6QW9pKWcsXcLAYJhsNusWdpwcNE1j1qxZXHrpZfQMwK62ABv2LeJvq+dy1Zu+w60fvA2/P4RnDDOspmkEQyGnnbKuI6VkeHh4zEIXwjG1DUPH5/Ohac4WTmMhn8+TTCRQShEIBhzL4kgOQFf0huGlvLKBldd+momLvseBwbOIxIME/HkWz9jN21aGScd2YFm5MX+Po6HcUOLuPXv5ylf/i9a2VuKJOL29vUyfPp3LL7+M0tLS0U97xXMS1PHSYGPTZ/XxM/NnPJd5DuNBD/MG53HDtW/AYxzbmvKQKAXRKMaTT5J6ahVPr1vPur5+slKSzeV45NFHWbPmmYOaKZwoQgg8Hg8zZ85kYvMM2nt0eoZqmDHvcqZMnYNueN0UzyOIZgTTpk5lUnMzHo+Huvo6nl69GnuMraCFcAYLXTec2bOwl/lRsG2bSCRCX38/+bzJpOZmykpLj/p5hRAIoaFpBkJ4qW1chOW/gtVbq2nZm8DOD3LWggyq/5P0tf6BVLwNJcf2XQ5FYT0ej8d5bsMG7r77xwwPDxONRknEE6xceQV3fPYzzJo188Qtw1OQV8w3srHZwhbWqXXY+yUl68q480OfJxRwepyfEEqhTBP11FOk//BHnmpr45FkikBtLeUVFSSTSSzLomXXblavXkN3d/dxd3MZjRCCQCDI1GnTMTwhcnmBx+Onta39mG9qXdfxeAx0Xcfr9dLa2oZpmqMPOzQjKuA0TR+TyJVS5HI52ts7kFIiBFx44QU0NDSMPvSIpNNp9uzZT384S8/wFLZ3LGJP/3LCw4K68h58sTvp3PEtopG9KHV8VX9KKcLhME888SS//e3/MRgeZGBwkEQ8yZve9CZuv/2TTJ48+aQ7/E4VTlAhLx1DDPFP45/szxxA32Dw1oVv4azFZx0xoWPMWBZs347105+yv7WV1VXVnP3ud/OeW27mypVXMG3qVFKpFKDo6e1l3fr1bNu2nVzu5JiUmqbR1NjI1GlTkUqhGzp79+5l67Ztx2Q9aJpGY2MTpaWl6LpOMBhk7969Y3q+oGBOOzP6WG72gtC73ZRevz9AeVn5mK+JcuPla555hvvv/xMPPfQIwWAJl155K83z7yAT+AA94RDloQwV2l/p3fUVYuFtSNsc8xJKuaGzAwcOOO/x8CMMDAwwMDBIY0MDH/rQB7nxPe8+5kjDK41XhNAVir1qL3+Sf8LqtqjeUsObz30T1RVVJ15+qhSqrw/ru9+l59lneVDTaHz961n5husoKSultraW17zmUmbPnsXw8DCmaTI4GGbTpk2s+te/xmwaH4mCM23KlClUVVUhpcTr9bJ9+w7a28c+s2uaRkNDfXGzxaqqKvYfaB192CFRytm8weMxxtzEUSlFJpNlODKMaVrMnDmDqVOnjtnCklISjcVYvXoN/QMD9A8MUFpWRmVVLU3NC5iy4DaM2k/Q2ltKVVmGOt/DDOz5Cul4K4yhCcbzIm/ld7//A6vXPENPTy+tbW288x1v4+Mfu423vPlNBAInnntxqjO2K/IyYmMzYA/w28S9dGe78azzcrH/YpoqG0/84kgJuRxq7VrMhx9mJ4LIWWdxwQ1vpKqmuuhQKisr4+KLLuKcc87Bsiwsd9OA/fsO8ODf/0EikTgmD/fhqKmu5txzVlBW5jiDhBCsf+45MpnMmGPiQgg0TbhONWcnF+Wmqh4J23b2PXcy6cZ2XpVSbNu+HenOrg0NDdTW1ozpuii3Y8xDDz1MLBYnkUxQVVnJtKlTiwON119C04x3Epr8/9EaPhvDMGgoeZbh/Z8kGW9H2qbjWzkEUkqy2SybN2/hZz//Bbt27WZoaIihyBD/8fGP8aYbbmDhwgVj+qynA68IofeLfh7wP4A8oKjfV891F15LQ92xrQMPiZSoaBTrzjvZk8nwVHk5C667jnlnLCoWmTjC0SgtLeWC88/jda97LX6/H8u2USh6urt5+JFH6enpPWGx67pOfX09U6ZMweNxMubyOZPHn3hyzEIHqKmpwef14TE8hEIh2ts7xvC5FJrupLOO9eaXUhUr8UpKS6h1S3WP9nzlOsZaW1vZvXs32VwWy7K45JKLmTdvrmsRCITQMbxlNE19LZXTPstA5gJAURdcR/uG99Dftw8pDzbjC7N4JpPhF7/8Fb/45S9pa2tjMBzGlpJPf+p2Xv/6awiFQmNeopwOnPJCt7D4rvVdookoYr3GeTXnsWz+khMvWlEKTJPM664h1dXFPw0vxsqVXPXG6/EHAqOPRtM0fD4f06dN47VXX0U+n8cyTYSmMRQO8/jjj7Nr1+4TNuU1TWPRwoUEAn4MQ8fjNchkMmzfvmNMryuEYMrkyYRCIXw+L6UlJbS2HhjTQKFrTstnXXc7yxwB5cai47E44GTVBUNjSyZSbojrD3+8HzNvks/mWL5sGa+/5nVuaO/521IIgW54qW1aQvnkzzCYXo5tC6bW7qdl1RvZtfMZbOv5veeUUgwNDfHlr3yFtWvXEg4P0dfXx8QJE/jut7/JFZdfTuAkpEm/0jhlhV7Y/TRmx3hKPIWM2gR3BDizYvGJNwNUTqcYuW4dxv599CpF4szFvOW976Wuvv6wr12Y3RsbG7npxvdQUlpCNpNBKkUqnWbtunVs2bKFVCp1QoLXdZ3zzj0Xy7LRNR3bsujt6yUWi41JsEIISkqcGUvTNGKx+FGjBAoQmhPu844hbi+lZNeuFnRdQwiYOHECs2bOHH3YCyiY7P/852Pkshnypkl9Qz1vfOP1h+2241hWHuoaFxBq/iyR/BIMj8aZs6IMtNzO7h1PYVl55zz19vLDH91NX28fyWSSvr5e5i+Yx1e+/J/FrawKS7JXE4e+o08BFApTmfwi9Qu6VTeiVWPe0HzOmLXoxC+UUo7Jfttt9No294VK8CxbytRZM4vm+uEoiL28vIJ3vP3tzJ49GyUllmmSz+fYuGkTzz23gXA4PCZRHgpN06iurmbZsqXFUFlkKML69evHtL+Y5jaO1HUnLdbr9dLV1T36sINRCk3T8BiuM+4IAbaC6d3e3lE8H5UVFWNq0mhZFrt27WLr1q3k83mktLniisuZPGnSEb31QgiEplE/YTFWxaeJ5hbg98OZM7tI9PyEvp49JFNJVq36F93d3USGh+nq6mL5smV8/Wtfo7bW2X7rSNf2dOaUFnqWLPf470EOKMqfK+PSeZeweNHi0YceG4XZ/IEHEAMDbNc02qdO5S0330zgGPLYHYeXwaWXXsJFF11ISUkIM29imRZ79+7h2WfX0tHRcUzhsZEIIZg+bRoTJk5ASptgKEg8nqDLjeEf7TXr3Vpyj+Fs2TQ4ODj6kINQgCY01+vuOZrlTj6fJ51OI4TA7/MxZcrRrSylFL29vax55hmyuSypVIqzli/n3HPOOeoA6yAQwmDS1LPIl32G1v5JePw1zGxO03fgPjZvXMX+/ftIJpNUVVZyzTXXcOedX8Dv9x/1s53unLLfXqG4P3c/ffSheiXTYtN405U3UF52gsUNSmG3t8PPf05fLMZDfj8XveudTJ8x45jzqTV33T5nzhwuu+wy6upqyWYzmKZFX18fzz679rh3OhVuyG3+vHlOS2cEQhN0dnQ4FVZHeM2CaLxeL7ruiNfjOfJ3M3THS+/xevF6nXXy4YSnlKLNrY4TQuD3+5h0lBlZuX3ztm7dxnAkQiadYfr06dxwwxsPa7IfCue7GTRNPhdR9TH64zMJllRQW7qP/Tvup7LCz1VXruSjH/0o/+/2TxIMnoQaiNOAU/YM2Mrmp+KnWLaF9zkv03PTmTN7zolftFwOfvc78q2tPK3r7Kys5Jo3v/mozqcjoes6TU1NXHzxxZxxhtPCSilFKpVk06ZNbNq0GdM0jyjOwxEIBJg5cyamaeL1eEmn0xxobT1qso4Qgrq6WrxeL4FAANu23eXEoZ9TKHUtLyujurrqqIPewMAAhqGj6xoTJ06kqqpq9CEH4TgUt9Pe3kYunyeRiHPDDW8s7g5zLAgBQmhMm3M1MftCYkkvdRUJZjW1MGuSxTWvW8mCBfNP/F45jTglz4REEpVR+o1+7E6bim0VXLbssjEnchwWpZA7d8KTT9KVTPKEYfC1//kfgifYTVS46aN1dXWsWLGCCy443y2AUWSzWbZvd2qdjybOQ6HrOg0NDcyYMR3btvD5fAyFw8UZ9Uiv19DQgBACn8+HbdsMD0ddI/1gpJRomiPYWbNmsWDBAuyjbDChjciiK2wNdbhzqNy+7Fu2bCGdTpNMJLj55ptpamo6ZjEqpbBtiW1LwkNxpGc+u1sFdraVWRO7sWL3Y+UGxxTmezVxbGf5JSJHjk9Yn6DP7EMP69QM1HDZJZcd0UF0VKREWRbqwQfJbtzIM0LQPWUKZyxdetLiqUIIAoEAs2bN4i1veTNDQ0NIKbFtiz179rJ69WqGhoaOySPvmMZ+5syZw/Tp0zFcZ9nu3bvJZDJHfB2v10tVVRXl5eVMmDCBqqpKbHf3lFwuV/wcuq5TWlpKY2Mjzc3NTJ06lYqKCoQQxePj8TjDw8NkMhny+TxlZWWUlJQwadKkotAPhXT3MS9so5TNZikpKWXmzJnHLEbl7tL6wAMP8OUvf5m77voBz67bSeWE69nf20jQr6gr6+D+3/+ARGJsEYpXC6ek0Afzg7RpbeRVHv1hnQumXEB1ZfXow44NKVEbNyKfeopYJsNmj4e7770XzQ1BnSyEuzaur6/nox/9KOl0mmw2Cyg6Ozt56qmn6OrqGpNDrUBhVi4tLcXj7odeUVHBunXrUEfIehNCUFNTQ1NTE01NTVRWVmIYBn6/H5/PVxRawSIpzNCFZJ3C7wvvXVFRgdfr5C9MmTKFuXPnMnnyZHS3q82hPovtNncYWQj0zne+g7KysjGfd+XG7CORCL/4xS94/PHH6enpobW1lRkzZzN7/qXUzfoc6/cu4W9PemjZl8K2D31OXq2M7Uy/xKyT6+iVvchtEs9mD7fceAtezwma7aaJ2LqVXEsL6zWN8IQJ6MV2xiefgjg/8IEPMHPmzKLZnkqlWLVqFbt27TrqjDwSTdOYNGkS9fX14HaU8Xq97Nmz56CZqyC2QppuSUkJgUCgGFM/nnNYGAwKwvf7/VRUVNDc3ExDQwPRaJTh4WHS6fRBA5hye8lt374dXE/9ZZddVhwcxoJy4+779u3j17/+NS0tLaTTacLhMBMmTODiiy/G4/XTMHEFlVNvp7z5g3zi9i8X96Qbx+HFucuPE4XCUhYP6Q/RqTrRu3Wask3MnV1Iizx2lFLYpkmuowNr2zbClsXTpaXMu+oqQqPaHZ1MhBtf9vl8nH/++Zx11lkHJWts376dHTt2EI1Gx2xiCiGYOHFisWjF4/EwPDxc9AcoN/3Tsix0N/4+ctY+mRREX1JSQlVVFX6/n0QiUfw8zpLFprOzk2zWSXFtaGhg4sSJY/a1SDdffdu2bTz44IPs2+eEzmzb5oorruDLX/6yO4DpCM1gwaJz+NBHPkHThInHPagdDdu2yefzDA4OMjw8fEzLsJeTF+cuPwHidpy4iGNnbIxnDG5+3c1oY2y8cCiUbdO9cyfJtWsRySQD8+dTf9VVvON976PsBJo8jhVN0wgEAixYsIALLriA6urq4nc5cOAAGzdupLe3d8w3SzAYpL6+vmjCl5WVEYvFsN0upprbfvnF/l4FCoIPBoPU1tYSCoXIZrOO0y2ZZGhoCKUUwWCQs88+m8bGxtEvcUiUmya7ceNGHnroIdrb24lEIoRCId7+9rdz4403EggEDvqezrLDi3aiFY2HwbIsurq6WLNmDffddx/33Xcfe/fuHfNA/XJySm3gYGKy2lrN/7P/Hxv2baDkcyWs/tpqZs2Yddy92q1slqfvuYcl+Twe0+S5bJaB5mZmLlnC1OnTi8kUYzUlj5fCjBuJRNi/fz+tra1FczoUCjF37lyamppe6KBS7pZQwmntpJRCSUlPby/5XI6y8nJCoRBerxdN13Aqy18+ClZFQeytra309PQwceJEFi5cOKaYuWVZtLe3s3fvXp577jkikQjZbJbm5mYuv/xy5s2b96InwSg3+892O+js3r2bwcFB9u/fX7QskskkF154Ibfddhsed/fcU5VTSuhJmeQueRffsr5F/OE4jd9pZOP9GykvL8fQjxzXPRxWKsWGO+5goRAkKitZFwzSYRgES0uprq4mFArR2NjInDlzijfg0W7EE0G5Ibf9+/ezYcOG4loyEAgwffr0F5q2ponV1oYxaRLK43VErBS2tMmbebw+ZwZTQiBdiQsJGgqhnO2kpVAoIdDUwQNI8W9CoBDuRkvOEkoIEMp5neef4/ybEsI1BgVCuQNL4cWE8yrK9ROkUimSySQVpWWUhkKga7hbs76AwmC4ZcsWNm3aRGdnJ8lkknQ6zYoVK7jkkktoaGg4aoz/RCjIQUpJJBLhiSeeoKOjg9bWVmKxGKZpkk6nGRoaIpfLcccdd3D11VcXnZSnKqeU0FvNVu6Ud/L7yO9R/6v48Rk/5m0r34bhMY67+aNMJun8yEeobmlha20t/2xsxGxooKKiouhlDgQC1NTUMHXqVGbMmHGQ1/nFQLkOpp6eHp544gmqqqrweDz4fD4mTJjApEmTCAQCzvvbNirSD5XVKN2DQCFcS1EBQkiUENhoFFoxCCXQpHJ/I7HcrY41obliBYGFkHmEMJz90ZXmPFsolLTRhHNbiKKNoKGUQmC576eD0NGk5hwjnHbRyn0eqOL5k7ZCKNeppwk4RL17YWBwEow2Ffu5pdNprr/+ehYtWlTsp/9iXRfL7TUQDof561//Sl9fHz09PaRSKUzTJB6PE41GSaVS3HLLLSxevJhly5YRCp2EdmYvMqeU0Nfl1/Ep+1OsiazB+3kvz33xOWZOcApNjhc7kaDz/e8n99hj/M0w+GdTE76JE6murqa+vv6g/mY+nw+fz8fEiRNZvnx58QK+WDO9bdsMDAzw8MMPU1lZWfSOl5SUMH/+fFfsIJTpiFEoNLcts1KaI3ghkQJsAQpnBFBKc2ZjIdGkRKGh0IotnJWmgCwqH0HTggitFJTHHSZsLJlB2Dk0w4cSHgQeUBooG03LO05ToYPwodmiOEAI90/n707Zq7OJo3AGGPX8gDDyXBasnE2bNrF161ZSqRRDQ0P09vby2c9+lubm5jE78MZKwXoY+diwYQP//Oc/CYfDRKNRcrkcpmkSiUTo7+9n7ty5fPCDH2Ty5MnU1dUVnaKvBE4ZoSsUP1U/5VZuRfxDUP7tctb+fC1TJ04dfegxYeVybHjoIX5+22345szhLZ/5DEvOOotcLsd//ud/EolEqKqqorKyklAodNBMPmXKFFasWEFpaSmG4TRdPJkodx2YSCTYuHEjqVSq+BkAli5dSiAQQCkwNHfGVY7pbGuO0J0JVGELBUh3ICjM9gKlJJqSSDRsdHQhkJgIkcBOdoBeicfXAML53kqZSCtKPhMmUFKHrSoRyuOa9ha6YaKUhRIeNOFHs5ylgXRNfOfUOT9r2kgTW6AktHe0UVVVSVlZWfE8F77/nj17yGQyhMNhbNvmjjvuKJ73ky1yKSWmaRKLxVi9ejUPPfSQ02PADUvmcjnC4TDJZJJLL72UO+64o+j8KzzEixDNeLE4JYSuUKRlmu9b3+ez1mfx/8HPnd47+cDrPkB56YkVsUjbJh6LsXHjRpqampg+YwYerxfbtouhqD179vCXv/wF0zQJBALFZJJCt5WSkhKWL19ObW0twWDQcXydxAtdWA/u3LmTXC5XfH9d15k2bRpVtbXoyjHJAaRwJ1hlO79TAiVsQKFJ4cysSoEwUJjY+X6EBspwRAugEcNMtmDZQfzl00APItBBpcmnO7Byw4QqpqNUHeBBYiJlDGWn8XgrUAQQuo5m20iBa/rjGPruOTnYnHV+l0olaW9vZ8qUKcUc/AMHDvDss8+SSqWIxWI0NjZy3XXXFZtcngyklEVxJ5NJtyPsE2zatAnTNIshwEKosqSkhIsuuoh3vetdxQjHi+kbeLE5JYRuY9NhdnBH9g5+K39L+V3l/OGKP3DBmRfg8xy9xvloKFmYb9x1ouu9xh3dC392dXXx9NNP09PTQz6fR7h91wsjeSgUYtKkSUycOJGamhrKyspO2o2o3I6qra2t9Pf3o7sZacFgkNnz56Ah0NCKDjdNKRR5lBAopQM2mtIQUgOks15GR9kZbHMvtp3EG5qIpipABBEqSj61hVw6S6ByJngbERgIO0w6ugNpW5RWLUTojSihI+UQ2XQHhq7j9U1FUoLUFYZ0WmpJHDPdeRSWO8+LXoxYuyeTKYaHh6moqCCXy7F+/fpi5ty0adOKVtTJWvdalkU8HmdwcJCOjg7Wrl1La2trsdTWNE00Nww6adIkbrnllmKTy5GD+ckY1F8uTgmhm5hssbfwEesjrG9bT8MPG7j37feyYslJ2ud8jBRm+eHhYVpaWmhra6O/v59sNksgEMDv9+PxePB4PEyYMMHNH68iGAwWUzpP5OZUbmiqs7OzuP9XbW0NDU11KCEQGEgEQoFuK4Sw3PW5QCiF7prySoAUGrYtMFQOabaRTO7D4/cS8M1C0+qABGZ+K9nhTvxlU6B0IUJ50fKtJMMbEXoFobplCL0BYZlY+RYyqTZ8oSl4vbNQogRTSHRlO74BzfHCo7TnPfJumobQHC9+wUEnpSKZTDIwMEA0GqWvrw+Px0NzczOTJ09+QXz8WBlpmnd3d9PZ2UlbWxu7d+9mYGCgGPqzLIvGxkYmTZrEjBkzWLZsGRMmTCjO4KcTp4TQsyrLP8x/cJN5E4kNCeb+ai4/ff9POXPxmS9bfFK5nvEdO3bQ1tZGIpEoir6kpKQYx62qqioWhDQ1NVFTM7YuqEdCucUbhTV7IOjDWXlrzp9KohfKTYVwZnUkwk6hzBQYfpQeBGWgKwtpDRKPrkXm2yivOBvDOwslctjmDjLhzXhD9RhVF6JkAC2zg/TQOvBNI9hwLogKtNwwVnwteTuOUXEuhmcK4MPGRpN5FKCEhtA0BEZR6MrxuyE0d+0ulOsQdIplIpEIO3bsQNd1li1bdnK2vHYde3v37mXfvn3s3buX9vZ20uk0mUyGWCyGEIJZs2YxZ84czj77bObPn49vDN1xXsmcEkIfsof4ZuKbfE//Hrm/5/hY+mPc/rrbqamuOaGR/UQpzAwF029gYICenh727t3L0NAQoVCIkpISNE0rVorV1tYWvfkjU16PFeWGmzRNez60qJzwlVLSiXorHYSGQAI2QsbIpbuRKocnUIvhaQApkCpNPvUs2cjTBEPz8ZacCUYAO7ubzMATGL4QvporEJQjE8+Riz+HCiwi2HAJKC8q0YIV24oI1qAqLwWtHk1JsFMIewDTNND8teiGH+F6+FHO8sgxfV2haxSFXhhI29raSCaTLF68+CAz+VgoWGKDg4NFYbe1tdHX10c+nycejxOPx6mpqWHZsmXMmjWLmTNnMmnSpBfF2XcqckoIvdvq5iPRj/B3+Xfsn9jcs+Qe3nPle07Jk5/JZBgaGmJgYIC+vj7Wrl1LIBCgstLZ6bQQHisvL6eqqooFCxYcdCMdy3eybac5pFKOyHEFjVJIgeNsk8IJoykLRRbL6iYd34GOn1D5HDBqUQKUuYPs4GOovMBfsQQ9MAWZ7ybT91cMQ+GtugKhV2NF12KntiFDSwg2vAZlZrEGHyOfH8ZbsxTKL0RpJehWAjLdZJN70QLNeELzQHgRYsRa/XmjwzHlBU4R0QgfidPAsY/6+npKx7BnW+F5yg2JSSnp6Ohg3bp19PT0EA6HSSQSRa95LBZj0qRJXHPNNUybNo1JkyYdctvp051TQuj77H1cnbiatngb1b+p5kfn/ojrLrpu9GGnBIWbq7AGTKVS7Nu3j/vvv5/y8vJitp2Td+0ploTW1dUxf/58dF0f001WKEwRQoB0mnEoIRFKIhyVg645ySjSXQ2LLEobJhvfRS66hWAogFG2As3TiJJRcpGnyQ1vxF8yEW/5cpQ0yfQ8gKYSeCrOQ/NVkY9sRGXaoGw5/oazkfE2zMHHsH0N+BquQvfNQ2FCdgup8BYsrYHyhvNQ+kTA6TVn27Y7O7trdHfZASD05y2cwrkMh8NkMhmam5uP6twszN7ZbJY///nPDA0NkUwmSSQSZDIZEokE0WiUSCTC29/+di655BIqKiqKJb5jPf+nG6eE0HfJXZyVO4tsa5bmnzZz12vv4upLrh592CmJch1o+Xyebdu28cgjjwBQV1dXTG/V3Fx6n9tfbtKkSQd5dEfPYtLtxVb8vXSaX0tho5RASN1xdWl5lDTB9qCEB6XbCJFFmINkh1aRi2/BVzUJf/mZQA1Wah/Z8AMImSRQeRbC34jZ8zhYg2ihWWj+UvLx/WBGIXQG/opGMkNbEWYnonQFvtorgSAqvYdcfAO5XJKShuvRgvNAK3M+GwrpzraOaAuzu7Nm13TdyY4bQTabpbu7m5KSEurq6g4aCAp/FgbXtrY2nnrqKQYHB8nlcuRyOfL5PIlEgr6+PnK5HF/4whc444wz8Hq9xXqCVzunhNBbVAtL8kuQGyVzfjeH79zwHS49/9LRh52yFMzIwiOTyfDoo48SDoeLnnrDMA6Kj0+YMIGJEycSCASKM02BQwpdWUghsYUApaMr0FWaXHoATVho3lKUXgLoCDuDsDrJDP4DM/8cnuBU/OXnIJROfuiv2KldaN46jOBMZGwfuhzG8pShGR6kGXU2MfRNxeezySf2g1GKXnYZ3tIzsVNt2NENzvZNNSvQyy5BajWuzyCLtPJIqaN7Qmi63zHTHecCKA1N114gdNvtZ5fNZmloaCjmjdu2XWzcsXfvXjZv3lzscJNKpcjlcqTTaZRbHXfDDTewbNmy4rkrCHz0QPpq5GUVusIRxka5kfPUeWhPady892Y+d/3naKwbWznjqUhh9pFSMjAwwPr167EsC+lunlhItdXdjRAL6ZQjw0ojb05lS2d/s0IueTEVVmJnezCTBxDKwghWo/lqkAQRMotKbyUT+ROYHXj9k/EE52Jn9mKmWhAiB8qLIU00pbCFx33tLErY2ATwYiHsHKanDm/JMqT0YyZ2ISwbb+XZ6DWXoPQmx+tuDWOZA1j5PIa3Ho9/MkIvdzL2NMsJ7SvDndFHnKwRnvLe3l7KysqorKwkn8/T2dlZrBrLZp320NlstrgXXSgUYvLkyVx77bV4vd7TJixW2MvueOs7DsXLLnRTmdwTv4fbvLfhe9DHp3Of5mM3fIyA74XbIr3SGGl69vX1sXPnTuLxOLZtF5NhfD5f0YHX3NxcTBQZKXRpSydfXIATi5aOp10pBCnsTBu56H4UMTwBP7q/Gc1oRFhpzNiT5IYfQKgEuqcZTVhYuX50kULHRlO6m+euo4SF0vIoYSMRGNIJl9miDM2oxjLT2GYSPXAG3rqrEd5pTtKOOYCZ6idnKbyhJnyl00GrQ2mlzkSOsxmikK7QRy3DC+epIOjS0lI6OjrYsWNHcdaOx+NkMhkCgQDV1dXMmjWL888//6BzdTrM3ApFOB0mZ+VoKm06aWJ/WYUukWRVllsTt3KvuJeav9Vwh3YHN73hJvxe/+jDX9FIKcnlcgwNDTE8PEwikSjGdEOhUDEWX+NuVDj6uUhRzO4DJ7wmpEJoCqVS2LlO8qnNWNk9aAi83gl4vA0oewgz+U+s7E40JZ2yUyXRlEBzy0ydEUQ59a1CIp1CVTQ0kE6oTCCQSiE9leil5yACs1C2jZUZRNkmwqhCD81BK5mB8Faj8LoDiEDiZM8hNXRDP+xurdlslq6uLmKxGJ2dnUSjUeLxOKZpUltbS0NDAxMmTGDy5MnFPIbTaf0tlaQ338v389+nP9LPdV3XcfXZV+MxPCfcZeBlFbqNTVqleUvqLfwz/U+m/2U6X6z5ItdefS0+7+mdwJBKpYhEIiQSCbLZLKFQiPr6+kP2OpNSOZE1HKeck+4qQXkQQkcJGyWSqNwBcrFnycaexiOTBIxaNKMUpboxs/vQVNzNjTdQUkN3C1mcFy/UpzuOMxDObCwlAhuhFDYe8NaBfyLSFig7gWUrCJyBv/oS9OB0lFaJEh4nOca2HaG7tfIKgaEfvuTYtm36+vrYsWNHMQ9e0zTKy8tpbGykurr6BYPg6YSlLNbE1nBj4EZ6Bno493/P5S+f+gshX+gF98Sxcugz/hLh3LY2++39qLxCyzm9wk909HolEAwGmTBhAjNmzGD27NlFx9whL6gSCKEQwkYTOTSRAj2BFDHQUoCJwgOeifgqlhOsOBOlwExuQ8WeRSb3oFtZNNODsDxo0oOGhkK6g4RbyV7w6CtHTEpJ0GyEZoImUUJh2VGsdAt2fieZfAStfD7+hgvRS2eDUeZ6yHNIOwV6FPRhNJFEF1axxv1waG6+eSE6sXTpUpYvX878+fMPaemcbmhCY0ZgBn7Djwoq+ujDtEzHGjpBXlah45rvQ94hyIKIFUzJ05+CV9jr9RIKhfD7/Ue5kRVKmlh2hmw+RirVj5nbj53firI3o1m70RhEM7z4yuYSKF+E8JRiE0XIKAYWutKdwhcckx9hO8nx7nxe6DKjUNhuUo4UTrgMoaEbAk3LookECINQxXx8VUvRfBUgByG/C2FuReR3YKV3k4x1kElGyOdyTrwfJyx4JEpKSigpKSEUCjnpvyM62J7uaGjU+GrwCA+qVJEJZGjZ1TL6sOPilDh7UklIgWEZePWT22DglcLIcNBonLAdCE3H4/Hh8wXx+gyE2YcZf5Z0/19I9txHtuevmAOrkMleDG8VIjSJvCeA0n1ORZluIXQTpeWQ5JDY2EpiO4WtSCGRmoUSlruWFyjlQRJAKcPxCUgbJQ08xgQMfSIkB8gPriLd/0fSvX8g1/snzPBj2MldeDQwvJUY3mrQgqhiKeuhEW61YMhtMPlqRCAoSZcgbEHKl2L9xvWjDzkujnzmX2QUiogZwTac7X8qtArqap9PmDhWCnnpox+FbCrb7ZQ6Ou5deLxcFN57pNBHfh7h7jUGBkr5EKIEj6ceb9k8vBXL8YTmI/Bjp1qxI09j9v+dfPhxZLYNjwAhDGfmFrZrqqtClYlrFkq3O43jyQcbjTwaJqCQGthCIXHq33WlQ34A030vM/IY+fgOLMtGeafgKV1MsPIMfMFmdE8ZUjOcrjaFJcIoRp/70tJS1q8/OTf4iTDy3iiES223h8HIh2mamKZJPp8nn89jn2AL6EnaJIQusP02eT0/+p+Pi5fVGZdXeX7e93M+VvYxcs/lePP2N/ODt/2AysrKYxa7lJLh4eHiNki4F6qQ8qi5bZALZrLhbsN0sKCc1sWHm1lfLAo30OEq9WzbdnzgwvGOK0AIGxsTgYlQCUS2FTu+FTu5DfL7EXIQDcspFZU2QtigrKJTrPitC+vmQqWZ2+xRKIkSGpamuz54hQ5oQndy7JXAkhqICmxfE1poFp6SRWiB2aDXgvCjpMBCQwq3I4tU6MI44qYZSimi0SibNm3i4osvfsmvRUHYoyeFXC5XjOMXxG6a5kH3WkH41dXVTJs2rXiPHQsWFh9If4DfGr/F/1c//97773z+w59HHx2TPEZeVqHnVI7373o/v5v0O6zVFjfvvZm7b70bcYi00COh3B1QnnnmGXbs2PEC8eLOlsFgkJqaGioqKvD5nK2BCxeycEwh6UK4WyuVl5cf1Fq4cGzB1NbdrYwKn7nwfof7/If6vXTz5g9XKmnbNiiBphUGJieWroQFynYbPcZQVg8qtxsrsR5SO9HtYYRd6AZruzO3m45alPrzM/nzn00glOZ0lhUglGMBCFFo7CiQGEitHBGcjlZyBnpgNniqQasAFUApL0L3IKWGREcIwxmsNL2YAz+awrnN5XI899xznHPOOYf1WxSOPdTtW7imo4+R7oYQpmliWVax+MU0TTKZTFG4hZTmQpKTlJJUKsXg4CDRaJR8Pl+M71sjdqax3V4G06ZN42tf+9pxtaS2sPhA7gP8VvwW4x8Gt+y8hW996luvfKFfv+d6Hm16FPspm/d2vpcf3/rj0YcdlYLQH3/8cR5//HFs2y6mmhaEWPiz8HPh7xxGfMJtwVxdXV0sRRUjLADhzv4ej6e4I0ooFKK8vByf27u8cLxyRWS4HWdHZ28VZo7D3dS2XWj7KlHKBJVDCBNkFk1lkHYM2xpEWv1g9UC+DS3birAG0ZTp9p5y4ufO64CbfeP87A4excaOAMJA4nR41Ue0sJK6QAkDMNA8pahQA8qYgBT1IEoQegXCqEBq5ehGJUIFESKEpgdAMxCa4RSoHwHLsti2bRvTpk07qLdcATWiXr9gJqsRfdgLWXSFGvR8Pl8cTNPpdDE/vrBpZDabLYq+MEMz4rqMfN/Cn3LEMrEwwxdy7q+44go+/elPH9fe7BYWH0g5M7r+d52btt/Edz/33Ve+0F+/9/U80fQE9uM279v/Pu7+2N2jDxsTUkr6+/vZs2cP+byzrsnlcnR3dxMOhzFNk6GhIRKJxEEiLXh0Cyb7yAHC43aTKTwKxxZEXPi5cLzf7ycUChXTW0ceWxhYCrnvupv+WsiEO5KZZ9sKoWyUlcI2I1i5AWxzCGn2oqwhkHE0OYxmD6PJBBpJFGk0cmjCRFcKpNtY0nWyHUTxDnDErsCdzTVnTe4m1jgVdApNNxDKg0THNHxISlCqHKFKkXoFtqcCW6/C629G1+swfHXo3gqEEUJoTh++IyGlLPZRX7BgAdlslv7+fpLJ5EEiTqVSRbGNFF7W3bW1IOKC0Avm+MifC6IdLdyRx+i6Tk1NTTGOX/i3wgCuuzvVNDY2UldXx5IlS4qVeEf7rqOxsPjg0Af5Tclv0B/XuWXrLXz79m+/8oV+Tdc1PFnxJPbfbd7X+z7uvu34hF6gcOGU29igcFMUzLPCRS/Mtrlcjv7+fnp6ekgmk0Sj0WIds5QSwy03LeSojxR+Ib965J8+nw+v11t8jDTvC4IuDCKFFlQNDQ2UlJSM/ipFLFs56207hbIjSCuCsgtCj6CsBFgxlJlAWBmwEwgRQyOBIOcmvDgT9lgut3IqYwHhdKkTwmkZLTQ0DTTlrNht/Nh6LVKrROgV6FoFwihDeUrBU4nwT0BoVWh6GeghIDhmoff19bF3716CwSCxWIxYLFYscCmY3wUTfORjpGALM/fIR+F5BZPdsiwMw6CysrJovRWssoqKCpYsWYLf7ycQCByU51A4j5rr//F6vZSWlhI6wR7vFha3hm/l16W/RjwmeOv6t/KTz//kNBD6/mt4sv5J7H/YvK/1fdz9/05M6CMpmHSFR+F3IymMzqNHctt2IgG4ZvrIm9N0O4kODAwUd+3YsWMHiUQC3S1HLQi+kABSEH7hZ7/fj9/vp7KykunTpx/SRMWdbE0pQZk4ri3LcacJx4wXKgcyDTKJkklUPopKt0NyHSLfgiDvzMRKoRXN9KPhVJoJBQILdBtb+LA1A6GDJg2k0lGeaozQWRCYhfA1IIxy0IIgfCACSOl3PP7Oqh+FB6F5j+iMw70mg4OD7Ny5s7gmzmQyxRk66+7vPlL0uDH4yspKKioqCLnbVBVmYIBQKHTQ9tEj74WCVVYYmAszdcGXU7g2h7pGBUYed7xYWPx777/zs6qfIddKrnnwGn73X7975Qv9dX2v46mSp7AfsXlf54nP6C8FoweQkaZcwZGTy+UOmlVisRgHDhwgHA6juRlggUCAhoYGFi9efNDmi6OxpJuDrpzBRwgNIXSEwplxVRZUEiX7IbcH4lshvgWZb0UI0/G0K6fJ09iE7mznoivDOV7PYwsvtvCidCcLXikdoZehe6YiAtMR5XMQ/tlIrRZUAKEKveOUE7pToNDRdCf//XDfFVfovb29rFu3jvLycvL5PC0tLUgpi0ud8vJypkyZQmVlJfX19UVxjn6MRIxYbo3+t1MFC4tPDn+SuwN3Y6+yueKJK3jgqw+88oX+2r7Xsiq0CvmA5H3d7+NHn/rR6MNOWQ5nJRyKkccoNxSDe/NZlkUoFBpx9MFIW7n+K4kUjgidAFkeoeJg9aPSbZiJFvLJXehmH4ZMoJNGiYzTQVbojvdcKddOODIKiSZ1J96u5Z3gmvCA5jSjlMqHIoAmDCSlSNGAXjoPo2IuwpgAejVChEBzvPdK6UjleN0Pl+teQEpJV1cX69ev56qrrjpsNGIko4U7+u8FDvf7UwULi4/3fZyfVP4Ea63FZX+4jL99/28nLPQjn/GXAsfqAu8p8WmOicLMUFinHelRMA0L6/VCi6mCOX8knFwTJ0ym2yaanYJ8GDtzgHz8ObL9j5Lu/zu5+Hq3HLUCzTsRdKeK7HlZF2LoTgPHIz1AR2oCqdnO4IJEKBNkDmVLEH6Etw4RnAb+RoRHIdO7yPc9RX54A/nUAex8P9KMg8qjhERqzmc4FkY6S4/0GH2+R8/sp/IsPpq8x9n2ChM078kRxcl5lROgePLtU+HTvLSM9cZznOQCpERaKaxML7nUXvKJ7VipdpQFum8yntIVeMtfg1F5KXrFmYhgI2g+p9x0hJ/iaDgFNIV8eKfaTWAgpIZmC3QlMTQDw1+PUXYBnupr8Na8Fm/NBWil87AowTbjmJkO7FwP0kwgleUMMmP7ykXH2qsR27Ydqy0v8NiesRhgR+Vll5bIuQ0VnHTscQ6B1ByTXeGoXuDDMCrwlU4mULEQf+35+OquwFdzGZ7K5Qh/FaYVxrJ6QWTc9NaRCTEH84JZT+CkyioF0uNs46RE0eRXEiwrST7dhZ3uRuh+RHAeouxcjMpz8VUtwlc2FU+oEd1b5ezRJoW7rdTod38hhaXNK2kWPpk46cKOc88fOjl9GV52aRnK8coqQ6G8Y7gLTlMONdsq5WaiC4UUEqVpCE8peqABIzgd3TcfETgDEVqACExH81Ug7WGyiU1kUhsxrR4UPpQIoYT3kE6w0X93f+t0nFEGShju3uu2Y8YbAaSnAUsrx7SHMVNrMOPPoKwBx5z31KF7G9E8E9F80xGeiQitHF150W3p+AnGQC6Xo7S0dPSvXx24qtRMnYAIHOtq55C87EL3m34wgCqwhJNddKib/nSlMGuNDOcd9G+AJp20Vaf/hIbSDJTmVJXZyo8tFcqMYcdbyA8+hRnf4eycEliAKL0QPbAQoSqKl/toM6VQOjpOaExpYGsKWwNT6Jh6OVrpEjzVr0ErW4ql+zHTu7GG/4VM7wJ72E3LdTrMCOFxnHgYY16fK7eH3JQpU4rr7VcTSlMIBIbUT3iT0QIvu9A1r5N9hYCEnWB4eHj0IacdI0NzhUHtSOtRTYJmq2LbJ4lAKg0ldbAstHwfdmIdmfDTWOlBPIFpBGquwd/wdoyK88FTjdJ0nGZtmis4Udw1ZeTDLWlBSNAECE2i6Qa6HsLQSkAKbCuP4WsmUHkl/spr0HxzyGciZIafxUpuBnMQaZsIoZzkGyGwhVPcMhatF9bnjY2NiBFpxK+WCcA2nApDPa1T5i8b/c/HxcsudD3thA2EJcilcqQzTvve05WRCTqFRyEGf7jvLVxRPj+zCYSmoesWmpbEjO0nE92L4fUSajqXQPNb8VbdgPCciWXrpFJhcgryog5LVCNxvPzOnm2up72odQFomMpZJwqlIUQATW9G06eiSS8y3YnKxNBoRgtegq/mKnwVZ2Arm1S8FTPfi9BSWFYG27aQsmAVOF7/I6HcjMZCyjGjztmRBsTTAYUiThwlFcIrCHgDR23WMRZeVqELBJOtyU6M0A95I0824+xP/UpGyueTaPL5fHEnkXg8TmdnJ1u3bmPduvWsX7+ezZs309bWVszuOhRSA0tIbGyn0aK0UXYWKYfJploxpYm//Gx8NW9ElF4B+hyECCGtPnLx58BOgGcqovIi9LKFCL0EJRSm5sPSvY4AXdE7e6H7sI0ypFEFhJAihAwuQFS+BkLzsfGST3Yg850IbJTWhFZ6HsG61+GpWETOlpj5MDpOnr3ARmC6zSdHf7sXksk4mW+xWIx4IsHevXtZs2YNa9eu5cCBVgYHBwmHh4hEIsXEpJG56690eoI9Tk1Bp4ZHOzm7Cet33nnnnaN/+VIhhdNv9D7/fdgJm5rWWs6pPJeJEyagH6aS61RHSkksFmN4OEoymaSnp5ddu3fR3t5Oe0cH4XCYdMrJvS/k39u2kzBzuO2CnUIUx3TXlJNrLpQCO4dSGt5gI0ZgCsJXB0bISTfN95ALryaf2ofXPwFf5Vl4SiZBrg2VbcXGgwjMdjzyMoGGH12vQuLFxgBPI4Z/ItLWkCqHbTShl5+BHpgMwiBrD6H0GB5/E2jVoJWj61UYnkp0LYQmgujC2VBCCem2rXI2jDzSDKWUore3l/6BASorK9myZQutBw4QiQwzMDDI/v372bZ9O9u3bWfXrt1omkYmkyEajWJZVrE09JW6rreVzQ+zP2TQHsT/TIALvReyYumKE/4+L7yrXmLmVc1DQ4cSyJAllU6NPuSUQ7mprpbbfCCVStHa1sauXbto2bWLdevXs3r1alavXsOOHTsYHBhkaMiZgYbCzgaNvb29DA8PU1HhbMYohDjsrO4I3Kkic2QiEBjoWgm+QDO6txn0Sqd8VOVQ1gD56HbyqX78oTn4qi9GLzkD8CKtKJZUCN90vBUrUHqVsyurXgv+mdh6PWgBhFGHKFuKCC3CJoQlY0iRh+AcjOqL8ZTNIZtPk0vvBzXk1LxLH0KVYejVaHo5SvkK7SoQOIPUkcJrBSdc/8AAlRUV1NXVUVlZCQgSyYRTdpp1CpOy2SzRaJTHHn+C++//E/fddz8PPvh3nl69hnXr1rNr1y63JNUpZnHM/sMvj04FFIqUlcL22iDBGHZ29zkZvKwpsBYWMRljZmQmiVySuX+dx5eav8RVl6/E627Lc6phWRbpdLq45zYIstksPb29ZDIZwO00YlqY7ho8nzedjqoKpkyZTHPzRHTdoLy8nLlz5yCEIJfLYds2wWDwBaO3kgpR6GSCW3EqQBMSgdPtRWgKQRalhskn9pBL7MLj8eEPLUJ4G0BlsNMbyIfvAzuLr/YKtOAcMr2/R2Ra0EML0Utmk090oOXbwDcXb/3lSCtHZugf2DKGr/IcPGVXIbRypNVBNrEDOxvGXzYXw78AKHXnDun0uMPvRN41Z0YXblur0d+vgFPMEmbzli2ce84KQqEQpmly4MABBgfDxdTY1tZW8qaJbdtOVELXQSlst9wUoKqyipkzZxTLf2tra5k+fTrl5WVHLAl+OZFKsje9j9d7r6E10krj1ybyk+v+h8suuvSoacNH4+UVurJIyiQL+hcwIAaY/I+p3Fl9Jzdcdf3L2te9sNaT7qYLqXSaofAQ/f195PNOb7BwOOzUvQtH6NmsU/boPPJ4PV5CJSHOPuusYuMKTXNuuOrq6qJ5WfjTtiWWZRZTZA/+QG6OutveXbqxdYREl5rT2VUoUGmsXC/ZdCser4E3OAElap1iEtlGLvIYVnwHvpJZGJUXIzSDbPfP0cwO9IqL0MrmYMX3oOKbUZ4Z+BqvQhnl2LH1ZOPr0Xz1+CqvR3ibna2b7EFktgfTAk9wAoZeh1JBpHL1rhwvu7OzjHIdis62yYcin8+zf/9+2traufDCCwgGgzDqegwNDdE/MIBt2SglsaWko6OTbdu2kUwmUUqh64XKtOdv7ZKSEmprawn4/Xi9XqZOm0pzczMBv5/y8vIXpM++HJjK5JHhR/hQ6Yfoy/Qx7TMzeeLOf1JXXffKFrqtbNJ2mjc+cQNr+tbQsKmRzy35HG9/81tf9Bl95Ncu/KzcjKxIZJi2tlZ6+/pcz7hNLpslnc4gpU3WbSNUqI8WQlBZWUl5eTkLFy6gob4Br9eDz+enrq622HHmaDgWAfj9/oOOV0q5fRWdUhaFcvY0Q6IphSaFI3SZxzZjKJFE84aAcpTyY4kMwtpEfuBhNBXCX3EuWnAOqDDZ7p9hEEOvuQaC05HJ3Zjhp5GeOgINV6OMyYh8N/nYKsxcFH/Fxeih2aD5ne69VgqpMiAMdK0S8CNxwnLOWS0sNZyqN2d/9OJXO4hoNMrWbduYOGECkyZNKlakHQkpJfF4nPDQEGY+T29fH88+s5ahSIS+/n78Ph9+v3P+lRvZEEIUa8cNw0MwEKC5eSILFixgwoQmfD6/a308/96Fn4/2eU6ErMryncR3+Hbg2yT2JZnzjXn86wdPUhIoOeH3fVmFrlDYymZH205+9ttfMH/aPN648g1UVFQc0il1MihcbDliI8Tevj76evvo6Ox02hNZjtltmibKbVOVSqVIJlNkMhlyuRxer5c5c2ZzzeteR3V1lVNYoev4vF50w3BMymMsiUyn00XzfaQzUuFM4yM7PSl34ySEM9sJcPZNV076qhCuux6dvJYgn16DjDxLqGQpRtkylF6KkF1ken+Dx2OjV78J5ZmIyLSSGXgSPDqB2tegjLloMoOd3U4uthsj1Ig3NA+l1WMrP0pJdE0ipELhQQoBmu12fBWAjiY1t+msPOyMLqWkvaOD9rZ2zjhjERUVFWM+b4UZvzBQZ90GjqZp0dHRyeOPP85gOMzAwAC6oRetRaVU8RoZhuH0CfD5mDptKlMmTyYUCjFjxgxKSx2LrFA8M9bPdaxkVIZPRz7NL0p+Qa4lzxt/cwM//tKPCPgOs7HHMfCyCr2Ac1Ecs9VzmE6ox0Lhohd+ft70U5hmnq7ubrq7u9m3b39RzCNvlnQ6TSKRIJVy2hXl83mampqYPXsWkydPZtHCBZSWlhbN7JN18QuDSqFJRYHCmhzl7qJaFLyNLQSWW4KqSSfujRvS0jSFFBZSRkhFt6KZ/YSqlqP5pjr95+xOUoMP4Av4McqvRVGDsIfIDa0Fuxtf7Qps70I0pSPsYWcnVTuCEZqPMqYghR9NL3wuDamEm1XvDEDOORFuio4zUjlCP3gQL5zzlpZdVFdX0zypGeMkRV0KTtPC0mjTps3sbNnFxo0bGRoaoqS0FL/PV1zbFwbmwkPXdcrLy5k1aybz589jxvTpB834Qgg0XUcr/HwCE1RapfmE+gS/sX6Ddb/kG+ob3Hz9Tfi8J77XwSkh9ILAjmX2OxK5XI602zYqk86w/8B+BgYGCIeHsNyunSOTVtKZDOl0Gk1oSLeJoMdjcNFFFzFj+vSiw4xDmHAn6zMz4oYXQiMQeN58Vwps4QhI4Ihdk4W1uobtloTpSjqNKMBpUqErpMojzF7MVD+eQAjd1wyqHLBRsotUZBWB0ip0//lAGagMMr0LM7kZX/VC8p5FaPjRZA5hDWCnu9F8dShfE0oEMYTuWBGuwFWxXZVEaI7vYES+nTObjzpftm0zMDhIZ2cnkyZNoq629oQEM5LRg/7I35mmyabNm3nuuQ1s3rIFTWj4fL5i9xqhaXjc1l+Fa2EYBlWVlZS4A31jYwPLli4lGAo6vy8pHf31xkyKFLdmP8Sf8vfDbzS+V/Zd3vmmd+DxHL391tE4JYR+slBuD7idLbtoaWlhcHAQ6SauFBxltu20/I0n4qSSKSZOnICmaVRUVrJ86VKmTp1KVZXTamhkrfOJnugjUbjxpJQkEkmklJSVlRa9w8oGpTvNminkskmFUgIbze3vBpqS6Dg587ZwurYKmUezBlFWDj1QgxJBsL0IZSFVN5nELgKltWjGLBABlJIIexAzvhFPySQszyyE5kdTTicbacWREoS3FBs/HuUF4SwlCkNRodLN0ap0xa47X8JR/EHfPZPJ0tHRQSqVYsqUycWNJl+K8267bcMc30yEvr5+tmzZwu49exBCI5vL0dfXiyaebwVeoPAZlVJ4PB7OP/88rrpyJZWVlcc1UCVI8E75Th4dehTP1/w88u6HWLZw6UnJKTmthC6lpKu7m8cff4LOzk53ZHYa7yeSSQxdZ8qUyQSDQSzLQtN03vymN1JXV0cwFHqBj+jFvMlGYlkW0WiMbNZJ/NA0jfr6eioqKpyLLB3tqGIDCOmY71K5lWU6CqcyTHPNZyk0lAJD5RFknR1NtUBxzaxhoeQA+cwgnmAlmlbrxOGFQKgsVnI/wihF8zYiNR1dODe0FBIsEzQdW+ho0kArCF0A6M7yAXfiFs56XRTi6aNELqVkYGCAAwdasW2bmpoaPB4PtrRpbGg4bC+9k8mhJKCUIpFIsGPnTh5//AkQAq/HQyaTYffuPSSTSbwFRx+CWCxGPp/ns5/5NCtWnH1cS9D91n7ex/t4pvUZfP8ZpOuedkp8h28aeiycVkJXShGLxfj1b37LuvXricXi6LrOdde+HiEE5WVlLFiwoDhjGx4PnpO4xj4WCjd5PB6nr6+PaDRGLpcj51bvNdTXMX36dEpKSpBKOOvbwtrXzZIrOOakEI7ZjOOQc37SnFlVWW5mmoZUumNAK4FAolQaJXPoug8l/CjctSkWKh8DdDCC7k4rhtsWXqApZwsn5Si5UBPn/N1tEe38ysmQkUh3t3WnT3xhRJXu7jq7du0mPDRU/J1lWeRzOWpqa6msqGDRooXFjrovJYUZ31nj25iWxVB4iC1btxKPx4nH4/zjoYcx3X7xCxcu4D8+/jGmT5t2XLPw3dm7+QpfYXBHmLLPVtDxt1b8xsmpRz+thF5g+/btdHR2YZomwUCAiy668EUP1x0LyvUO79m7l+jwMIlEEtMySafS2NJmzuw5NDY2gBu2w+NFF6q4/hYIx8OO2ySiaDg7D4Hzg3BneedfnXbNBzWHVM4sXAh+FXBsAtNZbwsNJXQnt005QhXK+Z8zoDjPEMJtU+WW1lJoToNTwYZwM+MKn1kpMpkMO3a2EA6HmT5tKvF4grb29qLXPJ/PI6Vi+vRpzJ0zh4aGBjTt5PlETgSlFMPDw6xevYa869CdO2c2s2fPfmEexBj5WP5j/JAfIf6hccGfL+RvP3kAn3Fy8klOS6Fbto1067uFGzo5VW4Oy7Lo7u6hq6uLYTc/O5FIkE6lKa8o58zFZzB58mR8Pp+TmBMZRm+opVKAF+UkTijNWYBTUF1hMxan4sx5M3d3Fucv7p/u3w5zyZ8/RxJb2W6CtOMz15VjCWg4L+eUn7pjjXpefM5e64XByBkKnGPdrik4M75lWbS3d7B3714WL15MbW0N+XyegYFBNmzYQDyRwHS3SFIK/D4fU6ZO5szFi4udYF/ua1qwPgrnUzeM44oWFMLMH1Ef4X/T/4v/VwG+oN/Jv9/8EbzGyZmgTkuhn0oUTq9jpidoaWmhf2AAy7JIJVNEY1GUUixauJDly5cVY+jCTfAYjg6Ts2xqq6rQddf0HTH7qoP2TBshaVWcUl8g9DFTHDQKgj7or86rFmbwEd/1UPp7/nM5x/X29rJl6zbOWLSIhganXTOuBz6TydDe3s4TT61Cc5tyWG6JakVFBZdccjETJ07EGNHi+ZWMjU04H+aj4qP8kT9SekcFd6/4Ede/7jo8xrGv9Q/FuNBfZKS7Qd/OnS3sP3AA6W70Fx2OkkwlWbpkKStXXo42qntpAdu2CQ+F8fv8lJWVHnaDwlcKtm0TiUTYsmUrfr+fc85Z8YLZ2ZnFnfDXQw8/zIEDbShVmD3BskyWLl3CBeefj8/nO2UstuMlp3L8zPo5X1R3MrRniIr/qmb797ZQVV513MuA0YwL/UVAueGybDZHJDLEli3bGBgcIJfLkYgnyGQz1NXWctnllzHZTfU8nKNJKUU+nycSiVBaWnpcG/cdidEWwYuJlJLhaJSWlhbSqTQXX3zREWPEhdBoX38/Tz+9mu6eHvI5Z/9x599tXvOaS5k3bx4loVAxeelFRSmUZSF7epyipepqgqWlTmHNcZJWab6b+y5fs79GfqvJrG/N4emfPkVJqOS4nHqH4mWtRz9dyWSzhMNhdu5sYe3a9YTDYSLDEcJDQ/i8XpYtW8rVr72a+rq6I4qcET4GXddJJpPF2P7hxHGsnKzXORq2bZNMpujs6iQajXH+eecetQZAuHHqsrIypk6dgs/nL+6Pp9xMx7a2Nvr6+tA1Hb/f94I6gZOOlNh795K+7Tb2/uY3rBc6MxefgX4CM29SJnlSe5JnrbWIxzQ+POdDXLD4/JNqqYwL/SRQMIps22ZgYJCWXS1s2ryF1tZWotEoff39SKk45+yzWbnyCubNm4t/1J5eR0K62XqRyDDJZBIAj+fkhgVfrJm9YIJHozF6e3sZCg9RXl5GXV0dmq47XvwjvK9wlzKGYdDU2EhdXS1KKgxDJxIZRilJJBJh7779xOJxUFBS4szuheefVPJ5cj/4Afqf/8zWSJQn/H5e8/prTsjEPmAf4Hf279kb3ov2oMH7l72XudPmntTrO266nwSUm1yxf/8BWtva6O3tJRqNMjgYJpNJc/HFFzN9+jSWLV16xNn7UBRi7T09vYSHwuRyeUpCISZMmEBDQ/0RTd+XG2f5kqW3t4+Ojg4y2axTBKMb1NXW4vV5mTd37jF/fsuy6OnpYdv2HbTsamGgf6DoOayoqGDu3DmsvOLyYreZk4ZSkEqRv+EGUqtX89+hMuz3v4/bP/MpAv7ji3crpfiD+Qc+oD5AcksK/5dDPP6VR1m2YOkxn5cjMS70E0BKiWXbDPQP8NyGDfT39zM8PMxQJMJQOMz1119PdVUVCxcuxO93nEZjpbDOD4fDtLa2FRM0mpqaaJ7U7GwnHI1RV1d72BZULxeFzx5PJOho72AoEqG+vo7SkhL6+vrp7et1YuS2ZMmSJUydOuWY1qKO2e5YOZ1dXezc2cLq1WsAp3mDruvMnT2HsvJSrr7qquLa/YTPkVJYf/sb6j/+g129vdw1aQqf+OPvmTZz5jFd2wIKRcpO8UPzR3xG+zTef/h5/dZr+db7/z8m1E8YffgJMW66HyOFcVFKSSwW5x8P/YM9e/bQ2dlFd3cP7e3tNDY0csMN13POinOYNm3qcWV1KaXo7+9n1+7dRKPO/uAlJSEWLVxIfX09fnfftvb2dgB8Puc9hBuWO5mzwbGgXOfh4GCYXbt3MTAwyKKFC5k4YQJVVVX4fF76+53tpk3TZCgSoaKivLg//Fg+t3DX7oZhUF1VxYSmJhobGhgKDzE0FEEpxeCg065r9+49JJIJJjQ1FQeTsbzHC1AKpETddRfZZ57lEU1n+DWv4a03vgfjONJdASSSAXuAP+b+yGZzM8G/lvD+me9j2cKlJ73xyrHdfeM44bJ0mmfXruW++++no6OTAwfa2L17N11dXVx44QW895abWLZ0KX7/8V0sKSXxRIItW7cRi8YYGgoTi0Wpra0t1mkLTSMUCjJ9+jSyuSwHDrSSSCSQL1M7ZOUmA0WjUXbt2s1zzz1HKpXmkosvoq6utpj7XVlZyZKlS9DdfctjsRhrnnmW3t7e4/7soVCIhQsXcPPNN3LxRRciXH9JLpenvb2DRx79Jz/+yT3s2bOnWJZ8zEiJSqehp4dh02StP8Br3/ymQycNjBGJpMPo4OHAw4geDaPfYGLDBLyek5MkM5Jx030MFExF27Zpa2vnmWefJRwOO6ZjZxeR4QiLzziDm258N+Xl5a6X/DhMOdfkjcVirF23nmQySTweJ5VKsXz5MpYvW/YCB03hsw0PDzM0FKGqqpKSkhI8Hk/x2OOawY5C4bYpvH8ulyMSGaajo4PBcJiLLrqQ0mILrYPnE+n2fnv88ScxLaf3W11dHRdccD7VbqPM4/nMhWuUyWT47x/+iH7XCaqURNN0AgE/K1dewdIlS/D7/cWIx5jeK5fD+tnPsL7+ddYMhvlu8yTuXfcsgWDwuENrGZXh79bfuTF3I5lnc1zx9BX8f2/6L+bMnnNcS4EjMW66HwUpJZlMht6+PtY88yxr165laGiI7p4e9h9oxWMYvPaqq7jpxvcQ8HuwrRRSgaYde2hEKUU8Hue55zYwNDTE8PAwsWiMc89ZwbKlTrni6NcsiCIQCJDJZujp7iEWi5FIJGBUl5vRzz1eCrN3LufE97u7e+gfGGBwcJBYPM6Ks8+myi3VHC3yAiUlpWQyGYYiEceEHxoiFotRU1193D6Hgknv9Xo5Z8UK5s+bR3tnJ9lMlnw+T9402dnSwubNWzAMg9LSEgKBsXVvkV1d8LOfEdm0id94vCz7939j2XnnOd2ExvD8QxEnzq9yv2J96jnEA4IPz/owV5x/BZ4TeM3DMS70Q1CYWU3TpL9/gE2bN/Ovfz1NR0cH4fAQPb19oBRz5s7hs5/5FAsWLMAwNKzkZoa7fkNHRxcl5ZPwevxjzmRTrud+27btdHf3EI1GGR6OsmDBfC684IJDinwkpmkyODBIOBxmYHAQq9BUI50hnU4VK7CkLHR+GTvPC9tp6BGLxejr66etrY1weIhUOo207WIxSklJSbEDz6HeqzDoNDY2It0yVdMyGY4Mk05nqK+rw+96sQ/1/CNReG1N0ygtLWXRwoV4vE55aSaTxTItMpkM23fsoKu7h1BJCEPXizH9F7yfuza377sP6557eMayeXbGDD75zW/gD4UO/ZwxIJG0y3a+YHyBZGeCkqfKuHbWNZw5d/FxDXJHY1zoh0ApRV9/P3v37WPdunXs3rOHgYEBWtvaUVKycOECbnjj9Vz7+msIBALomkY2HSE78HMq5U/p6thG2ppCde0MtDGY8MptIbVl6zb27d9PZChCb18vZ521nJUrryjmdB8OKSXh8BBdXZ3EYjGEECxduoSJE5vRNEEsFicajREZjhCNRrEtR/CmaZHNOj3wTNPpbpvP58nlcmQyTmfbfN4pwQwPDdHR2UlXZxfRaIxkMomm6UyePImZM2ZQU1NDPJEgGovR19+PZVtH7BRTEGNVdRVmPk84PEQul6e/vx/TtJg4ccIJhQ4Lr+/z+Zg5YwbTp08D4dSNJ5NJFBAZjrBp02bSqRSlpaWUlJS80GSWErq74be/JbZuPX/1B1jysdtYdPbZeI+S8HM4CkUsf0/9nXv5P7QtBue3X8BbL34LTQ1Now8/KYwL3eX5tW6UPXv2sGHDRmd27emhp6eHZDLF4jMWsXLlFVxx+eVOUcUIE8u2soR712Gnt9JQk6O7uwstuJiS0hrnmMPcEAeJfN8+hoaG6OvrY9HChaxceQW+MXjs0+k0+/bvY2goQiQSYerUqTRPasbjMQgEAlRWVlBSUorX40XTBKlUkkhkmEhkiO7uHuLxBNlcjoH+Afr6+ukfGCAyHCGTyRKLRhkcHKS3t5d8Lk9tXS0TmiYwYUITU6ZMpqzM6ZNuGAbR4WjRd9HW1sbsWbOOKFbhJsJUVVUilSQyFCGXz9PT00N0OMr06dOKgj1eCjNuMBhkypTJ1NfXU1ZWRmdnB8p12vUPDNDV1c3gwCCBQIDQyJk6n0c99RTZH/yA59IZWs5cwms//CFq652En+NBIsmS5Yv2FzmQPEDJ46W8teYtvO7yq09aEctoXvVCLziVcvk8e/fsZd26dexsaaGrq4uu7m4OtLYibcmNN76bK1dewaxZs4pryMINLITA4w1iU8JweC+lvh5K/WF27+ulecZVCE0/pAlfMIl3trSwY8dOhoaG6OjoZP78eVx91ZWUlZWj6y983kiklPT3D3Bg/wESyQQDg4MsWDCf+rq64md0ZjYvpaUllJeXk06nGRgYZCgSQQiYMnky5WXl+AN+QsEQpaWllJeXU1Hh9Dvv6ekhl8vR0NDAnDmzKS8vO2jro8J7WJZJeGjI7XOfBQQTJkx4XjSHQAiB1+ulurrGMeMHB8nlcnR3d9PT08PMWbPwHmGwGCuFtXtDQwNTp0yhobGBUDDErl27ARgejjpdaNvbyeayTGpuRtc0RE8P/OhHRLZs4e9CY+5HPsKySy857tkcV+h75B6+ylfJteaZtGEyb5h1HfNmzzumfIJj4VUt9ILQhoeH+cdDD9Gyq4Wenl66u3s4cKCVofAQd3zus1x+xWUsWrjw4JH+EHj8lSQyIexsC1UlUXTVy5Yd3UyafrHbRul50Sq3e8mOHTvZvHmL4+Dr7mbu3Lm89uqrqK2tdcpSD/NeuK+Ry+XYsWMH0WiUaDRKU2MjC+bPJxQKjT4c3IGhkLmXSCapqa5h5syZhEJBSktKKCsrpby8jNLSMkLurjHtHe3kcjlKS0toaGg47M3o8/kcJ2I0ihCCtrY2pk+bVjxvh0fg9XqoqalB1zT6+vqdqr3wEO3tTvvnI533Y0EIgcfjoaGxkSmTJzFhwgR27dmNZVoAxGJOFmI8FmX21KnITZvIf+c7bLQsei++hItvvomGiRNP6PNYWPwk/ROelE/CU4KL2i7mI+/5EKHg0c7T8XPk6eI0xRGZUy56/5/+xP/97ve0trbR3d3Drl272blzJ7Nnz+Ku73+XRYsWMXvWLHxjyE03DD+TZlxNPnQreVlDU02GKeV/45E/34GUeZR6vqW0bUt27tzJunXrGI5EaGtvZ/r06Vz/huuor68fU0GDUopweIjBwUFS6TSR4WFqamqKySeHwsniTJPP50mnU9i2hXBnZM3tXe48nIEpl8s720uZJi0tu+jq6hr9kkU8Hg9z5swhFAodFI4sWE2HQ7itk0OhEGedtZzm5olulxpFV1cXf/nLXw9q8HCiCCHwGAYVFRWcc84K7vz8HVx15Up32yxFKpFg6+o1bP7if5L/8Y8Jh0L8s6wM/wUXMGHq1KPeB0dCIsmrPPcE7sFOSso3VbBg6nyqq5zde14sXrxXPkUprMX37NnN//zkHtra2gmHw+zdu4/t23cQDAT4+n99jc999jM0NzePSXAFhBAYHj+TZ99AWL8dRZCJtUnm1t7Pg3/8NPl8pij27du38fTTq4nH47S1tVNXW8v1b3iDM6sdZsYcjVKK9o4O0pkMQ+EwM2fO4MwlZx6lMaFjxZimSSadOWIFmRBOxl3Bg59MJsnmcqMPKyLcHVAMXce2bXxeL0+vXj1mkQrXjL/+DdfR0NAAwllDb9u+nadXrzn+ZJfDUDDnq6urufba1/Pxj3+MqVOnEPJ6mJ3Ps2Q4gqe0lKF58wisOJdFS5bgDwRGv8yYUSjy5PkqXyWqoug7dRYGFvLet988+tCTzqtO6AA9Pb2sWvUvhoeH6e3tZc+ePeRyWa59/TV85StfZsGC+Xi9Xjeh4tAiODRuvFrzMnnW9ezovYRoQqehOsOs2sfZtu7n5LNOmeWWLVtJJpO0tbVh2RbLli6lrs7xUh9OeCORblZZa+sBMm466YQJEyhz2ywdjpGe9WQyeVSzWtd1Z4ljO7vXFFp0HQpHqB6WL1+O1+t1Q3mwffuOYg350RBC4PF4efe730lDfT1CCJLJJKtWrWLduvVks9mTKnbhbtLg8XiYOWMGH//YbXzuM5/hrMoKVDxOn2WxtqSECeedw6LFZ4x5ED4cw/Yw/8o/jZkyCbQEONt3NuVlFaMPO+kc/o44TVFKkUwm6OrqYuvWrfR0d7Ns2VK+eOcXePe730Vlpdti+QQQQkNoHqYs/CxtQ8tJZ2BSfYKawHq6O55h86a1hMMDtLe3o+s6N9zwRq68cuULQzuHoWCVbNmyhVw2R2TYKRo5Y5Gzlj0SsViMVCpJOpMmnUkzsbn5iM/RdZ3KygqUVGQzzjbER6O6uorGhvqi+f7Ms88QjUZHH3ZYdF0jEAhwyy0309TYgCYEsWiUx594nJaWFswxWgjHiq7reD0eyvw+puZNzK1b2dTVzTPxOLbfP+bkmsOhUNyXu489Yjd2m6T0sVIuvegSPGMIwZ4orzqhC3cL3WnTprJs6VLe8c538MEPfIApU5wKqrHOqEdHo7K6icln/Ccd0bOwtanU11Wi5TaRGt5MJNzJ5CnNvOtd7+CC888/5vcdHBykra2NZMpJk62qqhpTp9uBgQHi8YSzn1wyhf8IpjsjZjwpnY0OMpn0EU3xwvFnnXWWY1koRSIeZ9euXYd9zqEQQuDz+bj88suZMHECuq4zODDIY489zvZt28i7bbFPJgIQUiIffxxx3x9p6e3lsb5eFq5YwYUXXXRCQrexGZADPOp/lHgyjuchD8ualnH+uecd0QI7Wbz473CKIYSgpqaGm266ic985tNc+/rXH9SQ8WQhhEDTPVTXzqRkwsdpj16ELWporMlyxvQ2JtW08c63v5kzzzwT7zHuraWUoqWlhWw2x0B/P4aus9RNkT0aqVSKTCZNKpkkk0mP6X2lW44L0NHRQTweP6LINLcrzBlnLEIqRTaXo6Oj45jMbuHG2KdNm8bll13GpEmO5dHe3sZf/vIXduzYgXR7y500pIStW+Guu4iHw/xZ1ym78kre8/73M3v27DGdq8NhYfGofJQd1g6sbouyTaX8+9v/HV07coehk8WL/w6vcoTQCZVPZWdbNVt3W8SGe6gv2cmVZ+8h2vFDbDOFtE3G2qlVugUhXV1dJJNJIpEINbW1NDU1HfVGdLLhTCzLIpPJUlZWNvqQF6BpGsFgEGnbKKXYv39/sZXTkRBCcMYZZ1BaWooA+vr62Ldv35jX6gU8Hg8zZszg0ksvZcqUyXg8HsLhMPf/6U8nVPF2KFQqhfzVr4hv385TQtA9Zw7v+eAHqaqqGn3oMZNRGZ4Vz9Jn9aE9pXPd9OtYdubSE973fKy8NO/yKkVKSTaX4+nVz9DZnWDVM4M88fR+Bvp7aaiKU6Xdz7anP8KeXWtQ0nI2VDgKtm2za9cuotEoAwP95HI5Xnv11WMy/QtrZstyUl+XLFky+pAXoOs6VVVV2K7Q4/H4mGZm4RbazJo5EyEEw8PD7Nixo1hsM1YKJvyMGTM477zzivuaDUci/M///A/pdPrExa4U2Dbqb3/DevhhtqbT/Njj4X1f/RpTpk93N4s88rk9HM72GZIHrAf4q/1XzM0mxkM6733Le/F5j7xsOpmMC/1FQrqlm7/85S/Zt28/vX2DmKqGhed9md789UTiQapK00yrfops13+ye/sjSHl0R9eWLVvYv38/8Xic/v5+li5dSnNz8+jDXkBBmLa74WQ2m6W6uvqoN5pwE0wKz1cjdic9EgXTe+7cuUUn4969e+np6Rl96Jjwer0sXryYyy+/nPJyJ2NvaGiIr3/962456gmY8aYJDz+M/N73CHd28qhhsOiGGzjzrOUnVJ2GGzePyig71A76In3oq3Sun3s9s6bPGtPgfLIYF/qLgJSSfD7Pr3/9ayKRCENDQ7S3d1Df0MT0mYtZeuEXaYm8n72dJfgMk7nNuwmlPkfHrp9jW3GUNJ3kjRHmvHI97dFolFQqxeDgIPF4nPe+971HzCcfSSaTKaanZrNZ5syZM/qQFyDcRJZ6N9Ql3A42Y0G4OeaFZUU4HC7mwh/8GgqQKGliWxmkbbnf/3k0t0Bl6dKlXHnllcXqtsHBQX7wgx/Q1dV1zMuCwkwuIxHsVasY2LWLe6VkXXMzt3/pSxhuktSJYGLyd+3v/Nj+MXKfJLQrxMdu+hh+74vcrXYUJ/Ytxjkkqf+/vTMPj6q8+/7nnFmzTDJZCSSyhCWALBIEBRQEpaiAFLWIFvVVRNsH92pbrfVp6+PCU7W+faW2vWxFaxW1ti64sqqgIGERkAghZF9mErJMZp9z7vv9Y2ZSTBETJijI+cyV64IrM3NmTs73/O77t/p8bNiwobPGuqKiggkTJrBo0SKsVhuqycbU791Chf9WtuwdwKE26ONsJD30EDW77qGtaTdaJPAlMUgpaWxsxO124/V6aWpqYubMmd12IgohqKyspL6+nkAgWrGWnJzc9WlHxGq1knSMiSKpqamcffbZWK1WbDYb77zzDpWVlV9ebkuJ1P0E2nfyxc6/UVWx8wg3gygWi4WzzjqL6dOnY7FYMJlMuN1uVqxYQU1NTc+W8UIg29uRzz5L6Mkn2aFp7MzN5eb77sOZkdEt5+bRkEhc0sWH8kNCLSGUjQp3XXAXgwsGY/4GQmqHYwi9FxFC4PV62bJlC3v27KG1tZXKykomT57MrbfeGiuGiRa4qKqVC+feyIBxj1PVei71hzKwWQTpvE5z2c9prX0Zv6caKcIgo3vrmpoa6urqaG5uRgjB1KlTu738k7F6d5/PRygUIiN2IX/da7ta8e4u3eOoqkpubi5Dhw5FVVUCgQCNjQ1omgYIEEFE6CCRlueQrrsQTQ/y0nP/TYen7T+sOoeF784//3zGjRuHzWbDYrFQUVHB66+/TkNDQ/cse6w1lHzpJfy//S1bNY33cnKYfuedTPve9xIqWiG2ZPdLP2vDa3k+9DzKPoXBpYMZ23csyUnRGoJvEkPovYjf72f37t18/vnnuFwuSktLKSwsZOnSpf8xWEBVVcxmK4OGns2ISY/SLBZT7h6O1y8ocH6Gtf1+fHWP43GtJhTqiM1Ob+0U68yZMzvF0x3ie/NoLDzAhAkTup3eG/2s5k4BxR1z3UFVVTIyMhgxYgQOhwO7zcq2rZsIBgMgdWRwB3rzMnT3QzTW7+Wz0gA19e1fadGJid1qtbJgwYLOeL3NZqO0tJQ1a9bg8Xi6vuTLyGgzCe2DD9AfeIAKr5e1DgcDFixg1mWXkZae3q3zcjR0dPaG9vJX/a+Em8OkbUpj8VmLmVg8sdtbrd6ke1eJwVGJW/Jdu3axbds26urqKC8vZ8yYMVx33XVHySdXUBSVNGceI8YvJuW0X+COXMmBuj7ouiBDfQ2t6WG8Dc/jqvmA1uYDBPztTJgwnrlz53xNTvuXiee367FOMLmxMtbuYLPZcDgcCCEQQrBp0yb8fn/Xp30liqLQv/9pjB0zkiED7QzIrUe0PY9ofhjN/TDNte+wcVuEF99OZlf1FKZMX0yqI/2Ipb1xlJg3ftasWZx99tmYYy2dS0pK2Lhx41d746UETUN88gn6I4/Q2NrKKquVjvPOY84115CXl4fSzfPyVQgEmtR4XH+c7eHt8AGcYzqHuTPnkub4+pDm8SCxb2QAsfzx/fv3U1JSQlVVFeXl5QwbNozrr7++W1ZXVU2kpDgZOGQag8f+BD39Nj75PB93SwSHtY4kduC0bGfs4DqKhzcx5awhOJ0OTCYl1s/iyJbvcGSsLDYaQw90e8mvxLzu8f28lJIPP/wQn8/X9alfgQQkaY5UJhQP4fwpDs6doJCkvUfA9SxffL6Zl9/WeG/LEApG3sFV/+d+5l96BampR8/ZJ7ZayMzM5IILLmDMmDGYTCZCoRDr169n9erV/7nyiDnfwiUlyF/9itbt23kDqB47livuvJOBQ4d2aztzNOLhtA8DH/K25W0iZRFs622MTR1L0ZBjn52eKEc/kwZHRcbq2RsaGti4cSMNDQ1UVFTQt29fFi1axGlfk0feFUVRSHfmUTTmcs48/880mx5izfaRtPhySbLpDM5vZca4SpIC/5fGg68htA6EHojG4L9G7HGhB4NB/H5/j1YDAOnp6WRlZWGxWDqr2Y6OBKmDjIDwo0TKyDKvoiCzGrtVxd2eyXubc3jqH9lYspdw3Y9/z/zLrmXUqFHYbD2bepKVlcVFF13EiBHRMUZ+v5/Vq1ezYsWKf8f8Y8t1uXkz6v33E966lbUmE5uGDWPhffdRXFzc43NyJCQSv/TzsOVhgq1BbNtszMqYxZVzruzRtdDbGEI/RmQs3OV2u/lXLEursrKS7OxsFi9eTFFR9O7dkz+uokT7tSclp9MnfwzDxixg5NkPU/K5nfLqMEF/E5mOFgZk7iJPeYBg+cXU7vgRDZXrkCIYc9xFYgL7cnguHA4TCAQ6K9ccDkf0eN38fKmpqTidzs62UaFQ6DBrGbXa0eNqIMMgQkjho6NmGXrND9Brf4hsW8GhQy6271V5Z6OTtzb1Y/ZlD3Hl1XcwYuQ40tMzMJujbap7gsViIT8/nwsuuICCggKINcv8+OOPWb58eTSrLxIhvHMnkQcfpH3zZl7TdV5xOrnjqac469xzsfZCKE0i0dF5gifYyU7YAwP3DeSmC29iQMGArk//Rknsm53CCCFoamriueeeo6WlhcrKSsxmM4sWLYp1he2ZyP8TBavVRnJqLvsqzbzyTpiHnvLy91Vm9pSZ6ehoxywOku9Yi711CXveH8PezT/D33EAobchROhLXmuz2YzVakHTok4up9PZows7/nqTqmK1WjCbDws9SYEUYaTwgN6M7lmDXnkBonw0lo4/0tywnc8+b+Qv//Dx+xWtrPlEobzWTF6/Is6dOp3U1OhNJxFUVWXw4MHMnDmzM2XVarXS4nbjbW5GVFdjfvJJIps2sV3XWZmWxvW/+x1njB+P7RjnpnVFQ2O32M1KsZJATQDbahvF3mKmT53+rS3Z45zSraSOhbglb2pq4vnnn6ejo4Oamho8Hg+XXnops2bN6qyCSxSv18fateuorq4lIzOHxTfdy/jJN7J9j58DlR68viAWs8Ck6mSkBslO/gJr4GX87lfRhAWzIlDEIRThIxQK4GqswN1Yzg8uv5Thw4dHxSrjqbcSJbYCkOggdRQEoCPRMZsUOjyNtLdU40zxceb4IlLsXtAakJFawm1rCdbeh978GOHW1/F1tFDVIPh0l8IH21JZV1KAkjqHaxffy8xZc9i2bQc+n5+mpiYKCgpITU1NWOyKopCXl0dOTg5ul4tIIMDgcJisnTtx/OtfeN56i9VS8mKfPlz4058y/4orsHSj+WZ3kEgaaWSZXMaW9i3o63VGvj2Sp373FBnp0bTdbxNjUksP0XWd5uZmVq1aRWVlZWc11/z581m4cGGvhU50XWfNmjVs2bKF5uZmBg4cyO23346CRCIpP7Cfd996kRSri6zUetRIKX2zfOT3kTgdYLUqqKqColiR1lH41PNoae2gsaGGrOwBFAwchySJSESAasZmz8Jk64MQKpGgC0V6sdui3W11LYKiQltLLWFfOVbFhaLX4bBVY1E8SCnwByQt7ZLGZkl1vUL9oXQ08+kE9SwysouYNesSCgsHg6Ki6zrLli2LtsDy+Rg2bBi33nrrUaIT3Sce5w/6/axauZLhJSUMDYUI1NXxcVkZH2ZlMX7pUuYuWEBSrCdeosQ7xzzMw/w+/Hu8W71kPJDB8h8tZ97seb2wukscQ+g9pKGhgY8++oi9e/dSU1NDY2MjV111FZdffjmW2BikRJFSEggEePrpp3G73ZSXl1NcXMzdd9/d+Xtd1xFCRwoNt6uaPTvfxde2Fz14kPSUDuzmZjIdYbIyVJyZ/TE7JiOlGRk6AKHPUFUNf8BMMKShqFYczkFYU0egaeBvL0ORTaSnKoSCHsLhABZrKqakUWDphx7x0Na0E5+nmg6fQlOLSmOzlRafk0AkC0vyCLLzhnLhhZeQmZWDokT70MWXr7qus3r1at5//30CgQApKSksWbKEIUOGJJyNBrFkmHCY0ObN8NRT+FNS2BUKsbKujolXXMGlCxfiSEvrnWMBIUJsYhP3Re5ja8VWcv+Qy5K+S/j5HT/Hau6dFUOiGELvIatXr+ajjz6itraW+vp6rr/+er7//e/3miUnJoS9e/fyxhtv4HK5cLlc3HDDDcycObPrU79EXV0dZWVlhENtoLkIeA7S3nKA3FwnjrRckmwRCJVi0vZgMwcAUFVJkh3SUkFRwOuDiAZmE9is0NYB7V7QRAqWlLHopiF4vGH2lX5GXUMzOX1OJ6ffGaiWLFId2TgzchkzZizp6eldP14nQkQbcy5btozW1laklJxzzjnMmzevM4f9mJESGQrBhg3oy5fTXlHB5qIiNlutNCcnc+PSpYzrRtVed5FItrGNe7iHjY0bEcsFt6Xcxi+X/pKUlJQTQuQYQu85Gzdu5Pnnn6epqYnLLruMyy67rNcseRyfz8err75KeXk5+/btIysri4ceeuio4uGwMlSIDhb0tLfidruQQqfi4H4++2wLkWAT+X1TSEu1UFe7n2ZXBUgdIRVMJgWrRUTDzcJKanoe6c5skpIzUNRUVHMGrR5Be7uf1rZDzJ49n7y+Ayg4rT82W3T8lBJLUT3a+YivSHbu3MkLL7xAIBAgOzubRYsWUVRU1PXp3ScSQbhc8Je/oK9axb4vvmC1xcKOoiJyJ07krClTmHH++WRlZXV95TGho9NEE4+KR3lSPInpVRPnfXwey368jOFDhicck+9NDKH3kPb2durr65FS0r9/f5KTk496UfcUKSVbt25lw4YN1NbWcuDAAa699lrmz5/frVZRXZFS4vV6Wb9+Pe+++y5Tpkxh8uTJWCxmgoEOAn4Pui7RdFAVMJujll1IE2ZLEkl2Oza7DUUxEQyGWLt2LQcOlNPR4eG3v/1t51TSY8Hv9/Poo4/S3NyM3+9n7ty5zJ07t0dhP4hacYQgsn8/PPEEyqpVuFpaeNpkYvfQYdz66G8pGDiQ7JwcUlJSjvnzHo5EEiDAWtayNLKU+pJ6cp7M4bF5jzFvzjxSko/cV//boveu0FMEh8PB0KFDKSoqIrmXnDlx4pauoqICv99PY6OLfv36MXv27GMOz8QjBLt37yYSieB0ZlBQUEDfvL4MHDSMESPHc/ro8Yw9Yzyjx45nxOnjGT5yPCNPH0dR0XD6DxhEXl4+ffr06UyYkVLg9fqoq6vrergeYbFYuOiiizqdVTt37uTgwYNHTl09GuEwlJSg3nsv8pVX2NTezt1JSew/7zyWv/kGZ02ZQv8BA0iNjXFOFIkkQoTNcjM36TfRVNaM9c82lo6/mYtnXZz49uM4kPi3PsVQYwUe8eVpbwpdCMGOHTuoqanpnKN2yy3xqrdj+1NpmtY5UikSiSCEjslkwhRLfDFbLFgs1iP8WDCbLYd9VxNWqxVVNSFltPPMoUOHDkua6TmqqlJQUEB6uhO7PYnKyirKyw92I+su6nAjEkF6PIgPP0RbupTGdet4JRTi6bR0Ln7kEZ5+6SWy8vKw2myYY7nwif69BIIIEdzSzQ36DTTXN2N9zcI1qddw7RXX4Ex3YlITXzH0Nsd29RgcF/x+P7W1tbR7PLjdbkaPHs3QoUMSujjjBTearhMKhxHi2ISpKAp2u71z+2A2m3nub39LWOgORxqjR4/GZI565V9//fWjToOBmMMtEEBu30H4llsJL1jAwdJS3gDWDirkR8+uYME112CLbSsSOX9d0dEpp5wpcgp1zXUoa1TmeObwvw8vO26TUHsDQ+gnCFJKDhw4QFnZAdra2mltbeP8889P2Jsv4yOgNJ1IONI5/uhYUBSFtDQHVpsNq83GgQPlCQldURSSk5M4Y9wZ9MntQ1JyMm1tbdTW1h65nbOUEAohq6uJvPoqoTmzaf3nq2zRdf6WkUnJ5Cnc8IflTJg6FYvNhtqLIo+PUtout3ONfg3uQ27Uj00MXj2Y6SNn4EiJzoM/UTGEfgIgpSQcmxHu8XhoamomP78f06ZN7RWh+/0BNE0jFA5DTx1dXRg2bBgZGRmdDR+8Xt9/CrIHqKpKZkYGQ4ZEu66kpKayYcMHeL3eL+/VY2EzuWYNctkyQnfcQbnXyytC8uLAQTiWLOGuxx5lUixvPZHveCR0qbNN28Y9+j3satuN9pEg59VcfjLrJ1yz8OpeP15vYwj9BEAIQV1dPfvLymhr99De3s7lP7j8mLzsXYlEIlRVVxOORAiFwshjXLrHyczMIim2JLbZbNTW1iQkdGIFM0VFw8nIzCDJnkRNbS2RSCT6S10Hnw9ZUgKPPkrg/vupe+EFPtI0nktN4+D06cy7/5fccMvNDB02rNcFFy873apt5QHtAUraSuBjSHstjSVjl/DDhVed0JY8jiH0EwC/388X+/bR0NDAoUOHGDlyBGPHjDlmT/vh6LpOa2sbmqajqApmS2LvqZrUWPvjaFeXlpbWnnvJu2AymRg0aCBDhw7BbDaRkpREOBiMitzjQb70EvrPf473iScoK/2CV4TkLxmZFP/mN1z7wANcMG8emZmZvXK+uiIQNIpGVoqVrJPrCG4NYX3NzpIRN3LDNddjtURn9J3oGEL/lomGv5rZvXsPHR1e3E1NTJp0NtnZ2cfsaY8jhKCtrb3T4o4cMYLCQYVdn9YjrBYLqhJteGG1Wtn08cdHHdHULRSF1NRUxo0ew6C8PM40mbCveBblmWcQP/gBoQcfpH5rCf8MR3jEmUHHokX87O/PM/uHVzJq9KjjIrR4yWkrraxUVvIqr6JvFaS87uCnE+7mluv+i5zsnF5fQRwvEruSDBJCxhpXuNxu2tvbaW1tZcrkyUycMDHhAo+4Ey7aGVUnHA4zePAQ+vf/+h7wR8NsNne2WrLZ7Hz++d7ELLqUKEKg6DqDCvK5KjOD+VoEZ3UV+jPP4N+2jY1Nzdxns/PO5Ckseeav3PzAbyg+6yxS09I6w2a9SVzk7bSzTPwvD0YepHV3K0nPpXDvxHu46fIbycvJOyGKVbpL754hgx4hpcTr87F+/QZ8Ph+ejg5GjxpFXl60h3qiSCkJBAPoenSYhKpG01MTQVVV8vr0wWKxdN6MxLFacxlt7YTXC4cOYd6/H+fBg1iCIYJmC59nZvKLvL48NXUai198gT+/+HfOnX4eTmfiE2+/irjIPdLD1YGrWe57ko5PvaT+NY1fjLqX6y+9jqyMzF6/uRxvTq5P+x1DSklVVRWBQICWlhbOLC5m2rSpR72Ipa4jw2FkN6yoEIKWltZo6yddi+5hE7yBqKrKpElnk5yUhN1uw2wyE+7GKOVOdB3C4Wiiy549iI8+InT77QRnzKBt9hwqXnmF3T4fr1ks/KlPX8T0Gfzl+eeYNPVcHE4nltjc+t64EXYlLnKXdHGz/2bW6+uRJZD9Vg5LCpdw7VXXkJ4arXo7Hsc/nhhC/xaJhr781NfX4/P5GDpsKFlZR7cWkf37af/gA7SvaWksYw0yqqtrooUuEpLsSSR6eaqxhoyqyQQooESnpXQX2dCAXL8e/e9/R7vkEvzz5uFe+RLbKir5h9/Pk5rO23l9qcvPB7udu3/2UxwOR8Jhxu6go1NGGY+Jx3jT+ibaFkH2m7ncMuQW7lx8O31yc496Ez6RMYpavkXiQvznP/9Ffn4/Lrlk7ldORJGaRnjfPgIPP4z3k0/IuuoqRL9+qOPHYyksRLFaUW02MJlQVBUR6xP3+ONP0NDYCMC1117NGWPHJuyd1nWdxx57nKbmZloOtbB48XVMmjQpehOJL8eFQGoa0utFVlSg7toF4Qja53vQ332XttZW6oWgQlE4YLXjGTAAa3ExfceO4eJL5hKKRNi/bz8zZkzv8VjpnqKjE5ZhPuZjnpRP8kHLBwT3hejzTB43n3czSxf8GIspOhXmZMUQ+kmCCAapfvY5gv/zP+Q2uUmTEDCbUCdPxlxUhJaUjCjIR5k0CduwYZhSU4loGn/5f8spr6ig38AB/OTuu6JvlqBodF3n6T/9GVdFBR6fj6uvvpoxZ01ERiKItjb0+nqsq1dDayuyrQ2xbx9aSQneUIg2FPapKttNJhqcGTB4MBMvmUvuiBFMnDiB7Ozsroc7rkgkXullnVzHI/IRSlwlKB+Z6Lcqn1/P/m+uvLT3ugZ9mxhCP0mQuk57RQUf/unPuFatIr/JTUEkQiaQBlgUBelwoA4ahLlvX+S556INH07Zhg3U19SgOp2ce9tt2LOzIb41UBQwmaL//5oLWdH1qKWObQtK33ob95bNJLW0MrBfX7KGDEHdvBnhcqF7PFBaijcUAl3nCympVk3Umky4cnIwDy/ivMsvJyUzi6TsLEaefjrm2N77m7SaESK4hZuX5cusECsoqz0Ab0HR3hHcP/c+Ljr/wpPekscxhH6S4W5ooL2ujqrt29m9di3eT7fSr7WFkbqgrxQkSUmSyUTSiBEo06ejh0JEqqqQBw9iT0lB2myEVBO6qiCdTpTiYuyFheg2GwogFQWhKJgUJVohJiVmXUdWVaF8+inoOqacHDSHAy0QwNLSAnv2INraCLa0oIbDVCgKNapKo6Kyw2Si2ZFG7qjTGTdjBqOnTMaZk8OAAQN6JfPvWIg73Wr0Gm4M3EipWkpjnQvbizamNJ7DPYt+xuTxk4/7luGbxBD6SYbQdYQQaOEwkWAQEQrha2lhx8aN7Hzvfeq3lTAoEmHksGGMLi5GSIlt3z7U3buxt7WhKgpmYhNeVBXVaoXD4sHxi0GJ/zs+VFHT0cMhJOAzW0i5+CI8zgw6ggFat25lR3U1TcB+1USL2ULu8GGMmXYe5198EXkFBZitVqx2e7TYRFW/Nc91fFzSnsgeLuVS3FoTYo/A9JKZy5Mv4+4f3sWQwiFYzdZoBmDXNzhJMYT+HUAIga5p0Z9IhEgoROX+Mta8+w4Wn4+G0lIsFRWk+f04dZ2+UiKBPkIQ0HUcmoYuJVYp0WKhGL+i4ABciopNgRaTiZDJRJOi4lNVnNOmEu7TB18wyJYD5QwbOoRRxcVk5ORQfOaZpDudmC3RevbeqANPFBF7+PCxyr+KOy130u5pRxyQpCxPYcGgK7jvpnvJz8tHSbDw50TEEPp3gZhwpYyNHop1qnn77bd5++13cKansfj660lPS8PV0IDP60UPh/F0dFC/fz9le/fic7sJhcOYgYDJRKbdTiDdSV5KMkpKKvn9T+O0wkJS0tKx2m1EdJ333nufiooKxo0bx9Kbl3aG3JR4KWxMMCeCaIIySAMNLFOW8bL2Ml6XF/VNlczVmSwcupBf//LXJNujbcFOhM/b2xhC/44ihKC5uZk//vGPzJ49m9GjR2OxWBBCxG4IIGV0OqoQ4t8JOFL+2zF3mFAVVf2SCKI5+k288MILzJo1i9GjR5+QAtHQOMQhPtE/YYVcwXrPeoI1QWwv2JmmTmNq7rn8103/9a3MLP8mMYT+HUbGLPtR98Ox1cDXcaTXH37pHOn3JwL11PN7fs8/wv+gsqkSda1K/539mZt6Cffc8nOyMrO+s1b8cAyhG3yniDdudGku/mD6A/Winn96/oleqmNeZ2ZqaBpXjFvAvO/NI9mefPSb4HcIQ+gG3wlk7BEUQdaylmf1Z1mlrCJSFcG0xUTGexksHL6Q6+Zcz8iiEd+JJJieYAjd4KRHRydChApZwRPaE2xgA7WeWrRSDeu/rIwPjeeuy+6ieGQxOVk5mE0nT3lpb2EI3eCkJN7iSUenUTTynPYcL8oXqVKq0Ko11LUqqa86uG7Gddxy7c3kZOZgs9m6vs0pgyF0g5OO+D68Xbbzlv4Wv9J/hVtxo9cJlO2Q/rqTC7Iu4A8PLsdusWNSoz34VeWrqwK/6xhCNzgpiFvvAAFc0sV+sZ8/Rf7EOm0deouOslch49MsBtcN5scX38TsGbNJSe6d8UvfBQyhG5wUtMpWymQZ29nOSrGSraGtRFojyE8hqyyLMa6xzB59MVfMXkB2VrTf3qlswbtiCN3ghCO+/44QoY021og1lMpSPtA/oNRbir8lgGmnCftBO5ckXcLI9JHMmTSH/qf1x26Ntrc61ZxtX4chdIMThnjqjkBQpVXxjOkZGmnkDfEGLb5WZJ1A2WLC8pmF+dnzmTRwEgsvXEDmSdjD7ZvGELrBt4pEosUeXuHlRe1FPjV9ilu42SK2oDVp6AcFll1WHF+kce3EqxlfMJ6xhWM4re9pWC3RUlLDgh8dQ+gG3wjxhJbDHwJBu+ahSlTyhvom65S1VOgVtOgtiGqBWmbGvtlO/+oBzDlrNnMnzWHIgCFkZ2YZwu4hhtANjitxUetSjya2KBEqwpWUmvdyX/g+gtYgET1CIBIg3BRGlipY9ltJ3pjM1Lxp3H/HL8hJzyHZmoTdZsdkMmMyluk9xhC6QcIIBLrUkUpsjy2jjjSBIEyYFr2Fz4K72KaWsMq8ijpRR4QIuk9H+sHsNmHdYce+N4mc6lymDz+Pn956F5lpGVjM0VZOhgVPDEPoBgnTITqo1CsJqAF0k4477GZ7ZDuHTIdYp66j0lSJCAsIguyQ0KCgeBScFRlk7s2i0DaIKYPO4YKzZ3D6iNOxxFJUVSVaVWaIPHEMoRskhC51PvJv5PbQbVRZq5AWiR7UEUIiwwLZDopXwVRnIrXOQb7MJ7s9m/SgkzMLxjNu6BmcOW48dpsds9mM2ZRYK2qDI2MI3eCYkUgieoSVzS9xg+cGRECgtCtRi92qYGoxU6gNYmTaCDKCWQxOLmTCmDMZXDiYfn37fknUhtU+vhhCN0gIIQU7XDu55417qdhdwaRRZ1OYVYiDNCyahYF9BlI0YBjpqWmkOdK+tOc2xP3NYQjdIGF8fh/7yvZxqLmFwkGF9MnNJSkpycgzP4EwhG6QMEIIdKGj8O8ec0am2omFIXQDg1MA47ZrYHAKYAjdwOAUwBC6gcEpgCF0A4NTAEPoBganAIbQDQxOAQyhGxicAhhCNzA4BTCEbmBwCmAI3cDgFMAQuoHBKYAhdAODUwBD6AYGpwCG0A0MTgEMoRsYnAL8fz8vxbuSmvJXAAAAAElFTkSuQmCC'; diff --git a/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/pezkuwi.png b/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/pezkuwi.png index af12133d..0e2befbb 100644 Binary files a/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/pezkuwi.png and b/pezkuwi-sdk-ui/packages/apps-config/src/ui/logos/chains/pezkuwi.png differ diff --git a/pezkuwi-sdk-ui/packages/apps/public/favicon.ico b/pezkuwi-sdk-ui/packages/apps/public/favicon.ico index ec3c167a..f1f6bf58 100644 Binary files a/pezkuwi-sdk-ui/packages/apps/public/favicon.ico and b/pezkuwi-sdk-ui/packages/apps/public/favicon.ico differ diff --git a/pezkuwi-sdk-ui/packages/apps/webpack.config.cjs b/pezkuwi-sdk-ui/packages/apps/webpack.config.cjs index 2dd73846..c0381a5b 100644 --- a/pezkuwi-sdk-ui/packages/apps/webpack.config.cjs +++ b/pezkuwi-sdk-ui/packages/apps/webpack.config.cjs @@ -22,7 +22,7 @@ module.exports = merge( plugins: [ new SubresourceIntegrityPlugin(), new HtmlWebpackPlugin({ - PAGE_TITLE: 'Polkadot/Substrate Portal', + PAGE_TITLE: 'Pezkuwi Explorer', minify: false, template: path.join(context, `${hasPublic ? 'public/' : ''}index.html`) }) diff --git a/pezkuwi-sdk-ui/packages/page-contracts/package.json b/pezkuwi-sdk-ui/packages/page-contracts/package.json index 1e01c1fb..5ab66714 100644 --- a/pezkuwi-sdk-ui/packages/page-contracts/package.json +++ b/pezkuwi-sdk-ui/packages/page-contracts/package.json @@ -16,7 +16,7 @@ "type": "module", "version": "0.168.2-0-x", "dependencies": { - "@pezkuwi/api-contract": "16.5.2", + "@pezkuwi/api-contract": "^16.5.9", "eventemitter3": "^5.0.1" }, "peerDependencies": { diff --git a/pezkuwi-sdk-ui/yarn.lock b/pezkuwi-sdk-ui/yarn.lock deleted file mode 100644 index 0e05cae4..00000000 --- a/pezkuwi-sdk-ui/yarn.lock +++ /dev/null @@ -1,23220 +0,0 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - -__metadata: - version: 8 - cacheKey: 10 - -"7zip-bin@npm:~5.2.0": - version: 5.2.0 - resolution: "7zip-bin@npm:5.2.0" - checksum: 10/5339c7a56f57f8d7d16ac8d15f588d155e5705cd4822e0d161ea45e6fbfe4a5226b464a331ec555a1ec9376ad04e5f61c125656cf3a1507900c1968ccbcfe80b - languageName: node - linkType: hard - -"@acala-network/chopsticks-core@npm:^1.2.1": - version: 1.2.5 - resolution: "@acala-network/chopsticks-core@npm:1.2.5" - dependencies: - "@acala-network/chopsticks-executor": "npm:1.2.5" - "@polkadot/rpc-provider": "npm:^16.4.1" - "@polkadot/types": "npm:^16.4.1" - "@polkadot/types-codec": "npm:^16.4.1" - "@polkadot/types-known": "npm:^16.4.1" - "@polkadot/util": "npm:^13.5.3" - "@polkadot/util-crypto": "npm:^13.5.3" - comlink: "npm:^4.4.2" - eventemitter3: "npm:^5.0.1" - lodash: "npm:^4.17.21" - lru-cache: "npm:^11.1.0" - pino: "npm:^9.7.0" - pino-pretty: "npm:^13.0.0" - rxjs: "npm:^7.8.2" - zod: "npm:^3.25.76" - checksum: 10/25e10af36a5eb9d56e6d3922277c37a906dee715d3c071149d25c1b60a80adffe1cf4e479d4892b12a8dcbbd5a4033a4bc2abfcd12520343c9c41478e7a527c2 - languageName: node - linkType: hard - -"@acala-network/chopsticks-executor@npm:1.2.5": - version: 1.2.5 - resolution: "@acala-network/chopsticks-executor@npm:1.2.5" - dependencies: - "@polkadot/util": "npm:^13.5.3" - "@polkadot/wasm-util": "npm:^7.4.1" - checksum: 10/897da956ac210e115070edeac0f6fcce59acf4c0c566b832a5c3085b536fc434617bc5b0af459b8826bcd3ce2281d65d8c153fb154b765bc00c71f475cddda02 - languageName: node - linkType: hard - -"@acala-network/type-definitions@npm:5.1.2": - version: 5.1.2 - resolution: "@acala-network/type-definitions@npm:5.1.2" - peerDependencies: - "@polkadot/types": ^10.5.1 - checksum: 10/3af053d76b87c5586139448add02347b90f168ce2bb956d946d71955f8a754e41924944832e0e160464fdbe69ff85946fc879d86c2d7ab91ab061cc7fdd816d1 - languageName: node - linkType: hard - -"@adobe/css-tools@npm:^4.0.1": - version: 4.4.4 - resolution: "@adobe/css-tools@npm:4.4.4" - checksum: 10/0abd4715737877e5aa5d730d6ec2cffae2131102ddc8310ac5ba3f457ffb2ef453324dbb5b927e3cbc3f81bdd29ce485754014c6e64f4577a49540c76e26ac6b - languageName: node - linkType: hard - -"@adraffy/ens-normalize@npm:^1.8.8": - version: 1.11.1 - resolution: "@adraffy/ens-normalize@npm:1.11.1" - checksum: 10/dd19274d9fcaf99bf08a62b64e54f4748de11b235767addbd3f7385ae1b7777bd704d17ff003ffaa3295a0b9d035929381cf3b38329c96260bff96aab8ad7b37 - languageName: node - linkType: hard - -"@asamuzakjp/css-color@npm:^3.2.0": - version: 3.2.0 - resolution: "@asamuzakjp/css-color@npm:3.2.0" - dependencies: - "@csstools/css-calc": "npm:^2.1.3" - "@csstools/css-color-parser": "npm:^3.0.9" - "@csstools/css-parser-algorithms": "npm:^3.0.4" - "@csstools/css-tokenizer": "npm:^3.0.3" - lru-cache: "npm:^10.4.3" - checksum: 10/870f661460173174fef8bfebea0799ba26566f3aa7b307e5adabb7aae84fed2da68e40080104ed0c83b43c5be632ee409e65396af13bfe948a3ef4c2c729ecd9 - languageName: node - linkType: hard - -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/code-frame@npm:7.27.1" - dependencies: - "@babel/helper-validator-identifier": "npm:^7.27.1" - js-tokens: "npm:^4.0.0" - picocolors: "npm:^1.1.1" - checksum: 10/721b8a6e360a1fa0f1c9fe7351ae6c874828e119183688b533c477aa378f1010f37cc9afbfc4722c686d1f5cdd00da02eab4ba7278a0c504fa0d7a321dcd4fdf - languageName: node - linkType: hard - -"@babel/helper-string-parser@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/helper-string-parser@npm:7.27.1" - checksum: 10/0ae29cc2005084abdae2966afdb86ed14d41c9c37db02c3693d5022fba9f5d59b011d039380b8e537c34daf117c549f52b452398f576e908fb9db3c7abbb3a00 - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.27.1, @babel/helper-validator-identifier@npm:^7.28.5": - version: 7.28.5 - resolution: "@babel/helper-validator-identifier@npm:7.28.5" - checksum: 10/8e5d9b0133702cfacc7f368bf792f0f8ac0483794877c6dca5fcb73810ee138e27527701826fb58a40a004f3a5ec0a2f3c3dd5e326d262530b119918f3132ba7 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.0.0, @babel/parser@npm:^7.21.4": - version: 7.28.5 - resolution: "@babel/parser@npm:7.28.5" - dependencies: - "@babel/types": "npm:^7.28.5" - bin: - parser: ./bin/babel-parser.js - checksum: 10/8d9bfb437af6c97a7f6351840b9ac06b4529ba79d6d3def24d6c2996ab38ff7f1f9d301e868ca84a93a3050fadb3d09dbc5105b24634cd281671ac11eebe8df7 - languageName: node - linkType: hard - -"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.14.6, @babel/runtime@npm:^7.15.4, @babel/runtime@npm:^7.16.3, @babel/runtime@npm:^7.17.2, @babel/runtime@npm:^7.17.8, @babel/runtime@npm:^7.20.13, @babel/runtime@npm:^7.20.6, @babel/runtime@npm:^7.21.0, @babel/runtime@npm:^7.22.5, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.28.4, @babel/runtime@npm:^7.9.2": - version: 7.28.4 - resolution: "@babel/runtime@npm:7.28.4" - checksum: 10/6c9a70452322ea80b3c9b2a412bcf60771819213a67576c8cec41e88a95bb7bf01fc983754cda35dc19603eef52df22203ccbf7777b9d6316932f9fb77c25163 - languageName: node - linkType: hard - -"@babel/types@npm:^7.28.5": - version: 7.28.5 - resolution: "@babel/types@npm:7.28.5" - dependencies: - "@babel/helper-string-parser": "npm:^7.27.1" - "@babel/helper-validator-identifier": "npm:^7.28.5" - checksum: 10/4256bb9fb2298c4f9b320bde56e625b7091ea8d2433d98dcf524d4086150da0b6555aabd7d0725162670614a9ac5bf036d1134ca13dedc9707f988670f1362d7 - languageName: node - linkType: hard - -"@balena/dockerignore@npm:^1.0.2": - version: 1.0.2 - resolution: "@balena/dockerignore@npm:1.0.2" - checksum: 10/13d654fdd725008577d32e721c720275bdc48f72bce612326363d5bed449febbed856c517a0b23c7c40d87cb531e63432804550b4ecc13e365d26fee38fb6c8a - languageName: node - linkType: hard - -"@bifrost-finance/type-definitions@npm:1.11.3": - version: 1.11.3 - resolution: "@bifrost-finance/type-definitions@npm:1.11.3" - peerDependencies: - "@polkadot/api": ^10.7.3 - checksum: 10/af6ad64f87a2a58d7c11db9a4d3016661efa42495a95bc9938cbbc725a17bfc3750fa351211f290b6c3c0eccb778bc8d36d868ac38916b7002918a958e2dd1a6 - languageName: node - linkType: hard - -"@biomejs/biome@npm:*": - version: 2.3.11 - resolution: "@biomejs/biome@npm:2.3.11" - dependencies: - "@biomejs/cli-darwin-arm64": "npm:2.3.11" - "@biomejs/cli-darwin-x64": "npm:2.3.11" - "@biomejs/cli-linux-arm64": "npm:2.3.11" - "@biomejs/cli-linux-arm64-musl": "npm:2.3.11" - "@biomejs/cli-linux-x64": "npm:2.3.11" - "@biomejs/cli-linux-x64-musl": "npm:2.3.11" - "@biomejs/cli-win32-arm64": "npm:2.3.11" - "@biomejs/cli-win32-x64": "npm:2.3.11" - dependenciesMeta: - "@biomejs/cli-darwin-arm64": - optional: true - "@biomejs/cli-darwin-x64": - optional: true - "@biomejs/cli-linux-arm64": - optional: true - "@biomejs/cli-linux-arm64-musl": - optional: true - "@biomejs/cli-linux-x64": - optional: true - "@biomejs/cli-linux-x64-musl": - optional: true - "@biomejs/cli-win32-arm64": - optional: true - "@biomejs/cli-win32-x64": - optional: true - bin: - biome: bin/biome - checksum: 10/37b6ec783ddf8ce994e6f9df3e170b8233a99d49c4fbd75c1f65a41715edd42c7d15d981928a8765e1b7109271806ccdd96c6b098f036c61112dde2003e80509 - languageName: node - linkType: hard - -"@biomejs/cli-darwin-arm64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-darwin-arm64@npm:2.3.11" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@biomejs/cli-darwin-x64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-darwin-x64@npm:2.3.11" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@biomejs/cli-linux-arm64-musl@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-linux-arm64-musl@npm:2.3.11" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@biomejs/cli-linux-arm64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-linux-arm64@npm:2.3.11" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@biomejs/cli-linux-x64-musl@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-linux-x64-musl@npm:2.3.11" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - -"@biomejs/cli-linux-x64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-linux-x64@npm:2.3.11" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - -"@biomejs/cli-win32-arm64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-win32-arm64@npm:2.3.11" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@biomejs/cli-win32-x64@npm:2.3.11": - version: 2.3.11 - resolution: "@biomejs/cli-win32-x64@npm:2.3.11" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@bizinikiwi/connect-extension-protocol@npm:^2.2.2": - version: 2.2.2 - resolution: "@bizinikiwi/connect-extension-protocol@npm:2.2.2" - checksum: 10/67cc8effc49e86802ddec12f28f254eab32a2d1ca138e73313458bbaa66e0d09f5e80d193ab7c8c949804c2bd3910db9a4ef7646c20b63866d7f67fdf20f8e0e - languageName: node - linkType: hard - -"@bizinikiwi/connect-known-chains@npm:^1.10.3": - version: 1.10.3 - resolution: "@bizinikiwi/connect-known-chains@npm:1.10.3" - checksum: 10/fc3661ababce5090067ce936ee5b377c37db021c680019ee809230551f9e6cdbb6c2aea3ad804bbc32b18a68847e33bde259f67d73ca88a9f3f1d13200efc309 - languageName: node - linkType: hard - -"@bizinikiwi/connect@npm:2.1.9": - version: 2.1.9 - resolution: "@bizinikiwi/connect@npm:2.1.9" - dependencies: - "@bizinikiwi/connect-extension-protocol": "npm:^2.2.2" - "@bizinikiwi/connect-known-chains": "npm:^1.10.3" - "@bizinikiwi/smoldot-discovery": "npm:^2.0.3" - smoldot: "npm:^2.0.34" - checksum: 10/e8c211e556fff0611b6b010d36b6ec3da303088b3e0d958aab72ffb19eb1ff469c31827e307965dc56a636617258085f1a2b64ebbfd60517dba39df52452015c - languageName: node - linkType: hard - -"@bizinikiwi/discovery@npm:^0.2.2": - version: 0.2.2 - resolution: "@bizinikiwi/discovery@npm:0.2.2" - checksum: 10/bde24be332f9012d716ae2abb4780fbbddda1f30f0f4e112275a015df2bf525808708c03c1aa9d6d27f3a5d53688d81847c3b3ea37218c1e25a282dd909f3349 - languageName: node - linkType: hard - -"@bizinikiwi/smoldot-discovery@npm:^2.0.3": - version: 2.0.3 - resolution: "@bizinikiwi/smoldot-discovery@npm:2.0.3" - dependencies: - "@bizinikiwi/discovery": "npm:^0.2.2" - checksum: 10/0a9f1ff86b1603c6d377aa9815b3448fbcb61ff48c2746ebd25788947c407896ebfe9453bbb00ef31c80d4f831c2c6e9791d6efec607d23f9ec885b9cd341e59 - languageName: node - linkType: hard - -"@chainsafe/is-ip@npm:^2.0.1": - version: 2.1.0 - resolution: "@chainsafe/is-ip@npm:2.1.0" - checksum: 10/0055a6bc67b08c6e87a00e6059d78e2141684d76ec1227897c670fcae27bc52ed3e4c2f0532a38717dea5ac5a86b864e3c3af0a1d7f02a4d3d4270a4d2fc8ac4 - languageName: node - linkType: hard - -"@chainsafe/netmask@npm:^2.0.0": - version: 2.0.0 - resolution: "@chainsafe/netmask@npm:2.0.0" - dependencies: - "@chainsafe/is-ip": "npm:^2.0.1" - checksum: 10/fa696cdffd8b80efc76b988902655976aae4fd80cf1ff51db849c0476cc477d1bb0e50bf2700162dfa2aa5602b8594e7d92d6fa2235cdeb0246e4afc7f64947f - languageName: node - linkType: hard - -"@crustio/crust-pin@npm:^1.0.0": - version: 1.0.0 - resolution: "@crustio/crust-pin@npm:1.0.0" - dependencies: - "@crustio/type-definitions": "npm:^1.2.0" - "@polkadot/api": "npm:^4.2.1" - checksum: 10/3450f436b51e1b920371827cdf0677b663e3487a227e7e8748abaf6dd558fb9a87fc0661b6f559321c2abc82069415d7e2f9ded9cc3c52754add224612d38556 - languageName: node - linkType: hard - -"@crustio/type-definitions@npm:1.3.0, @crustio/type-definitions@npm:^1.2.0": - version: 1.3.0 - resolution: "@crustio/type-definitions@npm:1.3.0" - dependencies: - "@open-web3/orml-type-definitions": "npm:^0.9.4-7" - checksum: 10/e257d118530824f184bbb38fababcd27a0ed2aa0914ec74f9b73ef255ffb4eb55b301d6a759d957b817d11c3fd68d78b2c2fe48d652d659ace50d941e5e40b62 - languageName: node - linkType: hard - -"@csstools/color-helpers@npm:^5.1.0": - version: 5.1.0 - resolution: "@csstools/color-helpers@npm:5.1.0" - checksum: 10/0138b3d5ccbe77aeccf6721fd008a53523c70e932f0c82dca24a1277ca780447e1d8357da47512ebf96358476f8764de57002f3e491920d67e69202f5a74c383 - languageName: node - linkType: hard - -"@csstools/css-calc@npm:^2.1.3, @csstools/css-calc@npm:^2.1.4": - version: 2.1.4 - resolution: "@csstools/css-calc@npm:2.1.4" - peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.5 - "@csstools/css-tokenizer": ^3.0.4 - checksum: 10/06975b650c0f44c60eeb7afdb3fd236f2dd607b2c622e0bc908d3f54de39eb84e0692833320d03dac04bd6c1ab0154aa3fa0dd442bd9e5f917cf14d8e2ba8d74 - languageName: node - linkType: hard - -"@csstools/css-color-parser@npm:^3.0.9": - version: 3.1.0 - resolution: "@csstools/css-color-parser@npm:3.1.0" - dependencies: - "@csstools/color-helpers": "npm:^5.1.0" - "@csstools/css-calc": "npm:^2.1.4" - peerDependencies: - "@csstools/css-parser-algorithms": ^3.0.5 - "@csstools/css-tokenizer": ^3.0.4 - checksum: 10/4741095fdc4501e8e7ada4ed14fbf9dbbe6fea9b989818790ebca15657c29c62defbebacf18592cde2aa638a1d098bbe86d742d2c84ba932fbc00fac51cb8805 - languageName: node - linkType: hard - -"@csstools/css-parser-algorithms@npm:^3.0.4": - version: 3.0.5 - resolution: "@csstools/css-parser-algorithms@npm:3.0.5" - peerDependencies: - "@csstools/css-tokenizer": ^3.0.4 - checksum: 10/e93083b5cb36a3c1e7a47ce10cf62961d05bd1e4c608bb3ee50186ff740157ab0ec16a3956f7b86251efd10703034d849693201eea858ae904848c68d2d46ada - languageName: node - linkType: hard - -"@csstools/css-tokenizer@npm:^3.0.3": - version: 3.0.4 - resolution: "@csstools/css-tokenizer@npm:3.0.4" - checksum: 10/eb6c84c086312f6bb8758dfe2c85addd7475b0927333c5e39a4d59fb210b9810f8c346972046f95e60a721329cffe98895abe451e51de753ad1ca7a8c24ec65f - languageName: node - linkType: hard - -"@darwinia/types-known@npm:2.8.10": - version: 2.8.10 - resolution: "@darwinia/types-known@npm:2.8.10" - checksum: 10/297021426f62a257754e67431ca7240b80a8d6cdcba8ec381917ed54b89d03409b3b4f0513633cc8b7b451baf66732692bafb9b8be5a0ac53f6fed045f140e06 - languageName: node - linkType: hard - -"@darwinia/types@npm:2.8.10": - version: 2.8.10 - resolution: "@darwinia/types@npm:2.8.10" - checksum: 10/74d963cfcf3cc7062923d037e690f1a03191ecb61169a3cf6dbd19725a5a2994010a1f34802d5d9d6c4127dbcc8a3beb781f74e0ec00c9b3408746ae4bb4871c - languageName: node - linkType: hard - -"@dependents/detective-less@npm:^3.0.1": - version: 3.0.2 - resolution: "@dependents/detective-less@npm:3.0.2" - dependencies: - gonzales-pe: "npm:^4.3.0" - node-source-walk: "npm:^5.0.1" - checksum: 10/2c263ab64fcd1f76117bc35f2b29a150c64bd2b105c96a909a63ce2f2baf07efd93d9ae80e612161d003fb71fbe46598292375f5cc3f447a1b83cfb545dc8f8f - languageName: node - linkType: hard - -"@develar/schema-utils@npm:~2.6.5": - version: 2.6.5 - resolution: "@develar/schema-utils@npm:2.6.5" - dependencies: - ajv: "npm:^6.12.0" - ajv-keywords: "npm:^3.4.1" - checksum: 10/a219d60afca9abe708171d7b361907e36526fa8e6e7c480c6c8b05c6611d7e0989b11c1b21b7bceff5d7ccdc92315d364358ec3fd8bc5113d4e869288f32ae9c - languageName: node - linkType: hard - -"@digitalnative/type-definitions@npm:1.1.27": - version: 1.1.27 - resolution: "@digitalnative/type-definitions@npm:1.1.27" - dependencies: - "@polkadot/keyring": "npm:^6.9.1" - "@polkadot/types": "npm:^4.13.1" - checksum: 10/25b064ca94ef6fe2ca625bf566338eaaba15cf5d2a56de2d1f8235b99e1ec73422b3e421b9a9c7e2e55b9a3afa011d9c01c8121593637821a235d026715e4753 - languageName: node - linkType: hard - -"@discoveryjs/json-ext@npm:^0.5.0": - version: 0.5.7 - resolution: "@discoveryjs/json-ext@npm:0.5.7" - checksum: 10/b95682a852448e8ef50d6f8e3b7ba288aab3fd98a2bafbe46881a3db0c6e7248a2debe9e1ee0d4137c521e4743ca5bbcb1c0765c9d7b3e0ef53231506fec42b4 - languageName: node - linkType: hard - -"@docknetwork/node-types@npm:0.16.0": - version: 0.16.0 - resolution: "@docknetwork/node-types@npm:0.16.0" - checksum: 10/a552cbfa4ad2c0437f9912ae4cab3db6ff150a24a93fe72b506d761560c94ea8ec064c34c5c5f28bc56ae912ef6e31288c17787c288ac1ea0488ae6a45737f23 - languageName: node - linkType: hard - -"@edgeware/node-types@npm:3.6.2-wako": - version: 3.6.2-wako - resolution: "@edgeware/node-types@npm:3.6.2-wako" - checksum: 10/f320f99c9018a65b11a2f84a98eee326d44756318162c72fe5d997a92fb77e76b811daed3ff2f2fd980cf0fb1a8ad73837041346fe411fb4a392f849bb63313f - languageName: node - linkType: hard - -"@electron/asar@npm:^3.2.1": - version: 3.4.1 - resolution: "@electron/asar@npm:3.4.1" - dependencies: - commander: "npm:^5.0.0" - glob: "npm:^7.1.6" - minimatch: "npm:^3.0.4" - bin: - asar: bin/asar.js - checksum: 10/c41c6b0a5e112e0209b7f6b6eec7d83d3162a8061233375c76ca9f94afcff326a3447e5f53889b35049a855648a09f203c9850c2dbb6cd4690b54a2075eae266 - languageName: node - linkType: hard - -"@electron/get@npm:^2.0.0": - version: 2.0.3 - resolution: "@electron/get@npm:2.0.3" - dependencies: - debug: "npm:^4.1.1" - env-paths: "npm:^2.2.0" - fs-extra: "npm:^8.1.0" - global-agent: "npm:^3.0.0" - got: "npm:^11.8.5" - progress: "npm:^2.0.3" - semver: "npm:^6.2.0" - sumchecker: "npm:^3.0.1" - dependenciesMeta: - global-agent: - optional: true - checksum: 10/ac736cdeac52513b23038c761ebcb9fd315d443675f12c975805d7bcddcdabe5be492310ce5f6f1915d27013bcdcf19d0dac73c72353120948bbdf01fb3e11bf - languageName: node - linkType: hard - -"@electron/notarize@npm:2.1.0": - version: 2.1.0 - resolution: "@electron/notarize@npm:2.1.0" - dependencies: - debug: "npm:^4.1.1" - fs-extra: "npm:^9.0.1" - promise-retry: "npm:^2.0.1" - checksum: 10/0509c3bd922dd1ed6d1a2042dd78cefd3bd1530000b79c1b9983effb5d3816d5da7d22cfd1ec4d2191d536b1b9cd25f3bfb5202a6ffe58543b22fdf3b468c69f - languageName: node - linkType: hard - -"@electron/osx-sign@npm:1.0.5": - version: 1.0.5 - resolution: "@electron/osx-sign@npm:1.0.5" - dependencies: - compare-version: "npm:^0.1.2" - debug: "npm:^4.3.4" - fs-extra: "npm:^10.0.0" - isbinaryfile: "npm:^4.0.8" - minimist: "npm:^1.2.6" - plist: "npm:^3.0.5" - bin: - electron-osx-flat: bin/electron-osx-flat.js - electron-osx-sign: bin/electron-osx-sign.js - checksum: 10/b8df7c097954e754fec99544d5c6787bcc53de5125557399978ec17084bfb7e8d94b6857b5b2b14f6b2c030cd1086f05f816615a6480a7b581ac8584e2120fcf - languageName: node - linkType: hard - -"@electron/universal@npm:1.4.1": - version: 1.4.1 - resolution: "@electron/universal@npm:1.4.1" - dependencies: - "@electron/asar": "npm:^3.2.1" - "@malept/cross-spawn-promise": "npm:^1.1.0" - debug: "npm:^4.3.1" - dir-compare: "npm:^3.0.0" - fs-extra: "npm:^9.0.1" - minimatch: "npm:^3.0.4" - plist: "npm:^3.0.4" - checksum: 10/41c03ff5a1928c49c0f05e5f4a17278f1d7142f72530a2a7b9c4a49308dd4a280d7576f4961315ee9d45755a772f0d7fdff2d67f5f2e61e962b7c1aa94c40185 - languageName: node - linkType: hard - -"@emnapi/core@npm:^1.4.3": - version: 1.8.1 - resolution: "@emnapi/core@npm:1.8.1" - dependencies: - "@emnapi/wasi-threads": "npm:1.1.0" - tslib: "npm:^2.4.0" - checksum: 10/904ea60c91fc7d8aeb4a8f2c433b8cfb47c50618f2b6f37429fc5093c857c6381c60628a5cfbc3a7b0d75b0a288f21d4ed2d4533e82f92c043801ef255fd6a5c - languageName: node - linkType: hard - -"@emnapi/runtime@npm:^1.4.3": - version: 1.8.1 - resolution: "@emnapi/runtime@npm:1.8.1" - dependencies: - tslib: "npm:^2.4.0" - checksum: 10/26725e202d4baefdc4a6ba770f703dfc80825a27c27a08c22bac1e1ce6f8f75c47b4fe9424d9b63239463c33ef20b650f08d710da18dfa1164a95e5acb865dba - languageName: node - linkType: hard - -"@emnapi/wasi-threads@npm:1.1.0": - version: 1.1.0 - resolution: "@emnapi/wasi-threads@npm:1.1.0" - dependencies: - tslib: "npm:^2.4.0" - checksum: 10/0d557e75262d2f4c95cb2a456ba0785ef61f919ce488c1d76e5e3acfd26e00c753ef928cd80068363e0c166ba8cc0141305daf0f81aad5afcd421f38f11e0f4e - languageName: node - linkType: hard - -"@emotion/is-prop-valid@npm:1.2.2": - version: 1.2.2 - resolution: "@emotion/is-prop-valid@npm:1.2.2" - dependencies: - "@emotion/memoize": "npm:^0.8.1" - checksum: 10/0fa3960abfbe845d40cc230ab8c9408e1f33d3c03b321980359911c7212133cdcb0344d249e9dab23342b304567eece7a10ec44b986f7230e0640ba00049dceb - languageName: node - linkType: hard - -"@emotion/memoize@npm:^0.8.1": - version: 0.8.1 - resolution: "@emotion/memoize@npm:0.8.1" - checksum: 10/a19cc01a29fcc97514948eaab4dc34d8272e934466ed87c07f157887406bc318000c69ae6f813a9001c6a225364df04249842a50e692ef7a9873335fbcc141b0 - languageName: node - linkType: hard - -"@emotion/unitless@npm:0.8.1": - version: 0.8.1 - resolution: "@emotion/unitless@npm:0.8.1" - checksum: 10/918f73c46ac0b7161e3c341cc07d651ce87e31ab1695e74b12adb7da6bb98dfbff8c69cf68a4e40d9eb3d820ca055dc1267aeb3007927ce88f98b885bf729b63 - languageName: node - linkType: hard - -"@equilab/definitions@npm:1.4.18": - version: 1.4.18 - resolution: "@equilab/definitions@npm:1.4.18" - checksum: 10/76a1e92781e5ded7d7c2a200f896cb86402252cc21c0d6fae3d001b01b3588b8f8ec04c16d63e6775fbeec06e63f144b887331a5e4da11b75c2ed47438769091 - languageName: node - linkType: hard - -"@esbuild/aix-ppc64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/aix-ppc64@npm:0.27.2" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - -"@esbuild/android-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/android-arm64@npm:0.27.2" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/android-arm@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/android-arm@npm:0.27.2" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@esbuild/android-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/android-x64@npm:0.27.2" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/darwin-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/darwin-arm64@npm:0.27.2" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/darwin-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/darwin-x64@npm:0.27.2" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/freebsd-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/freebsd-arm64@npm:0.27.2" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/freebsd-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/freebsd-x64@npm:0.27.2" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/linux-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-arm64@npm:0.27.2" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/linux-arm@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-arm@npm:0.27.2" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@esbuild/linux-ia32@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-ia32@npm:0.27.2" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - -"@esbuild/linux-loong64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-loong64@npm:0.27.2" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - -"@esbuild/linux-mips64el@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-mips64el@npm:0.27.2" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - -"@esbuild/linux-ppc64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-ppc64@npm:0.27.2" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"@esbuild/linux-riscv64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-riscv64@npm:0.27.2" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - -"@esbuild/linux-s390x@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-s390x@npm:0.27.2" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - -"@esbuild/linux-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/linux-x64@npm:0.27.2" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/netbsd-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/netbsd-arm64@npm:0.27.2" - conditions: os=netbsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/netbsd-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/netbsd-x64@npm:0.27.2" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/openbsd-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/openbsd-arm64@npm:0.27.2" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/openbsd-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/openbsd-x64@npm:0.27.2" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/openharmony-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/openharmony-arm64@npm:0.27.2" - conditions: os=openharmony & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/sunos-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/sunos-x64@npm:0.27.2" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/win32-arm64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/win32-arm64@npm:0.27.2" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/win32-ia32@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/win32-ia32@npm:0.27.2" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@esbuild/win32-x64@npm:0.27.2": - version: 0.27.2 - resolution: "@esbuild/win32-x64@npm:0.27.2" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.1.2, @eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.9.1 - resolution: "@eslint-community/eslint-utils@npm:4.9.1" - dependencies: - eslint-visitor-keys: "npm:^3.4.3" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10/863b5467868551c9ae34d03eefe634633d08f623fc7b19d860f8f26eb6f303c1a5934253124163bee96181e45ed22bf27473dccc295937c3078493a4a8c9eddd - languageName: node - linkType: hard - -"@eslint-community/regexpp@npm:^4.11.0, @eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": - version: 4.12.2 - resolution: "@eslint-community/regexpp@npm:4.12.2" - checksum: 10/049b280fddf71dd325514e0a520024969431dc3a8b02fa77476e6820e9122f28ab4c9168c11821f91a27982d2453bcd7a66193356ea84e84fb7c8d793be1ba0c - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" - dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^9.6.0" - globals: "npm:^13.19.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.0" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10/7a3b14f4b40fc1a22624c3f84d9f467a3d9ea1ca6e9a372116cb92507e485260359465b58e25bcb6c9981b155416b98c9973ad9b796053fd7b3f776a6946bce8 - languageName: node - linkType: hard - -"@eslint/js@npm:8.57.1, @eslint/js@npm:^8.56.0": - version: 8.57.1 - resolution: "@eslint/js@npm:8.57.1" - checksum: 10/7562b21be10c2adbfa4aa5bb2eccec2cb9ac649a3569560742202c8d1cb6c931ce634937a2f0f551e078403a1c1285d6c2c0aa345dafc986149665cd69fe8b59 - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^4.0.1": - version: 4.0.1 - resolution: "@ethereumjs/rlp@npm:4.0.1" - bin: - rlp: bin/rlp - checksum: 10/bfdffd634ce72f3b17e3d085d071f2fe7ce9680aebdf10713d74b30afd80ef882d17f19ff7175fcb049431a56e800bd3558d3b028bd0d82341927edb303ab450 - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^5.0.2": - version: 5.0.2 - resolution: "@ethereumjs/rlp@npm:5.0.2" - bin: - rlp: bin/rlp.cjs - checksum: 10/2af80d98faf7f64dfb6d739c2df7da7350ff5ad52426c3219897e843ee441215db0ffa346873200a6be6d11142edb9536e66acd62436b5005fa935baaf7eb6bd - languageName: node - linkType: hard - -"@fastify/busboy@npm:^2.0.0": - version: 2.1.1 - resolution: "@fastify/busboy@npm:2.1.1" - checksum: 10/2bb8a7eca8289ed14c9eb15239bc1019797454624e769b39a0b90ed204d032403adc0f8ed0d2aef8a18c772205fa7808cf5a1b91f21c7bfc7b6032150b1062c5 - languageName: node - linkType: hard - -"@fortawesome/fontawesome-common-types@npm:6.7.2": - version: 6.7.2 - resolution: "@fortawesome/fontawesome-common-types@npm:6.7.2" - checksum: 10/3c2e938afe6f5939bd63181faaec7b062902d9ed970c75d6becb1fd8e5ca0ed937e7d1513bd7ae545da407d0682039e50730cdb3136b58656128838ea2c58ac0 - languageName: node - linkType: hard - -"@fortawesome/fontawesome-svg-core@npm:^6.5.1": - version: 6.7.2 - resolution: "@fortawesome/fontawesome-svg-core@npm:6.7.2" - dependencies: - "@fortawesome/fontawesome-common-types": "npm:6.7.2" - checksum: 10/a3767631329aaa8c1bfafc9470718628533ceb42365774cd0c121477e0f3125f3cce4c2447058deee2874829ce11aa7a3fe183b0000bad81cf5ed0449c8470ef - languageName: node - linkType: hard - -"@fortawesome/free-solid-svg-icons@npm:^6.5.1": - version: 6.7.2 - resolution: "@fortawesome/free-solid-svg-icons@npm:6.7.2" - dependencies: - "@fortawesome/fontawesome-common-types": "npm:6.7.2" - checksum: 10/efcd90cd5d333995ff4012a9d77a8b23523e246fa418524edf08bb6af8b14db2ee0b08ee5f7460a86474d352af06e1a2581cc827ee3706e9c0e92e178b50e27f - languageName: node - linkType: hard - -"@fortawesome/react-fontawesome@npm:^0.2.0": - version: 0.2.6 - resolution: "@fortawesome/react-fontawesome@npm:0.2.6" - dependencies: - prop-types: "npm:^15.8.1" - peerDependencies: - "@fortawesome/fontawesome-svg-core": ~1 || ~6 || ~7 - react: ^16.3 || ^17.0.0 || ^18.0.0 || ^19.0.0 - checksum: 10/e1660d528e3b76eb7e8080a6179188adb9a9eb6ec76a3d18443a8a30bb4a12515fdec456c5c23ae805cdff75c8bae636249863d587f66745a889f3df630d05a4 - languageName: node - linkType: hard - -"@fragnova/api-augment@npm:0.1.0-spec-1.0.4-mainnet": - version: 0.1.0-spec-1.0.4-mainnet - resolution: "@fragnova/api-augment@npm:0.1.0-spec-1.0.4-mainnet" - dependencies: - "@polkadot/api": "npm:^9.13.2" - "@polkadot/rpc-provider": "npm:^9.13.2" - "@polkadot/types": "npm:^9.13.2" - checksum: 10/1ec7be09bb043cb911dbe7078f8f8acd8d600753b2d7b6b6a8e6d6af98904fdc90cdf5fe6f60a4f540ef31d6c7cbb492ebcc11a09a64bc997a91c0c737e1034d - languageName: node - linkType: hard - -"@frequency-chain/api-augment@npm:1.11.1": - version: 1.11.1 - resolution: "@frequency-chain/api-augment@npm:1.11.1" - dependencies: - "@polkadot/api": "npm:^10.9.1" - "@polkadot/rpc-provider": "npm:^10.9.1" - "@polkadot/types": "npm:^10.9.1" - checksum: 10/a6a10f9d98da168d307a7e1571843969114189c63a2de0b1aa02cce3a7f898b5ab3954bc95864dba16c67967c4912cff21474dbd2be789980e0e250a55348834 - languageName: node - linkType: hard - -"@grpc/grpc-js@npm:^1.11.1": - version: 1.14.3 - resolution: "@grpc/grpc-js@npm:1.14.3" - dependencies: - "@grpc/proto-loader": "npm:^0.8.0" - "@js-sdsl/ordered-map": "npm:^4.4.2" - checksum: 10/bb9bfe2f749179ae5ac7774d30486dfa2e0b004518c28de158b248e0f6f65f40138f01635c48266fa540670220f850216726e3724e1eb29d078817581c96e4db - languageName: node - linkType: hard - -"@grpc/proto-loader@npm:^0.7.13": - version: 0.7.15 - resolution: "@grpc/proto-loader@npm:0.7.15" - dependencies: - lodash.camelcase: "npm:^4.3.0" - long: "npm:^5.0.0" - protobufjs: "npm:^7.2.5" - yargs: "npm:^17.7.2" - bin: - proto-loader-gen-types: build/bin/proto-loader-gen-types.js - checksum: 10/2e2b33ace8bc34211522751a9e654faf9ac997577a9e9291b1619b4c05d7878a74d2101c3bc43b2b2b92bca7509001678fb191d4eb100684cc2910d66f36c373 - languageName: node - linkType: hard - -"@grpc/proto-loader@npm:^0.8.0": - version: 0.8.0 - resolution: "@grpc/proto-loader@npm:0.8.0" - dependencies: - lodash.camelcase: "npm:^4.3.0" - long: "npm:^5.0.0" - protobufjs: "npm:^7.5.3" - yargs: "npm:^17.7.2" - bin: - proto-loader-gen-types: build/bin/proto-loader-gen-types.js - checksum: 10/216813bdca52cd3a84ac355ad93c2c3f54252be47327692fe666fd85baa5b1d50aa681ebc5626ab08926564fb2deae3b2ea435aa5bd883197650bbe56f2ae108 - languageName: node - linkType: hard - -"@gulpjs/to-absolute-glob@npm:^4.0.0": - version: 4.0.0 - resolution: "@gulpjs/to-absolute-glob@npm:4.0.0" - dependencies: - is-negated-glob: "npm:^1.0.0" - checksum: 10/30ec7825064422b6f02c1975ab6c779ff73409411c37bec2e984262459935afd196c1dbe960075e914967a047743ccf726fce3d3ebb4417ca2e3c34538fbceb8 - languageName: node - linkType: hard - -"@humanwhocodes/config-array@npm:^0.13.0": - version: 0.13.0 - resolution: "@humanwhocodes/config-array@npm:0.13.0" - dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.3" - debug: "npm:^4.3.1" - minimatch: "npm:^3.0.5" - checksum: 10/524df31e61a85392a2433bf5d03164e03da26c03d009f27852e7dcfdafbc4a23f17f021dacf88e0a7a9fe04ca032017945d19b57a16e2676d9114c22a53a9d11 - languageName: node - linkType: hard - -"@humanwhocodes/module-importer@npm:^1.0.1": - version: 1.0.1 - resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 10/e993950e346331e5a32eefb27948ecdee2a2c4ab3f072b8f566cd213ef485dd50a3ca497050608db91006f5479e43f91a439aef68d2a313bd3ded06909c7c5b3 - languageName: node - linkType: hard - -"@humanwhocodes/object-schema@npm:^2.0.3": - version: 2.0.3 - resolution: "@humanwhocodes/object-schema@npm:2.0.3" - checksum: 10/05bb99ed06c16408a45a833f03a732f59bf6184795d4efadd33238ff8699190a8c871ad1121241bb6501589a9598dc83bf25b99dcbcf41e155cdf36e35e937a3 - languageName: node - linkType: hard - -"@hypnosphi/create-react-context@npm:^0.3.1": - version: 0.3.1 - resolution: "@hypnosphi/create-react-context@npm:0.3.1" - dependencies: - gud: "npm:^1.0.0" - warning: "npm:^4.0.3" - peerDependencies: - prop-types: ^15.0.0 - react: ">=0.14.0" - checksum: 10/79b697d150f9b4aa6cadfb8026f20e023c05fefc4be841b1cdd5567c3fd970ccaae84a0ea6279f579fe2cc9844c201e80713a2691b24e59cc7d6925fa8130c34 - languageName: node - linkType: hard - -"@inquirer/external-editor@npm:^1.0.0": - version: 1.0.3 - resolution: "@inquirer/external-editor@npm:1.0.3" - dependencies: - chardet: "npm:^2.1.1" - iconv-lite: "npm:^0.7.0" - peerDependencies: - "@types/node": ">=18" - peerDependenciesMeta: - "@types/node": - optional: true - checksum: 10/c95d7237a885b32031715089f92820525731d4d3c2bd7afdb826307dc296cc2b39e7a644b0bb265441963348cca42e7785feb29c3aaf18fd2b63131769bf6587 - languageName: node - linkType: hard - -"@interlay/interbtc-types@npm:1.13.0": - version: 1.13.0 - resolution: "@interlay/interbtc-types@npm:1.13.0" - checksum: 10/8c338d075e20c85beace6dd0f661c37dc6ec37207cb6f9c76abbd81cc4f446e36ad82c82006054c0b8bedf318cdf8c9ec2cf1e5ae35bc0abeca55a54cd2d8eb1 - languageName: node - linkType: hard - -"@isaacs/balanced-match@npm:^4.0.1": - version: 4.0.1 - resolution: "@isaacs/balanced-match@npm:4.0.1" - checksum: 10/102fbc6d2c0d5edf8f6dbf2b3feb21695a21bc850f11bc47c4f06aa83bd8884fde3fe9d6d797d619901d96865fdcb4569ac2a54c937992c48885c5e3d9967fe8 - languageName: node - linkType: hard - -"@isaacs/brace-expansion@npm:^5.0.0": - version: 5.0.0 - resolution: "@isaacs/brace-expansion@npm:5.0.0" - dependencies: - "@isaacs/balanced-match": "npm:^4.0.1" - checksum: 10/cf3b7f206aff12128214a1df764ac8cdbc517c110db85249b945282407e3dfc5c6e66286383a7c9391a059fc8e6e6a8ca82262fc9d2590bd615376141fbebd2d - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: "npm:^5.1.2" - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: "npm:^7.0.1" - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: "npm:^8.1.0" - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 10/e9ed5fd27c3aec1095e3a16e0c0cf148d1fee55a38665c35f7b3f86a9b5d00d042ddaabc98e8a1cb7463b9378c15f22a94eb35e99469c201453eb8375191f243 - languageName: node - linkType: hard - -"@isaacs/fs-minipass@npm:^4.0.0": - version: 4.0.1 - resolution: "@isaacs/fs-minipass@npm:4.0.1" - dependencies: - minipass: "npm:^7.0.4" - checksum: 10/4412e9e6713c89c1e66d80bb0bb5a2a93192f10477623a27d08f228ba0316bb880affabc5bfe7f838f58a34d26c2c190da726e576cdfc18c49a72e89adabdcf5 - languageName: node - linkType: hard - -"@jamton/parachain-ts-interfaces@npm:1.10.4": - version: 1.10.4 - resolution: "@jamton/parachain-ts-interfaces@npm:1.10.4" - dependencies: - "@polkadot/api": "npm:^15.0.0" - checksum: 10/4b94986dfc5ed2b829e5b904994b7ce98007bcb235f35fde6de74fb0e7a466deb943b4c7c487a53b873630dbe8274b03d1cd3071d2e5b702aa8da932a796558a - languageName: node - linkType: hard - -"@jest/diff-sequences@npm:30.0.1": - version: 30.0.1 - resolution: "@jest/diff-sequences@npm:30.0.1" - checksum: 10/0ddb7c7ba92d6057a2ee51a9cfc2155b77cca707fe959167466ea02dcb0687018cc3c22b9622f25f3a417d6ad370e2d4dcfedf9f1410dc9c02954a7484423cc7 - languageName: node - linkType: hard - -"@jest/expect-utils@npm:30.2.0": - version: 30.2.0 - resolution: "@jest/expect-utils@npm:30.2.0" - dependencies: - "@jest/get-type": "npm:30.1.0" - checksum: 10/f2442f1bceb3411240d0f16fd0074377211b4373d3b8b2dc28929e861b6527a6deb403a362c25afa511d933cda4dfbdc98d4a08eeb51ee4968f7cb0299562349 - languageName: node - linkType: hard - -"@jest/get-type@npm:30.1.0": - version: 30.1.0 - resolution: "@jest/get-type@npm:30.1.0" - checksum: 10/e2a95fbb49ce2d15547db8af5602626caf9b05f62a5e583b4a2de9bd93a2bfe7175f9bbb2b8a5c3909ce261d467b6991d7265bb1d547cb60e7e97f571f361a70 - languageName: node - linkType: hard - -"@jest/pattern@npm:30.0.1": - version: 30.0.1 - resolution: "@jest/pattern@npm:30.0.1" - dependencies: - "@types/node": "npm:*" - jest-regex-util: "npm:30.0.1" - checksum: 10/afd03b4d3eadc9c9970cf924955dee47984a7e767901fe6fa463b17b246f0ddeec07b3e82c09715c54bde3c8abb92074160c0d79967bd23778724f184e7f5b7b - languageName: node - linkType: hard - -"@jest/schemas@npm:30.0.5": - version: 30.0.5 - resolution: "@jest/schemas@npm:30.0.5" - dependencies: - "@sinclair/typebox": "npm:^0.34.0" - checksum: 10/40df4db55d4aeed09d1c7e19caf23788309cea34490a1c5d584c913494195e698b9967e996afc27226cac6d76e7512fe73ae6b9584480695c60dd18a5459cdba - languageName: node - linkType: hard - -"@jest/types@npm:30.2.0": - version: 30.2.0 - resolution: "@jest/types@npm:30.2.0" - dependencies: - "@jest/pattern": "npm:30.0.1" - "@jest/schemas": "npm:30.0.5" - "@types/istanbul-lib-coverage": "npm:^2.0.6" - "@types/istanbul-reports": "npm:^3.0.4" - "@types/node": "npm:*" - "@types/yargs": "npm:^17.0.33" - chalk: "npm:^4.1.2" - checksum: 10/f50fcaea56f873a51d19254ab16762f2ea8ca88e3e08da2e496af5da2b67c322915a4fcd0153803cc05063ffe87ebef2ab4330e0a1b06ab984a26c916cbfc26b - languageName: node - linkType: hard - -"@jridgewell/gen-mapping@npm:^0.3.2, @jridgewell/gen-mapping@npm:^0.3.5": - version: 0.3.13 - resolution: "@jridgewell/gen-mapping@npm:0.3.13" - dependencies: - "@jridgewell/sourcemap-codec": "npm:^1.5.0" - "@jridgewell/trace-mapping": "npm:^0.3.24" - checksum: 10/902f8261dcf450b4af7b93f9656918e02eec80a2169e155000cb2059f90113dd98f3ccf6efc6072cee1dd84cac48cade51da236972d942babc40e4c23da4d62a - languageName: node - linkType: hard - -"@jridgewell/resolve-uri@npm:^3.1.0": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 10/97106439d750a409c22c8bff822d648f6a71f3aa9bc8e5129efdc36343cd3096ddc4eeb1c62d2fe48e9bdd4db37b05d4646a17114ecebd3bbcacfa2de51c3c1d - languageName: node - linkType: hard - -"@jridgewell/source-map@npm:^0.3.3": - version: 0.3.11 - resolution: "@jridgewell/source-map@npm:0.3.11" - dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.5" - "@jridgewell/trace-mapping": "npm:^0.3.25" - checksum: 10/847f1177d3d133a0966ef61ca29abea0d79788a0652f90ee1893b3da968c190b7e31c3534cc53701179dd6b14601eef3d78644e727e05b1a08c68d281aedc4ba - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5": - version: 1.5.5 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" - checksum: 10/5d9d207b462c11e322d71911e55e21a4e2772f71ffe8d6f1221b8eb5ae6774458c1d242f897fb0814e8714ca9a6b498abfa74dfe4f434493342902b1a48b33a5 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": - version: 0.3.31 - resolution: "@jridgewell/trace-mapping@npm:0.3.31" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.1.0" - "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 10/da0283270e691bdb5543806077548532791608e52386cfbbf3b9e8fb00457859d1bd01d512851161c886eb3a2f3ce6fd9bcf25db8edf3bddedd275bd4a88d606 - languageName: node - linkType: hard - -"@js-sdsl/ordered-map@npm:^4.4.2": - version: 4.4.2 - resolution: "@js-sdsl/ordered-map@npm:4.4.2" - checksum: 10/ac64e3f0615ecc015461c9f527f124d2edaa9e68de153c1e270c627e01e83d046522d7e872692fd57a8c514578b539afceff75831c0d8b2a9a7a347fbed35af4 - languageName: node - linkType: hard - -"@kiltprotocol/type-definitions@npm:^1.11502.1": - version: 1.11502.1 - resolution: "@kiltprotocol/type-definitions@npm:1.11502.1" - peerDependencies: - "@polkadot/types": ^12.2.0 - checksum: 10/dc00532617383022d02583705122914f1e57036efdfd3d0b134f1298dfa75f1071316fb8dd2dd62c6b6ae74419f59f27011afecaa019f9f8e96eb5f12aad7ff4 - languageName: node - linkType: hard - -"@kurkle/color@npm:^0.3.0": - version: 0.3.4 - resolution: "@kurkle/color@npm:0.3.4" - checksum: 10/a15bfb55eec4ff92ee27cdacff54e85c7497ec1f9e8e0e8eaec3d39320cc90b82eb7f716d92792a8235fad1617003c6e0c0d2cd07f6a79b7b138ca17ec5eb6e7 - languageName: node - linkType: hard - -"@laminar/type-definitions@npm:0.3.1": - version: 0.3.1 - resolution: "@laminar/type-definitions@npm:0.3.1" - dependencies: - "@open-web3/orml-type-definitions": "npm:^0.8.2-9" - checksum: 10/3d5b833f52f17b43c7626d3ed635dbeb8f11d7c55b15329a474fe8709b7485e57af5218eb06c0c62a1007dc3451133ead54ff2cfe4e3551d1eb383bc429e658b - languageName: node - linkType: hard - -"@ledgerhq/devices@npm:8.5.0": - version: 8.5.0 - resolution: "@ledgerhq/devices@npm:8.5.0" - dependencies: - "@ledgerhq/errors": "npm:^6.24.0" - "@ledgerhq/logs": "npm:^6.13.0" - rxjs: "npm:^7.8.1" - semver: "npm:^7.3.5" - checksum: 10/0b2c9aab492a25d575816a5d0d4013dc5ad8f55750d69462dbf4784d07477809922fab54264c4352b16be5f896d08399fd479511d27c6a1b52af90e0116484e5 - languageName: node - linkType: hard - -"@ledgerhq/devices@npm:8.8.0, @ledgerhq/devices@npm:^8.4.4": - version: 8.8.0 - resolution: "@ledgerhq/devices@npm:8.8.0" - dependencies: - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/logs": "npm:^6.13.0" - rxjs: "npm:7.8.2" - semver: "npm:^7.3.5" - checksum: 10/cf70da13afd7cff7d61cc21405ce89ae69b19b47a207bd5c68a7535fe03281fdbdd45028ebba2c9b0e56cad2360ae330106100e9d82803edf0d3dc0daf8f4253 - languageName: node - linkType: hard - -"@ledgerhq/errors@npm:^6.19.1, @ledgerhq/errors@npm:^6.24.0, @ledgerhq/errors@npm:^6.28.0": - version: 6.28.0 - resolution: "@ledgerhq/errors@npm:6.28.0" - checksum: 10/5a9497c5dc092ecba369cf60ef576c4d1efdaa7862e31e8d53fa3587d479b2aa79756b5df6ab64316c98bfc2dcc383e8a7f6ff7082a08ff65018a0671d5ae62a - languageName: node - linkType: hard - -"@ledgerhq/hw-transport-node-hid-noevents@npm:^6.30.16": - version: 6.30.16 - resolution: "@ledgerhq/hw-transport-node-hid-noevents@npm:6.30.16" - dependencies: - "@ledgerhq/devices": "npm:8.8.0" - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/hw-transport": "npm:6.31.15" - "@ledgerhq/logs": "npm:^6.13.0" - node-hid: "npm:2.1.2" - checksum: 10/ef3f38d217afe88c323550f063ba70ab61342a67189fd4578a49b371cd66af71adb26b3dfe5d8966751b08b25109a826266c5123f2c23c53f42ab460355631a1 - languageName: node - linkType: hard - -"@ledgerhq/hw-transport-node-hid-singleton@npm:^6.31.5": - version: 6.31.16 - resolution: "@ledgerhq/hw-transport-node-hid-singleton@npm:6.31.16" - dependencies: - "@ledgerhq/devices": "npm:8.8.0" - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/hw-transport": "npm:6.31.15" - "@ledgerhq/hw-transport-node-hid-noevents": "npm:^6.30.16" - "@ledgerhq/logs": "npm:^6.13.0" - node-hid: "npm:2.1.2" - usb: "npm:2.9.0" - checksum: 10/914562390444e47364e55449e4bccecbfa0af6c7903b5b249d73b6fff85dfc60585957bfd3d21eece9ac6520e23371707c612860096c59aaeaa040152cd4639d - languageName: node - linkType: hard - -"@ledgerhq/hw-transport-webhid@npm:^6.29.4": - version: 6.30.11 - resolution: "@ledgerhq/hw-transport-webhid@npm:6.30.11" - dependencies: - "@ledgerhq/devices": "npm:8.8.0" - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/hw-transport": "npm:6.31.15" - "@ledgerhq/logs": "npm:^6.13.0" - checksum: 10/d9e7d4c5443e0c8144c4d4126e31c0489133bf27e911840a406736de6d7c525ac577ab4c99da29f1e39b4df3bab1f25a284e7494970427ba8c3e51daa90ea15d - languageName: node - linkType: hard - -"@ledgerhq/hw-transport-webusb@npm:^6.29.4": - version: 6.29.15 - resolution: "@ledgerhq/hw-transport-webusb@npm:6.29.15" - dependencies: - "@ledgerhq/devices": "npm:8.8.0" - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/hw-transport": "npm:6.31.15" - "@ledgerhq/logs": "npm:^6.13.0" - checksum: 10/099163b563254a518ba288d036534b2e13677aa1de2d013efe0cb6c6030aca2e42aa3358450a513386ca62ba06216ca8870b94b910cff5eea4d5c263e20e4ef6 - languageName: node - linkType: hard - -"@ledgerhq/hw-transport@npm:6.31.15, @ledgerhq/hw-transport@npm:^6.31.4": - version: 6.31.15 - resolution: "@ledgerhq/hw-transport@npm:6.31.15" - dependencies: - "@ledgerhq/devices": "npm:8.8.0" - "@ledgerhq/errors": "npm:^6.28.0" - "@ledgerhq/logs": "npm:^6.13.0" - events: "npm:^3.3.0" - checksum: 10/2a38ff10082f8a55114bff4d95e581f0356345446e625f6da5fd3c988552ac8ff0772cf4e381186dd29b864d5e15cb3b48f96ea0e1bc691f1855dae4b3c67b72 - languageName: node - linkType: hard - -"@ledgerhq/hw-transport@npm:6.31.4": - version: 6.31.4 - resolution: "@ledgerhq/hw-transport@npm:6.31.4" - dependencies: - "@ledgerhq/devices": "npm:^8.4.4" - "@ledgerhq/errors": "npm:^6.19.1" - "@ledgerhq/logs": "npm:^6.12.0" - events: "npm:^3.3.0" - checksum: 10/cf101e5b818e95e59031241d556dbec24658f54104910e414be493bc4b90b0aea50f5d4b3339a237dd0b12845bb2683c845f3a82f2ea9da4e077b68d1e1f7e48 - languageName: node - linkType: hard - -"@ledgerhq/hw-transport@npm:6.31.9": - version: 6.31.9 - resolution: "@ledgerhq/hw-transport@npm:6.31.9" - dependencies: - "@ledgerhq/devices": "npm:8.5.0" - "@ledgerhq/errors": "npm:^6.24.0" - "@ledgerhq/logs": "npm:^6.13.0" - events: "npm:^3.3.0" - checksum: 10/e12728604ddddc20453425fa020dea84c770bfbb0900a59dd91148783fb25db38d1e0768c964c5546cdbc3ed95575de5918c480639d22f7c5b8c3e3c65f9022f - languageName: node - linkType: hard - -"@ledgerhq/logs@npm:^6.12.0, @ledgerhq/logs@npm:^6.13.0": - version: 6.13.0 - resolution: "@ledgerhq/logs@npm:6.13.0" - checksum: 10/3ac984bdc533505359cd1d8bc74175547fcfa51fef6294a9fd832e8ea88d462a385be5cfe68ccfa1b77cd68b840243e6f79c2be66fe28f123ae57c58625edf5f - languageName: node - linkType: hard - -"@leichtgewicht/ip-codec@npm:^2.0.1": - version: 2.0.5 - resolution: "@leichtgewicht/ip-codec@npm:2.0.5" - checksum: 10/cb98c608392abe59457a14e00134e7dfa57c0c9b459871730cd4e907bb12b834cbd03e08ad8663fea9e486f260da7f1293ccd9af0376bf5524dd8536192f248c - languageName: node - linkType: hard - -"@logion/node-api@npm:0.27.0-4": - version: 0.27.0-4 - resolution: "@logion/node-api@npm:0.27.0-4" - dependencies: - "@polkadot/api": "npm:^10.10.1" - "@polkadot/util": "npm:^12.5.1" - "@polkadot/util-crypto": "npm:^12.5.1" - "@types/uuid": "npm:^9.0.2" - fast-sha256: "npm:^1.3.0" - uuid: "npm:^9.0.0" - checksum: 10/a6ef4741b7a8d56405f77a6f7ac19d69a5d535a0e0930d0a055b1b515172d511f6595cd35d57d1c5f02a4a489cd3dfb4a67352dc6adc1615d9aa5f5c1be5e278 - languageName: node - linkType: hard - -"@malept/cross-spawn-promise@npm:^1.1.0": - version: 1.1.1 - resolution: "@malept/cross-spawn-promise@npm:1.1.1" - dependencies: - cross-spawn: "npm:^7.0.1" - checksum: 10/8f04dcbe023e7ee4e82040e32aa29c1774a2d79a36d4a1df2da381281f99419e51a950c77d54662cfd2bc9195db2fbb0068e0f790ac08d7ad981180687051e96 - languageName: node - linkType: hard - -"@malept/flatpak-bundler@npm:^0.4.0": - version: 0.4.0 - resolution: "@malept/flatpak-bundler@npm:0.4.0" - dependencies: - debug: "npm:^4.1.1" - fs-extra: "npm:^9.0.0" - lodash: "npm:^4.17.15" - tmp-promise: "npm:^3.0.2" - checksum: 10/14e04215bcc3dc4cafe8343893ab869f69ad768272563cbb39e7d2e876dc5e03dde9f0c1b0506308a4d90d945871491b05b77c26521b2b4b38245aeed8085d3b - languageName: node - linkType: hard - -"@mangata-finance/type-definitions@npm:^2.1.2": - version: 2.1.2 - resolution: "@mangata-finance/type-definitions@npm:2.1.2" - peerDependencies: - "@polkadot/types": ^10.9.1 - checksum: 10/268209142e7a2b8a4cf45ac9a6f7c8c2f4244fb99972e245eb2be57385252ab893ae2d295f1b2001ddd0c86b20169a249b76b90c12863355343022f79e3da048 - languageName: node - linkType: hard - -"@metamask/detect-provider@npm:^2.0.0": - version: 2.0.0 - resolution: "@metamask/detect-provider@npm:2.0.0" - checksum: 10/5d108f87f0ae4197a479928cbfb6a15522b6cf8bbb26e1ef717814d71e9b5b4ac06c6aae7dc0bdcc4f4aaf36a24b2364d5d6f3732f73c8de6cac6c98b8a8cb9d - languageName: node - linkType: hard - -"@metaverse-network-sdk/type-definitions@npm:0.0.1-16": - version: 0.0.1-16 - resolution: "@metaverse-network-sdk/type-definitions@npm:0.0.1-16" - dependencies: - lodash.merge: "npm:^4.6.2" - checksum: 10/8e60e11381036594aad2c00d0caeb76f5d619abf789bdd67581fb12c245e2f128505c110d096e4a681f0165049883fa6a638aff0137d3174e1640ad1dacf597d - languageName: node - linkType: hard - -"@moonbeam-network/types-bundle@npm:1.0.2": - version: 1.0.2 - resolution: "@moonbeam-network/types-bundle@npm:1.0.2" - dependencies: - "@biomejs/biome": "npm:*" - "@polkadot/api": "npm:*" - "@polkadot/api-base": "npm:*" - "@polkadot/rpc-core": "npm:*" - "@polkadot/typegen": "npm:*" - "@polkadot/types": "npm:*" - "@polkadot/types-codec": "npm:*" - tsup: "npm:*" - typescript: "npm:*" - checksum: 10/994927e345515684ca067ab23b10b4d4a70a5ef1fa5e282dcc3b86d143eae103bbc4b19bc5526f3b850e92732b1b3e292527b868ecd095a40a5346a979d2b30c - languageName: node - linkType: hard - -"@multiformats/dns@npm:^1.0.3": - version: 1.0.11 - resolution: "@multiformats/dns@npm:1.0.11" - dependencies: - buffer: "npm:^6.0.3" - dns-packet: "npm:^5.6.1" - hashlru: "npm:^2.3.0" - p-queue: "npm:^9.0.0" - progress-events: "npm:^1.0.0" - uint8arrays: "npm:^5.0.2" - checksum: 10/551305a0e0524888f27f7d51d65ff7b73eaecc9025c911e5f9ba0d465886a15a2db9d04abbf9a897a1e909628fa1e7bb218b3a84da3be4c5199a56d0020a6dd1 - languageName: node - linkType: hard - -"@multiformats/mafmt@npm:^12.1.6": - version: 12.1.6 - resolution: "@multiformats/mafmt@npm:12.1.6" - dependencies: - "@multiformats/multiaddr": "npm:^12.0.0" - checksum: 10/53492ea6332e0d65a7952358b4ec67c9e07f10cc771886295820b14678786e74ee80ba94b779e308796e9298c14acccc910179a5458ac92a4b5d08155dbfec52 - languageName: node - linkType: hard - -"@multiformats/multiaddr@npm:^12.0.0, @multiformats/multiaddr@npm:^12.1.14": - version: 12.5.1 - resolution: "@multiformats/multiaddr@npm:12.5.1" - dependencies: - "@chainsafe/is-ip": "npm:^2.0.1" - "@chainsafe/netmask": "npm:^2.0.0" - "@multiformats/dns": "npm:^1.0.3" - abort-error: "npm:^1.0.1" - multiformats: "npm:^13.0.0" - uint8-varint: "npm:^2.0.1" - uint8arrays: "npm:^5.0.0" - checksum: 10/3db0235ea276f4be55a606501ea240e48f39705a4e98a262d25ccd6eeb5e2adbf1ccb24452f8b2f5cf41cda5450ecda237920b672aee0e3e6033f3d56bc0d071 - languageName: node - linkType: hard - -"@napi-rs/wasm-runtime@npm:^0.2.11": - version: 0.2.12 - resolution: "@napi-rs/wasm-runtime@npm:0.2.12" - dependencies: - "@emnapi/core": "npm:^1.4.3" - "@emnapi/runtime": "npm:^1.4.3" - "@tybys/wasm-util": "npm:^0.10.0" - checksum: 10/5fd518182427980c28bc724adf06c5f32f9a8915763ef560b5f7d73607d30cd15ac86d0cbd2eb80d4cfab23fc80d0876d89ca36a9daadcb864bc00917c94187c - languageName: node - linkType: hard - -"@noble/curves@npm:1.4.2, @noble/curves@npm:~1.4.0": - version: 1.4.2 - resolution: "@noble/curves@npm:1.4.2" - dependencies: - "@noble/hashes": "npm:1.4.0" - checksum: 10/f433a2e8811ae345109388eadfa18ef2b0004c1f79417553241db4f0ad0d59550be6298a4f43d989c627e9f7551ffae6e402a4edf0173981e6da95fc7cab5123 - languageName: node - linkType: hard - -"@noble/curves@npm:^1.3.0, @noble/curves@npm:~1.9.2": - version: 1.9.7 - resolution: "@noble/curves@npm:1.9.7" - dependencies: - "@noble/hashes": "npm:1.8.0" - checksum: 10/3cfe2735ea94972988ca9e217e0ebb2044372a7160b2079bf885da789492a6291fc8bf76ca3d8bf8dee477847ee2d6fac267d1e6c4f555054059f5e8c4865d44 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.0.0": - version: 1.0.0 - resolution: "@noble/hashes@npm:1.0.0" - checksum: 10/cbe27966ed82daa0d6d984b168928719f139c8d96567cbc8b055b59a9fbd99ed9674d03e881cc93753b4f1cc94ffd466f116a68c0f25a8818bf220851b8e3bee - languageName: node - linkType: hard - -"@noble/hashes@npm:1.2.0": - version: 1.2.0 - resolution: "@noble/hashes@npm:1.2.0" - checksum: 10/c295684a2799f4ddad10a855efd9b82c70c27ac5f7437642df9700e120087c796851dd95b12d2e7596802303fe6afbfdf0f8733b5c7453f70c4c080746dde6ff - languageName: node - linkType: hard - -"@noble/hashes@npm:1.4.0, @noble/hashes@npm:~1.4.0": - version: 1.4.0 - resolution: "@noble/hashes@npm:1.4.0" - checksum: 10/e156e65794c473794c52fa9d06baf1eb20903d0d96719530f523cc4450f6c721a957c544796e6efd0197b2296e7cd70efeb312f861465e17940a3e3c7e0febc6 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.8.0, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:^1.3.3, @noble/hashes@npm:~1.8.0": - version: 1.8.0 - resolution: "@noble/hashes@npm:1.8.0" - checksum: 10/474b7f56bc6fb2d5b3a42132561e221b0ea4f91e590f4655312ca13667840896b34195e2b53b7f097ec080a1fdd3b58d902c2a8d0fbdf51d2e238b53808a177e - languageName: node - linkType: hard - -"@noble/hashes@npm:^2.0.1": - version: 2.0.1 - resolution: "@noble/hashes@npm:2.0.1" - checksum: 10/f4d00e7564eb4ff4e6d16be151dd0e404aede35f91e4372b0a8a6ec888379c1dd1e02c721b480af8e7853bea9637185b5cb9533970c5b77d60c254ead0cfd8f7 - languageName: node - linkType: hard - -"@noble/secp256k1@npm:1.5.5": - version: 1.5.5 - resolution: "@noble/secp256k1@npm:1.5.5" - checksum: 10/7d8478ca71bff32f48d197c1dd4fbbb4cebf9c29b46b40dc89a49c680e73bbddd9e3ce8362817d730748d219406161909caf1a01155fda0c947955a3a726c8e3 - languageName: node - linkType: hard - -"@noble/secp256k1@npm:1.7.1": - version: 1.7.1 - resolution: "@noble/secp256k1@npm:1.7.1" - checksum: 10/214d4756c20ed20809d948d0cc161e95664198cb127266faf747fd7deffe5444901f05fe9f833787738f2c6e60b09e544c2f737f42f73b3699e3999ba15b1b63 - languageName: node - linkType: hard - -"@nodelib/fs.scandir@npm:2.1.5": - version: 2.1.5 - resolution: "@nodelib/fs.scandir@npm:2.1.5" - dependencies: - "@nodelib/fs.stat": "npm:2.0.5" - run-parallel: "npm:^1.1.9" - checksum: 10/6ab2a9b8a1d67b067922c36f259e3b3dfd6b97b219c540877a4944549a4d49ea5ceba5663905ab5289682f1f3c15ff441d02f0447f620a42e1cb5e1937174d4b - languageName: node - linkType: hard - -"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": - version: 2.0.5 - resolution: "@nodelib/fs.stat@npm:2.0.5" - checksum: 10/012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0 - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": - version: 1.2.8 - resolution: "@nodelib/fs.walk@npm:1.2.8" - dependencies: - "@nodelib/fs.scandir": "npm:2.1.5" - fastq: "npm:^1.6.0" - checksum: 10/40033e33e96e97d77fba5a238e4bba4487b8284678906a9f616b5579ddaf868a18874c0054a75402c9fbaaa033a25ceae093af58c9c30278e35c23c9479e79b0 - languageName: node - linkType: hard - -"@nolyfill/is-core-module@npm:1.0.39": - version: 1.0.39 - resolution: "@nolyfill/is-core-module@npm:1.0.39" - checksum: 10/0d6e098b871eca71d875651288e1f0fa770a63478b0b50479c99dc760c64175a56b5b04f58d5581bbcc6b552b8191ab415eada093d8df9597ab3423c8cac1815 - languageName: node - linkType: hard - -"@npmcli/agent@npm:^4.0.0": - version: 4.0.0 - resolution: "@npmcli/agent@npm:4.0.0" - dependencies: - agent-base: "npm:^7.1.0" - http-proxy-agent: "npm:^7.0.0" - https-proxy-agent: "npm:^7.0.1" - lru-cache: "npm:^11.2.1" - socks-proxy-agent: "npm:^8.0.3" - checksum: 10/1a81573becc60515031accc696e6405e9b894e65c12b98ef4aeee03b5617c41948633159dbf6caf5dde5b47367eeb749bdc7b7dfb21960930a9060a935c6f636 - languageName: node - linkType: hard - -"@npmcli/fs@npm:^5.0.0": - version: 5.0.0 - resolution: "@npmcli/fs@npm:5.0.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10/4935c7719d17830d0f9fa46c50be17b2a3c945cec61760f6d0909bce47677c42e1810ca673305890f9e84f008ec4d8e841182f371e42100a8159d15f22249208 - languageName: node - linkType: hard - -"@octokit/auth-token@npm:^3.0.0": - version: 3.0.4 - resolution: "@octokit/auth-token@npm:3.0.4" - checksum: 10/8e21e567e38ba307fa30497ad77801135e25c328ce8b363c1622a4afb408a7d3315d54082527b38ecd5b3a5449680d89cfca9cb10c516cacf3dfa01e4c8b7195 - languageName: node - linkType: hard - -"@octokit/core@npm:^4.2.1": - version: 4.2.4 - resolution: "@octokit/core@npm:4.2.4" - dependencies: - "@octokit/auth-token": "npm:^3.0.0" - "@octokit/graphql": "npm:^5.0.0" - "@octokit/request": "npm:^6.0.0" - "@octokit/request-error": "npm:^3.0.0" - "@octokit/types": "npm:^9.0.0" - before-after-hook: "npm:^2.2.0" - universal-user-agent: "npm:^6.0.0" - checksum: 10/53ba8f990ce2c0ea4583d8c142377770c3ac8fb9221b563d82dbca9d642f19be49607b9e9b472767075e4afa16c2203339680d75f3ebf5ad853af2646e8604ca - languageName: node - linkType: hard - -"@octokit/endpoint@npm:^7.0.0": - version: 7.0.6 - resolution: "@octokit/endpoint@npm:7.0.6" - dependencies: - "@octokit/types": "npm:^9.0.0" - is-plain-object: "npm:^5.0.0" - universal-user-agent: "npm:^6.0.0" - checksum: 10/e8b9cc09aa8306d63cb0e5b65ac5d29fc421522c92810a9d70bbfef997bc8750fc339f1f4f60e1604c22db77457ea493c51849b0d61cbfcb8655b0c4f2640e4b - languageName: node - linkType: hard - -"@octokit/graphql@npm:^5.0.0": - version: 5.0.6 - resolution: "@octokit/graphql@npm:5.0.6" - dependencies: - "@octokit/request": "npm:^6.0.0" - "@octokit/types": "npm:^9.0.0" - universal-user-agent: "npm:^6.0.0" - checksum: 10/6014690d184d7b2bfb56ab9be5ddbe4f5c77aa6031d71ec2caf5f56cbd32f4a5b0601049cef7dce1ca8010b89a9fc8bb07ce7833e6213c5bc77b7a564b1f40b9 - languageName: node - linkType: hard - -"@octokit/openapi-types@npm:^18.0.0": - version: 18.1.1 - resolution: "@octokit/openapi-types@npm:18.1.1" - checksum: 10/bd2920a238f74c6ccc1e2ee916bd3e17adeeef3bbb1726f821b8722dceaeff5ea2786b3170cc25dd51775cb9179d3cdf448a3526e70b8a1fc21cdd8aa52e5d4c - languageName: node - linkType: hard - -"@octokit/plugin-paginate-rest@npm:^6.1.2": - version: 6.1.2 - resolution: "@octokit/plugin-paginate-rest@npm:6.1.2" - dependencies: - "@octokit/tsconfig": "npm:^1.0.2" - "@octokit/types": "npm:^9.2.3" - peerDependencies: - "@octokit/core": ">=4" - checksum: 10/6d5b97fb44a3ed8ff25196b56ebe7bdac64f4023c165792f77938c77876934c01b46e79b83712e26cd3f2f9e36e0735bd3c292a37e8060a2b259f3a6456116dc - languageName: node - linkType: hard - -"@octokit/plugin-request-log@npm:^1.0.4": - version: 1.0.4 - resolution: "@octokit/plugin-request-log@npm:1.0.4" - peerDependencies: - "@octokit/core": ">=3" - checksum: 10/2086db00056aee0f8ebd79797b5b57149ae1014e757ea08985b71eec8c3d85dbb54533f4fd34b6b9ecaa760904ae6a7536be27d71e50a3782ab47809094bfc0c - languageName: node - linkType: hard - -"@octokit/plugin-rest-endpoint-methods@npm:^7.1.2": - version: 7.2.3 - resolution: "@octokit/plugin-rest-endpoint-methods@npm:7.2.3" - dependencies: - "@octokit/types": "npm:^10.0.0" - peerDependencies: - "@octokit/core": ">=3" - checksum: 10/59fb4e786ab85a5f3ad701e1b193dd3113833cfd1f2657cb06864e45b80a53a1f9ba6c3c66a855c4bf2593c539299fdfe51db639e3a87dc16ffa7602fe9bb999 - languageName: node - linkType: hard - -"@octokit/request-error@npm:^3.0.0": - version: 3.0.3 - resolution: "@octokit/request-error@npm:3.0.3" - dependencies: - "@octokit/types": "npm:^9.0.0" - deprecation: "npm:^2.0.0" - once: "npm:^1.4.0" - checksum: 10/5db0b514732686b627e6ed9ef1ccdbc10501f1b271a9b31f784783f01beee70083d7edcfeb35fbd7e569fa31fdd6762b1ff6b46101700d2d97e7e48e749520d0 - languageName: node - linkType: hard - -"@octokit/request@npm:^6.0.0": - version: 6.2.8 - resolution: "@octokit/request@npm:6.2.8" - dependencies: - "@octokit/endpoint": "npm:^7.0.0" - "@octokit/request-error": "npm:^3.0.0" - "@octokit/types": "npm:^9.0.0" - is-plain-object: "npm:^5.0.0" - node-fetch: "npm:^2.6.7" - universal-user-agent: "npm:^6.0.0" - checksum: 10/47188fa08d28e5e9e6a22f84058fc13f108cdcb68aea97686da4718d32d3ddda8fde8a5c9f189057e3d466560b67c2305a2e343d1eed9517b47a13f68cb329e7 - languageName: node - linkType: hard - -"@octokit/rest@npm:^19.0.5": - version: 19.0.13 - resolution: "@octokit/rest@npm:19.0.13" - dependencies: - "@octokit/core": "npm:^4.2.1" - "@octokit/plugin-paginate-rest": "npm:^6.1.2" - "@octokit/plugin-request-log": "npm:^1.0.4" - "@octokit/plugin-rest-endpoint-methods": "npm:^7.1.2" - checksum: 10/7fbee09a2f832be6802a026713aa93cbf82dcfc8103d68c585b23214caf0accfced6efe2c49169158d39875d5c5ad3994b83b02e26537b75687ac16d0572c212 - languageName: node - linkType: hard - -"@octokit/tsconfig@npm:^1.0.2": - version: 1.0.2 - resolution: "@octokit/tsconfig@npm:1.0.2" - checksum: 10/74d56f3e9f326a8dd63700e9a51a7c75487180629c7a68bbafee97c612fbf57af8347369bfa6610b9268a3e8b833c19c1e4beb03f26db9a9dce31f6f7a19b5b1 - languageName: node - linkType: hard - -"@octokit/types@npm:^10.0.0": - version: 10.0.0 - resolution: "@octokit/types@npm:10.0.0" - dependencies: - "@octokit/openapi-types": "npm:^18.0.0" - checksum: 10/6345e605d30c99639a0207cfc7bea5bf29d9007e93cdcd78be3f8218830a462a0f0fbb976f5c2d9ebe70ee2aa33d1b72243cdb955478581ee2cead059ac4f030 - languageName: node - linkType: hard - -"@octokit/types@npm:^9.0.0, @octokit/types@npm:^9.2.3": - version: 9.3.2 - resolution: "@octokit/types@npm:9.3.2" - dependencies: - "@octokit/openapi-types": "npm:^18.0.0" - checksum: 10/4bcd18850d5397e5835f5686be88ad95e5d7c23e7d53f898b82a8ca5fc1f6a7b53816ef6f9f3b7a06799c0b030d259bf2bd50a258a1656df2dc7f3e533e334f8 - languageName: node - linkType: hard - -"@open-web3/orml-type-definitions@npm:1.1.4, @open-web3/orml-type-definitions@npm:^1.1.4": - version: 1.1.4 - resolution: "@open-web3/orml-type-definitions@npm:1.1.4" - dependencies: - lodash.merge: "npm:^4.6.2" - checksum: 10/a57d7b29aa9110ddb7d4d5fd0613b248ce5883fbf879fa8d510418f0339de4431f85070b21c4be25f51d7a3c1731063c2f60e547177e9d0285fb894e5c77f78e - languageName: node - linkType: hard - -"@open-web3/orml-type-definitions@npm:^0.8.2-9": - version: 0.8.2-11 - resolution: "@open-web3/orml-type-definitions@npm:0.8.2-11" - checksum: 10/4a4b8380c6a4ae66513ce7db0379e60880fead9b22b9bb7460da058bad5fbd9b429d7ce8aa88adb59b3e2e5ccaab3865be061a8006a339e84b504ded83d61aee - languageName: node - linkType: hard - -"@open-web3/orml-type-definitions@npm:^0.9.4-38, @open-web3/orml-type-definitions@npm:^0.9.4-7": - version: 0.9.4-38 - resolution: "@open-web3/orml-type-definitions@npm:0.9.4-38" - dependencies: - lodash.merge: "npm:^4.6.2" - checksum: 10/73931241e560471980f262c06cc3fc4d9a2b8d95eb7fb3a5c51be9f268824adc383175159d750dad4ce4c14533070d9dbcbe2d2d42ba207a7a47e3c95fc95171 - languageName: node - linkType: hard - -"@open-web3/orml-type-definitions@npm:^2.0.1": - version: 2.0.1 - resolution: "@open-web3/orml-type-definitions@npm:2.0.1" - dependencies: - lodash.merge: "npm:^4.6.2" - checksum: 10/4fa2ae4b5e60e6da370d0ecaa920b42992978c159a5d2d85dc704c9cfe5dc8b9a770bf3da21f2cf2dd4c4c8fe30112d7ffc02d8f22ec0760edf1f43acbd21872 - languageName: node - linkType: hard - -"@parallel-finance/type-definitions@npm:2.0.1": - version: 2.0.1 - resolution: "@parallel-finance/type-definitions@npm:2.0.1" - dependencies: - "@open-web3/orml-type-definitions": "npm:^2.0.1" - checksum: 10/10667f654ef80f11b75c68ba6a8a69536b06b5c83bba8a313220963cca433735917bcc237f9799834793a949a61e2a293b30cb252e78a3ccf249e290177e78ae - languageName: node - linkType: hard - -"@peaqnetwork/type-definitions@npm:0.0.4": - version: 0.0.4 - resolution: "@peaqnetwork/type-definitions@npm:0.0.4" - dependencies: - "@open-web3/orml-type-definitions": "npm:^0.9.4-38" - checksum: 10/94ee4aaedfda61dcd47db745dcdd107290d543776f067ad97c9ca52cbb6abe9d9c14255f9e291a264981ab10082286381b8cd3819d1830836c959957983d8ba0 - languageName: node - linkType: hard - -"@pendulum-chain/type-definitions@npm:0.3.8": - version: 0.3.8 - resolution: "@pendulum-chain/type-definitions@npm:0.3.8" - dependencies: - "@babel/runtime": "npm:^7.10.2" - "@open-web3/orml-type-definitions": "npm:^1.1.4" - checksum: 10/64fc2a4d505abb00dc28e9901c7ac2c97c726601debf8b76182d4a93ee277e4e6ccb2109e31d11239cecb7a07e6109685c01476646633e13e4a2329de3da8cc4 - languageName: node - linkType: hard - -"@pezkuwi/api-augment@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/api-augment@npm:16.5.6" - dependencies: - "@pezkuwi/api-base": "npm:16.5.4" - "@pezkuwi/rpc-augment": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-augment": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/54b0f8c06dcca43da412c810ad544112357143d9eee17e0f0c24c3ca148ac7806b3ccf2301656e015deb4cf7b20bb6e0a96ea2dd60a75df8d0b810391faf55ed - languageName: node - linkType: hard - -"@pezkuwi/api-base@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/api-base@npm:16.5.6" - dependencies: - "@pezkuwi/rpc-core": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/c38cac539b1d33ba827184c5274f2819b5ae74a75418580544782efd4b29864b899211b5a63b616a72dc32ad92e9ed3fb7f76b844097127caf57938102f2d680 - languageName: node - linkType: hard - -"@pezkuwi/api-contract@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/api-contract@npm:16.5.6" - dependencies: - "@pezkuwi/api": "npm:16.5.4" - "@pezkuwi/api-augment": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/types-create": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/2459010d575e48e648d059424223857c923e17cdc5847a557078f42f2afb9c8db767f98ffd124863215de73f861ca88a6dbd3035d49bccffb03f824816b82e32 - languageName: node - linkType: hard - -"@pezkuwi/api-derive@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/api-derive@npm:16.5.6" - dependencies: - "@pezkuwi/api": "npm:16.5.4" - "@pezkuwi/api-augment": "npm:16.5.4" - "@pezkuwi/api-base": "npm:16.5.4" - "@pezkuwi/rpc-core": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/6275f558dfaced4342354c439ab3a4f69cd8b21017f7949b61de7ab8c75d5639b11469084025a5afef66ecc16471385a42d6aa941f31c26cf6f19eb2e482412c - languageName: node - linkType: hard - -"@pezkuwi/api@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/api@npm:16.5.6" - dependencies: - "@pezkuwi/api-augment": "npm:16.5.4" - "@pezkuwi/api-base": "npm:16.5.4" - "@pezkuwi/api-derive": "npm:16.5.4" - "@pezkuwi/keyring": "npm:^14.0.1" - "@pezkuwi/rpc-augment": "npm:16.5.4" - "@pezkuwi/rpc-core": "npm:16.5.4" - "@pezkuwi/rpc-provider": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-augment": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/types-create": "npm:16.5.4" - "@pezkuwi/types-known": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.1" - eventemitter3: "npm:^5.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/aefde0198067bf9b41481bda88d2c326ab0ffff25c857f775ce2b2ef45265f8fec25d8cf75529ab4c1076cfe7d97666717bb3e9255ed4a74a705a251e6f22802 - languageName: node - linkType: hard - -"@pezkuwi/app-accounts@workspace:packages/page-accounts": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-accounts@workspace:packages/page-accounts" - dependencies: - "@pezkuwi/hw-ledger": "npm:^14.0.5" - "@pezkuwi/phishing": "npm:^0.25.26" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-hooks": "npm:^0.168.2-0-x" - "@pezkuwi/test-support": "npm:0.168.2-0-x" - "@pezkuwi/util": "npm:^14.0.5" - "@polkadot/vanitygen": "npm:^0.63.18" - detect-browser: "npm:^5.3.0" - file-saver: "npm:^2.0.5" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-addresses@workspace:packages/page-addresses": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-addresses@workspace:packages/page-addresses" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@testing-library/react": "npm:^14.1.2" - file-saver: "npm:^2.0.5" - testcontainers: "npm:^10.4.0" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-alliance@workspace:packages/page-alliance": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-alliance@workspace:packages/page-alliance" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-ambassador@workspace:packages/page-ambassador": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-ambassador@workspace:packages/page-ambassador" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-assets@workspace:packages/page-assets": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-assets@workspace:packages/page-assets" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-bounties@workspace:packages/page-bounties": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-bounties@workspace:packages/page-bounties" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/test-support": "npm:0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-broker@workspace:packages/page-broker": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-broker@workspace:packages/page-broker" - dependencies: - "@pezkuwi/react-components": "npm:0.168.2-0-x" - "@pezkuwi/react-query": "npm:0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-calendar@workspace:packages/page-calendar": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-calendar@workspace:packages/page-calendar" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-claims@workspace:packages/page-claims": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-claims@workspace:packages/page-claims" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - secp256k1: "npm:^3.8.0" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-collator@workspace:packages/page-collator": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-collator@workspace:packages/page-collator" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-contracts@workspace:packages/page-contracts": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-contracts@workspace:packages/page-contracts" - dependencies: - "@pezkuwi/api-contract": "npm:16.5.2" - eventemitter3: "npm:^5.0.1" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-coretime@workspace:packages/page-coretime": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-coretime@workspace:packages/page-coretime" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-council@workspace:packages/page-council": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-council@workspace:packages/page-council" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-democracy@workspace:packages/page-democracy": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-democracy@workspace:packages/page-democracy" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-explorer@npm:^0.168.2-0-x, @pezkuwi/app-explorer@workspace:packages/page-explorer": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-explorer@workspace:packages/page-explorer" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-extrinsics@workspace:packages/page-extrinsics": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-extrinsics@workspace:packages/page-extrinsics" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-params": "npm:^0.168.2-0-x" - "@pezkuwi/react-signer": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-fellowship@workspace:packages/page-fellowship": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-fellowship@workspace:packages/page-fellowship" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-files@workspace:packages/page-files": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-files@workspace:packages/page-files" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - axios: "npm:^1.6.2" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-gilt@workspace:packages/page-gilt": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-gilt@workspace:packages/page-gilt" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-js@workspace:packages/page-js": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-js@workspace:packages/page-js" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-membership@workspace:packages/page-membership": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-membership@workspace:packages/page-membership" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-nfts@workspace:packages/page-nfts": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-nfts@workspace:packages/page-nfts" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-nis@workspace:packages/page-nis": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-nis@workspace:packages/page-nis" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-parachains@workspace:packages/page-parachains": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-parachains@workspace:packages/page-parachains" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-poll@workspace:packages/page-poll": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-poll@workspace:packages/page-poll" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-preimages@workspace:packages/page-preimages": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-preimages@workspace:packages/page-preimages" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-ranked@workspace:packages/page-ranked": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-ranked@workspace:packages/page-ranked" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-referenda@workspace:packages/page-referenda": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-referenda@workspace:packages/page-referenda" - dependencies: - chart.js: "npm:^4.4.1" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-rpc@workspace:packages/page-rpc": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-rpc@workspace:packages/page-rpc" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-runtime@workspace:packages/page-runtime": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-runtime@workspace:packages/page-runtime" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-scheduler@workspace:packages/page-scheduler": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-scheduler@workspace:packages/page-scheduler" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-settings@workspace:packages/page-settings": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-settings@workspace:packages/page-settings" - dependencies: - "@pezkuwi/apps-config": "npm:^0.168.2-0-x" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - query-string: "npm:^8.1.0" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-signing@workspace:packages/page-signing": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-signing@workspace:packages/page-signing" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-society@workspace:packages/page-society": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-society@workspace:packages/page-society" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-staking-async@workspace:packages/page-staking-async": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-staking-async@workspace:packages/page-staking-async" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-staking-legacy@workspace:packages/page-staking-legacy": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-staking-legacy@workspace:packages/page-staking-legacy" - dependencies: - "@pezkuwi/app-explorer": "npm:^0.168.2-0-x" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-staking2@workspace:packages/page-staking2": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-staking2@workspace:packages/page-staking2" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-staking@workspace:packages/page-staking": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-staking@workspace:packages/page-staking" - dependencies: - "@pezkuwi/app-explorer": "npm:^0.168.2-0-x" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-storage@workspace:packages/page-storage": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-storage@workspace:packages/page-storage" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-params": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-sudo@workspace:packages/page-sudo": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-sudo@workspace:packages/page-sudo" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-tech-comm@workspace:packages/page-tech-comm": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-tech-comm@workspace:packages/page-tech-comm" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-treasury@workspace:packages/page-treasury": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-treasury@workspace:packages/page-treasury" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-utilities@workspace:packages/page-utilities": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-utilities@workspace:packages/page-utilities" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-params": "npm:^0.168.2-0-x" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/app-whitelist@workspace:packages/page-whitelist": - version: 0.0.0-use.local - resolution: "@pezkuwi/app-whitelist@workspace:packages/page-whitelist" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/apps-config@npm:^0.168.2-0-x, @pezkuwi/apps-config@workspace:packages/apps-config": - version: 0.0.0-use.local - resolution: "@pezkuwi/apps-config@workspace:packages/apps-config" - dependencies: - "@acala-network/type-definitions": "npm:5.1.2" - "@bifrost-finance/type-definitions": "npm:1.11.3" - "@crustio/type-definitions": "npm:1.3.0" - "@darwinia/types": "npm:2.8.10" - "@darwinia/types-known": "npm:2.8.10" - "@digitalnative/type-definitions": "npm:1.1.27" - "@docknetwork/node-types": "npm:0.16.0" - "@edgeware/node-types": "npm:3.6.2-wako" - "@equilab/definitions": "npm:1.4.18" - "@fragnova/api-augment": "npm:0.1.0-spec-1.0.4-mainnet" - "@frequency-chain/api-augment": "npm:1.11.1" - "@interlay/interbtc-types": "npm:1.13.0" - "@jamton/parachain-ts-interfaces": "npm:1.10.4" - "@kiltprotocol/type-definitions": "npm:^1.11502.1" - "@laminar/type-definitions": "npm:0.3.1" - "@logion/node-api": "npm:0.27.0-4" - "@mangata-finance/type-definitions": "npm:^2.1.2" - "@metaverse-network-sdk/type-definitions": "npm:0.0.1-16" - "@moonbeam-network/types-bundle": "npm:1.0.2" - "@parallel-finance/type-definitions": "npm:2.0.1" - "@peaqnetwork/type-definitions": "npm:0.0.4" - "@pendulum-chain/type-definitions": "npm:0.3.8" - "@pezkuwi/api": "npm:^16.5.2" - "@pezkuwi/api-derive": "npm:^16.5.2" - "@pezkuwi/networks": "npm:^14.0.5" - "@pezkuwi/react-identicon": "npm:^3.17.1" - "@pezkuwi/types": "npm:^16.5.2" - "@pezkuwi/types-codec": "npm:^16.5.2" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - "@pezkuwi/wasm-util": "npm:^7.5.2" - "@pezkuwi/x-fetch": "npm:^14.0.5" - "@pezkuwi/x-ws": "npm:^14.0.5" - "@phala/typedefs": "npm:0.2.33" - "@polymeshassociation/polymesh-types": "npm:5.7.0" - "@snowfork/snowbridge-types": "npm:0.2.7" - "@sora-substrate/type-definitions": "npm:1.27.7" - "@subsocial/definitions": "npm:0.8.14" - "@unique-nft/opal-testnet-types": "npm:1003.70.0" - "@unique-nft/quartz-mainnet-types": "npm:1003.70.0" - "@unique-nft/sapphire-mainnet-types": "npm:1003.70.0" - "@unique-nft/unique-mainnet-types": "npm:1001.63.0" - "@zeitgeistpm/type-defs": "npm:1.0.0" - "@zeroio/type-definitions": "npm:0.0.14" - pontem-types-bundle: "npm:1.0.15" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - languageName: unknown - linkType: soft - -"@pezkuwi/apps-electron@workspace:packages/apps-electron": - version: 0.0.0-use.local - resolution: "@pezkuwi/apps-electron@workspace:packages/apps-electron" - dependencies: - "@pezkuwi/dev": "npm:^0.85.2" - "@types/tmp": "npm:^0.2.6" - copy-webpack-plugin: "npm:^11.0.0" - electron: "npm:28.0.0" - electron-builder: "npm:24.10.0" - electron-builder-notarize: "npm:^1.5.1" - electron-log: "npm:^5.0.1" - electron-updater: "npm:^6.1.7" - html-webpack-plugin: "npm:^5.5.4" - tmp: "npm:^0.2.1" - peerDependencies: - webpack: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/apps-routing@npm:^0.168.2-0-x, @pezkuwi/apps-routing@workspace:packages/apps-routing": - version: 0.0.0-use.local - resolution: "@pezkuwi/apps-routing@workspace:packages/apps-routing" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/apps@workspace:packages/apps": - version: 0.0.0-use.local - resolution: "@pezkuwi/apps@workspace:packages/apps" - dependencies: - "@acala-network/chopsticks-core": "npm:^1.2.1" - "@pezkuwi/apps-config": "npm:^0.168.2-0-x" - "@pezkuwi/apps-routing": "npm:^0.168.2-0-x" - "@pezkuwi/dev": "npm:^0.85.2" - "@pezkuwi/react-api": "npm:^0.168.2-0-x" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@pezkuwi/react-hooks": "npm:^0.168.2-0-x" - "@pezkuwi/react-params": "npm:^0.168.2-0-x" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - "@pezkuwi/react-signer": "npm:^0.168.2-0-x" - "@types/punycode": "npm:^2.1.3" - assert: "npm:^2.1.0" - buffer: "npm:^6.0.3" - copy-webpack-plugin: "npm:^11.0.0" - crypto-browserify: "npm:^3.12.0" - css-loader: "npm:^6.8.1" - empty: "npm:^0.10.1" - html-webpack-plugin: "npm:^5.5.4" - https-browserify: "npm:^1.0.0" - mini-css-extract-plugin: "npm:^2.7.6" - os-browserify: "npm:^0.3.0" - path-browserify: "npm:^1.0.1" - process: "npm:^0.11.10" - punycode: "npm:^2.3.1" - query-string: "npm:^8.1.0" - react: "npm:^18.2.0" - react-dom: "npm:^18.2.0" - react-is: "npm:^18.2.0" - stream-browserify: "npm:^3.0.0" - stream-http: "npm:^3.2.0" - ts-loader: "npm:^9.5.1" - peerDependencies: - typescript: "*" - webpack: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/dev-test@npm:^0.84.2": - version: 0.84.3 - resolution: "@pezkuwi/dev-test@npm:0.84.3" - dependencies: - jsdom: "npm:^24.0.0" - tslib: "npm:^2.7.0" - checksum: 10/5d8b8c0b83c471867e623b642d493a348153ab1416cbe322445c3ffbc08362484b28bb23cfc6d8afb312b30d2d95a424c1816bd9549c54e0ddea884944915931 - languageName: node - linkType: hard - -"@pezkuwi/dev-ts@npm:^0.84.2": - version: 0.84.3 - resolution: "@pezkuwi/dev-ts@npm:0.84.3" - dependencies: - json5: "npm:^2.2.3" - tslib: "npm:^2.7.0" - typescript: "npm:^5.5.4" - checksum: 10/054b1254a0c5c995ac4150bf05ad984f847917528c3bbb06a3f2966b71900e66d0c4eda3e4f9c9bcc2cfb64c9482072c7ee1e131c76a173103c8012782695259 - languageName: node - linkType: hard - -"@pezkuwi/dev@npm:^0.85.2": - version: 0.85.3 - resolution: "@pezkuwi/dev@npm:0.85.3" - dependencies: - "@eslint/js": "npm:^8.56.0" - "@pezkuwi/dev-test": "npm:^0.84.2" - "@pezkuwi/dev-ts": "npm:^0.84.2" - "@rollup/plugin-alias": "npm:^5.1.1" - "@rollup/plugin-commonjs": "npm:^25.0.8" - "@rollup/plugin-dynamic-import-vars": "npm:^2.1.5" - "@rollup/plugin-inject": "npm:^5.0.5" - "@rollup/plugin-json": "npm:^6.1.0" - "@rollup/plugin-node-resolve": "npm:^15.3.1" - "@tsconfig/strictest": "npm:^2.0.2" - "@typescript-eslint/eslint-plugin": "npm:^6.19.1" - "@typescript-eslint/parser": "npm:^6.19.1" - eslint: "npm:^8.56.0" - eslint-config-standard: "npm:^17.1.0" - eslint-import-resolver-node: "npm:^0.3.9" - eslint-import-resolver-typescript: "npm:^3.6.1" - eslint-plugin-deprecation: "npm:^2.0.0" - eslint-plugin-header: "npm:^3.1.1" - eslint-plugin-import: "npm:^2.29.1" - eslint-plugin-import-newlines: "npm:^1.3.4" - eslint-plugin-jest: "npm:^27.6.3" - eslint-plugin-n: "npm:^16.6.2" - eslint-plugin-promise: "npm:^6.1.1" - eslint-plugin-react: "npm:^7.33.2" - eslint-plugin-react-hooks: "npm:^4.6.0" - eslint-plugin-simple-import-sort: "npm:^10.0.0" - eslint-plugin-sort-destructure-keys: "npm:^1.5.0" - espree: "npm:^9.6.1" - gh-pages: "npm:^6.1.1" - gh-release: "npm:^7.0.2" - globals: "npm:^13.24.0" - json5: "npm:^2.2.3" - madge: "npm:^6.1.0" - rollup: "npm:^4.9.6" - rollup-plugin-cleanup: "npm:^3.2.1" - tslib: "npm:^2.7.0" - typescript: "npm:^5.5.4" - webpack: "npm:^5.89.0" - webpack-cli: "npm:^5.1.4" - webpack-dev-server: "npm:^4.15.1" - webpack-merge: "npm:^5.10.0" - webpack-subresource-integrity: "npm:^5.2.0-rc.1" - yargs: "npm:^17.7.2" - bin: - pezkuwi-ci-ghact-build: scripts/pezkuwi-ci-ghact-build.mjs - pezkuwi-ci-ghact-docs: scripts/pezkuwi-ci-ghact-docs.mjs - pezkuwi-ci-ghpages-force: scripts/pezkuwi-ci-ghpages-force.mjs - pezkuwi-dev-build-docs: scripts/pezkuwi-dev-build-docs.mjs - pezkuwi-dev-build-ts: scripts/pezkuwi-dev-build-ts.mjs - pezkuwi-dev-circular: scripts/pezkuwi-dev-circular.mjs - pezkuwi-dev-clean-build: scripts/pezkuwi-dev-clean-build.mjs - pezkuwi-dev-contrib: scripts/pezkuwi-dev-contrib.mjs - pezkuwi-dev-copy-dir: scripts/pezkuwi-dev-copy-dir.mjs - pezkuwi-dev-copy-to: scripts/pezkuwi-dev-copy-to.mjs - pezkuwi-dev-deno-map: scripts/pezkuwi-dev-deno-map.mjs - pezkuwi-dev-run-lint: scripts/pezkuwi-dev-run-lint.mjs - pezkuwi-dev-run-node-ts: scripts/pezkuwi-dev-run-node-ts.mjs - pezkuwi-dev-run-test: scripts/pezkuwi-dev-run-test.mjs - pezkuwi-dev-version: scripts/pezkuwi-dev-version.mjs - pezkuwi-dev-yarn-only: scripts/pezkuwi-dev-yarn-only.mjs - pezkuwi-exec-eslint: scripts/pezkuwi-exec-eslint.mjs - pezkuwi-exec-ghpages: scripts/pezkuwi-exec-ghpages.mjs - pezkuwi-exec-ghrelease: scripts/pezkuwi-exec-ghrelease.mjs - pezkuwi-exec-node-test: scripts/pezkuwi-exec-node-test.mjs - pezkuwi-exec-rollup: scripts/pezkuwi-exec-rollup.mjs - pezkuwi-exec-tsc: scripts/pezkuwi-exec-tsc.mjs - pezkuwi-exec-webpack: scripts/pezkuwi-exec-webpack.mjs - checksum: 10/d5d233b0dc6c324cd508d23f80fa42ddbe5045ba225bb6e1f43f192bc2875cddb72001807da2a8faa81d1498714a2d8cb3e51ed89be6a23ceee79f5af1de9a73 - languageName: node - linkType: hard - -"@pezkuwi/extension-compat-metamask@npm:^0.62.14": - version: 0.62.14 - resolution: "@pezkuwi/extension-compat-metamask@npm:0.62.14" - dependencies: - "@metamask/detect-provider": "npm:^2.0.0" - "@pezkuwi/extension-inject": "workspace:*" - "@pezkuwi/types": "npm:^16.5.3" - "@pezkuwi/util": "npm:^14.0.5" - tslib: "npm:^2.8.1" - web3: "npm:^4.7.0" - peerDependencies: - "@pezkuwi/api": "*" - "@pezkuwi/util": "*" - checksum: 10/0f75af4d9def20abc927653c048c195d10a52bec0012e326be761fb86727e58d8759a37404aa6928d9080b30fedb14a9a48fc38b65b930fc85af9e719234c412 - languageName: node - linkType: hard - -"@pezkuwi/extension-dapp@npm:^0.62.14": - version: 0.62.14 - resolution: "@pezkuwi/extension-dapp@npm:0.62.14" - dependencies: - "@pezkuwi/extension-inject": "workspace:*" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/api": "*" - "@pezkuwi/util": "*" - "@pezkuwi/util-crypto": "*" - checksum: 10/503d5f664aacf9df1fe2ab9ab25e4eda52201db9c17ac0e790329ff0ed96138da2d40ed422a92fe7d8dce288d526246f3cf0a08819a094c07c2d3493f9a08b1d - languageName: node - linkType: hard - -"@pezkuwi/extension-inject@npm:^0.62.14": - version: 0.62.14 - resolution: "@pezkuwi/extension-inject@npm:0.62.14" - dependencies: - "@pezkuwi/api": "npm:^16.5.5" - "@pezkuwi/rpc-provider": "npm:^16.5.5" - "@pezkuwi/types": "npm:^16.5.5" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - "@pezkuwi/x-global": "npm:^14.0.5" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/api": "*" - "@pezkuwi/util": "*" - checksum: 10/fd1c7d7793da98a1cd90685dabf202de5cd001b48b2e26b5174ac5cf146e93018be91421a986751341ecee787c4b707ed04a0a7797a818e70300bcec61a619a3 - languageName: node - linkType: hard - -"@pezkuwi/hw-ledger-transports@npm:14.0.1": - version: 14.0.1 - resolution: "@pezkuwi/hw-ledger-transports@npm:14.0.1" - dependencies: - "@ledgerhq/hw-transport": "npm:^6.31.4" - "@ledgerhq/hw-transport-node-hid-singleton": "npm:^6.31.5" - "@ledgerhq/hw-transport-webhid": "npm:^6.29.4" - "@ledgerhq/hw-transport-webusb": "npm:^6.29.4" - "@pezkuwi/util": "npm:14.0.1" - tslib: "npm:^2.8.0" - dependenciesMeta: - "@ledgerhq/hw-transport-node-hid-singleton": - optional: true - checksum: 10/1da801217e016fba140fe9e506238d5e07b79bb924c0470c7cc9051f6072049a118c21cf7dc50e06ba4173154944975faaa7a571c5444ec41de18a2160bb839a - languageName: node - linkType: hard - -"@pezkuwi/hw-ledger-transports@npm:^14.0.5": - version: 14.0.7 - resolution: "@pezkuwi/hw-ledger-transports@npm:14.0.7" - dependencies: - "@ledgerhq/hw-transport": "npm:^6.31.4" - "@ledgerhq/hw-transport-node-hid-singleton": "npm:^6.31.5" - "@ledgerhq/hw-transport-webhid": "npm:^6.29.4" - "@ledgerhq/hw-transport-webusb": "npm:^6.29.4" - "@pezkuwi/util": "npm:14.0.1" - tslib: "npm:^2.8.0" - dependenciesMeta: - "@ledgerhq/hw-transport-node-hid-singleton": - optional: true - checksum: 10/6ab7169cb7f9a7caa3ef6a8a9c1c885d5fc53298cef9d4d528a6919d07d12285a0113a5925d9a704c7406b619cd1335b538c881a733befe9796ab2e6006e68d4 - languageName: node - linkType: hard - -"@pezkuwi/hw-ledger@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/hw-ledger@npm:14.0.7" - dependencies: - "@pezkuwi/hw-ledger-transports": "npm:14.0.1" - "@pezkuwi/util": "npm:14.0.1" - "@zondax/ledger-substrate": "npm:1.1.1" - tslib: "npm:^2.8.0" - checksum: 10/2f421699b5520f977f28c5cba3b1df14f2a38f04018a6fff6073a8e0e56773f3df57aaac0846d85a8973b826f0a8343cc5423b5908ef1f4315868a1aa71f062f - languageName: node - linkType: hard - -"@pezkuwi/keyring@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/keyring@npm:14.0.7" - dependencies: - "@pezkuwi/util": "npm:14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.2" - tslib: "npm:^2.8.0" - peerDependencies: - "@pezkuwi/util": 14.0.1 - "@pezkuwi/util-crypto": ^14.0.2 - checksum: 10/3bcdb393b9da80e56018d75d8a330bb86904c7cf75c49e53846705a9aea1fbf6488a80e17bf19e7df8f6aa896ee28d33fc4571f7b2408ca0cd8c4d8b64aa696d - languageName: node - linkType: hard - -"@pezkuwi/networks@npm:^14.0.7": - version: 14.0.9 - resolution: "@pezkuwi/networks@npm:14.0.9" - dependencies: - "@pezkuwi/util": "npm:14.0.1" - "@substrate/ss58-registry": "npm:^1.51.0" - tslib: "npm:^2.8.0" - checksum: 10/349f248806d53394d4b152823d70f656844501a60b4039ba299b79cd0ee28321ed062210915b348759e27f8a067324be7fa406ef42a47505154f578442ecbda7 - languageName: node - linkType: hard - -"@pezkuwi/phishing@npm:^0.25.28": - version: 0.25.28 - resolution: "@pezkuwi/phishing@npm:0.25.28" - dependencies: - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - "@pezkuwi/x-fetch": "npm:^14.0.5" - tldts: "npm:^7.0.8" - tslib: "npm:^2.8.1" - checksum: 10/af9d6db0efa42c34d9c01cecd1f7eedbd893802e43c7fc812b27edccf4c5492e96849bf1c66645caf3bb5fb9ac3bfea5d4e9fa937949a7b2918511620efdefea - languageName: node - linkType: hard - -"@pezkuwi/react-api@npm:^0.168.2-0-x, @pezkuwi/react-api@workspace:packages/react-api": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-api@workspace:packages/react-api" - dependencies: - "@pezkuwi/api": "npm:^16.5.6" - "@pezkuwi/extension-compat-metamask": "npm:^0.62.14" - "@pezkuwi/extension-dapp": "npm:^0.62.14" - "@pezkuwi/extension-inject": "npm:^0.62.14" - "@pezkuwi/rpc-provider": "npm:^16.5.6" - fflate: "npm:^0.8.1" - rxjs: "npm:^7.8.1" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/react-components@npm:0.168.2-0-x, @pezkuwi/react-components@npm:^0.168.2-0-x, @pezkuwi/react-components@workspace:packages/react-components": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-components@workspace:packages/react-components" - dependencies: - "@fortawesome/fontawesome-svg-core": "npm:^6.5.1" - "@fortawesome/free-solid-svg-icons": "npm:^6.5.1" - "@fortawesome/react-fontawesome": "npm:^0.2.0" - "@pezkuwi/keyring": "npm:^14.0.5" - "@pezkuwi/phishing": "npm:^0.25.26" - "@pezkuwi/react-api": "npm:^0.168.2-0-x" - "@pezkuwi/react-identicon": "npm:^3.17.1" - "@pezkuwi/react-qr": "npm:^3.17.1" - "@pezkuwi/react-query": "npm:^0.168.2-0-x" - "@pezkuwi/ui-keyring": "npm:^3.17.1" - "@pezkuwi/ui-settings": "npm:^3.17.1" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - "@types/chartjs-plugin-crosshair": "npm:^1.1.4" - "@types/codeflask": "npm:^1.4.6" - "@types/owasp-password-strength-test": "npm:^1.3.2" - "@types/react": "npm:^18.2.45" - "@types/react-dom": "npm:^18.2.18" - chart.js: "npm:^4.4.1" - chartjs-plugin-annotation: "npm:^3.0.1" - chartjs-plugin-crosshair: "npm:^2.0.0" - codeflask: "npm:^1.4.1" - i18next: "npm:^23.7.11" - i18next-browser-languagedetector: "npm:^7.2.0" - owasp-password-strength-test: "npm:^1.3.0" - react-beautiful-dnd: "npm:^13.1.1" - react-chartjs-2: "npm:^5.2.0" - react-copy-to-clipboard: "npm:^5.1.0" - react-dropzone: "npm:^14.2.3" - react-i18next: "npm:^13.5.0" - react-markdown: "npm:^9.0.1" - react-router: "npm:^6.21.0" - react-router-dom: "npm:^6.21.0" - react-tooltip: "npm:^4.5.1" - rehype-raw: "npm:^7.0.0" - semantic-ui-css: "npm:^2.5.0" - semantic-ui-react: "npm:^0.88.2" - store: "npm:^2.0.12" - styled-components: "npm:^6.1.1" - styled-theming: "npm:^2.2.0" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/react-hooks@npm:^0.168.2-0-x, @pezkuwi/react-hooks@workspace:packages/react-hooks": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-hooks@workspace:packages/react-hooks" - dependencies: - "@pezkuwi/hw-ledger": "npm:^14.0.5" - "@pezkuwi/hw-ledger-transports": "npm:^14.0.5" - is-ipfs: "npm:^8.0.1" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/react-identicon@npm:^3.17.1": - version: 3.17.2 - resolution: "@pezkuwi/react-identicon@npm:3.17.2" - dependencies: - "@pezkuwi/keyring": "npm:^14.0.5" - "@pezkuwi/ui-settings": "npm:3.17.2" - "@pezkuwi/ui-shared": "npm:3.17.2" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - ethereum-blockies-base64: "npm:^1.0.2" - jdenticon: "npm:3.2.0" - react-copy-to-clipboard: "npm:^5.1.0" - styled-components: "npm:^6.1.1" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/keyring": "*" - "@pezkuwi/util": "*" - "@pezkuwi/util-crypto": "*" - react: "*" - react-dom: "*" - react-is: "*" - checksum: 10/a3ae4d83532260fe01457df610398c06ec5082d65e48f28d498c52d87d144d222675beda040f9bb04d3cfeb0e8caf9bf438596461032600fc6774e55171888fa - languageName: node - linkType: hard - -"@pezkuwi/react-params@npm:^0.168.2-0-x, @pezkuwi/react-params@workspace:packages/react-params": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-params@workspace:packages/react-params" - dependencies: - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - multiformats: "npm:^12.1.3" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/react-qr@npm:^3.17.1": - version: 3.17.2 - resolution: "@pezkuwi/react-qr@npm:3.17.2" - dependencies: - "@pezkuwi/ui-settings": "npm:3.17.2" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - "@zxing/browser": "npm:^0.1.5" - "@zxing/library": "npm:^0.21.2" - qrcode-generator: "npm:^1.4.4" - styled-components: "npm:^6.1.1" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/util": "*" - "@pezkuwi/util-crypto": "*" - react: "*" - react-dom: "*" - react-is: "*" - checksum: 10/79046d80017aac386f461f48ffa889921a0bd2815c08e6c2c9b7ad6e47c44c77e96bea5f78a79dc197fd44f0b054b72e23aee2214e9ec0b10af2842baa498323 - languageName: node - linkType: hard - -"@pezkuwi/react-query@npm:0.168.2-0-x, @pezkuwi/react-query@npm:^0.168.2-0-x, @pezkuwi/react-query@workspace:packages/react-query": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-query@workspace:packages/react-query" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/react-signer@npm:^0.168.2-0-x, @pezkuwi/react-signer@workspace:packages/react-signer": - version: 0.0.0-use.local - resolution: "@pezkuwi/react-signer@workspace:packages/react-signer" - dependencies: - "@pezkuwi/hw-ledger": "npm:^14.0.5" - "@pezkuwi/react-components": "npm:^0.168.2-0-x" - "@polkadot-api/merkleize-metadata": "npm:^1.1.27" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/rpc-augment@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/rpc-augment@npm:16.5.6" - dependencies: - "@pezkuwi/rpc-core": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/5d425a2af1c80f4fd59ac674da1d7b453b93e7ebfcb89bd166eca9a4fe97cac8fd81c28a1d50d68a78a94c75521e38a089c62687df66dc05434416edccd8b771 - languageName: node - linkType: hard - -"@pezkuwi/rpc-core@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/rpc-core@npm:16.5.6" - dependencies: - "@pezkuwi/rpc-augment": "npm:16.5.4" - "@pezkuwi/rpc-provider": "npm:16.5.4" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/3db5e5d0711e724fe0b6c6b331d1b16b9bfc8a44bf5cd04da9b144bad0d8782d277a6716dd30a67d29d7727c6741548c7906e226fdcbb1135be57c58ad3b487f - languageName: node - linkType: hard - -"@pezkuwi/rpc-provider@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/rpc-provider@npm:16.5.6" - dependencies: - "@bizinikiwi/connect": "npm:2.1.9" - "@pezkuwi/keyring": "npm:^14.0.1" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-support": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.1" - "@pezkuwi/x-fetch": "npm:^14.0.1" - "@pezkuwi/x-global": "npm:^14.0.1" - "@pezkuwi/x-ws": "npm:^14.0.1" - eventemitter3: "npm:^5.0.1" - mock-socket: "npm:^9.3.1" - nock: "npm:^13.5.5" - tslib: "npm:^2.8.1" - dependenciesMeta: - "@bizinikiwi/connect": - optional: true - checksum: 10/16b639be8732936d1a4314b348de0826cde8c027bdca179652b89221a4f3edb1b6833cfdb40126e7731668a9fa4afb6535b0c8b15ae1c1d5f1da99c17fe898ea - languageName: node - linkType: hard - -"@pezkuwi/test-support@npm:0.168.2-0-x, @pezkuwi/test-support@workspace:packages/test-support": - version: 0.0.0-use.local - resolution: "@pezkuwi/test-support@workspace:packages/test-support" - dependencies: - "@pezkuwi/types-support": "npm:16.5.2" - "@testing-library/jest-dom": "npm:^5.17.0" - "@testing-library/react": "npm:^14.1.2" - testcontainers: "npm:^10.4.0" - tsconfig-paths: "npm:^4.2.0" - peerDependencies: - react: "*" - react-dom: "*" - react-is: "*" - languageName: unknown - linkType: soft - -"@pezkuwi/types-augment@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/types-augment@npm:16.5.6" - dependencies: - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/87338954878dd62a2b0f112830b434fc8c979ca11608e9cf61ee544b8ebcb8e2d77f3d962b4f68cfde81ad3ded5a582eaecb45628ae9f595d87d24d96878a927 - languageName: node - linkType: hard - -"@pezkuwi/types-codec@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/types-codec@npm:16.5.6" - dependencies: - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/x-bigint": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/6b0c87813df8fe1a00434eb651390b45e842c1029ba1afc2dd6ca9752dc76f8f3a33580a712900185fb0c5a2d16771e31b60cf2ea04c3b470abd727521e4ce79 - languageName: node - linkType: hard - -"@pezkuwi/types-create@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/types-create@npm:16.5.6" - dependencies: - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/3f32a69554572cdd218fea131aaba5bac65db8dd36fc946c0002178005aefedd2db4565f9bada43d0196dd328b4c0558a0fabfcdd46fc079946c8aad2977f01e - languageName: node - linkType: hard - -"@pezkuwi/types-known@npm:^16.5.6": - version: 16.5.8 - resolution: "@pezkuwi/types-known@npm:16.5.8" - dependencies: - "@pezkuwi/networks": "npm:^14.0.1" - "@pezkuwi/types": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/types-create": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/f248d06f776ac884e3c60e1a00d00df43e7a11f595abd69321e38d5c9822c24a15fb31bc4e696c612e6054dd37fd881ea94913ef968b91c7f65418c66b1ad5ed - languageName: node - linkType: hard - -"@pezkuwi/types-support@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/types-support@npm:16.5.6" - dependencies: - "@pezkuwi/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/c982a627eb3cd60805f8288d5202c5369000a6bdb36250c4f504d3e5c657457a9483c5727d5a8adab2124cc5c22e2570d59d1f8e820efb0f4ee5c45d6b3ef7b7 - languageName: node - linkType: hard - -"@pezkuwi/types@npm:^16.5.6": - version: 16.5.6 - resolution: "@pezkuwi/types@npm:16.5.6" - dependencies: - "@pezkuwi/keyring": "npm:^14.0.1" - "@pezkuwi/types-augment": "npm:16.5.4" - "@pezkuwi/types-codec": "npm:16.5.4" - "@pezkuwi/types-create": "npm:16.5.4" - "@pezkuwi/util": "npm:^14.0.1" - "@pezkuwi/util-crypto": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/d8be4b091474c05bde6836595ba3ff313eaf4493cd73151b5a3bd1c78a424111ca7d48231d7249788622f73a6ee94440f0027aee43b5343af29baf58b9bf6b6b - languageName: node - linkType: hard - -"@pezkuwi/ui-keyring@npm:^3.17.1": - version: 3.17.2 - resolution: "@pezkuwi/ui-keyring@npm:3.17.2" - dependencies: - "@pezkuwi/keyring": "npm:^14.0.5" - "@pezkuwi/ui-settings": "npm:3.17.2" - "@pezkuwi/util": "npm:^14.0.5" - "@pezkuwi/util-crypto": "npm:^14.0.5" - mkdirp: "npm:^3.0.1" - rxjs: "npm:^7.8.1" - store: "npm:^2.0.12" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/keyring": "*" - "@pezkuwi/ui-settings": "*" - "@pezkuwi/util": "*" - checksum: 10/d8f13302e30c643847362ad830f457a541119f7b65064a397b863beaa576b70ab81ce375aa5ee197af504eb4e03fbde4e24aac57307dd87bb23538a194b8bb73 - languageName: node - linkType: hard - -"@pezkuwi/ui-settings@npm:3.17.2, @pezkuwi/ui-settings@npm:^3.17.1": - version: 3.17.2 - resolution: "@pezkuwi/ui-settings@npm:3.17.2" - dependencies: - "@pezkuwi/networks": "npm:^14.0.5" - "@pezkuwi/util": "npm:^14.0.5" - eventemitter3: "npm:^5.0.1" - store: "npm:^2.0.12" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/networks": "*" - "@pezkuwi/util": "*" - checksum: 10/8a1b7806997c4c4997f082702dd13d0a81210850d226a723b0840dfc7598e78bc31206656e54b2d561d3b998b032440632dafa6cc6da8c0df11cd3e6975d9fdb - languageName: node - linkType: hard - -"@pezkuwi/ui-shared@npm:3.17.2, @pezkuwi/ui-shared@npm:^3.17.2": - version: 3.17.2 - resolution: "@pezkuwi/ui-shared@npm:3.17.2" - dependencies: - colord: "npm:^2.9.3" - tslib: "npm:^2.8.1" - peerDependencies: - "@pezkuwi/util": "*" - "@pezkuwi/util-crypto": "*" - checksum: 10/a5562b51e57ed5b2aa98970c710c8dd2d8345086c1cb05739796853220715ef12164c7bdc9da43dd86867d0b6b1f152d6ebbd30b388f941bba701c93b7db458e - languageName: node - linkType: hard - -"@pezkuwi/util-crypto@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/util-crypto@npm:14.0.7" - dependencies: - "@noble/curves": "npm:^1.3.0" - "@noble/hashes": "npm:^1.3.3" - "@pezkuwi/networks": "npm:14.0.1" - "@pezkuwi/util": "npm:14.0.1" - "@pezkuwi/wasm-crypto": "npm:^7.5.4" - "@pezkuwi/wasm-util": "npm:^7.5.4" - "@pezkuwi/x-bigint": "npm:14.0.1" - "@pezkuwi/x-randomvalues": "npm:14.0.1" - "@scure/base": "npm:^1.1.7" - "@scure/sr25519": "npm:^0.2.0" - tslib: "npm:^2.8.0" - peerDependencies: - "@pezkuwi/util": 14.0.1 - checksum: 10/9062d9ea4b9e1f69ede82bbcf1fb05b28970b696bbd598c442a0d96335035e711a34de111faab4e4ea4f0741687a56d3e58dd2b314a650cf1ea304503baf4012 - languageName: node - linkType: hard - -"@pezkuwi/util@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/util@npm:14.0.7" - dependencies: - "@pezkuwi/x-bigint": "npm:14.0.1" - "@pezkuwi/x-global": "npm:14.0.1" - "@pezkuwi/x-textdecoder": "npm:14.0.1" - "@pezkuwi/x-textencoder": "npm:14.0.1" - "@types/bn.js": "npm:^5.1.6" - bn.js: "npm:^5.2.1" - tslib: "npm:^2.8.0" - checksum: 10/39c6eaa209def652b2644b701b4941cfde7c116ea639eb9c9efd9ab8b67af10b7a089839ced60f3840b7d9a552862a1cf648984b7d32c2a1e7fa169d04ead7f4 - languageName: node - linkType: hard - -"@pezkuwi/wasm-bridge@npm:7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-bridge@npm:7.5.4" - dependencies: - "@pezkuwi/wasm-util": "npm:7.5.3" - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - "@pezkuwi/x-randomvalues": "*" - checksum: 10/04ee72d6306175ac7d3612d06af1cbdbe3c6c504dd95deee05f46b3de818125420b62e047aeb62165a5783d2e43b50a11843e5ac58eeffad32bee539fd38d068 - languageName: node - linkType: hard - -"@pezkuwi/wasm-crypto-asmjs@npm:7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-crypto-asmjs@npm:7.5.4" - dependencies: - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - checksum: 10/e6b7bf038f6dd87b26ee1e2dbe9545128c7ddc7473cddf64f836ab6d7f91b2974c9b8c6b26abb373f5bec7960f0686cda101d52c81ea1ffc19f17af00688e5fa - languageName: node - linkType: hard - -"@pezkuwi/wasm-crypto-init@npm:7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-crypto-init@npm:7.5.4" - dependencies: - "@pezkuwi/wasm-bridge": "npm:7.5.4" - "@pezkuwi/wasm-crypto-asmjs": "npm:7.5.4" - "@pezkuwi/wasm-crypto-wasm": "npm:7.5.4" - "@pezkuwi/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - "@pezkuwi/x-randomvalues": "*" - checksum: 10/6a3c8526f8d1272c4c9ff5b6d38016bdeac0146885d0521955cbd92d5b82896f9084dd15680c679dea7fd9926c01f4f1489ef62f0723a3e3393d90a728a7dcfb - languageName: node - linkType: hard - -"@pezkuwi/wasm-crypto-wasm@npm:7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-crypto-wasm@npm:7.5.4" - dependencies: - "@pezkuwi/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - checksum: 10/682967e4eea14c1ce895ae49a6de28e5719b19801db744bfadcb05964ce849169e41fa2c779d0c1b0fb7c41fed463bd7030904af2a6f91c5d4815dacb44bf217 - languageName: node - linkType: hard - -"@pezkuwi/wasm-crypto@npm:^7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-crypto@npm:7.5.4" - dependencies: - "@pezkuwi/wasm-bridge": "npm:7.5.4" - "@pezkuwi/wasm-crypto-asmjs": "npm:7.5.4" - "@pezkuwi/wasm-crypto-init": "npm:7.5.4" - "@pezkuwi/wasm-crypto-wasm": "npm:7.5.4" - "@pezkuwi/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - "@pezkuwi/x-randomvalues": "*" - checksum: 10/56033fd9dbba804425378fd564079d81a13d03593bb0a74a3b814fd5ee6fccaffdcc3a44d278bbd34eb29c75b74c5c5ef8d787b0647d0a9240bac6e7dd19250c - languageName: node - linkType: hard - -"@pezkuwi/wasm-util@npm:7.5.3": - version: 7.5.3 - resolution: "@pezkuwi/wasm-util@npm:7.5.3" - dependencies: - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - checksum: 10/61e195ee2350837133565a82d20bea2924a9830b48f241c1bbbd367eedf86a123e358724a31da54db778f9ca0803642166dfeb01d6bbe61691c02a082c1c302e - languageName: node - linkType: hard - -"@pezkuwi/wasm-util@npm:7.5.4, @pezkuwi/wasm-util@npm:^7.5.2, @pezkuwi/wasm-util@npm:^7.5.4": - version: 7.5.4 - resolution: "@pezkuwi/wasm-util@npm:7.5.4" - dependencies: - tslib: "npm:^2.7.0" - peerDependencies: - "@pezkuwi/util": "*" - checksum: 10/fb4cdfafdf27cf6be95247fe58bd2fb22108e554ee1231ad6e202824ff0e8fb2fe80764679e6bb8f9f0a768feb163c6bd3339a20be26b6d0baae1bad5eef2ac5 - languageName: node - linkType: hard - -"@pezkuwi/x-bigint@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-bigint@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/6dab5cf278876a8a72cc634a99c6d814e7833a2e041e0e06fb51bb4a565de24f6b8054b746416f3f7d758d4dce71881eb15fb1842da776d683acad9bb81d2bfd - languageName: node - linkType: hard - -"@pezkuwi/x-fetch@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-fetch@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - node-fetch: "npm:^3.3.2" - tslib: "npm:^2.8.0" - checksum: 10/f24ba80522b89313bb72ba95367801aac700622c4f56bd629474d93b4892b0e8ad6e05c78285ff20871b2fdd7b33ddaf8fa8fa1bb006409f4fc093811368edae - languageName: node - linkType: hard - -"@pezkuwi/x-global@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-global@npm:14.0.7" - dependencies: - tslib: "npm:^2.8.0" - checksum: 10/810106a288a596156050fd706aa6565e1b601ccc959fbc332994dc5a0f45641d40e31f10d57069a54f7f11817c5780b848c2b7fa89ecca16b003d9a241c0b44b - languageName: node - linkType: hard - -"@pezkuwi/x-randomvalues@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-randomvalues@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - peerDependencies: - "@pezkuwi/util": 14.0.1 - "@pezkuwi/wasm-util": "*" - checksum: 10/242c152d93fbdec72caafceed0c07647686a916f755261e275e30ede670fe32b349ce0fde5e9260c4b479f9faa49d66d1b3203968d6db17dee4fa8d761cb091b - languageName: node - linkType: hard - -"@pezkuwi/x-textdecoder@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-textdecoder@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/9a32c3382485e5243913095cbc755ad2ae36a4d7ce2eb87b3c62bb5dfd1e41a15404d352a218474f012e43a295277de1aebf79adb241d18d0645a1a42b2fdb26 - languageName: node - linkType: hard - -"@pezkuwi/x-textencoder@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-textencoder@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/379e436b286c308c125d00fa8dd96433182bdff9fdcf8e94bbb4d54071241067e92e05c22d276461d06fad897e04b24c275f3abd0fc778586ecc42c65ea43b12 - languageName: node - linkType: hard - -"@pezkuwi/x-ws@npm:^14.0.7": - version: 14.0.7 - resolution: "@pezkuwi/x-ws@npm:14.0.7" - dependencies: - "@pezkuwi/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - ws: "npm:^8.18.0" - checksum: 10/6581831562763980fead823177f293f087bcb2e0d922727ef2cffb43b7e3e8a9200a284d17037a825649c1ab9a92c8d6e6c5cb865525156c138f3151747504c6 - languageName: node - linkType: hard - -"@phala/typedefs@npm:0.2.33": - version: 0.2.33 - resolution: "@phala/typedefs@npm:0.2.33" - checksum: 10/69ec7654b6bdf58aec736a3f65efe7fb1b39165c7c5206ab17a3c99ffb6b75c164d86e3280065a7321d892b63bc88f58620c8aa6b15a58adc5e906cf1112d9ef - languageName: node - linkType: hard - -"@pinata/sdk@npm:^1.2.1": - version: 1.2.1 - resolution: "@pinata/sdk@npm:1.2.1" - dependencies: - axios: "npm:^0.21.1" - base-path-converter: "npm:^1.0.2" - form-data: "npm:^2.3.3" - is-ipfs: "npm:^0.6.0" - recursive-fs: "npm:^1.1.2" - checksum: 10/ebb39b4ad7352fc593147905eb4ead7bc729116c5d27aec5d2bb4a8e66c098aecdde1dc5f324e138a9edab108f90ecf8171d4dba279b737c6e331c69b71250b5 - languageName: node - linkType: hard - -"@pinojs/redact@npm:^0.4.0": - version: 0.4.0 - resolution: "@pinojs/redact@npm:0.4.0" - checksum: 10/2210ffb6b38357853d47239fd0532cc9edb406325270a81c440a35cece22090127c30c2ead3eefa3e608f2244087485308e515c431f4f69b6bd2e16cbd32812b - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10/115e8ceeec6bc69dff2048b35c0ab4f8bbee12d8bb6c1f4af758604586d802b6e669dcb02dda61d078de42c2b4ddce41b3d9e726d7daa6b4b850f4adbf7333ff - languageName: node - linkType: hard - -"@polkadot-api/client@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/client@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - dependencies: - "@polkadot-api/metadata-builders": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/substrate-bindings": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/substrate-client": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/utils": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - peerDependencies: - rxjs: ">=7.8.0" - checksum: 10/cc9cc2e54cbb6956290f07ecede3c086455147fc84b5668482655b6e5e3726e408157bbe92747dd5a551ab42604df93f35bab45e78f28489dc998a75586f855b - languageName: node - linkType: hard - -"@polkadot-api/json-rpc-provider-proxy@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/json-rpc-provider-proxy@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - checksum: 10/bdcdf34feefd9b7f4b29e4fe212ca2609455fce53aeac5b3df9bba4cf714022d3266877e00fbdf5d2d24090cfbcd5139d859295e4e2bb15d055e2fb2704b79ec - languageName: node - linkType: hard - -"@polkadot-api/json-rpc-provider-proxy@npm:^0.1.0": - version: 0.1.0 - resolution: "@polkadot-api/json-rpc-provider-proxy@npm:0.1.0" - checksum: 10/1a232337a4f6f32f3ec0350d5aaceaab21547ccee3cca63318d4b9238982efa5ff2406b033c320318c72d067b73508c0a1af21eb47acabaff714c1c21477bafa - languageName: node - linkType: hard - -"@polkadot-api/json-rpc-provider@npm:0.0.1, @polkadot-api/json-rpc-provider@npm:^0.0.1": - version: 0.0.1 - resolution: "@polkadot-api/json-rpc-provider@npm:0.0.1" - checksum: 10/1f315bdadcba7def7145011132e6127b983c6f91f976be217ad7d555bb96a67f3a270fe4a46e427531822c5d54d353d84a6439d112a99cdfc07013d3b662ee3c - languageName: node - linkType: hard - -"@polkadot-api/json-rpc-provider@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/json-rpc-provider@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - checksum: 10/00d4e1f7900a1739e1ba7a3b13d399e5540a27d5c026c985aa4afdf865fb37da4aa4029a3a740932615482cdf18e657011ef05e7e61c2de04016f68fbb343ae7 - languageName: node - linkType: hard - -"@polkadot-api/merkleize-metadata@npm:^1.1.27": - version: 1.1.28 - resolution: "@polkadot-api/merkleize-metadata@npm:1.1.28" - dependencies: - "@polkadot-api/metadata-builders": "npm:0.13.8" - "@polkadot-api/substrate-bindings": "npm:0.16.6" - "@polkadot-api/utils": "npm:0.2.0" - checksum: 10/3e4a94427911aba60712ddc5fcec24134c1266b0218e0a84b82366a10bc09e1a0d7201cba9676b68101a01bc533ac8bb22f93f40b6275b2eb9472011526f8ead - languageName: node - linkType: hard - -"@polkadot-api/metadata-builders@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/metadata-builders@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - dependencies: - "@polkadot-api/substrate-bindings": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/utils": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - checksum: 10/0dc59527415b51b9741e95842505cfca788e9fb0e6666be971000b9fe522b7d1a81265d4cab1712c2cc564e14ae8f0e1ef8f32f4023be1261f366edaa1936cc9 - languageName: node - linkType: hard - -"@polkadot-api/metadata-builders@npm:0.13.8": - version: 0.13.8 - resolution: "@polkadot-api/metadata-builders@npm:0.13.8" - dependencies: - "@polkadot-api/substrate-bindings": "npm:0.16.6" - "@polkadot-api/utils": "npm:0.2.0" - checksum: 10/dddfe2be0ce4e57c3e31a5b6141bb12dde290a363ec22982e3aadb31314e712ab4b7de26eec8c5072eb12ebaf956dd6b595ae5e30bb33762d528263c601894d8 - languageName: node - linkType: hard - -"@polkadot-api/metadata-builders@npm:0.3.2": - version: 0.3.2 - resolution: "@polkadot-api/metadata-builders@npm:0.3.2" - dependencies: - "@polkadot-api/substrate-bindings": "npm:0.6.0" - "@polkadot-api/utils": "npm:0.1.0" - checksum: 10/874b38e1fb92beea99b98b889143f25671f137e54113767aeabb79ff5cdf7d61cadb0121f08c7a9a40718b924d7c9a1dd700f81e7e287bc55923b0129e2a6160 - languageName: node - linkType: hard - -"@polkadot-api/observable-client@npm:^0.3.0": - version: 0.3.2 - resolution: "@polkadot-api/observable-client@npm:0.3.2" - dependencies: - "@polkadot-api/metadata-builders": "npm:0.3.2" - "@polkadot-api/substrate-bindings": "npm:0.6.0" - "@polkadot-api/utils": "npm:0.1.0" - peerDependencies: - "@polkadot-api/substrate-client": 0.1.4 - rxjs: ">=7.8.0" - checksum: 10/91b95a06e3ddd477c2489110d7cffdcfaf87a222054b437013c701dc43eac6a5d30438b1ac8fb130166ba039a67808e6199ccb3b2eaac7dcf8d2ef7a835f047b - languageName: node - linkType: hard - -"@polkadot-api/substrate-bindings@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/substrate-bindings@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - dependencies: - "@noble/hashes": "npm:^1.3.1" - "@polkadot-api/utils": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@scure/base": "npm:^1.1.1" - scale-ts: "npm:^1.6.0" - checksum: 10/e14a81197b86314aa8887d7e81cbf3f0c3b9eec0267b128c81bb3bf6d26d93ac75bd113177861789a066b215a72ac03c940d590e769ca3f33a2ac4480c752538 - languageName: node - linkType: hard - -"@polkadot-api/substrate-bindings@npm:0.16.6": - version: 0.16.6 - resolution: "@polkadot-api/substrate-bindings@npm:0.16.6" - dependencies: - "@noble/hashes": "npm:^2.0.1" - "@polkadot-api/utils": "npm:0.2.0" - "@scure/base": "npm:^2.0.0" - scale-ts: "npm:^1.6.1" - checksum: 10/3428b7cc36ad8534c67543c04414f5454e2d9b68acb7211d348021ae362c8f698d04ceea6e4f7ed37c2d8949fb3d0b5abc8ae85567db0c335ddb8a6816f73e65 - languageName: node - linkType: hard - -"@polkadot-api/substrate-bindings@npm:0.6.0": - version: 0.6.0 - resolution: "@polkadot-api/substrate-bindings@npm:0.6.0" - dependencies: - "@noble/hashes": "npm:^1.3.1" - "@polkadot-api/utils": "npm:0.1.0" - "@scure/base": "npm:^1.1.1" - scale-ts: "npm:^1.6.0" - checksum: 10/01926a9083f608514a55c3d23563ebef139e2963d4adbebe7dcd99b65e1a08f1551fc0e147e787a31c749402767333c96eb1399f85a6c71654cfa1cc9d26e445 - languageName: node - linkType: hard - -"@polkadot-api/substrate-client@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/substrate-client@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - checksum: 10/af1dce32d1b52bba5494daef387dcb15694ee57ed394e8ac905430ade7cdbae1c44ef5cdb7d777096ee0a0d8a58d3409e9c0c464f780bbd0286cb06d46390c3c - languageName: node - linkType: hard - -"@polkadot-api/substrate-client@npm:^0.1.2": - version: 0.1.4 - resolution: "@polkadot-api/substrate-client@npm:0.1.4" - dependencies: - "@polkadot-api/json-rpc-provider": "npm:0.0.1" - "@polkadot-api/utils": "npm:0.1.0" - checksum: 10/e7172696db404676d297cd5661b195de110593769f9ce37f32bdb5576ca00c56d32fcb04172a91102986fdda27a13962d909ad9466869a2991611d658ee6ac92 - languageName: node - linkType: hard - -"@polkadot-api/utils@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0": - version: 0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0 - resolution: "@polkadot-api/utils@npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - checksum: 10/99d8c233ad4fe58f5ee993cf76b99689e6d34bc239e24785c60d2bd7cd74e4cc2bb8e0704a041c20bff8866a8151126d04c1be01ba5c1d51b1086cd7a5b55814 - languageName: node - linkType: hard - -"@polkadot-api/utils@npm:0.1.0": - version: 0.1.0 - resolution: "@polkadot-api/utils@npm:0.1.0" - checksum: 10/c557daea91ddb03e16b93c7c5a75533495c7b77cbbbdc2b4f5e97af0c1e1132a47e434c9c729a08241bd7b3624b6644ac0950f914aa8b29a0f419bf0fd224c7c - languageName: node - linkType: hard - -"@polkadot-api/utils@npm:0.2.0": - version: 0.2.0 - resolution: "@polkadot-api/utils@npm:0.2.0" - checksum: 10/5171c52af86bc85181cf8681342e38a6cbbe049d70f437ab256641a30f2d167d4d1f5f871d13731d9a7e08be5b35c2e981deba4efe6f16f0c57f2309d90bb52c - languageName: node - linkType: hard - -"@polkadot/api-augment@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/api-augment@npm:10.13.1" - dependencies: - "@polkadot/api-base": "npm:10.13.1" - "@polkadot/rpc-augment": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-augment": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/094d5e79d511a44b0a0f5ea10f612a94cd0b423e16803c23847004e1546220ff8e4e90e64a0ccd78387685c9a47687b7ece66347247443aaa86f58e69e25a033 - languageName: node - linkType: hard - -"@polkadot/api-augment@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/api-augment@npm:15.10.2" - dependencies: - "@polkadot/api-base": "npm:15.10.2" - "@polkadot/rpc-augment": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-augment": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/ad8e90f29e911a3c1b444586459c63bf3e1422a34f00e6bb426d94931f5a1ca4cdbb1e3962b891a5e5ea4d5172d744223736ad6fcc629163dd24b823bebb1eb2 - languageName: node - linkType: hard - -"@polkadot/api-augment@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/api-augment@npm:16.5.4" - dependencies: - "@polkadot/api-base": "npm:16.5.4" - "@polkadot/rpc-augment": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-augment": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/76c0696fb60a3d3f19544777330e85b4a4ac44d689f9b320a435e80af0f06c5038fa5567c035dae0f8d56dd7553c5167e79193dee57acda6442b27e7e8814771 - languageName: node - linkType: hard - -"@polkadot/api-augment@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/api-augment@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/api-base": "npm:7.15.1" - "@polkadot/rpc-augment": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-augment": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/901729f9389df54857c7e52fbc6bc083f528865650dafeab901cc4b2a692e1065f4f57f7378f1ee76721acb95f8f6fc9eadf14a21b628960ecaeba36de7ae4b6 - languageName: node - linkType: hard - -"@polkadot/api-augment@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/api-augment@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/api-base": "npm:9.14.2" - "@polkadot/rpc-augment": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-augment": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/9be92b0e30e9473453be37209547fd9cccd57d0a8baadf999d815eb58385933db656ee6e7ee24ee12059bdb2e6bff4045fa34912b06b14e93399333db14255a3 - languageName: node - linkType: hard - -"@polkadot/api-base@npm:*, @polkadot/api-base@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/api-base@npm:16.5.4" - dependencies: - "@polkadot/rpc-core": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/d10f05bfd7d74a980a01ffd3a0ab3dd09d84e313df98770b45b24616ced22535b3429ef31b44e67153232b6766024970d43edc6305fd84f08556dd5c2888bb5e - languageName: node - linkType: hard - -"@polkadot/api-base@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/api-base@npm:10.13.1" - dependencies: - "@polkadot/rpc-core": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.6.2" - checksum: 10/e680030a9663ec866715751386edb5deea856e79cba96e9de22ca73dd69244ece78196c74cce2077cad0fbf3bd6638198ac58ec52b9641ccb8fc9a922d6e62d4 - languageName: node - linkType: hard - -"@polkadot/api-base@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/api-base@npm:15.10.2" - dependencies: - "@polkadot/rpc-core": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/193b8144cf1c85201d5f259cf830263051c6bc345af19948e3450d3ab695fe9537d368360e3302daa7fcf5de13d46e6fa07a6b8a27964aeb172d994b42a83bab - languageName: node - linkType: hard - -"@polkadot/api-base@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/api-base@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/rpc-core": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - rxjs: "npm:^7.5.5" - checksum: 10/716d776fc2341786507b083aa60f6fc9f045b5299bef00376a09f397f2dd851cb363ec80ef28e1a615df63aef8ebf9ad7cf1f3e6ae68b6fd92680f514422ade5 - languageName: node - linkType: hard - -"@polkadot/api-base@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/api-base@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/rpc-core": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - rxjs: "npm:^7.8.0" - checksum: 10/ce04410bd9ac1416bd6a8f3d2e1c39ab2e11c632dffc72cdee8281f9385c9d3ecaa81b83bb26da534459368eaea86818f867c67f9d28933bd2b8e07b3be0dc30 - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/api-derive@npm:10.13.1" - dependencies: - "@polkadot/api": "npm:10.13.1" - "@polkadot/api-augment": "npm:10.13.1" - "@polkadot/api-base": "npm:10.13.1" - "@polkadot/rpc-core": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - "@polkadot/util-crypto": "npm:^12.6.2" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.6.2" - checksum: 10/20b70e34b27ecf787c2898a81d6f6ac209331eb7493494a3156c9905841be4c536c03fa2552bcc918a11a170e41ffc5368fce2c40c41be3b856eaeaf0e0e65bf - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/api-derive@npm:15.10.2" - dependencies: - "@polkadot/api": "npm:15.10.2" - "@polkadot/api-augment": "npm:15.10.2" - "@polkadot/api-base": "npm:15.10.2" - "@polkadot/rpc-core": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - "@polkadot/util-crypto": "npm:^13.4.4" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/50baf795bdd1f1f7281118eb80edcdf888040780555eefc1cd2841ac3f7e919459771e5ba6a2cc4bfa798a95391f722e6c44a66c828a917244284662e0e4f541 - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/api-derive@npm:16.5.4" - dependencies: - "@polkadot/api": "npm:16.5.4" - "@polkadot/api-augment": "npm:16.5.4" - "@polkadot/api-base": "npm:16.5.4" - "@polkadot/rpc-core": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - "@polkadot/util-crypto": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/5cd829447a644950074c05a7d4434748310ac3c784f94ccef7360a3a69a5bf1ee34c3d95aed6de7ae34639a6d55dbe27e3478010293c9f84cbd67a586f394ae2 - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:4.17.1": - version: 4.17.1 - resolution: "@polkadot/api-derive@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/api": "npm:4.17.1" - "@polkadot/rpc-core": "npm:4.17.1" - "@polkadot/types": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/util-crypto": "npm:^6.11.1" - "@polkadot/x-rxjs": "npm:^6.11.1" - checksum: 10/852ddc827ef8ce1ef013f20dcc45aa22af6f3a9258a1bc3bb48420ee6dd783dd1b3da925baadf5be701fe12de6bc8289513546a64aff88750c59178f8509b647 - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/api-derive@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/api": "npm:7.15.1" - "@polkadot/api-augment": "npm:7.15.1" - "@polkadot/api-base": "npm:7.15.1" - "@polkadot/rpc-core": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - "@polkadot/util-crypto": "npm:^8.7.1" - rxjs: "npm:^7.5.5" - checksum: 10/61b060ae9f0210b30e712ca2ee6559284136ea79c7e7eeed4e1bd7efc6eabc5303fa34558bc7e7cbb0b497c3e378f92ef3687350745d96df782f0053c8f783c9 - languageName: node - linkType: hard - -"@polkadot/api-derive@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/api-derive@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/api": "npm:9.14.2" - "@polkadot/api-augment": "npm:9.14.2" - "@polkadot/api-base": "npm:9.14.2" - "@polkadot/rpc-core": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - "@polkadot/util-crypto": "npm:^10.4.2" - rxjs: "npm:^7.8.0" - checksum: 10/ef43cb39cdf38a68d956ee6b37036a83b580ac274a7d2f4fb68167ea2baac21d0e6078a57b28caff60838422e1b875698bfd2913f56f41bd4216c96649ae177d - languageName: node - linkType: hard - -"@polkadot/api@npm:*, @polkadot/api@npm:16.5.4, @polkadot/api@npm:latest": - version: 16.5.4 - resolution: "@polkadot/api@npm:16.5.4" - dependencies: - "@polkadot/api-augment": "npm:16.5.4" - "@polkadot/api-base": "npm:16.5.4" - "@polkadot/api-derive": "npm:16.5.4" - "@polkadot/keyring": "npm:^14.0.1" - "@polkadot/rpc-augment": "npm:16.5.4" - "@polkadot/rpc-core": "npm:16.5.4" - "@polkadot/rpc-provider": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-augment": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/types-create": "npm:16.5.4" - "@polkadot/types-known": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - "@polkadot/util-crypto": "npm:^14.0.1" - eventemitter3: "npm:^5.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/939a7238ee1bcad0de20a42aab643cfd38f47665b8581a4856d06fad55bd9256924024bcaaa851962286f15979b650004aa4445ec35736669c0cb69e21c85d4a - languageName: node - linkType: hard - -"@polkadot/api@npm:10.13.1, @polkadot/api@npm:^10.10.1, @polkadot/api@npm:^10.9.1": - version: 10.13.1 - resolution: "@polkadot/api@npm:10.13.1" - dependencies: - "@polkadot/api-augment": "npm:10.13.1" - "@polkadot/api-base": "npm:10.13.1" - "@polkadot/api-derive": "npm:10.13.1" - "@polkadot/keyring": "npm:^12.6.2" - "@polkadot/rpc-augment": "npm:10.13.1" - "@polkadot/rpc-core": "npm:10.13.1" - "@polkadot/rpc-provider": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-augment": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/types-create": "npm:10.13.1" - "@polkadot/types-known": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - "@polkadot/util-crypto": "npm:^12.6.2" - eventemitter3: "npm:^5.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.6.2" - checksum: 10/4323c7e5a89044b082e98525a6ec8674ac84d6548b14a9d24f5c027a2f1f598e0ea42913afdfb17b28a6822933a42508cd048529ad237c1ce1431107202c9874 - languageName: node - linkType: hard - -"@polkadot/api@npm:15.10.2, @polkadot/api@npm:^15.0.0": - version: 15.10.2 - resolution: "@polkadot/api@npm:15.10.2" - dependencies: - "@polkadot/api-augment": "npm:15.10.2" - "@polkadot/api-base": "npm:15.10.2" - "@polkadot/api-derive": "npm:15.10.2" - "@polkadot/keyring": "npm:^13.4.4" - "@polkadot/rpc-augment": "npm:15.10.2" - "@polkadot/rpc-core": "npm:15.10.2" - "@polkadot/rpc-provider": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-augment": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/types-create": "npm:15.10.2" - "@polkadot/types-known": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - "@polkadot/util-crypto": "npm:^13.4.4" - eventemitter3: "npm:^5.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/aba113aa85bf69b8f67a178dd8d86b54f408364582069f0eb23803ce7f12e6da3c134f787991e63e87ca1dac996fc1b53a55ff29b4a28b2038857cd7e654e020 - languageName: node - linkType: hard - -"@polkadot/api@npm:4.17.1, @polkadot/api@npm:^4.2.1": - version: 4.17.1 - resolution: "@polkadot/api@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/api-derive": "npm:4.17.1" - "@polkadot/keyring": "npm:^6.11.1" - "@polkadot/metadata": "npm:4.17.1" - "@polkadot/rpc-core": "npm:4.17.1" - "@polkadot/rpc-provider": "npm:4.17.1" - "@polkadot/types": "npm:4.17.1" - "@polkadot/types-known": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/util-crypto": "npm:^6.11.1" - "@polkadot/x-rxjs": "npm:^6.11.1" - eventemitter3: "npm:^4.0.7" - checksum: 10/b56480346204fb498abf030ad2f5239910b197977c516365c25106b1e9e01a011ac40dc1a587c3e9332bd25f7de62fa9c9bfdc38bf35b760a985ae22d95bf16f - languageName: node - linkType: hard - -"@polkadot/api@npm:7.15.1, @polkadot/api@npm:^7.2.1": - version: 7.15.1 - resolution: "@polkadot/api@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/api-augment": "npm:7.15.1" - "@polkadot/api-base": "npm:7.15.1" - "@polkadot/api-derive": "npm:7.15.1" - "@polkadot/keyring": "npm:^8.7.1" - "@polkadot/rpc-augment": "npm:7.15.1" - "@polkadot/rpc-core": "npm:7.15.1" - "@polkadot/rpc-provider": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-augment": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/types-create": "npm:7.15.1" - "@polkadot/types-known": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - "@polkadot/util-crypto": "npm:^8.7.1" - eventemitter3: "npm:^4.0.7" - rxjs: "npm:^7.5.5" - checksum: 10/53214366c8f121e18e9214370d4172285a55931dc94509113202acc02dd870ebb1755661c6ffbb54b873137c06bedae36da819f4ebd8b2621569f5c990a54fc0 - languageName: node - linkType: hard - -"@polkadot/api@npm:9.14.2, @polkadot/api@npm:^9.13.2": - version: 9.14.2 - resolution: "@polkadot/api@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/api-augment": "npm:9.14.2" - "@polkadot/api-base": "npm:9.14.2" - "@polkadot/api-derive": "npm:9.14.2" - "@polkadot/keyring": "npm:^10.4.2" - "@polkadot/rpc-augment": "npm:9.14.2" - "@polkadot/rpc-core": "npm:9.14.2" - "@polkadot/rpc-provider": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-augment": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/types-create": "npm:9.14.2" - "@polkadot/types-known": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - "@polkadot/util-crypto": "npm:^10.4.2" - eventemitter3: "npm:^5.0.0" - rxjs: "npm:^7.8.0" - checksum: 10/345c3c3dfaae317d218f7d4943da8c8ad7d4992c91cad75b6fc0b05bef7de22a87eab8d83aedb90f1286c0e9c272d8af8ed5a17d0c0971b9625374aacb035fcb - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/keyring@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/util": "npm:10.4.2" - "@polkadot/util-crypto": "npm:10.4.2" - peerDependencies: - "@polkadot/util": 10.4.2 - "@polkadot/util-crypto": 10.4.2 - checksum: 10/002472ee0760923e6798b7981de3db6019aa8c36dabf134a0f9b90cd19fde32e271a2be382be67b37f3cc50f904685058f2bbda91cfaec7cbd50f572973cbbd6 - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/keyring@npm:12.6.2" - dependencies: - "@polkadot/util": "npm:12.6.2" - "@polkadot/util-crypto": "npm:12.6.2" - tslib: "npm:^2.6.2" - peerDependencies: - "@polkadot/util": 12.6.2 - "@polkadot/util-crypto": 12.6.2 - checksum: 10/8faf59684ff5d041ba5fa7dd85c3ee4ac3920b2d907f81a485e37aedab64798f9c59b7ec914eb24dfc5271a4ef31e1244aecbd247c66f2b2ec518cfd37dd30fc - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/keyring@npm:13.5.9" - dependencies: - "@polkadot/util": "npm:13.5.9" - "@polkadot/util-crypto": "npm:13.5.9" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 13.5.9 - "@polkadot/util-crypto": 13.5.9 - checksum: 10/0d12d18dfa168f7acd4c2641291af148d1630a387797c0ceb0614f004fcf601aca413cd9dfa54e35b4521e1d9117f70515adf64de93091a9be67425122c539e8 - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/keyring@npm:14.0.1" - dependencies: - "@polkadot/util": "npm:14.0.1" - "@polkadot/util-crypto": "npm:14.0.1" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 14.0.1 - "@polkadot/util-crypto": 14.0.1 - checksum: 10/b1bc206bdf0a59f04920787e62afc9b8278a9aeb4e7b6ca4219d5677e6688b479cd64ba9b8e6e6fa91c629004ae9aa14e616f1d1f64d854d6ff254b7ba52b6f4 - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^6.11.1, @polkadot/keyring@npm:^6.9.1": - version: 6.11.1 - resolution: "@polkadot/keyring@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/util": "npm:6.11.1" - "@polkadot/util-crypto": "npm:6.11.1" - peerDependencies: - "@polkadot/util": 6.11.1 - "@polkadot/util-crypto": 6.11.1 - checksum: 10/8ef6bc494a240ef4e663d2bea19568ce11cd2ed8d5506265469f3ec464397e5e863b57e3457cb1844ffa2767b15ddac7cc4b43908fe278a922943417f78b90db - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^7.4.1": - version: 7.9.2 - resolution: "@polkadot/keyring@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/util": "npm:7.9.2" - "@polkadot/util-crypto": "npm:7.9.2" - peerDependencies: - "@polkadot/util": 7.9.2 - "@polkadot/util-crypto": 7.9.2 - checksum: 10/f1ee2f9e35dda1bd0183d62dd4008b1f983c96c0bd1a302385a106a8d23a3b1a58949c2738fc32442878957e1b0c6877b3f57fb4d43d8320d002b52821c54644 - languageName: node - linkType: hard - -"@polkadot/keyring@npm:^8.2.2, @polkadot/keyring@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/keyring@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/util": "npm:8.7.1" - "@polkadot/util-crypto": "npm:8.7.1" - peerDependencies: - "@polkadot/util": 8.7.1 - "@polkadot/util-crypto": 8.7.1 - checksum: 10/0f875e6ab410ce0dd12f57c454c30c5f9fb0cc0097f6e0836fda8b39515389cf1301a5894b9f615bedf47efa1c5fa064b65235adc53d0f97af0917a4f72ac311 - languageName: node - linkType: hard - -"@polkadot/metadata@npm:4.17.1": - version: 4.17.1 - resolution: "@polkadot/metadata@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/types": "npm:4.17.1" - "@polkadot/types-known": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/util-crypto": "npm:^6.11.1" - checksum: 10/a7ce1a01c805cf4536fa8109abfdb507e6fbdb6e668728e5d710e3f9139cab0529bcea8b22dc6b884e744ef35f32af62b1e50ebb3f92cb6690e8ba4d87da5679 - languageName: node - linkType: hard - -"@polkadot/networks@npm:10.4.2, @polkadot/networks@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/networks@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/util": "npm:10.4.2" - "@substrate/ss58-registry": "npm:^1.38.0" - checksum: 10/ff73e12d80dddb626fb442477581308892e7e4e23a375680624563e129e0d41c31557955fa3ffe06e5ccd6cc7173b9a51554a5f29e681347cb8c09399aa780ee - languageName: node - linkType: hard - -"@polkadot/networks@npm:12.6.2, @polkadot/networks@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/networks@npm:12.6.2" - dependencies: - "@polkadot/util": "npm:12.6.2" - "@substrate/ss58-registry": "npm:^1.44.0" - tslib: "npm:^2.6.2" - checksum: 10/6c2cd7f631ec40489e8f8260b15a138bd0d276d222e4133847e8915c476aea415498dd8d8ab583bdf76f2e4e5bb1c7a20bca9dac110eae2fb48d5f6cf6798349 - languageName: node - linkType: hard - -"@polkadot/networks@npm:13.5.9, @polkadot/networks@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/networks@npm:13.5.9" - dependencies: - "@polkadot/util": "npm:13.5.9" - "@substrate/ss58-registry": "npm:^1.51.0" - tslib: "npm:^2.8.0" - checksum: 10/b418f4950e4713244164b304eabdb512d12a47f2366c72e443925a7fec3af638bfac8e9e59c7ddb35dad7ae9d6e464529aad297cd433f7e7743442301a6b0a66 - languageName: node - linkType: hard - -"@polkadot/networks@npm:14.0.1, @polkadot/networks@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/networks@npm:14.0.1" - dependencies: - "@polkadot/util": "npm:14.0.1" - "@substrate/ss58-registry": "npm:^1.51.0" - tslib: "npm:^2.8.0" - checksum: 10/ccb4e24ac5d7bc1af49b875bc4cd39b135e86e6518f8345ac5b8d3acea576380de73d4175c19e6f58a2f3f173779e6c71a75b6c1d77a95241cdc5e776849432b - languageName: node - linkType: hard - -"@polkadot/networks@npm:6.11.1, @polkadot/networks@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/networks@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - checksum: 10/7bb6d4bbf77aed969958f92256309bd89659a21383527f875cd5e00295a8960168cb26bf78c539afaa91f7443930b5c312d5019b70a0f29ae850b21aad74a125 - languageName: node - linkType: hard - -"@polkadot/networks@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/networks@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - checksum: 10/1b3990abb173df3780ea72adf8545097f0a697a33d36d901769a2ebd88de585570e922e73169d14d736d16df0233370f3e88ed60da7de4680e057c94a45541c1 - languageName: node - linkType: hard - -"@polkadot/networks@npm:8.7.1, @polkadot/networks@npm:^8.1.2, @polkadot/networks@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/networks@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/util": "npm:8.7.1" - "@substrate/ss58-registry": "npm:^1.17.0" - checksum: 10/ebecb9bd9d2dab42b104fee6cb23c62ac2625aa2b5afe8942d40a8848627393176c0a5be20b11dc40cbb5be78de18f016f1ef1245e094f99fec68069a1aeec5f - languageName: node - linkType: hard - -"@polkadot/rpc-augment@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/rpc-augment@npm:10.13.1" - dependencies: - "@polkadot/rpc-core": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/136c03295315d4217592dbaae7113eecb1560895e95d3fe369cfd12b8edc5f5f19d1e31c929444c53b27600ca2a17d01448b282bee738cee83307193f645e896 - languageName: node - linkType: hard - -"@polkadot/rpc-augment@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/rpc-augment@npm:15.10.2" - dependencies: - "@polkadot/rpc-core": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/9bb6e96e971d12626046bef6aee1d4742d37071abbb1c2fe1318b1d2a6f9a8fdcb6b03aee1763996e20bd09d67de93e0450bd32587e1eda18444f1bd7e6020de - languageName: node - linkType: hard - -"@polkadot/rpc-augment@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/rpc-augment@npm:16.5.4" - dependencies: - "@polkadot/rpc-core": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/03794941e1efa75574a6cf744862b5b39fe3d010e93d0b02a5094cae79f426acb4e4439f6489e40bedb24411b22a743f15c01edb85f83e62b2a55d659583a740 - languageName: node - linkType: hard - -"@polkadot/rpc-augment@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/rpc-augment@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/rpc-core": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/a7d2e20c562d8aee2da9efeddf1343303a88bbac971f55a4d9c47d1a89a8de63ef2f8099c236894b563ac263bd2b0ab085a7bb4339de1b41e9743333e13b2c0a - languageName: node - linkType: hard - -"@polkadot/rpc-augment@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/rpc-augment@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/rpc-core": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/5132c8e68f4d4575d5d3aafff439353e53eefaa67b2b93482506091c9521be6560fd01151060e5d135f6a84bb886548be9afee3445bb37271fdd0f71a1dca6d1 - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:*, @polkadot/rpc-core@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/rpc-core@npm:16.5.4" - dependencies: - "@polkadot/rpc-augment": "npm:16.5.4" - "@polkadot/rpc-provider": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/e22796384712238a38b907a2e312fecc31ec6187ac9434c9ad758b1fd5d02ba50d3319c363921b9cb3890625d7bac6e331ab180e14ead60be1b3c2796a028e33 - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/rpc-core@npm:10.13.1" - dependencies: - "@polkadot/rpc-augment": "npm:10.13.1" - "@polkadot/rpc-provider": "npm:10.13.1" - "@polkadot/types": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.6.2" - checksum: 10/898237861cf770ac99cd0f50cab594ecfa56e2706201c7e35459718f6a1bef7b8e3d2349a62fd7a5e59dad87db32d6f85585c4c85b50e221ce114c4df0a5bfdc - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/rpc-core@npm:15.10.2" - dependencies: - "@polkadot/rpc-augment": "npm:15.10.2" - "@polkadot/rpc-provider": "npm:15.10.2" - "@polkadot/types": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/62e0ff2f65fd5db26f982b855e82f8d0d1385046c90eb94364b105d34baa5972b01b113fe2292443354f7accff92faac998356946f9b4a80d8a86ea9d6d885a5 - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:4.17.1": - version: 4.17.1 - resolution: "@polkadot/rpc-core@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/metadata": "npm:4.17.1" - "@polkadot/rpc-provider": "npm:4.17.1" - "@polkadot/types": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/x-rxjs": "npm:^6.11.1" - checksum: 10/3d1ac506f044d1e204d3121fe43ef67e916bb5ded1d24b6139ac2d7f1ae5509e550275627068b931ba209b075a09f9259db0dce80162ac5cdb1bd07ebdb9e089 - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/rpc-core@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/rpc-augment": "npm:7.15.1" - "@polkadot/rpc-provider": "npm:7.15.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - rxjs: "npm:^7.5.5" - checksum: 10/3d5780e7919421d0a993e3261fdbff4b5cfa576cef26220f4f50d169861277d834454c54d7403334d06410bf86962ead9206a4c25fc6553c5f84f11aa8b7c9a6 - languageName: node - linkType: hard - -"@polkadot/rpc-core@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/rpc-core@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/rpc-augment": "npm:9.14.2" - "@polkadot/rpc-provider": "npm:9.14.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - rxjs: "npm:^7.8.0" - checksum: 10/2696bb3640beb730b8dc1a3d481b37421a139d49d45620f0078782f1acd1bc8cc4b857d4cf6f5b8e2b79af3d6cfcf555c742d2e7001af72eadca188531d15b90 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:10.13.1, @polkadot/rpc-provider@npm:^10.9.1": - version: 10.13.1 - resolution: "@polkadot/rpc-provider@npm:10.13.1" - dependencies: - "@polkadot/keyring": "npm:^12.6.2" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-support": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - "@polkadot/util-crypto": "npm:^12.6.2" - "@polkadot/x-fetch": "npm:^12.6.2" - "@polkadot/x-global": "npm:^12.6.2" - "@polkadot/x-ws": "npm:^12.6.2" - "@substrate/connect": "npm:0.8.8" - eventemitter3: "npm:^5.0.1" - mock-socket: "npm:^9.3.1" - nock: "npm:^13.5.0" - tslib: "npm:^2.6.2" - dependenciesMeta: - "@substrate/connect": - optional: true - checksum: 10/9a17ccbe302c7104924dafdf829ec6a87303cc9bf86d7d06dae614b5f40550759a404dded427382030fa4fee2a7d0bc8f32a9f7d6b67f966a76a209938bfbc62 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/rpc-provider@npm:15.10.2" - dependencies: - "@polkadot/keyring": "npm:^13.4.4" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-support": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - "@polkadot/util-crypto": "npm:^13.4.4" - "@polkadot/x-fetch": "npm:^13.4.4" - "@polkadot/x-global": "npm:^13.4.4" - "@polkadot/x-ws": "npm:^13.4.4" - "@substrate/connect": "npm:0.8.11" - eventemitter3: "npm:^5.0.1" - mock-socket: "npm:^9.3.1" - nock: "npm:^13.5.5" - tslib: "npm:^2.8.1" - dependenciesMeta: - "@substrate/connect": - optional: true - checksum: 10/e8d0acb0981e965942e4e309dab5d7ec8051b11a3e6ab32fdcf33da25f0900bcf9c689bc502ce6fcd80b7e6d4fc9799015eb41f65a69b0780b2f1adf4caf3562 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:16.5.4, @polkadot/rpc-provider@npm:^16.4.1": - version: 16.5.4 - resolution: "@polkadot/rpc-provider@npm:16.5.4" - dependencies: - "@polkadot/keyring": "npm:^14.0.1" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-support": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - "@polkadot/util-crypto": "npm:^14.0.1" - "@polkadot/x-fetch": "npm:^14.0.1" - "@polkadot/x-global": "npm:^14.0.1" - "@polkadot/x-ws": "npm:^14.0.1" - "@substrate/connect": "npm:0.8.11" - eventemitter3: "npm:^5.0.1" - mock-socket: "npm:^9.3.1" - nock: "npm:^13.5.5" - tslib: "npm:^2.8.1" - dependenciesMeta: - "@substrate/connect": - optional: true - checksum: 10/d15e0702f81c36124115c63c2702975188a7bb50886f5fbc54a98ebe6697b8aaef0a616ce13df2da99d6db0b06b7228d4f93dc44b0188e81aa62242bf6257b44 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:4.17.1": - version: 4.17.1 - resolution: "@polkadot/rpc-provider@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/types": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/util-crypto": "npm:^6.11.1" - "@polkadot/x-fetch": "npm:^6.11.1" - "@polkadot/x-global": "npm:^6.11.1" - "@polkadot/x-ws": "npm:^6.11.1" - eventemitter3: "npm:^4.0.7" - checksum: 10/18a44cbee748f7c600013dcd3efaf99df922a995957683d167d551573a718e2c7eaa7fdd49da39d24c1b8c8168ddb38c4f443c7863284b3f3a0969b56f789f08 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/rpc-provider@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/keyring": "npm:^8.7.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-support": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - "@polkadot/util-crypto": "npm:^8.7.1" - "@polkadot/x-fetch": "npm:^8.7.1" - "@polkadot/x-global": "npm:^8.7.1" - "@polkadot/x-ws": "npm:^8.7.1" - "@substrate/connect": "npm:0.7.0-alpha.0" - eventemitter3: "npm:^4.0.7" - mock-socket: "npm:^9.1.2" - nock: "npm:^13.2.4" - checksum: 10/62aaa15690775e7abd441000c4172554cf2b21c8d965763722a7604beea7a2b2d82287e246ee49a9ed1f6a27ef7da8144a82542ed5ecd548331bdd5e5575ede6 - languageName: node - linkType: hard - -"@polkadot/rpc-provider@npm:9.14.2, @polkadot/rpc-provider@npm:^9.13.2": - version: 9.14.2 - resolution: "@polkadot/rpc-provider@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/keyring": "npm:^10.4.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-support": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - "@polkadot/util-crypto": "npm:^10.4.2" - "@polkadot/x-fetch": "npm:^10.4.2" - "@polkadot/x-global": "npm:^10.4.2" - "@polkadot/x-ws": "npm:^10.4.2" - "@substrate/connect": "npm:0.7.19" - eventemitter3: "npm:^5.0.0" - mock-socket: "npm:^9.2.1" - nock: "npm:^13.3.0" - dependenciesMeta: - "@substrate/connect": - optional: true - checksum: 10/1d71fbb15c0fe13d1a73c911723c4485b9125add2f1838bc0e3bd3987eedb557921301f30e159f51c42fa6cfb0b40f8493aa1e3e107ac5dd7c011d674ddacdeb - languageName: node - linkType: hard - -"@polkadot/typegen@npm:*": - version: 16.5.4 - resolution: "@polkadot/typegen@npm:16.5.4" - dependencies: - "@polkadot/api": "npm:16.5.4" - "@polkadot/api-augment": "npm:16.5.4" - "@polkadot/api-derive": "npm:16.5.4" - "@polkadot/rpc-augment": "npm:16.5.4" - "@polkadot/rpc-provider": "npm:16.5.4" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-augment": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/types-create": "npm:16.5.4" - "@polkadot/types-support": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - "@polkadot/util-crypto": "npm:^14.0.1" - "@polkadot/x-ws": "npm:^14.0.1" - comment-parser: "npm:^1.4.1" - handlebars: "npm:^4.7.8" - tslib: "npm:^2.8.1" - yargs: "npm:^17.7.2" - bin: - polkadot-types-chain-info: scripts/polkadot-types-chain-info.mjs - polkadot-types-from-chain: scripts/polkadot-types-from-chain.mjs - polkadot-types-from-defs: scripts/polkadot-types-from-defs.mjs - polkadot-types-internal-interfaces: scripts/polkadot-types-internal-interfaces.mjs - polkadot-types-internal-metadata: scripts/polkadot-types-internal-metadata.mjs - checksum: 10/5d3a041c25ea84ed8024b60db62cb49182203bc9f164cfe3bfa2cf7959b3e3863d8bd04183955fa1066c4b3910fd881ccb491c997873b448c52e596c1516f8a7 - languageName: node - linkType: hard - -"@polkadot/types-augment@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/types-augment@npm:10.13.1" - dependencies: - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/41d54340f81dceea864b03e0b2ad7dacd2d6f107c36bb29d74866e7f9ec70348d40e7c847856c5ad84e436d1c6123b951b1c3aefa87df90e772a5128fce3c43c - languageName: node - linkType: hard - -"@polkadot/types-augment@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types-augment@npm:15.10.2" - dependencies: - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/c6853bbef55e0319e12d052e9649c49f186a016234a4b647a9645e65f7205db174af2ebdf81b118c23a36e04d5d2d864c9852332fe8256f630fdc42c5b24fb92 - languageName: node - linkType: hard - -"@polkadot/types-augment@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/types-augment@npm:16.5.4" - dependencies: - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/5addbd3a2391d394abd8d4fa4f0f10945cb79ee724e189961bc6fcbb3ca893d4192d4f3aeeeb3eb02ad400d7007b9f71a48cdf94330eb8ef2f84105d95c6701d - languageName: node - linkType: hard - -"@polkadot/types-augment@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/types-augment@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/b868473f42d9aa0abf925758b075fae0ba5499357c28ac4e979c49b50b35b37c94705a75bf733614d6150f01aeb2e99f0838fb12a17b24eaaf0b4adc846dab7a - languageName: node - linkType: hard - -"@polkadot/types-augment@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/types-augment@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/c620672250648269b5f0280f06edd3dde386bfd435dd5b1c27f41713b1c86facc02b0a2171ee78367aa8faf46314b2211c0d416faa9828563f49dfb234c498e4 - languageName: node - linkType: hard - -"@polkadot/types-codec@npm:*, @polkadot/types-codec@npm:16.5.4, @polkadot/types-codec@npm:^16.4.1": - version: 16.5.4 - resolution: "@polkadot/types-codec@npm:16.5.4" - dependencies: - "@polkadot/util": "npm:^14.0.1" - "@polkadot/x-bigint": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/9eb7adb2084394df159b4542cc28ea57935f260fc2a4e3a0179f70a3214fdbd612c1cf9053a4eb3e427efe9ce6a64ac6887d1b10b1f67ef112550b8c38d56600 - languageName: node - linkType: hard - -"@polkadot/types-codec@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/types-codec@npm:10.13.1" - dependencies: - "@polkadot/util": "npm:^12.6.2" - "@polkadot/x-bigint": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/471fe15559ca880a0bc34ff6e24454a33bef72c82007aa95486c98766993e81dac7b59046927a7d167b1f5c569e08716f26592eef04bd03f809174977aa24f2c - languageName: node - linkType: hard - -"@polkadot/types-codec@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types-codec@npm:15.10.2" - dependencies: - "@polkadot/util": "npm:^13.4.4" - "@polkadot/x-bigint": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/b046ce657755622c3e5bd68e9e18122d25045fc0c656b91d1887c03055db8a6f85635b3d146fa692bc4c10a575a3dbca7845a8071e702739f5a71f0d54c1b695 - languageName: node - linkType: hard - -"@polkadot/types-codec@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/types-codec@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/147de26bea074a89e29d9b0f92b8e6c4341c953eaf71fc486e34f2f6d5e106ff5562b51c52117ffe3b8f6d94e6e1fc0d5fd6655d645e45905b05aedace053c4c - languageName: node - linkType: hard - -"@polkadot/types-codec@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/types-codec@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/util": "npm:^10.4.2" - "@polkadot/x-bigint": "npm:^10.4.2" - checksum: 10/cebcbb5ad7c3ccd94b06f355af4581cd9ae3d1b02a1ac4644f013e6ddcba34f5c04f3b799c1bd58528adf13d3c9092a554cceb4d32b871694e108830e0716413 - languageName: node - linkType: hard - -"@polkadot/types-create@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/types-create@npm:10.13.1" - dependencies: - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/30e8de4d36fb0760ace5282d7f80e8dc035462df7c26a37d1cac5ac31b8dac8775a9a23eaff9636e470f4f3ea7034ce4ccfe8f6510c51481d47dac7d832b0d58 - languageName: node - linkType: hard - -"@polkadot/types-create@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types-create@npm:15.10.2" - dependencies: - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/669a5ca2c3a7b9f2cbaf5926c990471bf530d038992117e43251a1898448629aed654648f408e5c5675c6ad87f8ce8e29868731b4d552d8e67d6f3f133aa2c01 - languageName: node - linkType: hard - -"@polkadot/types-create@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/types-create@npm:16.5.4" - dependencies: - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/949f918c36c8ef1356f142d39b6bd6f670b2396e7c5f233c9dd5df6d1c377c36338a853962bb22ce2de02f3131df89d7bc9dcad8645bf57358117ace66677a21 - languageName: node - linkType: hard - -"@polkadot/types-create@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/types-create@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/e363c9ae016fab6cef5247fb6a1ff024bb5a444b115fde3df450de7b3cd15bb959561f4b55bb8d6c0bb73285b23d30e9c7906e720330842cb1050876930e9129 - languageName: node - linkType: hard - -"@polkadot/types-create@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/types-create@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/b60a0df3b7d4b0f9e3504ecb19faec7deb635689da536cffd0145bf725ec982fa30936cae79655f15b067e9b2bcc6599b75d818528bc223b93370297d5629b02 - languageName: node - linkType: hard - -"@polkadot/types-known@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/types-known@npm:10.13.1" - dependencies: - "@polkadot/networks": "npm:^12.6.2" - "@polkadot/types": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/types-create": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/b8848cfb97ca7611ee8f368112be1f5d6adf8e9943faa0d3b5ff438e45d28bd9bc18d1b18eb7e643e4e0bbc07f69ea70ad48e4af002ba27ac3cb22df3a4d5472 - languageName: node - linkType: hard - -"@polkadot/types-known@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types-known@npm:15.10.2" - dependencies: - "@polkadot/networks": "npm:^13.4.4" - "@polkadot/types": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/types-create": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/ee4c42436b408bc80d83c6b13c38ec7e35e3de1432fbbee6f4bb7418089261d115671a0de4521f3a8ce4047b68a770e3cfaa79cf19d435f7e3c43575abd97ac1 - languageName: node - linkType: hard - -"@polkadot/types-known@npm:16.5.4, @polkadot/types-known@npm:^16.4.1": - version: 16.5.4 - resolution: "@polkadot/types-known@npm:16.5.4" - dependencies: - "@polkadot/networks": "npm:^14.0.1" - "@polkadot/types": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/types-create": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/75a8e26052fcb1a4d5c293cd545615c923020ad0d6f4d65a6e2694fb427e33c3b237854912583bb16dcc24b667b0084aa954233decc8b39409a4ab0f38b2f97b - languageName: node - linkType: hard - -"@polkadot/types-known@npm:4.17.1": - version: 4.17.1 - resolution: "@polkadot/types-known@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/networks": "npm:^6.11.1" - "@polkadot/types": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - checksum: 10/fb1ff62a823b5d8f0db9606da9df4568f2ed89bc61e20450663dffe3d05be00f0d54f878a051a64f4981950417298acfced10c42425bcad8970f582ffe0dfc22 - languageName: node - linkType: hard - -"@polkadot/types-known@npm:6.12.1": - version: 6.12.1 - resolution: "@polkadot/types-known@npm:6.12.1" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/networks": "npm:^8.1.2" - "@polkadot/types": "npm:6.12.1" - "@polkadot/util": "npm:^8.1.2" - checksum: 10/1de0caba6f49d7f3a6ae5c548ec5be6b34a40b98fd79c9ca8306762b8eed2ff8ec8a548ddde0db4da7d2a05fdf781e7dbd25118a4ba4ab948843ee8280d1c440 - languageName: node - linkType: hard - -"@polkadot/types-known@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/types-known@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/networks": "npm:^8.7.1" - "@polkadot/types": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/types-create": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/3422440bd9af012d5f105f8dda5aecdcc2e25a6505c4cb74dec9441dde466517fdf2956f31521aac4cb417c7221194b5f965e6a104a89997814652d3596cab3c - languageName: node - linkType: hard - -"@polkadot/types-known@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/types-known@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/networks": "npm:^10.4.2" - "@polkadot/types": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/types-create": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/78154acc8cfee4174e36e3832f85d0c491b7831854509b50a757f47864c3a65da028740f040f27596799275c85e3f260bcd772728e02272e4ab71e859e0ef9ef - languageName: node - linkType: hard - -"@polkadot/types-support@npm:10.13.1": - version: 10.13.1 - resolution: "@polkadot/types-support@npm:10.13.1" - dependencies: - "@polkadot/util": "npm:^12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/d802bb774ada41d5ce5d5a6b80dab199c671fba08693efde4e3e8e3eb2010eef2c073e75a9e5e9e5775826d0659cd29c824331cec2568e7d4b504240ce9e68bf - languageName: node - linkType: hard - -"@polkadot/types-support@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types-support@npm:15.10.2" - dependencies: - "@polkadot/util": "npm:^13.4.4" - tslib: "npm:^2.8.1" - checksum: 10/34431ebc08e189502759679ac793d75aafdbf0f6d254063f7bc5a3fb77e5364617f4b806509062c0a5c6a4330b239a0e906465c358d12ae11de4e1bfd155f63a - languageName: node - linkType: hard - -"@polkadot/types-support@npm:16.5.4": - version: 16.5.4 - resolution: "@polkadot/types-support@npm:16.5.4" - dependencies: - "@polkadot/util": "npm:^14.0.1" - tslib: "npm:^2.8.1" - checksum: 10/db884bc7e5edeb9744dade8a9b7d48950ae0424d0d6cd2ec291c19620ae4b451bab4d116283b20bece948fae348b71c70f3688a087573a5d60d6e9eb8e6b2348 - languageName: node - linkType: hard - -"@polkadot/types-support@npm:7.15.1": - version: 7.15.1 - resolution: "@polkadot/types-support@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/util": "npm:^8.7.1" - checksum: 10/65312a7e21ecac65eadaca284f7745625f09506847ec8146f8c3673b145e8abc33a77467bf9cb17f556611aee0d81a9de4f047c3e81a1425e6e936ef302e3d93 - languageName: node - linkType: hard - -"@polkadot/types-support@npm:9.14.2": - version: 9.14.2 - resolution: "@polkadot/types-support@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/util": "npm:^10.4.2" - checksum: 10/20d652fb010f4acbc846e3a427f8bb58d4147a3acff6d37c52c82b77206fcbf33733feef3159b91581c1351a07e99a587392c4f79acc544c99158418ab48346e - languageName: node - linkType: hard - -"@polkadot/types@npm:*, @polkadot/types@npm:16.5.4, @polkadot/types@npm:^16.4.1": - version: 16.5.4 - resolution: "@polkadot/types@npm:16.5.4" - dependencies: - "@polkadot/keyring": "npm:^14.0.1" - "@polkadot/types-augment": "npm:16.5.4" - "@polkadot/types-codec": "npm:16.5.4" - "@polkadot/types-create": "npm:16.5.4" - "@polkadot/util": "npm:^14.0.1" - "@polkadot/util-crypto": "npm:^14.0.1" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/837137deee5e5785a601a93cb8305a68d771ade15f2ac716583d14ad1892a11c658a79aed99426fd358eecce385ad828972ef55f95f072c9ab76dffdadcf4c79 - languageName: node - linkType: hard - -"@polkadot/types@npm:10.13.1, @polkadot/types@npm:^10.9.1": - version: 10.13.1 - resolution: "@polkadot/types@npm:10.13.1" - dependencies: - "@polkadot/keyring": "npm:^12.6.2" - "@polkadot/types-augment": "npm:10.13.1" - "@polkadot/types-codec": "npm:10.13.1" - "@polkadot/types-create": "npm:10.13.1" - "@polkadot/util": "npm:^12.6.2" - "@polkadot/util-crypto": "npm:^12.6.2" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.6.2" - checksum: 10/8ae2df5b08dd0b977d39a62a7a70788c7925d5fd9212ab2f1e1011a79971e689cfc9b88b20e671a8c8f834fa38038ab5cb97b8f3a7f6272822796c7bfea74d3f - languageName: node - linkType: hard - -"@polkadot/types@npm:15.10.2": - version: 15.10.2 - resolution: "@polkadot/types@npm:15.10.2" - dependencies: - "@polkadot/keyring": "npm:^13.4.4" - "@polkadot/types-augment": "npm:15.10.2" - "@polkadot/types-codec": "npm:15.10.2" - "@polkadot/types-create": "npm:15.10.2" - "@polkadot/util": "npm:^13.4.4" - "@polkadot/util-crypto": "npm:^13.4.4" - rxjs: "npm:^7.8.1" - tslib: "npm:^2.8.1" - checksum: 10/1f0614f3777d04d91ac396e7c025ed5eeba3e12a72b1d6d4425edfb084860b93bd1d7ee085ee47487efec046f747d26fb69907b41f1f05d91ef81799383c4020 - languageName: node - linkType: hard - -"@polkadot/types@npm:4.17.1, @polkadot/types@npm:^4.13.1": - version: 4.17.1 - resolution: "@polkadot/types@npm:4.17.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/metadata": "npm:4.17.1" - "@polkadot/util": "npm:^6.11.1" - "@polkadot/util-crypto": "npm:^6.11.1" - "@polkadot/x-rxjs": "npm:^6.11.1" - checksum: 10/e5cd407756c71684ec2f939c2217b44be1183bedcd1fcae044bcd85584ee683917528e26558dc9cd1319c4dc5e2b1e8719389e7b8cc51254daa12f742a8772c2 - languageName: node - linkType: hard - -"@polkadot/types@npm:6.12.1, @polkadot/types@npm:^6.0.5": - version: 6.12.1 - resolution: "@polkadot/types@npm:6.12.1" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/types-known": "npm:6.12.1" - "@polkadot/util": "npm:^8.1.2" - "@polkadot/util-crypto": "npm:^8.1.2" - rxjs: "npm:^7.4.0" - checksum: 10/c602578057fe9529ad75a103f04bd1366d8c6ffe4f32a06ff2fa35679115aa5b25c727e76a6f034e58f5e784766e6ad10c5bc5cfd92a93bb89b22b6dba48458b - languageName: node - linkType: hard - -"@polkadot/types@npm:7.15.1, @polkadot/types@npm:^7.2.1": - version: 7.15.1 - resolution: "@polkadot/types@npm:7.15.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/keyring": "npm:^8.7.1" - "@polkadot/types-augment": "npm:7.15.1" - "@polkadot/types-codec": "npm:7.15.1" - "@polkadot/types-create": "npm:7.15.1" - "@polkadot/util": "npm:^8.7.1" - "@polkadot/util-crypto": "npm:^8.7.1" - rxjs: "npm:^7.5.5" - checksum: 10/616a1f38c99540eb0504ed80b8ecdc95097c8d81458542dd6fa7fcdfd6bf78464047664cbff009107dc53bcd683824c1c8d3de2e2198d5efeac98420122e02d4 - languageName: node - linkType: hard - -"@polkadot/types@npm:9.14.2, @polkadot/types@npm:^9.13.2": - version: 9.14.2 - resolution: "@polkadot/types@npm:9.14.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/keyring": "npm:^10.4.2" - "@polkadot/types-augment": "npm:9.14.2" - "@polkadot/types-codec": "npm:9.14.2" - "@polkadot/types-create": "npm:9.14.2" - "@polkadot/util": "npm:^10.4.2" - "@polkadot/util-crypto": "npm:^10.4.2" - rxjs: "npm:^7.8.0" - checksum: 10/8bc908056a8f450b84d7e7c3e09fa0e0779a200c8f1240c9eeae88a922dc7acc496d066b88662220eafc5a1ad70051d761dc0b6ccc742f709af043c3ff6c03d5 - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:10.4.2, @polkadot/util-crypto@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/util-crypto@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@noble/hashes": "npm:1.2.0" - "@noble/secp256k1": "npm:1.7.1" - "@polkadot/networks": "npm:10.4.2" - "@polkadot/util": "npm:10.4.2" - "@polkadot/wasm-crypto": "npm:^6.4.1" - "@polkadot/x-bigint": "npm:10.4.2" - "@polkadot/x-randomvalues": "npm:10.4.2" - "@scure/base": "npm:1.1.1" - ed2curve: "npm:^0.3.0" - tweetnacl: "npm:^1.0.3" - peerDependencies: - "@polkadot/util": 10.4.2 - checksum: 10/6faeb2026d9f455dd771b9c99590be1a08447337e6684b1a3dd77fe7c59661cb5ed65a95155f600d0b39bbe22332a02426da7d0849e3aeb92a478f2ff7069439 - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:12.6.2, @polkadot/util-crypto@npm:^12.5.1, @polkadot/util-crypto@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/util-crypto@npm:12.6.2" - dependencies: - "@noble/curves": "npm:^1.3.0" - "@noble/hashes": "npm:^1.3.3" - "@polkadot/networks": "npm:12.6.2" - "@polkadot/util": "npm:12.6.2" - "@polkadot/wasm-crypto": "npm:^7.3.2" - "@polkadot/wasm-util": "npm:^7.3.2" - "@polkadot/x-bigint": "npm:12.6.2" - "@polkadot/x-randomvalues": "npm:12.6.2" - "@scure/base": "npm:^1.1.5" - tslib: "npm:^2.6.2" - peerDependencies: - "@polkadot/util": 12.6.2 - checksum: 10/a587e5e25697f3a928ae8677b82ccdbcc1df95122db2bbde753b0605f44487136fe2f55c502460d931def0007e856db40b1b34b4da3c674638ead459e79f227a - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:13.5.9, @polkadot/util-crypto@npm:^13.4.4, @polkadot/util-crypto@npm:^13.5.3, @polkadot/util-crypto@npm:^13.5.9": - version: 13.5.9 - resolution: "@polkadot/util-crypto@npm:13.5.9" - dependencies: - "@noble/curves": "npm:^1.3.0" - "@noble/hashes": "npm:^1.3.3" - "@polkadot/networks": "npm:13.5.9" - "@polkadot/util": "npm:13.5.9" - "@polkadot/wasm-crypto": "npm:^7.5.3" - "@polkadot/wasm-util": "npm:^7.5.3" - "@polkadot/x-bigint": "npm:13.5.9" - "@polkadot/x-randomvalues": "npm:13.5.9" - "@scure/base": "npm:^1.1.7" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 13.5.9 - checksum: 10/0c388e9afe2eb000e721a9b03472b53943c090b1a6042b98164524367dcaf45a6d8f43c56c9929f1c3ea65dceef196f86df4979f83e64a90a5f1044fe0f73960 - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:14.0.1, @polkadot/util-crypto@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/util-crypto@npm:14.0.1" - dependencies: - "@noble/curves": "npm:^1.3.0" - "@noble/hashes": "npm:^1.3.3" - "@polkadot/networks": "npm:14.0.1" - "@polkadot/util": "npm:14.0.1" - "@polkadot/wasm-crypto": "npm:^7.5.3" - "@polkadot/wasm-util": "npm:^7.5.3" - "@polkadot/x-bigint": "npm:14.0.1" - "@polkadot/x-randomvalues": "npm:14.0.1" - "@scure/base": "npm:^1.1.7" - "@scure/sr25519": "npm:^0.2.0" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 14.0.1 - checksum: 10/132a89d4e80ba0076213ca03991e6195ad8abb3b469b4fdca1826187c4bc879f0310c9c99a73b8a2e5ca2af427c6715af7e43c99c3c9199090091ab354281d95 - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:6.11.1, @polkadot/util-crypto@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/util-crypto@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/networks": "npm:6.11.1" - "@polkadot/util": "npm:6.11.1" - "@polkadot/wasm-crypto": "npm:^4.0.2" - "@polkadot/x-randomvalues": "npm:6.11.1" - base-x: "npm:^3.0.8" - base64-js: "npm:^1.5.1" - blakejs: "npm:^1.1.1" - bn.js: "npm:^4.11.9" - create-hash: "npm:^1.2.0" - elliptic: "npm:^6.5.4" - hash.js: "npm:^1.1.7" - js-sha3: "npm:^0.8.0" - scryptsy: "npm:^2.1.0" - tweetnacl: "npm:^1.0.3" - xxhashjs: "npm:^0.2.2" - peerDependencies: - "@polkadot/util": 6.11.1 - checksum: 10/4a0ae520875dcbb1ed4dc06b2c3c3879f9fc8fc6b35c14563617921f0da943bec654c7026d3af63f995c8c27794b0726232132a1ca8db7b9e1fd1add5f2bc22f - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/util-crypto@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/networks": "npm:7.9.2" - "@polkadot/util": "npm:7.9.2" - "@polkadot/wasm-crypto": "npm:^4.4.1" - "@polkadot/x-randomvalues": "npm:7.9.2" - blakejs: "npm:^1.1.1" - bn.js: "npm:^4.12.0" - create-hash: "npm:^1.2.0" - ed2curve: "npm:^0.3.0" - elliptic: "npm:^6.5.4" - hash.js: "npm:^1.1.7" - js-sha3: "npm:^0.8.0" - micro-base: "npm:^0.9.0" - scryptsy: "npm:^2.1.0" - tweetnacl: "npm:^1.0.3" - xxhashjs: "npm:^0.2.2" - peerDependencies: - "@polkadot/util": 7.9.2 - checksum: 10/922aa3ee41264e356851d0a8de4fb5ba6ad4dead09c4844d02cdbd7c0ecc94a5b374f5c249f21d4c98ed95356b2058d1d7cd12f9c1ea408d60dc042bb3319a37 - languageName: node - linkType: hard - -"@polkadot/util-crypto@npm:8.7.1, @polkadot/util-crypto@npm:^8.1.2, @polkadot/util-crypto@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/util-crypto@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@noble/hashes": "npm:1.0.0" - "@noble/secp256k1": "npm:1.5.5" - "@polkadot/networks": "npm:8.7.1" - "@polkadot/util": "npm:8.7.1" - "@polkadot/wasm-crypto": "npm:^5.1.1" - "@polkadot/x-bigint": "npm:8.7.1" - "@polkadot/x-randomvalues": "npm:8.7.1" - "@scure/base": "npm:1.0.0" - ed2curve: "npm:^0.3.0" - tweetnacl: "npm:^1.0.3" - peerDependencies: - "@polkadot/util": 8.7.1 - checksum: 10/5374f2e6d3d17e81165b198b0657e9c1f3212b6d3451e421364405776dfe4370982953de4940df83d94744f2b7a85360a67c23694fbb765e6d292dabe1d51cc1 - languageName: node - linkType: hard - -"@polkadot/util@npm:10.4.2, @polkadot/util@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/util@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-bigint": "npm:10.4.2" - "@polkadot/x-global": "npm:10.4.2" - "@polkadot/x-textdecoder": "npm:10.4.2" - "@polkadot/x-textencoder": "npm:10.4.2" - "@types/bn.js": "npm:^5.1.1" - bn.js: "npm:^5.2.1" - checksum: 10/bdecd8fdaabbff9dae0b317954c1b50b6001bf13c67633fbe753367f20d8a819dd332f55917286107b2cfdc9921e861232cb913c097fe89db258f8902741a677 - languageName: node - linkType: hard - -"@polkadot/util@npm:12.6.2, @polkadot/util@npm:^12.5.1, @polkadot/util@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/util@npm:12.6.2" - dependencies: - "@polkadot/x-bigint": "npm:12.6.2" - "@polkadot/x-global": "npm:12.6.2" - "@polkadot/x-textdecoder": "npm:12.6.2" - "@polkadot/x-textencoder": "npm:12.6.2" - "@types/bn.js": "npm:^5.1.5" - bn.js: "npm:^5.2.1" - tslib: "npm:^2.6.2" - checksum: 10/b7a3c2be417d670fc64d0642818cadbf041cbcfae830f2ee45fc2496e86c8e11c385854b733504a7d6a6391066fd0ef544a1748f0f8809215c37a5c0ff64571d - languageName: node - linkType: hard - -"@polkadot/util@npm:13.5.9, @polkadot/util@npm:^13.4.4, @polkadot/util@npm:^13.5.3, @polkadot/util@npm:^13.5.9": - version: 13.5.9 - resolution: "@polkadot/util@npm:13.5.9" - dependencies: - "@polkadot/x-bigint": "npm:13.5.9" - "@polkadot/x-global": "npm:13.5.9" - "@polkadot/x-textdecoder": "npm:13.5.9" - "@polkadot/x-textencoder": "npm:13.5.9" - "@types/bn.js": "npm:^5.1.6" - bn.js: "npm:^5.2.1" - tslib: "npm:^2.8.0" - checksum: 10/f3b9d66dff334e1204f3f8fecd74fe64dafec014551c99bcfde1d1270e1559fa68129fd3a47f090c6c174cdd3b9b0d9cbe95a4de4cb5172ca84c9fdd6147a0bb - languageName: node - linkType: hard - -"@polkadot/util@npm:14.0.1, @polkadot/util@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/util@npm:14.0.1" - dependencies: - "@polkadot/x-bigint": "npm:14.0.1" - "@polkadot/x-global": "npm:14.0.1" - "@polkadot/x-textdecoder": "npm:14.0.1" - "@polkadot/x-textencoder": "npm:14.0.1" - "@types/bn.js": "npm:^5.1.6" - bn.js: "npm:^5.2.1" - tslib: "npm:^2.8.0" - checksum: 10/c6f8f3d2fa1a68f1af0396090fce191eab58a4256c201d60231b697051c0db34e4a7bcbcd2cf833796d839762366f0d7553e8613ccadeb03c422c3d159563aea - languageName: node - linkType: hard - -"@polkadot/util@npm:6.11.1, @polkadot/util@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/util@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-textdecoder": "npm:6.11.1" - "@polkadot/x-textencoder": "npm:6.11.1" - "@types/bn.js": "npm:^4.11.6" - bn.js: "npm:^4.11.9" - camelcase: "npm:^5.3.1" - ip-regex: "npm:^4.3.0" - checksum: 10/4b5a9b10230b0cd2235058b1721fe82ee5fc63eb5d3659273fe476ff9ffe587bf27574b3080b883538077db1f60184415c5a1f0a5e328d249fe5a1b970772250 - languageName: node - linkType: hard - -"@polkadot/util@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/util@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/x-textdecoder": "npm:7.9.2" - "@polkadot/x-textencoder": "npm:7.9.2" - "@types/bn.js": "npm:^4.11.6" - bn.js: "npm:^4.12.0" - camelcase: "npm:^6.2.1" - ip-regex: "npm:^4.3.0" - checksum: 10/3d46630957a54a20fae6eb9fe233d1422a5cdac27822877b9bc328a241eaa87ecc47b50cda50cc8d9f1984278ec076b3ee5f14004613148fb3e2c0087717e81f - languageName: node - linkType: hard - -"@polkadot/util@npm:8.7.1, @polkadot/util@npm:^8.1.2, @polkadot/util@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/util@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-bigint": "npm:8.7.1" - "@polkadot/x-global": "npm:8.7.1" - "@polkadot/x-textdecoder": "npm:8.7.1" - "@polkadot/x-textencoder": "npm:8.7.1" - "@types/bn.js": "npm:^5.1.0" - bn.js: "npm:^5.2.0" - ip-regex: "npm:^4.3.0" - checksum: 10/ae54c4991493d4e70fb0cdb54ab06ab55dbd112d4a23a272637ad2ac228c36ec28826e98f0377ed33bb158658c975128e86acecf4541700885cf24b1bde15a77 - languageName: node - linkType: hard - -"@polkadot/vanitygen@npm:^0.63.18": - version: 0.63.19 - resolution: "@polkadot/vanitygen@npm:0.63.19" - dependencies: - "@polkadot/util": "npm:^13.5.9" - "@polkadot/util-crypto": "npm:^13.5.9" - tslib: "npm:^2.8.1" - yargs: "npm:^17.7.2" - bin: - polkadot-js-vanitygen: runcli.mjs - checksum: 10/6f7718d37037b28aba1e8ff15a5b3c3c77a05a9dc08a8010db159633963aea389bae57e79b7915cf7db8362d0245433329d26cc22a4d118fd611823cfcc63fb9 - languageName: node - linkType: hard - -"@polkadot/wasm-bridge@npm:6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-bridge@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/22dc70090e07f6a1a3b983c1233d691ec2c6543da08407cbd0117ea08c0a4043bf278c218ae17a23e742f1ea298768f303acf00f8ae0ad55612525ef22e66c8f - languageName: node - linkType: hard - -"@polkadot/wasm-bridge@npm:7.5.4": - version: 7.5.4 - resolution: "@polkadot/wasm-bridge@npm:7.5.4" - dependencies: - "@polkadot/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/64db5db90a82396032c31e6745b2e77817b8e9258841b72e506370ecf3ac63497efc654ca113419baf3c9b5fabda86bb21b29e1b508f192ab4e07beab8ef6d04 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-asmjs@npm:6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-crypto-asmjs@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/81a9ae9207e067e319ac1329b70fdd06cd357c63c9b65bd2b8e93ed7f22a5ca576ca75fcb095a2e86d059680273383b175f293c31739a80ab8514e48729d90e8 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-asmjs@npm:7.5.4": - version: 7.5.4 - resolution: "@polkadot/wasm-crypto-asmjs@npm:7.5.4" - dependencies: - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/9e03f052b871bc9e33268b01025fe43789f2af40e4aabbe3b7d8348a0752001cd137c20ba66c58ee7d692e798d957024c7cbd0cbf1a8cf3e6baebbe67696e781 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-asmjs@npm:^4.6.1": - version: 4.6.1 - resolution: "@polkadot/wasm-crypto-asmjs@npm:4.6.1" - dependencies: - "@babel/runtime": "npm:^7.17.2" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/e2b3e3703176eb14d663380d0894d91d94ab2aa2ac91980281d4ecb52032bd996f8f64e81a075edcb96f248d5f1dcf39c7862678b360c2bb8cf3e51d19b41454 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-asmjs@npm:^5.1.1": - version: 5.1.1 - resolution: "@polkadot/wasm-crypto-asmjs@npm:5.1.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/570b82a065b396a8de37d54647cddcde3317915396ad88eaa70fd7f8ea2c80eca55f99a2fc7e3e6eb2f94d56ed7b801ffc0c22d703bc25b2f85f1bd1c32db45a - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-init@npm:6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-crypto-init@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - "@polkadot/wasm-bridge": "npm:6.4.1" - "@polkadot/wasm-crypto-asmjs": "npm:6.4.1" - "@polkadot/wasm-crypto-wasm": "npm:6.4.1" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/f2e66fb612e2c3543847af4153faf8634003441be8e831c4df0e73b42e146124b9b13abdc05a53ec9c169315486c21783815270363bfc4762c10e5cd54d7ae81 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-init@npm:7.5.4": - version: 7.5.4 - resolution: "@polkadot/wasm-crypto-init@npm:7.5.4" - dependencies: - "@polkadot/wasm-bridge": "npm:7.5.4" - "@polkadot/wasm-crypto-asmjs": "npm:7.5.4" - "@polkadot/wasm-crypto-wasm": "npm:7.5.4" - "@polkadot/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/c1077a74156bd6356487043b23a849b214274c74fc44f1e2c203ec58f152c47c577f9da920ebf79ef746cfdfd2f246b1dd6a97c5796556f1c00e63d795eb896f - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-wasm@npm:6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-crypto-wasm@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - "@polkadot/wasm-util": "npm:6.4.1" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/39d2556438d6ad1c3c3d29f4521ae7e58749fc0218f7a83a0e2cb886619a71986676c69b7ae70c03e9c0b2d74be99c1cf0492bbabbabf64ee6451a353ca0ffda - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-wasm@npm:7.5.4": - version: 7.5.4 - resolution: "@polkadot/wasm-crypto-wasm@npm:7.5.4" - dependencies: - "@polkadot/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/338b5d4b347116efa09aba7f27f1d13e84a4ef62680ab02e2c47bbd43180844434cf49f8c954528cbb8bebef69bdf101be33e3a6fe093efd3f5ab2245f5e7faf - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-wasm@npm:^4.6.1": - version: 4.6.1 - resolution: "@polkadot/wasm-crypto-wasm@npm:4.6.1" - dependencies: - "@babel/runtime": "npm:^7.17.2" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/5965a226634874088c5322dc0754d8a44fd2fc52ae065e1a565ca1854ae6b96fa4350f4a9c8c405adb290ba888907f3ef64256ede4e00d45e3ccfbe26f3ef9ef - languageName: node - linkType: hard - -"@polkadot/wasm-crypto-wasm@npm:^5.1.1": - version: 5.1.1 - resolution: "@polkadot/wasm-crypto-wasm@npm:5.1.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/8917cf4128d5c9fcf8ca95773adc7c1469f106addc8db3d50de9ec20a0ccab677d8159da55dd9b55903fc837009a169609ad86199fb4aa1de7114117cc4758ec - languageName: node - linkType: hard - -"@polkadot/wasm-crypto@npm:^4.0.2, @polkadot/wasm-crypto@npm:^4.4.1": - version: 4.6.1 - resolution: "@polkadot/wasm-crypto@npm:4.6.1" - dependencies: - "@babel/runtime": "npm:^7.17.2" - "@polkadot/wasm-crypto-asmjs": "npm:^4.6.1" - "@polkadot/wasm-crypto-wasm": "npm:^4.6.1" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/979a4f65b4aabf4274d039170fc33034ff68e821fb4669b92afe0079b14899c54ea4924dc36a3abc5b99da29999fd8e8f4449d6b845447de7ace7c0676a89ca7 - languageName: node - linkType: hard - -"@polkadot/wasm-crypto@npm:^5.1.1": - version: 5.1.1 - resolution: "@polkadot/wasm-crypto@npm:5.1.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/wasm-crypto-asmjs": "npm:^5.1.1" - "@polkadot/wasm-crypto-wasm": "npm:^5.1.1" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/8f6f2ba6454de353a3381fabc7c8ef83faf3524831979c687502f75b28fe8a65256c6df359b67e60c577fa8f397d698fd7b08c9bfe114fbee94950b40db91e1a - languageName: node - linkType: hard - -"@polkadot/wasm-crypto@npm:^6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-crypto@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - "@polkadot/wasm-bridge": "npm:6.4.1" - "@polkadot/wasm-crypto-asmjs": "npm:6.4.1" - "@polkadot/wasm-crypto-init": "npm:6.4.1" - "@polkadot/wasm-crypto-wasm": "npm:6.4.1" - "@polkadot/wasm-util": "npm:6.4.1" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/2e3c4369b66b061450d72f36a33e2fb822d393472907ab314befa9aa9636ec2db99e3771656df7ffdfcdd92e92b54594855d61b34d97b256d562a3d6ce19a3cd - languageName: node - linkType: hard - -"@polkadot/wasm-crypto@npm:^7.3.2, @polkadot/wasm-crypto@npm:^7.5.3": - version: 7.5.4 - resolution: "@polkadot/wasm-crypto@npm:7.5.4" - dependencies: - "@polkadot/wasm-bridge": "npm:7.5.4" - "@polkadot/wasm-crypto-asmjs": "npm:7.5.4" - "@polkadot/wasm-crypto-init": "npm:7.5.4" - "@polkadot/wasm-crypto-wasm": "npm:7.5.4" - "@polkadot/wasm-util": "npm:7.5.4" - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - "@polkadot/x-randomvalues": "*" - checksum: 10/d4edce7bc9e8fa8387abe1d3fa4433937ab40faf4889a949a5a64c42f852837e3da96c00a73fb383fc8ef3fe177ac40dc85a13bcd43b059f2d04bab52f537801 - languageName: node - linkType: hard - -"@polkadot/wasm-util@npm:6.4.1": - version: 6.4.1 - resolution: "@polkadot/wasm-util@npm:6.4.1" - dependencies: - "@babel/runtime": "npm:^7.20.6" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/d2df5a14a3b75e2e91934676afe4fc34bac5580e22af20a416a13b98d596e5b9a9f87031b6f01d993f20fba595a249c112a6b520fcde08ed0f674350253632e1 - languageName: node - linkType: hard - -"@polkadot/wasm-util@npm:7.5.4, @polkadot/wasm-util@npm:^7.3.2, @polkadot/wasm-util@npm:^7.4.1, @polkadot/wasm-util@npm:^7.5.3": - version: 7.5.4 - resolution: "@polkadot/wasm-util@npm:7.5.4" - dependencies: - tslib: "npm:^2.7.0" - peerDependencies: - "@polkadot/util": "*" - checksum: 10/4dda837f3ac84705d709a2e62fc0f9ec54518dbae88d3bf9dc68b65f17f50eadf7fff4289f3deaf51f93d79d5ac0631ecf57ad572d55f98a11149beaa3b2bcc4 - languageName: node - linkType: hard - -"@polkadot/x-bigint@npm:10.4.2, @polkadot/x-bigint@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-bigint@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - checksum: 10/a77565a3b397bc3bd4b3f7d4296941658f771dfff0ee38ba7325c6351ee84dffb522857613c6125e8b97d11699c80c621d5e208cbe2af3f18e663b6e6c03a407 - languageName: node - linkType: hard - -"@polkadot/x-bigint@npm:12.6.2, @polkadot/x-bigint@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-bigint@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/8a9533ba955d06213e3810d48e95618186cc832375f82d8b52376a99d7c8f9fdd01ffb9c35495522aec8c28d18ca5ef6c8feeec9770b83ebb64cded4cd3b7e27 - languageName: node - linkType: hard - -"@polkadot/x-bigint@npm:13.5.9, @polkadot/x-bigint@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/x-bigint@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - tslib: "npm:^2.8.0" - checksum: 10/8b9c5f40d31a226e5222e5a837bf730fed288f2b4d525966a4f8645afc8c17919ccf8f18e7ae6452698fb8f9d92fa7c7760b275f139ba0318d20bfbadff9679e - languageName: node - linkType: hard - -"@polkadot/x-bigint@npm:14.0.1, @polkadot/x-bigint@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-bigint@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/e56c4086c19ecf93b18d6613ae1c03c28755899f7baf817ed870ade4c39be610e5cf5d098944845943a3d713f2c0aabe80b4762d7a7f89df87891ba83625c322 - languageName: node - linkType: hard - -"@polkadot/x-bigint@npm:8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-bigint@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - checksum: 10/2c1e0a6423757860a17a5e80f44b9048ddaa273f6f0901ce5679d0aa98075c84e71022ade7fb49eb6bf35cc65fca4aa94a09d36d024adaaa1f182a93d5348a0d - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-fetch@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - "@types/node-fetch": "npm:^2.6.2" - node-fetch: "npm:^3.3.0" - checksum: 10/3695e3dbeea981ffdd1dcae1156115082c9089ffac8c010d79982cb335832e17b539c70eac5ab2a9c6cf39945ec02119a2164637c17f23db233d743749220983 - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-fetch@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - node-fetch: "npm:^3.3.2" - tslib: "npm:^2.6.2" - checksum: 10/755feee15234b31de9e74bae5eca1a2e9c17e3e76330e5c5cca5e446fc3c350b8f02e3c3853005d1dd4b3da9d4f6a6c3ffd6d2146ae529b0fa6ed3c4206343af - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/x-fetch@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - node-fetch: "npm:^3.3.2" - tslib: "npm:^2.8.0" - checksum: 10/f937fcc3af357b06c39fac606bc7dfe4e5c6d1d2df86547ea287e0e0afcb0fa9c5bfbe87bc7f76a144e10d859b06555605e5332485707f803967f006bd87b656 - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-fetch@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - node-fetch: "npm:^3.3.2" - tslib: "npm:^2.8.0" - checksum: 10/a358687605e3c622d36ebfd94607ceb74b5430a247f83bb675b085d8baaca740f004bb4f23626f0119219d8971bb415e7dfc13c78f1f6711a6d4b5f082eb1130 - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-fetch@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-global": "npm:6.11.1" - "@types/node-fetch": "npm:^2.5.10" - node-fetch: "npm:^2.6.1" - checksum: 10/06d96c8a3ece6b11651948f644823de28aed0eea416466fc00b9dfa60b89a39476b679784c4b64c7ca541a95cb6552030f66974df58269eda0024721850ff1be - languageName: node - linkType: hard - -"@polkadot/x-fetch@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-fetch@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - "@types/node-fetch": "npm:^2.6.1" - node-fetch: "npm:^2.6.7" - checksum: 10/1fc979e81e14c9dd3677e390d04f8b81be1dac8b526222b186121048d096b00dd8f046b294df07bf967fd016ae888dc0ff63c5f1be937ff3e94ab4a9992d9942 - languageName: node - linkType: hard - -"@polkadot/x-global@npm:10.4.2, @polkadot/x-global@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-global@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - checksum: 10/2df4898cde8435bb32dcb7d67f43f33996443d609fa1651c19ad92c23331dc39f346e0addba2a9fbd1ddf27157465730420452e8da81e0579acef7feab443445 - languageName: node - linkType: hard - -"@polkadot/x-global@npm:12.6.2, @polkadot/x-global@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-global@npm:12.6.2" - dependencies: - tslib: "npm:^2.6.2" - checksum: 10/9159bd77e099f734f7c48ba3e37a886ba376c50066b664ee52caf0bf8eb0399b762ca08404ef6470c22e4d20e9fc8c5e0a87026efcbbd0f21ea5504b0e33d587 - languageName: node - linkType: hard - -"@polkadot/x-global@npm:13.5.9, @polkadot/x-global@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/x-global@npm:13.5.9" - dependencies: - tslib: "npm:^2.8.0" - checksum: 10/07ef477f428c73bfbdb242a4511fbbdc2c31ea2641fb577bd1ac479b6567e780a2df0a9aeb1913efe3128703c8f81366b0cf48c491d53663d3c7eff2ebcf4d2e - languageName: node - linkType: hard - -"@polkadot/x-global@npm:14.0.1, @polkadot/x-global@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-global@npm:14.0.1" - dependencies: - tslib: "npm:^2.8.0" - checksum: 10/f5486c836b4cf95e1a84921961ba7c2fb4426b4f28af3a9e33fb78f7ae846dbe6d39bd2d9916e6eb7e0aed3e7e743c5b432a9437ecff944ed96db1640f25e288 - languageName: node - linkType: hard - -"@polkadot/x-global@npm:6.11.1, @polkadot/x-global@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-global@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - checksum: 10/c0114b2fe8a0f4b238f39b4040a5c917e968bf912b2186bb0860597ead9921c2200dbb91b4462d6476be1243297d1b34479fdd79e934927d4d076005f36c26c9 - languageName: node - linkType: hard - -"@polkadot/x-global@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/x-global@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - checksum: 10/685adf925dcac356e05d0ec3c115b19b939934e813b104bd08fd45a37f1eceb1a2ac22b5fdea418f2de83a3cfdc23bb66d8449ba9c772916981104d6cc95178c - languageName: node - linkType: hard - -"@polkadot/x-global@npm:8.7.1, @polkadot/x-global@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-global@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - checksum: 10/d2a888f2cfa31a8a99b92537799d5fd30115d8db7bd2b58f3e2a0ee929518fb9fc44b936dd6e98f79ac84420a587dd81fd2c592febc87f6176cddda436e622b3 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-randomvalues@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - checksum: 10/85756dc61c389ece4dbcf6b93ac105bce03d4e40f25a88962721a3dbdeb2d5f5f3fd18d945c132b785c7865fdbb532a45091c9952447b673dd37a75958fd42b1 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-randomvalues@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - tslib: "npm:^2.6.2" - peerDependencies: - "@polkadot/util": 12.6.2 - "@polkadot/wasm-util": "*" - checksum: 10/9ab555931ab81a8834800da35f04cb86df48b0d706d33ea89c51f42b8d340dab7312c462d01ecae04573ba6a01ff1ad6066ea6cf82b1330482ff537eb3c12eeb - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:13.5.9": - version: 13.5.9 - resolution: "@polkadot/x-randomvalues@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 13.5.9 - "@polkadot/wasm-util": "*" - checksum: 10/0a1d4066d60ca2e21d129fcd4798634f0d05e67acd86da17d48dd3e79cda1ebcf59861738dc68357068f8fdb2c2894c32e652aee66ee393ecde4b3288f237430 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-randomvalues@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - peerDependencies: - "@polkadot/util": 14.0.1 - "@polkadot/wasm-util": "*" - checksum: 10/0c382109938786cfe159920de28d53bfe949e54fb60e15a45ce97a3a311c0b62b37051f978aaff1d342a92a8d0684d9065eac6d46138b769dca69fbf61c57fa7 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-randomvalues@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-global": "npm:6.11.1" - checksum: 10/b50f64be1d8c76fcae08016d34049f31bd30642c2208ecbacac2b21266dbc05fe284e396b4da044acf5e426895391dfc297f5d22ddb01e786c7e6f4778b19e48 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/x-randomvalues@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/x-global": "npm:7.9.2" - checksum: 10/bc73d2944144b24c1ca5bc2deae01a2498d81d47f209175c9cc0b799557000ea568459e277aa0e98e2bcb6a24a10fcfd7fd4dc8a1411acbd3fa79ac46d213249 - languageName: node - linkType: hard - -"@polkadot/x-randomvalues@npm:8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-randomvalues@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - checksum: 10/a3abea5f753087354ffe9c253448b06b2bad9a1c623babbd1994f06a06116d2b0c8aa6490ff09861910468a652b15b52ef02edae4ad2c08f7d83506a2561d597 - languageName: node - linkType: hard - -"@polkadot/x-rxjs@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-rxjs@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - rxjs: "npm:^6.6.7" - checksum: 10/347c7c35a43f57c325ac5715f89262f4f7fe19326bdeb37f724b423961c9f5168ec2ff31ceeee377e0837bc34e1074161ff02066017146c935ddbeaad2d283c4 - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-textdecoder@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - checksum: 10/92fd2da99baa8124a723de8a0523f20bef606351e5bd0e38a5f1635bef19ac1627b595d66726075a3ac85f65255a544a36443c596720f28cbaf70ba6eb654651 - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-textdecoder@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/ba8ebe34cce1445a78d4eb744c8cfcf068cebfaf6c8efca23e1cdb037e8769cb2738b77b7266e3f86cd2459bb3eb87744f9518cba76e76fca609a16e6b84789e - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:13.5.9": - version: 13.5.9 - resolution: "@polkadot/x-textdecoder@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - tslib: "npm:^2.8.0" - checksum: 10/30d7838f40181add484635c22cecf3be1b8ef53f8ff03a83f16b5bb8881332ef4952a9c564696941d3477a4c2aa83a040a6a45544d19adebf2980568cb46889b - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-textdecoder@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/b33f51f93046fdab0c20b6cc764f52051a06403467fbe8c8742bca5e89ed492ecbb69e4f90a1f8090c330c3ccdcd63311cc695b8f7401212e9085c3804724970 - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-textdecoder@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-global": "npm:6.11.1" - checksum: 10/6daf7246a0bf74afd2eecd11c63b75499ae07a1d689c4f813ad2b69fb4292b0484889b950a5758958ce4e3bcedea3458f467dc13a3fa3e1366d33c32678d69b6 - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/x-textdecoder@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/x-global": "npm:7.9.2" - checksum: 10/8161e0aa93c45d2f33fcaf8a41db3b6da8e3fac42df11da63d5d31a0b68bdbf73afdf2534fdc7c90daf1103f4fe22caee1bafda0460b2502138ffbafe89ea23f - languageName: node - linkType: hard - -"@polkadot/x-textdecoder@npm:8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-textdecoder@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - checksum: 10/00e20d74d1ec3b999c978ffd94eb0e62f00e8be53d2155a77105fe411fb994671046eca57ab8b6d1064228f023b31f40e18a59b5e2124d1992c4bcf45b698ca4 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-textencoder@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - checksum: 10/a9c73566175202b6423a431519fdf0ae7eb25fa41a6df9cd0d6e252ec104146530acce79eaf0aca515c4cfdad3c85335709be4181b09c21f43edc9658e46ef29 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-textencoder@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - tslib: "npm:^2.6.2" - checksum: 10/b2e721d19660f7bcf3995d695fac5d78d4bc8c5fd0632ec0735eb20dd9b4b79fad1ce7dfe7ade202c4ace5cd2d6b8ac663bb4dca273afa050f73cf1e99498f82 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:13.5.9": - version: 13.5.9 - resolution: "@polkadot/x-textencoder@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - tslib: "npm:^2.8.0" - checksum: 10/c72352f3b603ad9d88192889901ec78088cdac4913b6c147a2b0078e230816d25f7baa0f734636bfeeecbea74c6597aa453e5b2de87e4ca0f2c02ea87a2ad376 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-textencoder@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - checksum: 10/9627aed6c660c04ee7c633fbe99c68fb172c35ce5e9bdb9afa3ef4d245f8f99ff5da552d6088b25343238d243adedaab7cbd54b7fba5121fe5e3c612337ef404 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-textencoder@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-global": "npm:6.11.1" - checksum: 10/29f740cc230b3235a71e718b3a240a8f6892f675cd04bc9d995937d9053af16bc117161ed285d4bd55d5ddfab6389b9d4736c74f41eeef7196ec175519c83934 - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:7.9.2": - version: 7.9.2 - resolution: "@polkadot/x-textencoder@npm:7.9.2" - dependencies: - "@babel/runtime": "npm:^7.16.3" - "@polkadot/x-global": "npm:7.9.2" - checksum: 10/b2d3df5dc0c65b016928a869eee0236d5d6a8ef46917b2db40bbfe60b696721adaf937f41c4f31348197ec472721ea3f8460337ee6527cafd5cce44358371e8c - languageName: node - linkType: hard - -"@polkadot/x-textencoder@npm:8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-textencoder@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - checksum: 10/29f5c7a1f1c17fc1bb1a494781955645b72f434f5322e9ab8b79307c45c0c46e669426c609ae10a863f877063d735a0786ef84c93d28bd5f0b1b4713f2572e71 - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^10.4.2": - version: 10.4.2 - resolution: "@polkadot/x-ws@npm:10.4.2" - dependencies: - "@babel/runtime": "npm:^7.20.13" - "@polkadot/x-global": "npm:10.4.2" - "@types/websocket": "npm:^1.0.5" - websocket: "npm:^1.0.34" - checksum: 10/465279d7f186bc243ffc5ecd55839ee20e3e061d8c85a42c47fc50cb519ee2bd79d1106751f971f95124fd19ab9745be2f53535bfa79defe5bbf973bdfd56926 - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^12.6.2": - version: 12.6.2 - resolution: "@polkadot/x-ws@npm:12.6.2" - dependencies: - "@polkadot/x-global": "npm:12.6.2" - tslib: "npm:^2.6.2" - ws: "npm:^8.15.1" - checksum: 10/de987c0a9d5df7d9eb17d96fd47afb2417eb85b7126e4e11bc4fe7dc908b54307390a1e3da61d251cd5f1f6edd054712f018bdc695ce946e0267806d1f050119 - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^13.4.4": - version: 13.5.9 - resolution: "@polkadot/x-ws@npm:13.5.9" - dependencies: - "@polkadot/x-global": "npm:13.5.9" - tslib: "npm:^2.8.0" - ws: "npm:^8.18.0" - checksum: 10/e7582f33452b6ab6442cf5df08a026fd5f9af3baf9028f2821e2d211322ecaae9005d3048bd46ff28e75adeb19aa9ba83c75fe4ce63ed642108a265e7ced8fbd - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^14.0.1": - version: 14.0.1 - resolution: "@polkadot/x-ws@npm:14.0.1" - dependencies: - "@polkadot/x-global": "npm:14.0.1" - tslib: "npm:^2.8.0" - ws: "npm:^8.18.0" - checksum: 10/7504fd086619476599bab21aecfdd3699eb9a00518d1bf2e25d07cd838c46d2b887819f1070ad552373a3b33f2484de94d8689f95a67de1aa9d402938e26d19b - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^6.11.1": - version: 6.11.1 - resolution: "@polkadot/x-ws@npm:6.11.1" - dependencies: - "@babel/runtime": "npm:^7.14.6" - "@polkadot/x-global": "npm:6.11.1" - "@types/websocket": "npm:^1.0.3" - websocket: "npm:^1.0.34" - checksum: 10/056b7e03d7bc643ab2d4d3beba7fa97e3dcab8c9cb152677610214ecc34f0c02c2ae7e40d33903c8aeafa0f9c20e106d94785849ca1b9c890e031b1ecd98a9b8 - languageName: node - linkType: hard - -"@polkadot/x-ws@npm:^8.7.1": - version: 8.7.1 - resolution: "@polkadot/x-ws@npm:8.7.1" - dependencies: - "@babel/runtime": "npm:^7.17.8" - "@polkadot/x-global": "npm:8.7.1" - "@types/websocket": "npm:^1.0.5" - websocket: "npm:^1.0.34" - checksum: 10/9137f955bf92f49bf831457ebc10370ca26bb9f0dce1dee3b2fae4eeab3a90377a176940f845b13a11836b483c03482713eda64fa49958a620ee182495e20b76 - languageName: node - linkType: hard - -"@polymeshassociation/polymesh-types@npm:5.7.0": - version: 5.7.0 - resolution: "@polymeshassociation/polymesh-types@npm:5.7.0" - checksum: 10/7beefbe20ceb896a739e12241af8ac02245af0bc7383b7c36bcbd019d559eae2bcc27f06034f7845989674568a7fc2cd3b16793d2cd1499cbd5cf681ac088799 - languageName: node - linkType: hard - -"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2": - version: 1.1.2 - resolution: "@protobufjs/aspromise@npm:1.1.2" - checksum: 10/8a938d84fe4889411296db66b29287bd61ea3c14c2d23e7a8325f46a2b8ce899857c5f038d65d7641805e6c1d06b495525c7faf00c44f85a7ee6476649034969 - languageName: node - linkType: hard - -"@protobufjs/base64@npm:^1.1.2": - version: 1.1.2 - resolution: "@protobufjs/base64@npm:1.1.2" - checksum: 10/c71b100daeb3c9bdccab5cbc29495b906ba0ae22ceedc200e1ba49717d9c4ab15a6256839cebb6f9c6acae4ed7c25c67e0a95e734f612b258261d1a3098fe342 - languageName: node - linkType: hard - -"@protobufjs/codegen@npm:^2.0.4": - version: 2.0.4 - resolution: "@protobufjs/codegen@npm:2.0.4" - checksum: 10/c6ee5fa172a8464f5253174d3c2353ea520c2573ad7b6476983d9b1346f4d8f2b44aa29feb17a949b83c1816bc35286a5ea265ed9d8fdd2865acfa09668c0447 - languageName: node - linkType: hard - -"@protobufjs/eventemitter@npm:^1.1.0": - version: 1.1.0 - resolution: "@protobufjs/eventemitter@npm:1.1.0" - checksum: 10/03af3e99f17ad421283d054c88a06a30a615922a817741b43ca1b13e7c6b37820a37f6eba9980fb5150c54dba6e26cb6f7b64a6f7d8afa83596fafb3afa218c3 - languageName: node - linkType: hard - -"@protobufjs/fetch@npm:^1.1.0": - version: 1.1.0 - resolution: "@protobufjs/fetch@npm:1.1.0" - dependencies: - "@protobufjs/aspromise": "npm:^1.1.1" - "@protobufjs/inquire": "npm:^1.1.0" - checksum: 10/67ae40572ad536e4ef94269199f252c024b66e3059850906bdaee161ca1d75c73d04d35cd56f147a8a5a079f5808e342b99e61942c1dae15604ff0600b09a958 - languageName: node - linkType: hard - -"@protobufjs/float@npm:^1.0.2": - version: 1.0.2 - resolution: "@protobufjs/float@npm:1.0.2" - checksum: 10/634c2c989da0ef2f4f19373d64187e2a79f598c5fb7991afb689d29a2ea17c14b796b29725945fa34b9493c17fb799e08ac0a7ccaae460ee1757d3083ed35187 - languageName: node - linkType: hard - -"@protobufjs/inquire@npm:^1.1.0": - version: 1.1.0 - resolution: "@protobufjs/inquire@npm:1.1.0" - checksum: 10/c09efa34a5465cb120775e1a482136f2340a58b4abce7e93d72b8b5a9324a0e879275016ef9fcd73d72a4731639c54f2bb755bb82f916e4a78892d1d840bb3d2 - languageName: node - linkType: hard - -"@protobufjs/path@npm:^1.1.2": - version: 1.1.2 - resolution: "@protobufjs/path@npm:1.1.2" - checksum: 10/bb709567935fd385a86ad1f575aea98131bbd719c743fb9b6edd6b47ede429ff71a801cecbd64fc72deebf4e08b8f1bd8062793178cdaed3713b8d15771f9b83 - languageName: node - linkType: hard - -"@protobufjs/pool@npm:^1.1.0": - version: 1.1.0 - resolution: "@protobufjs/pool@npm:1.1.0" - checksum: 10/b9c7047647f6af28e92aac54f6f7c1f7ff31b201b4bfcc7a415b2861528854fce3ec666d7e7e10fd744da905f7d4aef2205bbcc8944ca0ca7a82e18134d00c46 - languageName: node - linkType: hard - -"@protobufjs/utf8@npm:^1.1.0": - version: 1.1.0 - resolution: "@protobufjs/utf8@npm:1.1.0" - checksum: 10/131e289c57534c1d73a0e55782d6751dd821db1583cb2f7f7e017c9d6747addaebe79f28120b2e0185395d990aad347fb14ffa73ef4096fa38508d61a0e64602 - languageName: node - linkType: hard - -"@remix-run/router@npm:1.23.2": - version: 1.23.2 - resolution: "@remix-run/router@npm:1.23.2" - checksum: 10/50eb497854881bbd2e1016d4eb83c935ecd618e1c3888b74718851317e3b04edbaae9fe1baa49ec08c5c52cfe7118f4664e37144813d9500f45f922d6602a782 - languageName: node - linkType: hard - -"@rollup/plugin-alias@npm:^5.1.1": - version: 5.1.1 - resolution: "@rollup/plugin-alias@npm:5.1.1" - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/1f1ab178aa2726c81e2ae1709f73b3688491f14655b97c54d43bea35ac3f783f8855d701d1e5eac234e3ffe89fef56ce975726b036a97049fefa9b514686e55c - languageName: node - linkType: hard - -"@rollup/plugin-commonjs@npm:^25.0.8": - version: 25.0.8 - resolution: "@rollup/plugin-commonjs@npm:25.0.8" - dependencies: - "@rollup/pluginutils": "npm:^5.0.1" - commondir: "npm:^1.0.1" - estree-walker: "npm:^2.0.2" - glob: "npm:^8.0.3" - is-reference: "npm:1.2.1" - magic-string: "npm:^0.30.3" - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/2d6190450bdf2ca2c4ab71a35eb5bf245349ad7dab6fc84a3a4e65147fd694be816e3c31b575c9e55a70a2f82132b79092d1ee04358e6e504beb31a8c82178bb - languageName: node - linkType: hard - -"@rollup/plugin-dynamic-import-vars@npm:^2.1.5": - version: 2.1.5 - resolution: "@rollup/plugin-dynamic-import-vars@npm:2.1.5" - dependencies: - "@rollup/pluginutils": "npm:^5.0.1" - astring: "npm:^1.8.5" - estree-walker: "npm:^2.0.2" - fast-glob: "npm:^3.2.12" - magic-string: "npm:^0.30.3" - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/55e0fe0adc79e5f208b11479175607cd512743573dbdfee00fccf894304349d2e5a99edc6d269bbbbfbcae2a8fb7d5b7718fe8e517f79ca93003089a5c94b806 - languageName: node - linkType: hard - -"@rollup/plugin-inject@npm:^5.0.5": - version: 5.0.5 - resolution: "@rollup/plugin-inject@npm:5.0.5" - dependencies: - "@rollup/pluginutils": "npm:^5.0.1" - estree-walker: "npm:^2.0.2" - magic-string: "npm:^0.30.3" - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/1d0e68dff0a8785398a1b6a7dac0dc0a7f2ded22319c0b4c411053f34cbe237ca897d1fc97e5150fddbc3486480f21cbeeb69f0ae7f44ab1ae7307c164c7e704 - languageName: node - linkType: hard - -"@rollup/plugin-json@npm:^6.1.0": - version: 6.1.0 - resolution: "@rollup/plugin-json@npm:6.1.0" - dependencies: - "@rollup/pluginutils": "npm:^5.1.0" - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/cc018d20c80242a2b8b44fae61a968049cf31bb8406218187cc7cda35747616594e79452dd65722e7da6dd825b392e90d4599d43cd4461a02fefa2865945164e - languageName: node - linkType: hard - -"@rollup/plugin-node-resolve@npm:^15.3.1": - version: 15.3.1 - resolution: "@rollup/plugin-node-resolve@npm:15.3.1" - dependencies: - "@rollup/pluginutils": "npm:^5.0.1" - "@types/resolve": "npm:1.20.2" - deepmerge: "npm:^4.2.2" - is-module: "npm:^1.0.0" - resolve: "npm:^1.22.1" - peerDependencies: - rollup: ^2.78.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/874494c0daca8fb0d633a237dd9df0d30609b374326e57508710f2b6d7ddaa93d203d8daa0257960b2b6723f56dfec1177573126f31ff9604700303b6f5fdbe3 - languageName: node - linkType: hard - -"@rollup/pluginutils@npm:^5.0.1, @rollup/pluginutils@npm:^5.1.0": - version: 5.3.0 - resolution: "@rollup/pluginutils@npm:5.3.0" - dependencies: - "@types/estree": "npm:^1.0.0" - estree-walker: "npm:^2.0.2" - picomatch: "npm:^4.0.2" - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - checksum: 10/6c7dbab90e0ca5918a36875f745a0f30b47d5e0f45b42ed381ad8f7fed76b23e935766b66e3ae75375a42a80369569913abc8fd2529f4338471a1b2b4dfebaff - languageName: node - linkType: hard - -"@rollup/rollup-android-arm-eabi@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.55.1" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@rollup/rollup-android-arm64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-android-arm64@npm:4.55.1" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-arm64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-darwin-arm64@npm:4.55.1" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-x64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-darwin-x64@npm:4.55.1" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-freebsd-arm64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-freebsd-arm64@npm:4.55.1" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-freebsd-x64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-freebsd-x64@npm:4.55.1" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-gnueabihf@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.55.1" - conditions: os=linux & cpu=arm & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-musleabihf@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.55.1" - conditions: os=linux & cpu=arm & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.55.1" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-musl@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.55.1" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-loong64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-loong64-gnu@npm:4.55.1" - conditions: os=linux & cpu=loong64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-loong64-musl@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-loong64-musl@npm:4.55.1" - conditions: os=linux & cpu=loong64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-ppc64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-ppc64-gnu@npm:4.55.1" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-ppc64-musl@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-ppc64-musl@npm:4.55.1" - conditions: os=linux & cpu=ppc64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-riscv64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.55.1" - conditions: os=linux & cpu=riscv64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-riscv64-musl@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.55.1" - conditions: os=linux & cpu=riscv64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-s390x-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.55.1" - conditions: os=linux & cpu=s390x & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.55.1" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-musl@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.55.1" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-openbsd-x64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-openbsd-x64@npm:4.55.1" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-openharmony-arm64@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-openharmony-arm64@npm:4.55.1" - conditions: os=openharmony & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-win32-arm64-msvc@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.55.1" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-win32-ia32-msvc@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.55.1" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@rollup/rollup-win32-x64-gnu@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-win32-x64-gnu@npm:4.55.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-win32-x64-msvc@npm:4.55.1": - version: 4.55.1 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.55.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@rtsao/scc@npm:^1.1.0": - version: 1.1.0 - resolution: "@rtsao/scc@npm:1.1.0" - checksum: 10/17d04adf404e04c1e61391ed97bca5117d4c2767a76ae3e879390d6dec7b317fcae68afbf9e98badee075d0b64fa60f287729c4942021b4d19cd01db77385c01 - languageName: node - linkType: hard - -"@scure/base@npm:1.0.0": - version: 1.0.0 - resolution: "@scure/base@npm:1.0.0" - checksum: 10/cbf631e1f13536287e1f19137039d29757a008fad2d9b0c8113c140e1900519a95f4884cd61633fbb2adbe426c3c9bbfde2b77519145b3d81bac9853a52c599e - languageName: node - linkType: hard - -"@scure/base@npm:1.1.1": - version: 1.1.1 - resolution: "@scure/base@npm:1.1.1" - checksum: 10/9aaa525ac25215cbe1bde00733a2fd25e99f03793aa1fd2961c567bb62b60c8a3a485a7cb5d748c41604fca79d149de19b05e64449b770c0a04b9ae38d0b5b2b - languageName: node - linkType: hard - -"@scure/base@npm:^1.1.1, @scure/base@npm:^1.1.5, @scure/base@npm:^1.1.7": - version: 1.2.6 - resolution: "@scure/base@npm:1.2.6" - checksum: 10/c1a7bd5e0b0c8f94c36fbc220f4a67cc832b00e2d2065c7d8a404ed81ab1c94c5443def6d361a70fc382db3496e9487fb9941728f0584782b274c18a4bed4187 - languageName: node - linkType: hard - -"@scure/base@npm:^2.0.0": - version: 2.0.0 - resolution: "@scure/base@npm:2.0.0" - checksum: 10/8fb86024f22e9c532d513b8df8a672252e58bd5695920ce646162287f0accd38e89cab58722a738b3d247b5dcf7760362ae2d82d502be7e62a555f5d98f8a110 - languageName: node - linkType: hard - -"@scure/base@npm:~1.1.6": - version: 1.1.9 - resolution: "@scure/base@npm:1.1.9" - checksum: 10/f0ab7f687bbcdee2a01377fe3cd808bf63977999672751295b6a92625d5322f4754a96d40f6bd579bc367aad48ecf8a4e6d0390e70296e6ded1076f52adb16bb - languageName: node - linkType: hard - -"@scure/bip32@npm:1.4.0": - version: 1.4.0 - resolution: "@scure/bip32@npm:1.4.0" - dependencies: - "@noble/curves": "npm:~1.4.0" - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10/6cd5062d902564d9e970597ec8b1adacb415b2eadfbb95aee1a1a0480a52eb0de4d294d3753aa8b48548064c9795ed108d348a31a8ce3fc88785377bb12c63b9 - languageName: node - linkType: hard - -"@scure/bip39@npm:1.3.0": - version: 1.3.0 - resolution: "@scure/bip39@npm:1.3.0" - dependencies: - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10/7d71fd58153de22fe8cd65b525f6958a80487bc9d0fbc32c71c328aeafe41fa259f989d2f1e0fa4fdfeaf83b8fcf9310d52ed9862987e46c2f2bfb9dd8cf9fc1 - languageName: node - linkType: hard - -"@scure/sr25519@npm:^0.2.0": - version: 0.2.0 - resolution: "@scure/sr25519@npm:0.2.0" - dependencies: - "@noble/curves": "npm:~1.9.2" - "@noble/hashes": "npm:~1.8.0" - checksum: 10/3c47b474811642b43fd8c96f7846c9d88c9a06eefa7d6360b6421ebdfb6cf582e1e8fdce9ae4708b088a0e323cd6519c883c3a33a284c2fad592414b02f19049 - languageName: node - linkType: hard - -"@semantic-ui-react/event-stack@npm:^3.1.0": - version: 3.1.3 - resolution: "@semantic-ui-react/event-stack@npm:3.1.3" - dependencies: - exenv: "npm:^1.2.2" - prop-types: "npm:^15.6.2" - peerDependencies: - react: ^16.0.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.0.0 || ^17.0.0 || ^18.0.0 - checksum: 10/ffdb136adc9bfcc8a9ed12466bf91e73a5cffd1e707cb65da4a5b06e92d43e4f57ecd4c886f141518fa5b63915a1ba32bb7afe9453e16ae0186837cd9fc5ffed - languageName: node - linkType: hard - -"@sinclair/typebox@npm:^0.34.0": - version: 0.34.47 - resolution: "@sinclair/typebox@npm:0.34.47" - checksum: 10/a7f279020ae45ce21636424ec6439f0e302c28196ed7d2cddf2f80899580cb454f07ce3a033a1aea7ecbcfe47cefd9801c7514bf3adaaecfd1b7d9c83ca3eb9f - languageName: node - linkType: hard - -"@sindresorhus/is@npm:^0.14.0": - version: 0.14.0 - resolution: "@sindresorhus/is@npm:0.14.0" - checksum: 10/789cd128f0b43e158e657c4505539c8997905fcb5c06d750b7df778cab2b6887bc1eb8878026a20d84524528786ef69fc3d12a964ae56a478a87bcfc7f8272f3 - languageName: node - linkType: hard - -"@sindresorhus/is@npm:^4.0.0": - version: 4.6.0 - resolution: "@sindresorhus/is@npm:4.6.0" - checksum: 10/e7f36ed72abfcd5e0355f7423a72918b9748bb1ef370a59f3e5ad8d40b728b85d63b272f65f63eec1faf417cda89dcb0aeebe94015647b6054659c1442fe5ce0 - languageName: node - linkType: hard - -"@snowfork/snowbridge-types@npm:0.2.7": - version: 0.2.7 - resolution: "@snowfork/snowbridge-types@npm:0.2.7" - dependencies: - "@polkadot/api": "npm:^7.2.1" - "@polkadot/keyring": "npm:^8.2.2" - "@polkadot/types": "npm:^7.2.1" - checksum: 10/2b2b692d3b38a1f9d781bd76ace4ef79582b3861d551c520c6c99f3c7745922aacb346261d9f671890378c08002bb5a7b63bb41bf3d483407d15bf5c7aeb06ff - languageName: node - linkType: hard - -"@sora-substrate/type-definitions@npm:1.27.7": - version: 1.27.7 - resolution: "@sora-substrate/type-definitions@npm:1.27.7" - dependencies: - "@open-web3/orml-type-definitions": "npm:1.1.4" - checksum: 10/31ee7e11ff062ec3775faa3bc1c03fad534cb8cacbbb029ae62a1c28e2b07dd317922c87fc81be33bd67889754ed1d1b1444f708469026dc1ef8a48df1c698f8 - languageName: node - linkType: hard - -"@stardust-ui/react-component-event-listener@npm:~0.38.0": - version: 0.38.0 - resolution: "@stardust-ui/react-component-event-listener@npm:0.38.0" - dependencies: - "@babel/runtime": "npm:^7.1.2" - prop-types: "npm:^15.7.2" - peerDependencies: - react: ^16.8.0 - react-dom: ^16.8.0 - checksum: 10/27daee5e5728b9cb0bc494d5754a962b0f1bc2648030a149443444eac1f2536abd1fd8a00b6c4ef95d637ee196631bcdbb8901c6c29bc64d9eae648a35487170 - languageName: node - linkType: hard - -"@stardust-ui/react-component-ref@npm:~0.38.0": - version: 0.38.0 - resolution: "@stardust-ui/react-component-ref@npm:0.38.0" - dependencies: - "@babel/runtime": "npm:^7.1.2" - prop-types: "npm:^15.7.2" - react-is: "npm:^16.6.3" - peerDependencies: - react: ^16.8.0 - react-dom: ^16.8.0 - checksum: 10/912ec2d7ba15a85e5ccbd76b81b263fefe54f2059b17ded21c95cdeba0d4bdd205cfec323c42ccaa25e5c98302f71d28885a44f9a857b83d64ac802809d5f38b - languageName: node - linkType: hard - -"@subsocial/definitions@npm:0.8.14": - version: 0.8.14 - resolution: "@subsocial/definitions@npm:0.8.14" - dependencies: - "@polkadot/api": "npm:latest" - lodash.camelcase: "npm:^4.3.0" - checksum: 10/03bd2dab161815c3c109289c1d7a185fd0be880c66ab9be3ce670a7aa1547e8cf0a46b1131ffbb477314f444dbcb72a3b821da8e13964c6220702a47c08d0510 - languageName: node - linkType: hard - -"@substrate/connect-extension-protocol@npm:^1.0.0, @substrate/connect-extension-protocol@npm:^1.0.1": - version: 1.0.1 - resolution: "@substrate/connect-extension-protocol@npm:1.0.1" - checksum: 10/476e253f997ac3b00ada12becea390ef6566d2bb2b62a2d8ebe15d554faf5552d4c4a1a8be7324c1d95f673232638a19f5dd3fe7599a6287df4784f97d6dee47 - languageName: node - linkType: hard - -"@substrate/connect-extension-protocol@npm:^2.0.0": - version: 2.2.2 - resolution: "@substrate/connect-extension-protocol@npm:2.2.2" - checksum: 10/b5427526dafcbd0ec45d3ce7ef7a3d1018496cae7d8ef60f545d4e143420b3e51fe37af966f493e73f4cb9383bc78af756cdc19294e633240c8a86c620b3d8b5 - languageName: node - linkType: hard - -"@substrate/connect-known-chains@npm:^1.1.1, @substrate/connect-known-chains@npm:^1.1.5": - version: 1.10.3 - resolution: "@substrate/connect-known-chains@npm:1.10.3" - checksum: 10/b0b4e2914a9c8c0576196ff78f7d0a1ccaf3ee2a02f0b710ee5e79153fdcd4be36e5b7a58998ea72d13f9251dc13d448967114da14efc6aa1891eda284d066bb - languageName: node - linkType: hard - -"@substrate/connect@npm:0.7.0-alpha.0": - version: 0.7.0-alpha.0 - resolution: "@substrate/connect@npm:0.7.0-alpha.0" - dependencies: - "@substrate/connect-extension-protocol": "npm:^1.0.0" - "@substrate/smoldot-light": "npm:0.6.8" - eventemitter3: "npm:^4.0.7" - checksum: 10/94fddb10776897c2d36dc4012c195ecc07918f98398905ee6fab359b9f740d1af35dfbd2dcc0957e3e9c76146429052be76d3206fc7b55873a882be98cf55e89 - languageName: node - linkType: hard - -"@substrate/connect@npm:0.7.19": - version: 0.7.19 - resolution: "@substrate/connect@npm:0.7.19" - dependencies: - "@substrate/connect-extension-protocol": "npm:^1.0.1" - "@substrate/smoldot-light": "npm:0.7.9" - eventemitter3: "npm:^4.0.7" - checksum: 10/956558d26398947a3c6e6960c0bd612f917a83627338e40926d9f90c0a43dbe3ad3f4e4014f434d8d16e5ba13ca418a66c35d5e49b45ee20a9c0c8830a5f9415 - languageName: node - linkType: hard - -"@substrate/connect@npm:0.8.11": - version: 0.8.11 - resolution: "@substrate/connect@npm:0.8.11" - dependencies: - "@substrate/connect-extension-protocol": "npm:^2.0.0" - "@substrate/connect-known-chains": "npm:^1.1.5" - "@substrate/light-client-extension-helpers": "npm:^1.0.0" - smoldot: "npm:2.0.26" - checksum: 10/380ba85aa3aec4439fae2ee42173376615ca60262d9c37e6e43d1d65d0d0f63f38c009bb476e9a612b0b9985c1b5808c4d9a75aff9e1828c77e75c8b7584d824 - languageName: node - linkType: hard - -"@substrate/connect@npm:0.8.8": - version: 0.8.8 - resolution: "@substrate/connect@npm:0.8.8" - dependencies: - "@substrate/connect-extension-protocol": "npm:^2.0.0" - "@substrate/connect-known-chains": "npm:^1.1.1" - "@substrate/light-client-extension-helpers": "npm:^0.0.4" - smoldot: "npm:2.0.22" - checksum: 10/056908d641bdbf4a7d8f429e915a7a0519cd9417b6fa46db8591af49f3ac04a631b4a084a30d05a7ae9cfbb70905dc7698452eb252f4e1101c86e82eb4d8ca04 - languageName: node - linkType: hard - -"@substrate/light-client-extension-helpers@npm:^0.0.4": - version: 0.0.4 - resolution: "@substrate/light-client-extension-helpers@npm:0.0.4" - dependencies: - "@polkadot-api/client": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/json-rpc-provider": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/json-rpc-provider-proxy": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@polkadot-api/substrate-client": "npm:0.0.1-492c132563ea6b40ae1fc5470dec4cd18768d182.1.0" - "@substrate/connect-extension-protocol": "npm:^2.0.0" - "@substrate/connect-known-chains": "npm:^1.1.1" - rxjs: "npm:^7.8.1" - peerDependencies: - smoldot: 2.x - checksum: 10/f9a3c7775e41223b4e6f2020b4fe17efefebbdd2e7354ded73cac885181e101e7b22e36d47f0f40aec108b5142a9ca895433c51fccae026160a92ed9dbdae600 - languageName: node - linkType: hard - -"@substrate/light-client-extension-helpers@npm:^1.0.0": - version: 1.0.0 - resolution: "@substrate/light-client-extension-helpers@npm:1.0.0" - dependencies: - "@polkadot-api/json-rpc-provider": "npm:^0.0.1" - "@polkadot-api/json-rpc-provider-proxy": "npm:^0.1.0" - "@polkadot-api/observable-client": "npm:^0.3.0" - "@polkadot-api/substrate-client": "npm:^0.1.2" - "@substrate/connect-extension-protocol": "npm:^2.0.0" - "@substrate/connect-known-chains": "npm:^1.1.5" - rxjs: "npm:^7.8.1" - peerDependencies: - smoldot: 2.x - checksum: 10/ca0726e8271aa9eb4f1edbb13e7f6986d45c9a4ae9a73a1a14aa9a41552821ca291a33459b7e8fc1ec1bde1ead9336a8bca4fb8781c060d5cbdd7e59ca96cb2d - languageName: node - linkType: hard - -"@substrate/smoldot-light@npm:0.6.8": - version: 0.6.8 - resolution: "@substrate/smoldot-light@npm:0.6.8" - dependencies: - buffer: "npm:^6.0.1" - pako: "npm:^2.0.4" - websocket: "npm:^1.0.32" - checksum: 10/4f9ab3bd9ca482056550ef2523e4574e867aad2f90f4f5c0c04b8d513bea2e523a4e8230801b5f6813865ac92b1ecc24977eaaccffe6feb7109f0033c182ab7d - languageName: node - linkType: hard - -"@substrate/smoldot-light@npm:0.7.9": - version: 0.7.9 - resolution: "@substrate/smoldot-light@npm:0.7.9" - dependencies: - pako: "npm:^2.0.4" - ws: "npm:^8.8.1" - checksum: 10/5e3628cfa24f0bd263e4c28d39e336a94a54e7182ff7895817f5d708a462077002b9e7bba2d1fcc87e2482ec242550d02a51c6f8c2d3e4e69824ab6fa37c7885 - languageName: node - linkType: hard - -"@substrate/ss58-registry@npm:^1.17.0, @substrate/ss58-registry@npm:^1.38.0, @substrate/ss58-registry@npm:^1.44.0, @substrate/ss58-registry@npm:^1.51.0": - version: 1.51.0 - resolution: "@substrate/ss58-registry@npm:1.51.0" - checksum: 10/34eb21292f543a8be7c62ad3bcdae89d61c8a51e35a0be4687b6b4e955b5180a90a7691a9e6779f7509f8dfcfdfa372d8278087a9668521b9c501adb85c915b6 - languageName: node - linkType: hard - -"@szmarczak/http-timer@npm:^1.1.2": - version: 1.1.2 - resolution: "@szmarczak/http-timer@npm:1.1.2" - dependencies: - defer-to-connect: "npm:^1.0.1" - checksum: 10/9b63853bd53bff72c4990ebc9cd3f625bbab757247099af172564da6649a27a1d41b1a70cd849dd65b2a078300029c1c80bf3079e6a91e285da7b259eb147146 - languageName: node - linkType: hard - -"@szmarczak/http-timer@npm:^4.0.5": - version: 4.0.6 - resolution: "@szmarczak/http-timer@npm:4.0.6" - dependencies: - defer-to-connect: "npm:^2.0.0" - checksum: 10/c29df3bcec6fc3bdec2b17981d89d9c9fc9bd7d0c9bcfe92821dc533f4440bc890ccde79971838b4ceed1921d456973c4180d7175ee1d0023ad0562240a58d95 - languageName: node - linkType: hard - -"@testing-library/dom@npm:^9.0.0": - version: 9.3.4 - resolution: "@testing-library/dom@npm:9.3.4" - dependencies: - "@babel/code-frame": "npm:^7.10.4" - "@babel/runtime": "npm:^7.12.5" - "@types/aria-query": "npm:^5.0.1" - aria-query: "npm:5.1.3" - chalk: "npm:^4.1.0" - dom-accessibility-api: "npm:^0.5.9" - lz-string: "npm:^1.5.0" - pretty-format: "npm:^27.0.2" - checksum: 10/510da752ea76f4a10a0a4e3a77917b0302cf03effe576cd3534cab7e796533ee2b0e9fb6fb11b911a1ebd7c70a0bb6f235bf4f816c9b82b95b8fe0cddfd10975 - languageName: node - linkType: hard - -"@testing-library/jest-dom@npm:^5.17.0": - version: 5.17.0 - resolution: "@testing-library/jest-dom@npm:5.17.0" - dependencies: - "@adobe/css-tools": "npm:^4.0.1" - "@babel/runtime": "npm:^7.9.2" - "@types/testing-library__jest-dom": "npm:^5.9.1" - aria-query: "npm:^5.0.0" - chalk: "npm:^3.0.0" - css.escape: "npm:^1.5.1" - dom-accessibility-api: "npm:^0.5.6" - lodash: "npm:^4.17.15" - redent: "npm:^3.0.0" - checksum: 10/5a75f2094f935d2da58ea1d2b3d0c9f58dc0bca2592f2ca8125176596b4adba88b742b7553ef228e2085eadcb498ce6cece3e78402e34e6af7b6bc26bf0a0baa - languageName: node - linkType: hard - -"@testing-library/react@npm:^14.1.2": - version: 14.3.1 - resolution: "@testing-library/react@npm:14.3.1" - dependencies: - "@babel/runtime": "npm:^7.12.5" - "@testing-library/dom": "npm:^9.0.0" - "@types/react-dom": "npm:^18.0.0" - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - checksum: 10/83359dcdf9eaf067839f34604e1a181cbc14fc09f3a07672403700fcc6a900c4b8054ad1114fc24b4b9f89d84e2a09e1b7c9afce2306b1d4b4c9e30eb1cb12de - languageName: node - linkType: hard - -"@tootallnate/once@npm:2": - version: 2.0.0 - resolution: "@tootallnate/once@npm:2.0.0" - checksum: 10/ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 - languageName: node - linkType: hard - -"@tsconfig/strictest@npm:^2.0.2": - version: 2.0.8 - resolution: "@tsconfig/strictest@npm:2.0.8" - checksum: 10/74c493af61886c2653df94635ecb79a0d9e61ecc0136475698cfa4adbb8957583497a1907de4ed9882557fd22d187985a4e4ab28290db236d7a0dd8264a6ba44 - languageName: node - linkType: hard - -"@tybys/wasm-util@npm:^0.10.0": - version: 0.10.1 - resolution: "@tybys/wasm-util@npm:0.10.1" - dependencies: - tslib: "npm:^2.4.0" - checksum: 10/7fe0d239397aebb002ac4855d30c197c06a05ea8df8511350a3a5b1abeefe26167c60eda8a5508337571161e4c4b53d7c1342296123f9607af8705369de9fa7f - languageName: node - linkType: hard - -"@types/aria-query@npm:^5.0.1": - version: 5.0.4 - resolution: "@types/aria-query@npm:5.0.4" - checksum: 10/c0084c389dc030daeaf0115a92ce43a3f4d42fc8fef2d0e22112d87a42798d4a15aac413019d4a63f868327d52ad6740ab99609462b442fe6b9286b172d2e82e - languageName: node - linkType: hard - -"@types/bn.js@npm:^4.11.6": - version: 4.11.6 - resolution: "@types/bn.js@npm:4.11.6" - dependencies: - "@types/node": "npm:*" - checksum: 10/9ff3e7a1539a953c381c0d30ea2049162e3cab894cda91ee10f3a84d603f9afa2b2bc2a38fe9b427de94b6e2b7b77aefd217c1c7b07a10ae8d7499f9d6697a41 - languageName: node - linkType: hard - -"@types/bn.js@npm:^5.1.0, @types/bn.js@npm:^5.1.1, @types/bn.js@npm:^5.1.5, @types/bn.js@npm:^5.1.6": - version: 5.2.0 - resolution: "@types/bn.js@npm:5.2.0" - dependencies: - "@types/node": "npm:*" - checksum: 10/06c93841f74e4a5e5b81b74427d56303b223c9af36389b4cd3c562bda93f43c425c7e241aee1b0b881dde57238dc2e07f21d30d412b206a7dae4435af4c054e8 - languageName: node - linkType: hard - -"@types/body-parser@npm:*": - version: 1.19.6 - resolution: "@types/body-parser@npm:1.19.6" - dependencies: - "@types/connect": "npm:*" - "@types/node": "npm:*" - checksum: 10/33041e88eae00af2cfa0827e951e5f1751eafab2a8b6fce06cd89ef368a988907996436b1325180edaeddd1c0c7d0d0d4c20a6c9ff294a91e0039a9db9e9b658 - languageName: node - linkType: hard - -"@types/bonjour@npm:^3.5.9": - version: 3.5.13 - resolution: "@types/bonjour@npm:3.5.13" - dependencies: - "@types/node": "npm:*" - checksum: 10/e827570e097bd7d625a673c9c208af2d1a22fa3885c0a1646533cf24394c839c3e5f60ac1bc60c0ddcc69c0615078c9fb2c01b42596c7c582d895d974f2409ee - languageName: node - linkType: hard - -"@types/cacheable-request@npm:^6.0.1": - version: 6.0.3 - resolution: "@types/cacheable-request@npm:6.0.3" - dependencies: - "@types/http-cache-semantics": "npm:*" - "@types/keyv": "npm:^3.1.4" - "@types/node": "npm:*" - "@types/responselike": "npm:^1.0.0" - checksum: 10/159f9fdb2a1b7175eef453ae2ced5ea04c0d2b9610cc9ccd9f9abb066d36dacb1f37acd879ace10ad7cbb649490723feb396fb7307004c9670be29636304b988 - languageName: node - linkType: hard - -"@types/chart.js@npm:<3, @types/chart.js@npm:^2.9.41": - version: 2.9.41 - resolution: "@types/chart.js@npm:2.9.41" - dependencies: - moment: "npm:^2.10.2" - checksum: 10/302b251633bb469410c0a8bd3e9b30fdc08c14f9d92998095ae3849a1c3069f61e70df530e6598e6416b3abd13d15dd4eb4c45914300a679ce4c8dee21847301 - languageName: node - linkType: hard - -"@types/chartjs-plugin-crosshair@npm:^1.1.4": - version: 1.1.6 - resolution: "@types/chartjs-plugin-crosshair@npm:1.1.6" - dependencies: - "@types/chart.js": "npm:<3" - checksum: 10/998ab7361a50376d71c30809edf6ff18f81985704986fe56bded133922be46c40038f97e5a5d4e54d5de14a01783a3c98a01d69b9de47ee690638733879a851a - languageName: node - linkType: hard - -"@types/codeflask@npm:^1.4.6": - version: 1.4.6 - resolution: "@types/codeflask@npm:1.4.6" - dependencies: - "@types/prismjs": "npm:*" - checksum: 10/f388b179faeb54c7e56b0a59b66d1d7b3bbb62f6c64926a46de225405dc93fd5177499494bf2b3e710d9ea87582a3ce2f62a499d0e274fdd842e3b3059ce62af - languageName: node - linkType: hard - -"@types/connect-history-api-fallback@npm:^1.3.5": - version: 1.5.4 - resolution: "@types/connect-history-api-fallback@npm:1.5.4" - dependencies: - "@types/express-serve-static-core": "npm:*" - "@types/node": "npm:*" - checksum: 10/e1dee43b8570ffac02d2d47a2b4ba80d3ca0dd1840632dafb221da199e59dbe3778d3d7303c9e23c6b401f37c076935a5bc2aeae1c4e5feaefe1c371fe2073fd - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" - dependencies: - "@types/node": "npm:*" - checksum: 10/7eb1bc5342a9604facd57598a6c62621e244822442976c443efb84ff745246b10d06e8b309b6e80130026a396f19bf6793b7cecd7380169f369dac3bfc46fb99 - languageName: node - linkType: hard - -"@types/debug@npm:^4.0.0, @types/debug@npm:^4.1.6": - version: 4.1.12 - resolution: "@types/debug@npm:4.1.12" - dependencies: - "@types/ms": "npm:*" - checksum: 10/47876a852de8240bfdaf7481357af2b88cb660d30c72e73789abf00c499d6bc7cd5e52f41c915d1b9cd8ec9fef5b05688d7b7aef17f7f272c2d04679508d1053 - languageName: node - linkType: hard - -"@types/docker-modem@npm:*": - version: 3.0.6 - resolution: "@types/docker-modem@npm:3.0.6" - dependencies: - "@types/node": "npm:*" - "@types/ssh2": "npm:*" - checksum: 10/cc58e8189f6ec5a2b8ca890207402178a97ddac8c80d125dc65d8ab29034b5db736de15e99b91b2d74e66d14e26e73b6b8b33216613dd15fd3aa6b82c11a83ed - languageName: node - linkType: hard - -"@types/dockerode@npm:^3.3.35": - version: 3.3.47 - resolution: "@types/dockerode@npm:3.3.47" - dependencies: - "@types/docker-modem": "npm:*" - "@types/node": "npm:*" - "@types/ssh2": "npm:*" - checksum: 10/b840ae7872398a3b02e5789006a69d0cf5bb7ec6c0eb714c7ca04ca093add8de4cd06204ecd8f01388e347e62927cf4c599e8b7dba53e81c1350910da766d517 - languageName: node - linkType: hard - -"@types/eslint-scope@npm:^3.7.7": - version: 3.7.7 - resolution: "@types/eslint-scope@npm:3.7.7" - dependencies: - "@types/eslint": "npm:*" - "@types/estree": "npm:*" - checksum: 10/e2889a124aaab0b89af1bab5959847c5bec09809209255de0e63b9f54c629a94781daa04adb66bffcdd742f5e25a17614fb933965093c0eea64aacda4309380e - languageName: node - linkType: hard - -"@types/eslint@npm:*": - version: 9.6.1 - resolution: "@types/eslint@npm:9.6.1" - dependencies: - "@types/estree": "npm:*" - "@types/json-schema": "npm:*" - checksum: 10/719fcd255760168a43d0e306ef87548e1e15bffe361d5f4022b0f266575637acc0ecb85604ac97879ee8ae83c6a6d0613b0ed31d0209ddf22a0fe6d608fc56fe - languageName: node - linkType: hard - -"@types/estree-jsx@npm:^1.0.0": - version: 1.0.5 - resolution: "@types/estree-jsx@npm:1.0.5" - dependencies: - "@types/estree": "npm:*" - checksum: 10/a028ab0cd7b2950168a05c6a86026eb3a36a54a4adfae57f13911d7b49dffe573d9c2b28421b2d029b49b3d02fcd686611be2622dc3dad6d9791166c083f6008 - languageName: node - linkType: hard - -"@types/estree@npm:*, @types/estree@npm:1.0.8, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.8": - version: 1.0.8 - resolution: "@types/estree@npm:1.0.8" - checksum: 10/25a4c16a6752538ffde2826c2cc0c6491d90e69cd6187bef4a006dd2c3c45469f049e643d7e516c515f21484dc3d48fd5c870be158a5beb72f5baf3dc43e4099 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:*, @types/express-serve-static-core@npm:^5.0.0": - version: 5.1.0 - resolution: "@types/express-serve-static-core@npm:5.1.0" - dependencies: - "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10/c0b5b7ebc15b222f51e5705da2b8a5180335bf70927cc83c065784331aa9291984db1bfa4a14f5ba31b538dcb543561d9280046051fa4c9b7256eb971293e735 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:^4.17.33": - version: 4.19.7 - resolution: "@types/express-serve-static-core@npm:4.19.7" - dependencies: - "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10/a87830df965fb52eec6390accdba918a6f33f3d6cb96853be2cc2f74829a0bc09a29bddd9699127dbc17a170c7eebbe1294a9db9843b5a34dbc768f9ee844c01 - languageName: node - linkType: hard - -"@types/express@npm:*": - version: 5.0.6 - resolution: "@types/express@npm:5.0.6" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^5.0.0" - "@types/serve-static": "npm:^2" - checksum: 10/da2cc3de1b1a4d7f20ed3fb6f0a8ee08e99feb3c2eb5a8d643db77017d8d0e70fee9e95da38a73f51bcdf5eda3bb6435073c0271dc04fb16fda92e55daf911fa - languageName: node - linkType: hard - -"@types/express@npm:^4.17.13": - version: 4.17.25 - resolution: "@types/express@npm:4.17.25" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^4.17.33" - "@types/qs": "npm:*" - "@types/serve-static": "npm:^1" - checksum: 10/c309fdb79fb8569b5d8d8f11268d0160b271f8b38f0a82c20a0733e526baf033eb7a921cd51d54fe4333c616de9e31caf7d4f3ef73baaf212d61f23f460b0369 - languageName: node - linkType: hard - -"@types/file-saver@npm:^2.0.7": - version: 2.0.7 - resolution: "@types/file-saver@npm:2.0.7" - checksum: 10/c3d1cd80eab1214767922cabac97681f3fb688e82b74890450d70deaca49537949bbc96d80d363d91e8f0a4752c7164909cc8902d9721c5c4809baafc42a3801 - languageName: node - linkType: hard - -"@types/fs-extra@npm:9.0.13, @types/fs-extra@npm:^9.0.11": - version: 9.0.13 - resolution: "@types/fs-extra@npm:9.0.13" - dependencies: - "@types/node": "npm:*" - checksum: 10/ac545e377248039c596ef27d9f277b813507ebdd95d05f32fe7e9c67eb1ed567dafb4ba59f5fdcb6601dd7fd396ff9ba24f8c122e89cef096cdc17987c50a7fa - languageName: node - linkType: hard - -"@types/hast@npm:^3.0.0": - version: 3.0.4 - resolution: "@types/hast@npm:3.0.4" - dependencies: - "@types/unist": "npm:*" - checksum: 10/732920d81bb7605895776841b7658b4d8cc74a43a8fa176017cc0fb0ecc1a4c82a2b75a4fe6b71aa262b649d3fb62858c6789efa3793ea1d40269953af96ecb5 - languageName: node - linkType: hard - -"@types/history@npm:^4.7.11": - version: 4.7.11 - resolution: "@types/history@npm:4.7.11" - checksum: 10/1da529a3485f3015daf794effa3185493bf7dd2551c26932389c614f5a0aab76ab97645897d1eef9c74ead216a3848fcaa019f165bbd6e4b71da6eff164b4c68 - languageName: node - linkType: hard - -"@types/hoist-non-react-statics@npm:^3.3.0": - version: 3.3.7 - resolution: "@types/hoist-non-react-statics@npm:3.3.7" - dependencies: - hoist-non-react-statics: "npm:^3.3.0" - peerDependencies: - "@types/react": "*" - checksum: 10/13f610572c073970b3f43cc446396974fed786fee6eac2d6fd4b0ca5c985f13e79d4a0de58af4e5b4c68470d808567c3a14108d98edb7d526d4d46c8ec851ed1 - languageName: node - linkType: hard - -"@types/html-minifier-terser@npm:^6.0.0": - version: 6.1.0 - resolution: "@types/html-minifier-terser@npm:6.1.0" - checksum: 10/06bb3e1e8ebff43602c826d67f53f1fd3a6b9c751bfbc67d7ea4e85679446a639e20e60adad8c9d44ab4baf1337b3861b91e7e5e2be798575caf0cc1a5712552 - languageName: node - linkType: hard - -"@types/http-cache-semantics@npm:*": - version: 4.0.4 - resolution: "@types/http-cache-semantics@npm:4.0.4" - checksum: 10/a59566cff646025a5de396d6b3f44a39ab6a74f2ed8150692e0f31cc52f3661a68b04afe3166ebe0d566bd3259cb18522f46e949576d5204781cd6452b7fe0c5 - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 2.0.5 - resolution: "@types/http-errors@npm:2.0.5" - checksum: 10/a88da669366bc483e8f3b3eb3d34ada5f8d13eeeef851b1204d77e2ba6fc42aba4566d877cca5c095204a3f4349b87fe397e3e21288837bdd945dd514120755b - languageName: node - linkType: hard - -"@types/http-proxy@npm:^1.17.8": - version: 1.17.17 - resolution: "@types/http-proxy@npm:1.17.17" - dependencies: - "@types/node": "npm:*" - checksum: 10/893e46e12be576baa471cf2fc13a4f0e413eaf30a5850de8fdbea3040e138ad4171234c59b986cf7137ff20a1582b254bf0c44cfd715d5ed772e1ab94dd75cd1 - languageName: node - linkType: hard - -"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.6": - version: 2.0.6 - resolution: "@types/istanbul-lib-coverage@npm:2.0.6" - checksum: 10/3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 - languageName: node - linkType: hard - -"@types/istanbul-lib-report@npm:*": - version: 3.0.3 - resolution: "@types/istanbul-lib-report@npm:3.0.3" - dependencies: - "@types/istanbul-lib-coverage": "npm:*" - checksum: 10/b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 - languageName: node - linkType: hard - -"@types/istanbul-reports@npm:^3.0.4": - version: 3.0.4 - resolution: "@types/istanbul-reports@npm:3.0.4" - dependencies: - "@types/istanbul-lib-report": "npm:*" - checksum: 10/93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 - languageName: node - linkType: hard - -"@types/jest@npm:*": - version: 30.0.0 - resolution: "@types/jest@npm:30.0.0" - dependencies: - expect: "npm:^30.0.0" - pretty-format: "npm:^30.0.0" - checksum: 10/cdeaa924c68b5233d9ff92861a89e7042df2b0f197633729bcf3a31e65bd4e9426e751c5665b5ac2de0b222b33f100a5502da22aefce3d2c62931c715e88f209 - languageName: node - linkType: hard - -"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.9": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 10/1a3c3e06236e4c4aab89499c428d585527ce50c24fe8259e8b3926d3df4cfbbbcf306cfc73ddfb66cbafc973116efd15967020b0f738f63e09e64c7d260519e7 - languageName: node - linkType: hard - -"@types/json5@npm:^0.0.29": - version: 0.0.29 - resolution: "@types/json5@npm:0.0.29" - checksum: 10/4e5aed58cabb2bbf6f725da13421aa50a49abb6bc17bfab6c31b8774b073fa7b50d557c61f961a09a85f6056151190f8ac95f13f5b48136ba5841f7d4484ec56 - languageName: node - linkType: hard - -"@types/keyv@npm:^3.1.1, @types/keyv@npm:^3.1.4": - version: 3.1.4 - resolution: "@types/keyv@npm:3.1.4" - dependencies: - "@types/node": "npm:*" - checksum: 10/e009a2bfb50e90ca9b7c6e8f648f8464067271fd99116f881073fa6fa76dc8d0133181dd65e6614d5fb1220d671d67b0124aef7d97dc02d7e342ab143a47779d - languageName: node - linkType: hard - -"@types/mdast@npm:^4.0.0": - version: 4.0.4 - resolution: "@types/mdast@npm:4.0.4" - dependencies: - "@types/unist": "npm:*" - checksum: 10/efe3ec11b9ee0015a396c4fb4cd1b6f31b51b8ae9783c59560e6fc0bf6c2fa1dcc7fccaf45fa09a6c8b3397fab9dc8d431433935cae3835caa70a18f7fc775f8 - languageName: node - linkType: hard - -"@types/mime@npm:^1": - version: 1.3.5 - resolution: "@types/mime@npm:1.3.5" - checksum: 10/e29a5f9c4776f5229d84e525b7cd7dd960b51c30a0fb9a028c0821790b82fca9f672dab56561e2acd9e8eed51d431bde52eafdfef30f643586c4162f1aecfc78 - languageName: node - linkType: hard - -"@types/minimist@npm:^1.2.0": - version: 1.2.5 - resolution: "@types/minimist@npm:1.2.5" - checksum: 10/477047b606005058ab0263c4f58097136268007f320003c348794f74adedc3166ffc47c80ec3e94687787f2ab7f4e72c468223946e79892cf0fd9e25e9970a90 - languageName: node - linkType: hard - -"@types/ms@npm:*": - version: 2.1.0 - resolution: "@types/ms@npm:2.1.0" - checksum: 10/532d2ebb91937ccc4a89389715e5b47d4c66e708d15942fe6cc25add6dc37b2be058230a327dd50f43f89b8b6d5d52b74685a9e8f70516edfc9bdd6be910eff4 - languageName: node - linkType: hard - -"@types/node-fetch@npm:^2.5.10, @types/node-fetch@npm:^2.6.1, @types/node-fetch@npm:^2.6.2": - version: 2.6.13 - resolution: "@types/node-fetch@npm:2.6.13" - dependencies: - "@types/node": "npm:*" - form-data: "npm:^4.0.4" - checksum: 10/944d52214791ebba482ca1393a4f0d62b0dbac5f7343ff42c128b75d5356d8bcefd4df77771b55c1acd19d118e16e9bd5d2792819c51bc13402d1c87c0975435 - languageName: node - linkType: hard - -"@types/node-forge@npm:^1.3.0": - version: 1.3.14 - resolution: "@types/node-forge@npm:1.3.14" - dependencies: - "@types/node": "npm:*" - checksum: 10/500ce72435285fca145837da079b49a09a5bdf8391b0effc3eb2455783dd81ab129e574a36e1a0374a4823d889d5328177ebfd6fe45b432c0c43d48d790fe39c - languageName: node - linkType: hard - -"@types/node@npm:*, @types/node@npm:>=13.7.0": - version: 25.0.3 - resolution: "@types/node@npm:25.0.3" - dependencies: - undici-types: "npm:~7.16.0" - checksum: 10/5889b00f398eff4d4af28c3e5e97976f65c39a63fa3d7011f35cbf8640675fa6835e5dd47dce94d6ba48667711ddcd1f5c9bc5d93233e6a8e9ea1e502e8aa5a4 - languageName: node - linkType: hard - -"@types/node@npm:^18.11.18": - version: 18.19.130 - resolution: "@types/node@npm:18.19.130" - dependencies: - undici-types: "npm:~5.26.4" - checksum: 10/ebb85c6edcec78df926de27d828ecbeb1b3d77c165ceef95bfc26e171edbc1924245db4eb2d7d6230206fe6b1a1f7665714fe1c70739e9f5980d8ce31af6ef82 - languageName: node - linkType: hard - -"@types/normalize-package-data@npm:^2.4.0": - version: 2.4.4 - resolution: "@types/normalize-package-data@npm:2.4.4" - checksum: 10/65dff72b543997b7be8b0265eca7ace0e34b75c3e5fee31de11179d08fa7124a7a5587265d53d0409532ecb7f7fba662c2012807963e1f9b059653ec2c83ee05 - languageName: node - linkType: hard - -"@types/owasp-password-strength-test@npm:^1.3.2": - version: 1.3.2 - resolution: "@types/owasp-password-strength-test@npm:1.3.2" - checksum: 10/2c7d7adf3c31a78c0359c832d0196454f8d628aa337b48b475f1da26da3dc6d2f4b3f897f8b5db60cd0e95903a427412b75be853154c2dbeb15a8b433f726ff2 - languageName: node - linkType: hard - -"@types/plist@npm:^3.0.1": - version: 3.0.5 - resolution: "@types/plist@npm:3.0.5" - dependencies: - "@types/node": "npm:*" - xmlbuilder: "npm:>=11.0.1" - checksum: 10/71417189c9bc0d0cb4595106cea7c7a8a7274f64d2e9c4dd558efd7993bcfdada58be6917189e3be7c455fe4e5557004658fd13bd12254eafed8c56e0868b59e - languageName: node - linkType: hard - -"@types/prismjs@npm:*, @types/prismjs@npm:^1.9.1": - version: 1.26.5 - resolution: "@types/prismjs@npm:1.26.5" - checksum: 10/617099479db9550119d0f84272dc79d64b2cf3e0d7a17167fe740d55fdf0f155697d935409464392d164e62080c2c88d649cf4bc4fdd30a87127337536657277 - languageName: node - linkType: hard - -"@types/prop-types@npm:*": - version: 15.7.15 - resolution: "@types/prop-types@npm:15.7.15" - checksum: 10/31aa2f59b28f24da6fb4f1d70807dae2aedfce090ec63eaf9ea01727a9533ef6eaf017de5bff99fbccad7d1c9e644f52c6c2ba30869465dd22b1a7221c29f356 - languageName: node - linkType: hard - -"@types/punycode@npm:^2.1.3": - version: 2.1.4 - resolution: "@types/punycode@npm:2.1.4" - checksum: 10/16637bdd8e4f830243072668125f83b93b728085a05140ccc3e7801528d78c62cce5426b07d5cdc75e4f797e1644807c762777f651d1cd071ad0128835cdce5e - languageName: node - linkType: hard - -"@types/qs@npm:*": - version: 6.14.0 - resolution: "@types/qs@npm:6.14.0" - checksum: 10/1909205514d22b3cbc7c2314e2bd8056d5f05dfb21cf4377f0730ee5e338ea19957c41735d5e4806c746176563f50005bbab602d8358432e25d900bdf4970826 - languageName: node - linkType: hard - -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 10/95640233b689dfbd85b8c6ee268812a732cf36d5affead89e806fe30da9a430767af8ef2cd661024fd97e19d61f3dec75af2df5e80ec3bea000019ab7028629a - languageName: node - linkType: hard - -"@types/react-beautiful-dnd@npm:^13.1.7": - version: 13.1.8 - resolution: "@types/react-beautiful-dnd@npm:13.1.8" - dependencies: - "@types/react": "npm:*" - checksum: 10/cb8a182ed0ea6f680c7c343fcb4e54237437ca90dc88c2a70f4a203ec8ad0740e389e3ab7772c8cc1479f05e5a046bccbc33d54055b94e0fe5b22be030ab23d2 - languageName: node - linkType: hard - -"@types/react-copy-to-clipboard@npm:^5.0.7": - version: 5.0.7 - resolution: "@types/react-copy-to-clipboard@npm:5.0.7" - dependencies: - "@types/react": "npm:*" - checksum: 10/adc2970c8756e648daa06e294c422df3dc076a784344ab2ecb78a17ebd7e8e3dfd7f31e68c24267de4815cdeec573a743d952a308b45b8380f6b7912a9a8b911 - languageName: node - linkType: hard - -"@types/react-dom@npm:^18.0.0, @types/react-dom@npm:^18.2.18": - version: 18.3.7 - resolution: "@types/react-dom@npm:18.3.7" - peerDependencies: - "@types/react": ^18.0.0 - checksum: 10/317569219366d487a3103ba1e5e47154e95a002915fdcf73a44162c48fe49c3a57fcf7f57fc6979e70d447112681e6b13c6c3c1df289db8b544df4aab2d318f3 - languageName: node - linkType: hard - -"@types/react-redux@npm:^7.1.20": - version: 7.1.34 - resolution: "@types/react-redux@npm:7.1.34" - dependencies: - "@types/hoist-non-react-statics": "npm:^3.3.0" - "@types/react": "npm:*" - hoist-non-react-statics: "npm:^3.3.0" - redux: "npm:^4.0.0" - checksum: 10/febcd1db0c83c5002c6bee0fdda9e70da0653454ffbb72d6c37cbf2f5c005e06fb5271cff344d7164c385c944526565282de9a95ff379e040476b71d27fc2512 - languageName: node - linkType: hard - -"@types/react-router-dom@npm:^5.3.3": - version: 5.3.3 - resolution: "@types/react-router-dom@npm:5.3.3" - dependencies: - "@types/history": "npm:^4.7.11" - "@types/react": "npm:*" - "@types/react-router": "npm:*" - checksum: 10/28c4ea48909803c414bf5a08502acbb8ba414669b4b43bb51297c05fe5addc4df0b8fd00e0a9d1e3535ec4073ef38aaafac2c4a2b95b787167d113bc059beff3 - languageName: node - linkType: hard - -"@types/react-router@npm:*": - version: 5.1.20 - resolution: "@types/react-router@npm:5.1.20" - dependencies: - "@types/history": "npm:^4.7.11" - "@types/react": "npm:*" - checksum: 10/72d78d2f4a4752ec40940066b73d7758a0824c4d0cbeb380ae24c8b1cdacc21a6fc835a99d6849b5b295517a3df5466fc28be038f1040bd870f8e39e5ded43a4 - languageName: node - linkType: hard - -"@types/react@npm:*": - version: 19.2.7 - resolution: "@types/react@npm:19.2.7" - dependencies: - csstype: "npm:^3.2.2" - checksum: 10/dc0b756eee2c9782d282ae47eaa8d537b2a569eb889a6808c4b172d70fb690b2b1d8fe6239db451aa1c90d2a947cc21c9b537ce177ba9e6121468e403e4079c5 - languageName: node - linkType: hard - -"@types/react@npm:^18.2.45": - version: 18.3.27 - resolution: "@types/react@npm:18.3.27" - dependencies: - "@types/prop-types": "npm:*" - csstype: "npm:^3.2.2" - checksum: 10/90155820a2af315cad1ff47df695f3f2f568c12ad641a7805746a6a9a9aa6c40b1374e819e50d39afe0e375a6b9160a73176cbdb4e09807262bc6fcdc06e67db - languageName: node - linkType: hard - -"@types/resolve@npm:1.20.2": - version: 1.20.2 - resolution: "@types/resolve@npm:1.20.2" - checksum: 10/1bff0d3875e7e1557b6c030c465beca9bf3b1173ebc6937cac547654b0af3bb3ff0f16470e9c4d7c5dc308ad9ac8627c38dbff24ef698b66673ff5bd4ead7f7e - languageName: node - linkType: hard - -"@types/responselike@npm:^1.0.0": - version: 1.0.3 - resolution: "@types/responselike@npm:1.0.3" - dependencies: - "@types/node": "npm:*" - checksum: 10/6ac4b35723429b11b117e813c7acc42c3af8b5554caaf1fc750404c1ae59f9b7376bc69b9e9e194a5a97357a597c2228b7173d317320f0360d617b6425212f58 - languageName: node - linkType: hard - -"@types/retry@npm:0.12.0": - version: 0.12.0 - resolution: "@types/retry@npm:0.12.0" - checksum: 10/bbd0b88f4b3eba7b7acfc55ed09c65ef6f2e1bcb4ec9b4dca82c66566934351534317d294a770a7cc6c0468d5573c5350abab6e37c65f8ef254443e1b028e44d - languageName: node - linkType: hard - -"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": - version: 7.7.1 - resolution: "@types/semver@npm:7.7.1" - checksum: 10/8f09e7e6ca3ded67d78ba7a8f7535c8d9cf8ced83c52e7f3ac3c281fe8c689c3fe475d199d94390dc04fc681d51f2358b430bb7b2e21c62de24f2bee2c719068 - languageName: node - linkType: hard - -"@types/send@npm:*": - version: 1.2.1 - resolution: "@types/send@npm:1.2.1" - dependencies: - "@types/node": "npm:*" - checksum: 10/81ef5790037ba1d2d458392e4241501f0f8b4838cc8797e169e179e099410e12069ec68e8dbd39211cb097c4a9b1ff1682dbcea897ab4ce21dad93438b862d27 - languageName: node - linkType: hard - -"@types/send@npm:<1": - version: 0.17.6 - resolution: "@types/send@npm:0.17.6" - dependencies: - "@types/mime": "npm:^1" - "@types/node": "npm:*" - checksum: 10/4948ab32ab84a81a0073f8243dd48ee766bc80608d5391060360afd1249f83c08a7476f142669ac0b0b8831c89d909a88bcb392d1b39ee48b276a91b50f3d8d1 - languageName: node - linkType: hard - -"@types/serve-index@npm:^1.9.1": - version: 1.9.4 - resolution: "@types/serve-index@npm:1.9.4" - dependencies: - "@types/express": "npm:*" - checksum: 10/72727c88d54da5b13275ebfb75dcdc4aa12417bbe9da1939e017c4c5f0c906fae843aa4e0fbfe360e7ee9df2f3d388c21abfc488f77ce58693fb57809f8ded92 - languageName: node - linkType: hard - -"@types/serve-static@npm:^1, @types/serve-static@npm:^1.13.10": - version: 1.15.10 - resolution: "@types/serve-static@npm:1.15.10" - dependencies: - "@types/http-errors": "npm:*" - "@types/node": "npm:*" - "@types/send": "npm:<1" - checksum: 10/d9be72487540b9598e7d77260d533f241eb2e5db5181bb885ef2d6bc4592dad1c9e8c0e27f465d59478b2faf90edd2d535e834f20fbd9dd3c0928d43dc486404 - languageName: node - linkType: hard - -"@types/serve-static@npm:^2": - version: 2.2.0 - resolution: "@types/serve-static@npm:2.2.0" - dependencies: - "@types/http-errors": "npm:*" - "@types/node": "npm:*" - checksum: 10/f2bad1304c7d0d3b7221faff3e490c40129d3803f4fb1b2fb84f31f561071c5e6a4b876c41bbbe82d5645034eea936e946bcaaf993dac1093ce68b56effad6e0 - languageName: node - linkType: hard - -"@types/sockjs@npm:^0.3.33": - version: 0.3.36 - resolution: "@types/sockjs@npm:0.3.36" - dependencies: - "@types/node": "npm:*" - checksum: 10/b4b5381122465d80ea8b158537c00bc82317222d3fb31fd7229ff25b31fa89134abfbab969118da55622236bf3d8fee75759f3959908b5688991f492008f29bc - languageName: node - linkType: hard - -"@types/ssh2-streams@npm:*": - version: 0.1.13 - resolution: "@types/ssh2-streams@npm:0.1.13" - dependencies: - "@types/node": "npm:*" - checksum: 10/182c9de8384e11fcfed04e447c3c1d37f898ed4e7f0be0cc58b3bd5b23e22957c17939b68f709092cece758a4befa92913dd967115f643fa0e2dc629fc2e2383 - languageName: node - linkType: hard - -"@types/ssh2@npm:*": - version: 1.15.5 - resolution: "@types/ssh2@npm:1.15.5" - dependencies: - "@types/node": "npm:^18.11.18" - checksum: 10/dd6f29f4e96ea43aa61d29a4a3ad87ad8d11bf1bef637b2848958abd94b05d28754cc611eac13f52d43bd1f51afe7c660cd1c8533ae06878b5739888f4ea0d99 - languageName: node - linkType: hard - -"@types/ssh2@npm:^0.5.48": - version: 0.5.52 - resolution: "@types/ssh2@npm:0.5.52" - dependencies: - "@types/node": "npm:*" - "@types/ssh2-streams": "npm:*" - checksum: 10/fc2584af091da49da9d6628dd8a5e851b217bb9b1b732b0361903894f2730ab3fdf8634f954be34c5a513f7eb0b2772d059d64062bcf6b4a0eb73bfc83c4b858 - languageName: node - linkType: hard - -"@types/stack-utils@npm:^2.0.3": - version: 2.0.3 - resolution: "@types/stack-utils@npm:2.0.3" - checksum: 10/72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 - languageName: node - linkType: hard - -"@types/store@npm:^2.0.5": - version: 2.0.5 - resolution: "@types/store@npm:2.0.5" - checksum: 10/fd7fbc41805749d6b5180af335928b9b28ef0632fda8f240d4fb4f018a910a626bfa7f9f710e750adfd951ea1fc296b1f0527d1bfcebc0ee7dc136fb5c9e59c7 - languageName: node - linkType: hard - -"@types/stylis@npm:4.2.7": - version: 4.2.7 - resolution: "@types/stylis@npm:4.2.7" - checksum: 10/068c7fd64ee2e1649b06615da57c76dd9f5be1836e310ebf94aa08193c3544d48944079ce6e94ba89b72b716944f217234a86fecc28185246c1787f02ad0eae1 - languageName: node - linkType: hard - -"@types/testing-library__jest-dom@npm:^5.9.1": - version: 5.14.9 - resolution: "@types/testing-library__jest-dom@npm:5.14.9" - dependencies: - "@types/jest": "npm:*" - checksum: 10/e257de95a4a9385cc09ae4ca3396d23ad4b5cfb8e021a1ca3454c424c34636075f6fe151b2f881f79bf9d497aa04fbfae62449b135f293e8d2d614fa899898a8 - languageName: node - linkType: hard - -"@types/tmp@npm:^0.2.6": - version: 0.2.6 - resolution: "@types/tmp@npm:0.2.6" - checksum: 10/e14a094c10569d3b56805552b21417860ef21060d969000d5d5b53604a78c2bdac216f064b03797d4b07a081e0141dd3ab22bc36923e75300eb1c023f7252cc7 - languageName: node - linkType: hard - -"@types/unist@npm:*, @types/unist@npm:^3.0.0": - version: 3.0.3 - resolution: "@types/unist@npm:3.0.3" - checksum: 10/96e6453da9e075aaef1dc22482463898198acdc1eeb99b465e65e34303e2ec1e3b1ed4469a9118275ec284dc98019f63c3f5d49422f0e4ac707e5ab90fb3b71a - languageName: node - linkType: hard - -"@types/unist@npm:^2.0.0": - version: 2.0.11 - resolution: "@types/unist@npm:2.0.11" - checksum: 10/6d436e832bc35c6dde9f056ac515ebf2b3384a1d7f63679d12358766f9b313368077402e9c1126a14d827f10370a5485e628bf61aa91117cf4fc882423191a4e - languageName: node - linkType: hard - -"@types/uuid@npm:^9.0.2": - version: 9.0.8 - resolution: "@types/uuid@npm:9.0.8" - checksum: 10/b8c60b7ba8250356b5088302583d1704a4e1a13558d143c549c408bf8920535602ffc12394ede77f8a8083511b023704bc66d1345792714002bfa261b17c5275 - languageName: node - linkType: hard - -"@types/verror@npm:^1.10.3": - version: 1.10.11 - resolution: "@types/verror@npm:1.10.11" - checksum: 10/647a8c43f1510a7ed113426bc428e4d6914da5912946d77b1f6e37937493bc288f49656e1114794f0e5841c14cc1582887cf605952e4e4e0e77e3cd825790fad - languageName: node - linkType: hard - -"@types/w3c-web-usb@npm:^1.0.6": - version: 1.0.13 - resolution: "@types/w3c-web-usb@npm:1.0.13" - checksum: 10/5a33d8cc2a766d7162e0153fabef100e4cff6bbd1ef1f7e1ccd77d21fda6e496adb861c16df1b301aa5c731652b887ececeb1876274e9dafc75b999ce04f72ff - languageName: node - linkType: hard - -"@types/websocket@npm:^1.0.3, @types/websocket@npm:^1.0.5": - version: 1.0.10 - resolution: "@types/websocket@npm:1.0.10" - dependencies: - "@types/node": "npm:*" - checksum: 10/ceab9632bb93147ae42e5768e7ddb6ab764f0240f312e68d205db87606fc201eb7b8deedabb14fd47561c6108f3f19e188615fd6f6cf673cc832d64441ddf83e - languageName: node - linkType: hard - -"@types/ws@npm:8.5.3": - version: 8.5.3 - resolution: "@types/ws@npm:8.5.3" - dependencies: - "@types/node": "npm:*" - checksum: 10/08aac698ce6480b532d8311f790a8744ae489ccdd98f374cfe4b8245855439825c64b031abcbba4f30fb280da6cc2b02a4e261e16341d058ffaeecaa24ba2bd3 - languageName: node - linkType: hard - -"@types/ws@npm:^8.5.5": - version: 8.18.1 - resolution: "@types/ws@npm:8.18.1" - dependencies: - "@types/node": "npm:*" - checksum: 10/1ce05e3174dcacf28dae0e9b854ef1c9a12da44c7ed73617ab6897c5cbe4fccbb155a20be5508ae9a7dde2f83bd80f5cf3baa386b934fc4b40889ec963e94f3a - languageName: node - linkType: hard - -"@types/yargs-parser@npm:*": - version: 21.0.3 - resolution: "@types/yargs-parser@npm:21.0.3" - checksum: 10/a794eb750e8ebc6273a51b12a0002de41343ffe46befef460bdbb57262d187fdf608bc6615b7b11c462c63c3ceb70abe2564c8dd8ee0f7628f38a314f74a9b9b - languageName: node - linkType: hard - -"@types/yargs@npm:^17.0.33": - version: 17.0.35 - resolution: "@types/yargs@npm:17.0.35" - dependencies: - "@types/yargs-parser": "npm:*" - checksum: 10/47bcd4476a4194ea11617ea71cba8a1eddf5505fc39c44336c1a08d452a0de4486aedbc13f47a017c8efbcb5a8aa358d976880663732ebcbc6dbcbbecadb0581 - languageName: node - linkType: hard - -"@types/yauzl@npm:^2.9.1": - version: 2.10.3 - resolution: "@types/yauzl@npm:2.10.3" - dependencies: - "@types/node": "npm:*" - checksum: 10/5ee966ea7bd6b2802f31ad4281c92c4c0b6dfa593c378a2582c58541fa113bec3d70eb0696b34ad95e8e6861a884cba6c3e351285816693ed176222f840a8c08 - languageName: node - linkType: hard - -"@typescript-eslint/eslint-plugin@npm:^6.19.1": - version: 6.21.0 - resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" - dependencies: - "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:6.21.0" - "@typescript-eslint/type-utils": "npm:6.21.0" - "@typescript-eslint/utils": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - debug: "npm:^4.3.4" - graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.4" - natural-compare: "npm:^1.4.0" - semver: "npm:^7.5.4" - ts-api-utils: "npm:^1.0.1" - peerDependencies: - "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/a57de0f630789330204cc1531f86cfc68b391cafb1ba67c8992133f1baa2a09d629df66e71260b040de4c9a3ff1252952037093c4128b0d56c4dbb37720b4c1d - languageName: node - linkType: hard - -"@typescript-eslint/parser@npm:^6.19.1": - version: 6.21.0 - resolution: "@typescript-eslint/parser@npm:6.21.0" - dependencies: - "@typescript-eslint/scope-manager": "npm:6.21.0" - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/typescript-estree": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - debug: "npm:^4.3.4" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/4d51cdbc170e72275efc5ef5fce48a81ec431e4edde8374f4d0213d8d370a06823e1a61ae31d502a5f1b0d1f48fc4d29a1b1b5c2dcf809d66d3872ccf6e46ac7 - languageName: node - linkType: hard - -"@typescript-eslint/scope-manager@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/scope-manager@npm:5.62.0" - dependencies: - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/visitor-keys": "npm:5.62.0" - checksum: 10/e827770baa202223bc0387e2fd24f630690809e460435b7dc9af336c77322290a770d62bd5284260fa881c86074d6a9fd6c97b07382520b115f6786b8ed499da - languageName: node - linkType: hard - -"@typescript-eslint/scope-manager@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/scope-manager@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - checksum: 10/fe91ac52ca8e09356a71dc1a2f2c326480f3cccfec6b2b6d9154c1a90651ab8ea270b07c67df5678956c3bbf0bbe7113ab68f68f21b20912ea528b1214197395 - languageName: node - linkType: hard - -"@typescript-eslint/type-utils@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/type-utils@npm:6.21.0" - dependencies: - "@typescript-eslint/typescript-estree": "npm:6.21.0" - "@typescript-eslint/utils": "npm:6.21.0" - debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.0.1" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/d03fb3ee1caa71f3ce053505f1866268d7ed79ffb7fed18623f4a1253f5b8f2ffc92636d6fd08fcbaf5bd265a6de77bf192c53105131e4724643dfc910d705fc - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:4.33.0": - version: 4.33.0 - resolution: "@typescript-eslint/types@npm:4.33.0" - checksum: 10/c7ec55e6aef47ac49f712da52968c825552a23c59717f338f08c480e5336d592a689a324d21e2d370f48713a1302d7c78c14e6250bcea9b91f0b62ab6b2db3e1 - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/types@npm:5.62.0" - checksum: 10/24e8443177be84823242d6729d56af2c4b47bfc664dd411a1d730506abf2150d6c31bdefbbc6d97c8f91043e3a50e0c698239dcb145b79bb6b0c34469aaf6c45 - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/types@npm:6.21.0" - checksum: 10/e26da86d6f36ca5b6ef6322619f8ec55aabcd7d43c840c977ae13ae2c964c3091fc92eb33730d8be08927c9de38466c5323e78bfb270a9ff1d3611fe821046c5 - languageName: node - linkType: hard - -"@typescript-eslint/typescript-estree@npm:5.62.0, @typescript-eslint/typescript-estree@npm:^5.55.0": - version: 5.62.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" - dependencies: - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/visitor-keys": "npm:5.62.0" - debug: "npm:^4.3.4" - globby: "npm:^11.1.0" - is-glob: "npm:^4.0.3" - semver: "npm:^7.3.7" - tsutils: "npm:^3.21.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/06c975eb5f44b43bd19fadc2e1023c50cf87038fe4c0dd989d4331c67b3ff509b17fa60a3251896668ab4d7322bdc56162a9926971218d2e1a1874d2bef9a52e - languageName: node - linkType: hard - -"@typescript-eslint/typescript-estree@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - debug: "npm:^4.3.4" - globby: "npm:^11.1.0" - is-glob: "npm:^4.0.3" - minimatch: "npm:9.0.3" - semver: "npm:^7.5.4" - ts-api-utils: "npm:^1.0.1" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/b32fa35fca2a229e0f5f06793e5359ff9269f63e9705e858df95d55ca2cd7fdb5b3e75b284095a992c48c5fc46a1431a1a4b6747ede2dd08929dc1cbacc589b8 - languageName: node - linkType: hard - -"@typescript-eslint/typescript-estree@npm:^4.33.0": - version: 4.33.0 - resolution: "@typescript-eslint/typescript-estree@npm:4.33.0" - dependencies: - "@typescript-eslint/types": "npm:4.33.0" - "@typescript-eslint/visitor-keys": "npm:4.33.0" - debug: "npm:^4.3.1" - globby: "npm:^11.0.3" - is-glob: "npm:^4.0.1" - semver: "npm:^7.3.5" - tsutils: "npm:^3.21.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/e9409ec992d9d3c44efd53106bf63a6d5f6041e9dc359d54ea4b5f6787404cf44057cbd3090e9cc45ed4157dc631e398079f954490e50a4608cea1fbf9e69226 - languageName: node - linkType: hard - -"@typescript-eslint/utils@npm:6.21.0, @typescript-eslint/utils@npm:^6.0.0": - version: 6.21.0 - resolution: "@typescript-eslint/utils@npm:6.21.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@types/json-schema": "npm:^7.0.12" - "@types/semver": "npm:^7.5.0" - "@typescript-eslint/scope-manager": "npm:6.21.0" - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/typescript-estree": "npm:6.21.0" - semver: "npm:^7.5.4" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: 10/b404a2c55a425a79d054346ae123087d30c7ecf7ed7abcf680c47bf70c1de4fabadc63434f3f460b2fa63df76bc9e4a0b9fa2383bb8a9fcd62733fb5c4e4f3e3 - languageName: node - linkType: hard - -"@typescript-eslint/utils@npm:^5.10.0": - version: 5.62.0 - resolution: "@typescript-eslint/utils@npm:5.62.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@types/json-schema": "npm:^7.0.9" - "@types/semver": "npm:^7.3.12" - "@typescript-eslint/scope-manager": "npm:5.62.0" - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/typescript-estree": "npm:5.62.0" - eslint-scope: "npm:^5.1.1" - semver: "npm:^7.3.7" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/15ef13e43998a082b15f85db979f8d3ceb1f9ce4467b8016c267b1738d5e7cdb12aa90faf4b4e6dd6486c236cf9d33c463200465cf25ff997dbc0f12358550a1 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:4.33.0": - version: 4.33.0 - resolution: "@typescript-eslint/visitor-keys@npm:4.33.0" - dependencies: - "@typescript-eslint/types": "npm:4.33.0" - eslint-visitor-keys: "npm:^2.0.0" - checksum: 10/b28cd3f2c5cd919587d576e0cec8a95ea6c12a2e22dfec59ce70714efad4a7af4d467f9f964dd4ba1a4ad82d4a8c680a6d397e621b9be9d1df89b3a95380813f - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.62.0" - dependencies: - "@typescript-eslint/types": "npm:5.62.0" - eslint-visitor-keys: "npm:^3.3.0" - checksum: 10/dc613ab7569df9bbe0b2ca677635eb91839dfb2ca2c6fa47870a5da4f160db0b436f7ec0764362e756d4164e9445d49d5eb1ff0b87f4c058946ae9d8c92eb388 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/30422cdc1e2ffad203df40351a031254b272f9c6f2b7e02e9bfa39e3fc2c7b1c6130333b0057412968deda17a3a68a578a78929a8139c6acef44d9d841dc72e1 - languageName: node - linkType: hard - -"@ungap/structured-clone@npm:^1.0.0, @ungap/structured-clone@npm:^1.2.0": - version: 1.3.0 - resolution: "@ungap/structured-clone@npm:1.3.0" - checksum: 10/80d6910946f2b1552a2406650051c91bbd1f24a6bf854354203d84fe2714b3e8ce4618f49cc3410494173a1c1e8e9777372fe68dce74bd45faf0a7a1a6ccf448 - languageName: node - linkType: hard - -"@unique-nft/opal-testnet-types@npm:1003.70.0": - version: 1003.70.0 - resolution: "@unique-nft/opal-testnet-types@npm:1003.70.0" - peerDependencies: - "@polkadot/api": ^10.10.1 - "@polkadot/types": ^10.10.1 - checksum: 10/29c2a3a6c2a3efc18788bc7ff490361456eda8d61db2f087de6aad7cb7aa5e57bf52bbdddbb1e7872b67655535fe84feb43048671ba74e9300de94ac0a5fd968 - languageName: node - linkType: hard - -"@unique-nft/quartz-mainnet-types@npm:1003.70.0": - version: 1003.70.0 - resolution: "@unique-nft/quartz-mainnet-types@npm:1003.70.0" - peerDependencies: - "@polkadot/api": ^10.10.1 - "@polkadot/types": ^10.10.1 - checksum: 10/55881b33bc5e83aaecf6da2436dcac9738411735f0af6d94e245b11cc44f0535b9893fe1b9e1fc4b6ad00847b0ce7bff2c6c9ab9ff955175a0556f8bb9ea8ae2 - languageName: node - linkType: hard - -"@unique-nft/sapphire-mainnet-types@npm:1003.70.0": - version: 1003.70.0 - resolution: "@unique-nft/sapphire-mainnet-types@npm:1003.70.0" - peerDependencies: - "@polkadot/api": ^10.10.1 - "@polkadot/types": ^10.10.1 - checksum: 10/6824d97614cff065e93fb944b3f34cbf38ae0f9e92e82b1e57ea4020863aecb96091f4895c8ad6c08ebff7791f26dc7d7cfe2ba21c11153febf6b307fb6b092b - languageName: node - linkType: hard - -"@unique-nft/unique-mainnet-types@npm:1001.63.0": - version: 1001.63.0 - resolution: "@unique-nft/unique-mainnet-types@npm:1001.63.0" - peerDependencies: - "@polkadot/api": ^10.10.1 - "@polkadot/types": ^10.10.1 - checksum: 10/131afd9a9f77bb0bb78caff911fd1dc9999381b31689bd7b1dea4123efdb8b0c074683c8b0e4cd189cc060149cbd2720a98060902e93c2494237bf681edbba92 - languageName: node - linkType: hard - -"@unrs/resolver-binding-android-arm-eabi@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.11.1" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@unrs/resolver-binding-android-arm64@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-android-arm64@npm:1.11.1" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@unrs/resolver-binding-darwin-arm64@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.11.1" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@unrs/resolver-binding-darwin-x64@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-darwin-x64@npm:1.11.1" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@unrs/resolver-binding-freebsd-x64@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.11.1" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.1" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.1" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.1" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-arm64-musl@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.11.1" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.1" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.1" - conditions: os=linux & cpu=riscv64 & libc=glibc - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.1" - conditions: os=linux & cpu=riscv64 & libc=musl - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.1" - conditions: os=linux & cpu=s390x & libc=glibc - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-x64-gnu@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.11.1" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - -"@unrs/resolver-binding-linux-x64-musl@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.11.1" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - -"@unrs/resolver-binding-wasm32-wasi@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.11.1" - dependencies: - "@napi-rs/wasm-runtime": "npm:^0.2.11" - conditions: cpu=wasm32 - languageName: node - linkType: hard - -"@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.1" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.1" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@unrs/resolver-binding-win32-x64-msvc@npm:1.11.1": - version: 1.11.1 - resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.11.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@webassemblyjs/ast@npm:1.14.1, @webassemblyjs/ast@npm:^1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/ast@npm:1.14.1" - dependencies: - "@webassemblyjs/helper-numbers": "npm:1.13.2" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" - checksum: 10/f83e6abe38057f5d87c1fb356513a371a8b43c9b87657f2790741a66b1ef8ecf958d1391bc42f27c5fb33f58ab8286a38ea849fdd21f433cd4df1307424bab45 - languageName: node - linkType: hard - -"@webassemblyjs/floating-point-hex-parser@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.13.2" - checksum: 10/e866ec8433f4a70baa511df5e8f2ebcd6c24f4e2cc6274c7c5aabe2bcce3459ea4680e0f35d450e1f3602acf3913b6b8e4f15069c8cfd34ae8609fb9a7d01795 - languageName: node - linkType: hard - -"@webassemblyjs/helper-api-error@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/helper-api-error@npm:1.13.2" - checksum: 10/48b5df7fd3095bb252f59a139fe2cbd999a62ac9b488123e9a0da3906ad8a2f2da7b2eb21d328c01a90da987380928706395c2897d1f3ed9e2125b6d75a920d0 - languageName: node - linkType: hard - -"@webassemblyjs/helper-buffer@npm:1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/helper-buffer@npm:1.14.1" - checksum: 10/9690afeafa5e765a34620aa6216e9d40f9126d4e37e9726a2594bf60cab6b211ef20ab6670fd3c4449dd4a3497e69e49b2b725c8da0fb213208c7f45f15f5d5b - languageName: node - linkType: hard - -"@webassemblyjs/helper-numbers@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/helper-numbers@npm:1.13.2" - dependencies: - "@webassemblyjs/floating-point-hex-parser": "npm:1.13.2" - "@webassemblyjs/helper-api-error": "npm:1.13.2" - "@xtuc/long": "npm:4.2.2" - checksum: 10/e4c7d0b09811e1cda8eec644a022b560b28f4e974f50195375ccd007df5ee48a922a6dcff5ac40b6a8ec850d56d0ea6419318eee49fec7819ede14e90417a6a4 - languageName: node - linkType: hard - -"@webassemblyjs/helper-wasm-bytecode@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.13.2" - checksum: 10/3edd191fff7296df1ef3b023bdbe6cb5ea668f6386fd197ccfce46015c6f2a8cc9763cfb86503a0b94973ad27996645afff2252ee39a236513833259a47af6ed - languageName: node - linkType: hard - -"@webassemblyjs/helper-wasm-section@npm:1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/helper-wasm-section@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@webassemblyjs/helper-buffer": "npm:1.14.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" - "@webassemblyjs/wasm-gen": "npm:1.14.1" - checksum: 10/6b73874f906532512371181d7088460f767966f26309e836060c5a8e4e4bfe6d523fb5f4c034b34aa22ebb1192815f95f0e264298769485c1f0980fdd63ae0ce - languageName: node - linkType: hard - -"@webassemblyjs/ieee754@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/ieee754@npm:1.13.2" - dependencies: - "@xtuc/ieee754": "npm:^1.2.0" - checksum: 10/d7e3520baa37a7309fa7db4d73d69fb869878853b1ebd4b168821bd03fcc4c0e1669c06231315b0039035d9a7a462e53de3ad982da4a426a4b0743b5888e8673 - languageName: node - linkType: hard - -"@webassemblyjs/leb128@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/leb128@npm:1.13.2" - dependencies: - "@xtuc/long": "npm:4.2.2" - checksum: 10/3a10542c86807061ec3230bac8ee732289c852b6bceb4b88ebd521a12fbcecec7c432848284b298154f28619e2746efbed19d6904aef06c49ef20a0b85f650cf - languageName: node - linkType: hard - -"@webassemblyjs/utf8@npm:1.13.2": - version: 1.13.2 - resolution: "@webassemblyjs/utf8@npm:1.13.2" - checksum: 10/27885e5d19f339501feb210867d69613f281eda695ac508f04d69fa3398133d05b6870969c0242b054dc05420ed1cc49a64dea4fe0588c18d211cddb0117cc54 - languageName: node - linkType: hard - -"@webassemblyjs/wasm-edit@npm:^1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/wasm-edit@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@webassemblyjs/helper-buffer": "npm:1.14.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" - "@webassemblyjs/helper-wasm-section": "npm:1.14.1" - "@webassemblyjs/wasm-gen": "npm:1.14.1" - "@webassemblyjs/wasm-opt": "npm:1.14.1" - "@webassemblyjs/wasm-parser": "npm:1.14.1" - "@webassemblyjs/wast-printer": "npm:1.14.1" - checksum: 10/c62c50eadcf80876713f8c9f24106b18cf208160ab842fcb92060fd78c37bf37e7fcf0b7cbf1afc05d230277c2ce0f3f728432082c472dd1293e184a95f9dbdd - languageName: node - linkType: hard - -"@webassemblyjs/wasm-gen@npm:1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/wasm-gen@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" - "@webassemblyjs/ieee754": "npm:1.13.2" - "@webassemblyjs/leb128": "npm:1.13.2" - "@webassemblyjs/utf8": "npm:1.13.2" - checksum: 10/6085166b0987d3031355fe17a4f9ef0f412e08098d95454059aced2bd72a4c3df2bc099fa4d32d640551fc3eca1ac1a997b44432e46dc9d84642688e42c17ed4 - languageName: node - linkType: hard - -"@webassemblyjs/wasm-opt@npm:1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/wasm-opt@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@webassemblyjs/helper-buffer": "npm:1.14.1" - "@webassemblyjs/wasm-gen": "npm:1.14.1" - "@webassemblyjs/wasm-parser": "npm:1.14.1" - checksum: 10/fa5d1ef8d2156e7390927f938f513b7fb4440dd6804b3d6c8622b7b1cf25a3abf1a5809f615896d4918e04b27b52bc3cbcf18faf2d563cb563ae0a9204a492db - languageName: node - linkType: hard - -"@webassemblyjs/wasm-parser@npm:1.14.1, @webassemblyjs/wasm-parser@npm:^1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/wasm-parser@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@webassemblyjs/helper-api-error": "npm:1.13.2" - "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" - "@webassemblyjs/ieee754": "npm:1.13.2" - "@webassemblyjs/leb128": "npm:1.13.2" - "@webassemblyjs/utf8": "npm:1.13.2" - checksum: 10/07d9805fda88a893c984ed93d5a772d20d671e9731358ab61c6c1af8e0e58d1c42fc230c18974dfddebc9d2dd7775d514ba4d445e70080b16478b4b16c39c7d9 - languageName: node - linkType: hard - -"@webassemblyjs/wast-printer@npm:1.14.1": - version: 1.14.1 - resolution: "@webassemblyjs/wast-printer@npm:1.14.1" - dependencies: - "@webassemblyjs/ast": "npm:1.14.1" - "@xtuc/long": "npm:4.2.2" - checksum: 10/cef09aad2fcd291bfcf9efdae2ea1e961a1ba0f925d1d9dcdd8c746d32fbaf431b6d26a0241699c0e39f82139018aa720b4ceb84ac6f4c78f13072747480db69 - languageName: node - linkType: hard - -"@webpack-cli/configtest@npm:^2.1.1": - version: 2.1.1 - resolution: "@webpack-cli/configtest@npm:2.1.1" - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - checksum: 10/9f9f9145c2d05471fc83d426db1df85cf49f329836b0c4b9f46b6948bed4b013464c00622b136d2a0a26993ce2306976682592245b08ee717500b1db45009a72 - languageName: node - linkType: hard - -"@webpack-cli/info@npm:^2.0.2": - version: 2.0.2 - resolution: "@webpack-cli/info@npm:2.0.2" - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - checksum: 10/8f9a178afca5c82e113aed1efa552d64ee5ae4fdff63fe747c096a981ec74f18a5d07bd6e89bbe6715c3e57d96eea024a410e58977169489fe1df044c10dd94e - languageName: node - linkType: hard - -"@webpack-cli/serve@npm:^2.0.5": - version: 2.0.5 - resolution: "@webpack-cli/serve@npm:2.0.5" - peerDependencies: - webpack: 5.x.x - webpack-cli: 5.x.x - peerDependenciesMeta: - webpack-dev-server: - optional: true - checksum: 10/20424e5c1e664e4d7ab11facee7033bb729f6acd86493138069532934c1299c1426da72942822dedb00caca8fc60cc8aec1626e610ee0e8a9679e3614f555860 - languageName: node - linkType: hard - -"@xmldom/xmldom@npm:^0.8.8": - version: 0.8.11 - resolution: "@xmldom/xmldom@npm:0.8.11" - checksum: 10/f6d6ffdf71cf19d9b3c10e978fad40d2f85453bf5b2aa05be8aa0c5ad13f84690c3153316729213cc652d06ec12c605ddb0aa03886f1d73d51b974b4105d31e3 - languageName: node - linkType: hard - -"@xtuc/ieee754@npm:^1.2.0": - version: 1.2.0 - resolution: "@xtuc/ieee754@npm:1.2.0" - checksum: 10/ab033b032927d77e2f9fa67accdf31b1ca7440974c21c9cfabc8349e10ca2817646171c4f23be98d0e31896d6c2c3462a074fe37752e523abc3e45c79254259c - languageName: node - linkType: hard - -"@xtuc/long@npm:4.2.2": - version: 4.2.2 - resolution: "@xtuc/long@npm:4.2.2" - checksum: 10/7217bae9fe240e0d804969e7b2af11cb04ec608837c78b56ca88831991b287e232a0b7fce8d548beaff42aaf0197ffa471d81be6ac4c4e53b0148025a2c076ec - languageName: node - linkType: hard - -"@zeitgeistpm/type-defs@npm:1.0.0": - version: 1.0.0 - resolution: "@zeitgeistpm/type-defs@npm:1.0.0" - checksum: 10/a32837a9085431280ab7c108f5ece28667564f2d368c05560c8e3df006b66be1722e7c4c2c4fdc16c009d254d2b83c5daf72e977625882906c44f12da854aa56 - languageName: node - linkType: hard - -"@zeroio/type-definitions@npm:0.0.14": - version: 0.0.14 - resolution: "@zeroio/type-definitions@npm:0.0.14" - checksum: 10/0f21ffaa99cde5dbd897a585d771d05a33a7cc55f35135cfc8926df69ad8db755d9639bb4d4f1eb3378dadcd083a4bc15b2cee044e3435a299b81f77a2176e7e - languageName: node - linkType: hard - -"@zondax/ledger-js@npm:^1.2.0": - version: 1.3.1 - resolution: "@zondax/ledger-js@npm:1.3.1" - dependencies: - "@ledgerhq/hw-transport": "npm:6.31.9" - checksum: 10/d0354b61754fe4c57d38a6a2603d5d054af60ce4e7527733acc87e20a309890c314f2b8919e2be2a40a6b3e2d8ac7972d5bc9b895a68039237b43c1ff9e9c5ad - languageName: node - linkType: hard - -"@zondax/ledger-substrate@npm:1.1.1": - version: 1.1.1 - resolution: "@zondax/ledger-substrate@npm:1.1.1" - dependencies: - "@ledgerhq/hw-transport": "npm:6.31.4" - "@zondax/ledger-js": "npm:^1.2.0" - axios: "npm:^1.8.4" - checksum: 10/039ffef55b31870f82c6b0f20b518089ad9ce0295d695f880640cb586256adacd4a326c10157ccaf82e897abde7358f9e4e02c069dac672ec90881e21d250722 - languageName: node - linkType: hard - -"@zxing/browser@npm:^0.1.5": - version: 0.1.5 - resolution: "@zxing/browser@npm:0.1.5" - dependencies: - "@zxing/text-encoding": "npm:^0.9.0" - peerDependencies: - "@zxing/library": ^0.21.0 - dependenciesMeta: - "@zxing/text-encoding": - optional: true - checksum: 10/13df1471dc93b1a54c11df00caebe529fb5e4435d5876e606da048697a039098f5650724710e92cef2db746dbf89b72d04791fd89c6b9a6cf1c1b841dc24cb32 - languageName: node - linkType: hard - -"@zxing/library@npm:^0.21.2": - version: 0.21.3 - resolution: "@zxing/library@npm:0.21.3" - dependencies: - "@zxing/text-encoding": "npm:~0.9.0" - ts-custom-error: "npm:^3.2.1" - dependenciesMeta: - "@zxing/text-encoding": - optional: true - checksum: 10/867e7a9be38ea8636050ab5852440e012525c01cd8791448afd15b8ec3ca41de6594202e3f8c90b2d3677b381a6a186eab79e5a431f23d09eb7887cdec772772 - languageName: node - linkType: hard - -"@zxing/text-encoding@npm:^0.9.0, @zxing/text-encoding@npm:~0.9.0": - version: 0.9.0 - resolution: "@zxing/text-encoding@npm:0.9.0" - checksum: 10/268e4ef64b8eaa32b990240bdfd1f7b3e2b501a6ed866a565f7c9747f04ac884fbe0537fe12bb05d9241b98fb111270c0fd0023ef0a02d23a6619b4589e98f6b - languageName: node - linkType: hard - -"abbrev@npm:^4.0.0": - version: 4.0.0 - resolution: "abbrev@npm:4.0.0" - checksum: 10/e2f0c6a6708ad738b3e8f50233f4800de31ad41a6cdc50e0cbe51b76fed69fd0213516d92c15ce1a9985fca71a14606a9be22bf00f8475a58987b9bfb671c582 - languageName: node - linkType: hard - -"abitype@npm:0.7.1": - version: 0.7.1 - resolution: "abitype@npm:0.7.1" - peerDependencies: - typescript: ">=4.9.4" - zod: ^3 >=3.19.1 - peerDependenciesMeta: - zod: - optional: true - checksum: 10/deee4a18c9c7218ab2e5e57e07e4cb3e2f3e785657be364d098ab0587cd552c4fbb41e1bdddbc6fa52387f51ebd181461fe70a13127cc77091655775fdfb18fe - languageName: node - linkType: hard - -"abort-controller@npm:^3.0.0": - version: 3.0.0 - resolution: "abort-controller@npm:3.0.0" - dependencies: - event-target-shim: "npm:^5.0.0" - checksum: 10/ed84af329f1828327798229578b4fe03a4dd2596ba304083ebd2252666bdc1d7647d66d0b18704477e1f8aa315f055944aa6e859afebd341f12d0a53c37b4b40 - languageName: node - linkType: hard - -"abort-error@npm:^1.0.1": - version: 1.0.1 - resolution: "abort-error@npm:1.0.1" - checksum: 10/75a878035d478e7270ef99bd81012daae7914d66a417651976ab9e0cec562cb493366eafa6dfd844b7e49a50e3cef70883170b00329db58df507ed834af9dc8f - languageName: node - linkType: hard - -"accepts@npm:~1.3.4, accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10/67eaaa90e2917c58418e7a9b89392002d2b1ccd69bcca4799135d0c632f3b082f23f4ae4ddeedbced5aa59bcc7bdf4699c69ebed4593696c922462b7bc5744d6 - languageName: node - linkType: hard - -"accessibility-developer-tools@npm:^2.11.0": - version: 2.12.0 - resolution: "accessibility-developer-tools@npm:2.12.0" - checksum: 10/fae37743e03300ebc3dfd474f57df62f4c2ad8bb0a8d91f45c21aaf29fa37043126b3cf9e0f5d00eb51496adee382ddd479c7247a6a8e834f7c70af423f669d5 - languageName: node - linkType: hard - -"acorn-class-fields@npm:^0.3.7": - version: 0.3.7 - resolution: "acorn-class-fields@npm:0.3.7" - dependencies: - acorn-private-class-elements: "npm:^0.2.7" - peerDependencies: - acorn: ^6 || ^7 || ^8 - checksum: 10/02151a4d3f985707529fefcf1388583ec7ae3c99a7aaaf9f50ffd301b73d02c6c4842e04a431853eaaabb8fee421e35df060447cc8080e226a520ceaa5295b52 - languageName: node - linkType: hard - -"acorn-import-phases@npm:^1.0.3": - version: 1.0.4 - resolution: "acorn-import-phases@npm:1.0.4" - peerDependencies: - acorn: ^8.14.0 - checksum: 10/471050ac7d9b61909c837b426de9eeef2958997f6277ad7dea88d5894fd9b3245d8ed4a225c2ca44f814dbb20688009db7a80e525e8196fc9e98c5285b66161d - languageName: node - linkType: hard - -"acorn-jsx@npm:^5.3.1, acorn-jsx@npm:^5.3.2": - version: 5.3.2 - resolution: "acorn-jsx@npm:5.3.2" - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/d4371eaef7995530b5b5ca4183ff6f062ca17901a6d3f673c9ac011b01ede37e7a1f7f61f8f5cfe709e88054757bb8f3277dc4061087cdf4f2a1f90ccbcdb977 - languageName: node - linkType: hard - -"acorn-private-class-elements@npm:^0.2.7": - version: 0.2.7 - resolution: "acorn-private-class-elements@npm:0.2.7" - peerDependencies: - acorn: ^6.1.0 || ^7 || ^8 - checksum: 10/e4980847da236c56bb0ed87e38c89348d609701f2927e5db0757f4dbba1b773b459d8b98b4b80525ff34b24a5c2777f85e01ecd426a518a40ce8c6234a4d9486 - languageName: node - linkType: hard - -"acorn-private-methods@npm:^0.3.3": - version: 0.3.3 - resolution: "acorn-private-methods@npm:0.3.3" - dependencies: - acorn-private-class-elements: "npm:^0.2.7" - peerDependencies: - acorn: ^6 || ^7 || ^8 - checksum: 10/da692a68fb39020d0371e4d3c44c87780120b70b0751533c6f391a765df560a92b4a0914d5782cbd4fda58eda8bc4291bc0cb6a33b635486256ca63a1fb0bf13 - languageName: node - linkType: hard - -"acorn-stage3@npm:^4.0.0": - version: 4.0.0 - resolution: "acorn-stage3@npm:4.0.0" - dependencies: - acorn-class-fields: "npm:^0.3.7" - acorn-private-methods: "npm:^0.3.3" - acorn-static-class-features: "npm:^0.2.4" - peerDependencies: - acorn: ^7.4 || ^8 - checksum: 10/10c2322b6494a104ed212b97e9925b2d03b50e4f1e370ad50d9d5e9507f79092dc046802f13ca57ff681c91ef7c02e0f68469473431833603b79630d233f0476 - languageName: node - linkType: hard - -"acorn-static-class-features@npm:^0.2.4": - version: 0.2.4 - resolution: "acorn-static-class-features@npm:0.2.4" - dependencies: - acorn-private-class-elements: "npm:^0.2.7" - peerDependencies: - acorn: ^6.1.0 || ^7 || ^8 - checksum: 10/145ad623afc61f8417ce5cb6544d4c938099b313e59952eb50ca30b18c4a64ea3a30295c3063a599e90a8db03863606ca97873d52f93e1890e80bd9402ab3153 - languageName: node - linkType: hard - -"acorn-walk@npm:^8.0.0": - version: 8.3.4 - resolution: "acorn-walk@npm:8.3.4" - dependencies: - acorn: "npm:^8.11.0" - checksum: 10/871386764e1451c637bb8ab9f76f4995d408057e9909be6fb5ad68537ae3375d85e6a6f170b98989f44ab3ff6c74ad120bc2779a3d577606e7a0cd2b4efcaf77 - languageName: node - linkType: hard - -"acorn@npm:^5.2.1": - version: 5.7.4 - resolution: "acorn@npm:5.7.4" - bin: - acorn: bin/acorn - checksum: 10/97f2ae55e99aed81a7aa9039719c60283a66817fadb3152beb323ba6038824770512f807436e99090be38602f23bcbf6021867d86442616da471f1dfaca7c3d9 - languageName: node - linkType: hard - -"acorn@npm:^8.0.4, acorn@npm:^8.11.0, acorn@npm:^8.15.0, acorn@npm:^8.9.0": - version: 8.15.0 - resolution: "acorn@npm:8.15.0" - bin: - acorn: bin/acorn - checksum: 10/77f2de5051a631cf1729c090e5759148459cdb76b5f5c70f890503d629cf5052357b0ce783c0f976dd8a93c5150f59f6d18df1def3f502396a20f81282482fa4 - languageName: node - linkType: hard - -"agent-base@npm:6": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: "npm:4" - checksum: 10/21fb903e0917e5cb16591b4d0ef6a028a54b83ac30cd1fca58dece3d4e0990512a8723f9f83130d88a41e2af8b1f7be1386fda3ea2d181bb1a62155e75e95e23 - languageName: node - linkType: hard - -"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": - version: 7.1.4 - resolution: "agent-base@npm:7.1.4" - checksum: 10/79bef167247789f955aaba113bae74bf64aa1e1acca4b1d6bb444bdf91d82c3e07e9451ef6a6e2e35e8f71a6f97ce33e3d855a5328eb9fad1bc3cc4cfd031ed8 - languageName: node - linkType: hard - -"ajv-formats@npm:^2.1.1": - version: 2.1.1 - resolution: "ajv-formats@npm:2.1.1" - dependencies: - ajv: "npm:^8.0.0" - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - checksum: 10/70c263ded219bf277ffd9127f793b625f10a46113b2e901e150da41931fcfd7f5592da6d66862f4449bb157ffe65867c3294a7df1d661cc232c4163d5a1718ed - languageName: node - linkType: hard - -"ajv-keywords@npm:^3.4.1": - version: 3.5.2 - resolution: "ajv-keywords@npm:3.5.2" - peerDependencies: - ajv: ^6.9.1 - checksum: 10/d57c9d5bf8849bddcbd801b79bc3d2ddc736c2adb6b93a6a365429589dd7993ddbd5d37c6025ed6a7f89c27506b80131d5345c5b1fa6a97e40cd10a96bcd228c - languageName: node - linkType: hard - -"ajv-keywords@npm:^5.1.0": - version: 5.1.0 - resolution: "ajv-keywords@npm:5.1.0" - dependencies: - fast-deep-equal: "npm:^3.1.3" - peerDependencies: - ajv: ^8.8.2 - checksum: 10/5021f96ab7ddd03a4005326bd06f45f448ebfbb0fe7018b1b70b6c28142fa68372bda2057359814b83fd0b2d4c8726c297f0a7557b15377be7b56ce5344533d8 - languageName: node - linkType: hard - -"ajv@npm:^6.10.0, ajv@npm:^6.12.0, ajv@npm:^6.12.4": - version: 6.12.6 - resolution: "ajv@npm:6.12.6" - dependencies: - fast-deep-equal: "npm:^3.1.1" - fast-json-stable-stringify: "npm:^2.0.0" - json-schema-traverse: "npm:^0.4.1" - uri-js: "npm:^4.2.2" - checksum: 10/48d6ad21138d12eb4d16d878d630079a2bda25a04e745c07846a4ad768319533031e28872a9b3c5790fa1ec41aabdf2abed30a56e5a03ebc2cf92184b8ee306c - languageName: node - linkType: hard - -"ajv@npm:^8.0.0, ajv@npm:^8.9.0": - version: 8.17.1 - resolution: "ajv@npm:8.17.1" - dependencies: - fast-deep-equal: "npm:^3.1.3" - fast-uri: "npm:^3.0.1" - json-schema-traverse: "npm:^1.0.0" - require-from-string: "npm:^2.0.2" - checksum: 10/ee3c62162c953e91986c838f004132b6a253d700f1e51253b99791e2dbfdb39161bc950ebdc2f156f8568035bb5ed8be7bd78289cd9ecbf3381fe8f5b82e3f33 - languageName: node - linkType: hard - -"amdefine@npm:>=0.0.4": - version: 1.0.1 - resolution: "amdefine@npm:1.0.1" - checksum: 10/517df65fc33d3ff14fe5c0057e041b03d603a2254dea7968b05dfbfa3041eb8430ea6729e305bc428c03fad03f162de91a4b256692d27d7b81d3ee691312cffe - languageName: node - linkType: hard - -"ansi-align@npm:^3.0.0": - version: 3.0.1 - resolution: "ansi-align@npm:3.0.1" - dependencies: - string-width: "npm:^4.1.0" - checksum: 10/4c7e8b6a10eaf18874ecee964b5db62ac86d0b9266ad4987b3a1efcb5d11a9e12c881ee40d14951833135a8966f10a3efe43f9c78286a6e632f53d85ad28b9c0 - languageName: node - linkType: hard - -"ansi-escapes@npm:^4.2.1": - version: 4.3.2 - resolution: "ansi-escapes@npm:4.3.2" - dependencies: - type-fest: "npm:^0.21.3" - checksum: 10/8661034456193ffeda0c15c8c564a9636b0c04094b7f78bd01517929c17c504090a60f7a75f949f5af91289c264d3e1001d91492c1bd58efc8e100500ce04de2 - languageName: node - linkType: hard - -"ansi-html-community@npm:^0.0.8": - version: 0.0.8 - resolution: "ansi-html-community@npm:0.0.8" - bin: - ansi-html: bin/ansi-html - checksum: 10/08df3696720edacd001a8d53b197bb5728242c55484680117dab9f7633a6320e961a939bddd88ee5c71d4a64f3ddb49444d1c694bd0668adbb3f95ba114f2386 - languageName: node - linkType: hard - -"ansi-regex@npm:^5.0.1": - version: 5.0.1 - resolution: "ansi-regex@npm:5.0.1" - checksum: 10/2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b - languageName: node - linkType: hard - -"ansi-regex@npm:^6.0.1": - version: 6.2.2 - resolution: "ansi-regex@npm:6.2.2" - checksum: 10/9b17ce2c6daecc75bcd5966b9ad672c23b184dc3ed9bf3c98a0702f0d2f736c15c10d461913568f2cf527a5e64291c7473358885dd493305c84a1cfed66ba94f - languageName: node - linkType: hard - -"ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.0" - checksum: 10/d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 - languageName: node - linkType: hard - -"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" - dependencies: - color-convert: "npm:^2.0.1" - checksum: 10/b4494dfbfc7e4591b4711a396bd27e540f8153914123dccb4cdbbcb514015ada63a3809f362b9d8d4f6b17a706f1d7bea3c6f974b15fa5ae76b5b502070889ff - languageName: node - linkType: hard - -"ansi-styles@npm:^5.0.0, ansi-styles@npm:^5.2.0": - version: 5.2.0 - resolution: "ansi-styles@npm:5.2.0" - checksum: 10/d7f4e97ce0623aea6bc0d90dcd28881ee04cba06c570b97fd3391bd7a268eedfd9d5e2dd4fdcbdd82b8105df5faf6f24aaedc08eaf3da898e702db5948f63469 - languageName: node - linkType: hard - -"ansi-styles@npm:^6.1.0": - version: 6.2.3 - resolution: "ansi-styles@npm:6.2.3" - checksum: 10/c49dad7639f3e48859bd51824c93b9eb0db628afc243c51c3dd2410c4a15ede1a83881c6c7341aa2b159c4f90c11befb38f2ba848c07c66c9f9de4bcd7cb9f30 - languageName: node - linkType: hard - -"any-promise@npm:^1.0.0, any-promise@npm:^1.1.0": - version: 1.3.0 - resolution: "any-promise@npm:1.3.0" - checksum: 10/6737469ba353b5becf29e4dc3680736b9caa06d300bda6548812a8fee63ae7d336d756f88572fa6b5219aed36698d808fa55f62af3e7e6845c7a1dc77d240edb - languageName: node - linkType: hard - -"anymatch@npm:^3.1.3, anymatch@npm:~3.1.2": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: "npm:^3.0.0" - picomatch: "npm:^2.0.4" - checksum: 10/3e044fd6d1d26545f235a9fe4d7a534e2029d8e59fa7fd9f2a6eb21230f6b5380ea1eaf55136e60cbf8e613544b3b766e7a6fa2102e2a3a117505466e3025dc2 - languageName: node - linkType: hard - -"app-builder-bin@npm:4.0.0": - version: 4.0.0 - resolution: "app-builder-bin@npm:4.0.0" - checksum: 10/5d401b2670acb381c76f96467320af0569748c66950adacc239ef85f5ac9d7b44e93c387ad3fea22c25d42ca9f6f6ccd53e827cdf9eb6b6cddd2091d88c5289d - languageName: node - linkType: hard - -"app-builder-lib@npm:24.10.0": - version: 24.10.0 - resolution: "app-builder-lib@npm:24.10.0" - dependencies: - "@develar/schema-utils": "npm:~2.6.5" - "@electron/notarize": "npm:2.1.0" - "@electron/osx-sign": "npm:1.0.5" - "@electron/universal": "npm:1.4.1" - "@malept/flatpak-bundler": "npm:^0.4.0" - "@types/fs-extra": "npm:9.0.13" - async-exit-hook: "npm:^2.0.1" - bluebird-lst: "npm:^1.0.9" - builder-util: "npm:24.9.4" - builder-util-runtime: "npm:9.2.3" - chromium-pickle-js: "npm:^0.2.0" - debug: "npm:^4.3.4" - ejs: "npm:^3.1.8" - electron-publish: "npm:24.9.4" - form-data: "npm:^4.0.0" - fs-extra: "npm:^10.1.0" - hosted-git-info: "npm:^4.1.0" - is-ci: "npm:^3.0.0" - isbinaryfile: "npm:^5.0.0" - js-yaml: "npm:^4.1.0" - lazy-val: "npm:^1.0.5" - minimatch: "npm:^5.1.1" - read-config-file: "npm:6.3.2" - sanitize-filename: "npm:^1.6.3" - semver: "npm:^7.3.8" - tar: "npm:^6.1.12" - temp-file: "npm:^3.4.0" - checksum: 10/8350e08488d13c239ae62d8b4e799d5017d186547538161f47ec6475a3b290152e644e01788f4e35ba0b5bebdf4ef5118450fb52e76bc1813eb81f3db8025976 - languageName: node - linkType: hard - -"app-module-path@npm:^2.2.0": - version: 2.2.0 - resolution: "app-module-path@npm:2.2.0" - checksum: 10/9ed8c6ce6247a6b5d556039f29b4610869237bbb5b8f3d905b22bd2d314c30efcc0fb70c2626d7461ecc52ec7edec9908f660d0938d2bea5b8cfc6868a28806f - languageName: node - linkType: hard - -"application-config-path@npm:^0.1.0": - version: 0.1.1 - resolution: "application-config-path@npm:0.1.1" - checksum: 10/380f4c49585511813526632c8366318f52941526dbb284a887e5af328caa76424a056795ab18f03f5009197f2dea0ef01a8a9812d85724f26d2f5cf9bf9bf1f9 - languageName: node - linkType: hard - -"application-config@npm:^2.0.0": - version: 2.0.0 - resolution: "application-config@npm:2.0.0" - dependencies: - application-config-path: "npm:^0.1.0" - load-json-file: "npm:^6.2.0" - write-json-file: "npm:^4.2.0" - checksum: 10/d1f8d2388cb7b97c792a9f795610cfe5869b976a950dff96070c0f28ac78421d074a5f74195f890dcd45437fa6e367a49acb5d796bd436d9f71b2bace6a2a741 - languageName: node - linkType: hard - -"aproba@npm:^1.0.3 || ^2.0.0": - version: 2.1.0 - resolution: "aproba@npm:2.1.0" - checksum: 10/cb0e335ac398027d43bf4a139337363e161fa10a642291f7ad5068a2e24797be58270775047cba901a7c1ce945a05c7535b13f6457993517cd7dca40c9b00a00 - languageName: node - linkType: hard - -"archiver-utils@npm:^5.0.0, archiver-utils@npm:^5.0.2": - version: 5.0.2 - resolution: "archiver-utils@npm:5.0.2" - dependencies: - glob: "npm:^10.0.0" - graceful-fs: "npm:^4.2.0" - is-stream: "npm:^2.0.1" - lazystream: "npm:^1.0.0" - lodash: "npm:^4.17.15" - normalize-path: "npm:^3.0.0" - readable-stream: "npm:^4.0.0" - checksum: 10/9dde4aa3f0cb1bdfe0b3d4c969f82e6cca9ae76338b7fee6f0071a14a2a38c0cdd1c41ecd3e362466585aa6cc5d07e9e435abea8c94fd9c7ace35f184abef9e4 - languageName: node - linkType: hard - -"archiver@npm:^7.0.1": - version: 7.0.1 - resolution: "archiver@npm:7.0.1" - dependencies: - archiver-utils: "npm:^5.0.2" - async: "npm:^3.2.4" - buffer-crc32: "npm:^1.0.0" - readable-stream: "npm:^4.0.0" - readdir-glob: "npm:^1.1.2" - tar-stream: "npm:^3.0.0" - zip-stream: "npm:^6.0.1" - checksum: 10/81c6102db99d7ffd5cb2aed02a678f551c6603991a059ca66ef59249942b835a651a3d3b5240af4f8bec4e61e13790357c9d1ad4a99982bd2cc4149575c31d67 - languageName: node - linkType: hard - -"argparse@npm:^1.0.7": - version: 1.0.10 - resolution: "argparse@npm:1.0.10" - dependencies: - sprintf-js: "npm:~1.0.2" - checksum: 10/c6a621343a553ff3779390bb5ee9c2263d6643ebcd7843227bdde6cc7adbed796eb5540ca98db19e3fd7b4714e1faa51551f8849b268bb62df27ddb15cbcd91e - languageName: node - linkType: hard - -"argparse@npm:^2.0.1": - version: 2.0.1 - resolution: "argparse@npm:2.0.1" - checksum: 10/18640244e641a417ec75a9bd38b0b2b6b95af5199aa241b131d4b2fb206f334d7ecc600bd194861610a5579084978bfcbb02baa399dbe442d56d0ae5e60dbaef - languageName: node - linkType: hard - -"aria-query@npm:5.1.3": - version: 5.1.3 - resolution: "aria-query@npm:5.1.3" - dependencies: - deep-equal: "npm:^2.0.5" - checksum: 10/e5da608a7c4954bfece2d879342b6c218b6b207e2d9e5af270b5e38ef8418f02d122afdc948b68e32649b849a38377785252059090d66fa8081da95d1609c0d2 - languageName: node - linkType: hard - -"aria-query@npm:^5.0.0": - version: 5.3.2 - resolution: "aria-query@npm:5.3.2" - checksum: 10/b2fe9bc98bd401bc322ccb99717c1ae2aaf53ea0d468d6e7aebdc02fac736e4a99b46971ee05b783b08ade23c675b2d8b60e4a1222a95f6e27bc4d2a0bfdcc03 - languageName: node - linkType: hard - -"array-buffer-byte-length@npm:^1.0.0, array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "array-buffer-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - is-array-buffer: "npm:^3.0.5" - checksum: 10/0ae3786195c3211b423e5be8dd93357870e6fb66357d81da968c2c39ef43583ef6eece1f9cb1caccdae4806739c65dea832b44b8593414313cd76a89795fca63 - languageName: node - linkType: hard - -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10/e13c9d247241be82f8b4ec71d035ed7204baa82fae820d4db6948d30d3c4a9f2b3905eb2eec2b937d4aa3565200bd3a1c500480114cff649fa748747d2a50feb - languageName: node - linkType: hard - -"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8, array-includes@npm:^3.1.9": - version: 3.1.9 - resolution: "array-includes@npm:3.1.9" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.24.0" - es-object-atoms: "npm:^1.1.1" - get-intrinsic: "npm:^1.3.0" - is-string: "npm:^1.1.1" - math-intrinsics: "npm:^1.1.0" - checksum: 10/8bfe9a58df74f326b4a76b04ee05c13d871759e888b4ee8f013145297cf5eb3c02cfa216067ebdaac5d74eb9763ac5cad77cdf2773b8ab475833701e032173aa - languageName: node - linkType: hard - -"array-union@npm:^2.1.0": - version: 2.1.0 - resolution: "array-union@npm:2.1.0" - checksum: 10/5bee12395cba82da674931df6d0fea23c4aa4660cb3b338ced9f828782a65caa232573e6bf3968f23e0c5eb301764a382cef2f128b170a9dc59de0e36c39f98d - languageName: node - linkType: hard - -"array.prototype.findlast@npm:^1.2.5": - version: 1.2.5 - resolution: "array.prototype.findlast@npm:1.2.5" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.2" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - es-shim-unscopables: "npm:^1.0.2" - checksum: 10/7dffcc665aa965718ad6de7e17ac50df0c5e38798c0a5bf9340cf24feb8594df6ec6f3fcbe714c1577728a1b18b5704b15669474b27bceeca91ef06ce2a23c31 - languageName: node - linkType: hard - -"array.prototype.findlastindex@npm:^1.2.6": - version: 1.2.6 - resolution: "array.prototype.findlastindex@npm:1.2.6" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - es-shim-unscopables: "npm:^1.1.0" - checksum: 10/5ddb6420e820bef6ddfdcc08ce780d0fd5e627e97457919c27e32359916de5a11ce12f7c55073555e503856618eaaa70845d6ca11dcba724766f38eb1c22f7a2 - languageName: node - linkType: hard - -"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.3": - version: 1.3.3 - resolution: "array.prototype.flat@npm:1.3.3" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-shim-unscopables: "npm:^1.0.2" - checksum: 10/f9b992fa0775d8f7c97abc91eb7f7b2f0ed8430dd9aeb9fdc2967ac4760cdd7fc2ef7ead6528fef40c7261e4d790e117808ce0d3e7e89e91514d4963a531cd01 - languageName: node - linkType: hard - -"array.prototype.flatmap@npm:^1.3.3": - version: 1.3.3 - resolution: "array.prototype.flatmap@npm:1.3.3" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-shim-unscopables: "npm:^1.0.2" - checksum: 10/473534573aa4b37b1d80705d0ce642f5933cccf5617c9f3e8a56686e9815ba93d469138e86a1f25d2fe8af999c3d24f54d703ec1fc2db2e6778d46d0f4ac951e - languageName: node - linkType: hard - -"array.prototype.tosorted@npm:^1.1.4": - version: 1.1.4 - resolution: "array.prototype.tosorted@npm:1.1.4" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.3" - es-errors: "npm:^1.3.0" - es-shim-unscopables: "npm:^1.0.2" - checksum: 10/874694e5d50e138894ff5b853e639c29b0aa42bbd355acda8e8e9cd337f1c80565f21edc15e8c727fa4c0877fd9d8783c575809e440cc4d2d19acaa048bf967d - languageName: node - linkType: hard - -"arraybuffer.prototype.slice@npm:^1.0.4": - version: 1.0.4 - resolution: "arraybuffer.prototype.slice@npm:1.0.4" - dependencies: - array-buffer-byte-length: "npm:^1.0.1" - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - is-array-buffer: "npm:^3.0.4" - checksum: 10/4821ebdfe7d699f910c7f09bc9fa996f09b96b80bccb4f5dd4b59deae582f6ad6e505ecef6376f8beac1eda06df2dbc89b70e82835d104d6fcabd33c1aed1ae9 - languageName: node - linkType: hard - -"arrify@npm:^1.0.1": - version: 1.0.1 - resolution: "arrify@npm:1.0.1" - checksum: 10/745075dd4a4624ff0225c331dacb99be501a515d39bcb7c84d24660314a6ec28e68131b137e6f7e16318170842ce97538cd298fc4cd6b2cc798e0b957f2747e7 - languageName: node - linkType: hard - -"asn1.js@npm:^4.10.1": - version: 4.10.1 - resolution: "asn1.js@npm:4.10.1" - dependencies: - bn.js: "npm:^4.0.0" - inherits: "npm:^2.0.1" - minimalistic-assert: "npm:^1.0.0" - checksum: 10/5a02104b9ba167917c786a3fdac9840a057d29e6b609250e6af924d0529ead1a32417da13eec809cadea8f991eb67782196f3df427c5b4f30eaf22044fc64fda - languageName: node - linkType: hard - -"asn1@npm:^0.2.6": - version: 0.2.6 - resolution: "asn1@npm:0.2.6" - dependencies: - safer-buffer: "npm:~2.1.0" - checksum: 10/cf629291fee6c1a6f530549939433ebf32200d7849f38b810ff26ee74235e845c0c12b2ed0f1607ac17383d19b219b69cefa009b920dab57924c5c544e495078 - languageName: node - linkType: hard - -"assert-plus@npm:^1.0.0": - version: 1.0.0 - resolution: "assert-plus@npm:1.0.0" - checksum: 10/f4f991ae2df849cc678b1afba52d512a7cbf0d09613ba111e72255409ff9158550c775162a47b12d015d1b82b3c273e8e25df0e4783d3ddb008a293486d00a07 - languageName: node - linkType: hard - -"assert@npm:^2.1.0": - version: 2.1.0 - resolution: "assert@npm:2.1.0" - dependencies: - call-bind: "npm:^1.0.2" - is-nan: "npm:^1.3.2" - object-is: "npm:^1.1.5" - object.assign: "npm:^4.1.4" - util: "npm:^0.12.5" - checksum: 10/6b9d813c8eef1c0ac13feac5553972e4bd180ae16000d4eb5c0ded2489188737c75a5aacefc97a985008b37502f62fe1bad34da1a7481a54bbfabec3964c8aa7 - languageName: node - linkType: hard - -"ast-module-types@npm:^2.7.1": - version: 2.7.1 - resolution: "ast-module-types@npm:2.7.1" - checksum: 10/f5ff6a8aec1ac93533bb5af6ab3921b7eb9f91032f6fdd7cb08e6917005649dc8d5dcdfc98016b7125450db6028da22ae6990275e0ecd6d1fcfe7f1cf5c83b8a - languageName: node - linkType: hard - -"ast-module-types@npm:^3.0.0": - version: 3.0.0 - resolution: "ast-module-types@npm:3.0.0" - checksum: 10/9cf2e1c566ff88347762ba177dbe8a8bd3e59f366052d45c0a3b1afde2db2228a1c56f05a6e4d7fbfa219de26ae64831a138ff7533269310b13bb9e3a0e84c9f - languageName: node - linkType: hard - -"ast-module-types@npm:^4.0.0": - version: 4.0.0 - resolution: "ast-module-types@npm:4.0.0" - checksum: 10/06cf93519ef353bb580d90d87f0a9501f39ef99f79784e5291e59e30764c07b383018c153ff4020e9d1409030e9affd438dfca76c28d38400ba729addba8a54a - languageName: node - linkType: hard - -"ast-types@npm:0.9.6": - version: 0.9.6 - resolution: "ast-types@npm:0.9.6" - checksum: 10/d1c5d590a2cd5f90c4be6e5389c273062ba61291998b9c399e48ce8ef06339b42afd426ae1b6fa73505bad95ef6250abbdc1cf970649941212c73c71bfac003d - languageName: node - linkType: hard - -"astral-regex@npm:^2.0.0": - version: 2.0.0 - resolution: "astral-regex@npm:2.0.0" - checksum: 10/876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 - languageName: node - linkType: hard - -"astring@npm:^1.8.5": - version: 1.9.0 - resolution: "astring@npm:1.9.0" - bin: - astring: bin/astring - checksum: 10/ee88f71d8534557b27993d6d035ae85d78488d8dbc6429cd8e8fdfcafec3c65928a3bdc518cf69767a1298d3361490559a4819cd4b314007edae1e94cf1f9e4c - languageName: node - linkType: hard - -"async-exit-hook@npm:^2.0.1": - version: 2.0.1 - resolution: "async-exit-hook@npm:2.0.1" - checksum: 10/fffabbe5ef194ec8283efed48eaf8f4b7982d547de6d4cf7aadf83c8690f0f7929ad01b7cb5de99935ea8f3deb2c21fd009892d8215a43b5a2dcc55c04d42c9f - languageName: node - linkType: hard - -"async-function@npm:^1.0.0": - version: 1.0.0 - resolution: "async-function@npm:1.0.0" - checksum: 10/1a09379937d846f0ce7614e75071c12826945d4e417db634156bf0e4673c495989302f52186dfa9767a1d9181794554717badd193ca2bbab046ef1da741d8efd - languageName: node - linkType: hard - -"async-generator-function@npm:^1.0.0": - version: 1.0.0 - resolution: "async-generator-function@npm:1.0.0" - checksum: 10/3d49e7acbeee9e84537f4cb0e0f91893df8eba976759875ae8ee9e3d3c82f6ecdebdb347c2fad9926b92596d93cdfc78ecc988bcdf407e40433e8e8e6fe5d78e - languageName: node - linkType: hard - -"async-lock@npm:^1.4.1": - version: 1.4.1 - resolution: "async-lock@npm:1.4.1" - checksum: 10/80d55ac95f920e880a865968b799963014f6d987dd790dd08173fae6e1af509d8cd0ab45a25daaca82e3ef8e7c939f5d128cd1facfcc5c647da8ac2409e20ef9 - languageName: node - linkType: hard - -"async@npm:^3.2.0, async@npm:^3.2.4, async@npm:^3.2.6": - version: 3.2.6 - resolution: "async@npm:3.2.6" - checksum: 10/cb6e0561a3c01c4b56a799cc8bab6ea5fef45f069ab32500b6e19508db270ef2dffa55e5aed5865c5526e9907b1f8be61b27530823b411ffafb5e1538c86c368 - languageName: node - linkType: hard - -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 10/3ce727cbc78f69d6a4722517a58ee926c8c21083633b1d3fdf66fd688f6c127a53a592141bd4866f9b63240a86e9d8e974b13919450bd17fa33c2d22c4558ad8 - languageName: node - linkType: hard - -"at-least-node@npm:^1.0.0": - version: 1.0.0 - resolution: "at-least-node@npm:1.0.0" - checksum: 10/463e2f8e43384f1afb54bc68485c436d7622acec08b6fad269b421cb1d29cebb5af751426793d0961ed243146fe4dc983402f6d5a51b720b277818dbf6f2e49e - languageName: node - linkType: hard - -"atomic-sleep@npm:^1.0.0": - version: 1.0.0 - resolution: "atomic-sleep@npm:1.0.0" - checksum: 10/3ab6d2cf46b31394b4607e935ec5c1c3c4f60f3e30f0913d35ea74b51b3585e84f590d09e58067f11762eec71c87d25314ce859030983dc0e4397eed21daa12e - languageName: node - linkType: hard - -"attr-accept@npm:^2.2.4": - version: 2.2.5 - resolution: "attr-accept@npm:2.2.5" - checksum: 10/474b1c53e62c5b881c745d1f098196f190c8b493245e95d4b0fea9298d3acb56f551868fc12806885277e55e9d8ad3c5963e92d93456f4e4081dfc5190977bfd - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.7": - version: 1.0.7 - resolution: "available-typed-arrays@npm:1.0.7" - dependencies: - possible-typed-array-names: "npm:^1.0.0" - checksum: 10/6c9da3a66caddd83c875010a1ca8ef11eac02ba15fb592dc9418b2b5e7b77b645fa7729380a92d9835c2f05f2ca1b6251f39b993e0feb3f1517c74fa1af02cab - languageName: node - linkType: hard - -"axios@npm:^0.21.1": - version: 0.21.4 - resolution: "axios@npm:0.21.4" - dependencies: - follow-redirects: "npm:^1.14.0" - checksum: 10/da644592cb6f8f9f8c64fdabd7e1396d6769d7a4c1ea5f8ae8beb5c2eb90a823e3a574352b0b934ac62edc762c0f52647753dc54f7d07279127a7e5c4cd20272 - languageName: node - linkType: hard - -"axios@npm:^1.6.2, axios@npm:^1.8.4": - version: 1.13.2 - resolution: "axios@npm:1.13.2" - dependencies: - follow-redirects: "npm:^1.15.6" - form-data: "npm:^4.0.4" - proxy-from-env: "npm:^1.1.0" - checksum: 10/ae4e06dcd18289f2fd18179256d550d27f9a53ecb2f9c59f2ccc4efd1d7151839ba8c3e0fb533dac793e4a59a576ca8689a19244dce5c396680837674a47a867 - languageName: node - linkType: hard - -"b4a@npm:^1.6.4": - version: 1.7.3 - resolution: "b4a@npm:1.7.3" - peerDependencies: - react-native-b4a: "*" - peerDependenciesMeta: - react-native-b4a: - optional: true - checksum: 10/048ddd0eeec6a75e6f8dee07d52354e759032f0ef678b556e05bf5a137d7a4102002cadb953b3fb37a635995a1013875d715d115dbafaf12bcad6528d2166054 - languageName: node - linkType: hard - -"bail@npm:^2.0.0": - version: 2.0.2 - resolution: "bail@npm:2.0.2" - checksum: 10/aab4e8ccdc8d762bf3fdfce8e706601695620c0c2eda256dd85088dc0be3cfd7ff126f6e99c2bee1f24f5d418414aacf09d7f9702f16d6963df2fa488cda8824 - languageName: node - linkType: hard - -"balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 10/9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 - languageName: node - linkType: hard - -"bare-events@npm:^2.5.4, bare-events@npm:^2.7.0": - version: 2.8.2 - resolution: "bare-events@npm:2.8.2" - peerDependencies: - bare-abort-controller: "*" - peerDependenciesMeta: - bare-abort-controller: - optional: true - checksum: 10/f31848ea2f5627c3a50aadfc17e518a602629f7a6671da1352975cc6c8a520441fcc9d93c0a21f8f95de65b1a5133fcd5f766d312f3d5a326dde4fe7d2fc575f - languageName: node - linkType: hard - -"bare-fs@npm:^4.0.1": - version: 4.5.2 - resolution: "bare-fs@npm:4.5.2" - dependencies: - bare-events: "npm:^2.5.4" - bare-path: "npm:^3.0.0" - bare-stream: "npm:^2.6.4" - bare-url: "npm:^2.2.2" - fast-fifo: "npm:^1.3.2" - peerDependencies: - bare-buffer: "*" - peerDependenciesMeta: - bare-buffer: - optional: true - checksum: 10/d544cb23e954d474b8301220a84545a22dec0023c8510dd440e18f361792a59353ae9e4bd4d5a9ee8696c976db696c3a19f91cf7adddeb856ba602dbf17c2683 - languageName: node - linkType: hard - -"bare-os@npm:^3.0.1": - version: 3.6.2 - resolution: "bare-os@npm:3.6.2" - checksum: 10/11e127cdce86444be2039a28f1e25a5635f3e4ada09aeb35b33d524766b51c5f71db3dc1e8d8d88018ea5255e9f6663a55174960ca45f002132d7808b9b34e29 - languageName: node - linkType: hard - -"bare-path@npm:^3.0.0": - version: 3.0.0 - resolution: "bare-path@npm:3.0.0" - dependencies: - bare-os: "npm:^3.0.1" - checksum: 10/712d90e9cd8c3263cc11b0e0d386d1531a452706d7840c081ee586b34b00d72544e65df7a40013d47c1b177277495225deeede65cb2984db88a979cb65aaa2ff - languageName: node - linkType: hard - -"bare-stream@npm:^2.6.4": - version: 2.7.0 - resolution: "bare-stream@npm:2.7.0" - dependencies: - streamx: "npm:^2.21.0" - peerDependencies: - bare-buffer: "*" - bare-events: "*" - peerDependenciesMeta: - bare-buffer: - optional: true - bare-events: - optional: true - checksum: 10/fe8f6e5a8e6d66e9210b4810060e8a25c6e78f9a8ee230c7dd2083b3ad48a79b1993e98eecc8ebd7890b336c66796da457aa8a2253bbb7a31e0e3a0f06bb1f5e - languageName: node - linkType: hard - -"bare-url@npm:^2.2.2": - version: 2.3.2 - resolution: "bare-url@npm:2.3.2" - dependencies: - bare-path: "npm:^3.0.0" - checksum: 10/aa203d79e2dafdb47a4e3bee398cb7db5c7eabcf0b3adf1e1530a21ac69806d1ca05b3343666e3aeda9fc3568c995272deea8ae3cead77ad00f66a7e415de0ef - languageName: node - linkType: hard - -"base-path-converter@npm:^1.0.2": - version: 1.0.2 - resolution: "base-path-converter@npm:1.0.2" - checksum: 10/dc17bc8fd480e844b1fa496dc4c2ae0b29e70d144aae984f750aae52b7cfb691d43f43bf2c67f7220bdaf787284788923c792ca2840e62e716887b21011c53e5 - languageName: node - linkType: hard - -"base-x@npm:^3.0.2, base-x@npm:^3.0.8": - version: 3.0.11 - resolution: "base-x@npm:3.0.11" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10/c2e3c443fd07cb9b9d3e179a9e9c581daa31881005841fe8d6a834e534505890fedf03465ccf14512da60e3f7be00fe66167806b159ba076d2c03952ae7460c4 - languageName: node - linkType: hard - -"base62@npm:^1.1.0": - version: 1.2.8 - resolution: "base62@npm:1.2.8" - checksum: 10/72a2205d84566820cdbcb8ba907dca1801ee99cc3cdc86fc81409b2f3de188a434b04954f5f86702c8f436b70826cae9ddfb4ca292e5c10e0554ec4ad9c5318d - languageName: node - linkType: hard - -"base64-js@npm:^1.3.1, base64-js@npm:^1.5.1": - version: 1.5.1 - resolution: "base64-js@npm:1.5.1" - checksum: 10/669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 - languageName: node - linkType: hard - -"baseline-browser-mapping@npm:^2.9.0": - version: 2.9.13 - resolution: "baseline-browser-mapping@npm:2.9.13" - bin: - baseline-browser-mapping: dist/cli.js - checksum: 10/304fcd0668941aabf9cf59e7852481767ed9ca9f6e4355afe7e4af2008eab14cd55676bd9078226f24895b5225c28693a91c59c561b36c3baae7262ad0e56f26 - languageName: node - linkType: hard - -"batch@npm:0.6.1": - version: 0.6.1 - resolution: "batch@npm:0.6.1" - checksum: 10/61f9934c7378a51dce61b915586191078ef7f1c3eca707fdd58b96ff2ff56d9e0af2bdab66b1462301a73c73374239e6542d9821c0af787f3209a23365d07e7f - languageName: node - linkType: hard - -"bcrypt-pbkdf@npm:^1.0.2": - version: 1.0.2 - resolution: "bcrypt-pbkdf@npm:1.0.2" - dependencies: - tweetnacl: "npm:^0.14.3" - checksum: 10/13a4cde058250dbf1fa77a4f1b9a07d32ae2e3b9e28e88a0c7a1827835bc3482f3e478c4a0cfd4da6ff0c46dae07da1061123a995372b32cc563d9975f975404 - languageName: node - linkType: hard - -"before-after-hook@npm:^2.2.0": - version: 2.2.3 - resolution: "before-after-hook@npm:2.2.3" - checksum: 10/e676f769dbc4abcf4b3317db2fd2badb4a92c0710e0a7da12cf14b59c3482d4febf835ad7de7874499060fd4e13adf0191628e504728b3c5bb4ec7a878c09940 - languageName: node - linkType: hard - -"binary-extensions@npm:^2.0.0": - version: 2.3.0 - resolution: "binary-extensions@npm:2.3.0" - checksum: 10/bcad01494e8a9283abf18c1b967af65ee79b0c6a9e6fcfafebfe91dbe6e0fc7272bafb73389e198b310516ae04f7ad17d79aacf6cb4c0d5d5202a7e2e52c7d98 - languageName: node - linkType: hard - -"bindings@npm:^1.5.0": - version: 1.5.0 - resolution: "bindings@npm:1.5.0" - dependencies: - file-uri-to-path: "npm:1.0.0" - checksum: 10/593d5ae975ffba15fbbb4788fe5abd1e125afbab849ab967ab43691d27d6483751805d98cb92f7ac24a2439a8a8678cd0131c535d5d63de84e383b0ce2786133 - languageName: node - linkType: hard - -"bip66@npm:^1.1.5": - version: 1.1.5 - resolution: "bip66@npm:1.1.5" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10/6257e90ff2149aa08740ff4009730c1bceb1a3456571d3006a36b39f30044f2973e05f043ea6977046d6ab66e4a8d6f5c9785094f8317f4ff546a325baece1ab - languageName: node - linkType: hard - -"bl@npm:^4.0.3, bl@npm:^4.1.0": - version: 4.1.0 - resolution: "bl@npm:4.1.0" - dependencies: - buffer: "npm:^5.5.0" - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.4.0" - checksum: 10/b7904e66ed0bdfc813c06ea6c3e35eafecb104369dbf5356d0f416af90c1546de3b74e5b63506f0629acf5e16a6f87c3798f16233dcff086e9129383aa02ab55 - languageName: node - linkType: hard - -"bl@npm:^5.0.0": - version: 5.1.0 - resolution: "bl@npm:5.1.0" - dependencies: - buffer: "npm:^6.0.3" - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.4.0" - checksum: 10/0340d3d70def4213cd9cbcd8592f7c5922d3668e7b231286c354613fac4a8411ad373cff26e06162da7423035bbd5caafce3e140a5f397be72fcd1e9d86f1179 - languageName: node - linkType: hard - -"blakejs@npm:^1.1.1": - version: 1.2.1 - resolution: "blakejs@npm:1.2.1" - checksum: 10/0638b1bd058b21892633929c43005aa6a4cc4b2ac5b338a146c3c076622f1b360795bd7a4d1f077c9b01863ed2df0c1504a81c5b520d164179120434847e6cd7 - languageName: node - linkType: hard - -"bluebird-lst@npm:^1.0.9": - version: 1.0.9 - resolution: "bluebird-lst@npm:1.0.9" - dependencies: - bluebird: "npm:^3.5.5" - checksum: 10/9c06c4b2539ac03dca757b25b1381ae6d316bed24103c92e9f37a97cef00fec730240dd730b8bea73eb6a96ee34f2508652b4987ada69e6dca0267fdc7e72da4 - languageName: node - linkType: hard - -"bluebird@npm:^3.5.5": - version: 3.7.2 - resolution: "bluebird@npm:3.7.2" - checksum: 10/007c7bad22c5d799c8dd49c85b47d012a1fe3045be57447721e6afbd1d5be43237af1db62e26cb9b0d9ba812d2e4ca3bac82f6d7e016b6b88de06ee25ceb96e7 - languageName: node - linkType: hard - -"bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.11.8, bn.js@npm:^4.11.9, bn.js@npm:^4.12.0": - version: 4.12.2 - resolution: "bn.js@npm:4.12.2" - checksum: 10/5803983405c087443e0e6c9bb5d0bc863d9f987d77e710f81b14c55616494f5a274e1650ee892531acb3529d52c0e0ea48aa12d2873dd80a75dde9d73a2ec518 - languageName: node - linkType: hard - -"bn.js@npm:^5.2.0, bn.js@npm:^5.2.1, bn.js@npm:^5.2.2": - version: 5.2.2 - resolution: "bn.js@npm:5.2.2" - checksum: 10/51ebb2df83b33e5d8581165206e260d5e9c873752954616e5bf3758952b84d7399a9c6d00852815a0aeefb1150a7f34451b62d4287342d457fa432eee869e83e - languageName: node - linkType: hard - -"body-parser@npm:~1.20.3": - version: 1.20.4 - resolution: "body-parser@npm:1.20.4" - dependencies: - bytes: "npm:~3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:~1.2.0" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - on-finished: "npm:~2.4.1" - qs: "npm:~6.14.0" - raw-body: "npm:~2.5.3" - type-is: "npm:~1.6.18" - unpipe: "npm:~1.0.0" - checksum: 10/ff67e28d3f426707be8697a75fdf8d564dc50c341b41f054264d8ab6e2924e519c7ce8acc9d0de05328fdc41e1d9f3f200aec9c1cfb1867d6b676a410d97c689 - languageName: node - linkType: hard - -"bonjour-service@npm:^1.0.11": - version: 1.3.0 - resolution: "bonjour-service@npm:1.3.0" - dependencies: - fast-deep-equal: "npm:^3.1.3" - multicast-dns: "npm:^7.2.5" - checksum: 10/63d516d88f15fa4b89e247e6ff7d81c21a3ef5ed035b0b043c2b38e0c839f54f4ce58fbf9b7668027bf538ac86de366939dbb55cca63930f74eeea1e278c9585 - languageName: node - linkType: hard - -"boolbase@npm:^1.0.0": - version: 1.0.0 - resolution: "boolbase@npm:1.0.0" - checksum: 10/3e25c80ef626c3a3487c73dbfc70ac322ec830666c9ad915d11b701142fab25ec1e63eff2c450c74347acfd2de854ccde865cd79ef4db1683f7c7b046ea43bb0 - languageName: node - linkType: hard - -"boolean@npm:^3.0.1": - version: 3.2.0 - resolution: "boolean@npm:3.2.0" - checksum: 10/d28a49dcaeef7fe10cf9fdf488214d3859f07350be8f5caa0c73ec621baf20650e5da6523262e5ce9221909519d4261c16d8430a5bf307fee9ef0e170cdb29f3 - languageName: node - linkType: hard - -"boxen@npm:^5.0.0": - version: 5.1.2 - resolution: "boxen@npm:5.1.2" - dependencies: - ansi-align: "npm:^3.0.0" - camelcase: "npm:^6.2.0" - chalk: "npm:^4.1.0" - cli-boxes: "npm:^2.2.1" - string-width: "npm:^4.2.2" - type-fest: "npm:^0.20.2" - widest-line: "npm:^3.1.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10/bc3d3d88d77dc8cabb0811844acdbd4805e8ca8011222345330817737042bf6f86d93eb74a3f7e0cab634e64ef69db03cf52b480761ed90a965de0c8ff1bea8c - languageName: node - linkType: hard - -"brace-expansion@npm:^1.1.7": - version: 1.1.12 - resolution: "brace-expansion@npm:1.1.12" - dependencies: - balanced-match: "npm:^1.0.0" - concat-map: "npm:0.0.1" - checksum: 10/12cb6d6310629e3048cadb003e1aca4d8c9bb5c67c3c321bafdd7e7a50155de081f78ea3e0ed92ecc75a9015e784f301efc8132383132f4f7904ad1ac529c562 - languageName: node - linkType: hard - -"brace-expansion@npm:^2.0.1": - version: 2.0.2 - resolution: "brace-expansion@npm:2.0.2" - dependencies: - balanced-match: "npm:^1.0.0" - checksum: 10/01dff195e3646bc4b0d27b63d9bab84d2ebc06121ff5013ad6e5356daa5a9d6b60fa26cf73c74797f2dc3fbec112af13578d51f75228c1112b26c790a87b0488 - languageName: node - linkType: hard - -"braces@npm:^3.0.3, braces@npm:~3.0.2": - version: 3.0.3 - resolution: "braces@npm:3.0.3" - dependencies: - fill-range: "npm:^7.1.1" - checksum: 10/fad11a0d4697a27162840b02b1fad249c1683cbc510cd5bf1a471f2f8085c046d41094308c577a50a03a579dd99d5a6b3724c4b5e8b14df2c4443844cfcda2c6 - languageName: node - linkType: hard - -"brorand@npm:^1.0.1, brorand@npm:^1.1.0": - version: 1.1.0 - resolution: "brorand@npm:1.1.0" - checksum: 10/8a05c9f3c4b46572dec6ef71012b1946db6cae8c7bb60ccd4b7dd5a84655db49fe043ecc6272e7ef1f69dc53d6730b9e2a3a03a8310509a3d797a618cbee52be - languageName: node - linkType: hard - -"browserify-aes@npm:^1.0.4, browserify-aes@npm:^1.0.6, browserify-aes@npm:^1.2.0": - version: 1.2.0 - resolution: "browserify-aes@npm:1.2.0" - dependencies: - buffer-xor: "npm:^1.0.3" - cipher-base: "npm:^1.0.0" - create-hash: "npm:^1.1.0" - evp_bytestokey: "npm:^1.0.3" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.0.1" - checksum: 10/2813058f74e083a00450b11ea9d5d1f072de7bf0133f5d122d4ff7b849bece56d52b9c51ad0db0fad21c0bc4e8272fd5196114bbe7b94a9b7feb0f9fbb33a3bf - languageName: node - linkType: hard - -"browserify-cipher@npm:^1.0.1": - version: 1.0.1 - resolution: "browserify-cipher@npm:1.0.1" - dependencies: - browserify-aes: "npm:^1.0.4" - browserify-des: "npm:^1.0.0" - evp_bytestokey: "npm:^1.0.0" - checksum: 10/2d8500acf1ee535e6bebe808f7a20e4c3a9e2ed1a6885fff1facbfd201ac013ef030422bec65ca9ece8ffe82b03ca580421463f9c45af6c8415fd629f4118c13 - languageName: node - linkType: hard - -"browserify-des@npm:^1.0.0": - version: 1.0.2 - resolution: "browserify-des@npm:1.0.2" - dependencies: - cipher-base: "npm:^1.0.1" - des.js: "npm:^1.0.0" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.1.2" - checksum: 10/2fd9018e598b1b25e002abaf656d46d8e0f2ee2666ff18852d37e5c3d0e47701d6824256b060fac395420d56a0c49c2b0d40a194e6fbd837bfdd893e7eb5ade4 - languageName: node - linkType: hard - -"browserify-rsa@npm:^4.0.0, browserify-rsa@npm:^4.1.1": - version: 4.1.1 - resolution: "browserify-rsa@npm:4.1.1" - dependencies: - bn.js: "npm:^5.2.1" - randombytes: "npm:^2.1.0" - safe-buffer: "npm:^5.2.1" - checksum: 10/62ae0da60e49e8d5dd3b0922119b6edee94ebfa3a184211c804024b3a75f9dab31a1d124cc0545ed050e273f0325c2fd7aba6a51e44ba6f726fceae3210ddade - languageName: node - linkType: hard - -"browserify-sign@npm:^4.2.3": - version: 4.2.5 - resolution: "browserify-sign@npm:4.2.5" - dependencies: - bn.js: "npm:^5.2.2" - browserify-rsa: "npm:^4.1.1" - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - elliptic: "npm:^6.6.1" - inherits: "npm:^2.0.4" - parse-asn1: "npm:^5.1.9" - readable-stream: "npm:^2.3.8" - safe-buffer: "npm:^5.2.1" - checksum: 10/ccfe54ab61b8e01e84c507b60912f9ae8701f4e53accc3d85c3773db13f14c51f17b684167735d28c59aaf5523ee59c66cc831ddc178bc7f598257e590ca1a35 - languageName: node - linkType: hard - -"browserslist@npm:^4.28.1": - version: 4.28.1 - resolution: "browserslist@npm:4.28.1" - dependencies: - baseline-browser-mapping: "npm:^2.9.0" - caniuse-lite: "npm:^1.0.30001759" - electron-to-chromium: "npm:^1.5.263" - node-releases: "npm:^2.0.27" - update-browserslist-db: "npm:^1.2.0" - bin: - browserslist: cli.js - checksum: 10/64f2a97de4bce8473c0e5ae0af8d76d1ead07a5b05fc6bc87b848678bb9c3a91ae787b27aa98cdd33fc00779607e6c156000bed58fefb9cf8e4c5a183b994cdb - languageName: node - linkType: hard - -"bs58@npm:^4.0.1": - version: 4.0.1 - resolution: "bs58@npm:4.0.1" - dependencies: - base-x: "npm:^3.0.2" - checksum: 10/b3c5365bb9e0c561e1a82f1a2d809a1a692059fae016be233a6127ad2f50a6b986467c3a50669ce4c18929dcccb297c5909314dd347a25a68c21b68eb3e95ac2 - languageName: node - linkType: hard - -"btoa@npm:^1.2.1": - version: 1.2.1 - resolution: "btoa@npm:1.2.1" - bin: - btoa: bin/btoa.js - checksum: 10/29f2ca93837e10427184626bdfd5d00065dff28b604b822aa9849297dac8c8d6ad385cc96eed812ebf153d80c24a4556252afdbb97c7a712938baeaad7547705 - languageName: node - linkType: hard - -"buffer-crc32@npm:^1.0.0": - version: 1.0.0 - resolution: "buffer-crc32@npm:1.0.0" - checksum: 10/ef3b7c07622435085c04300c9a51e850ec34a27b2445f758eef69b859c7827848c2282f3840ca6c1eef3829145a1580ce540cab03ccf4433827a2b95d3b09ca7 - languageName: node - linkType: hard - -"buffer-crc32@npm:~0.2.3": - version: 0.2.13 - resolution: "buffer-crc32@npm:0.2.13" - checksum: 10/06252347ae6daca3453b94e4b2f1d3754a3b146a111d81c68924c22d91889a40623264e95e67955b1cb4a68cbedf317abeabb5140a9766ed248973096db5ce1c - languageName: node - linkType: hard - -"buffer-equal@npm:^1.0.0": - version: 1.0.1 - resolution: "buffer-equal@npm:1.0.1" - checksum: 10/0d56dbeec3d862b16f07fe1cc27751adab26219ff37b90fb0be1fe5c870ce1ce3ed45aad9d9b8c631dfc0e147315d02385ddefaf7f6cb24f067f91a2f8def324 - languageName: node - linkType: hard - -"buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 10/0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb - languageName: node - linkType: hard - -"buffer-xor@npm:^1.0.3": - version: 1.0.3 - resolution: "buffer-xor@npm:1.0.3" - checksum: 10/4a63d48b5117c7eda896d81cd3582d9707329b07c97a14b0ece2edc6e64220ea7ea17c94b295e8c2cb7b9f8291e2b079f9096be8ac14be238420a43e06ec66e2 - languageName: node - linkType: hard - -"buffer@npm:^5.1.0, buffer@npm:^5.5.0, buffer@npm:^5.6.0": - version: 5.7.1 - resolution: "buffer@npm:5.7.1" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.1.13" - checksum: 10/997434d3c6e3b39e0be479a80288875f71cd1c07d75a3855e6f08ef848a3c966023f79534e22e415ff3a5112708ce06127277ab20e527146d55c84566405c7c6 - languageName: node - linkType: hard - -"buffer@npm:^6.0.1, buffer@npm:^6.0.3": - version: 6.0.3 - resolution: "buffer@npm:6.0.3" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.2.1" - checksum: 10/b6bc68237ebf29bdacae48ce60e5e28fc53ae886301f2ad9496618efac49427ed79096750033e7eab1897a4f26ae374ace49106a5758f38fb70c78c9fda2c3b1 - languageName: node - linkType: hard - -"bufferutil@npm:^4.0.1": - version: 4.1.0 - resolution: "bufferutil@npm:4.1.0" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10/f944f2e66a8cd2eeecc83e29b857382a0666132a7bbf83690df9ff39cb842c5a438da91a7d9c6a22cdc794bf0b6cfbfdf3a689e9c330a8e844b2b7a64c25f3bc - languageName: node - linkType: hard - -"buildcheck@npm:~0.0.6": - version: 0.0.7 - resolution: "buildcheck@npm:0.0.7" - checksum: 10/cca174bcc917ee9dc00b1be404b4f22656d9c243d439d3456e6bd52263f05ad5f5d3c77e62a1f6ccaf1d36cb65efc5ee3bb30ed10e1675f22a1abdfad99eb9b3 - languageName: node - linkType: hard - -"builder-util-runtime@npm:9.2.3": - version: 9.2.3 - resolution: "builder-util-runtime@npm:9.2.3" - dependencies: - debug: "npm:^4.3.4" - sax: "npm:^1.2.4" - checksum: 10/15f9618af1a2224d0ade19fa7dca12f80bc2ceeb4fc89242f2505b44f58d13d3439bb08a5bec865bb0f8e930fa57bd112d9ee9024f22f1654925ffe2bed3925b - languageName: node - linkType: hard - -"builder-util-runtime@npm:9.5.1": - version: 9.5.1 - resolution: "builder-util-runtime@npm:9.5.1" - dependencies: - debug: "npm:^4.3.4" - sax: "npm:^1.2.4" - checksum: 10/65ecde74ae480e7c7983bccb2db3c0a33e18ecf038c7af87acdf533c365e76c5cd922d13a6f7dad99f151ab508a1366bf8944d7b9651254d56a0dadb3c4bec98 - languageName: node - linkType: hard - -"builder-util@npm:24.9.4": - version: 24.9.4 - resolution: "builder-util@npm:24.9.4" - dependencies: - 7zip-bin: "npm:~5.2.0" - "@types/debug": "npm:^4.1.6" - app-builder-bin: "npm:4.0.0" - bluebird-lst: "npm:^1.0.9" - builder-util-runtime: "npm:9.2.3" - chalk: "npm:^4.1.2" - cross-spawn: "npm:^7.0.3" - debug: "npm:^4.3.4" - fs-extra: "npm:^10.1.0" - http-proxy-agent: "npm:^5.0.0" - https-proxy-agent: "npm:^5.0.1" - is-ci: "npm:^3.0.0" - js-yaml: "npm:^4.1.0" - source-map-support: "npm:^0.5.19" - stat-mode: "npm:^1.0.0" - temp-file: "npm:^3.4.0" - checksum: 10/df830846d6149491616bdedf8e6829385cb968105762a835bda29eaeaea8f54254f5b14b9a3c4d060d0402d3bf886e48ab2a0c28c4615b4904fc25ad7c68ec90 - languageName: node - linkType: hard - -"builtin-modules@npm:^3.3.0": - version: 3.3.0 - resolution: "builtin-modules@npm:3.3.0" - checksum: 10/62e063ab40c0c1efccbfa9ffa31873e4f9d57408cb396a2649981a0ecbce56aabc93c28feaccbc5658c95aab2703ad1d11980e62ec2e5e72637404e1eb60f39e - languageName: node - linkType: hard - -"builtin-status-codes@npm:^3.0.0": - version: 3.0.0 - resolution: "builtin-status-codes@npm:3.0.0" - checksum: 10/1119429cf4b0d57bf76b248ad6f529167d343156ebbcc4d4e4ad600484f6bc63002595cbb61b67ad03ce55cd1d3c4711c03bbf198bf24653b8392420482f3773 - languageName: node - linkType: hard - -"builtins@npm:^5.0.1": - version: 5.1.0 - resolution: "builtins@npm:5.1.0" - dependencies: - semver: "npm:^7.0.0" - checksum: 10/60aa9969f69656bf6eab82cd74b23ab805f112ae46a54b912bccc1533875760f2d2ce95e0a7d13144e35ada9f0386f17ed4961908bc9434b5a5e21375b1902b2 - languageName: node - linkType: hard - -"bundle-require@npm:^5.1.0": - version: 5.1.0 - resolution: "bundle-require@npm:5.1.0" - dependencies: - load-tsconfig: "npm:^0.2.3" - peerDependencies: - esbuild: ">=0.18" - checksum: 10/735e0220055b9bdac20bea48ec1e10dc3a205232c889ef54767900bebdc721959c4ccb221e4ea434d7ddcd693a8a4445c3d0598e4040ee313ce0ac3aae3e6178 - languageName: node - linkType: hard - -"byline@npm:^5.0.0": - version: 5.0.0 - resolution: "byline@npm:5.0.0" - checksum: 10/737ca83e8eda2976728dae62e68bc733aea095fab08db4c6f12d3cee3cf45b6f97dce45d1f6b6ff9c2c947736d10074985b4425b31ce04afa1985a4ef3d334a7 - languageName: node - linkType: hard - -"bytes@npm:3.1.2, bytes@npm:~3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10/a10abf2ba70c784471d6b4f58778c0beeb2b5d405148e66affa91f23a9f13d07603d0a0354667310ae1d6dc141474ffd44e2a074be0f6e2254edb8fc21445388 - languageName: node - linkType: hard - -"cac@npm:^6.7.14": - version: 6.7.14 - resolution: "cac@npm:6.7.14" - checksum: 10/002769a0fbfc51c062acd2a59df465a2a947916b02ac50b56c69ec6c018ee99ac3e7f4dd7366334ea847f1ecacf4defaa61bcd2ac283db50156ce1f1d8c8ad42 - languageName: node - linkType: hard - -"cacache@npm:^20.0.1": - version: 20.0.3 - resolution: "cacache@npm:20.0.3" - dependencies: - "@npmcli/fs": "npm:^5.0.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^13.0.0" - lru-cache: "npm:^11.1.0" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^7.0.2" - ssri: "npm:^13.0.0" - unique-filename: "npm:^5.0.0" - checksum: 10/388a0169970df9d051da30437f93f81b7e91efb570ad0ff2b8fde33279fbe726c1bc8e8e2b9c05053ffb4f563854c73db395e8712e3b62347a1bc4f7fb8899ff - languageName: node - linkType: hard - -"cacheable-lookup@npm:^5.0.3": - version: 5.0.4 - resolution: "cacheable-lookup@npm:5.0.4" - checksum: 10/618a8b3eea314060e74cb3285a6154e8343c244a34235acf91cfe626ee0705c24e3cd11e4b1a7b3900bd749ee203ae65afe13adf610c8ab173e99d4a208faf75 - languageName: node - linkType: hard - -"cacheable-request@npm:^6.0.0": - version: 6.1.0 - resolution: "cacheable-request@npm:6.1.0" - dependencies: - clone-response: "npm:^1.0.2" - get-stream: "npm:^5.1.0" - http-cache-semantics: "npm:^4.0.0" - keyv: "npm:^3.0.0" - lowercase-keys: "npm:^2.0.0" - normalize-url: "npm:^4.1.0" - responselike: "npm:^1.0.2" - checksum: 10/804f6c377ce6fef31c584babde31d55c69305569058ad95c24a41bb7b33d0ea188d388467a9da6cb340e95a3a1f8a94e1f3a709fef5eaf9c6b88e62448fa29be - languageName: node - linkType: hard - -"cacheable-request@npm:^7.0.2": - version: 7.0.4 - resolution: "cacheable-request@npm:7.0.4" - dependencies: - clone-response: "npm:^1.0.2" - get-stream: "npm:^5.1.0" - http-cache-semantics: "npm:^4.0.0" - keyv: "npm:^4.0.0" - lowercase-keys: "npm:^2.0.0" - normalize-url: "npm:^6.0.1" - responselike: "npm:^2.0.0" - checksum: 10/0f4f2001260ecca78b9f64fc8245e6b5a5dcde24ea53006daab71f5e0e1338095aa1512ec099c4f9895a9e5acfac9da423cb7c079e131485891e9214aca46c41 - languageName: node - linkType: hard - -"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind-apply-helpers@npm:1.0.2" - dependencies: - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - checksum: 10/00482c1f6aa7cfb30fb1dbeb13873edf81cfac7c29ed67a5957d60635a56b2a4a480f1016ddbdb3395cc37900d46037fb965043a51c5c789ffeab4fc535d18b5 - languageName: node - linkType: hard - -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": - version: 1.0.8 - resolution: "call-bind@npm:1.0.8" - dependencies: - call-bind-apply-helpers: "npm:^1.0.0" - es-define-property: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.2" - checksum: 10/659b03c79bbfccf0cde3a79e7d52570724d7290209823e1ca5088f94b52192dc1836b82a324d0144612f816abb2f1734447438e38d9dafe0b3f82c2a1b9e3bce - languageName: node - linkType: hard - -"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": - version: 1.0.4 - resolution: "call-bound@npm:1.0.4" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - get-intrinsic: "npm:^1.3.0" - checksum: 10/ef2b96e126ec0e58a7ff694db43f4d0d44f80e641370c21549ed911fecbdbc2df3ebc9bddad918d6bbdefeafb60bb3337902006d5176d72bcd2da74820991af7 - languageName: node - linkType: hard - -"callsites@npm:^3.0.0": - version: 3.1.0 - resolution: "callsites@npm:3.1.0" - checksum: 10/072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3 - languageName: node - linkType: hard - -"camel-case@npm:^4.1.2": - version: 4.1.2 - resolution: "camel-case@npm:4.1.2" - dependencies: - pascal-case: "npm:^3.1.2" - tslib: "npm:^2.0.3" - checksum: 10/bcbd25cd253b3cbc69be3f535750137dbf2beb70f093bdc575f73f800acc8443d34fd52ab8f0a2413c34f1e8203139ffc88428d8863e4dfe530cfb257a379ad6 - languageName: node - linkType: hard - -"camelcase-keys@npm:^6.2.2": - version: 6.2.2 - resolution: "camelcase-keys@npm:6.2.2" - dependencies: - camelcase: "npm:^5.3.1" - map-obj: "npm:^4.0.0" - quick-lru: "npm:^4.0.1" - checksum: 10/c1999f5b6d03bee7be9a36e48eef3da9e93e51b000677348ec8d15d51fc4418375890fb6c7155e387322d2ebb2a2cdebf9cd96607a6753d1d6c170d9b1e2eed5 - languageName: node - linkType: hard - -"camelcase@npm:^5.0.0, camelcase@npm:^5.3.1": - version: 5.3.1 - resolution: "camelcase@npm:5.3.1" - checksum: 10/e6effce26b9404e3c0f301498184f243811c30dfe6d0b9051863bd8e4034d09c8c2923794f280d6827e5aa055f6c434115ff97864a16a963366fb35fd673024b - languageName: node - linkType: hard - -"camelcase@npm:^6.2.0, camelcase@npm:^6.2.1": - version: 6.3.0 - resolution: "camelcase@npm:6.3.0" - checksum: 10/8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d - languageName: node - linkType: hard - -"camelize@npm:^1.0.0": - version: 1.0.1 - resolution: "camelize@npm:1.0.1" - checksum: 10/0e147b4299ac6363c50050716aadfae42831257ec56ce54773ffd2a94a88abb2e2540c5ccc38345e8a39963105b76d86cb24477165a36b78c9958fb304513db3 - languageName: node - linkType: hard - -"caniuse-lite@npm:^1.0.30001759": - version: 1.0.30001763 - resolution: "caniuse-lite@npm:1.0.30001763" - checksum: 10/66efb73a641fe2612f561d0f32e5b55415b742dfa3b585f69891b2306cddd8f79bc1a1b0eaac42512686ba9cff59c049aaf1a50192eb5bd27d6f6890c934a5ae - languageName: node - linkType: hard - -"canvas-renderer@npm:~2.2.0": - version: 2.2.1 - resolution: "canvas-renderer@npm:2.2.1" - dependencies: - "@types/node": "npm:*" - checksum: 10/857ebc09893e977b46e1acb14e1b02e4bd96c71d965721b0d635586e5ac96ccb8a1adf184cdfd19053b3adcb38b9d0db6ad1f517914f3ea753fd48d802bd92c4 - languageName: node - linkType: hard - -"ccount@npm:^2.0.0": - version: 2.0.1 - resolution: "ccount@npm:2.0.1" - checksum: 10/48193dada54c9e260e0acf57fc16171a225305548f9ad20d5471e0f7a8c026aedd8747091dccb0d900cde7df4e4ddbd235df0d8de4a64c71b12f0d3303eeafd4 - languageName: node - linkType: hard - -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" - dependencies: - ansi-styles: "npm:^3.2.1" - escape-string-regexp: "npm:^1.0.5" - supports-color: "npm:^5.3.0" - checksum: 10/3d1d103433166f6bfe82ac75724951b33769675252d8417317363ef9d54699b7c3b2d46671b772b893a8e50c3ece70c4b933c73c01e81bc60ea4df9b55afa303 - languageName: node - linkType: hard - -"chalk@npm:^3.0.0": - version: 3.0.0 - resolution: "chalk@npm:3.0.0" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10/37f90b31fd655fb49c2bd8e2a68aebefddd64522655d001ef417e6f955def0ed9110a867ffc878a533f2dafea5f2032433a37c8a7614969baa7f8a1cd424ddfc - languageName: node - linkType: hard - -"chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10/cb3f3e594913d63b1814d7ca7c9bafbf895f75fbf93b92991980610dfd7b48500af4e3a5d4e3a8f337990a96b168d7eb84ee55efdce965e2ee8efc20f8c8f139 - languageName: node - linkType: hard - -"changelog-parser@npm:^3.0.0": - version: 3.0.1 - resolution: "changelog-parser@npm:3.0.1" - dependencies: - line-reader: "npm:^0.2.4" - remove-markdown: "npm:^0.5.0" - bin: - changelog-parser: bin/cli.js - checksum: 10/681c10f43aaa02eb4706a4b883d464fee499dc1dfee679fb9414155b1c3a935126b97d2d0092f07ff62cbe431cf5926a4636856446ff40338ecc20b235ed2692 - languageName: node - linkType: hard - -"character-entities-html4@npm:^2.0.0": - version: 2.1.0 - resolution: "character-entities-html4@npm:2.1.0" - checksum: 10/7034aa7c7fa90309667f6dd50499c8a760c3d3a6fb159adb4e0bada0107d194551cdbad0714302f62d06ce4ed68565c8c2e15fdef2e8f8764eb63fa92b34b11d - languageName: node - linkType: hard - -"character-entities-legacy@npm:^3.0.0": - version: 3.0.0 - resolution: "character-entities-legacy@npm:3.0.0" - checksum: 10/7582af055cb488b626d364b7d7a4e46b06abd526fb63c0e4eb35bcb9c9799cc4f76b39f34fdccef2d1174ac95e53e9ab355aae83227c1a2505877893fce77731 - languageName: node - linkType: hard - -"character-entities@npm:^2.0.0": - version: 2.0.2 - resolution: "character-entities@npm:2.0.2" - checksum: 10/c8dd1f4bf1a92fccf7d2fad9673660a88b37854557d30f6076c32fedfb92d1420208298829ff1d3b6b4fa1c7012e8326c45e7f5c3ed1e9a09ec177593c521b2f - languageName: node - linkType: hard - -"character-reference-invalid@npm:^2.0.0": - version: 2.0.1 - resolution: "character-reference-invalid@npm:2.0.1" - checksum: 10/98d3b1a52ae510b7329e6ee7f6210df14f1e318c5415975d4c9e7ee0ef4c07875d47c6e74230c64551f12f556b4a8ccc24d9f3691a2aa197019e72a95e9297ee - languageName: node - linkType: hard - -"chardet@npm:^2.1.1": - version: 2.1.1 - resolution: "chardet@npm:2.1.1" - checksum: 10/d56913b65e45c5c86f331988e2ef6264c131bfeadaae098ee719bf6610546c77740e37221ffec802dde56b5e4466613a4c754786f4da6b5f6c5477243454d324 - languageName: node - linkType: hard - -"chart.js@npm:^4.4.1": - version: 4.5.1 - resolution: "chart.js@npm:4.5.1" - dependencies: - "@kurkle/color": "npm:^0.3.0" - checksum: 10/a8dd3385371ad7e4c173d35176b7aed457ae27b45550248ecc854bf60a794541f56f3921850dc1f3c65985ef43beea37172b73899eb620d9cb4908de2ce93136 - languageName: node - linkType: hard - -"chartjs-plugin-annotation@npm:^3.0.1": - version: 3.1.0 - resolution: "chartjs-plugin-annotation@npm:3.1.0" - peerDependencies: - chart.js: ">=4.0.0" - checksum: 10/0b0889e665f1aefd2a7b24998013df72c7e022836427b799f219f2f9d838a89ec0a5531d233cfe440c3798bf85646d8435151967b678ab3ffc63c6266edfbf2c - languageName: node - linkType: hard - -"chartjs-plugin-crosshair@npm:^2.0.0": - version: 2.0.0 - resolution: "chartjs-plugin-crosshair@npm:2.0.0" - peerDependencies: - chart.js: ^4.0.1 - checksum: 10/f07105c2995c80d7a011a9e97765b97f1fbb1db7eab514381d0a50df665239fdc86219b920299e5363347a7857cbfef957499548df27ab756531415461b77d72 - languageName: node - linkType: hard - -"chokidar@npm:^3.5.3": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: "npm:~3.1.2" - braces: "npm:~3.0.2" - fsevents: "npm:~2.3.2" - glob-parent: "npm:~5.1.2" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.6.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10/c327fb07704443f8d15f7b4a7ce93b2f0bc0e6cea07ec28a7570aa22cd51fcf0379df589403976ea956c369f25aa82d84561947e227cd925902e1751371658df - languageName: node - linkType: hard - -"chokidar@npm:^4.0.3": - version: 4.0.3 - resolution: "chokidar@npm:4.0.3" - dependencies: - readdirp: "npm:^4.0.1" - checksum: 10/bf2a575ea5596000e88f5db95461a9d59ad2047e939d5a4aac59dd472d126be8f1c1ff3c7654b477cf532d18f42a97279ef80ee847972fd2a25410bf00b80b59 - languageName: node - linkType: hard - -"chownr@npm:^1.1.1": - version: 1.1.4 - resolution: "chownr@npm:1.1.4" - checksum: 10/115648f8eb38bac5e41c3857f3e663f9c39ed6480d1349977c4d96c95a47266fcacc5a5aabf3cb6c481e22d72f41992827db47301851766c4fd77ac21a4f081d - languageName: node - linkType: hard - -"chownr@npm:^2.0.0": - version: 2.0.0 - resolution: "chownr@npm:2.0.0" - checksum: 10/c57cf9dd0791e2f18a5ee9c1a299ae6e801ff58fee96dc8bfd0dcb4738a6ce58dd252a3605b1c93c6418fe4f9d5093b28ffbf4d66648cb2a9c67eaef9679be2f - languageName: node - linkType: hard - -"chownr@npm:^3.0.0": - version: 3.0.0 - resolution: "chownr@npm:3.0.0" - checksum: 10/b63cb1f73d171d140a2ed8154ee6566c8ab775d3196b0e03a2a94b5f6a0ce7777ee5685ca56849403c8d17bd457a6540672f9a60696a6137c7a409097495b82c - languageName: node - linkType: hard - -"chrome-trace-event@npm:^1.0.2": - version: 1.0.4 - resolution: "chrome-trace-event@npm:1.0.4" - checksum: 10/1762bed739774903bf5915fe3045c3120fc3c7f7d929d88e566447ea38944937a6370ccb687278318c43c24f837ad22dac780bed67c066336815557b8cf558c6 - languageName: node - linkType: hard - -"chromium-pickle-js@npm:^0.2.0": - version: 0.2.0 - resolution: "chromium-pickle-js@npm:0.2.0" - checksum: 10/4722e78edf21e8e21e14066fce98bce96f2244c82fcb4da5cf2811ccfc66dbb78fc1e0be94b79aed18ba33b8940bb3f3919822151d0b23e12c95574f62f7796f - languageName: node - linkType: hard - -"ci-info@npm:^2.0.0": - version: 2.0.0 - resolution: "ci-info@npm:2.0.0" - checksum: 10/3b374666a85ea3ca43fa49aa3a048d21c9b475c96eb13c133505d2324e7ae5efd6a454f41efe46a152269e9b6a00c9edbe63ec7fa1921957165aae16625acd67 - languageName: node - linkType: hard - -"ci-info@npm:^3.2.0": - version: 3.9.0 - resolution: "ci-info@npm:3.9.0" - checksum: 10/75bc67902b4d1c7b435497adeb91598f6d52a3389398e44294f6601b20cfef32cf2176f7be0eb961d9e085bb333a8a5cae121cb22f81cf238ae7f58eb80e9397 - languageName: node - linkType: hard - -"ci-info@npm:^4.2.0": - version: 4.3.1 - resolution: "ci-info@npm:4.3.1" - checksum: 10/9dc952bef67e665ccde2e7a552d42d5d095529d21829ece060a00925ede2dfa136160c70ef2471ea6ed6c9b133218b47c007f56955c0f1734a2e57f240aa7445 - languageName: node - linkType: hard - -"cids@npm:~0.7.0": - version: 0.7.5 - resolution: "cids@npm:0.7.5" - dependencies: - buffer: "npm:^5.5.0" - class-is: "npm:^1.1.0" - multibase: "npm:~0.6.0" - multicodec: "npm:^1.0.0" - multihashes: "npm:~0.4.15" - checksum: 10/b916b0787e238dd9f84fb5e155333cadf07fd7ad34ea8dbd47f98bb618eecc9c70760767c0966d0eae73050c4fa6080fdc387e515565b009d2126253c7775fac - languageName: node - linkType: hard - -"cids@npm:~0.8.0": - version: 0.8.3 - resolution: "cids@npm:0.8.3" - dependencies: - buffer: "npm:^5.6.0" - class-is: "npm:^1.1.0" - multibase: "npm:^1.0.0" - multicodec: "npm:^1.0.1" - multihashes: "npm:^1.0.1" - checksum: 10/2772d22314e80e4baf3ca3c82b0468b712ab342472ede571609837438fba1d24259cd3c6d9751a868485d8bc373c122f6847b0df91b16cd77ce65f7709294ec9 - languageName: node - linkType: hard - -"cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3": - version: 1.0.7 - resolution: "cipher-base@npm:1.0.7" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.2" - checksum: 10/9501d2241b7968aaae74fc3db1d6a69a804e0b14117a8fd5d811edf351fcd39a1807bfd98e090a799cfe98b183fbf2e01ebb57f1239080850db07b68dcd9ba02 - languageName: node - linkType: hard - -"class-is@npm:^1.1.0": - version: 1.1.0 - resolution: "class-is@npm:1.1.0" - checksum: 10/8147a3e4ce86eb103d78621d665b87e8e33fcb3f54932fdca894b8222820903b43b2f6b4335d8822104702a5dc904c8f187127fdea4e7d48d905488b35c9e6a7 - languageName: node - linkType: hard - -"classnames@npm:^2.2.6": - version: 2.5.1 - resolution: "classnames@npm:2.5.1" - checksum: 10/58eb394e8817021b153bb6e7d782cfb667e4ab390cb2e9dac2fc7c6b979d1cc2b2a733093955fc5c94aa79ef5c8c89f11ab77780894509be6afbb91dddd79d15 - languageName: node - linkType: hard - -"clean-css@npm:^5.2.2": - version: 5.3.3 - resolution: "clean-css@npm:5.3.3" - dependencies: - source-map: "npm:~0.6.0" - checksum: 10/2db1ae37b384c8ff0a06a12bfa80f56cc02b4abcaaf340db98c0ae88a61dd67c856653fd8135ace6eb0ec13aeab3089c425d2e4238d2a2ad6b6917e6ccc74729 - languageName: node - linkType: hard - -"cli-boxes@npm:^2.2.1": - version: 2.2.1 - resolution: "cli-boxes@npm:2.2.1" - checksum: 10/be79f8ec23a558b49e01311b39a1ea01243ecee30539c880cf14bf518a12e223ef40c57ead0cb44f509bffdffc5c129c746cd50d863ab879385370112af4f585 - languageName: node - linkType: hard - -"cli-cursor@npm:^3.1.0": - version: 3.1.0 - resolution: "cli-cursor@npm:3.1.0" - dependencies: - restore-cursor: "npm:^3.1.0" - checksum: 10/2692784c6cd2fd85cfdbd11f53aea73a463a6d64a77c3e098b2b4697a20443f430c220629e1ca3b195ea5ac4a97a74c2ee411f3807abf6df2b66211fec0c0a29 - languageName: node - linkType: hard - -"cli-spinners@npm:^2.2.0, cli-spinners@npm:^2.5.0": - version: 2.9.2 - resolution: "cli-spinners@npm:2.9.2" - checksum: 10/a0a863f442df35ed7294424f5491fa1756bd8d2e4ff0c8736531d886cec0ece4d85e8663b77a5afaf1d296e3cbbebff92e2e99f52bbea89b667cbe789b994794 - languageName: node - linkType: hard - -"cli-truncate@npm:^2.1.0": - version: 2.1.0 - resolution: "cli-truncate@npm:2.1.0" - dependencies: - slice-ansi: "npm:^3.0.0" - string-width: "npm:^4.2.0" - checksum: 10/976f1887de067a8cd6ec830a7a8508336aebe6cec79b521d98ed13f67ef073b637f7305675b6247dd22f9e9cf045ec55fe746c7bdb288fbe8db0dfdc9fd52e55 - languageName: node - linkType: hard - -"cli-width@npm:^3.0.0": - version: 3.0.0 - resolution: "cli-width@npm:3.0.0" - checksum: 10/8730848b04fb189666ab037a35888d191c8f05b630b1d770b0b0e4c920b47bb5cc14bddf6b8ffe5bfc66cee97c8211d4d18e756c1ffcc75d7dbe7e1186cd7826 - languageName: node - linkType: hard - -"cliui@npm:^7.0.2": - version: 7.0.4 - resolution: "cliui@npm:7.0.4" - dependencies: - string-width: "npm:^4.2.0" - strip-ansi: "npm:^6.0.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10/db858c49af9d59a32d603987e6fddaca2ce716cd4602ba5a2bb3a5af1351eebe82aba8dff3ef3e1b331f7fa9d40ca66e67bdf8e7c327ce0ea959747ead65c0ef - languageName: node - linkType: hard - -"cliui@npm:^8.0.1": - version: 8.0.1 - resolution: "cliui@npm:8.0.1" - dependencies: - string-width: "npm:^4.2.0" - strip-ansi: "npm:^6.0.1" - wrap-ansi: "npm:^7.0.0" - checksum: 10/eaa5561aeb3135c2cddf7a3b3f562fc4238ff3b3fc666869ef2adf264be0f372136702f16add9299087fb1907c2e4ec5dbfe83bd24bce815c70a80c6c1a2e950 - languageName: node - linkType: hard - -"clone-deep@npm:^4.0.0, clone-deep@npm:^4.0.1": - version: 4.0.1 - resolution: "clone-deep@npm:4.0.1" - dependencies: - is-plain-object: "npm:^2.0.4" - kind-of: "npm:^6.0.2" - shallow-clone: "npm:^3.0.0" - checksum: 10/770f912fe4e6f21873c8e8fbb1e99134db3b93da32df271d00589ea4a29dbe83a9808a322c93f3bcaf8584b8b4fa6fc269fc8032efbaa6728e0c9886c74467d2 - languageName: node - linkType: hard - -"clone-response@npm:^1.0.2": - version: 1.0.3 - resolution: "clone-response@npm:1.0.3" - dependencies: - mimic-response: "npm:^1.0.0" - checksum: 10/4e671cac39b11c60aa8ba0a450657194a5d6504df51bca3fac5b3bd0145c4f8e8464898f87c8406b83232e3bc5cca555f51c1f9c8ac023969ebfbf7f6bdabb2e - languageName: node - linkType: hard - -"clone@npm:^1.0.2": - version: 1.0.4 - resolution: "clone@npm:1.0.4" - checksum: 10/d06418b7335897209e77bdd430d04f882189582e67bd1f75a04565f3f07f5b3f119a9d670c943b6697d0afb100f03b866b3b8a1f91d4d02d72c4ecf2bb64b5dd - languageName: node - linkType: hard - -"clone@npm:^2.1.2": - version: 2.1.2 - resolution: "clone@npm:2.1.2" - checksum: 10/d9c79efba655f0bf601ab299c57eb54cbaa9860fb011aee9d89ed5ac0d12df1660ab7642fddaabb9a26b7eff0e117d4520512cb70798319ff5d30a111b5310c2 - languageName: node - linkType: hard - -"codeflask@npm:^1.4.1": - version: 1.4.1 - resolution: "codeflask@npm:1.4.1" - dependencies: - "@types/prismjs": "npm:^1.9.1" - prismjs: "npm:^1.14.0" - checksum: 10/c0ad1599cb91f56bb9f0bb89ffab914c67f2a2a9ae7ff1bddaaba7c985be2d3e254b72ae211e99497dc6b19cc21013526192c2d26cc073ad7ba05ce92390cc08 - languageName: node - linkType: hard - -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: "npm:1.1.3" - checksum: 10/ffa319025045f2973919d155f25e7c00d08836b6b33ea2d205418c59bd63a665d713c52d9737a9e0fe467fb194b40fbef1d849bae80d674568ee220a31ef3d10 - languageName: node - linkType: hard - -"color-convert@npm:^2.0.1": - version: 2.0.1 - resolution: "color-convert@npm:2.0.1" - dependencies: - color-name: "npm:~1.1.4" - checksum: 10/fa00c91b4332b294de06b443923246bccebe9fab1b253f7fe1772d37b06a2269b4039a85e309abe1fe11b267b11c08d1d0473fda3badd6167f57313af2887a64 - languageName: node - linkType: hard - -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 10/09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d - languageName: node - linkType: hard - -"color-name@npm:^1.1.4, color-name@npm:~1.1.4": - version: 1.1.4 - resolution: "color-name@npm:1.1.4" - checksum: 10/b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 - languageName: node - linkType: hard - -"color-support@npm:^1.1.3": - version: 1.1.3 - resolution: "color-support@npm:1.1.3" - bin: - color-support: bin.js - checksum: 10/4bcfe30eea1498fe1cabc852bbda6c9770f230ea0e4faf4611c5858b1b9e4dde3730ac485e65f54ca182f4c50b626c1bea7c8441ceda47367a54a818c248aa7a - languageName: node - linkType: hard - -"colord@npm:^2.9.3": - version: 2.9.3 - resolution: "colord@npm:2.9.3" - checksum: 10/907a4506d7307e2f580b471b581e992181ed75ab0c6925ece9ca46d88161d2fc50ed15891cd0556d0d9321237ca75afc9d462e4c050b939ef88428517f047f30 - languageName: node - linkType: hard - -"colorette@npm:^2.0.10, colorette@npm:^2.0.14, colorette@npm:^2.0.7": - version: 2.0.20 - resolution: "colorette@npm:2.0.20" - checksum: 10/0b8de48bfa5d10afc160b8eaa2b9938f34a892530b2f7d7897e0458d9535a066e3998b49da9d21161c78225b272df19ae3a64d6df28b4c9734c0e55bbd02406f - languageName: node - linkType: hard - -"combined-stream@npm:^1.0.8": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: "npm:~1.0.0" - checksum: 10/2e969e637d05d09fa50b02d74c83a1186f6914aae89e6653b62595cc75a221464f884f55f231b8f4df7a49537fba60bdc0427acd2bf324c09a1dbb84837e36e4 - languageName: node - linkType: hard - -"comlink@npm:^4.4.2": - version: 4.4.2 - resolution: "comlink@npm:4.4.2" - checksum: 10/ecee53b5b4536b3aa3f7636c383f831e68fbc013def77665cc7fad873d72cfa23b994e1ec4b49e83e4e909c1089a03acae03a523e33a5e5ed938cdb613456434 - languageName: node - linkType: hard - -"comma-separated-tokens@npm:^2.0.0": - version: 2.0.3 - resolution: "comma-separated-tokens@npm:2.0.3" - checksum: 10/e3bf9e0332a5c45f49b90e79bcdb4a7a85f28d6a6f0876a94f1bb9b2bfbdbbb9292aac50e1e742d8c0db1e62a0229a106f57917e2d067fca951d81737651700d - languageName: node - linkType: hard - -"commander@npm:^10.0.1": - version: 10.0.1 - resolution: "commander@npm:10.0.1" - checksum: 10/8799faa84a30da985802e661cc9856adfaee324d4b138413013ef7f087e8d7924b144c30a1f1405475f0909f467665cd9e1ce13270a2f41b141dab0b7a58f3fb - languageName: node - linkType: hard - -"commander@npm:^13.0.0": - version: 13.1.0 - resolution: "commander@npm:13.1.0" - checksum: 10/d3b4b79e6be8471ddadacbb8cd441fe82154d7da7393b50e76165a9e29ccdb74fa911a186437b9a211d0fc071db6051915c94fb8ef16d77511d898e9dbabc6af - languageName: node - linkType: hard - -"commander@npm:^2.16.0, commander@npm:^2.20.0, commander@npm:^2.20.3, commander@npm:^2.5.0, commander@npm:^2.8.1": - version: 2.20.3 - resolution: "commander@npm:2.20.3" - checksum: 10/90c5b6898610cd075984c58c4f88418a4fb44af08c1b1415e9854c03171bec31b336b7f3e4cefe33de994b3f12b03c5e2d638da4316df83593b9e82554e7e95b - languageName: node - linkType: hard - -"commander@npm:^4.0.0": - version: 4.1.1 - resolution: "commander@npm:4.1.1" - checksum: 10/3b2dc4125f387dab73b3294dbcb0ab2a862f9c0ad748ee2b27e3544d25325b7a8cdfbcc228d103a98a716960b14478114a5206b5415bd48cdafa38797891562c - languageName: node - linkType: hard - -"commander@npm:^5.0.0": - version: 5.1.0 - resolution: "commander@npm:5.1.0" - checksum: 10/3e2ef5c003c5179250161e42ce6d48e0e69a54af970c65b7f985c70095240c260fd647453efd4c2c5a31b30ce468f373dc70f769c2f54a2c014abc4792aaca28 - languageName: node - linkType: hard - -"commander@npm:^7.2.0": - version: 7.2.0 - resolution: "commander@npm:7.2.0" - checksum: 10/9973af10727ad4b44f26703bf3e9fdc323528660a7590efe3aa9ad5042b4584c0deed84ba443f61c9d6f02dade54a5a5d3c95e306a1e1630f8374ae6db16c06d - languageName: node - linkType: hard - -"commander@npm:^8.3.0": - version: 8.3.0 - resolution: "commander@npm:8.3.0" - checksum: 10/6b7b5d334483ce24bd73c5dac2eab901a7dbb25fd983ea24a1eeac6e7166bb1967f641546e8abf1920afbde86a45fbfe5812fbc69d0dc451bb45ca416a12a3a3 - languageName: node - linkType: hard - -"commander@npm:^9.0.0, commander@npm:^9.5.0": - version: 9.5.0 - resolution: "commander@npm:9.5.0" - checksum: 10/41c49b3d0f94a1fbeb0463c85b13f15aa15a9e0b4d5e10a49c0a1d58d4489b549d62262b052ae0aa6cfda53299bee487bfe337825df15e342114dde543f82906 - languageName: node - linkType: hard - -"comment-parser@npm:^1.4.1": - version: 1.4.1 - resolution: "comment-parser@npm:1.4.1" - checksum: 10/16a3260b5e77819ebd9c99b0b65c7d6723b1ff73487bac9ce2d8f016a2847dd689e8663b88e1fad1444bbea89847c42f785708ac86a2c55f614f7095249bbf6b - languageName: node - linkType: hard - -"commondir@npm:^1.0.1": - version: 1.0.1 - resolution: "commondir@npm:1.0.1" - checksum: 10/4620bc4936a4ef12ce7dfcd272bb23a99f2ad68889a4e4ad766c9f8ad21af982511934d6f7050d4a8bde90011b1c15d56e61a1b4576d9913efbf697a20172d6c - languageName: node - linkType: hard - -"commoner@npm:^0.10.1": - version: 0.10.8 - resolution: "commoner@npm:0.10.8" - dependencies: - commander: "npm:^2.5.0" - detective: "npm:^4.3.1" - glob: "npm:^5.0.15" - graceful-fs: "npm:^4.1.2" - iconv-lite: "npm:^0.4.5" - mkdirp: "npm:^0.5.0" - private: "npm:^0.1.6" - q: "npm:^1.1.2" - recast: "npm:^0.11.17" - bin: - commonize: ./bin/commonize - checksum: 10/409707fed781111b608dedfb8e6173846febdb4f258c3fee8136416ff023b26dfa442e135a2b469df5b1aa6ce8d89a3105c6bb33f78d220d1449c1e2ad4b270c - languageName: node - linkType: hard - -"compare-version@npm:^0.1.2": - version: 0.1.2 - resolution: "compare-version@npm:0.1.2" - checksum: 10/0ceaf50b5f912c8eb8eeca19375e617209d200abebd771e9306510166462e6f91ad764f33f210a3058ee27c83f2f001a7a4ca32f509da2d207d0143a3438a020 - languageName: node - linkType: hard - -"compress-commons@npm:^6.0.2": - version: 6.0.2 - resolution: "compress-commons@npm:6.0.2" - dependencies: - crc-32: "npm:^1.2.0" - crc32-stream: "npm:^6.0.0" - is-stream: "npm:^2.0.1" - normalize-path: "npm:^3.0.0" - readable-stream: "npm:^4.0.0" - checksum: 10/78e3ba10aeef919a1c5bbac21e120f3e1558a31b2defebbfa1635274fc7f7e8a3a0ee748a06249589acd0b33a0d58144b8238ff77afc3220f8d403a96fcc13aa - languageName: node - linkType: hard - -"compressible@npm:~2.0.18": - version: 2.0.18 - resolution: "compressible@npm:2.0.18" - dependencies: - mime-db: "npm:>= 1.43.0 < 2" - checksum: 10/58321a85b375d39230405654721353f709d0c1442129e9a17081771b816302a012471a9b8f4864c7dbe02eef7f2aaac3c614795197092262e94b409c9be108f0 - languageName: node - linkType: hard - -"compression@npm:^1.7.4": - version: 1.8.1 - resolution: "compression@npm:1.8.1" - dependencies: - bytes: "npm:3.1.2" - compressible: "npm:~2.0.18" - debug: "npm:2.6.9" - negotiator: "npm:~0.6.4" - on-headers: "npm:~1.1.0" - safe-buffer: "npm:5.2.1" - vary: "npm:~1.1.2" - checksum: 10/e7552bfbd780f2003c6fe8decb44561f5cc6bc82f0c61e81122caff5ec656f37824084f52155b1e8ef31d7656cecbec9a2499b7a68e92e20780ffb39b479abb7 - languageName: node - linkType: hard - -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10/9680699c8e2b3af0ae22592cb764acaf973f292a7b71b8a06720233011853a58e256c89216a10cbe889727532fd77f8bcd49a760cedfde271b8e006c20e079f2 - languageName: node - linkType: hard - -"concurrently@npm:^8.2.2": - version: 8.2.2 - resolution: "concurrently@npm:8.2.2" - dependencies: - chalk: "npm:^4.1.2" - date-fns: "npm:^2.30.0" - lodash: "npm:^4.17.21" - rxjs: "npm:^7.8.1" - shell-quote: "npm:^1.8.1" - spawn-command: "npm:0.0.2" - supports-color: "npm:^8.1.1" - tree-kill: "npm:^1.2.2" - yargs: "npm:^17.7.2" - bin: - conc: dist/bin/concurrently.js - concurrently: dist/bin/concurrently.js - checksum: 10/dcb1aa69d9c611a7bda9d4fc0fe1e388f971d1744acec7e0d52dffa2ef55743f1266ec9292f414c5789b9f61734b3fce772bd005d4de9564a949fb121b97bae1 - languageName: node - linkType: hard - -"confbox@npm:^0.1.8": - version: 0.1.8 - resolution: "confbox@npm:0.1.8" - checksum: 10/4ebcfb1c6a3b25276734ec5722e88768eb61fc02f98e11960b845c5c62bc27fd05f493d2a8244d9675b24ef95afe4c0d511cdcad02c72f5eeea463cc26687999 - languageName: node - linkType: hard - -"config-file-ts@npm:^0.2.4": - version: 0.2.6 - resolution: "config-file-ts@npm:0.2.6" - dependencies: - glob: "npm:^10.3.10" - typescript: "npm:^5.3.3" - checksum: 10/825342ad226109606c701ccd8cb6a874142c0e3369d64ebc7d5a2c3f380ea9008cf20f807634d7943e42c0caa54227381e702f1deed9bb3b8d4a3e3483535117 - languageName: node - linkType: hard - -"configstore@npm:^5.0.1": - version: 5.0.1 - resolution: "configstore@npm:5.0.1" - dependencies: - dot-prop: "npm:^5.2.0" - graceful-fs: "npm:^4.1.2" - make-dir: "npm:^3.0.0" - unique-string: "npm:^2.0.0" - write-file-atomic: "npm:^3.0.0" - xdg-basedir: "npm:^4.0.0" - checksum: 10/60ef65d493b63f96e14b11ba7ec072fdbf3d40110a94fb7199d1c287761bdea5c5244e76b2596325f30c1b652213aa75de96ea20afd4a5f82065e61ea090988e - languageName: node - linkType: hard - -"connect-history-api-fallback@npm:^2.0.0": - version: 2.0.0 - resolution: "connect-history-api-fallback@npm:2.0.0" - checksum: 10/3b26bf4041fdb33deacdcb3af9ae11e9a0b413fb14c95844d74a460b55e407625b364955dcf965c654605cde9d24ad5dad423c489aa430825aab2035859aba0c - languageName: node - linkType: hard - -"consola@npm:^3.4.0": - version: 3.4.2 - resolution: "consola@npm:3.4.2" - checksum: 10/32192c9f50d7cac27c5d7c4ecd3ff3679aea863e6bf5bd6a9cc2b05d1cd78addf5dae71df08c54330c142be8e7fbd46f051030129b57c6aacdd771efe409c4b2 - languageName: node - linkType: hard - -"console-control-strings@npm:^1.1.0": - version: 1.1.0 - resolution: "console-control-strings@npm:1.1.0" - checksum: 10/27b5fa302bc8e9ae9e98c03c66d76ca289ad0c61ce2fe20ab288d288bee875d217512d2edb2363fc83165e88f1c405180cf3f5413a46e51b4fe1a004840c6cdb - languageName: node - linkType: hard - -"content-disposition@npm:~0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10/b7f4ce176e324f19324be69b05bf6f6e411160ac94bc523b782248129eb1ef3be006f6cff431aaea5e337fe5d176ce8830b8c2a1b721626ead8933f0cbe78720 - languageName: node - linkType: hard - -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10/585847d98dc7fb8035c02ae2cb76c7a9bd7b25f84c447e5ed55c45c2175e83617c8813871b4ee22f368126af6b2b167df655829007b21aa10302873ea9c62662 - languageName: node - linkType: hard - -"convert-source-map@npm:^1.7.0": - version: 1.9.0 - resolution: "convert-source-map@npm:1.9.0" - checksum: 10/dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 - languageName: node - linkType: hard - -"convert-source-map@npm:^2.0.0": - version: 2.0.0 - resolution: "convert-source-map@npm:2.0.0" - checksum: 10/c987be3ec061348cdb3c2bfb924bec86dea1eacad10550a85ca23edb0fe3556c3a61c7399114f3331ccb3499d7fd0285ab24566e5745929412983494c3926e15 - languageName: node - linkType: hard - -"cookie-signature@npm:~1.0.6": - version: 1.0.7 - resolution: "cookie-signature@npm:1.0.7" - checksum: 10/1a62808cd30d15fb43b70e19829b64d04b0802d8ef00275b57d152de4ae6a3208ca05c197b6668d104c4d9de389e53ccc2d3bc6bcaaffd9602461417d8c40710 - languageName: node - linkType: hard - -"cookie@npm:~0.7.1": - version: 0.7.2 - resolution: "cookie@npm:0.7.2" - checksum: 10/24b286c556420d4ba4e9bc09120c9d3db7d28ace2bd0f8ccee82422ce42322f73c8312441271e5eefafbead725980e5996cc02766dbb89a90ac7f5636ede608f - languageName: node - linkType: hard - -"copy-to-clipboard@npm:^3.3.1": - version: 3.3.3 - resolution: "copy-to-clipboard@npm:3.3.3" - dependencies: - toggle-selection: "npm:^1.0.6" - checksum: 10/e0a325e39b7615108e6c1c8ac110ae7b829cdc4ee3278b1df6a0e4228c490442cc86444cd643e2da344fbc424b3aab8909e2fec82f8bc75e7e5b190b7c24eecf - languageName: node - linkType: hard - -"copy-webpack-plugin@npm:^11.0.0": - version: 11.0.0 - resolution: "copy-webpack-plugin@npm:11.0.0" - dependencies: - fast-glob: "npm:^3.2.11" - glob-parent: "npm:^6.0.1" - globby: "npm:^13.1.1" - normalize-path: "npm:^3.0.0" - schema-utils: "npm:^4.0.0" - serialize-javascript: "npm:^6.0.0" - peerDependencies: - webpack: ^5.1.0 - checksum: 10/dc103be79ef72a4bb0bc8ce498b2cca964e3771326b009a1f3cb2d17960fca17538a725b09427161eccf485e2badbbd5490ddf2570f7976938e4e7338f1fd7e9 - languageName: node - linkType: hard - -"core-util-is@npm:1.0.2": - version: 1.0.2 - resolution: "core-util-is@npm:1.0.2" - checksum: 10/d0f7587346b44a1fe6c269267e037dd34b4787191e473c3e685f507229d88561c40eb18872fabfff02977301815d474300b7bfbd15396c13c5377393f7e87ec3 - languageName: node - linkType: hard - -"core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 10/9de8597363a8e9b9952491ebe18167e3b36e7707569eed0ebf14f8bba773611376466ae34575bca8cfe3c767890c859c74056084738f09d4e4a6f902b2ad7d99 - languageName: node - linkType: hard - -"cpu-features@npm:~0.0.10": - version: 0.0.10 - resolution: "cpu-features@npm:0.0.10" - dependencies: - buildcheck: "npm:~0.0.6" - nan: "npm:^2.19.0" - node-gyp: "npm:latest" - checksum: 10/941b828ffe77582b2bdc03e894c913e2e2eeb5c6043ccb01338c34446d026f6888dc480ecb85e684809f9c3889d245f3648c7907eb61a92bdfc6aed039fcda8d - languageName: node - linkType: hard - -"crc-32@npm:^1.2.0, crc-32@npm:^1.2.2": - version: 1.2.2 - resolution: "crc-32@npm:1.2.2" - bin: - crc32: bin/crc32.njs - checksum: 10/824f696a5baaf617809aa9cd033313c8f94f12d15ebffa69f10202480396be44aef9831d900ab291638a8022ed91c360696dd5b1ba691eb3f34e60be8835b7c3 - languageName: node - linkType: hard - -"crc32-stream@npm:^6.0.0": - version: 6.0.0 - resolution: "crc32-stream@npm:6.0.0" - dependencies: - crc-32: "npm:^1.2.0" - readable-stream: "npm:^4.0.0" - checksum: 10/e6edc2f81bc387daef6d18b2ac18c2ffcb01b554d3b5c7d8d29b177505aafffba574658fdd23922767e8dab1183d1962026c98c17e17fb272794c33293ef607c - languageName: node - linkType: hard - -"crc@npm:^3.8.0": - version: 3.8.0 - resolution: "crc@npm:3.8.0" - dependencies: - buffer: "npm:^5.1.0" - checksum: 10/3a43061e692113d60fbaf5e438c5f6aa3374fe2368244a75cc083ecee6762513bcee8583f67c2c56feea0b0c72b41b7304fbd3c1e26cfcfaec310b9a18543fa8 - languageName: node - linkType: hard - -"create-ecdh@npm:^4.0.4": - version: 4.0.4 - resolution: "create-ecdh@npm:4.0.4" - dependencies: - bn.js: "npm:^4.1.0" - elliptic: "npm:^6.5.3" - checksum: 10/0dd7fca9711d09e152375b79acf1e3f306d1a25ba87b8ff14c2fd8e68b83aafe0a7dd6c4e540c9ffbdd227a5fa1ad9b81eca1f233c38bb47770597ba247e614b - languageName: node - linkType: hard - -"create-hash@npm:^1.1.0, create-hash@npm:^1.1.2, create-hash@npm:^1.2.0": - version: 1.2.0 - resolution: "create-hash@npm:1.2.0" - dependencies: - cipher-base: "npm:^1.0.1" - inherits: "npm:^2.0.1" - md5.js: "npm:^1.3.4" - ripemd160: "npm:^2.0.1" - sha.js: "npm:^2.4.0" - checksum: 10/3cfef32043b47a8999602af9bcd74966db6971dd3eb828d1a479f3a44d7f58e38c1caf34aa21a01941cc8d9e1a841738a732f200f00ea155f8a8835133d2e7bc - languageName: node - linkType: hard - -"create-hmac@npm:^1.1.4, create-hmac@npm:^1.1.7": - version: 1.1.7 - resolution: "create-hmac@npm:1.1.7" - dependencies: - cipher-base: "npm:^1.0.3" - create-hash: "npm:^1.1.0" - inherits: "npm:^2.0.1" - ripemd160: "npm:^2.0.0" - safe-buffer: "npm:^5.0.1" - sha.js: "npm:^2.4.8" - checksum: 10/2b26769f87e99ef72150bf99d1439d69272b2e510e23a2b8daf4e93e2412f4842504237d726044fa797cb20ee0ec8bee78d414b11f2d7ca93299185c93df0dae - languageName: node - linkType: hard - -"cross-fetch@npm:^4.0.0": - version: 4.1.0 - resolution: "cross-fetch@npm:4.1.0" - dependencies: - node-fetch: "npm:^2.7.0" - checksum: 10/07624940607b64777d27ec9c668ddb6649e8c59ee0a5a10e63a51ce857e2bbb1294a45854a31c10eccb91b65909a5b199fcb0217339b44156f85900a7384f489 - languageName: node - linkType: hard - -"cross-spawn@npm:^7.0.1, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": - version: 7.0.6 - resolution: "cross-spawn@npm:7.0.6" - dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10/0d52657d7ae36eb130999dffff1168ec348687b48dd38e2ff59992ed916c88d328cf1d07ff4a4a10bc78de5e1c23f04b306d569e42f7a2293915c081e4dfee86 - languageName: node - linkType: hard - -"crypto-browserify@npm:^3.12.0": - version: 3.12.1 - resolution: "crypto-browserify@npm:3.12.1" - dependencies: - browserify-cipher: "npm:^1.0.1" - browserify-sign: "npm:^4.2.3" - create-ecdh: "npm:^4.0.4" - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - diffie-hellman: "npm:^5.0.3" - hash-base: "npm:~3.0.4" - inherits: "npm:^2.0.4" - pbkdf2: "npm:^3.1.2" - public-encrypt: "npm:^4.0.3" - randombytes: "npm:^2.1.0" - randomfill: "npm:^1.0.4" - checksum: 10/13da0b5f61b3e8e68fcbebf0394f2b2b4d35a0d0ba6ab762720c13391d3697ea42735260a26328a6a3d872be7d4cb5abe98a7a8f88bc93da7ba59b993331b409 - languageName: node - linkType: hard - -"crypto-random-string@npm:^2.0.0": - version: 2.0.0 - resolution: "crypto-random-string@npm:2.0.0" - checksum: 10/0283879f55e7c16fdceacc181f87a0a65c53bc16ffe1d58b9d19a6277adcd71900d02bb2c4843dd55e78c51e30e89b0fec618a7f170ebcc95b33182c28f05fd6 - languageName: node - linkType: hard - -"css-box-model@npm:^1.2.0": - version: 1.2.1 - resolution: "css-box-model@npm:1.2.1" - dependencies: - tiny-invariant: "npm:^1.0.6" - checksum: 10/54778883733e59058b5de983cf442b9db6c1494543d4d84a3defd05b51b991a1865f59e4ae424e733af2aa1fdb6e0bd905cb73db0e7e548fbd89853859fedc81 - languageName: node - linkType: hard - -"css-color-keywords@npm:^1.0.0": - version: 1.0.0 - resolution: "css-color-keywords@npm:1.0.0" - checksum: 10/8f125e3ad477bd03c77b533044bd9e8a6f7c0da52d49bbc0bbe38327b3829d6ba04d368ca49dd9ff3b667d2fc8f1698d891c198bbf8feade1a5501bf5a296408 - languageName: node - linkType: hard - -"css-loader@npm:^6.8.1": - version: 6.11.0 - resolution: "css-loader@npm:6.11.0" - dependencies: - icss-utils: "npm:^5.1.0" - postcss: "npm:^8.4.33" - postcss-modules-extract-imports: "npm:^3.1.0" - postcss-modules-local-by-default: "npm:^4.0.5" - postcss-modules-scope: "npm:^3.2.0" - postcss-modules-values: "npm:^4.0.0" - postcss-value-parser: "npm:^4.2.0" - semver: "npm:^7.5.4" - peerDependencies: - "@rspack/core": 0.x || 1.x - webpack: ^5.0.0 - peerDependenciesMeta: - "@rspack/core": - optional: true - webpack: - optional: true - checksum: 10/9e3665509f6786d46683de5c5f5c4bdd4aa62396b4017b41dbbb41ea5ada4012c80ee1e3302b79b504bc24da7fa69e3552d99006cecc953e0d9eef4a3053b929 - languageName: node - linkType: hard - -"css-select@npm:^4.1.3": - version: 4.3.0 - resolution: "css-select@npm:4.3.0" - dependencies: - boolbase: "npm:^1.0.0" - css-what: "npm:^6.0.1" - domhandler: "npm:^4.3.1" - domutils: "npm:^2.8.0" - nth-check: "npm:^2.0.1" - checksum: 10/8f7310c9af30ccaba8f72cb4a54d32232c53bf9ba05d019b693e16bfd7ba5df0affc1f4d74b1ee55923643d23b80a837eedcf60938c53356e479b04049ff9994 - languageName: node - linkType: hard - -"css-to-react-native@npm:3.2.0": - version: 3.2.0 - resolution: "css-to-react-native@npm:3.2.0" - dependencies: - camelize: "npm:^1.0.0" - css-color-keywords: "npm:^1.0.0" - postcss-value-parser: "npm:^4.0.2" - checksum: 10/62ef744254e333abc696efdc945ecf13ad6ba7b726d0a39c0405b2fcb86542aa2f3fe7b7b6770f67ae9679d98b159b4d66353107bf7d6144a445eafcf5fa250a - languageName: node - linkType: hard - -"css-what@npm:^6.0.1": - version: 6.2.2 - resolution: "css-what@npm:6.2.2" - checksum: 10/3c5a53be94728089bd1716f915f7f96adde5dd8bf374610eb03982266f3d860bf1ebaf108cda30509d02ef748fe33eaa59aa75911e2c49ee05a85ef1f9fb5223 - languageName: node - linkType: hard - -"css.escape@npm:^1.5.1": - version: 1.5.1 - resolution: "css.escape@npm:1.5.1" - checksum: 10/f6d38088d870a961794a2580b2b2af1027731bb43261cfdce14f19238a88664b351cc8978abc20f06cc6bbde725699dec8deb6fe9816b139fc3f2af28719e774 - languageName: node - linkType: hard - -"cssesc@npm:^3.0.0": - version: 3.0.0 - resolution: "cssesc@npm:3.0.0" - bin: - cssesc: bin/cssesc - checksum: 10/0e161912c1306861d8f46e1883be1cbc8b1b2879f0f509287c0db71796e4ddfb97ac96bdfca38f77f452e2c10554e1bb5678c99b07a5cf947a12778f73e47e12 - languageName: node - linkType: hard - -"cssstyle@npm:^4.0.1": - version: 4.6.0 - resolution: "cssstyle@npm:4.6.0" - dependencies: - "@asamuzakjp/css-color": "npm:^3.2.0" - rrweb-cssom: "npm:^0.8.0" - checksum: 10/1cb25c9d66b87adb165f978b75cdeb6f225d7e31ba30a8934666046a0be037e4e7200d359bfa79d4f1a4aef1083ea09633b81bcdb36a2f2ac888e8c73ea3a289 - languageName: node - linkType: hard - -"csstype@npm:3.2.3, csstype@npm:^3.2.2": - version: 3.2.3 - resolution: "csstype@npm:3.2.3" - checksum: 10/ad41baf7e2ffac65ab544d79107bf7cd1a4bb9bab9ac3302f59ab4ba655d5e30942a8ae46e10ba160c6f4ecea464cc95b975ca2fefbdeeacd6ac63f12f99fe1f - languageName: node - linkType: hard - -"cuint@npm:^0.2.2": - version: 0.2.2 - resolution: "cuint@npm:0.2.2" - checksum: 10/c1b98971f4a1b32ce71ec82eac87df87b54ee85d982e3967a6dd89f19ffd3ebbbdb82e3738e489f475611b6ed126c0deba05ed9ecffea0a721a4d43773ce0670 - languageName: node - linkType: hard - -"d@npm:1, d@npm:^1.0.1, d@npm:^1.0.2": - version: 1.0.2 - resolution: "d@npm:1.0.2" - dependencies: - es5-ext: "npm:^0.10.64" - type: "npm:^2.7.2" - checksum: 10/a3f45ef964622f683f6a1cb9b8dcbd75ce490cd2f4ac9794099db3d8f0e2814d412d84cd3fe522e58feb1f273117bb480f29c5381f6225f0abca82517caaa77a - languageName: node - linkType: hard - -"data-uri-to-buffer@npm:^4.0.0": - version: 4.0.1 - resolution: "data-uri-to-buffer@npm:4.0.1" - checksum: 10/0d0790b67ffec5302f204c2ccca4494f70b4e2d940fea3d36b09f0bb2b8539c2e86690429eb1f1dc4bcc9e4df0644193073e63d9ee48ac9fce79ec1506e4aa4c - languageName: node - linkType: hard - -"data-urls@npm:^5.0.0": - version: 5.0.0 - resolution: "data-urls@npm:5.0.0" - dependencies: - whatwg-mimetype: "npm:^4.0.0" - whatwg-url: "npm:^14.0.0" - checksum: 10/5c40568c31b02641a70204ff233bc4e42d33717485d074244a98661e5f2a1e80e38fe05a5755dfaf2ee549f2ab509d6a3af2a85f4b2ad2c984e5d176695eaf46 - languageName: node - linkType: hard - -"data-view-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-buffer@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10/c10b155a4e93999d3a215d08c23eea95f865e1f510b2e7748fcae1882b776df1afe8c99f483ace7fc0e5a3193ab08da138abebc9829d12003746c5a338c4d644 - languageName: node - linkType: hard - -"data-view-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10/2a47055fcf1ab3ec41b00b6f738c6461a841391a643c9ed9befec1117c1765b4d492661d97fb7cc899200c328949dca6ff189d2c6537d96d60e8a02dfe3c95f7 - languageName: node - linkType: hard - -"data-view-byte-offset@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-byte-offset@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.1" - checksum: 10/fa3bdfa0968bea6711ee50375094b39f561bce3f15f9e558df59de9c25f0bdd4cddc002d9c1d70ac7772ebd36854a7e22d1761e7302a934e6f1c2263bcf44aa2 - languageName: node - linkType: hard - -"date-fns@npm:^2.30.0": - version: 2.30.0 - resolution: "date-fns@npm:2.30.0" - dependencies: - "@babel/runtime": "npm:^7.21.0" - checksum: 10/70b3e8ea7aaaaeaa2cd80bd889622a4bcb5d8028b4de9162cbcda359db06e16ff6e9309e54eead5341e71031818497f19aaf9839c87d1aba1e27bb4796e758a9 - languageName: node - linkType: hard - -"dateformat@npm:^4.6.3": - version: 4.6.3 - resolution: "dateformat@npm:4.6.3" - checksum: 10/5c149c91bf9ce2142c89f84eee4c585f0cb1f6faf2536b1af89873f862666a28529d1ccafc44750aa01384da2197c4f76f4e149a3cc0c1cb2c46f5cc45f2bcb5 - languageName: node - linkType: hard - -"debug@npm:2.6.9, debug@npm:^2.2.0": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: "npm:2.0.0" - checksum: 10/e07005f2b40e04f1bd14a3dd20520e9c4f25f60224cb006ce9d6781732c917964e9ec029fc7f1a151083cd929025ad5133814d4dc624a9aaf020effe4914ed14 - languageName: node - linkType: hard - -"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:^4.4.0": - version: 4.4.3 - resolution: "debug@npm:4.4.3" - dependencies: - ms: "npm:^2.1.3" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10/9ada3434ea2993800bd9a1e320bd4aa7af69659fb51cca685d390949434bc0a8873c21ed7c9b852af6f2455a55c6d050aa3937d52b3c69f796dab666f762acad - languageName: node - linkType: hard - -"debug@npm:^3.2.7": - version: 3.2.7 - resolution: "debug@npm:3.2.7" - dependencies: - ms: "npm:^2.1.1" - checksum: 10/d86fd7be2b85462297ea16f1934dc219335e802f629ca9a69b63ed8ed041dda492389bb2ee039217c02e5b54792b1c51aa96ae954cf28634d363a2360c7a1639 - languageName: node - linkType: hard - -"decamelize-keys@npm:^1.1.0": - version: 1.1.1 - resolution: "decamelize-keys@npm:1.1.1" - dependencies: - decamelize: "npm:^1.1.0" - map-obj: "npm:^1.0.0" - checksum: 10/71d5898174f17a8d2303cecc98ba0236e842948c4d042a8180d5e749be8442220bca2d16dd93bebd7b49e86c807814273212e4da0fae67be7c58c282ff76057a - languageName: node - linkType: hard - -"decamelize@npm:^1.1.0, decamelize@npm:^1.2.0": - version: 1.2.0 - resolution: "decamelize@npm:1.2.0" - checksum: 10/ad8c51a7e7e0720c70ec2eeb1163b66da03e7616d7b98c9ef43cce2416395e84c1e9548dd94f5f6ffecfee9f8b94251fc57121a8b021f2ff2469b2bae247b8aa - languageName: node - linkType: hard - -"decimal.js@npm:^10.4.3": - version: 10.6.0 - resolution: "decimal.js@npm:10.6.0" - checksum: 10/c0d45842d47c311d11b38ce7ccc911121953d4df3ebb1465d92b31970eb4f6738a065426a06094af59bee4b0d64e42e7c8984abd57b6767c64ea90cf90bb4a69 - languageName: node - linkType: hard - -"decode-named-character-reference@npm:^1.0.0": - version: 1.2.0 - resolution: "decode-named-character-reference@npm:1.2.0" - dependencies: - character-entities: "npm:^2.0.0" - checksum: 10/f26b23046c1a137c0b41fa51e3ce07ba8364640322c742a31570999784abc8572fc24cb108a76b14ff72ddb75d35aad3d14b10d7743639112145a2664b9d1864 - languageName: node - linkType: hard - -"decode-uri-component@npm:^0.4.1": - version: 0.4.1 - resolution: "decode-uri-component@npm:0.4.1" - checksum: 10/74eec26f7bec3767164e37d526ef19bc1214cb0bbeeeea1c4f0ceb79299e5c38d3ba734e7243d829842aa140f24e5d020f54cc25b17c7082461c8eead8a72ce3 - languageName: node - linkType: hard - -"decompress-response@npm:^3.3.0": - version: 3.3.0 - resolution: "decompress-response@npm:3.3.0" - dependencies: - mimic-response: "npm:^1.0.0" - checksum: 10/952552ac3bd7de2fc18015086b09468645c9638d98a551305e485230ada278c039c91116e946d07894b39ee53c0f0d5b6473f25a224029344354513b412d7380 - languageName: node - linkType: hard - -"decompress-response@npm:^6.0.0": - version: 6.0.0 - resolution: "decompress-response@npm:6.0.0" - dependencies: - mimic-response: "npm:^3.1.0" - checksum: 10/d377cf47e02d805e283866c3f50d3d21578b779731e8c5072d6ce8c13cc31493db1c2f6784da9d1d5250822120cefa44f1deab112d5981015f2e17444b763812 - languageName: node - linkType: hard - -"deep-equal@npm:^1.1.1": - version: 1.1.2 - resolution: "deep-equal@npm:1.1.2" - dependencies: - is-arguments: "npm:^1.1.1" - is-date-object: "npm:^1.0.5" - is-regex: "npm:^1.1.4" - object-is: "npm:^1.1.5" - object-keys: "npm:^1.1.1" - regexp.prototype.flags: "npm:^1.5.1" - checksum: 10/c9d2ed2a0d93a2ee286bdb320cd51c78cd4c310b2161d1ede6476b67ca1d73860e7ff63b10927830aa4b9eca2a48073cfa54c8c4a1b2246397bda618c2138e97 - languageName: node - linkType: hard - -"deep-equal@npm:^2.0.5": - version: 2.2.3 - resolution: "deep-equal@npm:2.2.3" - dependencies: - array-buffer-byte-length: "npm:^1.0.0" - call-bind: "npm:^1.0.5" - es-get-iterator: "npm:^1.1.3" - get-intrinsic: "npm:^1.2.2" - is-arguments: "npm:^1.1.1" - is-array-buffer: "npm:^3.0.2" - is-date-object: "npm:^1.0.5" - is-regex: "npm:^1.1.4" - is-shared-array-buffer: "npm:^1.0.2" - isarray: "npm:^2.0.5" - object-is: "npm:^1.1.5" - object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.4" - regexp.prototype.flags: "npm:^1.5.1" - side-channel: "npm:^1.0.4" - which-boxed-primitive: "npm:^1.0.2" - which-collection: "npm:^1.0.1" - which-typed-array: "npm:^1.1.13" - checksum: 10/1ce49d0b71d0f14d8ef991a742665eccd488dfc9b3cada069d4d7a86291e591c92d2589c832811dea182b4015736b210acaaebce6184be356c1060d176f5a05f - languageName: node - linkType: hard - -"deep-extend@npm:^0.6.0": - version: 0.6.0 - resolution: "deep-extend@npm:0.6.0" - checksum: 10/7be7e5a8d468d6b10e6a67c3de828f55001b6eb515d014f7aeb9066ce36bd5717161eb47d6a0f7bed8a9083935b465bc163ee2581c8b128d29bf61092fdf57a7 - languageName: node - linkType: hard - -"deep-is@npm:^0.1.3": - version: 0.1.4 - resolution: "deep-is@npm:0.1.4" - checksum: 10/ec12d074aef5ae5e81fa470b9317c313142c9e8e2afe3f8efa124db309720db96d1d222b82b84c834e5f87e7a614b44a4684b6683583118b87c833b3be40d4d8 - languageName: node - linkType: hard - -"deepmerge@npm:^4.0.0, deepmerge@npm:^4.2.2": - version: 4.3.1 - resolution: "deepmerge@npm:4.3.1" - checksum: 10/058d9e1b0ff1a154468bf3837aea436abcfea1ba1d165ddaaf48ca93765fdd01a30d33c36173da8fbbed951dd0a267602bc782fe288b0fc4b7e1e7091afc4529 - languageName: node - linkType: hard - -"default-gateway@npm:^6.0.3": - version: 6.0.3 - resolution: "default-gateway@npm:6.0.3" - dependencies: - execa: "npm:^5.0.0" - checksum: 10/126f8273ecac8ee9ff91ea778e8784f6cd732d77c3157e8c5bdd6ed03651b5291f71446d05bc02d04073b1e67583604db5394ea3cf992ede0088c70ea15b7378 - languageName: node - linkType: hard - -"defaults@npm:^1.0.3": - version: 1.0.4 - resolution: "defaults@npm:1.0.4" - dependencies: - clone: "npm:^1.0.2" - checksum: 10/3a88b7a587fc076b84e60affad8b85245c01f60f38fc1d259e7ac1d89eb9ce6abb19e27215de46b98568dd5bc48471730b327637e6f20b0f1bc85cf00440c80a - languageName: node - linkType: hard - -"defer-to-connect@npm:^1.0.1": - version: 1.1.3 - resolution: "defer-to-connect@npm:1.1.3" - checksum: 10/9491b301dcfa04956f989481ba7a43c2231044206269eb4ab64a52d6639ee15b1252262a789eb4239fb46ab63e44d4e408641bae8e0793d640aee55398cb3930 - languageName: node - linkType: hard - -"defer-to-connect@npm:^2.0.0": - version: 2.0.1 - resolution: "defer-to-connect@npm:2.0.1" - checksum: 10/8a9b50d2f25446c0bfefb55a48e90afd58f85b21bcf78e9207cd7b804354f6409032a1705c2491686e202e64fc05f147aa5aa45f9aa82627563f045937f5791b - languageName: node - linkType: hard - -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4": - version: 1.1.4 - resolution: "define-data-property@npm:1.1.4" - dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.0.1" - checksum: 10/abdcb2505d80a53524ba871273e5da75e77e52af9e15b3aa65d8aad82b8a3a424dad7aee2cc0b71470ac7acf501e08defac362e8b6a73cdb4309f028061df4ae - languageName: node - linkType: hard - -"define-lazy-prop@npm:^2.0.0": - version: 2.0.0 - resolution: "define-lazy-prop@npm:2.0.0" - checksum: 10/0115fdb065e0490918ba271d7339c42453d209d4cb619dfe635870d906731eff3e1ade8028bb461ea27ce8264ec5e22c6980612d332895977e89c1bbc80fcee2 - languageName: node - linkType: hard - -"define-properties@npm:^1.1.3, define-properties@npm:^1.2.1": - version: 1.2.1 - resolution: "define-properties@npm:1.2.1" - dependencies: - define-data-property: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - object-keys: "npm:^1.1.1" - checksum: 10/b4ccd00597dd46cb2d4a379398f5b19fca84a16f3374e2249201992f36b30f6835949a9429669ee6b41b6e837205a163eadd745e472069e70dfc10f03e5fcc12 - languageName: node - linkType: hard - -"defined@npm:^1.0.0": - version: 1.0.1 - resolution: "defined@npm:1.0.1" - checksum: 10/c4c3c41819721ddc07f689a53cfdf5edb085d8d762e410e9e7705fdbcccb41ff34a7331e795cdc2c416f5e524215413815b47051507c0cd4d3c8a8d74baf8ccb - languageName: node - linkType: hard - -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 10/46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 - languageName: node - linkType: hard - -"depd@npm:2.0.0, depd@npm:~2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10/c0c8ff36079ce5ada64f46cc9d6fd47ebcf38241105b6e0c98f412e8ad91f084bcf906ff644cc3a4bd876ca27a62accb8b0fff72ea6ed1a414b89d8506f4a5ca - languageName: node - linkType: hard - -"depd@npm:~1.1.2": - version: 1.1.2 - resolution: "depd@npm:1.1.2" - checksum: 10/2ed6966fc14463a9e85451db330ab8ba041efed0b9a1a472dbfc6fbf2f82bab66491915f996b25d8517dddc36c8c74e24c30879b34877f3c4410733444a51d1d - languageName: node - linkType: hard - -"dependency-tree@npm:^9.0.0": - version: 9.0.0 - resolution: "dependency-tree@npm:9.0.0" - dependencies: - commander: "npm:^2.20.3" - debug: "npm:^4.3.1" - filing-cabinet: "npm:^3.0.1" - precinct: "npm:^9.0.0" - typescript: "npm:^4.0.0" - bin: - dependency-tree: bin/cli.js - checksum: 10/7ffc6009bf6eeea712cead1c18d57f87e2d9c0ca5a3327b12daf368de5350f85c613558ae4274e7b49b23010533746917d84ad75dd4fd4d731d61a2eaaf9e310 - languageName: node - linkType: hard - -"deprecation@npm:^2.0.0": - version: 2.3.1 - resolution: "deprecation@npm:2.3.1" - checksum: 10/f56a05e182c2c195071385455956b0c4106fe14e36245b00c689ceef8e8ab639235176a96977ba7c74afb173317fac2e0ec6ec7a1c6d1e6eaa401c586c714132 - languageName: node - linkType: hard - -"dequal@npm:^2.0.0": - version: 2.0.3 - resolution: "dequal@npm:2.0.3" - checksum: 10/6ff05a7561f33603df87c45e389c9ac0a95e3c056be3da1a0c4702149e3a7f6fe5ffbb294478687ba51a9e95f3a60e8b6b9005993acd79c292c7d15f71964b6b - languageName: node - linkType: hard - -"des.js@npm:^1.0.0": - version: 1.1.0 - resolution: "des.js@npm:1.1.0" - dependencies: - inherits: "npm:^2.0.1" - minimalistic-assert: "npm:^1.0.0" - checksum: 10/d35fc82b5a0b2127b12699212e90b54ddd8134e0cf8d27a8c30507ed3572aa574ab71800cbb473769128a52dcf21acc3271c5c359508a5aa772e990df3b1a698 - languageName: node - linkType: hard - -"destroy@npm:1.2.0, destroy@npm:~1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10/0acb300b7478a08b92d810ab229d5afe0d2f4399272045ab22affa0d99dbaf12637659411530a6fcd597a9bdac718fc94373a61a95b4651bbc7b83684a565e38 - languageName: node - linkType: hard - -"detect-browser@npm:^5.3.0": - version: 5.3.0 - resolution: "detect-browser@npm:5.3.0" - checksum: 10/4a8551e1f5170633c9aa976f16c57f81f1044d071b2eb853c572bd817bf9cd0cc90c9c520d950edb5accd31b1b0c8ddb7a96e82040b0b5579f9f09c77446a117 - languageName: node - linkType: hard - -"detect-indent@npm:^6.0.0": - version: 6.1.0 - resolution: "detect-indent@npm:6.1.0" - checksum: 10/ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d - languageName: node - linkType: hard - -"detect-libc@npm:^2.0.0": - version: 2.1.2 - resolution: "detect-libc@npm:2.1.2" - checksum: 10/b736c8d97d5d46164c0d1bed53eb4e6a3b1d8530d460211e2d52f1c552875e706c58a5376854e4e54f8b828c9cada58c855288c968522eb93ac7696d65970766 - languageName: node - linkType: hard - -"detect-node@npm:^2.0.4": - version: 2.1.0 - resolution: "detect-node@npm:2.1.0" - checksum: 10/832184ec458353e41533ac9c622f16c19f7c02d8b10c303dfd3a756f56be93e903616c0bb2d4226183c9351c15fc0b3dba41a17a2308262afabcfa3776e6ae6e - languageName: node - linkType: hard - -"detective-amd@npm:^3.1.0": - version: 3.1.2 - resolution: "detective-amd@npm:3.1.2" - dependencies: - ast-module-types: "npm:^3.0.0" - escodegen: "npm:^2.0.0" - get-amd-module-type: "npm:^3.0.0" - node-source-walk: "npm:^4.2.0" - bin: - detective-amd: bin/cli.js - checksum: 10/0b71555edad8e85c9a2ae85e2799d5faf2bdfe0de969587c9288ca76e717494678e34f444dffe32ffdd432e85ce50ca7017a5d0441a4855677a45a40c4590c74 - languageName: node - linkType: hard - -"detective-amd@npm:^4.0.1, detective-amd@npm:^4.1.0": - version: 4.2.0 - resolution: "detective-amd@npm:4.2.0" - dependencies: - ast-module-types: "npm:^4.0.0" - escodegen: "npm:^2.0.0" - get-amd-module-type: "npm:^4.1.0" - node-source-walk: "npm:^5.0.1" - bin: - detective-amd: bin/cli.js - checksum: 10/c1e829a3202045796105680c9fe90ac61f63b0ccecc12cc30c7204c9e7ec22a4e2c3e2357719b9346a4e3579eba778cdce9a050e642938e2a4c8b57b091278e4 - languageName: node - linkType: hard - -"detective-cjs@npm:^3.1.1": - version: 3.1.3 - resolution: "detective-cjs@npm:3.1.3" - dependencies: - ast-module-types: "npm:^3.0.0" - node-source-walk: "npm:^4.0.0" - checksum: 10/a691cb4afbbfea59d9aae0ee00752ec1a825a7ef18fc9178b53664975f162f3b537268590def009d9ce1cccfc5bc4f38cf775df08d0872aaacc05d96c72de85a - languageName: node - linkType: hard - -"detective-cjs@npm:^4.0.0, detective-cjs@npm:^4.1.0": - version: 4.1.0 - resolution: "detective-cjs@npm:4.1.0" - dependencies: - ast-module-types: "npm:^4.0.0" - node-source-walk: "npm:^5.0.1" - checksum: 10/17e40183959e9f377333a9fd03dcf4cbabf1b7a9f588882311066ecaaad68ad16765a7b63ffc096fc91d2a3c14ac044ed1823257c76105c9cb96dfc141a806e2 - languageName: node - linkType: hard - -"detective-es6@npm:^2.2.1": - version: 2.2.2 - resolution: "detective-es6@npm:2.2.2" - dependencies: - node-source-walk: "npm:^4.0.0" - checksum: 10/9ee9909c089f5dcd1f89eccd347d509197996280ba24e2e08742bbc5ca3eef655ff07b4edfd76b52d6b4376ba03b8ec17d621c9f9c4382a6ba233dc1b1d00d33 - languageName: node - linkType: hard - -"detective-es6@npm:^3.0.0, detective-es6@npm:^3.0.1": - version: 3.0.1 - resolution: "detective-es6@npm:3.0.1" - dependencies: - node-source-walk: "npm:^5.0.0" - checksum: 10/881a0c16b49504c212e61a521231ebbb4299a6102b178230959c74d2ca22d5f7538dfaf9518d01fb568ff93eadcf61d865d4428c9fed893dd4c91a7f29d515c5 - languageName: node - linkType: hard - -"detective-less@npm:^1.0.2": - version: 1.0.2 - resolution: "detective-less@npm:1.0.2" - dependencies: - debug: "npm:^4.0.0" - gonzales-pe: "npm:^4.2.3" - node-source-walk: "npm:^4.0.0" - checksum: 10/858936fbad87423bd5d7502ff5fafca023e7c99e4006ed01b31c12c4b5ff8697edce91419798479d857efec68ee8f022fcac64de5530db6a64012be600a2249e - languageName: node - linkType: hard - -"detective-postcss@npm:^4.0.0": - version: 4.0.0 - resolution: "detective-postcss@npm:4.0.0" - dependencies: - debug: "npm:^4.1.1" - is-url: "npm:^1.2.4" - postcss: "npm:^8.1.7" - postcss-values-parser: "npm:^2.0.1" - checksum: 10/9bd5d35554bf51f255db2640f14745f83c10352ba4c4f499096ee4f21547fd7fab501f3dc4017aa7d3bee3b1b455f1162a8067d1810c62d4b1806c96bd6c238e - languageName: node - linkType: hard - -"detective-postcss@npm:^6.1.0, detective-postcss@npm:^6.1.1": - version: 6.1.3 - resolution: "detective-postcss@npm:6.1.3" - dependencies: - is-url: "npm:^1.2.4" - postcss: "npm:^8.4.23" - postcss-values-parser: "npm:^6.0.2" - checksum: 10/ee6e07fed20ac93a6ba84736b9c586a942a4a6b2df173f963f95ea753380c99e4a606da22b8d9e8407c50e356f3d893a127eb68cf84c97233a209e9fbbadb026 - languageName: node - linkType: hard - -"detective-sass@npm:^3.0.1": - version: 3.0.2 - resolution: "detective-sass@npm:3.0.2" - dependencies: - gonzales-pe: "npm:^4.3.0" - node-source-walk: "npm:^4.0.0" - checksum: 10/7489e5ae7dbed2eba89855cea21ad32321e8e92bd9f2d3b925e7feec0dd9aa8b4b865296525275938e573a3be9759715490038103cbc970570a1c48c4f2fd23d - languageName: node - linkType: hard - -"detective-sass@npm:^4.0.1, detective-sass@npm:^4.1.1": - version: 4.1.3 - resolution: "detective-sass@npm:4.1.3" - dependencies: - gonzales-pe: "npm:^4.3.0" - node-source-walk: "npm:^5.0.1" - checksum: 10/91681e90037cc935f38b2867fab2aa5585848491b3a269dfb44b37721146ff83f57a540d964b15db22dc1f232623568bedfd13470ec7363e6111991d4d3fe573 - languageName: node - linkType: hard - -"detective-scss@npm:^2.0.1": - version: 2.0.2 - resolution: "detective-scss@npm:2.0.2" - dependencies: - gonzales-pe: "npm:^4.3.0" - node-source-walk: "npm:^4.0.0" - checksum: 10/515ff1b8946ec92baead48ef435efe1ea0f33ee1d98a7537dd700f1d06dd192f9ea0971c10343adcb08b561ab296d01c18a1f62d0b63163a8f4c09885a956e1a - languageName: node - linkType: hard - -"detective-scss@npm:^3.0.0, detective-scss@npm:^3.0.1": - version: 3.1.1 - resolution: "detective-scss@npm:3.1.1" - dependencies: - gonzales-pe: "npm:^4.3.0" - node-source-walk: "npm:^5.0.1" - checksum: 10/3d9c0468216c822c25572e700b9aba1e2e2797d336b6b84fd455d83ce849263324855008d1e58d6ccdf9c7a4f099e31277b99e885407cd19674e0bb10fc458cd - languageName: node - linkType: hard - -"detective-stylus@npm:^1.0.0": - version: 1.0.3 - resolution: "detective-stylus@npm:1.0.3" - checksum: 10/2723da93545f3a55a2a7eaa76b50712457af3c93c2b003e95d02f4c240d5e5206a5df99209a4f5b54128c11fc4270c2de1d7316b4f7d02b359483ae74f5a6637 - languageName: node - linkType: hard - -"detective-stylus@npm:^2.0.1": - version: 2.0.1 - resolution: "detective-stylus@npm:2.0.1" - checksum: 10/c701ba6df3e6b5346aa5dd37b8329a9069a20fd7d075933e2e3b819a75922a2adab809143591151e7337183d59c980e6bc64ad6e51ce96de864575221c1b9506 - languageName: node - linkType: hard - -"detective-stylus@npm:^3.0.0": - version: 3.0.0 - resolution: "detective-stylus@npm:3.0.0" - checksum: 10/e82eda490406d289f7b22050423ad69eb1c0f0d88414adaa292de4ab533be3c50d4cf512a9fefba426f3ad20789f0c0db3b0d32f70162112ca89034bbc5ca9d3 - languageName: node - linkType: hard - -"detective-typescript@npm:^7.0.0": - version: 7.0.2 - resolution: "detective-typescript@npm:7.0.2" - dependencies: - "@typescript-eslint/typescript-estree": "npm:^4.33.0" - ast-module-types: "npm:^2.7.1" - node-source-walk: "npm:^4.2.0" - typescript: "npm:^3.9.10" - checksum: 10/77703410baa242029dc5e7d02cca7a26278dea498ec1c3320f92efa08a85263affc3b102fc2b09952ece1d2c851a3808733d7bfa9ed11944a7c0f39920e33ec9 - languageName: node - linkType: hard - -"detective-typescript@npm:^9.0.0, detective-typescript@npm:^9.1.1": - version: 9.1.1 - resolution: "detective-typescript@npm:9.1.1" - dependencies: - "@typescript-eslint/typescript-estree": "npm:^5.55.0" - ast-module-types: "npm:^4.0.0" - node-source-walk: "npm:^5.0.1" - typescript: "npm:^4.9.5" - checksum: 10/5f50801f622740d4e9d724ce04518ceb81591215bf18c18c5d22f6f3948df49dfb0a8bbe3596dac47220a37028bc2879ccd7a968f265217c9855817bda4622f5 - languageName: node - linkType: hard - -"detective@npm:^4.3.1": - version: 4.7.1 - resolution: "detective@npm:4.7.1" - dependencies: - acorn: "npm:^5.2.1" - defined: "npm:^1.0.0" - checksum: 10/7c61b65e10eed448848824755835bc2e6a5efaac9132c2ea0e934be0693dcf5a4dc76e9a30211886cf2dc0f8d59d711f06ee951e50ccb617fbe24e124c7c4056 - languageName: node - linkType: hard - -"devlop@npm:^1.0.0, devlop@npm:^1.1.0": - version: 1.1.0 - resolution: "devlop@npm:1.1.0" - dependencies: - dequal: "npm:^2.0.0" - checksum: 10/3cc5f903d02d279d6dc4aa71ab6ed9898b9f4d1f861cc5421ce7357893c21b9520de78afb203c92bd650a6977ad0ca98195453a0707a39958cf5fea3b0a8ddd8 - languageName: node - linkType: hard - -"devtron@npm:^1.4.0": - version: 1.4.0 - resolution: "devtron@npm:1.4.0" - dependencies: - accessibility-developer-tools: "npm:^2.11.0" - highlight.js: "npm:^9.3.0" - humanize-plus: "npm:^1.8.1" - checksum: 10/987f37f983af6db4ce1b980115f4a24251080c0b370f563c2e7e3b5b944bd6d395d9284e996dcd319066a35d9e94b72dcd9a8ad7616d0f068f4eb98ecdd195e4 - languageName: node - linkType: hard - -"diffie-hellman@npm:^5.0.3": - version: 5.0.3 - resolution: "diffie-hellman@npm:5.0.3" - dependencies: - bn.js: "npm:^4.1.0" - miller-rabin: "npm:^4.0.0" - randombytes: "npm:^2.0.0" - checksum: 10/2ff28231f93b27a4903461432d2de831df02e3568ea7633d5d7b6167eb73077f823b2bca26de6ba4f5c7ecd10a3df5aa94d376d136ab6209948c03cc4e4ac1fe - languageName: node - linkType: hard - -"dir-compare@npm:^3.0.0": - version: 3.3.0 - resolution: "dir-compare@npm:3.3.0" - dependencies: - buffer-equal: "npm:^1.0.0" - minimatch: "npm:^3.0.4" - checksum: 10/4e4ca87564bd1fe86d5b704842e1ba069b172ae507e0420e5cef68dbbc9c5a42753416be38488587bc2c7944a4b4a580af724a686e9ad79150012d1d02efe769 - languageName: node - linkType: hard - -"dir-glob@npm:^3.0.1": - version: 3.0.1 - resolution: "dir-glob@npm:3.0.1" - dependencies: - path-type: "npm:^4.0.0" - checksum: 10/fa05e18324510d7283f55862f3161c6759a3f2f8dbce491a2fc14c8324c498286c54282c1f0e933cb930da8419b30679389499b919122952a4f8592362ef4615 - languageName: node - linkType: hard - -"dmg-builder@npm:24.10.0": - version: 24.10.0 - resolution: "dmg-builder@npm:24.10.0" - dependencies: - app-builder-lib: "npm:24.10.0" - builder-util: "npm:24.9.4" - builder-util-runtime: "npm:9.2.3" - dmg-license: "npm:^1.0.11" - fs-extra: "npm:^10.1.0" - iconv-lite: "npm:^0.6.2" - js-yaml: "npm:^4.1.0" - dependenciesMeta: - dmg-license: - optional: true - checksum: 10/237d071ed74b38ab817d85685790b1daf3d415377c0842de850226dd1885441ab5107d9a7193e23660b1c17054b6fca85d4d9c28e7efd4944c5b879aa5e0727c - languageName: node - linkType: hard - -"dmg-license@npm:^1.0.11": - version: 1.0.11 - resolution: "dmg-license@npm:1.0.11" - dependencies: - "@types/plist": "npm:^3.0.1" - "@types/verror": "npm:^1.10.3" - ajv: "npm:^6.10.0" - crc: "npm:^3.8.0" - iconv-corefoundation: "npm:^1.1.7" - plist: "npm:^3.0.4" - smart-buffer: "npm:^4.0.2" - verror: "npm:^1.10.0" - bin: - dmg-license: bin/dmg-license.js - conditions: os=darwin - languageName: node - linkType: hard - -"dns-packet@npm:^5.2.2, dns-packet@npm:^5.6.1": - version: 5.6.1 - resolution: "dns-packet@npm:5.6.1" - dependencies: - "@leichtgewicht/ip-codec": "npm:^2.0.1" - checksum: 10/ef5496dd5a906e22ed262cbe1a6f5d532c0893c4f1884a7aa37d4d0d8b8376a2b43f749aab087c8bb1354d67b40444f7fca8de4017b161a4cea468543061aed3 - languageName: node - linkType: hard - -"dnslink-cloudflare@npm:^3.0.0": - version: 3.0.0 - resolution: "dnslink-cloudflare@npm:3.0.0" - dependencies: - got: "npm:^11.5.1" - meow: "npm:^7.0.1" - bin: - dnslink-cloudflare: bin/index.js - checksum: 10/3142cddfdfe115d0a5fa8b78a47a3cd3a142b0d4215de6f192a42259008cb9fc713b50d72a65d9d44d15a90aa1864897126db9a17100fbd7d87b3fabd8ffde85 - languageName: node - linkType: hard - -"docker-compose@npm:^0.24.8": - version: 0.24.8 - resolution: "docker-compose@npm:0.24.8" - dependencies: - yaml: "npm:^2.2.2" - checksum: 10/2b8526f9797a55c819ff2d7dcea57085b012b3a3d77bc2e1a6b45c3fc9e82196312f5298cbe8299966462454a5ac8f68814bb407736b4385e0d226a2a39e877a - languageName: node - linkType: hard - -"docker-modem@npm:^5.0.6": - version: 5.0.6 - resolution: "docker-modem@npm:5.0.6" - dependencies: - debug: "npm:^4.1.1" - readable-stream: "npm:^3.5.0" - split-ca: "npm:^1.0.1" - ssh2: "npm:^1.15.0" - checksum: 10/4977797814c29205f0762215f2e3e26600986bb65139018ff6840ff4c596e5d19f3002be1abcc5e73e3828870bb73bab28275a6458ad027ed56ab61fca014b6d - languageName: node - linkType: hard - -"dockerode@npm:^4.0.5": - version: 4.0.9 - resolution: "dockerode@npm:4.0.9" - dependencies: - "@balena/dockerignore": "npm:^1.0.2" - "@grpc/grpc-js": "npm:^1.11.1" - "@grpc/proto-loader": "npm:^0.7.13" - docker-modem: "npm:^5.0.6" - protobufjs: "npm:^7.3.2" - tar-fs: "npm:^2.1.4" - uuid: "npm:^10.0.0" - checksum: 10/58bb4f39652de88212c008d1156ab679ac561508ada0a86db4c2fc75dc13d40c0ba1afb725a28e0c899c93a76ad822b332e4d5207c36b8b929bae5730d0bd791 - languageName: node - linkType: hard - -"doctrine@npm:^2.1.0": - version: 2.1.0 - resolution: "doctrine@npm:2.1.0" - dependencies: - esutils: "npm:^2.0.2" - checksum: 10/555684f77e791b17173ea86e2eea45ef26c22219cb64670669c4f4bebd26dbc95cd90ec1f4159e9349a6bb9eb892ce4dde8cd0139e77bedd8bf4518238618474 - languageName: node - linkType: hard - -"doctrine@npm:^3.0.0": - version: 3.0.0 - resolution: "doctrine@npm:3.0.0" - dependencies: - esutils: "npm:^2.0.2" - checksum: 10/b4b28f1df5c563f7d876e7461254a4597b8cabe915abe94d7c5d1633fed263fcf9a85e8d3836591fc2d040108e822b0d32758e5ec1fe31c590dc7e08086e3e48 - languageName: node - linkType: hard - -"dom-accessibility-api@npm:^0.5.6, dom-accessibility-api@npm:^0.5.9": - version: 0.5.16 - resolution: "dom-accessibility-api@npm:0.5.16" - checksum: 10/377b4a7f9eae0a5d72e1068c369c99e0e4ca17fdfd5219f3abd32a73a590749a267475a59d7b03a891f9b673c27429133a818c44b2e47e32fec024b34274e2ca - languageName: node - linkType: hard - -"dom-converter@npm:^0.2.0": - version: 0.2.0 - resolution: "dom-converter@npm:0.2.0" - dependencies: - utila: "npm:~0.4" - checksum: 10/71b22f56bce6255a963694a72860a99f08763cf500f02ff38ce4c7489f95b07e7a0069f10b04c7d200e21375474abe01232833ca1600f104bdee7173e493a5b9 - languageName: node - linkType: hard - -"dom-serializer@npm:^1.0.1": - version: 1.4.1 - resolution: "dom-serializer@npm:1.4.1" - dependencies: - domelementtype: "npm:^2.0.1" - domhandler: "npm:^4.2.0" - entities: "npm:^2.0.0" - checksum: 10/53b217bcfed4a0f90dd47f34f239b1c81fff53ffa39d164d722325817fdb554903b145c2d12c8421ce0df7d31c1b180caf7eacd3c86391dd925f803df8027dcc - languageName: node - linkType: hard - -"domelementtype@npm:^2.0.1, domelementtype@npm:^2.2.0": - version: 2.3.0 - resolution: "domelementtype@npm:2.3.0" - checksum: 10/ee837a318ff702622f383409d1f5b25dd1024b692ef64d3096ff702e26339f8e345820f29a68bcdcea8cfee3531776b3382651232fbeae95612d6f0a75efb4f6 - languageName: node - linkType: hard - -"domhandler@npm:^4.0.0, domhandler@npm:^4.2.0, domhandler@npm:^4.3.1": - version: 4.3.1 - resolution: "domhandler@npm:4.3.1" - dependencies: - domelementtype: "npm:^2.2.0" - checksum: 10/e0d2af7403997a3ca040a9ace4a233b75ebe321e0ef628b417e46d619d65d47781b2f2038b6c2ef6e56e73e66aec99caf6a12c7e687ecff18ef74af6dfbde5de - languageName: node - linkType: hard - -"domutils@npm:^2.5.2, domutils@npm:^2.8.0": - version: 2.8.0 - resolution: "domutils@npm:2.8.0" - dependencies: - dom-serializer: "npm:^1.0.1" - domelementtype: "npm:^2.2.0" - domhandler: "npm:^4.2.0" - checksum: 10/1f316a03f00b09a8893d4a25d297d5cbffd02c564509dede28ef72d5ce38d93f6d61f1de88d439f31b14a1d9b42f587ed711b9e8b1b4d3bf6001399832bfc4e0 - languageName: node - linkType: hard - -"dot-case@npm:^3.0.4": - version: 3.0.4 - resolution: "dot-case@npm:3.0.4" - dependencies: - no-case: "npm:^3.0.4" - tslib: "npm:^2.0.3" - checksum: 10/a65e3519414856df0228b9f645332f974f2bf5433370f544a681122eab59e66038fc3349b4be1cdc47152779dac71a5864f1ccda2f745e767c46e9c6543b1169 - languageName: node - linkType: hard - -"dot-prop@npm:^5.2.0": - version: 5.3.0 - resolution: "dot-prop@npm:5.3.0" - dependencies: - is-obj: "npm:^2.0.0" - checksum: 10/33b2561617bd5c73cf9305368ba4638871c5dbf9c8100c8335acd2e2d590a81ec0e75c11cfaea5cc3cf8c2f668cad4beddb52c11856d0c9e666348eee1baf57a - languageName: node - linkType: hard - -"dotenv-expand@npm:^5.1.0": - version: 5.1.0 - resolution: "dotenv-expand@npm:5.1.0" - checksum: 10/d52af2a6e4642979ae4221408f1b75102508dbe4f5bac1c0613f92a3cf3880d5c31f86b2f5cff3273f7c23e10421e75028546e8b6cd0376fcd20e3803b374e15 - languageName: node - linkType: hard - -"dotenv@npm:^8.2.0": - version: 8.6.0 - resolution: "dotenv@npm:8.6.0" - checksum: 10/31d7b5c010cebb80046ba6853d703f9573369b00b15129536494f04b0af4ea0060ce8646e3af58b455af2f6f1237879dd261a5831656410ec92561ae1ea44508 - languageName: node - linkType: hard - -"dotenv@npm:^9.0.2": - version: 9.0.2 - resolution: "dotenv@npm:9.0.2" - checksum: 10/8a31ab90b097907a42932b972228e10470e8f0de9aea58c7f2134582e7810f229a2ce5861af40efeb7751c7bf2aae0c8347d72ba3935b72c834fbbac30f80f08 - languageName: node - linkType: hard - -"drbg.js@npm:^1.0.1": - version: 1.0.1 - resolution: "drbg.js@npm:1.0.1" - dependencies: - browserify-aes: "npm:^1.0.6" - create-hash: "npm:^1.1.2" - create-hmac: "npm:^1.1.4" - checksum: 10/a50e770cf641ec364f6b8de8e955c63e0db59f0af6525cc0306f392f4361427e37bf5c74373b31589b24e98d523acc7bbab4c8ee421bc35a2a8a82fe6e06ce95 - languageName: node - linkType: hard - -"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "dunder-proto@npm:1.0.1" - dependencies: - call-bind-apply-helpers: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.2.0" - checksum: 10/5add88a3d68d42d6e6130a0cac450b7c2edbe73364bbd2fc334564418569bea97c6943a8fcd70e27130bf32afc236f30982fc4905039b703f23e9e0433c29934 - languageName: node - linkType: hard - -"duplexer3@npm:^0.1.4": - version: 0.1.5 - resolution: "duplexer3@npm:0.1.5" - checksum: 10/e677cb4c48f031ca728601d6a20bf6aed4c629d69ef9643cb89c67583d673c4ec9317cc6427501f38bd8c368d3a18f173987cc02bd99d8cf8fe3d94259a22a20 - languageName: node - linkType: hard - -"duplexer@npm:^0.1.2": - version: 0.1.2 - resolution: "duplexer@npm:0.1.2" - checksum: 10/62ba61a830c56801db28ff6305c7d289b6dc9f859054e8c982abd8ee0b0a14d2e9a8e7d086ffee12e868d43e2bbe8a964be55ddbd8c8957714c87373c7a4f9b0 - languageName: node - linkType: hard - -"duplexify@npm:^4.1.1": - version: 4.1.3 - resolution: "duplexify@npm:4.1.3" - dependencies: - end-of-stream: "npm:^1.4.1" - inherits: "npm:^2.0.3" - readable-stream: "npm:^3.1.1" - stream-shift: "npm:^1.0.2" - checksum: 10/b44b98ba0ffac3a658b4b1bf877219e996db288c5ae6f3dc55ca9b2cbef7df60c10eabfdd947f3d73a623eb9975a74a66d6d61e6f26bff90155315adb362aa77 - languageName: node - linkType: hard - -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 10/9b1d3e1baefeaf7d70799db8774149cef33b97183a6addceeba0cf6b85ba23ee2686f302f14482006df32df75d32b17c509c143a3689627929e4a8efaf483952 - languageName: node - linkType: hard - -"ed2curve@npm:^0.3.0": - version: 0.3.0 - resolution: "ed2curve@npm:0.3.0" - dependencies: - tweetnacl: "npm:1.x.x" - checksum: 10/b5551bea14bd101a0d674114b1240abcdde11b475f48ab0b8d4d52452257f87ee27b1848d5760b8356224b6ef82b0746a9ac100f5090b4a4de00a3984526b61a - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10/1b4cac778d64ce3b582a7e26b218afe07e207a0f9bfe13cc7395a6d307849cfe361e65033c3251e00c27dd060cab43014c2d6b2647676135e18b77d2d05b3f4f - languageName: node - linkType: hard - -"ejs@npm:^3.1.5, ejs@npm:^3.1.8": - version: 3.1.10 - resolution: "ejs@npm:3.1.10" - dependencies: - jake: "npm:^10.8.5" - bin: - ejs: bin/cli.js - checksum: 10/a9cb7d7cd13b7b1cd0be5c4788e44dd10d92f7285d2f65b942f33e127230c054f99a42db4d99f766d8dbc6c57e94799593ee66a14efd7c8dd70c4812bf6aa384 - languageName: node - linkType: hard - -"electron-builder-notarize@npm:^1.5.1": - version: 1.5.2 - resolution: "electron-builder-notarize@npm:1.5.2" - dependencies: - dotenv: "npm:^8.2.0" - electron-notarize: "npm:^1.1.1" - js-yaml: "npm:^3.14.0" - read-pkg-up: "npm:^7.0.0" - peerDependencies: - electron-builder: ">= 20.44.4" - checksum: 10/729377aa72e6462b8e46eb077a2932c97db2408a55ade7b06d8ddce6bd067246d83b9a73b4534758f4a3ef31158dcd74e56aa4f4ea2e11df6ecd6fd51573e060 - languageName: node - linkType: hard - -"electron-builder@npm:24.10.0": - version: 24.10.0 - resolution: "electron-builder@npm:24.10.0" - dependencies: - app-builder-lib: "npm:24.10.0" - builder-util: "npm:24.9.4" - builder-util-runtime: "npm:9.2.3" - chalk: "npm:^4.1.2" - dmg-builder: "npm:24.10.0" - fs-extra: "npm:^10.1.0" - is-ci: "npm:^3.0.0" - lazy-val: "npm:^1.0.5" - read-config-file: "npm:6.3.2" - simple-update-notifier: "npm:2.0.0" - yargs: "npm:^17.6.2" - bin: - electron-builder: cli.js - install-app-deps: install-app-deps.js - checksum: 10/0773bcafdcfa00f70d441f0a9cff1de8b6b87a8ad65285b6bcf4f2a9f6cc17640759b2b4bff408bf3bfbe15b00598de020a87f2cc7fe84b2338e7427dfd9a24f - languageName: node - linkType: hard - -"electron-log@npm:^5.0.1": - version: 5.4.3 - resolution: "electron-log@npm:5.4.3" - checksum: 10/0162345d56c644378f23339e586e9046a0d646be0436c624b51f4bf560b376bc7eb9569b1ea3af04085fafd662af6f559ac5d4616a26910de192996ffb74948d - languageName: node - linkType: hard - -"electron-notarize@npm:^1.1.1": - version: 1.2.2 - resolution: "electron-notarize@npm:1.2.2" - dependencies: - debug: "npm:^4.1.1" - fs-extra: "npm:^9.0.1" - checksum: 10/c66b175b6f584d7bfc67a83eb56c2f4ec0264aab0f693d0a0b4cc2d825b05ada8d119bec4a2ac0fcc1add93dca3282a57bc3dbeb805b0c546e013149905efc40 - languageName: node - linkType: hard - -"electron-publish@npm:24.9.4": - version: 24.9.4 - resolution: "electron-publish@npm:24.9.4" - dependencies: - "@types/fs-extra": "npm:^9.0.11" - builder-util: "npm:24.9.4" - builder-util-runtime: "npm:9.2.3" - chalk: "npm:^4.1.2" - fs-extra: "npm:^10.1.0" - lazy-val: "npm:^1.0.5" - mime: "npm:^2.5.2" - checksum: 10/c4e9397b5ef070dbede48fece9d36d3dcaec7df1052f49744df790ff9793da24d52c22d949067dd7a5cbf9f5f06cd2243c221ec5bfdab3080b4c37f5b39a0473 - languageName: node - linkType: hard - -"electron-to-chromium@npm:^1.5.263": - version: 1.5.267 - resolution: "electron-to-chromium@npm:1.5.267" - checksum: 10/05e55e810cb6a3cda8d29dfdeec7ac0e59727a77a796a157f1a1d65edac16d45eed69ed5c99e354872ab16c48967c2d0a0600653051ae380a3b7a4d6210b1e60 - languageName: node - linkType: hard - -"electron-updater@npm:^6.1.7": - version: 6.7.3 - resolution: "electron-updater@npm:6.7.3" - dependencies: - builder-util-runtime: "npm:9.5.1" - fs-extra: "npm:^10.1.0" - js-yaml: "npm:^4.1.0" - lazy-val: "npm:^1.0.5" - lodash.escaperegexp: "npm:^4.1.2" - lodash.isequal: "npm:^4.5.0" - semver: "npm:~7.7.3" - tiny-typed-emitter: "npm:^2.1.0" - checksum: 10/c274b26c79890b09289a3a92f95c8ce5b20275622c343ce0ed3d48ae9b1f93711eb0e0fd518507c106ddbf4737dd99dbac1f84cf7090c23e8f977e44338510b2 - languageName: node - linkType: hard - -"electron@npm:28.0.0": - version: 28.0.0 - resolution: "electron@npm:28.0.0" - dependencies: - "@electron/get": "npm:^2.0.0" - "@types/node": "npm:^18.11.18" - extract-zip: "npm:^2.0.1" - bin: - electron: cli.js - checksum: 10/964b765576343d4ed935608964808471ef68253a1aca711f0587322c356dab335cf2ab76c2c710b8a59b3bc6c3c0f10eff6f2fbab34614a7d813a0100b8ec7eb - languageName: node - linkType: hard - -"elliptic@npm:^6.5.3, elliptic@npm:^6.5.4, elliptic@npm:^6.5.7, elliptic@npm:^6.6.1": - version: 6.6.1 - resolution: "elliptic@npm:6.6.1" - dependencies: - bn.js: "npm:^4.11.9" - brorand: "npm:^1.1.0" - hash.js: "npm:^1.0.0" - hmac-drbg: "npm:^1.0.1" - inherits: "npm:^2.0.4" - minimalistic-assert: "npm:^1.0.1" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10/dc678c9febd89a219c4008ba3a9abb82237be853d9fd171cd602c8fb5ec39927e65c6b5e7a1b2a4ea82ee8e0ded72275e7932bb2da04a5790c2638b818e4e1c5 - languageName: node - linkType: hard - -"email-addresses@npm:^5.0.0": - version: 5.0.0 - resolution: "email-addresses@npm:5.0.0" - checksum: 10/a7897e3b43893f1e9cc61f0e8c7cbe59c36c6cdd0b5ad7e4061f1976893260f496fd799fb78b2621e483a95fa6c7caec4a035ba320193d9540159dfcdb737004 - languageName: node - linkType: hard - -"emoji-regex@npm:^8.0.0": - version: 8.0.0 - resolution: "emoji-regex@npm:8.0.0" - checksum: 10/c72d67a6821be15ec11997877c437491c313d924306b8da5d87d2a2bcc2cec9903cb5b04ee1a088460501d8e5b44f10df82fdc93c444101a7610b80c8b6938e1 - languageName: node - linkType: hard - -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 10/915acf859cea7131dac1b2b5c9c8e35c4849e325a1d114c30adb8cd615970f6dca0e27f64f3a4949d7d6ed86ecd79a1c5c63f02e697513cddd7b5835c90948b8 - languageName: node - linkType: hard - -"empty@npm:^0.10.1": - version: 0.10.1 - resolution: "empty@npm:0.10.1" - dependencies: - envify: "npm:^3.4.0" - checksum: 10/58a33961954f6a3383f3aaaccccf683bbd916ea99b9378bc5fb1d024bec102db95320d4c6bc7d284d92e97348b2300b13eeceb3f60602bace54a86ab418e52c9 - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: 10/abf5cd51b78082cf8af7be6785813c33b6df2068ce5191a40ca8b1afe6a86f9230af9a9ce694a5ce4665955e5c1120871826df9c128a642e09c58d592e2807fe - languageName: node - linkType: hard - -"encoding@npm:^0.1.13": - version: 0.1.13 - resolution: "encoding@npm:0.1.13" - dependencies: - iconv-lite: "npm:^0.6.2" - checksum: 10/bb98632f8ffa823996e508ce6a58ffcf5856330fde839ae42c9e1f436cc3b5cc651d4aeae72222916545428e54fd0f6aa8862fd8d25bdbcc4589f1e3f3715e7f - languageName: node - linkType: hard - -"end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1": - version: 1.4.5 - resolution: "end-of-stream@npm:1.4.5" - dependencies: - once: "npm:^1.4.0" - checksum: 10/1e0cfa6e7f49887544e03314f9dfc56a8cb6dde910cbb445983ecc2ff426fc05946df9d75d8a21a3a64f2cecfe1bf88f773952029f46756b2ed64a24e95b1fb8 - languageName: node - linkType: hard - -"enhanced-resolve@npm:^5.0.0, enhanced-resolve@npm:^5.17.4, enhanced-resolve@npm:^5.8.3": - version: 5.18.4 - resolution: "enhanced-resolve@npm:5.18.4" - dependencies: - graceful-fs: "npm:^4.2.4" - tapable: "npm:^2.2.0" - checksum: 10/dcd477cb694d9cc84109a03269c13d3da0851d50099fd3fa7c56b2867dd720d59c7f1431bd47c9cad2825ad52588bd71d3a68cf1e5ee0bc57551d8a3fab4e6f2 - languageName: node - linkType: hard - -"ensure-type@npm:^1.5.0": - version: 1.5.1 - resolution: "ensure-type@npm:1.5.1" - checksum: 10/a88b004b608aff24ac0474b3cbbc9a78b11106f314dcde233157a6b2022de45d43c86c03fb2edc50759426c0f852b9a354402a956b5e7dadc7af86866daef663 - languageName: node - linkType: hard - -"entities@npm:^2.0.0": - version: 2.2.0 - resolution: "entities@npm:2.2.0" - checksum: 10/2c765221ee324dbe25e1b8ca5d1bf2a4d39e750548f2e85cbf7ca1d167d709689ddf1796623e66666ae747364c11ed512c03b48c5bbe70968d30f2a4009509b7 - languageName: node - linkType: hard - -"entities@npm:^6.0.0": - version: 6.0.1 - resolution: "entities@npm:6.0.1" - checksum: 10/62af1307202884349d2867f0aac5c60d8b57102ea0b0e768b16246099512c28e239254ad772d6834e7e14cb1b6f153fc3d0c031934e3183b086c86d3838d874a - languageName: node - linkType: hard - -"env-paths@npm:^2.2.0": - version: 2.2.1 - resolution: "env-paths@npm:2.2.1" - checksum: 10/65b5df55a8bab92229ab2b40dad3b387fad24613263d103a97f91c9fe43ceb21965cd3392b1ccb5d77088021e525c4e0481adb309625d0cb94ade1d1fb8dc17e - languageName: node - linkType: hard - -"envify@npm:^3.4.0": - version: 3.4.1 - resolution: "envify@npm:3.4.1" - dependencies: - jstransform: "npm:^11.0.3" - through: "npm:~2.3.4" - bin: - envify: bin/envify - checksum: 10/a4fb63291b1cca6c5b161ffd7f0d294a97d3de7150031ab79e45e57f958c031753a963063cc9bc9177f5604b1adc217297fe455b0cfada7673ec82fecb5f803f - languageName: node - linkType: hard - -"envinfo@npm:^7.7.3": - version: 7.21.0 - resolution: "envinfo@npm:7.21.0" - bin: - envinfo: dist/cli.js - checksum: 10/2469a72802ded4e43c007dcd1c5dd44d8049b7d18276874dcc3f3f14a54bc72806fa35e82760974ca1442d82f5f9df3651048204e72791f81bcdd5f07422a561 - languageName: node - linkType: hard - -"eol@npm:^0.9.1": - version: 0.9.1 - resolution: "eol@npm:0.9.1" - checksum: 10/9d3fd93bb2bb5c69c7fe8dfb97b62213ed95857a2e90f5db3110415993e8a989d87fb011755ce22fdb92ca36fbe4e111b395a6f4ce00b9b51d3f00f19c2acf52 - languageName: node - linkType: hard - -"err-code@npm:^2.0.2": - version: 2.0.3 - resolution: "err-code@npm:2.0.3" - checksum: 10/1d20d825cdcce8d811bfbe86340f4755c02655a7feb2f13f8c880566d9d72a3f6c92c192a6867632e490d6da67b678271f46e01044996a6443e870331100dfdd - languageName: node - linkType: hard - -"error-ex@npm:^1.3.1": - version: 1.3.4 - resolution: "error-ex@npm:1.3.4" - dependencies: - is-arrayish: "npm:^0.2.1" - checksum: 10/ae3939fd4a55b1404e877df2080c6b59acc516d5b7f08a181040f78f38b4e2399633bfed2d9a21b91c803713fff7295ac70bebd8f3657ef352a95c2cd9aa2e4b - languageName: node - linkType: hard - -"es-abstract@npm:^1.17.5, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0, es-abstract@npm:^1.24.1": - version: 1.24.1 - resolution: "es-abstract@npm:1.24.1" - dependencies: - array-buffer-byte-length: "npm:^1.0.2" - arraybuffer.prototype.slice: "npm:^1.0.4" - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - data-view-buffer: "npm:^1.0.2" - data-view-byte-length: "npm:^1.0.2" - data-view-byte-offset: "npm:^1.0.1" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - es-set-tostringtag: "npm:^2.1.0" - es-to-primitive: "npm:^1.3.0" - function.prototype.name: "npm:^1.1.8" - get-intrinsic: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - get-symbol-description: "npm:^1.1.0" - globalthis: "npm:^1.0.4" - gopd: "npm:^1.2.0" - has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - internal-slot: "npm:^1.1.0" - is-array-buffer: "npm:^3.0.5" - is-callable: "npm:^1.2.7" - is-data-view: "npm:^1.0.2" - is-negative-zero: "npm:^2.0.3" - is-regex: "npm:^1.2.1" - is-set: "npm:^2.0.3" - is-shared-array-buffer: "npm:^1.0.4" - is-string: "npm:^1.1.1" - is-typed-array: "npm:^1.1.15" - is-weakref: "npm:^1.1.1" - math-intrinsics: "npm:^1.1.0" - object-inspect: "npm:^1.13.4" - object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.7" - own-keys: "npm:^1.0.1" - regexp.prototype.flags: "npm:^1.5.4" - safe-array-concat: "npm:^1.1.3" - safe-push-apply: "npm:^1.0.0" - safe-regex-test: "npm:^1.1.0" - set-proto: "npm:^1.0.0" - stop-iteration-iterator: "npm:^1.1.0" - string.prototype.trim: "npm:^1.2.10" - string.prototype.trimend: "npm:^1.0.9" - string.prototype.trimstart: "npm:^1.0.8" - typed-array-buffer: "npm:^1.0.3" - typed-array-byte-length: "npm:^1.0.3" - typed-array-byte-offset: "npm:^1.0.4" - typed-array-length: "npm:^1.0.7" - unbox-primitive: "npm:^1.1.0" - which-typed-array: "npm:^1.1.19" - checksum: 10/c84cb69ebae36781309a3ed70ff40b4767a921d3b3518060fac4e08f14ede04491b68e9f318aedf186e349d4af4a40f5d0e4111e46513800e8368551fd09de8c - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": - version: 1.0.1 - resolution: "es-define-property@npm:1.0.1" - checksum: 10/f8dc9e660d90919f11084db0a893128f3592b781ce967e4fccfb8f3106cb83e400a4032c559184ec52ee1dbd4b01e7776c7cd0b3327b1961b1a4a7008920fe78 - languageName: node - linkType: hard - -"es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: 10/96e65d640156f91b707517e8cdc454dd7d47c32833aa3e85d79f24f9eb7ea85f39b63e36216ef0114996581969b59fe609a94e30316b08f5f4df1d44134cf8d5 - languageName: node - linkType: hard - -"es-get-iterator@npm:^1.1.3": - version: 1.1.3 - resolution: "es-get-iterator@npm:1.1.3" - dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.1.3" - has-symbols: "npm:^1.0.3" - is-arguments: "npm:^1.1.1" - is-map: "npm:^2.0.2" - is-set: "npm:^2.0.2" - is-string: "npm:^1.0.7" - isarray: "npm:^2.0.5" - stop-iteration-iterator: "npm:^1.0.0" - checksum: 10/bc2194befbe55725f9489098626479deee3c801eda7e83ce0dff2eb266a28dc808edb9b623ff01d31ebc1328f09d661333d86b601036692c2e3c1a6942319433 - languageName: node - linkType: hard - -"es-iterator-helpers@npm:^1.2.1": - version: 1.2.2 - resolution: "es-iterator-helpers@npm:1.2.2" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.24.1" - es-errors: "npm:^1.3.0" - es-set-tostringtag: "npm:^2.1.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.3.0" - globalthis: "npm:^1.0.4" - gopd: "npm:^1.2.0" - has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - internal-slot: "npm:^1.1.0" - iterator.prototype: "npm:^1.1.5" - safe-array-concat: "npm:^1.1.3" - checksum: 10/17b5b2834c4f5719d6ce0e837a4d11c6ba4640bee28290d22ec4daf7106ec3d5fe0ff4f7e5dbaa2b4612e8335934360e964a8f08608d43f2889da106b25481ee - languageName: node - linkType: hard - -"es-module-lexer@npm:^2.0.0": - version: 2.0.0 - resolution: "es-module-lexer@npm:2.0.0" - checksum: 10/b075855289b5f40ee496f3d7525c5c501d029c3da15c22298a0030d625bf36d1da0768b26278f7f4bada2a602459b505888e20b77c414fba5da5619b0e84dbd1 - languageName: node - linkType: hard - -"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": - version: 1.1.1 - resolution: "es-object-atoms@npm:1.1.1" - dependencies: - es-errors: "npm:^1.3.0" - checksum: 10/54fe77de288451dae51c37bfbfe3ec86732dc3778f98f3eb3bdb4bf48063b2c0b8f9c93542656986149d08aa5be3204286e2276053d19582b76753f1a2728867 - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.1.0": - version: 2.1.0 - resolution: "es-set-tostringtag@npm:2.1.0" - dependencies: - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10/86814bf8afbcd8966653f731415888019d4bc4aca6b6c354132a7a75bb87566751e320369654a101d23a91c87a85c79b178bcf40332839bd347aff437c4fb65f - languageName: node - linkType: hard - -"es-shim-unscopables@npm:^1.0.2, es-shim-unscopables@npm:^1.1.0": - version: 1.1.0 - resolution: "es-shim-unscopables@npm:1.1.0" - dependencies: - hasown: "npm:^2.0.2" - checksum: 10/c351f586c30bbabc62355be49564b2435468b52c3532b8a1663672e3d10dc300197e69c247869dd173e56d86423ab95fc0c10b0939cdae597094e0fdca078cba - languageName: node - linkType: hard - -"es-to-primitive@npm:^1.3.0": - version: 1.3.0 - resolution: "es-to-primitive@npm:1.3.0" - dependencies: - is-callable: "npm:^1.2.7" - is-date-object: "npm:^1.0.5" - is-symbol: "npm:^1.0.4" - checksum: 10/17faf35c221aad59a16286cbf58ef6f080bf3c485dff202c490d074d8e74da07884e29b852c245d894eac84f73c58330ec956dfd6d02c0b449d75eb1012a3f9b - languageName: node - linkType: hard - -"es5-ext@npm:^0.10.35, es5-ext@npm:^0.10.62, es5-ext@npm:^0.10.63, es5-ext@npm:^0.10.64, es5-ext@npm:~0.10.14": - version: 0.10.64 - resolution: "es5-ext@npm:0.10.64" - dependencies: - es6-iterator: "npm:^2.0.3" - es6-symbol: "npm:^3.1.3" - esniff: "npm:^2.0.1" - next-tick: "npm:^1.1.0" - checksum: 10/0c5d8657708b1695ddc4b06f4e0b9fbdda4d2fe46d037b6bedb49a7d1931e542ec9eecf4824d59e1d357e93229deab014bb4b86485db2d41b1d68e54439689ce - languageName: node - linkType: hard - -"es6-error@npm:^4.1.1": - version: 4.1.1 - resolution: "es6-error@npm:4.1.1" - checksum: 10/48483c25701dc5a6376f39bbe2eaf5da0b505607ec5a98cd3ade472c1939242156660636e2e508b33211e48e88b132d245341595c067bd4a95ac79fa7134da06 - languageName: node - linkType: hard - -"es6-iterator@npm:^2.0.3": - version: 2.0.3 - resolution: "es6-iterator@npm:2.0.3" - dependencies: - d: "npm:1" - es5-ext: "npm:^0.10.35" - es6-symbol: "npm:^3.1.1" - checksum: 10/dbadecf3d0e467692815c2b438dfa99e5a97cbbecf4a58720adcb467a04220e0e36282399ba297911fd472c50ae4158fffba7ed0b7d4273fe322b69d03f9e3a5 - languageName: node - linkType: hard - -"es6-symbol@npm:^3.1.1, es6-symbol@npm:^3.1.3": - version: 3.1.4 - resolution: "es6-symbol@npm:3.1.4" - dependencies: - d: "npm:^1.0.2" - ext: "npm:^1.7.0" - checksum: 10/3743119fe61f89e2f049a6ce52bd82fab5f65d13e2faa72453b73f95c15292c3cb9bdf3747940d504517e675e45fd375554c6b5d35d2bcbefd35f5489ecba546 - languageName: node - linkType: hard - -"esbuild@npm:^0.27.0": - version: 0.27.2 - resolution: "esbuild@npm:0.27.2" - dependencies: - "@esbuild/aix-ppc64": "npm:0.27.2" - "@esbuild/android-arm": "npm:0.27.2" - "@esbuild/android-arm64": "npm:0.27.2" - "@esbuild/android-x64": "npm:0.27.2" - "@esbuild/darwin-arm64": "npm:0.27.2" - "@esbuild/darwin-x64": "npm:0.27.2" - "@esbuild/freebsd-arm64": "npm:0.27.2" - "@esbuild/freebsd-x64": "npm:0.27.2" - "@esbuild/linux-arm": "npm:0.27.2" - "@esbuild/linux-arm64": "npm:0.27.2" - "@esbuild/linux-ia32": "npm:0.27.2" - "@esbuild/linux-loong64": "npm:0.27.2" - "@esbuild/linux-mips64el": "npm:0.27.2" - "@esbuild/linux-ppc64": "npm:0.27.2" - "@esbuild/linux-riscv64": "npm:0.27.2" - "@esbuild/linux-s390x": "npm:0.27.2" - "@esbuild/linux-x64": "npm:0.27.2" - "@esbuild/netbsd-arm64": "npm:0.27.2" - "@esbuild/netbsd-x64": "npm:0.27.2" - "@esbuild/openbsd-arm64": "npm:0.27.2" - "@esbuild/openbsd-x64": "npm:0.27.2" - "@esbuild/openharmony-arm64": "npm:0.27.2" - "@esbuild/sunos-x64": "npm:0.27.2" - "@esbuild/win32-arm64": "npm:0.27.2" - "@esbuild/win32-ia32": "npm:0.27.2" - "@esbuild/win32-x64": "npm:0.27.2" - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-arm64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/openharmony-arm64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: 10/7f1229328b0efc63c4184a61a7eb303df1e99818cc1d9e309fb92600703008e69821e8e984e9e9f54a627da14e0960d561db3a93029482ef96dc82dd267a60c2 - languageName: node - linkType: hard - -"escalade@npm:^3.1.1, escalade@npm:^3.2.0": - version: 3.2.0 - resolution: "escalade@npm:3.2.0" - checksum: 10/9d7169e3965b2f9ae46971afa392f6e5a25545ea30f2e2dd99c9b0a95a3f52b5653681a84f5b2911a413ddad2d7a93d3514165072f349b5ffc59c75a899970d6 - languageName: node - linkType: hard - -"escape-goat@npm:^2.0.0": - version: 2.1.1 - resolution: "escape-goat@npm:2.1.1" - checksum: 10/ce05c70c20dd7007b60d2d644b625da5412325fdb57acf671ba06cb2ab3cd6789e2087026921a05b665b0a03fadee2955e7fc0b9a67da15a6551a980b260eba7 - languageName: node - linkType: hard - -"escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10/6213ca9ae00d0ab8bccb6d8d4e0a98e76237b2410302cf7df70aaa6591d509a2a37ce8998008cbecae8fc8ffaadf3fb0229535e6a145f3ce0b211d060decbb24 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^1.0.2, escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 10/6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^2.0.0": - version: 2.0.0 - resolution: "escape-string-regexp@npm:2.0.0" - checksum: 10/9f8a2d5743677c16e85c810e3024d54f0c8dea6424fad3c79ef6666e81dd0846f7437f5e729dfcdac8981bc9e5294c39b4580814d114076b8d36318f46ae4395 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^4.0.0": - version: 4.0.0 - resolution: "escape-string-regexp@npm:4.0.0" - checksum: 10/98b48897d93060f2322108bf29db0feba7dd774be96cd069458d1453347b25ce8682ecc39859d4bca2203cc0ab19c237bcc71755eff49a0f8d90beadeeba5cc5 - languageName: node - linkType: hard - -"escodegen@npm:^2.0.0": - version: 2.1.0 - resolution: "escodegen@npm:2.1.0" - dependencies: - esprima: "npm:^4.0.1" - estraverse: "npm:^5.2.0" - esutils: "npm:^2.0.2" - source-map: "npm:~0.6.1" - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 10/47719a65b2888b4586e3fa93769068b275961c13089e90d5d01a96a6e8e95871b1c3893576814c8fbf08a4a31a496f37e7b2c937cf231270f4d81de012832c7c - languageName: node - linkType: hard - -"eslint-compat-utils@npm:^0.5.1": - version: 0.5.1 - resolution: "eslint-compat-utils@npm:0.5.1" - dependencies: - semver: "npm:^7.5.4" - peerDependencies: - eslint: ">=6.0.0" - checksum: 10/ac65ac1c6107cf19f63f5fc17cea361c9cb1336be7356f23dbb0fac10979974b4622e13e950be43cbf431801f2c07f7dab448573181ccf6edc0b86d5b5304511 - languageName: node - linkType: hard - -"eslint-config-standard@npm:^17.1.0": - version: 17.1.0 - resolution: "eslint-config-standard@npm:17.1.0" - peerDependencies: - eslint: ^8.0.1 - eslint-plugin-import: ^2.25.2 - eslint-plugin-n: "^15.0.0 || ^16.0.0 " - eslint-plugin-promise: ^6.0.0 - checksum: 10/1fb3f98a1badee85a8378e9a8df21ebfc3d6a0556fca309b7e9ddd60243cbeb2486e3d5706dafbf296b116b3b28b5aa3ff00536b2f3067092e98157074a95b1d - languageName: node - linkType: hard - -"eslint-import-resolver-node@npm:^0.3.9": - version: 0.3.9 - resolution: "eslint-import-resolver-node@npm:0.3.9" - dependencies: - debug: "npm:^3.2.7" - is-core-module: "npm:^2.13.0" - resolve: "npm:^1.22.4" - checksum: 10/d52e08e1d96cf630957272e4f2644dcfb531e49dcfd1edd2e07e43369eb2ec7a7d4423d417beee613201206ff2efa4eb9a582b5825ee28802fc7c71fcd53ca83 - languageName: node - linkType: hard - -"eslint-import-resolver-typescript@npm:^3.6.1": - version: 3.10.1 - resolution: "eslint-import-resolver-typescript@npm:3.10.1" - dependencies: - "@nolyfill/is-core-module": "npm:1.0.39" - debug: "npm:^4.4.0" - get-tsconfig: "npm:^4.10.0" - is-bun-module: "npm:^2.0.0" - stable-hash: "npm:^0.0.5" - tinyglobby: "npm:^0.2.13" - unrs-resolver: "npm:^1.6.2" - peerDependencies: - eslint: "*" - eslint-plugin-import: "*" - eslint-plugin-import-x: "*" - peerDependenciesMeta: - eslint-plugin-import: - optional: true - eslint-plugin-import-x: - optional: true - checksum: 10/b8d6a9b2045c70f043f722f78c9e65bc0283126f0ad92c8f07473f7647d77f7b1562f765a472f17e06b81897b407091c0ec9f2e4592b158c9fd92d0b0c33de89 - languageName: node - linkType: hard - -"eslint-module-utils@npm:^2.12.1": - version: 2.12.1 - resolution: "eslint-module-utils@npm:2.12.1" - dependencies: - debug: "npm:^3.2.7" - peerDependenciesMeta: - eslint: - optional: true - checksum: 10/bd25d6610ec3abaa50e8f1beb0119541562bbb8dd02c035c7e887976fe1e0c5dd8175f4607ca8d86d1146df24d52a071bd3d1dd329f6902bd58df805a8ca16d3 - languageName: node - linkType: hard - -"eslint-plugin-deprecation@npm:^2.0.0": - version: 2.0.0 - resolution: "eslint-plugin-deprecation@npm:2.0.0" - dependencies: - "@typescript-eslint/utils": "npm:^6.0.0" - tslib: "npm:^2.3.1" - tsutils: "npm:^3.21.0" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: ^4.2.4 || ^5.0.0 - checksum: 10/810276afa258155a35c863bb2138ebd2132447c3ed219e360915b0e7b4c6e77e09ae2931583d200b1f23e19040a27ad81c0927538a46392334bb4c3c4a2038b4 - languageName: node - linkType: hard - -"eslint-plugin-es-x@npm:^7.5.0": - version: 7.8.0 - resolution: "eslint-plugin-es-x@npm:7.8.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.1.2" - "@eslint-community/regexpp": "npm:^4.11.0" - eslint-compat-utils: "npm:^0.5.1" - peerDependencies: - eslint: ">=8" - checksum: 10/1df8d52c4fadc06854ce801af05b05f2642aa2deb918fb7d37738596eabd70b7f21a22b150b78ec9104bac6a1b6b4fb796adea2364ede91b01d20964849ce5f7 - languageName: node - linkType: hard - -"eslint-plugin-header@npm:^3.1.1": - version: 3.1.1 - resolution: "eslint-plugin-header@npm:3.1.1" - peerDependencies: - eslint: ">=7.7.0" - checksum: 10/6fc7d6e7e2c386e2efa25fb467c0a290fea6330f80acfc6c8fcd3a8473c9023615571463ecd5240b818677660c5e78840fce501d70537802eaebe6bec7e76799 - languageName: node - linkType: hard - -"eslint-plugin-import-newlines@npm:^1.3.4": - version: 1.4.0 - resolution: "eslint-plugin-import-newlines@npm:1.4.0" - peerDependencies: - eslint: ">=6.0.0" - bin: - import-linter: lib/index.js - checksum: 10/66cbf205433e4f31afa0dcdce4f66a55fe33123bfda9ff265b93efcf201cccde382b225c3b5403c890dff558bf596874d0e398fe182b42eb109e9191b8851063 - languageName: node - linkType: hard - -"eslint-plugin-import@npm:^2.29.1": - version: 2.32.0 - resolution: "eslint-plugin-import@npm:2.32.0" - dependencies: - "@rtsao/scc": "npm:^1.1.0" - array-includes: "npm:^3.1.9" - array.prototype.findlastindex: "npm:^1.2.6" - array.prototype.flat: "npm:^1.3.3" - array.prototype.flatmap: "npm:^1.3.3" - debug: "npm:^3.2.7" - doctrine: "npm:^2.1.0" - eslint-import-resolver-node: "npm:^0.3.9" - eslint-module-utils: "npm:^2.12.1" - hasown: "npm:^2.0.2" - is-core-module: "npm:^2.16.1" - is-glob: "npm:^4.0.3" - minimatch: "npm:^3.1.2" - object.fromentries: "npm:^2.0.8" - object.groupby: "npm:^1.0.3" - object.values: "npm:^1.2.1" - semver: "npm:^6.3.1" - string.prototype.trimend: "npm:^1.0.9" - tsconfig-paths: "npm:^3.15.0" - peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 - checksum: 10/1bacf4967e9ebf99e12176a795f0d6d3a87d1c9a030c2207f27b267e10d96a1220be2647504c7fc13ab543cdf13ffef4b8f5620e0447032dba4ff0d3922f7c9e - languageName: node - linkType: hard - -"eslint-plugin-jest@npm:^27.6.3": - version: 27.9.0 - resolution: "eslint-plugin-jest@npm:27.9.0" - dependencies: - "@typescript-eslint/utils": "npm:^5.10.0" - peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 || ^7.0.0 - eslint: ^7.0.0 || ^8.0.0 - jest: "*" - peerDependenciesMeta: - "@typescript-eslint/eslint-plugin": - optional: true - jest: - optional: true - checksum: 10/bca54347280c06c56516faea76042134dd74355c2de6c23361ba0e8736ecc01c62b144eea7eda7570ea4f4ee511c583bb8dab00d7153a1bd1740eb77b0038fd4 - languageName: node - linkType: hard - -"eslint-plugin-n@npm:^16.6.2": - version: 16.6.2 - resolution: "eslint-plugin-n@npm:16.6.2" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - builtins: "npm:^5.0.1" - eslint-plugin-es-x: "npm:^7.5.0" - get-tsconfig: "npm:^4.7.0" - globals: "npm:^13.24.0" - ignore: "npm:^5.2.4" - is-builtin-module: "npm:^3.2.1" - is-core-module: "npm:^2.12.1" - minimatch: "npm:^3.1.2" - resolve: "npm:^1.22.2" - semver: "npm:^7.5.3" - peerDependencies: - eslint: ">=7.0.0" - checksum: 10/e0f600d03d3a3df57e9a811648b1b534a6d67c90ea9406340ddf3763c2b87cf5ef910b390f787ca5cb27c8d8ff36aad42d70209b54e2a1cb4cc2507ca417229a - languageName: node - linkType: hard - -"eslint-plugin-promise@npm:^6.1.1": - version: 6.6.0 - resolution: "eslint-plugin-promise@npm:6.6.0" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - checksum: 10/c2b5604efd7e1390c132fcbf06cb2f072c956ffa65c14a991cb74ba1e2327357797239cb5b9b292d5e4010301bb897bd85a6273d7873fb157edc46aa2d95cbd9 - languageName: node - linkType: hard - -"eslint-plugin-react-hooks@npm:^4.6.0": - version: 4.6.2 - resolution: "eslint-plugin-react-hooks@npm:4.6.2" - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - checksum: 10/5a0680941f34e70cf505bcb6082df31a3e445d193ee95a88ff3483041eb944f4cefdaf7e81b0eb1feb4eeceee8c7c6ddb8a2a6e8c4c0388514a42e16ac7b7a69 - languageName: node - linkType: hard - -"eslint-plugin-react@npm:^7.33.2": - version: 7.37.5 - resolution: "eslint-plugin-react@npm:7.37.5" - dependencies: - array-includes: "npm:^3.1.8" - array.prototype.findlast: "npm:^1.2.5" - array.prototype.flatmap: "npm:^1.3.3" - array.prototype.tosorted: "npm:^1.1.4" - doctrine: "npm:^2.1.0" - es-iterator-helpers: "npm:^1.2.1" - estraverse: "npm:^5.3.0" - hasown: "npm:^2.0.2" - jsx-ast-utils: "npm:^2.4.1 || ^3.0.0" - minimatch: "npm:^3.1.2" - object.entries: "npm:^1.1.9" - object.fromentries: "npm:^2.0.8" - object.values: "npm:^1.2.1" - prop-types: "npm:^15.8.1" - resolve: "npm:^2.0.0-next.5" - semver: "npm:^6.3.1" - string.prototype.matchall: "npm:^4.0.12" - string.prototype.repeat: "npm:^1.0.0" - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - checksum: 10/ee1bd4e0ec64f29109d5a625bb703d179c82e0159c86c3f1b52fc1209d2994625a137dae303c333fb308a2e38315e44066d5204998177e31974382f9fda25d5c - languageName: node - linkType: hard - -"eslint-plugin-simple-import-sort@npm:^10.0.0": - version: 10.0.0 - resolution: "eslint-plugin-simple-import-sort@npm:10.0.0" - peerDependencies: - eslint: ">=5.0.0" - checksum: 10/462187d3c137ba0986586a4759fe57c1c3fc1850750cb785f335b9b235346a1d96ebfcfb558847fc1a3b319718f2736178a66a61a0c184c86d48b21c1e0df26b - languageName: node - linkType: hard - -"eslint-plugin-sort-destructure-keys@npm:^1.5.0": - version: 1.6.0 - resolution: "eslint-plugin-sort-destructure-keys@npm:1.6.0" - dependencies: - natural-compare-lite: "npm:^1.4.0" - peerDependencies: - eslint: 3 - 9 - checksum: 10/621359cb223e2b4bf4256f2034a64af163c8f45c14178be29672a7c8b09e3e70575ff362088f4f3d022e8fd61f4ed1a56474ca866ec8fc476331e8723607960c - languageName: node - linkType: hard - -"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1": - version: 5.1.1 - resolution: "eslint-scope@npm:5.1.1" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^4.1.1" - checksum: 10/c541ef384c92eb5c999b7d3443d80195fcafb3da335500946f6db76539b87d5826c8f2e1d23bf6afc3154ba8cd7c8e566f8dc00f1eea25fdf3afc8fb9c87b238 - languageName: node - linkType: hard - -"eslint-scope@npm:^7.2.2": - version: 7.2.2 - resolution: "eslint-scope@npm:7.2.2" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10/5c660fb905d5883ad018a6fea2b49f3cb5b1cbf2cd4bd08e98646e9864f9bc2c74c0839bed2d292e90a4a328833accc197c8f0baed89cbe8d605d6f918465491 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^2.0.0": - version: 2.1.0 - resolution: "eslint-visitor-keys@npm:2.1.0" - checksum: 10/db4547eef5039122d518fa307e938ceb8589da5f6e8f5222efaf14dd62f748ce82e2d2becd3ff9412a50350b726bda95dbea8515a471074547daefa58aee8735 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": - version: 3.4.3 - resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 10/3f357c554a9ea794b094a09bd4187e5eacd1bc0d0653c3adeb87962c548e6a1ab8f982b86963ae1337f5d976004146536dcee5d0e2806665b193fbfbf1a9231b - languageName: node - linkType: hard - -"eslint@npm:^8.56.0": - version: 8.57.1 - resolution: "eslint@npm:8.57.1" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@eslint-community/regexpp": "npm:^4.6.1" - "@eslint/eslintrc": "npm:^2.1.4" - "@eslint/js": "npm:8.57.1" - "@humanwhocodes/config-array": "npm:^0.13.0" - "@humanwhocodes/module-importer": "npm:^1.0.1" - "@nodelib/fs.walk": "npm:^1.2.8" - "@ungap/structured-clone": "npm:^1.2.0" - ajv: "npm:^6.12.4" - chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.2" - debug: "npm:^4.3.2" - doctrine: "npm:^3.0.0" - escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^7.2.2" - eslint-visitor-keys: "npm:^3.4.3" - espree: "npm:^9.6.1" - esquery: "npm:^1.4.2" - esutils: "npm:^2.0.2" - fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^6.0.1" - find-up: "npm:^5.0.0" - glob-parent: "npm:^6.0.2" - globals: "npm:^13.19.0" - graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.0" - imurmurhash: "npm:^0.1.4" - is-glob: "npm:^4.0.0" - is-path-inside: "npm:^3.0.3" - js-yaml: "npm:^4.1.0" - json-stable-stringify-without-jsonify: "npm:^1.0.1" - levn: "npm:^0.4.1" - lodash.merge: "npm:^4.6.2" - minimatch: "npm:^3.1.2" - natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.3" - strip-ansi: "npm:^6.0.1" - text-table: "npm:^0.2.0" - bin: - eslint: bin/eslint.js - checksum: 10/5504fa24879afdd9f9929b2fbfc2ee9b9441a3d464efd9790fbda5f05738858530182029f13323add68d19fec749d3ab4a70320ded091ca4432b1e9cc4ed104c - languageName: node - linkType: hard - -"esniff@npm:^2.0.1": - version: 2.0.1 - resolution: "esniff@npm:2.0.1" - dependencies: - d: "npm:^1.0.1" - es5-ext: "npm:^0.10.62" - event-emitter: "npm:^0.3.5" - type: "npm:^2.7.2" - checksum: 10/f6a2abd2f8c5fe57c5fcf53e5407c278023313d0f6c3a92688e7122ab9ac233029fd424508a196ae5bc561aa1f67d23f4e2435b1a0d378030f476596129056ac - languageName: node - linkType: hard - -"espree@npm:^9.6.0, espree@npm:^9.6.1": - version: 9.6.1 - resolution: "espree@npm:9.6.1" - dependencies: - acorn: "npm:^8.9.0" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/255ab260f0d711a54096bdeda93adff0eadf02a6f9b92f02b323e83a2b7fc258797919437ad331efec3930475feb0142c5ecaaf3cdab4befebd336d47d3f3134 - languageName: node - linkType: hard - -"esprima-fb@npm:^15001.1.0-dev-harmony-fb": - version: 15001.1.0-dev-harmony-fb - resolution: "esprima-fb@npm:15001.1.0-dev-harmony-fb" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10/a16b1e8ab4a647f8b8ef6a5c409604b70f55d4e08d6734e4d64283a8e7e92ae9984ced0409c5b5361681c847bbf072b639ef0c90e3e906457185ca7e7587f1b1 - languageName: node - linkType: hard - -"esprima-next@npm:^5.7.0": - version: 5.8.4 - resolution: "esprima-next@npm:5.8.4" - bin: - esparse: bin/esparse.js - esvalidate: bin/esvalidate.js - checksum: 10/3efd0523a3db5c02ef109421931774daaa0e3439c820f6ed617a7253bba90b47b6691607d764d285d8b33cc631ebbfdfe33853150301177911667adb6bab52ea - languageName: node - linkType: hard - -"esprima@npm:^4.0.0, esprima@npm:^4.0.1": - version: 4.0.1 - resolution: "esprima@npm:4.0.1" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10/f1d3c622ad992421362294f7acf866aa9409fbad4eb2e8fa230bd33944ce371d32279667b242d8b8907ec2b6ad7353a717f3c0e60e748873a34a7905174bc0eb - languageName: node - linkType: hard - -"esprima@npm:~3.1.0": - version: 3.1.3 - resolution: "esprima@npm:3.1.3" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10/27c9ea08582d6ece009d6ab3cdf5dc3e382f9bf50200c8b4c9a0d048563df2e2fdb0d20338fb7b651cbc00a8faf4b07fc3b2679907ae0758f239d675cde55336 - languageName: node - linkType: hard - -"esquery@npm:^1.4.2": - version: 1.7.0 - resolution: "esquery@npm:1.7.0" - dependencies: - estraverse: "npm:^5.1.0" - checksum: 10/4afaf3089367e1f5885caa116ef386dffd8bfd64da21fd3d0e56e938d2667cfb2e5400ab4a825aa70e799bb3741e5b5d63c0b94d86e2d4cf3095c9e64b2f5a15 - languageName: node - linkType: hard - -"esrecurse@npm:^4.3.0": - version: 4.3.0 - resolution: "esrecurse@npm:4.3.0" - dependencies: - estraverse: "npm:^5.2.0" - checksum: 10/44ffcd89e714ea6b30143e7f119b104fc4d75e77ee913f34d59076b40ef2d21967f84e019f84e1fd0465b42cdbf725db449f232b5e47f29df29ed76194db8e16 - languageName: node - linkType: hard - -"estraverse@npm:^4.1.1": - version: 4.3.0 - resolution: "estraverse@npm:4.3.0" - checksum: 10/3f67ad02b6dbfaddd9ea459cf2b6ef4ecff9a6082a7af9d22e445b9abc082ad9ca47e1825557b293fcdae477f4714e561123e30bb6a5b2f184fb2bad4a9497eb - languageName: node - linkType: hard - -"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 10/37cbe6e9a68014d34dbdc039f90d0baf72436809d02edffcc06ba3c2a12eb298048f877511353b130153e532aac8d68ba78430c0dd2f44806ebc7c014b01585e - languageName: node - linkType: hard - -"estree-util-is-identifier-name@npm:^3.0.0": - version: 3.0.0 - resolution: "estree-util-is-identifier-name@npm:3.0.0" - checksum: 10/cdc9187614fdb269d714eddfdf72c270a79daa9ed51e259bb78527983be6dcc68da6a914ccc41175b662194c67fbd2a1cd262f85fac1eef7111cfddfaf6f77f8 - languageName: node - linkType: hard - -"estree-walker@npm:^0.6.1": - version: 0.6.1 - resolution: "estree-walker@npm:0.6.1" - checksum: 10/b8da7815030c4e0b735f5f8af370af09525e052ee14e539cecabc24ad6da1782448778361417e7c438091a59e7ca9f4a0c11642f7da4f2ebf1ba7a150a590bcc - languageName: node - linkType: hard - -"estree-walker@npm:^2.0.2": - version: 2.0.2 - resolution: "estree-walker@npm:2.0.2" - checksum: 10/b02109c5d46bc2ed47de4990eef770f7457b1159a229f0999a09224d2b85ffeed2d7679cffcff90aeb4448e94b0168feb5265b209cdec29aad50a3d6e93d21e2 - languageName: node - linkType: hard - -"esutils@npm:^2.0.2": - version: 2.0.3 - resolution: "esutils@npm:2.0.3" - checksum: 10/b23acd24791db11d8f65be5ea58fd9a6ce2df5120ae2da65c16cfc5331ff59d5ac4ef50af66cd4bde238881503ec839928a0135b99a036a9cdfa22d17fd56cdb - languageName: node - linkType: hard - -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10/571aeb3dbe0f2bbd4e4fadbdb44f325fc75335cd5f6f6b6a091e6a06a9f25ed5392f0863c5442acb0646787446e816f13cbfc6edce5b07658541dff573cab1ff - languageName: node - linkType: hard - -"ethereum-blockies-base64@npm:^1.0.2": - version: 1.0.2 - resolution: "ethereum-blockies-base64@npm:1.0.2" - dependencies: - pnglib: "npm:0.0.1" - checksum: 10/d027f31c63f43d2e1dd8d210943b0c3335a4cb6a08c96d18a1a5acd85c989b9d98f11eb51bfe1b5d82e7f6cc7f5f4fcd9cbfa29f8105be3de7977b84e2cc621a - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^2.0.0": - version: 2.2.1 - resolution: "ethereum-cryptography@npm:2.2.1" - dependencies: - "@noble/curves": "npm:1.4.2" - "@noble/hashes": "npm:1.4.0" - "@scure/bip32": "npm:1.4.0" - "@scure/bip39": "npm:1.3.0" - checksum: 10/ab123bbfe843500ac2d645ce9edc4bc814962ffb598db6bf8bf01fbecac656e6c81ff4cf2472f1734844bbcbad2bf658d8b699cb7248d768e0f06ae13ecf43b8 - languageName: node - linkType: hard - -"event-emitter@npm:^0.3.5": - version: 0.3.5 - resolution: "event-emitter@npm:0.3.5" - dependencies: - d: "npm:1" - es5-ext: "npm:~0.10.14" - checksum: 10/a7f5ea80029193f4869782d34ef7eb43baa49cd397013add1953491b24588468efbe7e3cc9eb87d53f33397e7aab690fd74c079ec440bf8b12856f6bdb6e9396 - languageName: node - linkType: hard - -"event-target-shim@npm:^5.0.0": - version: 5.0.1 - resolution: "event-target-shim@npm:5.0.1" - checksum: 10/49ff46c3a7facbad3decb31f597063e761785d7fdb3920d4989d7b08c97a61c2f51183e2f3a03130c9088df88d4b489b1b79ab632219901f184f85158508f4c8 - languageName: node - linkType: hard - -"eventemitter3@npm:^4.0.0, eventemitter3@npm:^4.0.7": - version: 4.0.7 - resolution: "eventemitter3@npm:4.0.7" - checksum: 10/8030029382404942c01d0037079f1b1bc8fed524b5849c237b80549b01e2fc49709e1d0c557fa65ca4498fc9e24cff1475ef7b855121fcc15f9d61f93e282346 - languageName: node - linkType: hard - -"eventemitter3@npm:^5.0.0, eventemitter3@npm:^5.0.1": - version: 5.0.1 - resolution: "eventemitter3@npm:5.0.1" - checksum: 10/ac6423ec31124629c84c7077eed1e6987f6d66c31cf43c6fcbf6c87791d56317ce808d9ead483652436df171b526fc7220eccdc9f3225df334e81582c3cf7dd5 - languageName: node - linkType: hard - -"events-universal@npm:^1.0.0": - version: 1.0.1 - resolution: "events-universal@npm:1.0.1" - dependencies: - bare-events: "npm:^2.7.0" - checksum: 10/71b2e6079b4dc030c613ef73d99f1acb369dd3ddb6034f49fd98b3e2c6632cde9f61c15fb1351004339d7c79672252a4694ecc46a6124dc794b558be50a83867 - languageName: node - linkType: hard - -"events@npm:^3.2.0, events@npm:^3.3.0": - version: 3.3.0 - resolution: "events@npm:3.3.0" - checksum: 10/a3d47e285e28d324d7180f1e493961a2bbb4cad6412090e4dec114f4db1f5b560c7696ee8e758f55e23913ede856e3689cd3aa9ae13c56b5d8314cd3b3ddd1be - languageName: node - linkType: hard - -"evp_bytestokey@npm:^1.0.0, evp_bytestokey@npm:^1.0.3": - version: 1.0.3 - resolution: "evp_bytestokey@npm:1.0.3" - dependencies: - md5.js: "npm:^1.3.4" - node-gyp: "npm:latest" - safe-buffer: "npm:^5.1.1" - checksum: 10/ad4e1577f1a6b721c7800dcc7c733fe01f6c310732bb5bf2240245c2a5b45a38518b91d8be2c610611623160b9d1c0e91f1ce96d639f8b53e8894625cf20fa45 - languageName: node - linkType: hard - -"execa@npm:^5.0.0": - version: 5.1.1 - resolution: "execa@npm:5.1.1" - dependencies: - cross-spawn: "npm:^7.0.3" - get-stream: "npm:^6.0.0" - human-signals: "npm:^2.1.0" - is-stream: "npm:^2.0.0" - merge-stream: "npm:^2.0.0" - npm-run-path: "npm:^4.0.1" - onetime: "npm:^5.1.2" - signal-exit: "npm:^3.0.3" - strip-final-newline: "npm:^2.0.0" - checksum: 10/8ada91f2d70f7dff702c861c2c64f21dfdc1525628f3c0454fd6f02fce65f7b958616cbd2b99ca7fa4d474e461a3d363824e91b3eb881705231abbf387470597 - languageName: node - linkType: hard - -"exenv@npm:^1.2.2": - version: 1.2.2 - resolution: "exenv@npm:1.2.2" - checksum: 10/6840185e421394bcb143debb866d31d19c3e4a4bca87d2f319d68d61afff353b3c678f2eb389e3b98ab9aecbec19f6bebbdc4193984378af0a3366c498a7efc8 - languageName: node - linkType: hard - -"expand-template@npm:^2.0.3": - version: 2.0.3 - resolution: "expand-template@npm:2.0.3" - checksum: 10/588c19847216421ed92befb521767b7018dc88f88b0576df98cb242f20961425e96a92cbece525ef28cc5becceae5d544ae0f5b9b5e2aa05acb13716ca5b3099 - languageName: node - linkType: hard - -"expect@npm:^30.0.0": - version: 30.2.0 - resolution: "expect@npm:30.2.0" - dependencies: - "@jest/expect-utils": "npm:30.2.0" - "@jest/get-type": "npm:30.1.0" - jest-matcher-utils: "npm:30.2.0" - jest-message-util: "npm:30.2.0" - jest-mock: "npm:30.2.0" - jest-util: "npm:30.2.0" - checksum: 10/cf98ab45ab2e9f2fb9943a3ae0097f72d63a94be179a19fd2818d8fdc3b7681d31cc8ef540606eb8dd967d9c44d73fef263a614e9de260c22943ffb122ad66fd - languageName: node - linkType: hard - -"exponential-backoff@npm:^3.1.1": - version: 3.1.3 - resolution: "exponential-backoff@npm:3.1.3" - checksum: 10/ca25962b4bbab943b7c4ed0b5228e263833a5063c65e1cdeac4be9afad350aae5466e8e619b5051f4f8d37b2144a2d6e8fcc771b6cc82934f7dade2f964f652c - languageName: node - linkType: hard - -"express@npm:^4.17.3": - version: 4.22.1 - resolution: "express@npm:4.22.1" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:~1.20.3" - content-disposition: "npm:~0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:~0.7.1" - cookie-signature: "npm:~1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:~1.3.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.0" - merge-descriptors: "npm:1.0.3" - methods: "npm:~1.1.2" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:~0.1.12" - proxy-addr: "npm:~2.0.7" - qs: "npm:~6.14.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:~0.19.0" - serve-static: "npm:~1.16.2" - setprototypeof: "npm:1.2.0" - statuses: "npm:~2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10/f33c1bd0c7d36e2a1f18de9cdc176469d32f68e20258d2941b8d296ab9a4fd9011872c246391bf87714f009fac5114c832ec5ac65cbee39421f1258801eb8470 - languageName: node - linkType: hard - -"ext@npm:^1.7.0": - version: 1.7.0 - resolution: "ext@npm:1.7.0" - dependencies: - type: "npm:^2.7.2" - checksum: 10/666a135980b002df0e75c8ac6c389140cdc59ac953db62770479ee2856d58ce69d2f845e5f2586716350b725400f6945e51e9159573158c39f369984c72dcd84 - languageName: node - linkType: hard - -"extend@npm:^3.0.0": - version: 3.0.2 - resolution: "extend@npm:3.0.2" - checksum: 10/59e89e2dc798ec0f54b36d82f32a27d5f6472c53974f61ca098db5d4648430b725387b53449a34df38fd0392045434426b012f302b3cc049a6500ccf82877e4e - languageName: node - linkType: hard - -"extensionless@npm:^1.9.6": - version: 1.9.9 - resolution: "extensionless@npm:1.9.9" - checksum: 10/5d28368b7397629579aca1e8e9c8d101f44eeab693164bb1db6071b01f378ebaba3c8b1c0c900346ba3295e4d595b4060b14450804977228c22695deda788a3d - languageName: node - linkType: hard - -"extract-zip@npm:^2.0.1": - version: 2.0.1 - resolution: "extract-zip@npm:2.0.1" - dependencies: - "@types/yauzl": "npm:^2.9.1" - debug: "npm:^4.1.1" - get-stream: "npm:^5.1.0" - yauzl: "npm:^2.10.0" - dependenciesMeta: - "@types/yauzl": - optional: true - bin: - extract-zip: cli.js - checksum: 10/8cbda9debdd6d6980819cc69734d874ddd71051c9fe5bde1ef307ebcedfe949ba57b004894b585f758b7c9eeeea0e3d87f2dda89b7d25320459c2c9643ebb635 - languageName: node - linkType: hard - -"extsprintf@npm:^1.2.0": - version: 1.4.1 - resolution: "extsprintf@npm:1.4.1" - checksum: 10/bfd6d55f3c0c04d826fe0213264b383c03f32825af6b1ff777f3f2dc49467e599361993568d75b7b19a8ea1bb08c8e7cd8c3d87d179ced91bb0dcf81ca6938e0 - languageName: node - linkType: hard - -"fast-copy@npm:^4.0.0": - version: 4.0.2 - resolution: "fast-copy@npm:4.0.2" - checksum: 10/45114c4e45dc839a49563ca27ebf643df026bce29863c3e913bde5402c8ae04fee4a0351f6438741e7797f7d49f1496e1fc8903a31b310562aed31b0a2957461 - languageName: node - linkType: hard - -"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": - version: 3.1.3 - resolution: "fast-deep-equal@npm:3.1.3" - checksum: 10/e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d - languageName: node - linkType: hard - -"fast-fifo@npm:^1.2.0, fast-fifo@npm:^1.3.2": - version: 1.3.2 - resolution: "fast-fifo@npm:1.3.2" - checksum: 10/6bfcba3e4df5af7be3332703b69a7898a8ed7020837ec4395bb341bd96cc3a6d86c3f6071dd98da289618cf2234c70d84b2a6f09a33dd6f988b1ff60d8e54275 - languageName: node - linkType: hard - -"fast-glob@npm:^3.2.11, fast-glob@npm:^3.2.12, fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": - version: 3.3.3 - resolution: "fast-glob@npm:3.3.3" - dependencies: - "@nodelib/fs.stat": "npm:^2.0.2" - "@nodelib/fs.walk": "npm:^1.2.3" - glob-parent: "npm:^5.1.2" - merge2: "npm:^1.3.0" - micromatch: "npm:^4.0.8" - checksum: 10/dcc6432b269762dd47381d8b8358bf964d8f4f60286ac6aa41c01ade70bda459ff2001b516690b96d5365f68a49242966112b5d5cc9cd82395fa8f9d017c90ad - languageName: node - linkType: hard - -"fast-json-stable-stringify@npm:^2.0.0": - version: 2.1.0 - resolution: "fast-json-stable-stringify@npm:2.1.0" - checksum: 10/2c20055c1fa43c922428f16ca8bb29f2807de63e5c851f665f7ac9790176c01c3b40335257736b299764a8d383388dabc73c8083b8e1bc3d99f0a941444ec60e - languageName: node - linkType: hard - -"fast-levenshtein@npm:^2.0.6": - version: 2.0.6 - resolution: "fast-levenshtein@npm:2.0.6" - checksum: 10/eb7e220ecf2bab5159d157350b81d01f75726a4382f5a9266f42b9150c4523b9795f7f5d9fbbbeaeac09a441b2369f05ee02db48ea938584205530fe5693cfe1 - languageName: node - linkType: hard - -"fast-safe-stringify@npm:^2.1.1": - version: 2.1.1 - resolution: "fast-safe-stringify@npm:2.1.1" - checksum: 10/dc1f063c2c6ac9533aee14d406441f86783a8984b2ca09b19c2fe281f9ff59d315298bc7bc22fd1f83d26fe19ef2f20e2ddb68e96b15040292e555c5ced0c1e4 - languageName: node - linkType: hard - -"fast-sha256@npm:^1.3.0": - version: 1.3.0 - resolution: "fast-sha256@npm:1.3.0" - checksum: 10/3bef0491f10a254348ec11dcddb26e4d951cfd3b4c0662ea5843ad1be3fe184ed74d640df68565fcc60f6437548cddf49e3ac886f88a69e05b5142e862840bf9 - languageName: node - linkType: hard - -"fast-uri@npm:^3.0.1": - version: 3.1.0 - resolution: "fast-uri@npm:3.1.0" - checksum: 10/818b2c96dc913bcf8511d844c3d2420e2c70b325c0653633f51821e4e29013c2015387944435cd0ef5322c36c9beecc31e44f71b257aeb8e0b333c1d62bb17c2 - languageName: node - linkType: hard - -"fastest-levenshtein@npm:^1.0.12": - version: 1.0.16 - resolution: "fastest-levenshtein@npm:1.0.16" - checksum: 10/ee85d33b5cef592033f70e1c13ae8624055950b4eb832435099cd56aa313d7f251b873bedbc06a517adfaff7b31756d139535991e2406967438e03a1bf1b008e - languageName: node - linkType: hard - -"fastq@npm:^1.13.0, fastq@npm:^1.6.0": - version: 1.20.1 - resolution: "fastq@npm:1.20.1" - dependencies: - reusify: "npm:^1.0.4" - checksum: 10/ab2fe3a7a108112e7752cfe7fc11683c21e595913a6a593ad0b4415f31dddbfc283775ab66f2c8ccea6ab7cfc116157cbddcfae9798d9de98d08fe0a2c3e97b2 - languageName: node - linkType: hard - -"faye-websocket@npm:^0.11.3": - version: 0.11.4 - resolution: "faye-websocket@npm:0.11.4" - dependencies: - websocket-driver: "npm:>=0.5.1" - checksum: 10/22433c14c60925e424332d2794463a8da1c04848539b5f8db5fced62a7a7c71a25335a4a8b37334e3a32318835e2b87b1733d008561964121c4a0bd55f0878c3 - languageName: node - linkType: hard - -"fd-slicer@npm:~1.1.0": - version: 1.1.0 - resolution: "fd-slicer@npm:1.1.0" - dependencies: - pend: "npm:~1.2.0" - checksum: 10/db3e34fa483b5873b73f248e818f8a8b59a6427fd8b1436cd439c195fdf11e8659419404826059a642b57d18075c856d06d6a50a1413b714f12f833a9341ead3 - languageName: node - linkType: hard - -"fdir@npm:^6.5.0": - version: 6.5.0 - resolution: "fdir@npm:6.5.0" - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - checksum: 10/14ca1c9f0a0e8f4f2e9bf4e8551065a164a09545dae548c12a18d238b72e51e5a7b39bd8e5494b56463a0877672d0a6c1ef62c6fa0677db1b0c847773be939b1 - languageName: node - linkType: hard - -"fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4": - version: 3.2.0 - resolution: "fetch-blob@npm:3.2.0" - dependencies: - node-domexception: "npm:^1.0.0" - web-streams-polyfill: "npm:^3.0.3" - checksum: 10/5264ecceb5fdc19eb51d1d0359921f12730941e333019e673e71eb73921146dceabcb0b8f534582be4497312d656508a439ad0f5edeec2b29ab2e10c72a1f86b - languageName: node - linkType: hard - -"fflate@npm:^0.8.1": - version: 0.8.2 - resolution: "fflate@npm:0.8.2" - checksum: 10/2bd26ba6d235d428de793c6a0cd1aaa96a06269ebd4e21b46c8fd1bd136abc631acf27e188d47c3936db090bf3e1ede11d15ce9eae9bffdc4bfe1b9dc66ca9cb - languageName: node - linkType: hard - -"figures@npm:^3.0.0": - version: 3.2.0 - resolution: "figures@npm:3.2.0" - dependencies: - escape-string-regexp: "npm:^1.0.5" - checksum: 10/a3bf94e001be51d3770500789157f067218d4bc681a65e1f69d482de15120bcac822dceb1a7b3803f32e4e3a61a46df44f7f2c8ba95d6375e7491502e0dd3d97 - languageName: node - linkType: hard - -"file-entry-cache@npm:^6.0.1": - version: 6.0.1 - resolution: "file-entry-cache@npm:6.0.1" - dependencies: - flat-cache: "npm:^3.0.4" - checksum: 10/099bb9d4ab332cb93c48b14807a6918a1da87c45dce91d4b61fd40e6505d56d0697da060cb901c729c90487067d93c9243f5da3dc9c41f0358483bfdebca736b - languageName: node - linkType: hard - -"file-saver@npm:^2.0.5": - version: 2.0.5 - resolution: "file-saver@npm:2.0.5" - checksum: 10/fbba443d9b682fec0be6676c048a7ac688b9bd33b105c02e8e1a1cb3e354ed441198dc1f15dcbc137fa044bea73f8a7549f2617e3a952fa7d96390356d54a7c3 - languageName: node - linkType: hard - -"file-selector@npm:^2.1.0": - version: 2.1.2 - resolution: "file-selector@npm:2.1.2" - dependencies: - tslib: "npm:^2.7.0" - checksum: 10/2a6be0e1904df85f8705a5171fd3b93c1b1ff2ad0143556adb78ac4de899bfc0ba1a20083b4febd4f7000759ec9119a31af76a057e29dd9215907da69ac95e50 - languageName: node - linkType: hard - -"file-uri-to-path@npm:1.0.0": - version: 1.0.0 - resolution: "file-uri-to-path@npm:1.0.0" - checksum: 10/b648580bdd893a008c92c7ecc96c3ee57a5e7b6c4c18a9a09b44fb5d36d79146f8e442578bc0e173dc027adf3987e254ba1dfd6e3ec998b7c282873010502144 - languageName: node - linkType: hard - -"filelist@npm:^1.0.4": - version: 1.0.4 - resolution: "filelist@npm:1.0.4" - dependencies: - minimatch: "npm:^5.0.1" - checksum: 10/4b436fa944b1508b95cffdfc8176ae6947b92825483639ef1b9a89b27d82f3f8aa22b21eed471993f92709b431670d4e015b39c087d435a61e1bb04564cf51de - languageName: node - linkType: hard - -"filename-reserved-regex@npm:^2.0.0": - version: 2.0.0 - resolution: "filename-reserved-regex@npm:2.0.0" - checksum: 10/9322b45726b86c45d0b4fe91be5c51e62b2e7e63db02c4a6ff3fd499bbc134d12fbf3c8b91979440ef45b3be834698ab9c3e66cb63b79fea4817e33da237d32a - languageName: node - linkType: hard - -"filenamify@npm:^4.3.0": - version: 4.3.0 - resolution: "filenamify@npm:4.3.0" - dependencies: - filename-reserved-regex: "npm:^2.0.0" - strip-outer: "npm:^1.0.1" - trim-repeated: "npm:^1.0.0" - checksum: 10/5b71a7ff8e958c8621957e6fbf7872024126d3b5da50f59b1634af3343ba1a69d4cc15cfe4ca4bbfa7c959ad4d98614ee51e6f1d9fa7326eef8ceda2da8cd74e - languageName: node - linkType: hard - -"filing-cabinet@npm:^3.0.1": - version: 3.3.1 - resolution: "filing-cabinet@npm:3.3.1" - dependencies: - app-module-path: "npm:^2.2.0" - commander: "npm:^2.20.3" - debug: "npm:^4.3.3" - enhanced-resolve: "npm:^5.8.3" - is-relative-path: "npm:^1.0.2" - module-definition: "npm:^3.3.1" - module-lookup-amd: "npm:^7.0.1" - resolve: "npm:^1.21.0" - resolve-dependency-path: "npm:^2.0.0" - sass-lookup: "npm:^3.0.0" - stylus-lookup: "npm:^3.0.1" - tsconfig-paths: "npm:^3.10.1" - typescript: "npm:^3.9.7" - bin: - filing-cabinet: bin/cli.js - checksum: 10/c4e71efffa1714e2fe862fa7741446a6307ce03a27f01faed3cc4969c9fc395dddd4d1e095569ce0bf6b6c95826f2665883465971f3346ba179f815b888e8151 - languageName: node - linkType: hard - -"fill-range@npm:^7.1.1": - version: 7.1.1 - resolution: "fill-range@npm:7.1.1" - dependencies: - to-regex-range: "npm:^5.0.1" - checksum: 10/a7095cb39e5bc32fada2aa7c7249d3f6b01bd1ce461a61b0adabacccabd9198500c6fb1f68a7c851a657e273fce2233ba869638897f3d7ed2e87a2d89b4436ea - languageName: node - linkType: hard - -"filter-obj@npm:^5.1.0": - version: 5.1.0 - resolution: "filter-obj@npm:5.1.0" - checksum: 10/8f6dab6d8d8855f686e8cc6be289bbbd64a80be52c660124e36e982f78017cf5dae7de95f79ec167fbf62101d6aab93067a3105ae8f56251785a721e678d6b07 - languageName: node - linkType: hard - -"finalhandler@npm:~1.3.1": - version: 1.3.2 - resolution: "finalhandler@npm:1.3.2" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:~2.0.2" - unpipe: "npm:~1.0.0" - checksum: 10/6cb4f9f80eaeb5a0fac4fdbd27a65d39271f040a0034df16556d896bfd855fd42f09da886781b3102117ea8fceba97b903c1f8b08df1fb5740576d5e0f481eed - languageName: node - linkType: hard - -"find-cache-dir@npm:^3.3.1": - version: 3.3.2 - resolution: "find-cache-dir@npm:3.3.2" - dependencies: - commondir: "npm:^1.0.1" - make-dir: "npm:^3.0.2" - pkg-dir: "npm:^4.1.0" - checksum: 10/3907c2e0b15132704ed67083686cd3e68ab7d9ecc22e50ae9da20678245d488b01fa22c0e34c0544dc6edc4354c766f016c8c186a787be7c17f7cde8c5281e85 - languageName: node - linkType: hard - -"find-up@npm:^4.0.0, find-up@npm:^4.1.0": - version: 4.1.0 - resolution: "find-up@npm:4.1.0" - dependencies: - locate-path: "npm:^5.0.0" - path-exists: "npm:^4.0.0" - checksum: 10/4c172680e8f8c1f78839486e14a43ef82e9decd0e74145f40707cc42e7420506d5ec92d9a11c22bd2c48fb0c384ea05dd30e10dd152fefeec6f2f75282a8b844 - languageName: node - linkType: hard - -"find-up@npm:^5.0.0": - version: 5.0.0 - resolution: "find-up@npm:5.0.0" - dependencies: - locate-path: "npm:^6.0.0" - path-exists: "npm:^4.0.0" - checksum: 10/07955e357348f34660bde7920783204ff5a26ac2cafcaa28bace494027158a97b9f56faaf2d89a6106211a8174db650dd9f503f9c0d526b1202d5554a00b9095 - languageName: node - linkType: hard - -"fix-dts-default-cjs-exports@npm:^1.0.0": - version: 1.0.1 - resolution: "fix-dts-default-cjs-exports@npm:1.0.1" - dependencies: - magic-string: "npm:^0.30.17" - mlly: "npm:^1.7.4" - rollup: "npm:^4.34.8" - checksum: 10/3324418bb63c93b6b22a808e242d220caba804860c24218b2912abc4525525334fcdcb62d22be6472a8d84ee2ad4165bc79554140c3369eb11d23220cdd986ce - languageName: node - linkType: hard - -"flat-cache@npm:^3.0.4": - version: 3.2.0 - resolution: "flat-cache@npm:3.2.0" - dependencies: - flatted: "npm:^3.2.9" - keyv: "npm:^4.5.3" - rimraf: "npm:^3.0.2" - checksum: 10/02381c6ece5e9fa5b826c9bbea481d7fd77645d96e4b0b1395238124d581d10e56f17f723d897b6d133970f7a57f0fab9148cbbb67237a0a0ffe794ba60c0c70 - languageName: node - linkType: hard - -"flat@npm:^5.0.2": - version: 5.0.2 - resolution: "flat@npm:5.0.2" - bin: - flat: cli.js - checksum: 10/72479e651c15eab53e25ce04c31bab18cfaac0556505cac19221dbbe85bbb9686bc76e4d397e89e5bf516ce667dcf818f8b07e585568edba55abc2bf1f698fb5 - languageName: node - linkType: hard - -"flatted@npm:^3.2.9": - version: 3.3.3 - resolution: "flatted@npm:3.3.3" - checksum: 10/8c96c02fbeadcf4e8ffd0fa24983241e27698b0781295622591fc13585e2f226609d95e422bcf2ef044146ffacb6b68b1f20871454eddf75ab3caa6ee5f4a1fe - languageName: node - linkType: hard - -"flatten@npm:^1.0.2": - version: 1.0.3 - resolution: "flatten@npm:1.0.3" - checksum: 10/5c57379816f1692aaa79fbc6390e0a0644e5e8442c5783ed57c6d315468eddbc53a659eaa03c9bb1e771b0f4a9bd8dd8a2620286bf21fd6538a7857321fdfb20 - languageName: node - linkType: hard - -"follow-redirects@npm:^1.0.0, follow-redirects@npm:^1.14.0, follow-redirects@npm:^1.15.6": - version: 1.15.11 - resolution: "follow-redirects@npm:1.15.11" - peerDependenciesMeta: - debug: - optional: true - checksum: 10/07372fd74b98c78cf4d417d68d41fdaa0be4dcacafffb9e67b1e3cf090bc4771515e65020651528faab238f10f9b9c0d9707d6c1574a6c0387c5de1042cde9ba - languageName: node - linkType: hard - -"for-each@npm:^0.3.3, for-each@npm:^0.3.5": - version: 0.3.5 - resolution: "for-each@npm:0.3.5" - dependencies: - is-callable: "npm:^1.2.7" - checksum: 10/330cc2439f85c94f4609de3ee1d32c5693ae15cdd7fe3d112c4fd9efd4ce7143f2c64ef6c2c9e0cfdb0058437f33ef05b5bdae5b98fcc903fb2143fbaf0fea0f - languageName: node - linkType: hard - -"foreground-child@npm:^3.1.0": - version: 3.3.1 - resolution: "foreground-child@npm:3.3.1" - dependencies: - cross-spawn: "npm:^7.0.6" - signal-exit: "npm:^4.0.1" - checksum: 10/427b33f997a98073c0424e5c07169264a62cda806d8d2ded159b5b903fdfc8f0a1457e06b5fc35506497acb3f1e353f025edee796300209ac6231e80edece835 - languageName: node - linkType: hard - -"form-data@npm:^2.3.3": - version: 2.5.5 - resolution: "form-data@npm:2.5.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.35" - safe-buffer: "npm:^5.2.1" - checksum: 10/4b6a8d07bb67089da41048e734215f68317a8e29dd5385a972bf5c458a023313c69d3b5d6b8baafbb7f808fa9881e0e2e030ffe61e096b3ddc894c516401271d - languageName: node - linkType: hard - -"form-data@npm:^4.0.0, form-data@npm:^4.0.4": - version: 4.0.5 - resolution: "form-data@npm:4.0.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.12" - checksum: 10/52ecd6e927c8c4e215e68a7ad5e0f7c1031397439672fd9741654b4a94722c4182e74cc815b225dcb5be3f4180f36428f67c6dd39eaa98af0dcfdd26c00c19cd - languageName: node - linkType: hard - -"formdata-polyfill@npm:^4.0.10": - version: 4.0.10 - resolution: "formdata-polyfill@npm:4.0.10" - dependencies: - fetch-blob: "npm:^3.1.2" - checksum: 10/9b5001d2edef3c9449ac3f48bd4f8cc92e7d0f2e7c1a5c8ba555ad4e77535cc5cf621fabe49e97f304067037282dd9093b9160a3cb533e46420b446c4e6bc06f - languageName: node - linkType: hard - -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10/29ba9fd347117144e97cbb8852baae5e8b2acb7d1b591ef85695ed96f5b933b1804a7fac4a15dd09ca7ac7d0cdc104410e8102aae2dd3faa570a797ba07adb81 - languageName: node - linkType: hard - -"fresh@npm:~0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10/64c88e489b5d08e2f29664eb3c79c705ff9a8eb15d3e597198ef76546d4ade295897a44abb0abd2700e7ef784b2e3cbf1161e4fbf16f59129193fd1030d16da1 - languageName: node - linkType: hard - -"fs-constants@npm:^1.0.0": - version: 1.0.0 - resolution: "fs-constants@npm:1.0.0" - checksum: 10/18f5b718371816155849475ac36c7d0b24d39a11d91348cfcb308b4494824413e03572c403c86d3a260e049465518c4f0d5bd00f0371cdfcad6d4f30a85b350d - languageName: node - linkType: hard - -"fs-extra@npm:^10.0.0, fs-extra@npm:^10.1.0": - version: 10.1.0 - resolution: "fs-extra@npm:10.1.0" - dependencies: - graceful-fs: "npm:^4.2.0" - jsonfile: "npm:^6.0.1" - universalify: "npm:^2.0.0" - checksum: 10/05ce2c3b59049bcb7b52001acd000e44b3c4af4ec1f8839f383ef41ec0048e3cfa7fd8a637b1bddfefad319145db89be91f4b7c1db2908205d38bf91e7d1d3b7 - languageName: node - linkType: hard - -"fs-extra@npm:^11.1.1": - version: 11.3.3 - resolution: "fs-extra@npm:11.3.3" - dependencies: - graceful-fs: "npm:^4.2.0" - jsonfile: "npm:^6.0.1" - universalify: "npm:^2.0.0" - checksum: 10/daeaefafbebe8fa6efd2fb96fc926f2c952be5877811f00a6794f0d64e0128e3d0d93368cd328f8f063b45deacf385c40e3d931aa46014245431cd2f4f89c67a - languageName: node - linkType: hard - -"fs-extra@npm:^8.1.0": - version: 8.1.0 - resolution: "fs-extra@npm:8.1.0" - dependencies: - graceful-fs: "npm:^4.2.0" - jsonfile: "npm:^4.0.0" - universalify: "npm:^0.1.0" - checksum: 10/6fb12449f5349be724a138b4a7b45fe6a317d2972054517f5971959c26fbd17c0e145731a11c7324460262baa33e0a799b183ceace98f7a372c95fbb6f20f5de - languageName: node - linkType: hard - -"fs-extra@npm:^9.0.0, fs-extra@npm:^9.0.1": - version: 9.1.0 - resolution: "fs-extra@npm:9.1.0" - dependencies: - at-least-node: "npm:^1.0.0" - graceful-fs: "npm:^4.2.0" - jsonfile: "npm:^6.0.1" - universalify: "npm:^2.0.0" - checksum: 10/08600da1b49552ed23dfac598c8fc909c66776dd130fea54fbcad22e330f7fcc13488bb995f6bc9ce5651aa35b65702faf616fe76370ee56f1aade55da982dca - languageName: node - linkType: hard - -"fs-minipass@npm:^2.0.0": - version: 2.1.0 - resolution: "fs-minipass@npm:2.1.0" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10/03191781e94bc9a54bd376d3146f90fe8e082627c502185dbf7b9b3032f66b0b142c1115f3b2cc5936575fc1b44845ce903dd4c21bec2a8d69f3bd56f9cee9ec - languageName: node - linkType: hard - -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10/af143246cf6884fe26fa281621d45cfe111d34b30535a475bfa38dafe343dadb466c047a924ffc7d6b7b18265df4110224ce3803806dbb07173bf2087b648d7f - languageName: node - linkType: hard - -"fs-mkdirp-stream@npm:^2.0.1": - version: 2.0.1 - resolution: "fs-mkdirp-stream@npm:2.0.1" - dependencies: - graceful-fs: "npm:^4.2.8" - streamx: "npm:^2.12.0" - checksum: 10/9fefd9fa3d6985aea0935944288bd20215779f683ec3af3c157cf4d4d4b0c546caae8219219f47a05a1df3b23f6a605fe64bee6ee14e550f1a670db67359ff27 - languageName: node - linkType: hard - -"fs-monkey@npm:^1.0.4": - version: 1.1.0 - resolution: "fs-monkey@npm:1.1.0" - checksum: 10/1c6da5d07f6c91e31fd9bcd68909666e18fa243c7af6697e9d2ded16d4ee87cc9c2b67889b19f98211006c228d1915e1beb0678b4080778fb52539ef3e4eab6c - languageName: node - linkType: hard - -"fs.realpath@npm:^1.0.0": - version: 1.0.0 - resolution: "fs.realpath@npm:1.0.0" - checksum: 10/e703107c28e362d8d7b910bbcbfd371e640a3bb45ae157a362b5952c0030c0b6d4981140ec319b347bce7adc025dd7813da1ff908a945ac214d64f5402a51b96 - languageName: node - linkType: hard - -"fsevents@npm:~2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10/4c1ade961ded57cdbfbb5cac5106ec17bc8bccd62e16343c569a0ceeca83b9dfef87550b4dc5cbb89642da412b20c5071f304c8c464b80415446e8e155a038c0 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 10/185e20d20f10c8d661d59aac0f3b63b31132d492e1b11fcc2a93cb2c47257ebaee7407c38513efd2b35cafdf972d9beb2ea4593c1e0f3bf8f2744836928d7454 - languageName: node - linkType: hard - -"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": - version: 1.1.8 - resolution: "function.prototype.name@npm:1.1.8" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - functions-have-names: "npm:^1.2.3" - hasown: "npm:^2.0.2" - is-callable: "npm:^1.2.7" - checksum: 10/25b9e5bea936732a6f0c0c08db58cc0d609ac1ed458c6a07ead46b32e7b9bf3fe5887796c3f83d35994efbc4fdde81c08ac64135b2c399b8f2113968d44082bc - languageName: node - linkType: hard - -"functions-have-names@npm:^1.2.3": - version: 1.2.3 - resolution: "functions-have-names@npm:1.2.3" - checksum: 10/0ddfd3ed1066a55984aaecebf5419fbd9344a5c38dd120ffb0739fac4496758dcf371297440528b115e4367fc46e3abc86a2cc0ff44612181b175ae967a11a05 - languageName: node - linkType: hard - -"gauge@npm:^v5.0.0": - version: 5.0.2 - resolution: "gauge@npm:5.0.2" - dependencies: - aproba: "npm:^1.0.3 || ^2.0.0" - color-support: "npm:^1.1.3" - console-control-strings: "npm:^1.1.0" - has-unicode: "npm:^2.0.1" - signal-exit: "npm:^4.0.1" - string-width: "npm:^4.2.3" - strip-ansi: "npm:^6.0.1" - wide-align: "npm:^1.1.5" - checksum: 10/7ed6930e03622e3651182d9312ea763e208e7e71bf126505a59a4424820af2715fdbc4f0655f92a092f3f1015c425094421c9d1a898dbe33cf6779d3e7e91e5c - languageName: node - linkType: hard - -"generator-function@npm:^2.0.0": - version: 2.0.1 - resolution: "generator-function@npm:2.0.1" - checksum: 10/eb7e7eb896c5433f3d40982b2ccacdb3dd990dd3499f14040e002b5d54572476513be8a2e6f9609f6e41ab29f2c4469307611ddbfc37ff4e46b765c326663805 - languageName: node - linkType: hard - -"get-amd-module-type@npm:^3.0.0": - version: 3.0.2 - resolution: "get-amd-module-type@npm:3.0.2" - dependencies: - ast-module-types: "npm:^3.0.0" - node-source-walk: "npm:^4.2.2" - checksum: 10/dd41d3d966677ee03b2f51ffe0e9cd1e37df4757ec490c31d67840042d6dc3173c019ec82d03ed12282338239589b3380dac6c59508b4f4ab802f28f1c9c8a8d - languageName: node - linkType: hard - -"get-amd-module-type@npm:^4.1.0": - version: 4.1.0 - resolution: "get-amd-module-type@npm:4.1.0" - dependencies: - ast-module-types: "npm:^4.0.0" - node-source-walk: "npm:^5.0.1" - checksum: 10/b12fe94eeee65df44010d7046f5435661d220b1f8132fbc11e525f2eab4ef2d9e6114c439e9905621f71449e5e43f588f21d29243a53bef36bcfcf5252481b6d - languageName: node - linkType: hard - -"get-caller-file@npm:^2.0.5": - version: 2.0.5 - resolution: "get-caller-file@npm:2.0.5" - checksum: 10/b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": - version: 1.3.1 - resolution: "get-intrinsic@npm:1.3.1" - dependencies: - async-function: "npm:^1.0.0" - async-generator-function: "npm:^1.0.0" - call-bind-apply-helpers: "npm:^1.0.2" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - function-bind: "npm:^1.1.2" - generator-function: "npm:^2.0.0" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - math-intrinsics: "npm:^1.1.0" - checksum: 10/bb579dda84caa4a3a41611bdd483dade7f00f246f2a7992eb143c5861155290df3fdb48a8406efa3dfb0b434e2c8fafa4eebd469e409d0439247f85fc3fa2cc1 - languageName: node - linkType: hard - -"get-own-enumerable-property-symbols@npm:^3.0.0": - version: 3.0.2 - resolution: "get-own-enumerable-property-symbols@npm:3.0.2" - checksum: 10/8f0331f14159f939830884799f937343c8c0a2c330506094bc12cbee3665d88337fe97a4ea35c002cc2bdba0f5d9975ad7ec3abb925015cdf2a93e76d4759ede - languageName: node - linkType: hard - -"get-port@npm:^7.1.0": - version: 7.1.0 - resolution: "get-port@npm:7.1.0" - checksum: 10/f4d23b43026124007663a899578cc87ff37bfcf645c5c72651e9810ebafc759857784e409fb8e0ada9b90e5c5db089b0ae2f5f6b49fba1ce2e0aff86094ab17d - languageName: node - linkType: hard - -"get-proto@npm:^1.0.0, get-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "get-proto@npm:1.0.1" - dependencies: - dunder-proto: "npm:^1.0.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10/4fc96afdb58ced9a67558698b91433e6b037aaa6f1493af77498d7c85b141382cf223c0e5946f334fb328ee85dfe6edd06d218eaf09556f4bc4ec6005d7f5f7b - languageName: node - linkType: hard - -"get-stream@npm:^4.1.0": - version: 4.1.0 - resolution: "get-stream@npm:4.1.0" - dependencies: - pump: "npm:^3.0.0" - checksum: 10/12673e8aebc79767d187b203e5bfabb8266304037815d3bcc63b6f8c67c6d4ad0d98d4d4528bcdc1cbea68f1dd91bcbd87827aa3cdcfa9c5fa4a4644716d72c2 - languageName: node - linkType: hard - -"get-stream@npm:^5.1.0": - version: 5.2.0 - resolution: "get-stream@npm:5.2.0" - dependencies: - pump: "npm:^3.0.0" - checksum: 10/13a73148dca795e41421013da6e3ebff8ccb7fba4d2f023fd0c6da2c166ec4e789bec9774a73a7b49c08daf2cae552f8a3e914042ac23b5f59dd278cc8f9cbfb - languageName: node - linkType: hard - -"get-stream@npm:^6.0.0": - version: 6.0.1 - resolution: "get-stream@npm:6.0.1" - checksum: 10/781266d29725f35c59f1d214aedc92b0ae855800a980800e2923b3fbc4e56b3cb6e462c42e09a1cf1a00c64e056a78fa407cbe06c7c92b7e5cd49b4b85c2a497 - languageName: node - linkType: hard - -"get-symbol-description@npm:^1.1.0": - version: 1.1.0 - resolution: "get-symbol-description@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - checksum: 10/a353e3a9595a74720b40fb5bae3ba4a4f826e186e83814d93375182384265676f59e49998b9cdfac4a2225ce95a3d32a68f502a2c5619303987f1c183ab80494 - languageName: node - linkType: hard - -"get-tsconfig@npm:^4.10.0, get-tsconfig@npm:^4.7.0": - version: 4.13.0 - resolution: "get-tsconfig@npm:4.13.0" - dependencies: - resolve-pkg-maps: "npm:^1.0.0" - checksum: 10/3603c6da30e312636e4c20461e779114c9126601d1eca70ee4e36e3e3c00e3c21892d2d920027333afa2cc9e20998a436b14abe03a53cde40742581cb0e9ceb2 - languageName: node - linkType: hard - -"gh-pages@npm:^6.1.1": - version: 6.3.0 - resolution: "gh-pages@npm:6.3.0" - dependencies: - async: "npm:^3.2.4" - commander: "npm:^13.0.0" - email-addresses: "npm:^5.0.0" - filenamify: "npm:^4.3.0" - find-cache-dir: "npm:^3.3.1" - fs-extra: "npm:^11.1.1" - globby: "npm:^11.1.0" - bin: - gh-pages: bin/gh-pages.js - gh-pages-clean: bin/gh-pages-clean.js - checksum: 10/43b0cb353306419e270a7a7e62fa39dc202b63bf01690fb722728e196d6ab73efbead9f639f14d893a6c9d32bc8c5ae806bf0a30c6731a4071f200732403ff08 - languageName: node - linkType: hard - -"gh-release-assets@npm:^2.0.0": - version: 2.0.1 - resolution: "gh-release-assets@npm:2.0.1" - dependencies: - async: "npm:^3.2.0" - mime: "npm:^3.0.0" - progress-stream: "npm:^2.0.0" - pumpify: "npm:^2.0.1" - simple-get: "npm:^4.0.0" - util-extend: "npm:^1.0.1" - checksum: 10/542dbf68591a2ed7b5d3f1fcc6d3a8fedc76ec199008e04fab389463be6d24f6136e291b65d4d122885ce7318e97f8574269c10f4bb491a5b22d7a977cfd5b65 - languageName: node - linkType: hard - -"gh-release@npm:^7.0.2": - version: 7.0.2 - resolution: "gh-release@npm:7.0.2" - dependencies: - "@octokit/rest": "npm:^19.0.5" - changelog-parser: "npm:^3.0.0" - deep-extend: "npm:^0.6.0" - gauge: "npm:^v5.0.0" - gh-release-assets: "npm:^2.0.0" - ghauth: "npm:^5.0.0" - github-url-to-object: "npm:^4.0.4" - inquirer: "npm:^8.0.0" - shelljs: "npm:^0.8.4" - update-notifier: "npm:^5.0.0" - yargs: "npm:^17.0.0" - bin: - gh-release: bin/cli.js - checksum: 10/16978850378f3334516915757a4030a2b7fb98cd037906610366db7a4cc24ca6e09ae6575911491f13b0782af9c0c40b0e91361d3d8b6e25d27a7727ab7cdf69 - languageName: node - linkType: hard - -"ghauth@npm:^5.0.0": - version: 5.0.2 - resolution: "ghauth@npm:5.0.2" - dependencies: - application-config: "npm:^2.0.0" - node-fetch: "npm:^2.6.0" - ora: "npm:^4.0.5" - read: "npm:^1.0.7" - checksum: 10/03006808f69c0d1a17920e97ec9979c80d3ceac1e8dce63353de6f11cf0ce74726f7bb20d9898c5009d0918000ee0758a2e4b823a7fc7f1c87f6a0dfb7e44442 - languageName: node - linkType: hard - -"github-from-package@npm:0.0.0": - version: 0.0.0 - resolution: "github-from-package@npm:0.0.0" - checksum: 10/2a091ba07fbce22205642543b4ea8aaf068397e1433c00ae0f9de36a3607baf5bcc14da97fbb798cfca6393b3c402031fca06d8b491a44206d6efef391c58537 - languageName: node - linkType: hard - -"github-url-to-object@npm:^4.0.4": - version: 4.0.6 - resolution: "github-url-to-object@npm:4.0.6" - dependencies: - is-url: "npm:^1.1.0" - checksum: 10/479a973eee6546e255025d5fe97a919720069cbc16e890365f787415abc9c547e2132cb1f592872cc39dedff50d4266c97807c482102082423b5f33e4817b498 - languageName: node - linkType: hard - -"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": - version: 5.1.2 - resolution: "glob-parent@npm:5.1.2" - dependencies: - is-glob: "npm:^4.0.1" - checksum: 10/32cd106ce8c0d83731966d31517adb766d02c3812de49c30cfe0675c7c0ae6630c11214c54a5ae67aca882cf738d27fd7768f21aa19118b9245950554be07247 - languageName: node - linkType: hard - -"glob-parent@npm:^6.0.1, glob-parent@npm:^6.0.2": - version: 6.0.2 - resolution: "glob-parent@npm:6.0.2" - dependencies: - is-glob: "npm:^4.0.3" - checksum: 10/c13ee97978bef4f55106b71e66428eb1512e71a7466ba49025fc2aec59a5bfb0954d5abd58fc5ee6c9b076eef4e1f6d3375c2e964b88466ca390da4419a786a8 - languageName: node - linkType: hard - -"glob-stream@npm:^8.0.3": - version: 8.0.3 - resolution: "glob-stream@npm:8.0.3" - dependencies: - "@gulpjs/to-absolute-glob": "npm:^4.0.0" - anymatch: "npm:^3.1.3" - fastq: "npm:^1.13.0" - glob-parent: "npm:^6.0.2" - is-glob: "npm:^4.0.3" - is-negated-glob: "npm:^1.0.0" - normalize-path: "npm:^3.0.0" - streamx: "npm:^2.12.5" - checksum: 10/3173bc6e1672db28925991c0b30919802a005bae61b08500a3b0826b0a11159ca4365335218525e8bbffc86cc6be2e5b54d92c9c3057629fc2692bdc039c25a2 - languageName: node - linkType: hard - -"glob-to-regexp@npm:^0.4.1": - version: 0.4.1 - resolution: "glob-to-regexp@npm:0.4.1" - checksum: 10/9009529195a955c40d7b9690794aeff5ba665cc38f1519e111c58bb54366fd0c106bde80acf97ba4e533208eb53422c83b136611a54c5fefb1edd8dc267cb62e - languageName: node - linkType: hard - -"glob@npm:^10.0.0, glob@npm:^10.3.10": - version: 10.5.0 - resolution: "glob@npm:10.5.0" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^3.1.2" - minimatch: "npm:^9.0.4" - minipass: "npm:^7.1.2" - package-json-from-dist: "npm:^1.0.0" - path-scurry: "npm:^1.11.1" - bin: - glob: dist/esm/bin.mjs - checksum: 10/ab3bccfefcc0afaedbd1f480cd0c4a2c0e322eb3f0aa7ceaa31b3f00b825069f17cf0f1fc8b6f256795074b903f37c0ade37ddda6a176aa57f1c2bbfe7240653 - languageName: node - linkType: hard - -"glob@npm:^13.0.0": - version: 13.0.0 - resolution: "glob@npm:13.0.0" - dependencies: - minimatch: "npm:^10.1.1" - minipass: "npm:^7.1.2" - path-scurry: "npm:^2.0.0" - checksum: 10/de390721d29ee1c9ea41e40ec2aa0de2cabafa68022e237dc4297665a5e4d650776f2573191984ea1640aba1bf0ea34eddef2d8cbfbfc2ad24b5fb0af41d8846 - languageName: node - linkType: hard - -"glob@npm:^5.0.15": - version: 5.0.15 - resolution: "glob@npm:5.0.15" - dependencies: - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:2 || 3" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10/4a1f2401329d94b5c25c6ac16276aceccc52b865bd9b2b9198da21fc937d021bfd87463ae44de9a9e4794894a49bc619ebaf7e5b12182bcf97e2ceb68ae116d7 - languageName: node - linkType: hard - -"glob@npm:^7.0.0, glob@npm:^7.1.3, glob@npm:^7.1.6": - version: 7.2.3 - resolution: "glob@npm:7.2.3" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.1.1" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10/59452a9202c81d4508a43b8af7082ca5c76452b9fcc4a9ab17655822e6ce9b21d4f8fbadabe4fe3faef448294cec249af305e2cd824b7e9aaf689240e5e96a7b - languageName: node - linkType: hard - -"glob@npm:^8.0.3": - version: 8.1.0 - resolution: "glob@npm:8.1.0" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^5.0.1" - once: "npm:^1.3.0" - checksum: 10/9aab1c75eb087c35dbc41d1f742e51d0507aa2b14c910d96fb8287107a10a22f4bbdce26fc0a3da4c69a20f7b26d62f1640b346a4f6e6becfff47f335bb1dc5e - languageName: node - linkType: hard - -"global-agent@npm:^3.0.0": - version: 3.0.0 - resolution: "global-agent@npm:3.0.0" - dependencies: - boolean: "npm:^3.0.1" - es6-error: "npm:^4.1.1" - matcher: "npm:^3.0.0" - roarr: "npm:^2.15.3" - semver: "npm:^7.3.2" - serialize-error: "npm:^7.0.1" - checksum: 10/a26d96d1d79af57a8ef957f66cef6f3889a8fa55131f0bbd72b8e1bc340a9b7ed7b627b96eaf5eb14aee08a8b4ad44395090e2cf77146e993f1d2df7abaa0a0d - languageName: node - linkType: hard - -"global-dirs@npm:^3.0.0": - version: 3.0.1 - resolution: "global-dirs@npm:3.0.1" - dependencies: - ini: "npm:2.0.0" - checksum: 10/70147b80261601fd40ac02a104581432325c1c47329706acd773f3a6ce99bb36d1d996038c85ccacd482ad22258ec233c586b6a91535b1a116b89663d49d6438 - languageName: node - linkType: hard - -"globals@npm:^13.19.0, globals@npm:^13.24.0": - version: 13.24.0 - resolution: "globals@npm:13.24.0" - dependencies: - type-fest: "npm:^0.20.2" - checksum: 10/62c5b1997d06674fc7191d3e01e324d3eda4d65ac9cc4e78329fa3b5c4fd42a0e1c8722822497a6964eee075255ce21ccf1eec2d83f92ef3f06653af4d0ee28e - languageName: node - linkType: hard - -"globalthis@npm:^1.0.1, globalthis@npm:^1.0.4": - version: 1.0.4 - resolution: "globalthis@npm:1.0.4" - dependencies: - define-properties: "npm:^1.2.1" - gopd: "npm:^1.0.1" - checksum: 10/1f1fd078fb2f7296306ef9dd51019491044ccf17a59ed49d375b576ca108ff37e47f3d29aead7add40763574a992f16a5367dd1e2173b8634ef18556ab719ac4 - languageName: node - linkType: hard - -"globby@npm:^11.0.3, globby@npm:^11.1.0": - version: 11.1.0 - resolution: "globby@npm:11.1.0" - dependencies: - array-union: "npm:^2.1.0" - dir-glob: "npm:^3.0.1" - fast-glob: "npm:^3.2.9" - ignore: "npm:^5.2.0" - merge2: "npm:^1.4.1" - slash: "npm:^3.0.0" - checksum: 10/288e95e310227bbe037076ea81b7c2598ccbc3122d87abc6dab39e1eec309aa14f0e366a98cdc45237ffcfcbad3db597778c0068217dcb1950fef6249104e1b1 - languageName: node - linkType: hard - -"globby@npm:^13.1.1": - version: 13.2.2 - resolution: "globby@npm:13.2.2" - dependencies: - dir-glob: "npm:^3.0.1" - fast-glob: "npm:^3.3.0" - ignore: "npm:^5.2.4" - merge2: "npm:^1.4.1" - slash: "npm:^4.0.0" - checksum: 10/4494a9d2162a7e4d327988b26be66d8eab87d7f59a83219e74b065e2c3ced23698f68fb10482bf9337133819281803fb886d6ae06afbb2affa743623eb0b1949 - languageName: node - linkType: hard - -"gonzales-pe@npm:^4.2.3, gonzales-pe@npm:^4.3.0": - version: 4.3.0 - resolution: "gonzales-pe@npm:4.3.0" - dependencies: - minimist: "npm:^1.2.5" - bin: - gonzales: bin/gonzales.js - checksum: 10/d1676546bcaa4cb1c6c1fc5de5d62e85960665a13a4c489b02baeb58a10c53a249beef05ceaf21ea801813a559ff17d7b61158aa417211c135bcb8bdcb1701ca - languageName: node - linkType: hard - -"gopd@npm:^1.0.1, gopd@npm:^1.2.0": - version: 1.2.0 - resolution: "gopd@npm:1.2.0" - checksum: 10/94e296d69f92dc1c0768fcfeecfb3855582ab59a7c75e969d5f96ce50c3d201fd86d5a2857c22565764d5bb8a816c7b1e58f133ec318cd56274da36c5e3fb1a1 - languageName: node - linkType: hard - -"got@npm:^11.5.1, got@npm:^11.8.5": - version: 11.8.6 - resolution: "got@npm:11.8.6" - dependencies: - "@sindresorhus/is": "npm:^4.0.0" - "@szmarczak/http-timer": "npm:^4.0.5" - "@types/cacheable-request": "npm:^6.0.1" - "@types/responselike": "npm:^1.0.0" - cacheable-lookup: "npm:^5.0.3" - cacheable-request: "npm:^7.0.2" - decompress-response: "npm:^6.0.0" - http2-wrapper: "npm:^1.0.0-beta.5.2" - lowercase-keys: "npm:^2.0.0" - p-cancelable: "npm:^2.0.0" - responselike: "npm:^2.0.0" - checksum: 10/a30c74029d81bd5fe50dea1a0c970595d792c568e188ff8be254b5bc11e6158d1b014570772d4a30d0a97723e7dd34e7c8cc1a2f23018f60aece3070a7a5c2a5 - languageName: node - linkType: hard - -"got@npm:^9.6.0": - version: 9.6.0 - resolution: "got@npm:9.6.0" - dependencies: - "@sindresorhus/is": "npm:^0.14.0" - "@szmarczak/http-timer": "npm:^1.1.2" - cacheable-request: "npm:^6.0.0" - decompress-response: "npm:^3.3.0" - duplexer3: "npm:^0.1.4" - get-stream: "npm:^4.1.0" - lowercase-keys: "npm:^1.0.1" - mimic-response: "npm:^1.0.1" - p-cancelable: "npm:^1.0.0" - to-readable-stream: "npm:^1.0.0" - url-parse-lax: "npm:^3.0.0" - checksum: 10/fae3273b44392b6b1d88071d04ea984784e63dbf8ba3f70b04cb7edda53c7668ee17288ac46af507a9f2aa60c183c5ea1732339141d253dda3eb19f92985c771 - languageName: node - linkType: hard - -"graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.10, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.8": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: 10/bf152d0ed1dc159239db1ba1f74fdbc40cb02f626770dcd5815c427ce0688c2635a06ed69af364396da4636d0408fcf7d4afdf7881724c3307e46aff30ca49e2 - languageName: node - linkType: hard - -"graphemer@npm:^1.4.0": - version: 1.4.0 - resolution: "graphemer@npm:1.4.0" - checksum: 10/6dd60dba97007b21e3a829fab3f771803cc1292977fe610e240ea72afd67e5690ac9eeaafc4a99710e78962e5936ab5a460787c2a1180f1cb0ccfac37d29f897 - languageName: node - linkType: hard - -"gud@npm:^1.0.0": - version: 1.0.0 - resolution: "gud@npm:1.0.0" - checksum: 10/3e2eb37cf794364077c18f036d6aa259c821c7fd188f2b7935cb00d589d82a41e0ebb1be809e1a93679417f62f1ad0513e745c3cf5329596e489aef8c5e5feae - languageName: node - linkType: hard - -"gulp-sort@npm:^2.0.0": - version: 2.0.0 - resolution: "gulp-sort@npm:2.0.0" - dependencies: - through2: "npm:^2.0.1" - checksum: 10/8645d80b26990290e8623ccf38420e319a4ea67b64ac3e4f2b5de6c20b9006973001fd989dfe0fe3b2560044d3dfbc005685126826536e01718a2628aa45d0c5 - languageName: node - linkType: hard - -"gzip-size@npm:^6.0.0": - version: 6.0.0 - resolution: "gzip-size@npm:6.0.0" - dependencies: - duplexer: "npm:^0.1.2" - checksum: 10/2df97f359696ad154fc171dcb55bc883fe6e833bca7a65e457b9358f3cb6312405ed70a8da24a77c1baac0639906cd52358dc0ce2ec1a937eaa631b934c94194 - languageName: node - linkType: hard - -"handle-thing@npm:^2.0.0": - version: 2.0.1 - resolution: "handle-thing@npm:2.0.1" - checksum: 10/441ec98b07f26819c70c702f6c874088eebeb551b242fe8fae4eab325746b82bf84ae7a1f6419547698accb3941fa26806c5f5f93c50e19f90e499065a711d61 - languageName: node - linkType: hard - -"handlebars@npm:^4.7.8": - version: 4.7.8 - resolution: "handlebars@npm:4.7.8" - dependencies: - minimist: "npm:^1.2.5" - neo-async: "npm:^2.6.2" - source-map: "npm:^0.6.1" - uglify-js: "npm:^3.1.4" - wordwrap: "npm:^1.0.0" - dependenciesMeta: - uglify-js: - optional: true - bin: - handlebars: bin/handlebars - checksum: 10/bd528f4dd150adf67f3f857118ef0fa43ff79a153b1d943fa0a770f2599e38b25a7a0dbac1a3611a4ec86970fd2325a81310fb788b5c892308c9f8743bd02e11 - languageName: node - linkType: hard - -"hard-rejection@npm:^2.1.0": - version: 2.1.0 - resolution: "hard-rejection@npm:2.1.0" - checksum: 10/7baaf80a0c7fff4ca79687b4060113f1529589852152fa935e6787a2bc96211e784ad4588fb3048136ff8ffc9dfcf3ae385314a5b24db32de20bea0d1597f9dc - languageName: node - linkType: hard - -"has-bigints@npm:^1.0.2": - version: 1.1.0 - resolution: "has-bigints@npm:1.1.0" - checksum: 10/90fb1b24d40d2472bcd1c8bd9dd479037ec240215869bdbff97b2be83acef57d28f7e96bdd003a21bed218d058b49097f4acc8821c05b1629cc5d48dd7bfcccd - languageName: node - linkType: hard - -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10/4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b - languageName: node - linkType: hard - -"has-flag@npm:^4.0.0": - version: 4.0.0 - resolution: "has-flag@npm:4.0.0" - checksum: 10/261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad - languageName: node - linkType: hard - -"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2": - version: 1.0.2 - resolution: "has-property-descriptors@npm:1.0.2" - dependencies: - es-define-property: "npm:^1.0.0" - checksum: 10/2d8c9ab8cebb572e3362f7d06139a4592105983d4317e68f7adba320fe6ddfc8874581e0971e899e633fd5f72e262830edce36d5a0bc863dad17ad20572484b2 - languageName: node - linkType: hard - -"has-proto@npm:^1.2.0": - version: 1.2.0 - resolution: "has-proto@npm:1.2.0" - dependencies: - dunder-proto: "npm:^1.0.0" - checksum: 10/7eaed07728eaa28b77fadccabce53f30de467ff186a766872669a833ac2e87d8922b76a22cc58339d7e0277aefe98d6d00762113b27a97cdf65adcf958970935 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": - version: 1.1.0 - resolution: "has-symbols@npm:1.1.0" - checksum: 10/959385c98696ebbca51e7534e0dc723ada325efa3475350951363cce216d27373e0259b63edb599f72eb94d6cde8577b4b2375f080b303947e560f85692834fa - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.2": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" - dependencies: - has-symbols: "npm:^1.0.3" - checksum: 10/c74c5f5ceee3c8a5b8bc37719840dc3749f5b0306d818974141dda2471a1a2ca6c8e46b9d6ac222c5345df7a901c9b6f350b1e6d62763fec877e26609a401bfe - languageName: node - linkType: hard - -"has-unicode@npm:^2.0.1": - version: 2.0.1 - resolution: "has-unicode@npm:2.0.1" - checksum: 10/041b4293ad6bf391e21c5d85ed03f412506d6623786b801c4ab39e4e6ca54993f13201bceb544d92963f9e0024e6e7fbf0cb1d84c9d6b31cb9c79c8c990d13d8 - languageName: node - linkType: hard - -"has-yarn@npm:^2.1.0": - version: 2.1.0 - resolution: "has-yarn@npm:2.1.0" - checksum: 10/5eb1d0bb8518103d7da24532bdbc7124ffc6d367b5d3c10840b508116f2f1bcbcf10fd3ba843ff6e2e991bdf9969fd862d42b2ed58aade88343326c950b7e7f7 - languageName: node - linkType: hard - -"hash-base@npm:^3.0.0, hash-base@npm:^3.1.2": - version: 3.1.2 - resolution: "hash-base@npm:3.1.2" - dependencies: - inherits: "npm:^2.0.4" - readable-stream: "npm:^2.3.8" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.1" - checksum: 10/f2100420521ec77736ebd9279f2c0b3ab2820136a2fa408ea36f3201d3f6984cda166806e6a0287f92adf179430bedfbdd74348ac351e24a3eff9f01a8c406b0 - languageName: node - linkType: hard - -"hash-base@npm:~3.0.4": - version: 3.0.5 - resolution: "hash-base@npm:3.0.5" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - checksum: 10/6a82675a5de2ea9347501bbe655a2334950c7ec972fd9810ae9529e06aeab8f7e8ef68fc2112e5e6f0745561a7e05326efca42ad59bb5fd116537f5f8b0a216d - languageName: node - linkType: hard - -"hash.js@npm:^1.0.0, hash.js@npm:^1.0.3, hash.js@npm:^1.1.7": - version: 1.1.7 - resolution: "hash.js@npm:1.1.7" - dependencies: - inherits: "npm:^2.0.3" - minimalistic-assert: "npm:^1.0.1" - checksum: 10/0c89ee4006606a40f92df5cc3c263342e7fea68110f3e9ef032bd2083650430505db01b6b7926953489517d4027535e4fdc7f970412893d3031c361d3ec8f4b3 - languageName: node - linkType: hard - -"hashlru@npm:^2.3.0": - version: 2.3.0 - resolution: "hashlru@npm:2.3.0" - checksum: 10/38b3559e6fb9d19fa731edc52d8d7e72cd378f708dcb01cecd4a6ba0c52f06d7d06d6277249f5c43d9915d8dda9be31adad768a379eef188db213c3f2b09278d - languageName: node - linkType: hard - -"hasown@npm:^2.0.2": - version: 2.0.2 - resolution: "hasown@npm:2.0.2" - dependencies: - function-bind: "npm:^1.1.2" - checksum: 10/7898a9c1788b2862cf0f9c345a6bec77ba4a0c0983c7f19d610c382343d4f98fa260686b225dfb1f88393a66679d2ec58ee310c1d6868c081eda7918f32cc70a - languageName: node - linkType: hard - -"hast-util-from-parse5@npm:^8.0.0": - version: 8.0.3 - resolution: "hast-util-from-parse5@npm:8.0.3" - dependencies: - "@types/hast": "npm:^3.0.0" - "@types/unist": "npm:^3.0.0" - devlop: "npm:^1.0.0" - hastscript: "npm:^9.0.0" - property-information: "npm:^7.0.0" - vfile: "npm:^6.0.0" - vfile-location: "npm:^5.0.0" - web-namespaces: "npm:^2.0.0" - checksum: 10/539c945c550cfef394a89dcff6e4de26768a748a7288ddce6f59554dd271b663b8398d58ace434264e965aaf3828fdbff86f9109d7fa639b3fe34dedcad4a5df - languageName: node - linkType: hard - -"hast-util-parse-selector@npm:^4.0.0": - version: 4.0.0 - resolution: "hast-util-parse-selector@npm:4.0.0" - dependencies: - "@types/hast": "npm:^3.0.0" - checksum: 10/76087670d3b0b50b23a6cb70bca53a6176d6608307ccdbb3ed18b650b82e7c3513bfc40348f1389dc0c5ae872b9a768851f4335f44654abd7deafd6974c52402 - languageName: node - linkType: hard - -"hast-util-raw@npm:^9.0.0": - version: 9.1.0 - resolution: "hast-util-raw@npm:9.1.0" - dependencies: - "@types/hast": "npm:^3.0.0" - "@types/unist": "npm:^3.0.0" - "@ungap/structured-clone": "npm:^1.0.0" - hast-util-from-parse5: "npm:^8.0.0" - hast-util-to-parse5: "npm:^8.0.0" - html-void-elements: "npm:^3.0.0" - mdast-util-to-hast: "npm:^13.0.0" - parse5: "npm:^7.0.0" - unist-util-position: "npm:^5.0.0" - unist-util-visit: "npm:^5.0.0" - vfile: "npm:^6.0.0" - web-namespaces: "npm:^2.0.0" - zwitch: "npm:^2.0.0" - checksum: 10/fa304d08a9fce0f54b2baa18d15c45cb5cac695cbee3567b8ccbd9a57fa295c0fb23d238daca1cf0135ad8d538bb341dcd7d9da03f8b7d12e6980a9f8c4340ae - languageName: node - linkType: hard - -"hast-util-to-jsx-runtime@npm:^2.0.0": - version: 2.3.6 - resolution: "hast-util-to-jsx-runtime@npm:2.3.6" - dependencies: - "@types/estree": "npm:^1.0.0" - "@types/hast": "npm:^3.0.0" - "@types/unist": "npm:^3.0.0" - comma-separated-tokens: "npm:^2.0.0" - devlop: "npm:^1.0.0" - estree-util-is-identifier-name: "npm:^3.0.0" - hast-util-whitespace: "npm:^3.0.0" - mdast-util-mdx-expression: "npm:^2.0.0" - mdast-util-mdx-jsx: "npm:^3.0.0" - mdast-util-mdxjs-esm: "npm:^2.0.0" - property-information: "npm:^7.0.0" - space-separated-tokens: "npm:^2.0.0" - style-to-js: "npm:^1.0.0" - unist-util-position: "npm:^5.0.0" - vfile-message: "npm:^4.0.0" - checksum: 10/111bd69f482952c7591cb4e1d3face25f1c18849b310a4d6cacc91e2d2cbc965d455fad35c059b8f0cfd762e933b826a7090b6f3098dece08307a6569de8f1d8 - languageName: node - linkType: hard - -"hast-util-to-parse5@npm:^8.0.0": - version: 8.0.1 - resolution: "hast-util-to-parse5@npm:8.0.1" - dependencies: - "@types/hast": "npm:^3.0.0" - comma-separated-tokens: "npm:^2.0.0" - devlop: "npm:^1.0.0" - property-information: "npm:^7.0.0" - space-separated-tokens: "npm:^2.0.0" - web-namespaces: "npm:^2.0.0" - zwitch: "npm:^2.0.0" - checksum: 10/4776c2fc2d6231364e4d59e7b0045f2ba340fdbf912825147fa2c3dfdf90cc7f458c86da90a9c2c7028375197f1ba2e831ea4c4ea549a0a9911a670e73edd6a7 - languageName: node - linkType: hard - -"hast-util-whitespace@npm:^3.0.0": - version: 3.0.0 - resolution: "hast-util-whitespace@npm:3.0.0" - dependencies: - "@types/hast": "npm:^3.0.0" - checksum: 10/8c7e9eeb8131fc18702f3a42623eb6b0b09d470347aa8badacac70e6d91f79657ab8c6b57c4c6fee3658cff405fac30e816d1cdfb3ed1fbf6045d0a4555cf4d4 - languageName: node - linkType: hard - -"hastscript@npm:^9.0.0": - version: 9.0.1 - resolution: "hastscript@npm:9.0.1" - dependencies: - "@types/hast": "npm:^3.0.0" - comma-separated-tokens: "npm:^2.0.0" - hast-util-parse-selector: "npm:^4.0.0" - property-information: "npm:^7.0.0" - space-separated-tokens: "npm:^2.0.0" - checksum: 10/9aa8135faf0307807cca4075bef4e3403ae1ce959ad4b9e6720892ba957d58ff98b2f60b5eb3ac67d88ae897dc918997299cd4249d7ac602a0066dd46442c5d4 - languageName: node - linkType: hard - -"he@npm:^1.2.0": - version: 1.2.0 - resolution: "he@npm:1.2.0" - bin: - he: bin/he - checksum: 10/d09b2243da4e23f53336e8de3093e5c43d2c39f8d0d18817abfa32ce3e9355391b2edb4bb5edc376aea5d4b0b59d6a0482aab4c52bc02ef95751e4b818e847f1 - languageName: node - linkType: hard - -"help-me@npm:^5.0.0": - version: 5.0.0 - resolution: "help-me@npm:5.0.0" - checksum: 10/5f99bd91dae93d02867175c3856c561d7e3a24f16999b08f5fc79689044b938d7ed58457f4d8c8744c01403e6e0470b7896baa344d112b2355842fd935a75d69 - languageName: node - linkType: hard - -"highlight.js@npm:^9.3.0": - version: 9.18.5 - resolution: "highlight.js@npm:9.18.5" - checksum: 10/56ddbd562ece7da84847770d96e8e52bd0e6151f69efb95e249d8e1fde2b5ed78cdaa2c0d33e4c838caa434cb0fe1aeeca4edca9c2c3343daf23dcf2ffbd3dc9 - languageName: node - linkType: hard - -"hmac-drbg@npm:^1.0.1": - version: 1.0.1 - resolution: "hmac-drbg@npm:1.0.1" - dependencies: - hash.js: "npm:^1.0.3" - minimalistic-assert: "npm:^1.0.0" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10/0298a1445b8029a69b713d918ecaa84a1d9f614f5857e0c6e1ca517abfa1357216987b2ee08cc6cc73ba82a6c6ddf2ff11b9717a653530ef03be599d4699b836 - languageName: node - linkType: hard - -"hoist-non-react-statics@npm:^3.3.0, hoist-non-react-statics@npm:^3.3.2": - version: 3.3.2 - resolution: "hoist-non-react-statics@npm:3.3.2" - dependencies: - react-is: "npm:^16.7.0" - checksum: 10/1acbe85f33e5a39f90c822ad4d28b24daeb60f71c545279431dc98c312cd28a54f8d64788e477fe21dc502b0e3cf58589ebe5c1ad22af27245370391c2d24ea6 - languageName: node - linkType: hard - -"hosted-git-info@npm:^2.1.4": - version: 2.8.9 - resolution: "hosted-git-info@npm:2.8.9" - checksum: 10/96da7d412303704af41c3819207a09ea2cab2de97951db4cf336bb8bce8d8e36b9a6821036ad2e55e67d3be0af8f967a7b57981203fbfb88bc05cd803407b8c3 - languageName: node - linkType: hard - -"hosted-git-info@npm:^4.1.0": - version: 4.1.0 - resolution: "hosted-git-info@npm:4.1.0" - dependencies: - lru-cache: "npm:^6.0.0" - checksum: 10/4dc67022b7ecb12829966bd731fb9a5f14d351547aafc6520ef3c8e7211f4f0e69452d24e29eae3d9b17df924d660052e53d8ca321cf3008418fb7e6c7c47d6f - languageName: node - linkType: hard - -"hpack.js@npm:^2.1.6": - version: 2.1.6 - resolution: "hpack.js@npm:2.1.6" - dependencies: - inherits: "npm:^2.0.1" - obuf: "npm:^1.0.0" - readable-stream: "npm:^2.0.1" - wbuf: "npm:^1.1.0" - checksum: 10/6910e4b9d943a78fd8e84ac42729fdab9bd406789d6204ad160af9dc5aa4750fc01f208249bf7116c11dc0678207a387b4ade24e4b628b95385b251ceeeb719c - languageName: node - linkType: hard - -"html-encoding-sniffer@npm:^4.0.0": - version: 4.0.0 - resolution: "html-encoding-sniffer@npm:4.0.0" - dependencies: - whatwg-encoding: "npm:^3.1.1" - checksum: 10/e86efd493293a5671b8239bd099d42128433bb3c7b0fdc7819282ef8e118a21f5dead0ad6f358e024a4e5c84f17ebb7a9b36075220fac0a6222b207248bede6f - languageName: node - linkType: hard - -"html-entities@npm:^2.3.2": - version: 2.6.0 - resolution: "html-entities@npm:2.6.0" - checksum: 10/06d4e7a3ba6243bba558af176e56f85e09894b26d911bc1ef7b2b9b3f18b46604360805b32636f080e954778e9a34313d1982479a05a5aa49791afd6a4229346 - languageName: node - linkType: hard - -"html-minifier-terser@npm:^6.0.2": - version: 6.1.0 - resolution: "html-minifier-terser@npm:6.1.0" - dependencies: - camel-case: "npm:^4.1.2" - clean-css: "npm:^5.2.2" - commander: "npm:^8.3.0" - he: "npm:^1.2.0" - param-case: "npm:^3.0.4" - relateurl: "npm:^0.2.7" - terser: "npm:^5.10.0" - bin: - html-minifier-terser: cli.js - checksum: 10/a244fa944e002b57c66cc829a3f2dfdb9514b1833c2d838ada624964bf8c0afaf61d36c371758c7e44dedae95cea740a84d8d1067b916ed204f35175184d0e27 - languageName: node - linkType: hard - -"html-parse-stringify@npm:^3.0.1": - version: 3.0.1 - resolution: "html-parse-stringify@npm:3.0.1" - dependencies: - void-elements: "npm:3.1.0" - checksum: 10/8743b76cc50e46d1956c1ad879d18eb9613b0d2d81e24686d633f9f69bb26b84676f64a926973de793cca479997017a63219278476d617b6c42d68246d7c07fe - languageName: node - linkType: hard - -"html-url-attributes@npm:^3.0.0": - version: 3.0.1 - resolution: "html-url-attributes@npm:3.0.1" - checksum: 10/494074c2f730c5c0e517aa1b10111fb36732534a2d2b70427582c4a615472b47da472cf3a17562cc653826d378d20960f2783e0400f4f7cf0c3c2d91c6188d13 - languageName: node - linkType: hard - -"html-void-elements@npm:^3.0.0": - version: 3.0.0 - resolution: "html-void-elements@npm:3.0.0" - checksum: 10/59be397525465a7489028afa064c55763d9cccd1d7d9f630cca47137317f0e897a9ca26cef7e745e7cff1abc44260cfa407742b243a54261dfacd42230e94fce - languageName: node - linkType: hard - -"html-webpack-plugin@npm:^5.5.4": - version: 5.6.5 - resolution: "html-webpack-plugin@npm:5.6.5" - dependencies: - "@types/html-minifier-terser": "npm:^6.0.0" - html-minifier-terser: "npm:^6.0.2" - lodash: "npm:^4.17.21" - pretty-error: "npm:^4.0.0" - tapable: "npm:^2.0.0" - peerDependencies: - "@rspack/core": 0.x || 1.x - webpack: ^5.20.0 - peerDependenciesMeta: - "@rspack/core": - optional: true - webpack: - optional: true - checksum: 10/89e84f6ede068242348b2c2f09da67bf39a6b22d14399eaf16e399be05a4e2bb1f3f1c71ec03b7193aed96ebe2cf61d45a70565408b271661f7ea8635b237701 - languageName: node - linkType: hard - -"htmlparser2@npm:^6.1.0": - version: 6.1.0 - resolution: "htmlparser2@npm:6.1.0" - dependencies: - domelementtype: "npm:^2.0.1" - domhandler: "npm:^4.0.0" - domutils: "npm:^2.5.2" - entities: "npm:^2.0.0" - checksum: 10/c9c34b0b722f5923c4ae05e59268aeb768582152969e3338a1cd3342b87f8dd2c0420f4745e46d2fd87f1b677ea2f314c3a93436ed8831905997e6347e081a5d - languageName: node - linkType: hard - -"http-cache-semantics@npm:^4.0.0, http-cache-semantics@npm:^4.1.1": - version: 4.2.0 - resolution: "http-cache-semantics@npm:4.2.0" - checksum: 10/4efd2dfcfeea9d5e88c84af450b9980be8a43c2c8179508b1c57c7b4421c855f3e8efe92fa53e0b3f4a43c85824ada930eabbc306d1b3beab750b6dcc5187693 - languageName: node - linkType: hard - -"http-deceiver@npm:^1.2.7": - version: 1.2.7 - resolution: "http-deceiver@npm:1.2.7" - checksum: 10/9ae293b0acbfad6ed45d52c1f85f58ab062465872fd9079c80d78c6527634002d73c2a9d8c0296cc12d178a0b689bb5291d9979aad3ce71ab17a7517588adbf7 - languageName: node - linkType: hard - -"http-errors@npm:~1.6.2": - version: 1.6.3 - resolution: "http-errors@npm:1.6.3" - dependencies: - depd: "npm:~1.1.2" - inherits: "npm:2.0.3" - setprototypeof: "npm:1.1.0" - statuses: "npm:>= 1.4.0 < 2" - checksum: 10/e48732657ea0b4a09853d2696a584fa59fa2a8c1ba692af7af3137b5491a997d7f9723f824e7e08eb6a87098532c09ce066966ddf0f9f3dd30905e52301acadb - languageName: node - linkType: hard - -"http-errors@npm:~2.0.0, http-errors@npm:~2.0.1": - version: 2.0.1 - resolution: "http-errors@npm:2.0.1" - dependencies: - depd: "npm:~2.0.0" - inherits: "npm:~2.0.4" - setprototypeof: "npm:~1.2.0" - statuses: "npm:~2.0.2" - toidentifier: "npm:~1.0.1" - checksum: 10/9fe31bc0edf36566c87048aed1d3d0cbe03552564adc3541626a0613f542d753fbcb13bdfcec0a3a530dbe1714bb566c89d46244616b66bddd26ac413b06a207 - languageName: node - linkType: hard - -"http-parser-js@npm:>=0.5.1": - version: 0.5.10 - resolution: "http-parser-js@npm:0.5.10" - checksum: 10/33c53b458cfdf7e43f1517f9bcb6bed1c614b1c7c5d65581a84304110eb9eb02a48f998c7504b8bee432ef4a8ec9318e7009406b506b28b5610fed516242b20a - languageName: node - linkType: hard - -"http-proxy-agent@npm:^5.0.0": - version: 5.0.0 - resolution: "http-proxy-agent@npm:5.0.0" - dependencies: - "@tootallnate/once": "npm:2" - agent-base: "npm:6" - debug: "npm:4" - checksum: 10/5ee19423bc3e0fd5f23ce991b0755699ad2a46a440ce9cec99e8126bb98448ad3479d2c0ea54be5519db5b19a4ffaa69616bac01540db18506dd4dac3dc418f0 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^7.0.0, http-proxy-agent@npm:^7.0.2": - version: 7.0.2 - resolution: "http-proxy-agent@npm:7.0.2" - dependencies: - agent-base: "npm:^7.1.0" - debug: "npm:^4.3.4" - checksum: 10/d062acfa0cb82beeb558f1043c6ba770ea892b5fb7b28654dbc70ea2aeea55226dd34c02a294f6c1ca179a5aa483c4ea641846821b182edbd9cc5d89b54c6848 - languageName: node - linkType: hard - -"http-proxy-middleware@npm:^2.0.3": - version: 2.0.9 - resolution: "http-proxy-middleware@npm:2.0.9" - dependencies: - "@types/http-proxy": "npm:^1.17.8" - http-proxy: "npm:^1.18.1" - is-glob: "npm:^4.0.1" - is-plain-obj: "npm:^3.0.0" - micromatch: "npm:^4.0.2" - peerDependencies: - "@types/express": ^4.17.13 - peerDependenciesMeta: - "@types/express": - optional: true - checksum: 10/4ece416a91d52e96f8136c5f4abfbf7ac2f39becbad21fa8b158a12d7e7d8f808287ff1ae342b903fd1f15f2249dee87fabc09e1f0e73106b83331c496d67660 - languageName: node - linkType: hard - -"http-proxy@npm:^1.18.1": - version: 1.18.1 - resolution: "http-proxy@npm:1.18.1" - dependencies: - eventemitter3: "npm:^4.0.0" - follow-redirects: "npm:^1.0.0" - requires-port: "npm:^1.0.0" - checksum: 10/2489e98aba70adbfd8b9d41ed1ff43528be4598c88616c558b109a09eaffe4bb35e551b6c75ac42ed7d948bb7530a22a2be6ef4f0cecacb5927be139f4274594 - languageName: node - linkType: hard - -"http2-wrapper@npm:^1.0.0-beta.5.2": - version: 1.0.3 - resolution: "http2-wrapper@npm:1.0.3" - dependencies: - quick-lru: "npm:^5.1.1" - resolve-alpn: "npm:^1.0.0" - checksum: 10/8097ee2699440c2e64bda52124990cc5b0fb347401c7797b1a0c1efd5a0f79a4ebaa68e8a6ac3e2dde5f09460c1602764da6da2412bad628ed0a3b0ae35e72d4 - languageName: node - linkType: hard - -"https-browserify@npm:^1.0.0": - version: 1.0.0 - resolution: "https-browserify@npm:1.0.0" - checksum: 10/2d707c457319e1320adf0e7556174c190865fb345b6a183f033cee440f73221dbe7fa3f0adcffb1e6b0664726256bd44771a82e50fe6c66976c10b237100536a - languageName: node - linkType: hard - -"https-proxy-agent@npm:^5.0.1": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: "npm:6" - debug: "npm:4" - checksum: 10/f0dce7bdcac5e8eaa0be3c7368bb8836ed010fb5b6349ffb412b172a203efe8f807d9a6681319105ea1b6901e1972c7b5ea899672a7b9aad58309f766dcbe0df - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1, https-proxy-agent@npm:^7.0.5": - version: 7.0.6 - resolution: "https-proxy-agent@npm:7.0.6" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:4" - checksum: 10/784b628cbd55b25542a9d85033bdfd03d4eda630fb8b3c9477959367f3be95dc476ed2ecbb9836c359c7c698027fc7b45723a302324433590f45d6c1706e8c13 - languageName: node - linkType: hard - -"human-signals@npm:^2.1.0": - version: 2.1.0 - resolution: "human-signals@npm:2.1.0" - checksum: 10/df59be9e0af479036798a881d1f136c4a29e0b518d4abb863afbd11bf30efa3eeb1d0425fc65942dcc05ab3bf40205ea436b0ff389f2cd20b75b8643d539bf86 - languageName: node - linkType: hard - -"humanize-plus@npm:^1.8.1": - version: 1.8.2 - resolution: "humanize-plus@npm:1.8.2" - checksum: 10/3c60707ec52157d0e73ad53e4c0928804485580696b58bd9e01bccb39e42115ef92f7967c41135f359601d760d72315bd35578e3b7efcb3477eca74a9b3b2c94 - languageName: node - linkType: hard - -"i18next-browser-languagedetector@npm:^7.2.0": - version: 7.2.2 - resolution: "i18next-browser-languagedetector@npm:7.2.2" - dependencies: - "@babel/runtime": "npm:^7.23.2" - checksum: 10/6f6dd5db3e83c2ed3b24d7fb754d0c41fd2056a0f06fb3d2a4604541c6ee0031d3f2cbbcfad726bbfc9741bcbbd6cde3acf94d339d600b6d9f49f0bbe51179d9 - languageName: node - linkType: hard - -"i18next-scanner@npm:^4.4.0": - version: 4.6.0 - resolution: "i18next-scanner@npm:4.6.0" - dependencies: - acorn: "npm:^8.0.4" - acorn-jsx: "npm:^5.3.1" - acorn-stage3: "npm:^4.0.0" - acorn-walk: "npm:^8.0.0" - chalk: "npm:^4.1.0" - clone-deep: "npm:^4.0.0" - commander: "npm:^9.0.0" - deepmerge: "npm:^4.0.0" - ensure-type: "npm:^1.5.0" - eol: "npm:^0.9.1" - esprima-next: "npm:^5.7.0" - gulp-sort: "npm:^2.0.0" - i18next: "npm:*" - lodash: "npm:^4.0.0" - parse5: "npm:^6.0.0" - sortobject: "npm:^4.0.0" - through2: "npm:^4.0.0" - vinyl: "npm:^3.0.0" - vinyl-fs: "npm:^4.0.0" - bin: - i18next-scanner: bin/cli.js - checksum: 10/51673170adad6a664bd9b9757dcc54a6fffe7f1e4338de3dcc5de1fbc8d8af87223ece393f9d7c2c579c3efe24525203a8d8f60c2107adfe3d1e3dced92bd21c - languageName: node - linkType: hard - -"i18next@npm:*": - version: 25.7.4 - resolution: "i18next@npm:25.7.4" - dependencies: - "@babel/runtime": "npm:^7.28.4" - peerDependencies: - typescript: ^5 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/7b6ee8298741cf758332a6743f721039ac33d5324ea61c4e5868797e4070108921a64ffe245ca7a60bcfb3485bdb27e16bbbd02d1c7039415dca3a34fde7ccca - languageName: node - linkType: hard - -"i18next@npm:^23.7.11": - version: 23.16.8 - resolution: "i18next@npm:23.16.8" - dependencies: - "@babel/runtime": "npm:^7.23.2" - checksum: 10/d5c38011de4d3b4aa466fac6773520eb28007b9d6138e03432bfbfc0d041c04df45e15c67d96f22cd660088cc9b24d3eda32cddc9fb4c6508c5afada6c2e6290 - languageName: node - linkType: hard - -"iconv-corefoundation@npm:^1.1.7": - version: 1.1.7 - resolution: "iconv-corefoundation@npm:1.1.7" - dependencies: - cli-truncate: "npm:^2.1.0" - node-addon-api: "npm:^1.6.3" - conditions: os=darwin - languageName: node - linkType: hard - -"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2, iconv-lite@npm:^0.6.3": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10/24e3292dd3dadaa81d065c6f8c41b274a47098150d444b96e5f53b4638a9a71482921ea6a91a1f59bb71d9796de25e04afd05919fa64c360347ba65d3766f10f - languageName: node - linkType: hard - -"iconv-lite@npm:^0.4.5, iconv-lite@npm:~0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10/6d3a2dac6e5d1fb126d25645c25c3a1209f70cceecc68b8ef51ae0da3cdc078c151fade7524a30b12a3094926336831fca09c666ef55b37e2c69638b5d6bd2e3 - languageName: node - linkType: hard - -"iconv-lite@npm:^0.7.0": - version: 0.7.2 - resolution: "iconv-lite@npm:0.7.2" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10/24c937b532f868e938386b62410b303b7c767ce3d08dc2829cbe59464d5a26ef86ae5ad1af6b34eec43ddfea39e7d101638644b0178d67262fa87015d59f983a - languageName: node - linkType: hard - -"icss-utils@npm:^5.0.0, icss-utils@npm:^5.1.0": - version: 5.1.0 - resolution: "icss-utils@npm:5.1.0" - peerDependencies: - postcss: ^8.1.0 - checksum: 10/5c324d283552b1269cfc13a503aaaa172a280f914e5b81544f3803bc6f06a3b585fb79f66f7c771a2c052db7982c18bf92d001e3b47282e3abbbb4c4cc488d68 - languageName: node - linkType: hard - -"ieee754@npm:^1.1.13, ieee754@npm:^1.2.1": - version: 1.2.1 - resolution: "ieee754@npm:1.2.1" - checksum: 10/d9f2557a59036f16c282aaeb107832dc957a93d73397d89bbad4eb1130560560eb695060145e8e6b3b498b15ab95510226649a0b8f52ae06583575419fe10fc4 - languageName: node - linkType: hard - -"ignore@npm:^5.2.0, ignore@npm:^5.2.4": - version: 5.3.2 - resolution: "ignore@npm:5.3.2" - checksum: 10/cceb6a457000f8f6a50e1196429750d782afce5680dd878aa4221bd79972d68b3a55b4b1458fc682be978f4d3c6a249046aa0880637367216444ab7b014cfc98 - languageName: node - linkType: hard - -"import-fresh@npm:^3.2.1": - version: 3.3.1 - resolution: "import-fresh@npm:3.3.1" - dependencies: - parent-module: "npm:^1.0.0" - resolve-from: "npm:^4.0.0" - checksum: 10/a06b19461b4879cc654d46f8a6244eb55eb053437afd4cbb6613cad6be203811849ed3e4ea038783092879487299fda24af932b86bdfff67c9055ba3612b8c87 - languageName: node - linkType: hard - -"import-lazy@npm:^2.1.0": - version: 2.1.0 - resolution: "import-lazy@npm:2.1.0" - checksum: 10/05294f3b9dd4971d3a996f0d2f176410fb6745d491d6e73376429189f5c1c3d290548116b2960a7cf3e89c20cdf11431739d1d2d8c54b84061980795010e803a - languageName: node - linkType: hard - -"import-local@npm:^3.0.2": - version: 3.2.0 - resolution: "import-local@npm:3.2.0" - dependencies: - pkg-dir: "npm:^4.2.0" - resolve-cwd: "npm:^3.0.0" - bin: - import-local-fixture: fixtures/cli.js - checksum: 10/0b0b0b412b2521739fbb85eeed834a3c34de9bc67e670b3d0b86248fc460d990a7b116ad056c084b87a693ef73d1f17268d6a5be626bb43c998a8b1c8a230004 - languageName: node - linkType: hard - -"imurmurhash@npm:^0.1.4": - version: 0.1.4 - resolution: "imurmurhash@npm:0.1.4" - checksum: 10/2d30b157a91fe1c1d7c6f653cbf263f039be6c5bfa959245a16d4ee191fc0f2af86c08545b6e6beeb041c56b574d2d5b9f95343d378ab49c0f37394d541e7fc8 - languageName: node - linkType: hard - -"indent-string@npm:^4.0.0": - version: 4.0.0 - resolution: "indent-string@npm:4.0.0" - checksum: 10/cd3f5cbc9ca2d624c6a1f53f12e6b341659aba0e2d3254ae2b4464aaea8b4294cdb09616abbc59458f980531f2429784ed6a420d48d245bcad0811980c9efae9 - languageName: node - linkType: hard - -"indexes-of@npm:^1.0.1": - version: 1.0.1 - resolution: "indexes-of@npm:1.0.1" - checksum: 10/4f9799b1739a62f3e02d09f6f4162cf9673025282af7fa36e790146e7f4e216dad3e776a25b08536c093209c9fcb5ea7bd04b082d42686a45f58ff401d6da32e - languageName: node - linkType: hard - -"inflight@npm:^1.0.4": - version: 1.0.6 - resolution: "inflight@npm:1.0.6" - dependencies: - once: "npm:^1.3.0" - wrappy: "npm:1" - checksum: 10/d2ebd65441a38c8336c223d1b80b921b9fa737e37ea466fd7e253cb000c64ae1f17fa59e68130ef5bda92cfd8d36b83d37dab0eb0a4558bcfec8e8cdfd2dcb67 - languageName: node - linkType: hard - -"inherits@npm:2, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3, inherits@npm:~2.0.4": - version: 2.0.4 - resolution: "inherits@npm:2.0.4" - checksum: 10/cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521 - languageName: node - linkType: hard - -"inherits@npm:2.0.3": - version: 2.0.3 - resolution: "inherits@npm:2.0.3" - checksum: 10/8771303d66c51be433b564427c16011a8e3fbc3449f1f11ea50efb30a4369495f1d0e89f0fc12bdec0bd7e49102ced5d137e031d39ea09821cb3c717fcf21e69 - languageName: node - linkType: hard - -"ini@npm:2.0.0": - version: 2.0.0 - resolution: "ini@npm:2.0.0" - checksum: 10/04e24ba05c4f6947e15560824e153b4610bceea2f5a3ab68651d221a4aab3c77d4e3e90a917ebc8bf5ad71a30a8575de56c39d6b4c4b1375a28016b9f3625f9d - languageName: node - linkType: hard - -"ini@npm:~1.3.0": - version: 1.3.8 - resolution: "ini@npm:1.3.8" - checksum: 10/314ae176e8d4deb3def56106da8002b462221c174ddb7ce0c49ee72c8cd1f9044f7b10cc555a7d8850982c3b9ca96fc212122749f5234bc2b6fb05fb942ed566 - languageName: node - linkType: hard - -"inline-style-parser@npm:0.2.7": - version: 0.2.7 - resolution: "inline-style-parser@npm:0.2.7" - checksum: 10/cdfe719bd694b53bfbad20a645a9a4dda89c3ff56ee2b95945ad4eea86c541501f49f852d23bc2f73cd8127b6b62ea9027f697838e323a7f7d0d9b760e27a632 - languageName: node - linkType: hard - -"inquirer@npm:^8.0.0": - version: 8.2.7 - resolution: "inquirer@npm:8.2.7" - dependencies: - "@inquirer/external-editor": "npm:^1.0.0" - ansi-escapes: "npm:^4.2.1" - chalk: "npm:^4.1.1" - cli-cursor: "npm:^3.1.0" - cli-width: "npm:^3.0.0" - figures: "npm:^3.0.0" - lodash: "npm:^4.17.21" - mute-stream: "npm:0.0.8" - ora: "npm:^5.4.1" - run-async: "npm:^2.4.0" - rxjs: "npm:^7.5.5" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - through: "npm:^2.3.6" - wrap-ansi: "npm:^6.0.1" - checksum: 10/526fb5ca55a29decda9b67c7b2bd437730152104c6e7c5f0d7ade90af6dc999371e1602ce86eb4a39ee3d91993501cddec32e4fe3f599723f2b653b02b685e3b - languageName: node - linkType: hard - -"internal-slot@npm:^1.1.0": - version: 1.1.0 - resolution: "internal-slot@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - hasown: "npm:^2.0.2" - side-channel: "npm:^1.1.0" - checksum: 10/1d5219273a3dab61b165eddf358815eefc463207db33c20fcfca54717da02e3f492003757721f972fd0bf21e4b426cab389c5427b99ceea4b8b670dc88ee6d4a - languageName: node - linkType: hard - -"interpret@npm:^1.0.0": - version: 1.4.0 - resolution: "interpret@npm:1.4.0" - checksum: 10/5beec568d3f60543d0f61f2c5969d44dffcb1a372fe5abcdb8013968114d4e4aaac06bc971a4c9f5bd52d150881d8ebad72a8c60686b1361f5f0522f39c0e1a3 - languageName: node - linkType: hard - -"interpret@npm:^3.1.1": - version: 3.1.1 - resolution: "interpret@npm:3.1.1" - checksum: 10/bc9e11126949c4e6ff49b0b819e923a9adc8e8bf3f9d4f2d782de6d5f592774f6fee4457c10bd08c6a2146b4baee460ccb242c99e5397defa9c846af0d00505a - languageName: node - linkType: hard - -"ip-address@npm:^10.0.1": - version: 10.1.0 - resolution: "ip-address@npm:10.1.0" - checksum: 10/a6979629d1ad9c1fb424bc25182203fad739b40225aebc55ec6243bbff5035faf7b9ed6efab3a097de6e713acbbfde944baacfa73e11852bb43989c45a68d79e - languageName: node - linkType: hard - -"ip-regex@npm:^4.0.0, ip-regex@npm:^4.3.0": - version: 4.3.0 - resolution: "ip-regex@npm:4.3.0" - checksum: 10/7ff904b891221b1847f3fdf3dbb3e6a8660dc39bc283f79eb7ed88f5338e1a3d1104b779bc83759159be266249c59c2160e779ee39446d79d4ed0890dfd06f08 - languageName: node - linkType: hard - -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10/864d0cced0c0832700e9621913a6429ccdc67f37c1bd78fb8c6789fff35c9d167cb329134acad2290497a53336813ab4798d2794fd675d5eb33b5fdf0982b9ca - languageName: node - linkType: hard - -"ipaddr.js@npm:^2.0.1": - version: 2.3.0 - resolution: "ipaddr.js@npm:2.3.0" - checksum: 10/be3d01bc2e20fc2dc5349b489ea40883954b816ce3e57aa48ad943d4e7c4ace501f28a7a15bde4b96b6b97d0fbb28d599ff2f87399f3cda7bd728889402eed3b - languageName: node - linkType: hard - -"is-alphabetical@npm:^2.0.0": - version: 2.0.1 - resolution: "is-alphabetical@npm:2.0.1" - checksum: 10/56207db8d9de0850f0cd30f4966bf731eb82cedfe496cbc2e97e7c3bacaf66fc54a972d2d08c0d93bb679cb84976a05d24c5ad63de56fabbfc60aadae312edaa - languageName: node - linkType: hard - -"is-alphanumerical@npm:^2.0.0": - version: 2.0.1 - resolution: "is-alphanumerical@npm:2.0.1" - dependencies: - is-alphabetical: "npm:^2.0.0" - is-decimal: "npm:^2.0.0" - checksum: 10/87acc068008d4c9c4e9f5bd5e251041d42e7a50995c77b1499cf6ed248f971aadeddb11f239cabf09f7975ee58cac7a48ffc170b7890076d8d227b24a68663c9 - languageName: node - linkType: hard - -"is-arguments@npm:^1.0.4, is-arguments@npm:^1.1.1": - version: 1.2.0 - resolution: "is-arguments@npm:1.2.0" - dependencies: - call-bound: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.2" - checksum: 10/471a8ef631b8ee8829c43a8ab05c081700c0e25180c73d19f3bf819c1a8448c426a9e8e601f278973eca68966384b16ceb78b8c63af795b099cd199ea5afc457 - languageName: node - linkType: hard - -"is-array-buffer@npm:^3.0.2, is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": - version: 3.0.5 - resolution: "is-array-buffer@npm:3.0.5" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10/ef1095c55b963cd0dcf6f88a113e44a0aeca91e30d767c475e7d746d28d1195b10c5076b94491a7a0cd85020ca6a4923070021d74651d093dc909e9932cf689b - languageName: node - linkType: hard - -"is-arrayish@npm:^0.2.1": - version: 0.2.1 - resolution: "is-arrayish@npm:0.2.1" - checksum: 10/73ced84fa35e59e2c57da2d01e12cd01479f381d7f122ce41dcbb713f09dbfc651315832cd2bf8accba7681a69e4d6f1e03941d94dd10040d415086360e7005e - languageName: node - linkType: hard - -"is-async-function@npm:^2.0.0": - version: 2.1.1 - resolution: "is-async-function@npm:2.1.1" - dependencies: - async-function: "npm:^1.0.0" - call-bound: "npm:^1.0.3" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10/7c2ac7efdf671e03265e74a043bcb1c0a32e226bc2a42dfc5ec8644667df668bbe14b91c08e6c1414f392f8cf86cd1d489b3af97756e2c7a49dd1ba63fd40ca6 - languageName: node - linkType: hard - -"is-bigint@npm:^1.1.0": - version: 1.1.0 - resolution: "is-bigint@npm:1.1.0" - dependencies: - has-bigints: "npm:^1.0.2" - checksum: 10/10cf327310d712fe227cfaa32d8b11814c214392b6ac18c827f157e1e85363cf9c8e2a22df526689bd5d25e53b58cc110894787afb54e138e7c504174dba15fd - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" - dependencies: - binary-extensions: "npm:^2.0.0" - checksum: 10/078e51b4f956c2c5fd2b26bb2672c3ccf7e1faff38e0ebdba45612265f4e3d9fc3127a1fa8370bbf09eab61339203c3d3b7af5662cbf8be4030f8fac37745b0e - languageName: node - linkType: hard - -"is-boolean-object@npm:^1.2.1": - version: 1.2.2 - resolution: "is-boolean-object@npm:1.2.2" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10/051fa95fdb99d7fbf653165a7e6b2cba5d2eb62f7ffa81e793a790f3fb5366c91c1b7b6af6820aa2937dd86c73aa3ca9d9ca98f500988457b1c59692c52ba911 - languageName: node - linkType: hard - -"is-builtin-module@npm:^3.2.1": - version: 3.2.1 - resolution: "is-builtin-module@npm:3.2.1" - dependencies: - builtin-modules: "npm:^3.3.0" - checksum: 10/e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 - languageName: node - linkType: hard - -"is-bun-module@npm:^2.0.0": - version: 2.0.0 - resolution: "is-bun-module@npm:2.0.0" - dependencies: - semver: "npm:^7.7.1" - checksum: 10/cded5a1a58368b847872d08617975d620ad94426d76a932f3e08d55b4574d199e0a62a4fb024fa2dc444200b71719eb0bffc5d3d1e1cc82e29b293bb8d66a990 - languageName: node - linkType: hard - -"is-callable@npm:^1.2.7": - version: 1.2.7 - resolution: "is-callable@npm:1.2.7" - checksum: 10/48a9297fb92c99e9df48706241a189da362bff3003354aea4048bd5f7b2eb0d823cd16d0a383cece3d76166ba16d85d9659165ac6fcce1ac12e6c649d66dbdb9 - languageName: node - linkType: hard - -"is-ci@npm:^2.0.0": - version: 2.0.0 - resolution: "is-ci@npm:2.0.0" - dependencies: - ci-info: "npm:^2.0.0" - bin: - is-ci: bin.js - checksum: 10/77b869057510f3efa439bbb36e9be429d53b3f51abd4776eeea79ab3b221337fe1753d1e50058a9e2c650d38246108beffb15ccfd443929d77748d8c0cc90144 - languageName: node - linkType: hard - -"is-ci@npm:^3.0.0": - version: 3.0.1 - resolution: "is-ci@npm:3.0.1" - dependencies: - ci-info: "npm:^3.2.0" - bin: - is-ci: bin.js - checksum: 10/192c66dc7826d58f803ecae624860dccf1899fc1f3ac5505284c0a5cf5f889046ffeb958fa651e5725d5705c5bcb14f055b79150ea5fcad7456a9569de60260e - languageName: node - linkType: hard - -"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.16.1": - version: 2.16.1 - resolution: "is-core-module@npm:2.16.1" - dependencies: - hasown: "npm:^2.0.2" - checksum: 10/452b2c2fb7f889cbbf7e54609ef92cf6c24637c568acc7e63d166812a0fb365ae8a504c333a29add8bdb1686704068caa7f4e4b639b650dde4f00a038b8941fb - languageName: node - linkType: hard - -"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": - version: 1.0.2 - resolution: "is-data-view@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - is-typed-array: "npm:^1.1.13" - checksum: 10/357e9a48fa38f369fd6c4c3b632a3ab2b8adca14997db2e4b3fe94c4cd0a709af48e0fb61b02c64a90c0dd542fd489d49c2d03157b05ae6c07f5e4dec9e730a8 - languageName: node - linkType: hard - -"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": - version: 1.1.0 - resolution: "is-date-object@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.2" - checksum: 10/3a811b2c3176fb31abee1d23d3dc78b6c65fd9c07d591fcb67553cab9e7f272728c3dd077d2d738b53f9a2103255b0a6e8dfc9568a7805c56a78b2563e8d1dec - languageName: node - linkType: hard - -"is-decimal@npm:^2.0.0": - version: 2.0.1 - resolution: "is-decimal@npm:2.0.1" - checksum: 10/97132de7acdce77caa7b797632970a2ecd649a88e715db0e4dbc00ab0708b5e7574ba5903962c860cd4894a14fd12b100c0c4ac8aed445cf6f55c6cf747a4158 - languageName: node - linkType: hard - -"is-docker@npm:^2.0.0, is-docker@npm:^2.1.1": - version: 2.2.1 - resolution: "is-docker@npm:2.2.1" - bin: - is-docker: cli.js - checksum: 10/3fef7ddbf0be25958e8991ad941901bf5922ab2753c46980b60b05c1bf9c9c2402d35e6dc32e4380b980ef5e1970a5d9d5e5aa2e02d77727c3b6b5e918474c56 - languageName: node - linkType: hard - -"is-extglob@npm:^2.1.1": - version: 2.1.1 - resolution: "is-extglob@npm:2.1.1" - checksum: 10/df033653d06d0eb567461e58a7a8c9f940bd8c22274b94bf7671ab36df5719791aae15eef6d83bbb5e23283967f2f984b8914559d4449efda578c775c4be6f85 - languageName: node - linkType: hard - -"is-finalizationregistry@npm:^1.1.0": - version: 1.1.1 - resolution: "is-finalizationregistry@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10/0bfb145e9a1ba852ddde423b0926d2169ae5fe9e37882cde9e8f69031281a986308df4d982283e152396e88b86562ed2256cbaa5e6390fb840a4c25ab54b8a80 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^3.0.0": - version: 3.0.0 - resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: 10/44a30c29457c7fb8f00297bce733f0a64cd22eca270f83e58c105e0d015e45c019491a4ab2faef91ab51d4738c670daff901c799f6a700e27f7314029e99e348 - languageName: node - linkType: hard - -"is-generator-function@npm:^1.0.10, is-generator-function@npm:^1.0.7": - version: 1.1.2 - resolution: "is-generator-function@npm:1.1.2" - dependencies: - call-bound: "npm:^1.0.4" - generator-function: "npm:^2.0.0" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10/cc50fa01034356bdfda26983c5457103240f201f4663c0de1257802714e40d36bcff7aee21091d37bbba4be962fa5c6475ce7ddbc0abfa86d6bef466e41e50a5 - languageName: node - linkType: hard - -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": - version: 4.0.3 - resolution: "is-glob@npm:4.0.3" - dependencies: - is-extglob: "npm:^2.1.1" - checksum: 10/3ed74f2b0cdf4f401f38edb0442ddfde3092d79d7d35c9919c86641efdbcbb32e45aa3c0f70ce5eecc946896cd5a0f26e4188b9f2b881876f7cb6c505b82da11 - languageName: node - linkType: hard - -"is-hexadecimal@npm:^2.0.0": - version: 2.0.1 - resolution: "is-hexadecimal@npm:2.0.1" - checksum: 10/66a2ea85994c622858f063f23eda506db29d92b52580709eb6f4c19550552d4dcf3fb81952e52f7cf972097237959e00adc7bb8c9400cd12886e15bf06145321 - languageName: node - linkType: hard - -"is-installed-globally@npm:^0.4.0": - version: 0.4.0 - resolution: "is-installed-globally@npm:0.4.0" - dependencies: - global-dirs: "npm:^3.0.0" - is-path-inside: "npm:^3.0.2" - checksum: 10/5294d21c82cb9beedd693ce1dfb12117c4db36d6e35edc9dc6bf06cb300d23c96520d1bfb063386b054268ae3d7255c3f09393b52218cc26ace99b217bf37c93 - languageName: node - linkType: hard - -"is-interactive@npm:^1.0.0": - version: 1.0.0 - resolution: "is-interactive@npm:1.0.0" - checksum: 10/824808776e2d468b2916cdd6c16acacebce060d844c35ca6d82267da692e92c3a16fdba624c50b54a63f38bdc4016055b6f443ce57d7147240de4f8cdabaf6f9 - languageName: node - linkType: hard - -"is-ip@npm:^3.1.0": - version: 3.1.0 - resolution: "is-ip@npm:3.1.0" - dependencies: - ip-regex: "npm:^4.0.0" - checksum: 10/da2c2b282407194adf2320bade0bad94be9c9d0bdab85ff45b1b62d8185f31c65dff3884519d57bf270277e5ea2046c7916a6e5a6db22fe4b7ddcdd3760f23eb - languageName: node - linkType: hard - -"is-ipfs@npm:^0.6.0": - version: 0.6.3 - resolution: "is-ipfs@npm:0.6.3" - dependencies: - bs58: "npm:^4.0.1" - cids: "npm:~0.7.0" - mafmt: "npm:^7.0.0" - multiaddr: "npm:^7.2.1" - multibase: "npm:~0.6.0" - multihashes: "npm:~0.4.13" - checksum: 10/764f0c5837f266ee3940e3ebf098fa5797e2eef0224b226dd3bba094d099130897f9de8aadbb15e98f1df5810dfe2e511895dd2be2746f598dc9a07c5664694d - languageName: node - linkType: hard - -"is-ipfs@npm:^8.0.1": - version: 8.0.4 - resolution: "is-ipfs@npm:8.0.4" - dependencies: - "@multiformats/mafmt": "npm:^12.1.6" - "@multiformats/multiaddr": "npm:^12.1.14" - iso-url: "npm:^1.1.3" - multiformats: "npm:^13.0.1" - uint8arrays: "npm:^5.0.1" - checksum: 10/6c4033da8c02c024003d7bde79cc99aa6bbac11c3e2f474e1cfdd170fcfd85df98fb90e10eb50d71c4b477c3b79c32fdefd85a2f9980e123dc5e1fa25193e7b3 - languageName: node - linkType: hard - -"is-map@npm:^2.0.2, is-map@npm:^2.0.3": - version: 2.0.3 - resolution: "is-map@npm:2.0.3" - checksum: 10/8de7b41715b08bcb0e5edb0fb9384b80d2d5bcd10e142188f33247d19ff078abaf8e9b6f858e2302d8d05376a26a55cd23a3c9f8ab93292b02fcd2cc9e4e92bb - languageName: node - linkType: hard - -"is-module@npm:^1.0.0": - version: 1.0.0 - resolution: "is-module@npm:1.0.0" - checksum: 10/8cd5390730c7976fb4e8546dd0b38865ee6f7bacfa08dfbb2cc07219606755f0b01709d9361e01f13009bbbd8099fa2927a8ed665118a6105d66e40f1b838c3f - languageName: node - linkType: hard - -"is-nan@npm:^1.3.2": - version: 1.3.2 - resolution: "is-nan@npm:1.3.2" - dependencies: - call-bind: "npm:^1.0.0" - define-properties: "npm:^1.1.3" - checksum: 10/1f784d3472c09bc2e47acba7ffd4f6c93b0394479aa613311dc1d70f1bfa72eb0846c81350967722c959ba65811bae222204d6c65856fdce68f31986140c7b0e - languageName: node - linkType: hard - -"is-negated-glob@npm:^1.0.0": - version: 1.0.0 - resolution: "is-negated-glob@npm:1.0.0" - checksum: 10/752cb846d71403d0a26389d1f56f8e2ffdb110e994dffe41ebacd1ff4953ee1dc8e71438a00a4e398355113a755f05fc91c73da15541a11d2f080f6b39030d91 - languageName: node - linkType: hard - -"is-negative-zero@npm:^2.0.3": - version: 2.0.3 - resolution: "is-negative-zero@npm:2.0.3" - checksum: 10/8fe5cffd8d4fb2ec7b49d657e1691889778d037494c6f40f4d1a524cadd658b4b53ad7b6b73a59bcb4b143ae9a3d15829af864b2c0f9d65ac1e678c4c80f17e5 - languageName: node - linkType: hard - -"is-npm@npm:^5.0.0": - version: 5.0.0 - resolution: "is-npm@npm:5.0.0" - checksum: 10/9baff02b0c69a3d3c79b162cb2f9e67fb40ef6d172c16601b2e2471c21e9a4fa1fc9885a308d7bc6f3a3cd2a324c27fa0bf284c133c3349bb22571ab70d041cc - languageName: node - linkType: hard - -"is-number-object@npm:^1.1.1": - version: 1.1.1 - resolution: "is-number-object@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10/a5922fb8779ab1ea3b8a9c144522b3d0bea5d9f8f23f7a72470e61e1e4df47714e28e0154ac011998b709cce260c3c9447ad3cd24a96c2f2a0abfdb2cbdc76c8 - languageName: node - linkType: hard - -"is-number@npm:^7.0.0": - version: 7.0.0 - resolution: "is-number@npm:7.0.0" - checksum: 10/6a6c3383f68afa1e05b286af866017c78f1226d43ac8cb064e115ff9ed85eb33f5c4f7216c96a71e4dfea289ef52c5da3aef5bbfade8ffe47a0465d70c0c8e86 - languageName: node - linkType: hard - -"is-obj@npm:^1.0.1": - version: 1.0.1 - resolution: "is-obj@npm:1.0.1" - checksum: 10/3ccf0efdea12951e0b9c784e2b00e77e87b2f8bd30b42a498548a8afcc11b3287342a2030c308e473e93a7a19c9ea7854c99a8832a476591c727df2a9c79796c - languageName: node - linkType: hard - -"is-obj@npm:^2.0.0": - version: 2.0.0 - resolution: "is-obj@npm:2.0.0" - checksum: 10/c9916ac8f4621962a42f5e80e7ffdb1d79a3fab7456ceaeea394cd9e0858d04f985a9ace45be44433bf605673c8be8810540fe4cc7f4266fc7526ced95af5a08 - languageName: node - linkType: hard - -"is-path-inside@npm:^3.0.2, is-path-inside@npm:^3.0.3": - version: 3.0.3 - resolution: "is-path-inside@npm:3.0.3" - checksum: 10/abd50f06186a052b349c15e55b182326f1936c89a78bf6c8f2b707412517c097ce04bc49a0ca221787bc44e1049f51f09a2ffb63d22899051988d3a618ba13e9 - languageName: node - linkType: hard - -"is-plain-obj@npm:^1.1.0": - version: 1.1.0 - resolution: "is-plain-obj@npm:1.1.0" - checksum: 10/0ee04807797aad50859652a7467481816cbb57e5cc97d813a7dcd8915da8195dc68c436010bf39d195226cde6a2d352f4b815f16f26b7bf486a5754290629931 - languageName: node - linkType: hard - -"is-plain-obj@npm:^2.0.0": - version: 2.1.0 - resolution: "is-plain-obj@npm:2.1.0" - checksum: 10/cec9100678b0a9fe0248a81743041ed990c2d4c99f893d935545cfbc42876cbe86d207f3b895700c690ad2fa520e568c44afc1605044b535a7820c1d40e38daa - languageName: node - linkType: hard - -"is-plain-obj@npm:^3.0.0": - version: 3.0.0 - resolution: "is-plain-obj@npm:3.0.0" - checksum: 10/a6ebdf8e12ab73f33530641972a72a4b8aed6df04f762070d823808303e4f76d87d5ea5bd76f96a7bbe83d93f04ac7764429c29413bd9049853a69cb630fb21c - languageName: node - linkType: hard - -"is-plain-obj@npm:^4.0.0": - version: 4.1.0 - resolution: "is-plain-obj@npm:4.1.0" - checksum: 10/6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce - languageName: node - linkType: hard - -"is-plain-object@npm:^2.0.4": - version: 2.0.4 - resolution: "is-plain-object@npm:2.0.4" - dependencies: - isobject: "npm:^3.0.1" - checksum: 10/2a401140cfd86cabe25214956ae2cfee6fbd8186809555cd0e84574f88de7b17abacb2e477a6a658fa54c6083ecbda1e6ae404c7720244cd198903848fca70ca - languageName: node - linkType: hard - -"is-plain-object@npm:^5.0.0": - version: 5.0.0 - resolution: "is-plain-object@npm:5.0.0" - checksum: 10/e32d27061eef62c0847d303125440a38660517e586f2f3db7c9d179ae5b6674ab0f469d519b2e25c147a1a3bc87156d0d5f4d8821e0ce4a9ee7fe1fcf11ce45c - languageName: node - linkType: hard - -"is-potential-custom-element-name@npm:^1.0.1": - version: 1.0.1 - resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: 10/ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab - languageName: node - linkType: hard - -"is-reference@npm:1.2.1": - version: 1.2.1 - resolution: "is-reference@npm:1.2.1" - dependencies: - "@types/estree": "npm:*" - checksum: 10/e7b48149f8abda2c10849ea51965904d6a714193d68942ad74e30522231045acf06cbfae5a4be2702fede5d232e61bf50b3183acdc056e6e3afe07fcf4f4b2bc - languageName: node - linkType: hard - -"is-regex@npm:^1.1.4, is-regex@npm:^1.2.1": - version: 1.2.1 - resolution: "is-regex@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10/c42b7efc5868a5c9a4d8e6d3e9816e8815c611b09535c00fead18a1138455c5cb5e1887f0023a467ad3f9c419d62ba4dc3d9ba8bafe55053914d6d6454a945d2 - languageName: node - linkType: hard - -"is-regexp@npm:^1.0.0": - version: 1.0.0 - resolution: "is-regexp@npm:1.0.0" - checksum: 10/be692828e24cba479ec33644326fa98959ec68ba77965e0291088c1a741feaea4919d79f8031708f85fd25e39de002b4520622b55460660b9c369e6f7187faef - languageName: node - linkType: hard - -"is-relative-path@npm:^1.0.2": - version: 1.0.2 - resolution: "is-relative-path@npm:1.0.2" - checksum: 10/6c2ccffd3c0a3e3990535d0571370883d558b825b51940085f3446ec338857f4552f44521dfec3e83b7e067de08c0b0369de290208a91200bcae2c569533e340 - languageName: node - linkType: hard - -"is-set@npm:^2.0.2, is-set@npm:^2.0.3": - version: 2.0.3 - resolution: "is-set@npm:2.0.3" - checksum: 10/5685df33f0a4a6098a98c72d94d67cad81b2bc72f1fb2091f3d9283c4a1c582123cd709145b02a9745f0ce6b41e3e43f1c944496d1d74d4ea43358be61308669 - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.2, is-shared-array-buffer@npm:^1.0.4": - version: 1.0.4 - resolution: "is-shared-array-buffer@npm:1.0.4" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10/0380d7c60cc692856871526ffcd38a8133818a2ee42d47bb8008248a0cd2121d8c8b5f66b6da3cac24bc5784553cacb6faaf678f66bc88c6615b42af2825230e - languageName: node - linkType: hard - -"is-stream@npm:^2.0.0, is-stream@npm:^2.0.1": - version: 2.0.1 - resolution: "is-stream@npm:2.0.1" - checksum: 10/b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 - languageName: node - linkType: hard - -"is-string@npm:^1.0.7, is-string@npm:^1.1.1": - version: 1.1.1 - resolution: "is-string@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10/5277cb9e225a7cc8a368a72623b44a99f2cfa139659c6b203553540681ad4276bfc078420767aad0e73eef5f0bd07d4abf39a35d37ec216917879d11cebc1f8b - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": - version: 1.1.1 - resolution: "is-symbol@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - safe-regex-test: "npm:^1.1.0" - checksum: 10/db495c0d8cd0a7a66b4f4ef7fccee3ab5bd954cb63396e8ac4d32efe0e9b12fdfceb851d6c501216a71f4f21e5ff20fc2ee845a3d52d455e021c466ac5eb2db2 - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15, is-typed-array@npm:^1.1.3": - version: 1.1.15 - resolution: "is-typed-array@npm:1.1.15" - dependencies: - which-typed-array: "npm:^1.1.16" - checksum: 10/e8cf60b9ea85667097a6ad68c209c9722cfe8c8edf04d6218366469e51944c5cc25bae45ffb845c23f811d262e4314d3b0168748eb16711aa34d12724cdf0735 - languageName: node - linkType: hard - -"is-typedarray@npm:^1.0.0": - version: 1.0.0 - resolution: "is-typedarray@npm:1.0.0" - checksum: 10/4b433bfb0f9026f079f4eb3fbaa4ed2de17c9995c3a0b5c800bec40799b4b2a8b4e051b1ada77749deb9ded4ae52fe2096973f3a93ff83df1a5a7184a669478c - languageName: node - linkType: hard - -"is-unicode-supported@npm:^0.1.0": - version: 0.1.0 - resolution: "is-unicode-supported@npm:0.1.0" - checksum: 10/a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 - languageName: node - linkType: hard - -"is-url-superb@npm:^4.0.0": - version: 4.0.0 - resolution: "is-url-superb@npm:4.0.0" - checksum: 10/fd55e91c96349acb0d688f95fcb1ac67450e5db934976e3a8ff13ef446841e779a6f4d18b15f02331f05a3429c8fdaba2382ac1ab444059e86e9ffcde1ec8db0 - languageName: node - linkType: hard - -"is-url@npm:^1.1.0, is-url@npm:^1.2.4": - version: 1.2.4 - resolution: "is-url@npm:1.2.4" - checksum: 10/100e74b3b1feab87a43ef7653736e88d997eb7bd32e71fd3ebc413e58c1cbe56269699c776aaea84244b0567f2a7d68dfaa512a062293ed2f9fdecb394148432 - languageName: node - linkType: hard - -"is-valid-glob@npm:^1.0.0": - version: 1.0.0 - resolution: "is-valid-glob@npm:1.0.0" - checksum: 10/0155951e89291d405cbb2ff4e25a38ee7a88bc70b05f246c25d31a1d09f13d4207377e5860f67443bbda8e3e353da37047b60e586bd9c97a39c9301c30b67acb - languageName: node - linkType: hard - -"is-weakmap@npm:^2.0.2": - version: 2.0.2 - resolution: "is-weakmap@npm:2.0.2" - checksum: 10/a7b7e23206c542dcf2fa0abc483142731788771527e90e7e24f658c0833a0d91948a4f7b30d78f7a65255a48512e41a0288b778ba7fc396137515c12e201fd11 - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1": - version: 1.1.1 - resolution: "is-weakref@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10/543506fd8259038b371bb083aac25b16cb4fd8b12fc58053aa3d45ac28dfd001cd5c6dffbba7aeea4213c74732d46b6cb2cfb5b412eed11f2db524f3f97d09a0 - languageName: node - linkType: hard - -"is-weakset@npm:^2.0.3": - version: 2.0.4 - resolution: "is-weakset@npm:2.0.4" - dependencies: - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10/1d5e1d0179beeed3661125a6faa2e59bfb48afda06fc70db807f178aa0ebebc3758fb6358d76b3d528090d5ef85148c345dcfbf90839592fe293e3e5e82f2134 - languageName: node - linkType: hard - -"is-wsl@npm:^2.1.1, is-wsl@npm:^2.2.0": - version: 2.2.0 - resolution: "is-wsl@npm:2.2.0" - dependencies: - is-docker: "npm:^2.0.0" - checksum: 10/20849846ae414997d290b75e16868e5261e86ff5047f104027026fd61d8b5a9b0b3ade16239f35e1a067b3c7cc02f70183cb661010ed16f4b6c7c93dad1b19d8 - languageName: node - linkType: hard - -"is-yarn-global@npm:^0.3.0": - version: 0.3.0 - resolution: "is-yarn-global@npm:0.3.0" - checksum: 10/bca013d65fee2862024c9fbb3ba13720ffca2fe750095174c1c80922fdda16402b5c233f5ac9e265bc12ecb5446e7b7f519a32d9541788f01d4d44e24d2bf481 - languageName: node - linkType: hard - -"isarray@npm:^2.0.5": - version: 2.0.5 - resolution: "isarray@npm:2.0.5" - checksum: 10/1d8bc7911e13bb9f105b1b3e0b396c787a9e63046af0b8fe0ab1414488ab06b2b099b87a2d8a9e31d21c9a6fad773c7fc8b257c4880f2d957274479d28ca3414 - languageName: node - linkType: hard - -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10/f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab - languageName: node - linkType: hard - -"isbinaryfile@npm:^4.0.8": - version: 4.0.10 - resolution: "isbinaryfile@npm:4.0.10" - checksum: 10/7f9dbf3e992a020cd3e6845ba49b47de93cda19edadf338bbf82f1453d7a14a73c390ea7f18a1940f09324089e470cce9ea001bd544aea52df641a658ed51c54 - languageName: node - linkType: hard - -"isbinaryfile@npm:^5.0.0": - version: 5.0.7 - resolution: "isbinaryfile@npm:5.0.7" - checksum: 10/af240b2a80db5cffbb3ddcb4d89403802d6b67d21b63fbcc0be5cefcefc013f499477c5837a5b2f029ba3d163543eab36eaee7cd701f2c44ee5ac890f0fadac5 - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 10/7c9f715c03aff08f35e98b1fadae1b9267b38f0615d501824f9743f3aab99ef10e303ce7db3f186763a0b70a19de5791ebfc854ff884d5a8c4d92211f642ec92 - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 10/7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e - languageName: node - linkType: hard - -"iso-url@npm:^1.1.3": - version: 1.2.1 - resolution: "iso-url@npm:1.2.1" - checksum: 10/87455fd79166c7b269df7711ea0bee896338330fb46164dd3e6d73ba09c294326ae356b60032dc3217c1455b66f57216a44b95ded8fb2c1c2f9e490396060ef9 - languageName: node - linkType: hard - -"isobject@npm:^3.0.1": - version: 3.0.1 - resolution: "isobject@npm:3.0.1" - checksum: 10/db85c4c970ce30693676487cca0e61da2ca34e8d4967c2e1309143ff910c207133a969f9e4ddb2dc6aba670aabce4e0e307146c310350b298e74a31f7d464703 - languageName: node - linkType: hard - -"isomorphic-ws@npm:^5.0.0": - version: 5.0.0 - resolution: "isomorphic-ws@npm:5.0.0" - peerDependencies: - ws: "*" - checksum: 10/e20eb2aee09ba96247465fda40c6d22c1153394c0144fa34fe6609f341af4c8c564f60ea3ba762335a7a9c306809349f9b863c8beedf2beea09b299834ad5398 - languageName: node - linkType: hard - -"iterator.prototype@npm:^1.1.5": - version: 1.1.5 - resolution: "iterator.prototype@npm:1.1.5" - dependencies: - define-data-property: "npm:^1.1.4" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.6" - get-proto: "npm:^1.0.0" - has-symbols: "npm:^1.1.0" - set-function-name: "npm:^2.0.2" - checksum: 10/352bcf333f42189e65cc8cb2dcb94a5c47cf0a9110ce12aba788d405a980b5f5f3a06c79bf915377e1d480647169babd842ded0d898bed181bf6686e8e6823f6 - languageName: node - linkType: hard - -"jackspeak@npm:^3.1.2": - version: 3.4.3 - resolution: "jackspeak@npm:3.4.3" - dependencies: - "@isaacs/cliui": "npm:^8.0.2" - "@pkgjs/parseargs": "npm:^0.11.0" - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 10/96f8786eaab98e4bf5b2a5d6d9588ea46c4d06bbc4f2eb861fdd7b6b182b16f71d8a70e79820f335d52653b16d4843b29dd9cdcf38ae80406756db9199497cf3 - languageName: node - linkType: hard - -"jake@npm:^10.8.5": - version: 10.9.4 - resolution: "jake@npm:10.9.4" - dependencies: - async: "npm:^3.2.6" - filelist: "npm:^1.0.4" - picocolors: "npm:^1.1.1" - bin: - jake: bin/cli.js - checksum: 10/97e48f73f5e315a3b6e1a48b4bcc0cdf2c2cf82100ec9e76a032fd5d614dcd32c4315572cfcb66e9f9bdecca3900aaa61fe72b781a74b06aefd3ec4c1c917f0b - languageName: node - linkType: hard - -"jdenticon@npm:3.2.0": - version: 3.2.0 - resolution: "jdenticon@npm:3.2.0" - dependencies: - canvas-renderer: "npm:~2.2.0" - bin: - jdenticon: bin/jdenticon.js - checksum: 10/a6d7f9ff0c54d8b2aa0417a132f38ab7ef75505a4ad249aface1bca6fc111b95ed92f491515419d7a838191e5f7e49c93813570ba58a872d4bb7434de1c14118 - languageName: node - linkType: hard - -"jest-diff@npm:30.2.0": - version: 30.2.0 - resolution: "jest-diff@npm:30.2.0" - dependencies: - "@jest/diff-sequences": "npm:30.0.1" - "@jest/get-type": "npm:30.1.0" - chalk: "npm:^4.1.2" - pretty-format: "npm:30.2.0" - checksum: 10/1fb9e4fb7dff81814b4f69eaa7db28e184d62306a3a8ea2447d02ca53d2cfa771e83ede513f67ec5239dffacfaac32ff2b49866d211e4c7516f51c1fc06ede42 - languageName: node - linkType: hard - -"jest-matcher-utils@npm:30.2.0": - version: 30.2.0 - resolution: "jest-matcher-utils@npm:30.2.0" - dependencies: - "@jest/get-type": "npm:30.1.0" - chalk: "npm:^4.1.2" - jest-diff: "npm:30.2.0" - pretty-format: "npm:30.2.0" - checksum: 10/f3f1ecf68ca63c9d1d80a175637a8fc655edfd1ee83220f6e3f6bd464ecbe2f93148fdd440a5a5e5a2b0b2cc8ee84ddc3dcef58a6dbc66821c792f48d260c6d4 - languageName: node - linkType: hard - -"jest-message-util@npm:30.2.0": - version: 30.2.0 - resolution: "jest-message-util@npm:30.2.0" - dependencies: - "@babel/code-frame": "npm:^7.27.1" - "@jest/types": "npm:30.2.0" - "@types/stack-utils": "npm:^2.0.3" - chalk: "npm:^4.1.2" - graceful-fs: "npm:^4.2.11" - micromatch: "npm:^4.0.8" - pretty-format: "npm:30.2.0" - slash: "npm:^3.0.0" - stack-utils: "npm:^2.0.6" - checksum: 10/e29ec76e8c8e4da5f5b25198be247535626ccf3a940e93fdd51fc6a6bcf70feaa2921baae3806182a090431d90b08c939eb13fb64249b171d2e9ae3a452a8fd2 - languageName: node - linkType: hard - -"jest-mock@npm:30.2.0": - version: 30.2.0 - resolution: "jest-mock@npm:30.2.0" - dependencies: - "@jest/types": "npm:30.2.0" - "@types/node": "npm:*" - jest-util: "npm:30.2.0" - checksum: 10/cde9b56805f90bf811a9231873ee88a0fb83bf4bf50972ae76960725da65220fcb119688f2e90e1ef33fbfd662194858d7f43809d881f1c41bb55d94e62adeab - languageName: node - linkType: hard - -"jest-regex-util@npm:30.0.1": - version: 30.0.1 - resolution: "jest-regex-util@npm:30.0.1" - checksum: 10/fa8dac80c3e94db20d5e1e51d1bdf101cf5ede8f4e0b8f395ba8b8ea81e71804ffd747452a6bb6413032865de98ac656ef8ae43eddd18d980b6442a2764ed562 - languageName: node - linkType: hard - -"jest-util@npm:30.2.0": - version: 30.2.0 - resolution: "jest-util@npm:30.2.0" - dependencies: - "@jest/types": "npm:30.2.0" - "@types/node": "npm:*" - chalk: "npm:^4.1.2" - ci-info: "npm:^4.2.0" - graceful-fs: "npm:^4.2.11" - picomatch: "npm:^4.0.2" - checksum: 10/cf2f2fb83417ea69f9992121561c95cf4e9aad7946819b771b8b52addf78811101b33b51d0a39fa0c305f2751dab262feed7699de052659ff03d51827c8862f5 - languageName: node - linkType: hard - -"jest-worker@npm:^27.4.5": - version: 27.5.1 - resolution: "jest-worker@npm:27.5.1" - dependencies: - "@types/node": "npm:*" - merge-stream: "npm:^2.0.0" - supports-color: "npm:^8.0.0" - checksum: 10/06c6e2a84591d9ede704d5022fc13791e8876e83397c89d481b0063332abbb64c0f01ef4ca7de520b35c7a1058556078d6bdc3631376f4e9ffb42316c1a8488e - languageName: node - linkType: hard - -"joycon@npm:^3.1.1": - version: 3.1.1 - resolution: "joycon@npm:3.1.1" - checksum: 10/4b36e3479144ec196425f46b3618f8a96ce7e1b658f091a309cd4906215f5b7a402d7df331a3e0a09681381a658d0c5f039cb3cf6907e0a1e17ed847f5d37775 - languageName: node - linkType: hard - -"jquery@npm:x.*": - version: 3.7.1 - resolution: "jquery@npm:3.7.1" - checksum: 10/17be9929f5fa37697d9848284f0d108c543318ef79ec794e130cd0c49f6c050d60c803a69e8cfa16fa19f5ff7cdb814a6905cceab0831186560c65ed113cd579 - languageName: node - linkType: hard - -"js-cleanup@npm:^1.2.0": - version: 1.2.0 - resolution: "js-cleanup@npm:1.2.0" - dependencies: - magic-string: "npm:^0.25.7" - perf-regexes: "npm:^1.0.1" - skip-regex: "npm:^1.0.2" - checksum: 10/c0c42ecda3342e64113a4fe4a072024038f47022f525a00badb3c11ffb0c0e8ada0fbf22074086ad2b3dc3f602f99a13fd6bd53fa2343b259f05e942b3cf1aa7 - languageName: node - linkType: hard - -"js-sha3@npm:^0.8.0": - version: 0.8.0 - resolution: "js-sha3@npm:0.8.0" - checksum: 10/a49ac6d3a6bfd7091472a28ab82a94c7fb8544cc584ee1906486536ba1cb4073a166f8c7bb2b0565eade23c5b3a7b8f7816231e0309ab5c549b737632377a20c - languageName: node - linkType: hard - -"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": - version: 4.0.0 - resolution: "js-tokens@npm:4.0.0" - checksum: 10/af37d0d913fb56aec6dc0074c163cc71cd23c0b8aad5c2350747b6721d37ba118af35abdd8b33c47ec2800de07dedb16a527ca9c530ee004093e04958bd0cbf2 - languageName: node - linkType: hard - -"js-yaml@npm:^3.14.0": - version: 3.14.2 - resolution: "js-yaml@npm:3.14.2" - dependencies: - argparse: "npm:^1.0.7" - esprima: "npm:^4.0.0" - bin: - js-yaml: bin/js-yaml.js - checksum: 10/172e0b6007b0bf0fc8d2469c94424f7dd765c64a047d2b790831fecef2204a4054eabf4d911eb73ab8c9a3256ab8ba1ee8d655b789bf24bf059c772acc2075a1 - languageName: node - linkType: hard - -"js-yaml@npm:^4.1.0": - version: 4.1.1 - resolution: "js-yaml@npm:4.1.1" - dependencies: - argparse: "npm:^2.0.1" - bin: - js-yaml: bin/js-yaml.js - checksum: 10/a52d0519f0f4ef5b4adc1cde466cb54c50d56e2b4a983b9d5c9c0f2f99462047007a6274d7e95617a21d3c91fde3ee6115536ed70991cd645ba8521058b78f77 - languageName: node - linkType: hard - -"jsdom@npm:^24.0.0": - version: 24.1.3 - resolution: "jsdom@npm:24.1.3" - dependencies: - cssstyle: "npm:^4.0.1" - data-urls: "npm:^5.0.0" - decimal.js: "npm:^10.4.3" - form-data: "npm:^4.0.0" - html-encoding-sniffer: "npm:^4.0.0" - http-proxy-agent: "npm:^7.0.2" - https-proxy-agent: "npm:^7.0.5" - is-potential-custom-element-name: "npm:^1.0.1" - nwsapi: "npm:^2.2.12" - parse5: "npm:^7.1.2" - rrweb-cssom: "npm:^0.7.1" - saxes: "npm:^6.0.0" - symbol-tree: "npm:^3.2.4" - tough-cookie: "npm:^4.1.4" - w3c-xmlserializer: "npm:^5.0.0" - webidl-conversions: "npm:^7.0.0" - whatwg-encoding: "npm:^3.1.1" - whatwg-mimetype: "npm:^4.0.0" - whatwg-url: "npm:^14.0.0" - ws: "npm:^8.18.0" - xml-name-validator: "npm:^5.0.0" - peerDependencies: - canvas: ^2.11.2 - peerDependenciesMeta: - canvas: - optional: true - checksum: 10/81e01d092a3620a9749e46572c26b21eb1fefc4e593f99e4acf3d4a803dfb091917e7b7096b3e62fab87e1d525a4030b803be1f5dbb5e7e61435d726f82f7457 - languageName: node - linkType: hard - -"json-buffer@npm:3.0.0": - version: 3.0.0 - resolution: "json-buffer@npm:3.0.0" - checksum: 10/6e364585600598c42f1cc85d1305569aeb1a6a13e7c67960f17b403f087e2700104ec8e49fc681ab6d6278ee4d132ac033f2625c22a9777ed9b83b403b40f23e - languageName: node - linkType: hard - -"json-buffer@npm:3.0.1": - version: 3.0.1 - resolution: "json-buffer@npm:3.0.1" - checksum: 10/82876154521b7b68ba71c4f969b91572d1beabadd87bd3a6b236f85fbc7dc4695089191ed60bb59f9340993c51b33d479f45b6ba9f3548beb519705281c32c3c - languageName: node - linkType: hard - -"json-parse-even-better-errors@npm:^2.3.0, json-parse-even-better-errors@npm:^2.3.1": - version: 2.3.1 - resolution: "json-parse-even-better-errors@npm:2.3.1" - checksum: 10/5f3a99009ed5f2a5a67d06e2f298cc97bc86d462034173308156f15b43a6e850be8511dc204b9b94566305da2947f7d90289657237d210351a39059ff9d666cf - languageName: node - linkType: hard - -"json-schema-traverse@npm:^0.4.1": - version: 0.4.1 - resolution: "json-schema-traverse@npm:0.4.1" - checksum: 10/7486074d3ba247769fda17d5181b345c9fb7d12e0da98b22d1d71a5db9698d8b4bd900a3ec1a4ffdd60846fc2556274a5c894d0c48795f14cb03aeae7b55260b - languageName: node - linkType: hard - -"json-schema-traverse@npm:^1.0.0": - version: 1.0.0 - resolution: "json-schema-traverse@npm:1.0.0" - checksum: 10/02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad - languageName: node - linkType: hard - -"json-stable-stringify-without-jsonify@npm:^1.0.1": - version: 1.0.1 - resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" - checksum: 10/12786c2e2f22c27439e6db0532ba321f1d0617c27ad8cb1c352a0e9249a50182fd1ba8b52a18899291604b0c32eafa8afd09e51203f19109a0537f68db2b652d - languageName: node - linkType: hard - -"json-stringify-safe@npm:^5.0.1": - version: 5.0.1 - resolution: "json-stringify-safe@npm:5.0.1" - checksum: 10/59169a081e4eeb6f9559ae1f938f656191c000e0512aa6df9f3c8b2437a4ab1823819c6b9fd1818a4e39593ccfd72e9a051fdd3e2d1e340ed913679e888ded8c - languageName: node - linkType: hard - -"json5@npm:^1.0.2": - version: 1.0.2 - resolution: "json5@npm:1.0.2" - dependencies: - minimist: "npm:^1.2.0" - bin: - json5: lib/cli.js - checksum: 10/a78d812dbbd5642c4f637dd130954acfd231b074965871c3e28a5bbd571f099d623ecf9161f1960c4ddf68e0cc98dee8bebfdb94a71ad4551f85a1afc94b63f6 - languageName: node - linkType: hard - -"json5@npm:^2.2.0, json5@npm:^2.2.2, json5@npm:^2.2.3": - version: 2.2.3 - resolution: "json5@npm:2.2.3" - bin: - json5: lib/cli.js - checksum: 10/1db67b853ff0de3534085d630691d3247de53a2ed1390ba0ddff681ea43e9b3e30ecbdb65c5e9aab49435e44059c23dbd6fee8ee619419ba37465bb0dd7135da - languageName: node - linkType: hard - -"jsonfile@npm:^4.0.0": - version: 4.0.0 - resolution: "jsonfile@npm:4.0.0" - dependencies: - graceful-fs: "npm:^4.1.6" - dependenciesMeta: - graceful-fs: - optional: true - checksum: 10/17796f0ab1be8479827d3683433f97ebe0a1c6932c3360fa40348eac36904d69269aab26f8b16da311882d94b42e9208e8b28e490bf926364f3ac9bff134c226 - languageName: node - linkType: hard - -"jsonfile@npm:^6.0.1": - version: 6.2.0 - resolution: "jsonfile@npm:6.2.0" - dependencies: - graceful-fs: "npm:^4.1.6" - universalify: "npm:^2.0.0" - dependenciesMeta: - graceful-fs: - optional: true - checksum: 10/513aac94a6eff070767cafc8eb4424b35d523eec0fcd8019fe5b975f4de5b10a54640c8d5961491ddd8e6f562588cf62435c5ddaf83aaf0986cd2ee789e0d7b9 - languageName: node - linkType: hard - -"jstransform@npm:^11.0.3": - version: 11.0.3 - resolution: "jstransform@npm:11.0.3" - dependencies: - base62: "npm:^1.1.0" - commoner: "npm:^0.10.1" - esprima-fb: "npm:^15001.1.0-dev-harmony-fb" - object-assign: "npm:^2.0.0" - source-map: "npm:^0.4.2" - bin: - jstransform: bin/jstransform - checksum: 10/bd300e3744f1e4b9a5e31833ce17a22718114f0881589b17250c1172dac5290cca486f335f6796587e41bbd1254e2bd27596e8b9d1af69ccceaf429cf79a854f - languageName: node - linkType: hard - -"jsx-ast-utils@npm:^2.4.1 || ^3.0.0": - version: 3.3.5 - resolution: "jsx-ast-utils@npm:3.3.5" - dependencies: - array-includes: "npm:^3.1.6" - array.prototype.flat: "npm:^1.3.1" - object.assign: "npm:^4.1.4" - object.values: "npm:^1.1.6" - checksum: 10/b61d44613687dfe4cc8ad4b4fbf3711bf26c60b8d5ed1f494d723e0808415c59b24a7c0ed8ab10736a40ff84eef38cbbfb68b395e05d31117b44ffc59d31edfc - languageName: node - linkType: hard - -"keyboard-key@npm:^1.0.4": - version: 1.1.0 - resolution: "keyboard-key@npm:1.1.0" - checksum: 10/2fbd678dd8c53be62f1fe2c4d12ba1d54a01945f70969f48ee61599ed83289c1654d248b74950006d8756df5a0976bb6c8a88ec2574353d8c1363195a09ec2ed - languageName: node - linkType: hard - -"keyv@npm:^3.0.0": - version: 3.1.0 - resolution: "keyv@npm:3.1.0" - dependencies: - json-buffer: "npm:3.0.0" - checksum: 10/6de272b3f78975a9a0b12259953c09d5bbe9de9acfd845471ebd758928b523f70563462f0c16a866fe9b447ff5bdebda72c62bc23734eb72cd1fb8f1d7076843 - languageName: node - linkType: hard - -"keyv@npm:^4.0.0, keyv@npm:^4.5.3": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" - dependencies: - json-buffer: "npm:3.0.1" - checksum: 10/167eb6ef64cc84b6fa0780ee50c9de456b422a1e18802209234f7c2cf7eae648c7741f32e50d7e24ccb22b24c13154070b01563d642755b156c357431a191e75 - languageName: node - linkType: hard - -"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": - version: 6.0.3 - resolution: "kind-of@npm:6.0.3" - checksum: 10/5873d303fb36aad875b7538798867da2ae5c9e328d67194b0162a3659a627d22f742fc9c4ae95cd1704132a24b00cae5041fc00c0f6ef937dc17080dc4dbb962 - languageName: node - linkType: hard - -"latest-version@npm:^5.1.0": - version: 5.1.0 - resolution: "latest-version@npm:5.1.0" - dependencies: - package-json: "npm:^6.3.0" - checksum: 10/fbc72b071eb66c40f652441fd783a9cca62f08bf42433651937f078cd9ef94bf728ec7743992777826e4e89305aef24f234b515e6030503a2cbee7fc9bdc2c0f - languageName: node - linkType: hard - -"launch-editor@npm:^2.6.0": - version: 2.12.0 - resolution: "launch-editor@npm:2.12.0" - dependencies: - picocolors: "npm:^1.1.1" - shell-quote: "npm:^1.8.3" - checksum: 10/43d2b66c674d129f9a96bbae602808a0afa7e6bb6f38de5518479e33b1a542e9772b262304505c2aa363b0185424580b4011a9198082d306e2b419c6f12da5e2 - languageName: node - linkType: hard - -"lazy-val@npm:^1.0.4, lazy-val@npm:^1.0.5": - version: 1.0.5 - resolution: "lazy-val@npm:1.0.5" - checksum: 10/31e12e0b118826dfae74f8f3ff8ebcddfe4200ff88d0d448db175c7265ee537e0ba55488d411728246337f3ed3c9ec68416f10889f632a2ce28fb7a970909fb5 - languageName: node - linkType: hard - -"lazystream@npm:^1.0.0": - version: 1.0.1 - resolution: "lazystream@npm:1.0.1" - dependencies: - readable-stream: "npm:^2.0.5" - checksum: 10/35f8cf8b5799c76570b211b079d4d706a20cbf13a4936d44cc7dbdacab1de6b346ab339ed3e3805f4693155ee5bbebbda4050fa2b666d61956e89a573089e3d4 - languageName: node - linkType: hard - -"lead@npm:^4.0.0": - version: 4.0.0 - resolution: "lead@npm:4.0.0" - checksum: 10/7117297c29b94e4846822e5ae0a25780af834586c0862b89ff899e44547f4f742d67801f19838b34611d36eec44868604c55525e12d2a1fb0c9496a9792ca396 - languageName: node - linkType: hard - -"levn@npm:^0.4.1": - version: 0.4.1 - resolution: "levn@npm:0.4.1" - dependencies: - prelude-ls: "npm:^1.2.1" - type-check: "npm:~0.4.0" - checksum: 10/2e4720ff79f21ae08d42374b0a5c2f664c5be8b6c8f565bb4e1315c96ed3a8acaa9de788ffed82d7f2378cf36958573de07ef92336cb5255ed74d08b8318c9ee - languageName: node - linkType: hard - -"lilconfig@npm:^3.1.1": - version: 3.1.3 - resolution: "lilconfig@npm:3.1.3" - checksum: 10/b932ce1af94985f0efbe8896e57b1f814a48c8dbd7fc0ef8469785c6303ed29d0090af3ccad7e36b626bfca3a4dc56cc262697e9a8dd867623cf09a39d54e4c3 - languageName: node - linkType: hard - -"line-reader@npm:^0.2.4": - version: 0.2.4 - resolution: "line-reader@npm:0.2.4" - checksum: 10/62ea55882df41938b5a5d93cfa4fdc06d263b206d7b97b0b9a1ddb10b0907debd36770931fd788c233ffcff724fd67ec15444f1f4c62e229fd8eb684991a6c62 - languageName: node - linkType: hard - -"lines-and-columns@npm:^1.1.6": - version: 1.2.4 - resolution: "lines-and-columns@npm:1.2.4" - checksum: 10/0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 - languageName: node - linkType: hard - -"load-json-file@npm:^6.2.0": - version: 6.2.0 - resolution: "load-json-file@npm:6.2.0" - dependencies: - graceful-fs: "npm:^4.1.15" - parse-json: "npm:^5.0.0" - strip-bom: "npm:^4.0.0" - type-fest: "npm:^0.6.0" - checksum: 10/4429e430ebb99375fc7cd936348e4f7ba729486080ced4272091c1e386a7f5f738ea3337d8ffd4b01c2f5bc3ddde92f2c780045b66838fe98bdb79f901884643 - languageName: node - linkType: hard - -"load-tsconfig@npm:^0.2.3": - version: 0.2.5 - resolution: "load-tsconfig@npm:0.2.5" - checksum: 10/b3176f6f0c86dbdbbc7e337440a803b0b4407c55e2e1cfc53bd3db68e0211448f36428a6075ecf5e286db5d1bf791da756fc0ac4d2447717140fb6a5218ecfb4 - languageName: node - linkType: hard - -"loader-runner@npm:^4.3.1": - version: 4.3.1 - resolution: "loader-runner@npm:4.3.1" - checksum: 10/d77127497c3f91fdba351e3e91156034e6e590e9f050b40df6c38ac16c54b5c903f7e2e141e09fefd046ee96b26fb50773c695ebc0aa205a4918683b124b04ba - languageName: node - linkType: hard - -"locate-path@npm:^5.0.0": - version: 5.0.0 - resolution: "locate-path@npm:5.0.0" - dependencies: - p-locate: "npm:^4.1.0" - checksum: 10/83e51725e67517287d73e1ded92b28602e3ae5580b301fe54bfb76c0c723e3f285b19252e375712316774cf52006cb236aed5704692c32db0d5d089b69696e30 - languageName: node - linkType: hard - -"locate-path@npm:^6.0.0": - version: 6.0.0 - resolution: "locate-path@npm:6.0.0" - dependencies: - p-locate: "npm:^5.0.0" - checksum: 10/72eb661788a0368c099a184c59d2fee760b3831c9c1c33955e8a19ae4a21b4116e53fa736dc086cdeb9fce9f7cc508f2f92d2d3aae516f133e16a2bb59a39f5a - languageName: node - linkType: hard - -"lodash.camelcase@npm:^4.3.0": - version: 4.3.0 - resolution: "lodash.camelcase@npm:4.3.0" - checksum: 10/c301cc379310441dc73cd6cebeb91fb254bea74e6ad3027f9346fc43b4174385153df420ffa521654e502fd34c40ef69ca4e7d40ee7129a99e06f306032bfc65 - languageName: node - linkType: hard - -"lodash.escaperegexp@npm:^4.1.2": - version: 4.1.2 - resolution: "lodash.escaperegexp@npm:4.1.2" - checksum: 10/6d99452b1cfd6073175a9b741a9b09ece159eac463f86f02ea3bee2e2092923fce812c8d2bf446309cc52d1d61bf9af51c8118b0d7421388e6cead7bd3798f0f - languageName: node - linkType: hard - -"lodash.isequal@npm:^4.5.0": - version: 4.5.0 - resolution: "lodash.isequal@npm:4.5.0" - checksum: 10/82fc58a83a1555f8df34ca9a2cd300995ff94018ac12cc47c349655f0ae1d4d92ba346db4c19bbfc90510764e0c00ddcc985a358bdcd4b3b965abf8f2a48a214 - languageName: node - linkType: hard - -"lodash.merge@npm:^4.6.2": - version: 4.6.2 - resolution: "lodash.merge@npm:4.6.2" - checksum: 10/d0ea2dd0097e6201be083865d50c3fb54fbfbdb247d9cc5950e086c991f448b7ab0cdab0d57eacccb43473d3f2acd21e134db39f22dac2d6c9ba6bf26978e3d6 - languageName: node - linkType: hard - -"lodash@npm:^4.0.0, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21": - version: 4.17.21 - resolution: "lodash@npm:4.17.21" - checksum: 10/c08619c038846ea6ac754abd6dd29d2568aa705feb69339e836dfa8d8b09abbb2f859371e86863eda41848221f9af43714491467b5b0299122431e202bb0c532 - languageName: node - linkType: hard - -"log-symbols@npm:^3.0.0": - version: 3.0.0 - resolution: "log-symbols@npm:3.0.0" - dependencies: - chalk: "npm:^2.4.2" - checksum: 10/f2322e1452d819050b11aad247660e1494f8b2219d40a964af91d5f9af1a90636f1b3d93f2952090e42af07cc5550aecabf6c1d8ec1181207e95cb66ba112361 - languageName: node - linkType: hard - -"log-symbols@npm:^4.1.0": - version: 4.1.0 - resolution: "log-symbols@npm:4.1.0" - dependencies: - chalk: "npm:^4.1.0" - is-unicode-supported: "npm:^0.1.0" - checksum: 10/fce1497b3135a0198803f9f07464165e9eb83ed02ceb2273930a6f8a508951178d8cf4f0378e9d28300a2ed2bc49050995d2bd5f53ab716bb15ac84d58c6ef74 - languageName: node - linkType: hard - -"long@npm:^5.0.0": - version: 5.3.2 - resolution: "long@npm:5.3.2" - checksum: 10/b6b55ddae56fcce2864d37119d6b02fe28f6dd6d9e44fd22705f86a9254b9321bd69e9ffe35263b4846d54aba197c64882adcb8c543f2383c1e41284b321ea64 - languageName: node - linkType: hard - -"longest-streak@npm:^3.0.0": - version: 3.1.0 - resolution: "longest-streak@npm:3.1.0" - checksum: 10/d7f952ed004cbdb5c8bcfc4f7f5c3d65449e6c5a9e9be4505a656e3df5a57ee125f284286b4bf8ecea0c21a7b3bf2b8f9001ad506c319b9815ad6a63a47d0fd0 - languageName: node - linkType: hard - -"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0": - version: 1.4.0 - resolution: "loose-envify@npm:1.4.0" - dependencies: - js-tokens: "npm:^3.0.0 || ^4.0.0" - bin: - loose-envify: cli.js - checksum: 10/6517e24e0cad87ec9888f500c5b5947032cdfe6ef65e1c1936a0c48a524b81e65542c9c3edc91c97d5bddc806ee2a985dbc79be89215d613b1de5db6d1cfe6f4 - languageName: node - linkType: hard - -"lower-case@npm:^2.0.2": - version: 2.0.2 - resolution: "lower-case@npm:2.0.2" - dependencies: - tslib: "npm:^2.0.3" - checksum: 10/83a0a5f159ad7614bee8bf976b96275f3954335a84fad2696927f609ddae902802c4f3312d86668722e668bef41400254807e1d3a7f2e8c3eede79691aa1f010 - languageName: node - linkType: hard - -"lowercase-keys@npm:^1.0.0, lowercase-keys@npm:^1.0.1": - version: 1.0.1 - resolution: "lowercase-keys@npm:1.0.1" - checksum: 10/12ba64572dc25ae9ee30d37a11f3a91aea046c1b6b905fdf8ac77e2f268f153ed36e60d39cb3bfa47a89f31d981dae9a8cc9915124a56fe51ff01ed6e8bb68fa - languageName: node - linkType: hard - -"lowercase-keys@npm:^2.0.0": - version: 2.0.0 - resolution: "lowercase-keys@npm:2.0.0" - checksum: 10/1c233d2da35056e8c49fae8097ee061b8c799b2f02e33c2bf32f9913c7de8fb481ab04dab7df35e94156c800f5f34e99acbf32b21781d87c3aa43ef7b748b79e - languageName: node - linkType: hard - -"lru-cache@npm:^10.2.0, lru-cache@npm:^10.4.3": - version: 10.4.3 - resolution: "lru-cache@npm:10.4.3" - checksum: 10/e6e90267360476720fa8e83cc168aa2bf0311f3f2eea20a6ba78b90a885ae72071d9db132f40fda4129c803e7dcec3a6b6a6fbb44ca90b081630b810b5d6a41a - languageName: node - linkType: hard - -"lru-cache@npm:^11.0.0, lru-cache@npm:^11.1.0, lru-cache@npm:^11.2.1": - version: 11.2.4 - resolution: "lru-cache@npm:11.2.4" - checksum: 10/3b2da74c0b6653767f8164c38c4c4f4d7f0cc10c62bfa512663d94a830191ae6a5af742a8d88a8b30d5f9974652d3adae53931f32069139ad24fa2a18a199aca - languageName: node - linkType: hard - -"lru-cache@npm:^6.0.0": - version: 6.0.0 - resolution: "lru-cache@npm:6.0.0" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10/fc1fe2ee205f7c8855fa0f34c1ab0bcf14b6229e35579ec1fd1079f31d6fc8ef8eb6fd17f2f4d99788d7e339f50e047555551ebd5e434dda503696e7c6591825 - languageName: node - linkType: hard - -"lz-string@npm:^1.5.0": - version: 1.5.0 - resolution: "lz-string@npm:1.5.0" - bin: - lz-string: bin/bin.js - checksum: 10/e86f0280e99a8d8cd4eef24d8601ddae15ce54e43ac9990dfcb79e1e081c255ad24424a30d78d2ad8e51a8ce82a66a930047fed4b4aa38c6f0b392ff9300edfc - languageName: node - linkType: hard - -"madge@npm:^6.1.0": - version: 6.1.0 - resolution: "madge@npm:6.1.0" - dependencies: - chalk: "npm:^4.1.1" - commander: "npm:^7.2.0" - commondir: "npm:^1.0.1" - debug: "npm:^4.3.1" - dependency-tree: "npm:^9.0.0" - detective-amd: "npm:^4.0.1" - detective-cjs: "npm:^4.0.0" - detective-es6: "npm:^3.0.0" - detective-less: "npm:^1.0.2" - detective-postcss: "npm:^6.1.0" - detective-sass: "npm:^4.0.1" - detective-scss: "npm:^3.0.0" - detective-stylus: "npm:^2.0.1" - detective-typescript: "npm:^9.0.0" - ora: "npm:^5.4.1" - pluralize: "npm:^8.0.0" - precinct: "npm:^8.1.0" - pretty-ms: "npm:^7.0.1" - rc: "npm:^1.2.7" - stream-to-array: "npm:^2.3.0" - ts-graphviz: "npm:^1.5.0" - walkdir: "npm:^0.4.1" - peerDependencies: - typescript: ^3.9.5 || ^4.9.5 || ^5 - peerDependenciesMeta: - typescript: - optional: true - bin: - madge: bin/cli.js - checksum: 10/80d3d549135e302109a5b98ab6cb088b44579779067365008368a042578bca0dfb1a76c697a1e9f63d5d2037724628e66b9dbd3efb0126555dd9d626a865d6d0 - languageName: node - linkType: hard - -"mafmt@npm:^7.0.0": - version: 7.1.0 - resolution: "mafmt@npm:7.1.0" - dependencies: - multiaddr: "npm:^7.3.0" - checksum: 10/b81405cb133b8e0a6787cc0e1529ddaf6a47478811a14190c048e5a6c260f99e118b3df00ca60caccbe20a63b5eacf8ffe29950102932137ea36f962196fcea4 - languageName: node - linkType: hard - -"magic-string@npm:^0.25.7": - version: 0.25.9 - resolution: "magic-string@npm:0.25.9" - dependencies: - sourcemap-codec: "npm:^1.4.8" - checksum: 10/87a14b944bd169821cbd54b169a7ab6b0348fd44b5497266dc555dd70280744e9e88047da9dcb95675bdc23b1ce33f13398b0f70b3be7b858225ccb1d185ff51 - languageName: node - linkType: hard - -"magic-string@npm:^0.30.17, magic-string@npm:^0.30.3": - version: 0.30.21 - resolution: "magic-string@npm:0.30.21" - dependencies: - "@jridgewell/sourcemap-codec": "npm:^1.5.5" - checksum: 10/57d5691f41ed40d962d8bd300148114f53db67fadbff336207db10a99f2bdf4a1be9cac3a68ee85dba575912ee1d4402e4396408196ec2d3afd043b076156221 - languageName: node - linkType: hard - -"make-dir@npm:^3.0.0, make-dir@npm:^3.0.2": - version: 3.1.0 - resolution: "make-dir@npm:3.1.0" - dependencies: - semver: "npm:^6.0.0" - checksum: 10/484200020ab5a1fdf12f393fe5f385fc8e4378824c940fba1729dcd198ae4ff24867bc7a5646331e50cead8abff5d9270c456314386e629acec6dff4b8016b78 - languageName: node - linkType: hard - -"make-fetch-happen@npm:^15.0.0": - version: 15.0.3 - resolution: "make-fetch-happen@npm:15.0.3" - dependencies: - "@npmcli/agent": "npm:^4.0.0" - cacache: "npm:^20.0.1" - http-cache-semantics: "npm:^4.1.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^5.0.0" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - negotiator: "npm:^1.0.0" - proc-log: "npm:^6.0.0" - promise-retry: "npm:^2.0.1" - ssri: "npm:^13.0.0" - checksum: 10/78da4fc1df83cb596e2bae25aa0653b8a9c6cbdd6674a104894e03be3acfcd08c70b78f06ef6407fbd6b173f6a60672480d78641e693d05eb71c09c13ee35278 - languageName: node - linkType: hard - -"map-obj@npm:^1.0.0": - version: 1.0.1 - resolution: "map-obj@npm:1.0.1" - checksum: 10/f8e6fc7f6137329c376c4524f6d25b3c243c17019bc8f621d15a2dcb855919e482a9298a78ae58b00dbd0e76b640bf6533aa343a9e993cfc16e0346a2507e7f8 - languageName: node - linkType: hard - -"map-obj@npm:^4.0.0": - version: 4.3.0 - resolution: "map-obj@npm:4.3.0" - checksum: 10/fbc554934d1a27a1910e842bc87b177b1a556609dd803747c85ece420692380827c6ae94a95cce4407c054fa0964be3bf8226f7f2cb2e9eeee432c7c1985684e - languageName: node - linkType: hard - -"matcher@npm:^3.0.0": - version: 3.0.0 - resolution: "matcher@npm:3.0.0" - dependencies: - escape-string-regexp: "npm:^4.0.0" - checksum: 10/8bee1a7ab7609c2c21d9c9254b6785fa708eadf289032b556d57a34e98fcd4c537659a004dafee6ce80ab157099e645c199dc52678dff1e7fb0a6684e0da4dbe - languageName: node - linkType: hard - -"math-intrinsics@npm:^1.1.0": - version: 1.1.0 - resolution: "math-intrinsics@npm:1.1.0" - checksum: 10/11df2eda46d092a6035479632e1ec865b8134bdfc4bd9e571a656f4191525404f13a283a515938c3a8de934dbfd9c09674d9da9fa831e6eb7e22b50b197d2edd - languageName: node - linkType: hard - -"md5.js@npm:^1.3.4": - version: 1.3.5 - resolution: "md5.js@npm:1.3.5" - dependencies: - hash-base: "npm:^3.0.0" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.1.2" - checksum: 10/098494d885684bcc4f92294b18ba61b7bd353c23147fbc4688c75b45cb8590f5a95fd4584d742415dcc52487f7a1ef6ea611cfa1543b0dc4492fe026357f3f0c - languageName: node - linkType: hard - -"mdast-util-from-markdown@npm:^2.0.0": - version: 2.0.2 - resolution: "mdast-util-from-markdown@npm:2.0.2" - dependencies: - "@types/mdast": "npm:^4.0.0" - "@types/unist": "npm:^3.0.0" - decode-named-character-reference: "npm:^1.0.0" - devlop: "npm:^1.0.0" - mdast-util-to-string: "npm:^4.0.0" - micromark: "npm:^4.0.0" - micromark-util-decode-numeric-character-reference: "npm:^2.0.0" - micromark-util-decode-string: "npm:^2.0.0" - micromark-util-normalize-identifier: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - unist-util-stringify-position: "npm:^4.0.0" - checksum: 10/69b207913fbcc0469f8c59d922af4d5509b79e809d77c9bd4781543a907fe2ecc8e6433ce0707066a27b117b13f38af3aae4f2d085e18ebd2d3ad5f1a5647902 - languageName: node - linkType: hard - -"mdast-util-mdx-expression@npm:^2.0.0": - version: 2.0.1 - resolution: "mdast-util-mdx-expression@npm:2.0.1" - dependencies: - "@types/estree-jsx": "npm:^1.0.0" - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - devlop: "npm:^1.0.0" - mdast-util-from-markdown: "npm:^2.0.0" - mdast-util-to-markdown: "npm:^2.0.0" - checksum: 10/70e860f8ee22c4f478449942750055d649d4380bf43b235d0710af510189d285fb057e401d20b59596d9789f4e270fce08ca892dc849676f9e3383b991d52485 - languageName: node - linkType: hard - -"mdast-util-mdx-jsx@npm:^3.0.0": - version: 3.2.0 - resolution: "mdast-util-mdx-jsx@npm:3.2.0" - dependencies: - "@types/estree-jsx": "npm:^1.0.0" - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - "@types/unist": "npm:^3.0.0" - ccount: "npm:^2.0.0" - devlop: "npm:^1.1.0" - mdast-util-from-markdown: "npm:^2.0.0" - mdast-util-to-markdown: "npm:^2.0.0" - parse-entities: "npm:^4.0.0" - stringify-entities: "npm:^4.0.0" - unist-util-stringify-position: "npm:^4.0.0" - vfile-message: "npm:^4.0.0" - checksum: 10/62cd650a522e5d72ea6afd6d4a557fc86525b802d097a29a2fbe17d22e7b97c502a580611873e4d685777fe77c6ff8d39fb6e37d026b3acbc86c3b24927f4ad9 - languageName: node - linkType: hard - -"mdast-util-mdxjs-esm@npm:^2.0.0": - version: 2.0.1 - resolution: "mdast-util-mdxjs-esm@npm:2.0.1" - dependencies: - "@types/estree-jsx": "npm:^1.0.0" - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - devlop: "npm:^1.0.0" - mdast-util-from-markdown: "npm:^2.0.0" - mdast-util-to-markdown: "npm:^2.0.0" - checksum: 10/05474226e163a3f407fccb5780b0d8585a95e548e5da4a85227df43f281b940c7941a9a9d4af1be4f885fe554731647addb057a728e87aa1f503ff9cc72c9163 - languageName: node - linkType: hard - -"mdast-util-phrasing@npm:^4.0.0": - version: 4.1.0 - resolution: "mdast-util-phrasing@npm:4.1.0" - dependencies: - "@types/mdast": "npm:^4.0.0" - unist-util-is: "npm:^6.0.0" - checksum: 10/3a97533e8ad104a422f8bebb34b3dde4f17167b8ed3a721cf9263c7416bd3447d2364e6d012a594aada40cac9e949db28a060bb71a982231693609034ed5324e - languageName: node - linkType: hard - -"mdast-util-to-hast@npm:^13.0.0": - version: 13.2.1 - resolution: "mdast-util-to-hast@npm:13.2.1" - dependencies: - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - "@ungap/structured-clone": "npm:^1.0.0" - devlop: "npm:^1.0.0" - micromark-util-sanitize-uri: "npm:^2.0.0" - trim-lines: "npm:^3.0.0" - unist-util-position: "npm:^5.0.0" - unist-util-visit: "npm:^5.0.0" - vfile: "npm:^6.0.0" - checksum: 10/8fddf5e66ea24dc85c8fe1cc2acd8fbe36e9d4f21b06322e156431fd71385eab9d2d767646f50276ca4ce3684cb967c4e226c60c3fff3428feb687ccb598fa39 - languageName: node - linkType: hard - -"mdast-util-to-markdown@npm:^2.0.0": - version: 2.1.2 - resolution: "mdast-util-to-markdown@npm:2.1.2" - dependencies: - "@types/mdast": "npm:^4.0.0" - "@types/unist": "npm:^3.0.0" - longest-streak: "npm:^3.0.0" - mdast-util-phrasing: "npm:^4.0.0" - mdast-util-to-string: "npm:^4.0.0" - micromark-util-classify-character: "npm:^2.0.0" - micromark-util-decode-string: "npm:^2.0.0" - unist-util-visit: "npm:^5.0.0" - zwitch: "npm:^2.0.0" - checksum: 10/ab494a32f1ec90f0a502970b403b1847a10f3ba635adddb66ce70994cc47b4924c6c05078ddd29a8c2c5c9bc8c0bcc20e5fc1ef0fcb9b0cb9c0589a000817f1c - languageName: node - linkType: hard - -"mdast-util-to-string@npm:^4.0.0": - version: 4.0.0 - resolution: "mdast-util-to-string@npm:4.0.0" - dependencies: - "@types/mdast": "npm:^4.0.0" - checksum: 10/f4a5dbb9ea03521d7d3e26a9ba5652a1d6fbd55706dddd2155427517085688830e0ecd3f12418cfd40892640886eb39a4034c3c967d85e01e2fa64cfb53cff05 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10/38e0984db39139604756903a01397e29e17dcb04207bb3e081412ce725ab17338ecc47220c1b186b6bbe79a658aad1b0d41142884f5a481f36290cdefbe6aa46 - languageName: node - linkType: hard - -"memfs@npm:^3.4.3": - version: 3.5.3 - resolution: "memfs@npm:3.5.3" - dependencies: - fs-monkey: "npm:^1.0.4" - checksum: 10/7c9cdb453a6b06e87f11e2dbe6c518fd3c1c1581b370ffa24f42f3fd5b1db8c2203f596e43321a0032963f3e9b66400f2c3cf043904ac496d6ae33eafd0878fe - languageName: node - linkType: hard - -"memoize-one@npm:^5.1.1": - version: 5.2.1 - resolution: "memoize-one@npm:5.2.1" - checksum: 10/b7141dc148b5c6fdd51e77ecf0421fd2581681eb8756e0b3dfbd4fe765b5e2b5a6bc90214bb6f19a96b6aed44de17eda3407142a7be9e24ccd0774bbd9874d1b - languageName: node - linkType: hard - -"meow@npm:^7.0.1": - version: 7.1.1 - resolution: "meow@npm:7.1.1" - dependencies: - "@types/minimist": "npm:^1.2.0" - camelcase-keys: "npm:^6.2.2" - decamelize-keys: "npm:^1.1.0" - hard-rejection: "npm:^2.1.0" - minimist-options: "npm:4.1.0" - normalize-package-data: "npm:^2.5.0" - read-pkg-up: "npm:^7.0.1" - redent: "npm:^3.0.0" - trim-newlines: "npm:^3.0.0" - type-fest: "npm:^0.13.1" - yargs-parser: "npm:^18.1.3" - checksum: 10/1a8ccde33f94457a575dbde9de0b0682da52ccd92e96fd91f45dc31ad20e5e50141f8d2e2e22657a179ef113fd4cb5caca234c26cf50993dc307d4f201a580ff - languageName: node - linkType: hard - -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 10/52117adbe0313d5defa771c9993fe081e2d2df9b840597e966aadafde04ae8d0e3da46bac7ca4efc37d4d2b839436582659cd49c6a43eacb3fe3050896a105d1 - languageName: node - linkType: hard - -"merge-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "merge-stream@npm:2.0.0" - checksum: 10/6fa4dcc8d86629705cea944a4b88ef4cb0e07656ebf223fa287443256414283dd25d91c1cd84c77987f2aec5927af1a9db6085757cb43d90eb170ebf4b47f4f4 - languageName: node - linkType: hard - -"merge2@npm:^1.3.0, merge2@npm:^1.4.1": - version: 1.4.1 - resolution: "merge2@npm:1.4.1" - checksum: 10/7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 - languageName: node - linkType: hard - -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10/a385dd974faa34b5dd021b2bbf78c722881bf6f003bfe6d391d7da3ea1ed625d1ff10ddd13c57531f628b3e785be38d3eed10ad03cebd90b76932413df9a1820 - languageName: node - linkType: hard - -"micro-base@npm:^0.9.0": - version: 0.9.0 - resolution: "micro-base@npm:0.9.0" - checksum: 10/4e90746ea0ddfcce1aa2d60776d2daa8eae9687f319165ec594d20eac002043b45f248e900a5789844f78f53e625dd71c06059944bf676936ddd14b2800a9b2b - languageName: node - linkType: hard - -"micromark-core-commonmark@npm:^2.0.0": - version: 2.0.3 - resolution: "micromark-core-commonmark@npm:2.0.3" - dependencies: - decode-named-character-reference: "npm:^1.0.0" - devlop: "npm:^1.0.0" - micromark-factory-destination: "npm:^2.0.0" - micromark-factory-label: "npm:^2.0.0" - micromark-factory-space: "npm:^2.0.0" - micromark-factory-title: "npm:^2.0.0" - micromark-factory-whitespace: "npm:^2.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-chunked: "npm:^2.0.0" - micromark-util-classify-character: "npm:^2.0.0" - micromark-util-html-tag-name: "npm:^2.0.0" - micromark-util-normalize-identifier: "npm:^2.0.0" - micromark-util-resolve-all: "npm:^2.0.0" - micromark-util-subtokenize: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/2b98b9eba1463850ebd8f338f966bd2113dafe764b490ebee3dccab3764d3c48b53fe67673297530e56bf54f58de27dfd1952ed79c5b4e32047cb7f29bd807f2 - languageName: node - linkType: hard - -"micromark-factory-destination@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-factory-destination@npm:2.0.1" - dependencies: - micromark-util-character: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/9c4baa9ca2ed43c061bbf40ddd3d85154c2a0f1f485de9dea41d7dd2ad994ebb02034a003b2c1dbe228ba83a0576d591f0e90e0bf978713f84ee7d7f3aa98320 - languageName: node - linkType: hard - -"micromark-factory-label@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-factory-label@npm:2.0.1" - dependencies: - devlop: "npm:^1.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/bd03f5a75f27cdbf03b894ddc5c4480fc0763061fecf9eb927d6429233c930394f223969a99472df142d570c831236134de3dc23245d23d9f046f9d0b623b5c2 - languageName: node - linkType: hard - -"micromark-factory-space@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-factory-space@npm:2.0.1" - dependencies: - micromark-util-character: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/1bd68a017c1a66f4787506660c1e1c5019169aac3b1cb075d49ac5e360e0b2065e984d4e1d6e9e52a9d44000f2fa1c98e66a743d7aae78b4b05616bf3242ed71 - languageName: node - linkType: hard - -"micromark-factory-title@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-factory-title@npm:2.0.1" - dependencies: - micromark-factory-space: "npm:^2.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/b4d2e4850a8ba0dff25ce54e55a3eb0d43dda88a16293f53953153288f9d84bcdfa8ca4606b2cfbb4f132ea79587bbb478a73092a349f893f5264fbcdbce2ee1 - languageName: node - linkType: hard - -"micromark-factory-whitespace@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-factory-whitespace@npm:2.0.1" - dependencies: - micromark-factory-space: "npm:^2.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/67b3944d012a42fee9e10e99178254a04d48af762b54c10a50fcab988688799993efb038daf9f5dbc04001a97b9c1b673fc6f00e6a56997877ab25449f0c8650 - languageName: node - linkType: hard - -"micromark-util-character@npm:^2.0.0": - version: 2.1.1 - resolution: "micromark-util-character@npm:2.1.1" - dependencies: - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/85da8f8e5f7ed16046575bef5b0964ca3fca3162b87b74ae279f1e48eb7160891313eb64f04606baed81c58b514dbdb64f1a9d110a51baaaa79225d72a7b1852 - languageName: node - linkType: hard - -"micromark-util-chunked@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-chunked@npm:2.0.1" - dependencies: - micromark-util-symbol: "npm:^2.0.0" - checksum: 10/f8cb2a67bcefe4bd2846d838c97b777101f0043b9f1de4f69baf3e26bb1f9885948444e3c3aec66db7595cad8173bd4567a000eb933576c233d54631f6323fe4 - languageName: node - linkType: hard - -"micromark-util-classify-character@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-classify-character@npm:2.0.1" - dependencies: - micromark-util-character: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/4d8bbe3a6dbf69ac0fc43516866b5bab019fe3f4568edc525d4feaaaf78423fa54e6b6732b5bccbeed924455279a3758ffc9556954aafb903982598a95a02704 - languageName: node - linkType: hard - -"micromark-util-combine-extensions@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-combine-extensions@npm:2.0.1" - dependencies: - micromark-util-chunked: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/5d22fb9ee37e8143adfe128a72b50fa09568c2cc553b3c76160486c96dbbb298c5802a177a10a215144a604b381796071b5d35be1f2c2b2ee17995eda92f0c8e - languageName: node - linkType: hard - -"micromark-util-decode-numeric-character-reference@npm:^2.0.0": - version: 2.0.2 - resolution: "micromark-util-decode-numeric-character-reference@npm:2.0.2" - dependencies: - micromark-util-symbol: "npm:^2.0.0" - checksum: 10/ee11c8bde51e250e302050474c4a2adca094bca05c69f6cdd241af12df285c48c88d19ee6e022b9728281c280be16328904adca994605680c43af56019f4b0b6 - languageName: node - linkType: hard - -"micromark-util-decode-string@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-decode-string@npm:2.0.1" - dependencies: - decode-named-character-reference: "npm:^1.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-decode-numeric-character-reference: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - checksum: 10/2f517e4c613609445db4b9a17f8c77832f55fb341620a8fd598f083c1227027485d601c2021c2f8f9883210b8671e7b3990f0c6feeecd49a136475465808c380 - languageName: node - linkType: hard - -"micromark-util-encode@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-encode@npm:2.0.1" - checksum: 10/be890b98e78dd0cdd953a313f4148c4692cc2fb05533e56fef5f421287d3c08feee38ca679f318e740530791fc251bfe8c80efa926fcceb4419b269c9343d226 - languageName: node - linkType: hard - -"micromark-util-html-tag-name@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-html-tag-name@npm:2.0.1" - checksum: 10/dea365f5ad28ad74ff29fcb581f7b74fc1f80271c5141b3b2bc91c454cbb6dfca753f28ae03730d657874fcbd89d0494d0e3965dfdca06d9855f467c576afa9d - languageName: node - linkType: hard - -"micromark-util-normalize-identifier@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-normalize-identifier@npm:2.0.1" - dependencies: - micromark-util-symbol: "npm:^2.0.0" - checksum: 10/1eb9a289d7da067323df9fdc78bfa90ca3207ad8fd893ca02f3133e973adcb3743b233393d23d95c84ccaf5d220ae7f5a28402a644f135dcd4b8cfa60a7b5f84 - languageName: node - linkType: hard - -"micromark-util-resolve-all@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-resolve-all@npm:2.0.1" - dependencies: - micromark-util-types: "npm:^2.0.0" - checksum: 10/9275f3ddb6c26f254dd2158e66215d050454b279707a7d9ce5a3cd0eba23201021cedcb78ae1a746c1b23227dcc418ee40dd074ade195359506797a5493550cc - languageName: node - linkType: hard - -"micromark-util-sanitize-uri@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-sanitize-uri@npm:2.0.1" - dependencies: - micromark-util-character: "npm:^2.0.0" - micromark-util-encode: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - checksum: 10/064c72abfc9777864ca0521a016dde62ab3e7af5215d10fd27e820798500d5d305da638459c589275c1a093cf588f493cc2f65273deac5a5331ecefc6c9ea78a - languageName: node - linkType: hard - -"micromark-util-subtokenize@npm:^2.0.0": - version: 2.1.0 - resolution: "micromark-util-subtokenize@npm:2.1.0" - dependencies: - devlop: "npm:^1.0.0" - micromark-util-chunked: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/5f18c70cb952a414a4d161f5d6a5254d33c7dfcd56577e592ef2e172a0414058d3531a3554f43538f14e243592fffbc2e68ddaf6a41c54577b3ba7beb555d3dc - languageName: node - linkType: hard - -"micromark-util-symbol@npm:^2.0.0": - version: 2.0.1 - resolution: "micromark-util-symbol@npm:2.0.1" - checksum: 10/497e6d95fc21c2bb5265b78a6a60db518c376dc438739b2e7d4aee6f9f165222711724b456c63163314f32b8eea68a064687711d41e986262926eab23ddb9229 - languageName: node - linkType: hard - -"micromark-util-types@npm:^2.0.0": - version: 2.0.2 - resolution: "micromark-util-types@npm:2.0.2" - checksum: 10/a9eb067bd9384eab61942285d53738aa22f3fef4819eaf20249bec6ec13f1e4da2800230fd0ceb7e705108987aa9062fe3e9a8e5e48aa60180db80b9489dc3e2 - languageName: node - linkType: hard - -"micromark@npm:^4.0.0": - version: 4.0.2 - resolution: "micromark@npm:4.0.2" - dependencies: - "@types/debug": "npm:^4.0.0" - debug: "npm:^4.0.0" - decode-named-character-reference: "npm:^1.0.0" - devlop: "npm:^1.0.0" - micromark-core-commonmark: "npm:^2.0.0" - micromark-factory-space: "npm:^2.0.0" - micromark-util-character: "npm:^2.0.0" - micromark-util-chunked: "npm:^2.0.0" - micromark-util-combine-extensions: "npm:^2.0.0" - micromark-util-decode-numeric-character-reference: "npm:^2.0.0" - micromark-util-encode: "npm:^2.0.0" - micromark-util-normalize-identifier: "npm:^2.0.0" - micromark-util-resolve-all: "npm:^2.0.0" - micromark-util-sanitize-uri: "npm:^2.0.0" - micromark-util-subtokenize: "npm:^2.0.0" - micromark-util-symbol: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - checksum: 10/1b85e49c8f71013df2d07a59e477deb72cd325d41cc15f35b2aa52b8b7a93fed45498ce3e18ed34464a9afa9ba8a9210b2509454b2a2d16ac06c7429f562bfac - languageName: node - linkType: hard - -"micromatch@npm:^4.0.0, micromatch@npm:^4.0.2, micromatch@npm:^4.0.8": - version: 4.0.8 - resolution: "micromatch@npm:4.0.8" - dependencies: - braces: "npm:^3.0.3" - picomatch: "npm:^2.3.1" - checksum: 10/6bf2a01672e7965eb9941d1f02044fad2bd12486b5553dc1116ff24c09a8723157601dc992e74c911d896175918448762df3b3fd0a6b61037dd1a9766ddfbf58 - languageName: node - linkType: hard - -"miller-rabin@npm:^4.0.0": - version: 4.0.1 - resolution: "miller-rabin@npm:4.0.1" - dependencies: - bn.js: "npm:^4.0.0" - brorand: "npm:^1.0.1" - bin: - miller-rabin: bin/miller-rabin - checksum: 10/2a38ba9d1e878d94ee8a8ab3505b40e8d44fb9700a7716570fe4c8ca7e20d49b69aea579106580618c877cc6ff969eff71705042fafb47573736bf89404417bc - languageName: node - linkType: hard - -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 10/54bb60bf39e6f8689f6622784e668a3d7f8bed6b0d886f5c3c446cb3284be28b30bf707ed05d0fe44a036f8469976b2629bbea182684977b084de9da274694d7 - languageName: node - linkType: hard - -"mime-db@npm:>= 1.43.0 < 2": - version: 1.54.0 - resolution: "mime-db@npm:1.54.0" - checksum: 10/9e7834be3d66ae7f10eaa69215732c6d389692b194f876198dca79b2b90cbf96688d9d5d05ef7987b20f749b769b11c01766564264ea5f919c88b32a29011311 - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:^2.1.27, mime-types@npm:^2.1.31, mime-types@npm:^2.1.35, mime-types@npm:~2.1.17, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: "npm:1.52.0" - checksum: 10/89aa9651b67644035de2784a6e665fc685d79aba61857e02b9c8758da874a754aed4a9aced9265f5ed1171fd934331e5516b84a7f0218031b6fa0270eca1e51a - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: 10/b7d98bb1e006c0e63e2c91b590fe1163b872abf8f7ef224d53dd31499c2197278a6d3d0864c45239b1a93d22feaf6f9477e9fc847eef945838150b8c02d03170 - languageName: node - linkType: hard - -"mime@npm:^2.5.2": - version: 2.6.0 - resolution: "mime@npm:2.6.0" - bin: - mime: cli.js - checksum: 10/7da117808b5cd0203bb1b5e33445c330fe213f4d8ee2402a84d62adbde9716ca4fb90dd6d9ab4e77a4128c6c5c24a9c4c9f6a4d720b095b1b342132d02dba58d - languageName: node - linkType: hard - -"mime@npm:^3.0.0": - version: 3.0.0 - resolution: "mime@npm:3.0.0" - bin: - mime: cli.js - checksum: 10/b2d31580deb58be89adaa1877cbbf152b7604b980fd7ef8f08b9e96bfedf7d605d9c23a8ba62aa12c8580b910cd7c1d27b7331d0f40f7a14e17d5a0bbec3b49f - languageName: node - linkType: hard - -"mimic-fn@npm:^2.1.0": - version: 2.1.0 - resolution: "mimic-fn@npm:2.1.0" - checksum: 10/d2421a3444848ce7f84bd49115ddacff29c15745db73f54041edc906c14b131a38d05298dae3081667627a59b2eb1ca4b436ff2e1b80f69679522410418b478a - languageName: node - linkType: hard - -"mimic-response@npm:^1.0.0, mimic-response@npm:^1.0.1": - version: 1.0.1 - resolution: "mimic-response@npm:1.0.1" - checksum: 10/034c78753b0e622bc03c983663b1cdf66d03861050e0c8606563d149bc2b02d63f62ce4d32be4ab50d0553ae0ffe647fc34d1f5281184c6e1e8cf4d85e8d9823 - languageName: node - linkType: hard - -"mimic-response@npm:^3.1.0": - version: 3.1.0 - resolution: "mimic-response@npm:3.1.0" - checksum: 10/7e719047612411fe071332a7498cf0448bbe43c485c0d780046c76633a771b223ff49bd00267be122cedebb897037fdb527df72335d0d0f74724604ca70b37ad - languageName: node - linkType: hard - -"min-indent@npm:^1.0.0": - version: 1.0.1 - resolution: "min-indent@npm:1.0.1" - checksum: 10/bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 - languageName: node - linkType: hard - -"mini-css-extract-plugin@npm:^2.7.6": - version: 2.9.4 - resolution: "mini-css-extract-plugin@npm:2.9.4" - dependencies: - schema-utils: "npm:^4.0.0" - tapable: "npm:^2.2.1" - peerDependencies: - webpack: ^5.0.0 - checksum: 10/24a0418dc49baed58a10a8b81e4d2fe474e89ccdc9370a7c69bd0aeeb5a70d2b4ee12f33b98c95a68423c79c1de7cc2a25aaa2105600b712e7d594cb0d56c9d4 - languageName: node - linkType: hard - -"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-assert@npm:1.0.1" - checksum: 10/cc7974a9268fbf130fb055aff76700d7e2d8be5f761fb5c60318d0ed010d839ab3661a533ad29a5d37653133385204c503bfac995aaa4236f4e847461ea32ba7 - languageName: node - linkType: hard - -"minimalistic-crypto-utils@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-crypto-utils@npm:1.0.1" - checksum: 10/6e8a0422b30039406efd4c440829ea8f988845db02a3299f372fceba56ffa94994a9c0f2fd70c17f9969eedfbd72f34b5070ead9656a34d3f71c0bd72583a0ed - languageName: node - linkType: hard - -"minimatch@npm:2 || 3, minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": - version: 3.1.2 - resolution: "minimatch@npm:3.1.2" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10/e0b25b04cd4ec6732830344e5739b13f8690f8a012d73445a4a19fbc623f5dd481ef7a5827fde25954cd6026fede7574cc54dc4643c99d6c6b653d6203f94634 - languageName: node - linkType: hard - -"minimatch@npm:9.0.3": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10/c81b47d28153e77521877649f4bab48348d10938df9e8147a58111fe00ef89559a2938de9f6632910c4f7bf7bb5cd81191a546167e58d357f0cfb1e18cecc1c5 - languageName: node - linkType: hard - -"minimatch@npm:^10.1.1": - version: 10.1.1 - resolution: "minimatch@npm:10.1.1" - dependencies: - "@isaacs/brace-expansion": "npm:^5.0.0" - checksum: 10/110f38921ea527022e90f7a5f43721838ac740d0a0c26881c03b57c261354fb9a0430e40b2c56dfcea2ef3c773768f27210d1106f1f2be19cde3eea93f26f45e - languageName: node - linkType: hard - -"minimatch@npm:^5.0.1, minimatch@npm:^5.1.0, minimatch@npm:^5.1.1": - version: 5.1.6 - resolution: "minimatch@npm:5.1.6" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10/126b36485b821daf96d33b5c821dac600cc1ab36c87e7a532594f9b1652b1fa89a1eebcaad4dff17c764dce1a7ac1531327f190fed5f97d8f6e5f889c116c429 - languageName: node - linkType: hard - -"minimatch@npm:^9.0.4": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10/dd6a8927b063aca6d910b119e1f2df6d2ce7d36eab91de83167dd136bb85e1ebff97b0d3de1cb08bd1f7e018ca170b4962479fefab5b2a69e2ae12cb2edc8348 - languageName: node - linkType: hard - -"minimist-options@npm:4.1.0": - version: 4.1.0 - resolution: "minimist-options@npm:4.1.0" - dependencies: - arrify: "npm:^1.0.1" - is-plain-obj: "npm:^1.1.0" - kind-of: "npm:^6.0.3" - checksum: 10/8c040b3068811e79de1140ca2b708d3e203c8003eb9a414c1ab3cd467fc5f17c9ca02a5aef23bedc51a7f8bfbe77f87e9a7e31ec81fba304cda675b019496f4e - languageName: node - linkType: hard - -"minimist@npm:^1.2.0, minimist@npm:^1.2.3, minimist@npm:^1.2.5, minimist@npm:^1.2.6": - version: 1.2.8 - resolution: "minimist@npm:1.2.8" - checksum: 10/908491b6cc15a6c440ba5b22780a0ba89b9810e1aea684e253e43c4e3b8d56ec1dcdd7ea96dde119c29df59c936cde16062159eae4225c691e19c70b432b6e6f - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10/b251bceea62090f67a6cced7a446a36f4cd61ee2d5cea9aee7fff79ba8030e416327a1c5aa2908dc22629d06214b46d88fdab8c51ac76bacbf5703851b5ad342 - languageName: node - linkType: hard - -"minipass-fetch@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass-fetch@npm:5.0.0" - dependencies: - encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" - minipass-sized: "npm:^1.0.3" - minizlib: "npm:^3.0.1" - dependenciesMeta: - encoding: - optional: true - checksum: 10/4fb7dca630a64e6970a8211dade505bfe260d0b8d60beb348dcdfb95fe35ef91d977b29963929c9017ae0805686aa3f413107dc6bc5deac9b9e26b0b41c3b86c - languageName: node - linkType: hard - -"minipass-flush@npm:^1.0.5": - version: 1.0.5 - resolution: "minipass-flush@npm:1.0.5" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10/56269a0b22bad756a08a94b1ffc36b7c9c5de0735a4dd1ab2b06c066d795cfd1f0ac44a0fcae13eece5589b908ecddc867f04c745c7009be0b566421ea0944cf - languageName: node - linkType: hard - -"minipass-pipeline@npm:^1.2.4": - version: 1.2.4 - resolution: "minipass-pipeline@npm:1.2.4" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10/b14240dac0d29823c3d5911c286069e36d0b81173d7bdf07a7e4a91ecdef92cdff4baaf31ea3746f1c61e0957f652e641223970870e2353593f382112257971b - languageName: node - linkType: hard - -"minipass-sized@npm:^1.0.3": - version: 1.0.3 - resolution: "minipass-sized@npm:1.0.3" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10/40982d8d836a52b0f37049a0a7e5d0f089637298e6d9b45df9c115d4f0520682a78258905e5c8b180fb41b593b0a82cc1361d2c74b45f7ada66334f84d1ecfdd - languageName: node - linkType: hard - -"minipass@npm:^3.0.0": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10/a5c6ef069f70d9a524d3428af39f2b117ff8cd84172e19b754e7264a33df460873e6eb3d6e55758531580970de50ae950c496256bb4ad3691a2974cddff189f0 - languageName: node - linkType: hard - -"minipass@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass@npm:5.0.0" - checksum: 10/61682162d29f45d3152b78b08bab7fb32ca10899bc5991ffe98afc18c9e9543bd1e3be94f8b8373ba6262497db63607079dc242ea62e43e7b2270837b7347c93 - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": - version: 7.1.2 - resolution: "minipass@npm:7.1.2" - checksum: 10/c25f0ee8196d8e6036661104bacd743785b2599a21de5c516b32b3fa2b83113ac89a2358465bc04956baab37ffb956ae43be679b2262bf7be15fce467ccd7950 - languageName: node - linkType: hard - -"minizlib@npm:^2.1.1": - version: 2.1.2 - resolution: "minizlib@npm:2.1.2" - dependencies: - minipass: "npm:^3.0.0" - yallist: "npm:^4.0.0" - checksum: 10/ae0f45436fb51344dcb87938446a32fbebb540d0e191d63b35e1c773d47512e17307bf54aa88326cc6d176594d00e4423563a091f7266c2f9a6872cdc1e234d1 - languageName: node - linkType: hard - -"minizlib@npm:^3.0.1, minizlib@npm:^3.1.0": - version: 3.1.0 - resolution: "minizlib@npm:3.1.0" - dependencies: - minipass: "npm:^7.1.2" - checksum: 10/f47365cc2cb7f078cbe7e046eb52655e2e7e97f8c0a9a674f4da60d94fb0624edfcec9b5db32e8ba5a99a5f036f595680ae6fe02a262beaa73026e505cc52f99 - languageName: node - linkType: hard - -"mkdirp-classic@npm:^0.5.2, mkdirp-classic@npm:^0.5.3": - version: 0.5.3 - resolution: "mkdirp-classic@npm:0.5.3" - checksum: 10/3f4e088208270bbcc148d53b73e9a5bd9eef05ad2cbf3b3d0ff8795278d50dd1d11a8ef1875ff5aea3fa888931f95bfcb2ad5b7c1061cfefd6284d199e6776ac - languageName: node - linkType: hard - -"mkdirp@npm:^0.5.0, mkdirp@npm:^0.5.1": - version: 0.5.6 - resolution: "mkdirp@npm:0.5.6" - dependencies: - minimist: "npm:^1.2.6" - bin: - mkdirp: bin/cmd.js - checksum: 10/0c91b721bb12c3f9af4b77ebf73604baf350e64d80df91754dc509491ae93bf238581e59c7188360cec7cb62fc4100959245a42cfe01834efedc5e9d068376c2 - languageName: node - linkType: hard - -"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": - version: 1.0.4 - resolution: "mkdirp@npm:1.0.4" - bin: - mkdirp: bin/cmd.js - checksum: 10/d71b8dcd4b5af2fe13ecf3bd24070263489404fe216488c5ba7e38ece1f54daf219e72a833a3a2dc404331e870e9f44963a33399589490956bff003a3404d3b2 - languageName: node - linkType: hard - -"mkdirp@npm:^3.0.1": - version: 3.0.1 - resolution: "mkdirp@npm:3.0.1" - bin: - mkdirp: dist/cjs/src/bin.js - checksum: 10/16fd79c28645759505914561e249b9a1f5fe3362279ad95487a4501e4467abeb714fd35b95307326b8fd03f3c7719065ef11a6f97b7285d7888306d1bd2232ba - languageName: node - linkType: hard - -"mlly@npm:^1.7.4": - version: 1.8.0 - resolution: "mlly@npm:1.8.0" - dependencies: - acorn: "npm:^8.15.0" - pathe: "npm:^2.0.3" - pkg-types: "npm:^1.3.1" - ufo: "npm:^1.6.1" - checksum: 10/4db690a421076d5fe88331679f702b77a4bfc9fe3f324bc6150270fb0b69ecd4b5e43570b8e4573dde341515b3eac4daa720a6ac9f2715c210b670852641ab1c - languageName: node - linkType: hard - -"mock-socket@npm:^9.1.2, mock-socket@npm:^9.2.1, mock-socket@npm:^9.3.1": - version: 9.3.1 - resolution: "mock-socket@npm:9.3.1" - checksum: 10/c5c07568f2859db6926d79cb61580c07e67958b5cd6b52d1270fdfa17ae066d7f74a18a4208fc4386092eea4e1ee001aa23f015c88a1774265994e4fae34d18e - languageName: node - linkType: hard - -"module-definition@npm:^3.3.1": - version: 3.4.0 - resolution: "module-definition@npm:3.4.0" - dependencies: - ast-module-types: "npm:^3.0.0" - node-source-walk: "npm:^4.0.0" - bin: - module-definition: bin/cli.js - checksum: 10/5cbfd38aab1a9169b5c31924e208e430a87a1b1512ab9736a9a368d950e3cc8e2f5cf642e37fe74123e25402cae50bfb8fdf1f5f0fd3d4d9270df705a2360bfa - languageName: node - linkType: hard - -"module-definition@npm:^4.1.0": - version: 4.1.0 - resolution: "module-definition@npm:4.1.0" - dependencies: - ast-module-types: "npm:^4.0.0" - node-source-walk: "npm:^5.0.1" - bin: - module-definition: bin/cli.js - checksum: 10/d9b6397c9ba04b08bc035fd87a3652900530b9a5d6e5263f8a1e05c927dfc103fdffcecd7071a9fd6cd7813fc9feafbbe828f5277e5b706e5de82831153ef0fb - languageName: node - linkType: hard - -"module-lookup-amd@npm:^7.0.1": - version: 7.0.1 - resolution: "module-lookup-amd@npm:7.0.1" - dependencies: - commander: "npm:^2.8.1" - debug: "npm:^4.1.0" - glob: "npm:^7.1.6" - requirejs: "npm:^2.3.5" - requirejs-config-file: "npm:^4.0.0" - bin: - lookup-amd: bin/cli.js - checksum: 10/dadf8c602dd970e211136b22271231a853f76ec0b857a3bfa765e52a1f45f313a8e8bc7e1961f96bb1eced14e557cdbc798b37f5c17f0235cf29155617f4e7a9 - languageName: node - linkType: hard - -"moment@npm:^2.10.2": - version: 2.30.1 - resolution: "moment@npm:2.30.1" - checksum: 10/ae42d876d4ec831ef66110bdc302c0657c664991e45cf2afffc4b0f6cd6d251dde11375c982a5c0564ccc0fa593fc564576ddceb8c8845e87c15f58aa6baca69 - languageName: node - linkType: hard - -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10/0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.1, ms@npm:^2.1.3": - version: 2.1.3 - resolution: "ms@npm:2.1.3" - checksum: 10/aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d - languageName: node - linkType: hard - -"multiaddr@npm:^7.2.1, multiaddr@npm:^7.3.0": - version: 7.5.0 - resolution: "multiaddr@npm:7.5.0" - dependencies: - buffer: "npm:^5.5.0" - cids: "npm:~0.8.0" - class-is: "npm:^1.1.0" - is-ip: "npm:^3.1.0" - multibase: "npm:^0.7.0" - varint: "npm:^5.0.0" - checksum: 10/4ac0a4c3c416dd8dd310591783c7c7d30ede61a25f17ab2ffd0ec687b235ea697745ee26ba92f8725763162c8366a71eda031b4281b83392a5fba85490b9dfb1 - languageName: node - linkType: hard - -"multibase@npm:^0.7.0": - version: 0.7.0 - resolution: "multibase@npm:0.7.0" - dependencies: - base-x: "npm:^3.0.8" - buffer: "npm:^5.5.0" - checksum: 10/a5cbbf00b8aa61bcb92a706e210d8f258e8413cff2893584fedbc316c98bf2a44b8f648b57c124ddfaa29750c3b686ee5ba973cb8da84a896c19d63101b09445 - languageName: node - linkType: hard - -"multibase@npm:^1.0.0, multibase@npm:^1.0.1": - version: 1.0.1 - resolution: "multibase@npm:1.0.1" - dependencies: - base-x: "npm:^3.0.8" - buffer: "npm:^5.5.0" - checksum: 10/f04306f3e809ea1d49330d87ebb6b93878182bc782b58790c2044aa2f4f0a625f5e8a155b4e1b6f327a6315f005ce49dd1e3b7fc13136895ff43ed1f42276d6d - languageName: node - linkType: hard - -"multibase@npm:~0.6.0": - version: 0.6.1 - resolution: "multibase@npm:0.6.1" - dependencies: - base-x: "npm:^3.0.8" - buffer: "npm:^5.5.0" - checksum: 10/c9e3bf20dc1b109019b94b14a76731ea0a6b0e654a4ef627ba154bfc2b8602ac43b160c44d8245d18cd6a9ed971826efb204230f22b929c8b3e72da13dbc1859 - languageName: node - linkType: hard - -"multicast-dns@npm:^7.2.5": - version: 7.2.5 - resolution: "multicast-dns@npm:7.2.5" - dependencies: - dns-packet: "npm:^5.2.2" - thunky: "npm:^1.0.2" - bin: - multicast-dns: cli.js - checksum: 10/e9add8035fb7049ccbc87b1b069f05bb3b31e04fe057bf7d0116739d81295165afc2568291a4a962bee01a5074e475996816eed0f50c8110d652af5abb74f95a - languageName: node - linkType: hard - -"multicodec@npm:^1.0.0, multicodec@npm:^1.0.1": - version: 1.0.4 - resolution: "multicodec@npm:1.0.4" - dependencies: - buffer: "npm:^5.6.0" - varint: "npm:^5.0.0" - checksum: 10/3a78ac54d3715e6b095a1805f63b4c4e7d5bb4642445691c0c4e6442cad9f97823469634e73ee362ba748596570db1050d69d5cc74a88928b1e9658916cdfbcd - languageName: node - linkType: hard - -"multiformats@npm:^12.1.3": - version: 12.1.3 - resolution: "multiformats@npm:12.1.3" - checksum: 10/b89ec581fc2b0fc567ca2b5450cc3f0f9ad56adf01b7b9780d07981d5177532be3296b22c1e415e0f17c6c6ddb9beece4ae2e14b79edfc5f3deacbd319a37516 - languageName: node - linkType: hard - -"multiformats@npm:^13.0.0, multiformats@npm:^13.0.1": - version: 13.4.2 - resolution: "multiformats@npm:13.4.2" - checksum: 10/b7185ea58d452445350780f9f09bc869d55d74310d66b0fb2cd8c84aa37f31693e556cb801ffc82c14b04bd87691066d549e85400a15a2ed9f6dfc22431d4c5b - languageName: node - linkType: hard - -"multihashes@npm:^1.0.1": - version: 1.0.1 - resolution: "multihashes@npm:1.0.1" - dependencies: - buffer: "npm:^5.6.0" - multibase: "npm:^1.0.1" - varint: "npm:^5.0.0" - checksum: 10/99b1c5321265b5a16073a38f4fbd8952bf7dbf7362d90961e0b2838c7798ec463b81021d4bf1c5314ec7ad39d1eaf533acc672156bbe3cf771663348b7f2721d - languageName: node - linkType: hard - -"multihashes@npm:~0.4.13, multihashes@npm:~0.4.15": - version: 0.4.21 - resolution: "multihashes@npm:0.4.21" - dependencies: - buffer: "npm:^5.5.0" - multibase: "npm:^0.7.0" - varint: "npm:^5.0.0" - checksum: 10/a482d9ba7ed0ad41db22ca589f228e4b7a30207a229a64dfc9888796752314fca00a8d03025fe40d6d73965bbb246f54b73626c5a235463e30c06c7bf7a8785f - languageName: node - linkType: hard - -"mute-stream@npm:0.0.8, mute-stream@npm:~0.0.4": - version: 0.0.8 - resolution: "mute-stream@npm:0.0.8" - checksum: 10/a2d2e79dde87e3424ffc8c334472c7f3d17b072137734ca46e6f221131f1b014201cc593b69a38062e974fb2394d3d1cb4349f80f012bbf8b8ac1b28033e515f - languageName: node - linkType: hard - -"mz@npm:^2.7.0": - version: 2.7.0 - resolution: "mz@npm:2.7.0" - dependencies: - any-promise: "npm:^1.0.0" - object-assign: "npm:^4.0.1" - thenify-all: "npm:^1.0.0" - checksum: 10/8427de0ece99a07e9faed3c0c6778820d7543e3776f9a84d22cf0ec0a8eb65f6e9aee9c9d353ff9a105ff62d33a9463c6ca638974cc652ee8140cd1e35951c87 - languageName: node - linkType: hard - -"nan@npm:^2.14.0, nan@npm:^2.19.0, nan@npm:^2.23.0": - version: 2.24.0 - resolution: "nan@npm:2.24.0" - dependencies: - node-gyp: "npm:latest" - checksum: 10/479f6960119b5ef9b488c14e9069eb534c3545d50b621f51b247d1e3b40828ee619c4d9f8efe30786c5b18c21c60b3cda3f0d0b92e9a3a26cb3e4ab5492a7032 - languageName: node - linkType: hard - -"nanoid@npm:^3.3.11, nanoid@npm:^3.3.7": - version: 3.3.11 - resolution: "nanoid@npm:3.3.11" - bin: - nanoid: bin/nanoid.cjs - checksum: 10/73b5afe5975a307aaa3c95dfe3334c52cdf9ae71518176895229b8d65ab0d1c0417dd081426134eb7571c055720428ea5d57c645138161e7d10df80815527c48 - languageName: node - linkType: hard - -"napi-build-utils@npm:^2.0.0": - version: 2.0.0 - resolution: "napi-build-utils@npm:2.0.0" - checksum: 10/69adcdb828481737f1ec64440286013f6479d5b264e24d5439ba795f65293d0bb6d962035de07c65fae525ed7d2fcd0baab6891d8e3734ea792fec43918acf83 - languageName: node - linkType: hard - -"napi-postinstall@npm:^0.3.0": - version: 0.3.4 - resolution: "napi-postinstall@npm:0.3.4" - bin: - napi-postinstall: lib/cli.js - checksum: 10/5541381508f9e1051ff3518701c7130ebac779abb3a1ffe9391fcc3cab4cc0569b0ba0952357db3f6b12909c3bb508359a7a60261ffd795feebbdab967175832 - languageName: node - linkType: hard - -"natural-compare-lite@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare-lite@npm:1.4.0" - checksum: 10/5222ac3986a2b78dd6069ac62cbb52a7bf8ffc90d972ab76dfe7b01892485d229530ed20d0c62e79a6b363a663b273db3bde195a1358ce9e5f779d4453887225 - languageName: node - linkType: hard - -"natural-compare@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare@npm:1.4.0" - checksum: 10/23ad088b08f898fc9b53011d7bb78ec48e79de7627e01ab5518e806033861bef68d5b0cd0e2205c2f36690ac9571ff6bcb05eb777ced2eeda8d4ac5b44592c3d - languageName: node - linkType: hard - -"negotiator@npm:0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10/2723fb822a17ad55c93a588a4bc44d53b22855bf4be5499916ca0cab1e7165409d0b288ba2577d7b029f10ce18cf2ed8e703e5af31c984e1e2304277ef979837 - languageName: node - linkType: hard - -"negotiator@npm:^1.0.0": - version: 1.0.0 - resolution: "negotiator@npm:1.0.0" - checksum: 10/b5734e87295324fabf868e36fb97c84b7d7f3156ec5f4ee5bf6e488079c11054f818290fc33804cef7b1ee21f55eeb14caea83e7dafae6492a409b3e573153e5 - languageName: node - linkType: hard - -"negotiator@npm:~0.6.4": - version: 0.6.4 - resolution: "negotiator@npm:0.6.4" - checksum: 10/d98c04a136583afd055746168f1067d58ce4bfe6e4c73ca1d339567f81ea1f7e665b5bd1e81f4771c67b6c2ea89b21cb2adaea2b16058c7dc31317778f931dab - languageName: node - linkType: hard - -"neo-async@npm:^2.6.2": - version: 2.6.2 - resolution: "neo-async@npm:2.6.2" - checksum: 10/1a7948fea86f2b33ec766bc899c88796a51ba76a4afc9026764aedc6e7cde692a09067031e4a1bf6db4f978ccd99e7f5b6c03fe47ad9865c3d4f99050d67e002 - languageName: node - linkType: hard - -"next-tick@npm:^1.1.0": - version: 1.1.0 - resolution: "next-tick@npm:1.1.0" - checksum: 10/83b5cf36027a53ee6d8b7f9c0782f2ba87f4858d977342bfc3c20c21629290a2111f8374d13a81221179603ffc4364f38374b5655d17b6a8f8a8c77bdea4fe8b - languageName: node - linkType: hard - -"no-case@npm:^3.0.4": - version: 3.0.4 - resolution: "no-case@npm:3.0.4" - dependencies: - lower-case: "npm:^2.0.2" - tslib: "npm:^2.0.3" - checksum: 10/0b2ebc113dfcf737d48dde49cfebf3ad2d82a8c3188e7100c6f375e30eafbef9e9124aadc3becef237b042fd5eb0aad2fd78669c20972d045bbe7fea8ba0be5c - languageName: node - linkType: hard - -"nock@npm:^13.2.4, nock@npm:^13.3.0, nock@npm:^13.5.0, nock@npm:^13.5.5": - version: 13.5.6 - resolution: "nock@npm:13.5.6" - dependencies: - debug: "npm:^4.1.0" - json-stringify-safe: "npm:^5.0.1" - propagate: "npm:^2.0.0" - checksum: 10/a57c265b75e5f7767e2f8baf058773cdbf357c31c5fea2761386ec03a008a657f9df921899fe2a9502773b47145b708863b32345aef529b3c45cba4019120f88 - languageName: node - linkType: hard - -"node-abi@npm:^3.3.0": - version: 3.85.0 - resolution: "node-abi@npm:3.85.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10/1d0fb9e7922431663db700aa7087c0e49bae5fd041efe2d7463d808e58be1594af8046e835fe1b17ca69f214b6327e89fb0dd5192f0e7a9bf624f5509a9104b7 - languageName: node - linkType: hard - -"node-addon-api@npm:^1.6.3": - version: 1.7.2 - resolution: "node-addon-api@npm:1.7.2" - dependencies: - node-gyp: "npm:latest" - checksum: 10/6bf8217a8cd8148f4bbfd319b46d33587e9fb2e63e3c856ded67a76715167f7a6b17e1d9b8bbf3b8508befeb6a4adb10d92b8998ed5c19ca8448343f4cea11d6 - languageName: node - linkType: hard - -"node-addon-api@npm:^3.0.2": - version: 3.2.1 - resolution: "node-addon-api@npm:3.2.1" - dependencies: - node-gyp: "npm:latest" - checksum: 10/681b52dfa3e15b0a8e5cf283cc0d8cd5fd2a57c559ae670fcfd20544cbb32f75de7648674110defcd17ab2c76ebef630aa7d2d2f930bc7a8cc439b20fe233518 - languageName: node - linkType: hard - -"node-addon-api@npm:^6.0.0": - version: 6.1.0 - resolution: "node-addon-api@npm:6.1.0" - dependencies: - node-gyp: "npm:latest" - checksum: 10/8eea1d4d965930a177a0508695beb0d89b4c1d80bf330646a035357a1e8fc31e0d09686e2374996e96e757b947a7ece319f98ede3146683f162597c0bcb4df90 - languageName: node - linkType: hard - -"node-domexception@npm:^1.0.0": - version: 1.0.0 - resolution: "node-domexception@npm:1.0.0" - checksum: 10/e332522f242348c511640c25a6fc7da4f30e09e580c70c6b13cb0be83c78c3e71c8d4665af2527e869fc96848924a4316ae7ec9014c091e2156f41739d4fa233 - languageName: node - linkType: hard - -"node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7, node-fetch@npm:^2.7.0": - version: 2.7.0 - resolution: "node-fetch@npm:2.7.0" - dependencies: - whatwg-url: "npm:^5.0.0" - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: 10/b24f8a3dc937f388192e59bcf9d0857d7b6940a2496f328381641cb616efccc9866e89ec43f2ec956bbd6c3d3ee05524ce77fe7b29ccd34692b3a16f237d6676 - languageName: node - linkType: hard - -"node-fetch@npm:^3.3.0, node-fetch@npm:^3.3.2": - version: 3.3.2 - resolution: "node-fetch@npm:3.3.2" - dependencies: - data-uri-to-buffer: "npm:^4.0.0" - fetch-blob: "npm:^3.1.4" - formdata-polyfill: "npm:^4.0.10" - checksum: 10/24207ca8c81231c7c59151840e3fded461d67a31cf3e3b3968e12201a42f89ce4a0b5fb7079b1fa0a4655957b1ca9257553200f03a9f668b45ebad265ca5593d - languageName: node - linkType: hard - -"node-forge@npm:^1": - version: 1.3.3 - resolution: "node-forge@npm:1.3.3" - checksum: 10/f41c31b9296771a4b8c955d58417471712f54f324603a35f8e6cbac19d5e6eaaf5fd5fd14584dfedecbf46a05438ded6eee60a5f2f0822fc5061aaa073cfc75d - languageName: node - linkType: hard - -"node-gyp-build@npm:^4.3.0, node-gyp-build@npm:^4.5.0": - version: 4.8.4 - resolution: "node-gyp-build@npm:4.8.4" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10/6a7d62289d1afc419fc8fc9bd00aa4e554369e50ca0acbc215cb91446148b75ff7e2a3b53c2c5b2c09a39d416d69f3d3237937860373104b5fe429bf30ad9ac5 - languageName: node - linkType: hard - -"node-gyp@npm:latest": - version: 12.1.0 - resolution: "node-gyp@npm:12.1.0" - dependencies: - env-paths: "npm:^2.2.0" - exponential-backoff: "npm:^3.1.1" - graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^15.0.0" - nopt: "npm:^9.0.0" - proc-log: "npm:^6.0.0" - semver: "npm:^7.3.5" - tar: "npm:^7.5.2" - tinyglobby: "npm:^0.2.12" - which: "npm:^6.0.0" - bin: - node-gyp: bin/node-gyp.js - checksum: 10/d93079236cef1dd7fa4df683708d8708ad255c55865f6656664c8959e4d3963d908ac48e8f9f341705432e979dbbf502a40d68d65a17fe35956a5a05ba6c1cb4 - languageName: node - linkType: hard - -"node-hid@npm:2.1.2": - version: 2.1.2 - resolution: "node-hid@npm:2.1.2" - dependencies: - bindings: "npm:^1.5.0" - node-addon-api: "npm:^3.0.2" - node-gyp: "npm:latest" - prebuild-install: "npm:^7.1.1" - bin: - hid-showdevices: src/show-devices.js - checksum: 10/7b424d9f049221b439cfa3a092f415b608bcd316b819ff1fb0bf5234d766348d9fdaeaafa5ccece514c045825a936cb5617080168066d16b3aaeb0e9808e38f9 - languageName: node - linkType: hard - -"node-releases@npm:^2.0.27": - version: 2.0.27 - resolution: "node-releases@npm:2.0.27" - checksum: 10/f6c78ddb392ae500719644afcbe68a9ea533242c02312eb6a34e8478506eb7482a3fb709c70235b01c32fe65625b68dfa9665113f816d87f163bc3819b62b106 - languageName: node - linkType: hard - -"node-source-walk@npm:^4.0.0, node-source-walk@npm:^4.2.0, node-source-walk@npm:^4.2.2": - version: 4.3.0 - resolution: "node-source-walk@npm:4.3.0" - dependencies: - "@babel/parser": "npm:^7.0.0" - checksum: 10/3145f4b907624b42bf7847d19937e33a1c3946b960ebcf5ac7eded9ba187ae00edec143946ef4a8f04835c31688f06e8341e0a7b4962a41d4d56bd5ab0a83ed5 - languageName: node - linkType: hard - -"node-source-walk@npm:^5.0.0, node-source-walk@npm:^5.0.1": - version: 5.0.2 - resolution: "node-source-walk@npm:5.0.2" - dependencies: - "@babel/parser": "npm:^7.21.4" - checksum: 10/cbb474a80a7c4576ed94bf4c999be889a85ad1177a0a80019714adece1f5ca70e6a5f728b6828afb4ea00ca524c3ea65fc24d7405b921b754bfb596553f78e7b - languageName: node - linkType: hard - -"nopt@npm:^9.0.0": - version: 9.0.0 - resolution: "nopt@npm:9.0.0" - dependencies: - abbrev: "npm:^4.0.0" - bin: - nopt: bin/nopt.js - checksum: 10/56a1ccd2ad711fb5115918e2c96828703cddbe12ba2c3bd00591758f6fa30e6f47dd905c59dbfcf9b773f3a293b45996609fb6789ae29d6bfcc3cf3a6f7d9fda - languageName: node - linkType: hard - -"normalize-package-data@npm:^2.5.0": - version: 2.5.0 - resolution: "normalize-package-data@npm:2.5.0" - dependencies: - hosted-git-info: "npm:^2.1.4" - resolve: "npm:^1.10.0" - semver: "npm:2 || 3 || 4 || 5" - validate-npm-package-license: "npm:^3.0.1" - checksum: 10/644f830a8bb9b7cc9bf2f6150618727659ee27cdd0840d1c1f97e8e6cab0803a098a2c19f31c6247ad9d3a0792e61521a13a6e8cd87cc6bb676e3150612c03d4 - languageName: node - linkType: hard - -"normalize-path@npm:3.0.0, normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 10/88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 - languageName: node - linkType: hard - -"normalize-url@npm:^4.1.0": - version: 4.5.1 - resolution: "normalize-url@npm:4.5.1" - checksum: 10/20ced2845fcfaa46da74efc0aa39b7bed22f3db39e6e8b844261613082a36a2dcd468decad89fa9313b5464bebab4034f96bda7880e8fc468027fecf6a6fa254 - languageName: node - linkType: hard - -"normalize-url@npm:^6.0.1": - version: 6.1.0 - resolution: "normalize-url@npm:6.1.0" - checksum: 10/5ae699402c9d5ffa330adc348fcd6fc6e6a155ab7c811b96e30b7ecab60ceef821d8f86443869671dda71bbc47f4b9625739c82ad247e883e9aefe875bfb8659 - languageName: node - linkType: hard - -"now-and-later@npm:^3.0.0": - version: 3.0.0 - resolution: "now-and-later@npm:3.0.0" - dependencies: - once: "npm:^1.4.0" - checksum: 10/5300d42932bac5d4f8d19bf90ebb53c3474ba615eab912770d1b8de896baea6dc7ef3b95158aaf601acfb0cd6b573bceb5fe30cf0224cb06ea227ef3e8fc7f3d - languageName: node - linkType: hard - -"npm-run-path@npm:^4.0.1": - version: 4.0.1 - resolution: "npm-run-path@npm:4.0.1" - dependencies: - path-key: "npm:^3.0.0" - checksum: 10/5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 - languageName: node - linkType: hard - -"nth-check@npm:^2.0.1": - version: 2.1.1 - resolution: "nth-check@npm:2.1.1" - dependencies: - boolbase: "npm:^1.0.0" - checksum: 10/5afc3dafcd1573b08877ca8e6148c52abd565f1d06b1eb08caf982e3fa289a82f2cae697ffb55b5021e146d60443f1590a5d6b944844e944714a5b549675bcd3 - languageName: node - linkType: hard - -"nwsapi@npm:^2.2.12": - version: 2.2.23 - resolution: "nwsapi@npm:2.2.23" - checksum: 10/aa4a570039c33d70b51436d1bb533f3e2c33c488ccbe9b09285c46a6cee5ef266fd60103461085c6954ba52460786a8138f042958328c7c1b4763898eb3dadfa - languageName: node - linkType: hard - -"object-assign@npm:^2.0.0": - version: 2.1.1 - resolution: "object-assign@npm:2.1.1" - checksum: 10/d37a7d7173408e07ee225116437592d92b584b2a5f38cafe608400b43efd9b78878dbd545b524aff5b4118d88e39466b9038b2d3de8885e212adad497d656c46 - languageName: node - linkType: hard - -"object-assign@npm:^4.0.1, object-assign@npm:^4.1.1": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: 10/fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4": - version: 1.13.4 - resolution: "object-inspect@npm:1.13.4" - checksum: 10/aa13b1190ad3e366f6c83ad8a16ed37a19ed57d267385aa4bfdccda833d7b90465c057ff6c55d035a6b2e52c1a2295582b294217a0a3a1ae7abdd6877ef781fb - languageName: node - linkType: hard - -"object-is@npm:^1.1.5": - version: 1.1.6 - resolution: "object-is@npm:1.1.6" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - checksum: 10/4f6f544773a595da21c69a7531e0e1d6250670f4e09c55f47eb02c516035cfcb1b46ceb744edfd3ecb362309dbccb6d7f88e43bf42e4d4595ac10a329061053a - languageName: node - linkType: hard - -"object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: 10/3d81d02674115973df0b7117628ea4110d56042e5326413e4b4313f0bcdf7dd78d4a3acef2c831463fa3796a66762c49daef306f4a0ea1af44877d7086d73bde - languageName: node - linkType: hard - -"object.assign@npm:^4.1.4, object.assign@npm:^4.1.7": - version: 4.1.7 - resolution: "object.assign@npm:4.1.7" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - has-symbols: "npm:^1.1.0" - object-keys: "npm:^1.1.1" - checksum: 10/3fe28cdd779f2a728a9a66bd688679ba231a2b16646cd1e46b528fe7c947494387dda4bc189eff3417f3717ef4f0a8f2439347cf9a9aa3cef722fbfd9f615587 - languageName: node - linkType: hard - -"object.entries@npm:^1.1.9": - version: 1.1.9 - resolution: "object.entries@npm:1.1.9" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.1.1" - checksum: 10/24163ab1e1e013796693fc5f5d349e8b3ac0b6a34a7edb6c17d3dd45c6a8854145780c57d302a82512c1582f63720f4b4779d6c1cfba12cbb1420b978802d8a3 - languageName: node - linkType: hard - -"object.fromentries@npm:^2.0.8": - version: 2.0.8 - resolution: "object.fromentries@npm:2.0.8" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.2" - es-object-atoms: "npm:^1.0.0" - checksum: 10/5b2e80f7af1778b885e3d06aeb335dcc86965e39464671adb7167ab06ac3b0f5dd2e637a90d8ebd7426d69c6f135a4753ba3dd7d0fe2a7030cf718dcb910fd92 - languageName: node - linkType: hard - -"object.groupby@npm:^1.0.3": - version: 1.0.3 - resolution: "object.groupby@npm:1.0.3" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.2" - checksum: 10/44cb86dd2c660434be65f7585c54b62f0425b0c96b5c948d2756be253ef06737da7e68d7106e35506ce4a44d16aa85a413d11c5034eb7ce5579ec28752eb42d0 - languageName: node - linkType: hard - -"object.values@npm:^1.1.6, object.values@npm:^1.2.1": - version: 1.2.1 - resolution: "object.values@npm:1.2.1" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10/f5ec9eccdefeaaa834b089c525663436812a65ff13de7964a1c3a9110f32054f2d58aa476a645bb14f75a79f3fe1154fb3e7bfdae7ac1e80affe171b2ef74bce - languageName: node - linkType: hard - -"obuf@npm:^1.0.0, obuf@npm:^1.1.2": - version: 1.1.2 - resolution: "obuf@npm:1.1.2" - checksum: 10/53ff4ab3a13cc33ba6c856cf281f2965c0aec9720967af450e8fd06cfd50aceeefc791986a16bcefa14e7898b3ca9acdfcf15b9d9a1b9c7e1366581a8ad6e65e - languageName: node - linkType: hard - -"on-exit-leak-free@npm:^2.1.0": - version: 2.1.2 - resolution: "on-exit-leak-free@npm:2.1.2" - checksum: 10/f7b4b7200026a08f6e4a17ba6d72e6c5cbb41789ed9cf7deaf9d9e322872c7dc5a7898549a894651ee0ee9ae635d34a678115bf8acdfba8ebd2ba2af688b563c - languageName: node - linkType: hard - -"on-finished@npm:~2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10/8e81472c5028125c8c39044ac4ab8ba51a7cdc19a9fbd4710f5d524a74c6d8c9ded4dd0eed83f28d3d33ac1d7a6a439ba948ccb765ac6ce87f30450a26bfe2ea - languageName: node - linkType: hard - -"on-headers@npm:~1.1.0": - version: 1.1.0 - resolution: "on-headers@npm:1.1.0" - checksum: 10/98aa64629f986fb8cc4517dd8bede73c980e31208cba97f4442c330959f60ced3dc6214b83420491f5111fc7c4f4343abe2ea62c85f505cf041d67850f238776 - languageName: node - linkType: hard - -"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": - version: 1.4.0 - resolution: "once@npm:1.4.0" - dependencies: - wrappy: "npm:1" - checksum: 10/cd0a88501333edd640d95f0d2700fbde6bff20b3d4d9bdc521bdd31af0656b5706570d6c6afe532045a20bb8dc0849f8332d6f2a416e0ba6d3d3b98806c7db68 - languageName: node - linkType: hard - -"onetime@npm:^5.1.0, onetime@npm:^5.1.2": - version: 5.1.2 - resolution: "onetime@npm:5.1.2" - dependencies: - mimic-fn: "npm:^2.1.0" - checksum: 10/e9fd0695a01cf226652f0385bf16b7a24153dbbb2039f764c8ba6d2306a8506b0e4ce570de6ad99c7a6eb49520743afdb66edd95ee979c1a342554ed49a9aadd - languageName: node - linkType: hard - -"open@npm:^7.3.1": - version: 7.4.2 - resolution: "open@npm:7.4.2" - dependencies: - is-docker: "npm:^2.0.0" - is-wsl: "npm:^2.1.1" - checksum: 10/4fc02ed3368dcd5d7247ad3566433ea2695b0713b041ebc0eeb2f0f9e5d4e29fc2068f5cdd500976b3464e77fe8b61662b1b059c73233ccc601fe8b16d6c1cd6 - languageName: node - linkType: hard - -"open@npm:^8.0.9": - version: 8.4.2 - resolution: "open@npm:8.4.2" - dependencies: - define-lazy-prop: "npm:^2.0.0" - is-docker: "npm:^2.1.1" - is-wsl: "npm:^2.2.0" - checksum: 10/acd81a1d19879c818acb3af2d2e8e9d81d17b5367561e623248133deb7dd3aefaed527531df2677d3e6aaf0199f84df57b6b2262babff8bf46ea0029aac536c9 - languageName: node - linkType: hard - -"optionator@npm:^0.9.3": - version: 0.9.4 - resolution: "optionator@npm:0.9.4" - dependencies: - deep-is: "npm:^0.1.3" - fast-levenshtein: "npm:^2.0.6" - levn: "npm:^0.4.1" - prelude-ls: "npm:^1.2.1" - type-check: "npm:^0.4.0" - word-wrap: "npm:^1.2.5" - checksum: 10/a8398559c60aef88d7f353a4f98dcdff6090a4e70f874c827302bf1213d9106a1c4d5fcb68dacb1feb3c30a04c4102f41047aa55d4c576b863d6fc876e001af6 - languageName: node - linkType: hard - -"ora@npm:^4.0.5": - version: 4.1.1 - resolution: "ora@npm:4.1.1" - dependencies: - chalk: "npm:^3.0.0" - cli-cursor: "npm:^3.1.0" - cli-spinners: "npm:^2.2.0" - is-interactive: "npm:^1.0.0" - log-symbols: "npm:^3.0.0" - mute-stream: "npm:0.0.8" - strip-ansi: "npm:^6.0.0" - wcwidth: "npm:^1.0.1" - checksum: 10/9fd0c5033f980e04a02c5e1158d629e22297fe44ab17202e4800911471c527af0440d789d154d3997163f5e4e60fbd6f2fbddb5b0657cfc5b4f1b13a055d7d45 - languageName: node - linkType: hard - -"ora@npm:^5.4.1": - version: 5.4.1 - resolution: "ora@npm:5.4.1" - dependencies: - bl: "npm:^4.1.0" - chalk: "npm:^4.1.0" - cli-cursor: "npm:^3.1.0" - cli-spinners: "npm:^2.5.0" - is-interactive: "npm:^1.0.0" - is-unicode-supported: "npm:^0.1.0" - log-symbols: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - wcwidth: "npm:^1.0.1" - checksum: 10/8d071828f40090a8e1c6e8f350c6eb065808e9ab2b3e57fa37e0d5ae78cb46dac00117c8f12c3c8b8da2923454afbd8265e08c10b69881170c5b269f451e7fef - languageName: node - linkType: hard - -"os-browserify@npm:^0.3.0": - version: 0.3.0 - resolution: "os-browserify@npm:0.3.0" - checksum: 10/16e37ba3c0e6a4c63443c7b55799ce4066d59104143cb637ecb9fce586d5da319cdca786ba1c867abbe3890d2cbf37953f2d51eea85e20dd6c4570d6c54bfebf - languageName: node - linkType: hard - -"owasp-password-strength-test@npm:^1.3.0": - version: 1.3.0 - resolution: "owasp-password-strength-test@npm:1.3.0" - checksum: 10/7bd9300434046da139081c799062f59900cf4e2943cc1ae5931791ca672a2098ec80c8f40dcf647be2bb8fbf4b8b71f570451a503f3d682273395fb6b65b66f5 - languageName: node - linkType: hard - -"own-keys@npm:^1.0.1": - version: 1.0.1 - resolution: "own-keys@npm:1.0.1" - dependencies: - get-intrinsic: "npm:^1.2.6" - object-keys: "npm:^1.1.1" - safe-push-apply: "npm:^1.0.0" - checksum: 10/ab4bb3b8636908554fc19bf899e225444195092864cb61503a0d048fdaf662b04be2605b636a4ffeaf6e8811f6fcfa8cbb210ec964c0eb1a41eb853e1d5d2f41 - languageName: node - linkType: hard - -"p-cancelable@npm:^1.0.0": - version: 1.1.0 - resolution: "p-cancelable@npm:1.1.0" - checksum: 10/2db3814fef6d9025787f30afaee4496a8857a28be3c5706432cbad76c688a6db1874308f48e364a42f5317f5e41e8e7b4f2ff5c8ff2256dbb6264bc361704ece - languageName: node - linkType: hard - -"p-cancelable@npm:^2.0.0": - version: 2.1.1 - resolution: "p-cancelable@npm:2.1.1" - checksum: 10/7f1b64db17fc54acf359167d62898115dcf2a64bf6b3b038e4faf36fc059e5ed762fb9624df8ed04b25bee8de3ab8d72dea9879a2a960cd12e23c420a4aca6ed - languageName: node - linkType: hard - -"p-limit@npm:^2.2.0": - version: 2.3.0 - resolution: "p-limit@npm:2.3.0" - dependencies: - p-try: "npm:^2.0.0" - checksum: 10/84ff17f1a38126c3314e91ecfe56aecbf36430940e2873dadaa773ffe072dc23b7af8e46d4b6485d302a11673fe94c6b67ca2cfbb60c989848b02100d0594ac1 - languageName: node - linkType: hard - -"p-limit@npm:^3.0.2": - version: 3.1.0 - resolution: "p-limit@npm:3.1.0" - dependencies: - yocto-queue: "npm:^0.1.0" - checksum: 10/7c3690c4dbf62ef625671e20b7bdf1cbc9534e83352a2780f165b0d3ceba21907e77ad63401708145ca4e25bfc51636588d89a8c0aeb715e6c37d1c066430360 - languageName: node - linkType: hard - -"p-locate@npm:^4.1.0": - version: 4.1.0 - resolution: "p-locate@npm:4.1.0" - dependencies: - p-limit: "npm:^2.2.0" - checksum: 10/513bd14a455f5da4ebfcb819ef706c54adb09097703de6aeaa5d26fe5ea16df92b48d1ac45e01e3944ce1e6aa2a66f7f8894742b8c9d6e276e16cd2049a2b870 - languageName: node - linkType: hard - -"p-locate@npm:^5.0.0": - version: 5.0.0 - resolution: "p-locate@npm:5.0.0" - dependencies: - p-limit: "npm:^3.0.2" - checksum: 10/1623088f36cf1cbca58e9b61c4e62bf0c60a07af5ae1ca99a720837356b5b6c5ba3eb1b2127e47a06865fee59dd0453cad7cc844cda9d5a62ac1a5a51b7c86d3 - languageName: node - linkType: hard - -"p-map@npm:^7.0.2": - version: 7.0.4 - resolution: "p-map@npm:7.0.4" - checksum: 10/ef48c3b2e488f31c693c9fcc0df0ef76518cf6426a495cf9486ebbb0fd7f31aef7f90e96f72e0070c0ff6e3177c9318f644b512e2c29e3feee8d7153fcb6782e - languageName: node - linkType: hard - -"p-queue@npm:^9.0.0": - version: 9.1.0 - resolution: "p-queue@npm:9.1.0" - dependencies: - eventemitter3: "npm:^5.0.1" - p-timeout: "npm:^7.0.0" - checksum: 10/7221f58c20852fe1d9283fdcfb2c62628384daf4ccd7a936ba826637d41e1e66f606bc2eaa6d1705513daccb47c21eb890400fc0a91f8566c83d176e63fd3664 - languageName: node - linkType: hard - -"p-retry@npm:^4.5.0": - version: 4.6.2 - resolution: "p-retry@npm:4.6.2" - dependencies: - "@types/retry": "npm:0.12.0" - retry: "npm:^0.13.1" - checksum: 10/45c270bfddaffb4a895cea16cb760dcc72bdecb6cb45fef1971fa6ea2e91ddeafddefe01e444ac73e33b1b3d5d29fb0dd18a7effb294262437221ddc03ce0f2e - languageName: node - linkType: hard - -"p-timeout@npm:^7.0.0": - version: 7.0.1 - resolution: "p-timeout@npm:7.0.1" - checksum: 10/1d65827a07fd10eae5bc1fa493ef5c40522acda21cbbb04131cdb0f63f703c91e5fac2701431e28e308992284a86807d7138dbc2be694e2b8342bee20be652f6 - languageName: node - linkType: hard - -"p-try@npm:^2.0.0": - version: 2.2.0 - resolution: "p-try@npm:2.2.0" - checksum: 10/f8a8e9a7693659383f06aec604ad5ead237c7a261c18048a6e1b5b85a5f8a067e469aa24f5bc009b991ea3b058a87f5065ef4176793a200d4917349881216cae - languageName: node - linkType: hard - -"package-json-from-dist@npm:^1.0.0": - version: 1.0.1 - resolution: "package-json-from-dist@npm:1.0.1" - checksum: 10/58ee9538f2f762988433da00e26acc788036914d57c71c246bf0be1b60cdbd77dd60b6a3e1a30465f0b248aeb80079e0b34cb6050b1dfa18c06953bb1cbc7602 - languageName: node - linkType: hard - -"package-json@npm:^6.3.0": - version: 6.5.0 - resolution: "package-json@npm:6.5.0" - dependencies: - got: "npm:^9.6.0" - registry-auth-token: "npm:^4.0.0" - registry-url: "npm:^5.0.0" - semver: "npm:^6.2.0" - checksum: 10/adb8e49f352ea0d71a4d351732c3870d57f21e6f3921d69a83dd9ef04b45cdb0a035495826fbe9fb2cb9a7e521484404b7d527c181133867b126588efa1996c6 - languageName: node - linkType: hard - -"pako@npm:^2.0.4": - version: 2.1.0 - resolution: "pako@npm:2.1.0" - checksum: 10/38a04991d0ec4f4b92794a68b8c92bf7340692c5d980255c92148da96eb3e550df7a86a7128b5ac0c65ecddfe5ef3bbe9c6dab13e1bc315086e759b18f7c1401 - languageName: node - linkType: hard - -"param-case@npm:^3.0.4": - version: 3.0.4 - resolution: "param-case@npm:3.0.4" - dependencies: - dot-case: "npm:^3.0.4" - tslib: "npm:^2.0.3" - checksum: 10/b34227fd0f794e078776eb3aa6247442056cb47761e9cd2c4c881c86d84c64205f6a56ef0d70b41ee7d77da02c3f4ed2f88e3896a8fefe08bdfb4deca037c687 - languageName: node - linkType: hard - -"parent-module@npm:^1.0.0": - version: 1.0.1 - resolution: "parent-module@npm:1.0.1" - dependencies: - callsites: "npm:^3.0.0" - checksum: 10/6ba8b255145cae9470cf5551eb74be2d22281587af787a2626683a6c20fbb464978784661478dd2a3f1dad74d1e802d403e1b03c1a31fab310259eec8ac560ff - languageName: node - linkType: hard - -"parse-asn1@npm:^5.0.0, parse-asn1@npm:^5.1.9": - version: 5.1.9 - resolution: "parse-asn1@npm:5.1.9" - dependencies: - asn1.js: "npm:^4.10.1" - browserify-aes: "npm:^1.2.0" - evp_bytestokey: "npm:^1.0.3" - pbkdf2: "npm:^3.1.5" - safe-buffer: "npm:^5.2.1" - checksum: 10/bc3d616a8076fa8a9a34cab8af6905859a1bafd0c49c98132acc7d29b779c2b81d4a8fc610f5bedc9770cc4bfc323f7c939ad7413e9df6ba60cb931010c42f52 - languageName: node - linkType: hard - -"parse-entities@npm:^4.0.0": - version: 4.0.2 - resolution: "parse-entities@npm:4.0.2" - dependencies: - "@types/unist": "npm:^2.0.0" - character-entities-legacy: "npm:^3.0.0" - character-reference-invalid: "npm:^2.0.0" - decode-named-character-reference: "npm:^1.0.0" - is-alphanumerical: "npm:^2.0.0" - is-decimal: "npm:^2.0.0" - is-hexadecimal: "npm:^2.0.0" - checksum: 10/b0ce693d0b3d7ed1cea6fe814e6e077c71532695f01178e846269e9a2bc2f7ff34ca4bb8db80b48af0451100f25bb010df6591c9bb6306e4680ccb423d1e4038 - languageName: node - linkType: hard - -"parse-json@npm:^5.0.0": - version: 5.2.0 - resolution: "parse-json@npm:5.2.0" - dependencies: - "@babel/code-frame": "npm:^7.0.0" - error-ex: "npm:^1.3.1" - json-parse-even-better-errors: "npm:^2.3.0" - lines-and-columns: "npm:^1.1.6" - checksum: 10/62085b17d64da57f40f6afc2ac1f4d95def18c4323577e1eced571db75d9ab59b297d1d10582920f84b15985cbfc6b6d450ccbf317644cfa176f3ed982ad87e2 - languageName: node - linkType: hard - -"parse-ms@npm:^2.1.0": - version: 2.1.0 - resolution: "parse-ms@npm:2.1.0" - checksum: 10/517eab80cdb9df6ae22a8fad944bfb4289482699bcde5211a1c127091dfea33c3dcb217246b188865fc32e998bcee815bfa4a863f41e3b2d0bcc69f34ef1a543 - languageName: node - linkType: hard - -"parse5@npm:^6.0.0": - version: 6.0.1 - resolution: "parse5@npm:6.0.1" - checksum: 10/dfb110581f62bd1425725a7c784ae022a24669bd0efc24b58c71fc731c4d868193e2ebd85b74cde2dbb965e4dcf07059b1e651adbec1b3b5267531bd132fdb75 - languageName: node - linkType: hard - -"parse5@npm:^7.0.0, parse5@npm:^7.1.2": - version: 7.3.0 - resolution: "parse5@npm:7.3.0" - dependencies: - entities: "npm:^6.0.0" - checksum: 10/b0e48be20b820c655b138b86fa6fb3a790de6c891aa2aba536524f8027b4dca4fe538f11a0e5cf2f6f847d120dbb9e4822dcaeb933ff1e10850a2ef0154d1d88 - languageName: node - linkType: hard - -"parseurl@npm:~1.3.2, parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10/407cee8e0a3a4c5cd472559bca8b6a45b82c124e9a4703302326e9ab60fc1081442ada4e02628efef1eb16197ddc7f8822f5a91fd7d7c86b51f530aedb17dfa2 - languageName: node - linkType: hard - -"pascal-case@npm:^3.1.2": - version: 3.1.2 - resolution: "pascal-case@npm:3.1.2" - dependencies: - no-case: "npm:^3.0.4" - tslib: "npm:^2.0.3" - checksum: 10/ba98bfd595fc91ef3d30f4243b1aee2f6ec41c53b4546bfa3039487c367abaa182471dcfc830a1f9e1a0df00c14a370514fa2b3a1aacc68b15a460c31116873e - languageName: node - linkType: hard - -"path-browserify@npm:^1.0.1": - version: 1.0.1 - resolution: "path-browserify@npm:1.0.1" - checksum: 10/7e7368a5207e7c6b9051ef045711d0dc3c2b6203e96057e408e6e74d09f383061010d2be95cb8593fe6258a767c3e9fc6b2bfc7ce8d48ae8c3d9f6994cca9ad8 - languageName: node - linkType: hard - -"path-exists@npm:^4.0.0": - version: 4.0.0 - resolution: "path-exists@npm:4.0.0" - checksum: 10/505807199dfb7c50737b057dd8d351b82c033029ab94cb10a657609e00c1bc53b951cfdbccab8de04c5584d5eff31128ce6afd3db79281874a5ef2adbba55ed1 - languageName: node - linkType: hard - -"path-is-absolute@npm:^1.0.0": - version: 1.0.1 - resolution: "path-is-absolute@npm:1.0.1" - checksum: 10/060840f92cf8effa293bcc1bea81281bd7d363731d214cbe5c227df207c34cd727430f70c6037b5159c8a870b9157cba65e775446b0ab06fd5ecc7e54615a3b8 - languageName: node - linkType: hard - -"path-key@npm:^3.0.0, path-key@npm:^3.1.0": - version: 3.1.1 - resolution: "path-key@npm:3.1.1" - checksum: 10/55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 - languageName: node - linkType: hard - -"path-parse@npm:^1.0.7": - version: 1.0.7 - resolution: "path-parse@npm:1.0.7" - checksum: 10/49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a - languageName: node - linkType: hard - -"path-scurry@npm:^1.11.1": - version: 1.11.1 - resolution: "path-scurry@npm:1.11.1" - dependencies: - lru-cache: "npm:^10.2.0" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: 10/5e8845c159261adda6f09814d7725683257fcc85a18f329880ab4d7cc1d12830967eae5d5894e453f341710d5484b8fdbbd4d75181b4d6e1eb2f4dc7aeadc434 - languageName: node - linkType: hard - -"path-scurry@npm:^2.0.0": - version: 2.0.1 - resolution: "path-scurry@npm:2.0.1" - dependencies: - lru-cache: "npm:^11.0.0" - minipass: "npm:^7.1.2" - checksum: 10/1e9c74e9ccf94d7c16056a5cb2dba9fa23eec1bc221ab15c44765486b9b9975b4cd9a4d55da15b96eadf67d5202e9a2f1cec9023fbb35fe7d9ccd0ff1891f88b - languageName: node - linkType: hard - -"path-to-regexp@npm:~0.1.12": - version: 0.1.12 - resolution: "path-to-regexp@npm:0.1.12" - checksum: 10/2e30f6a0144679c1f95c98e166b96e6acd1e72be9417830fefc8de7ac1992147eb9a4c7acaa59119fb1b3c34eec393b2129ef27e24b2054a3906fc4fb0d1398e - languageName: node - linkType: hard - -"path-type@npm:^4.0.0": - version: 4.0.0 - resolution: "path-type@npm:4.0.0" - checksum: 10/5b1e2daa247062061325b8fdbfd1fb56dde0a448fb1455453276ea18c60685bdad23a445dc148cf87bc216be1573357509b7d4060494a6fd768c7efad833ee45 - languageName: node - linkType: hard - -"pathe@npm:^2.0.1, pathe@npm:^2.0.3": - version: 2.0.3 - resolution: "pathe@npm:2.0.3" - checksum: 10/01e9a69928f39087d96e1751ce7d6d50da8c39abf9a12e0ac2389c42c83bc76f78c45a475bd9026a02e6a6f79be63acc75667df855862fe567d99a00a540d23d - languageName: node - linkType: hard - -"pbkdf2@npm:^3.1.2, pbkdf2@npm:^3.1.5": - version: 3.1.5 - resolution: "pbkdf2@npm:3.1.5" - dependencies: - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - ripemd160: "npm:^2.0.3" - safe-buffer: "npm:^5.2.1" - sha.js: "npm:^2.4.12" - to-buffer: "npm:^1.2.1" - checksum: 10/ce1c9a2ebbc843c86090ec6cac6d07429dece7c1fdb87437ce6cf869d0429cc39cab61bc34215585f4a00d8009862df45e197fbd54f3508ccba8ff312a88261b - languageName: node - linkType: hard - -"pend@npm:~1.2.0": - version: 1.2.0 - resolution: "pend@npm:1.2.0" - checksum: 10/6c72f5243303d9c60bd98e6446ba7d30ae29e3d56fdb6fae8767e8ba6386f33ee284c97efe3230a0d0217e2b1723b8ab490b1bbf34fcbb2180dbc8a9de47850d - languageName: node - linkType: hard - -"perf-regexes@npm:^1.0.1": - version: 1.0.1 - resolution: "perf-regexes@npm:1.0.1" - checksum: 10/43008297d11f2af6cb989590e565060989272fd443fcf67d610bafec5387d3c9747aa5353530ff6598deee0b28f71fd5c5ebfa8a6d895efd38a5dec9fc02ab00 - languageName: node - linkType: hard - -"pezkuwi-sdk-ui@workspace:.": - version: 0.0.0-use.local - resolution: "pezkuwi-sdk-ui@workspace:." - dependencies: - "@crustio/crust-pin": "npm:^1.0.0" - "@pezkuwi/dev": "npm:^0.85.2" - "@pezkuwi/ui-shared": "npm:^3.17.2" - "@pinata/sdk": "npm:^1.2.1" - "@types/chart.js": "npm:^2.9.41" - "@types/file-saver": "npm:^2.0.7" - "@types/react-beautiful-dnd": "npm:^13.1.7" - "@types/react-copy-to-clipboard": "npm:^5.0.7" - "@types/react-dom": "npm:^18.2.18" - "@types/react-router-dom": "npm:^5.3.3" - "@types/store": "npm:^2.0.5" - concurrently: "npm:^8.2.2" - devtron: "npm:^1.4.0" - dnslink-cloudflare: "npm:^3.0.0" - electron: "npm:28.0.0" - electron-builder: "npm:24.10.0" - electron-builder-notarize: "npm:^1.5.1" - extensionless: "npm:^1.9.6" - i18next-scanner: "npm:^4.4.0" - react: "npm:^18.2.0" - react-dom: "npm:^18.2.0" - react-is: "npm:^18.2.0" - source-map-explorer: "npm:^2.5.3" - languageName: unknown - linkType: soft - -"picocolors@npm:^1.1.1": - version: 1.1.1 - resolution: "picocolors@npm:1.1.1" - checksum: 10/e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 - languageName: node - linkType: hard - -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.3.1": - version: 2.3.1 - resolution: "picomatch@npm:2.3.1" - checksum: 10/60c2595003b05e4535394d1da94850f5372c9427ca4413b71210f437f7b2ca091dbd611c45e8b37d10036fa8eade25c1b8951654f9d3973bfa66a2ff4d3b08bc - languageName: node - linkType: hard - -"picomatch@npm:^4.0.2, picomatch@npm:^4.0.3": - version: 4.0.3 - resolution: "picomatch@npm:4.0.3" - checksum: 10/57b99055f40b16798f2802916d9c17e9744e620a0db136554af01d19598b96e45e2f00014c91d1b8b13874b80caa8c295b3d589a3f72373ec4aaf54baa5962d5 - languageName: node - linkType: hard - -"pino-abstract-transport@npm:^2.0.0": - version: 2.0.0 - resolution: "pino-abstract-transport@npm:2.0.0" - dependencies: - split2: "npm:^4.0.0" - checksum: 10/e5699ecb06c7121055978e988e5cecea5b6892fc2589c64f1f86df5e7386bbbfd2ada268839e911b021c6b3123428aed7c6be3ac7940eee139556c75324c7e83 - languageName: node - linkType: hard - -"pino-abstract-transport@npm:^3.0.0": - version: 3.0.0 - resolution: "pino-abstract-transport@npm:3.0.0" - dependencies: - split2: "npm:^4.0.0" - checksum: 10/f42b85b2663c8520839124a55b27801e88c89c65e9569384b49bb4c81b022ae24860020c2375b92a03db699113969007cc155e1fb2dfe53754403920c1cbe18c - languageName: node - linkType: hard - -"pino-pretty@npm:^13.0.0": - version: 13.1.3 - resolution: "pino-pretty@npm:13.1.3" - dependencies: - colorette: "npm:^2.0.7" - dateformat: "npm:^4.6.3" - fast-copy: "npm:^4.0.0" - fast-safe-stringify: "npm:^2.1.1" - help-me: "npm:^5.0.0" - joycon: "npm:^3.1.1" - minimist: "npm:^1.2.6" - on-exit-leak-free: "npm:^2.1.0" - pino-abstract-transport: "npm:^3.0.0" - pump: "npm:^3.0.0" - secure-json-parse: "npm:^4.0.0" - sonic-boom: "npm:^4.0.1" - strip-json-comments: "npm:^5.0.2" - bin: - pino-pretty: bin.js - checksum: 10/4bb721e1ece378c1c9000457e4fe4a914ea5b8e036551608f5681ca58c8fbacc6b8a31807e93bc0c66d17fb5d96e74b3e4051fb53152955dc51ac58848428e27 - languageName: node - linkType: hard - -"pino-std-serializers@npm:^7.0.0": - version: 7.0.0 - resolution: "pino-std-serializers@npm:7.0.0" - checksum: 10/884e08f65aa5463d820521ead3779d4472c78fc434d8582afb66f9dcb8d8c7119c69524b68106cb8caf92c0487be7794cf50e5b9c0383ae65b24bf2a03480951 - languageName: node - linkType: hard - -"pino@npm:^9.7.0": - version: 9.14.0 - resolution: "pino@npm:9.14.0" - dependencies: - "@pinojs/redact": "npm:^0.4.0" - atomic-sleep: "npm:^1.0.0" - on-exit-leak-free: "npm:^2.1.0" - pino-abstract-transport: "npm:^2.0.0" - pino-std-serializers: "npm:^7.0.0" - process-warning: "npm:^5.0.0" - quick-format-unescaped: "npm:^4.0.3" - real-require: "npm:^0.2.0" - safe-stable-stringify: "npm:^2.3.1" - sonic-boom: "npm:^4.0.1" - thread-stream: "npm:^3.0.0" - bin: - pino: bin.js - checksum: 10/918e1fc764885150cb2b4fae8249a0ece53275020a7ca389f994fa2fbbb17b6353cd736c2db3a3794fbac0351f8e3d58411fabe127e875e24151a8fa4cd0b2b5 - languageName: node - linkType: hard - -"pirates@npm:^4.0.1": - version: 4.0.7 - resolution: "pirates@npm:4.0.7" - checksum: 10/2427f371366081ae42feb58214f04805d6b41d6b84d74480ebcc9e0ddbd7105a139f7c653daeaf83ad8a1a77214cf07f64178e76de048128fec501eab3305a96 - languageName: node - linkType: hard - -"pkg-dir@npm:^4.1.0, pkg-dir@npm:^4.2.0": - version: 4.2.0 - resolution: "pkg-dir@npm:4.2.0" - dependencies: - find-up: "npm:^4.0.0" - checksum: 10/9863e3f35132bf99ae1636d31ff1e1e3501251d480336edb1c211133c8d58906bed80f154a1d723652df1fda91e01c7442c2eeaf9dc83157c7ae89087e43c8d6 - languageName: node - linkType: hard - -"pkg-types@npm:^1.3.1": - version: 1.3.1 - resolution: "pkg-types@npm:1.3.1" - dependencies: - confbox: "npm:^0.1.8" - mlly: "npm:^1.7.4" - pathe: "npm:^2.0.1" - checksum: 10/6d491f2244597b24fb59a50e3c258f27da3839555d2a4e112b31bcf536e9359fc4edc98639cd74d2cf16fcd4269e5a09d99fc05d89e2acc896a2f027c2f6ec44 - languageName: node - linkType: hard - -"plist@npm:^3.0.4, plist@npm:^3.0.5": - version: 3.1.0 - resolution: "plist@npm:3.1.0" - dependencies: - "@xmldom/xmldom": "npm:^0.8.8" - base64-js: "npm:^1.5.1" - xmlbuilder: "npm:^15.1.1" - checksum: 10/f513beecc01a021b4913d4e5816894580b284335ae437e7ed2d5e78f8b6f0d2e0f874ec57bab9c9d424cc49e77b8347efa75abcfa8ac138dbfb63a045e1ce559 - languageName: node - linkType: hard - -"pluralize@npm:^8.0.0": - version: 8.0.0 - resolution: "pluralize@npm:8.0.0" - checksum: 10/17877fdfdb7ddb3639ce257ad73a7c51a30a966091e40f56ea9f2f545b5727ce548d4928f8cb3ce38e7dc0c5150407d318af6a4ed0ea5265d378473b4c2c61ec - languageName: node - linkType: hard - -"pnglib@npm:0.0.1": - version: 0.0.1 - resolution: "pnglib@npm:0.0.1" - checksum: 10/312ccae2ab33762dc289b6ffb9edd2ba75b1be30c5217e69231ef1105f31dc0ae52c5fc62b577008069e65c342e2dbb1228681c1660379568638b4fcc0b599f3 - languageName: node - linkType: hard - -"pontem-types-bundle@npm:1.0.15": - version: 1.0.15 - resolution: "pontem-types-bundle@npm:1.0.15" - dependencies: - "@polkadot/keyring": "npm:^7.4.1" - "@polkadot/types": "npm:^6.0.5" - typescript: "npm:^4.4.3" - checksum: 10/247c90b1259a02ad7f3cdcbda8d87b2e6be5f21412245f07d769154b3057c17f16955bb3a62b3429e5c4a13b8fbedce950fc7fb5603897462c86928a36039646 - languageName: node - linkType: hard - -"popper.js@npm:^1.14.4": - version: 1.16.1 - resolution: "popper.js@npm:1.16.1" - checksum: 10/71338c86faf9b66ce60c3cdd7fb2ed742944e5d2765a188f269239fee2980aa6223b77b41302d1b6eb7d724e611092f9a2576d0048ac2071b605291abc72c0cf - languageName: node - linkType: hard - -"possible-typed-array-names@npm:^1.0.0": - version: 1.1.0 - resolution: "possible-typed-array-names@npm:1.1.0" - checksum: 10/2f44137b8d3dd35f4a7ba7469eec1cd9cfbb46ec164b93a5bc1f4c3d68599c9910ee3b91da1d28b4560e9cc8414c3cd56fedc07259c67e52cc774476270d3302 - languageName: node - linkType: hard - -"postcss-load-config@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-load-config@npm:6.0.1" - dependencies: - lilconfig: "npm:^3.1.1" - 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 - checksum: 10/1691cfc94948a9373d4f7b3b7a8500cfaf8cb2dcc2107c14f90f2a711a9892a362b0866894ac5bb723455fa685a15116d9ed3252188689c4502b137c19d6bdc4 - languageName: node - linkType: hard - -"postcss-modules-extract-imports@npm:^3.1.0": - version: 3.1.0 - resolution: "postcss-modules-extract-imports@npm:3.1.0" - peerDependencies: - postcss: ^8.1.0 - checksum: 10/00bfd3aff045fc13ded8e3bbfd8dfc73eff9a9708db1b2a132266aef6544c8d2aee7a5d7e021885f6f9bbd5565a9a9ab52990316e21ad9468a2534f87df8e849 - languageName: node - linkType: hard - -"postcss-modules-local-by-default@npm:^4.0.5": - version: 4.2.0 - resolution: "postcss-modules-local-by-default@npm:4.2.0" - dependencies: - icss-utils: "npm:^5.0.0" - postcss-selector-parser: "npm:^7.0.0" - postcss-value-parser: "npm:^4.1.0" - peerDependencies: - postcss: ^8.1.0 - checksum: 10/552329aa39fbf229b8ac5a04f8aed0b1553e7a3c10b165ee700d1deb020c071875b3df7ab5e3591f6af33d461df66d330ec9c1256229e45fc618a47c60f41536 - languageName: node - linkType: hard - -"postcss-modules-scope@npm:^3.2.0": - version: 3.2.1 - resolution: "postcss-modules-scope@npm:3.2.1" - dependencies: - postcss-selector-parser: "npm:^7.0.0" - peerDependencies: - postcss: ^8.1.0 - checksum: 10/51c747fa15cedf1b2856da472985ea7a7bb510a63daf30f95f250f34fce9e28ef69b802e6cc03f9c01f69043d171bc33279109a9235847c2d3a75c44eac67334 - languageName: node - linkType: hard - -"postcss-modules-values@npm:^4.0.0": - version: 4.0.0 - resolution: "postcss-modules-values@npm:4.0.0" - dependencies: - icss-utils: "npm:^5.0.0" - peerDependencies: - postcss: ^8.1.0 - checksum: 10/18021961a494e69e65da9e42b4436144c9ecee65845c9bfeff2b7a26ea73d60762f69e288be8bb645447965b8fd6b26a264771136810dc0172bd31b940aee4f2 - languageName: node - linkType: hard - -"postcss-selector-parser@npm:^7.0.0": - version: 7.1.1 - resolution: "postcss-selector-parser@npm:7.1.1" - dependencies: - cssesc: "npm:^3.0.0" - util-deprecate: "npm:^1.0.2" - checksum: 10/bb3c6455b20af26a556e3021e21101d8470252644e673c1612f7348ff8dd41b11321329f0694cf299b5b94863f823480b72d3e2f4bd3a89dc43e2d8c0dbad341 - languageName: node - linkType: hard - -"postcss-value-parser@npm:^4.0.2, postcss-value-parser@npm:^4.1.0, postcss-value-parser@npm:^4.2.0": - version: 4.2.0 - resolution: "postcss-value-parser@npm:4.2.0" - checksum: 10/e4e4486f33b3163a606a6ed94f9c196ab49a37a7a7163abfcd469e5f113210120d70b8dd5e33d64636f41ad52316a3725655421eb9a1094f1bcab1db2f555c62 - languageName: node - linkType: hard - -"postcss-values-parser@npm:^2.0.1": - version: 2.0.1 - resolution: "postcss-values-parser@npm:2.0.1" - dependencies: - flatten: "npm:^1.0.2" - indexes-of: "npm:^1.0.1" - uniq: "npm:^1.0.1" - checksum: 10/f69211656b90a9d2f5efb1ec4a9e5f076f968b0c1169bfddc16aa0dce2e3a2853d7875e4d8058652e9b65d084fab93bfee8da389f6a2145ac547ee9ab0a03456 - languageName: node - linkType: hard - -"postcss-values-parser@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-values-parser@npm:6.0.2" - dependencies: - color-name: "npm:^1.1.4" - is-url-superb: "npm:^4.0.0" - quote-unquote: "npm:^1.0.0" - peerDependencies: - postcss: ^8.2.9 - checksum: 10/ff2fa096896f1c33f7531e814b8d01e785bd99d672c1597d5c5d8c2409b30b8146be6565f6269c952d1f03d626f00ae3f1afb8308cc772c08b323abee23c9a42 - languageName: node - linkType: hard - -"postcss@npm:8.4.49": - version: 8.4.49 - resolution: "postcss@npm:8.4.49" - dependencies: - nanoid: "npm:^3.3.7" - picocolors: "npm:^1.1.1" - source-map-js: "npm:^1.2.1" - checksum: 10/28fe1005b1339870e0a5006375ba5ac1213fd69800f79e7db09c398e074421ba6e162898e94f64942fed554037fd292db3811d87835d25ab5ef7f3c9daacb6ca - languageName: node - linkType: hard - -"postcss@npm:^8.1.7, postcss@npm:^8.4.23, postcss@npm:^8.4.33": - version: 8.5.6 - resolution: "postcss@npm:8.5.6" - dependencies: - nanoid: "npm:^3.3.11" - picocolors: "npm:^1.1.1" - source-map-js: "npm:^1.2.1" - checksum: 10/9e4fbe97574091e9736d0e82a591e29aa100a0bf60276a926308f8c57249698935f35c5d2f4e80de778d0cbb8dcffab4f383d85fd50c5649aca421c3df729b86 - languageName: node - linkType: hard - -"prebuild-install@npm:^7.1.1": - version: 7.1.3 - resolution: "prebuild-install@npm:7.1.3" - dependencies: - detect-libc: "npm:^2.0.0" - expand-template: "npm:^2.0.3" - github-from-package: "npm:0.0.0" - minimist: "npm:^1.2.3" - mkdirp-classic: "npm:^0.5.3" - napi-build-utils: "npm:^2.0.0" - node-abi: "npm:^3.3.0" - pump: "npm:^3.0.0" - rc: "npm:^1.2.7" - simple-get: "npm:^4.0.0" - tar-fs: "npm:^2.0.0" - tunnel-agent: "npm:^0.6.0" - bin: - prebuild-install: bin.js - checksum: 10/1b7e4c00d2750b532a4fc2a83ffb0c5fefa1b6f2ad071896ead15eeadc3255f5babd816949991af083cf7429e375ae8c7d1c51f73658559da36f948a020a3a11 - languageName: node - linkType: hard - -"precinct@npm:^8.1.0": - version: 8.3.1 - resolution: "precinct@npm:8.3.1" - dependencies: - commander: "npm:^2.20.3" - debug: "npm:^4.3.3" - detective-amd: "npm:^3.1.0" - detective-cjs: "npm:^3.1.1" - detective-es6: "npm:^2.2.1" - detective-less: "npm:^1.0.2" - detective-postcss: "npm:^4.0.0" - detective-sass: "npm:^3.0.1" - detective-scss: "npm:^2.0.1" - detective-stylus: "npm:^1.0.0" - detective-typescript: "npm:^7.0.0" - module-definition: "npm:^3.3.1" - node-source-walk: "npm:^4.2.0" - bin: - precinct: bin/cli.js - checksum: 10/46ec2cd2e8af5386b1b0bf47fb264b288be39895dc6e33b9537d795d57c7b0a97f349c217edfa0bf584fef1031b4b0a5b30d1ad74fbe9833644adad6e325bc9e - languageName: node - linkType: hard - -"precinct@npm:^9.0.0": - version: 9.2.1 - resolution: "precinct@npm:9.2.1" - dependencies: - "@dependents/detective-less": "npm:^3.0.1" - commander: "npm:^9.5.0" - detective-amd: "npm:^4.1.0" - detective-cjs: "npm:^4.1.0" - detective-es6: "npm:^3.0.1" - detective-postcss: "npm:^6.1.1" - detective-sass: "npm:^4.1.1" - detective-scss: "npm:^3.0.1" - detective-stylus: "npm:^3.0.0" - detective-typescript: "npm:^9.1.1" - module-definition: "npm:^4.1.0" - node-source-walk: "npm:^5.0.1" - bin: - precinct: bin/cli.js - checksum: 10/f208d2e3c5d7c7b3834f70f761d0255680f76268d3835cd498006bc5dafa602aaecda0b2e68868ed679ec330fddaee0b662ba862d6eacd7282760dc0bc5f1b35 - languageName: node - linkType: hard - -"prelude-ls@npm:^1.2.1": - version: 1.2.1 - resolution: "prelude-ls@npm:1.2.1" - checksum: 10/0b9d2c76801ca652a7f64892dd37b7e3fab149a37d2424920099bf894acccc62abb4424af2155ab36dea8744843060a2d8ddc983518d0b1e22265a22324b72ed - languageName: node - linkType: hard - -"prepend-http@npm:^2.0.0": - version: 2.0.0 - resolution: "prepend-http@npm:2.0.0" - checksum: 10/7694a9525405447662c1ffd352fcb41b6410c705b739b6f4e3a3e21cf5fdede8377890088e8934436b8b17ba55365a615f153960f30877bf0d0392f9e93503ea - languageName: node - linkType: hard - -"pretty-error@npm:^4.0.0": - version: 4.0.0 - resolution: "pretty-error@npm:4.0.0" - dependencies: - lodash: "npm:^4.17.20" - renderkid: "npm:^3.0.0" - checksum: 10/0212ad8742f8bb6f412f95b07d7f6874c55514ac4384f4f7de0defe77e767cca99f667c2316529f62a041fa654194a99c1ee7e321e1b7f794b5cc700777634d6 - languageName: node - linkType: hard - -"pretty-format@npm:30.2.0, pretty-format@npm:^30.0.0": - version: 30.2.0 - resolution: "pretty-format@npm:30.2.0" - dependencies: - "@jest/schemas": "npm:30.0.5" - ansi-styles: "npm:^5.2.0" - react-is: "npm:^18.3.1" - checksum: 10/725890d648e3400575eebc99a334a4cd1498e0d36746313913706bbeea20ada27e17c184a3cd45c50f705c16111afa829f3450233fc0fda5eed293c69757e926 - languageName: node - linkType: hard - -"pretty-format@npm:^27.0.2": - version: 27.5.1 - resolution: "pretty-format@npm:27.5.1" - dependencies: - ansi-regex: "npm:^5.0.1" - ansi-styles: "npm:^5.0.0" - react-is: "npm:^17.0.1" - checksum: 10/248990cbef9e96fb36a3e1ae6b903c551ca4ddd733f8d0912b9cc5141d3d0b3f9f8dfb4d799fb1c6723382c9c2083ffbfa4ad43ff9a0e7535d32d41fd5f01da6 - languageName: node - linkType: hard - -"pretty-ms@npm:^7.0.1": - version: 7.0.1 - resolution: "pretty-ms@npm:7.0.1" - dependencies: - parse-ms: "npm:^2.1.0" - checksum: 10/a39aac23cc7dae7a94c70518ab8b6c6db0894a7b84c81ee7abc8778c5ec8bae2d1e71ba991ff641732b38433724bfbdbb37bd3a00418637f797c072e06fe8b4c - languageName: node - linkType: hard - -"prismjs@npm:^1.14.0": - version: 1.30.0 - resolution: "prismjs@npm:1.30.0" - checksum: 10/6b48a2439a82e5c6882f48ebc1564c3890e16463ba17ac10c3ad4f62d98dea5b5c915b172b63b83023a70ad4f5d7be3e8a60304420db34a161fae69dd4e3e2da - languageName: node - linkType: hard - -"private@npm:^0.1.6, private@npm:~0.1.5": - version: 0.1.8 - resolution: "private@npm:0.1.8" - checksum: 10/192ce0764e1708a40e42ad3b679c8553c275e4ee9d5dcfdf3de99b01d43a6ee3047f0d293e892c003276cde3829f0548e60f77fa49e2e51b380939e662794a1e - languageName: node - linkType: hard - -"proc-log@npm:^6.0.0": - version: 6.1.0 - resolution: "proc-log@npm:6.1.0" - checksum: 10/9033f30f168ed5a0991b773d0c50ff88384c4738e9a0a67d341de36bf7293771eed648ab6a0562f62276da12fde91f3bbfc75ffff6e71ad49aafd74fc646be66 - languageName: node - linkType: hard - -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 10/1d38588e520dab7cea67cbbe2efdd86a10cc7a074c09657635e34f035277b59fbb57d09d8638346bf7090f8e8ebc070c96fa5fd183b777fff4f5edff5e9466cf - languageName: node - linkType: hard - -"process-warning@npm:^5.0.0": - version: 5.0.0 - resolution: "process-warning@npm:5.0.0" - checksum: 10/10f3e00ac9fc1943ec4566ff41fff2b964e660f853c283e622257719839d340b4616e707d62a02d6aa0038761bb1fa7c56bc7308d602d51bd96f05f9cd305dcd - languageName: node - linkType: hard - -"process@npm:^0.11.10": - version: 0.11.10 - resolution: "process@npm:0.11.10" - checksum: 10/dbaa7e8d1d5cf375c36963ff43116772a989ef2bb47c9bdee20f38fd8fc061119cf38140631cf90c781aca4d3f0f0d2c834711952b728953f04fd7d238f59f5b - languageName: node - linkType: hard - -"progress-events@npm:^1.0.0": - version: 1.0.1 - resolution: "progress-events@npm:1.0.1" - checksum: 10/21e8ba984e6c6f6764279fabdf7b34d8110c1720757360fc8cad56b1622e67857fe543619652b64cee51a880a2a4a5febdcb4ff86e4c2969ed90048e2264f42f - languageName: node - linkType: hard - -"progress-stream@npm:^2.0.0": - version: 2.0.0 - resolution: "progress-stream@npm:2.0.0" - dependencies: - speedometer: "npm:~1.0.0" - through2: "npm:~2.0.3" - checksum: 10/839f1009f9feb3d14cbb9bef16eebaecf9560af7b7f64003bfb42c4db1a8e52b32d6bb5a14299a38522046c26bac1bbad1a99eec6fb8fc42b1d4ed3f21f22a41 - languageName: node - linkType: hard - -"progress@npm:^2.0.3": - version: 2.0.3 - resolution: "progress@npm:2.0.3" - checksum: 10/e6f0bcb71f716eee9dfac0fe8a2606e3704d6a64dd93baaf49fbadbc8499989a610fe14cf1bc6f61b6d6653c49408d94f4a94e124538084efd8e4cf525e0293d - languageName: node - linkType: hard - -"promise-retry@npm:^2.0.1": - version: 2.0.1 - resolution: "promise-retry@npm:2.0.1" - dependencies: - err-code: "npm:^2.0.2" - retry: "npm:^0.12.0" - checksum: 10/96e1a82453c6c96eef53a37a1d6134c9f2482f94068f98a59145d0986ca4e497bf110a410adf73857e588165eab3899f0ebcf7b3890c1b3ce802abc0d65967d4 - languageName: node - linkType: hard - -"prop-types@npm:^15.6.1, prop-types@npm:^15.6.2, prop-types@npm:^15.7.2, prop-types@npm:^15.8.1": - version: 15.8.1 - resolution: "prop-types@npm:15.8.1" - dependencies: - loose-envify: "npm:^1.4.0" - object-assign: "npm:^4.1.1" - react-is: "npm:^16.13.1" - checksum: 10/7d959caec002bc964c86cdc461ec93108b27337dabe6192fb97d69e16a0c799a03462713868b40749bfc1caf5f57ef80ac3e4ffad3effa636ee667582a75e2c0 - languageName: node - linkType: hard - -"propagate@npm:^2.0.0": - version: 2.0.1 - resolution: "propagate@npm:2.0.1" - checksum: 10/8c761c16e8232f82f6d015d3e01e8bd4109f47ad804f904d950f6fe319813b448ca112246b6bfdc182b400424b155b0b7c4525a9bb009e6fa950200157569c14 - languageName: node - linkType: hard - -"proper-lockfile@npm:^4.1.2": - version: 4.1.2 - resolution: "proper-lockfile@npm:4.1.2" - dependencies: - graceful-fs: "npm:^4.2.4" - retry: "npm:^0.12.0" - signal-exit: "npm:^3.0.2" - checksum: 10/000a4875f543f591872b36ca94531af8a6463ddb0174f41c0b004d19e231d7445268b422ff1ea595e43d238655c702250cd3d27f408e7b9d97b56f1533ba26bf - languageName: node - linkType: hard - -"properties-reader@npm:^2.3.0": - version: 2.3.0 - resolution: "properties-reader@npm:2.3.0" - dependencies: - mkdirp: "npm:^1.0.4" - checksum: 10/0b41eb4136dc278ae0d97968ccce8de2d48d321655b319192e31f2424f1c6e052182204671e65aa8967216360cb3e7cbd9129830062e058fe9d6a1d74964c29a - languageName: node - linkType: hard - -"property-information@npm:^7.0.0": - version: 7.1.0 - resolution: "property-information@npm:7.1.0" - checksum: 10/896d38a52ad7170de73f832d277c69e76a9605d941ebb3f0d6e56271414a7fdf95ff6d2819e68036b8a0c7d2d4d88bf1d4a5765c032cb19c2343567ee3a14b15 - languageName: node - linkType: hard - -"protobufjs@npm:^7.2.5, protobufjs@npm:^7.3.2, protobufjs@npm:^7.5.3": - version: 7.5.4 - resolution: "protobufjs@npm:7.5.4" - dependencies: - "@protobufjs/aspromise": "npm:^1.1.2" - "@protobufjs/base64": "npm:^1.1.2" - "@protobufjs/codegen": "npm:^2.0.4" - "@protobufjs/eventemitter": "npm:^1.1.0" - "@protobufjs/fetch": "npm:^1.1.0" - "@protobufjs/float": "npm:^1.0.2" - "@protobufjs/inquire": "npm:^1.1.0" - "@protobufjs/path": "npm:^1.1.2" - "@protobufjs/pool": "npm:^1.1.0" - "@protobufjs/utf8": "npm:^1.1.0" - "@types/node": "npm:>=13.7.0" - long: "npm:^5.0.0" - checksum: 10/88d677bb6f11a2ecec63fdd053dfe6d31120844d04e865efa9c8fbe0674cd077d6624ecfdf014018a20dcb114ae2a59c1b21966dd8073e920650c71370966439 - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10/f24a0c80af0e75d31e3451398670d73406ec642914da11a2965b80b1898ca6f66a0e3e091a11a4327079b2b268795f6fa06691923fef91887215c3d0e8ea3f68 - languageName: node - linkType: hard - -"proxy-from-env@npm:^1.1.0": - version: 1.1.0 - resolution: "proxy-from-env@npm:1.1.0" - checksum: 10/f0bb4a87cfd18f77bc2fba23ae49c3b378fb35143af16cc478171c623eebe181678f09439707ad80081d340d1593cd54a33a0113f3ccb3f4bc9451488780ee23 - languageName: node - linkType: hard - -"psl@npm:^1.1.33": - version: 1.15.0 - resolution: "psl@npm:1.15.0" - dependencies: - punycode: "npm:^2.3.1" - checksum: 10/5e7467eb5196eb7900d156783d12907d445c0122f76c73203ce96b148a6ccf8c5450cc805887ffada38ff92d634afcf33720c24053cb01d5b6598d1c913c5caf - languageName: node - linkType: hard - -"public-encrypt@npm:^4.0.3": - version: 4.0.3 - resolution: "public-encrypt@npm:4.0.3" - dependencies: - bn.js: "npm:^4.1.0" - browserify-rsa: "npm:^4.0.0" - create-hash: "npm:^1.1.0" - parse-asn1: "npm:^5.0.0" - randombytes: "npm:^2.0.1" - safe-buffer: "npm:^5.1.2" - checksum: 10/059d64da8ba9ea0733377d23b57b6cbe5be663c8eb187b9c051eec85f799ff95c4e194eb3a69db07cc1f73a2a63519e67716ae9b8630e13e7149840d0abe044d - languageName: node - linkType: hard - -"pump@npm:^3.0.0": - version: 3.0.3 - resolution: "pump@npm:3.0.3" - dependencies: - end-of-stream: "npm:^1.1.0" - once: "npm:^1.3.1" - checksum: 10/52843fc933b838c0330f588388115a1b28ef2a5ffa7774709b142e35431e8ab0c2edec90de3fa34ebb72d59fef854f151eea7dfc211b6dcf586b384556bd2f39 - languageName: node - linkType: hard - -"pumpify@npm:^2.0.1": - version: 2.0.1 - resolution: "pumpify@npm:2.0.1" - dependencies: - duplexify: "npm:^4.1.1" - inherits: "npm:^2.0.3" - pump: "npm:^3.0.0" - checksum: 10/54bfdd04a30f459de5f1d1d022dc729e7257748900adf567a3b009f5aefe4a862ca91f3fb272f86c621eae631c4cc41f0efe5ee270752e2f9a90e7e63a9f8570 - languageName: node - linkType: hard - -"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: 10/febdc4362bead22f9e2608ff0171713230b57aff9dddc1c273aa2a651fbd366f94b7d6a71d78342a7c0819906750351ca7f2edd26ea41b626d87d6a13d1bd059 - languageName: node - linkType: hard - -"pupa@npm:^2.1.1": - version: 2.1.1 - resolution: "pupa@npm:2.1.1" - dependencies: - escape-goat: "npm:^2.0.0" - checksum: 10/49529e50372ffdb0cccf0efa0f3b3cb0a2c77805d0d9cc2725bd2a0f6bb414631e61c93a38561b26be1259550b7bb6c2cb92315aa09c8bf93f3bdcb49f2b2fb7 - languageName: node - linkType: hard - -"q@npm:^1.1.2": - version: 1.5.1 - resolution: "q@npm:1.5.1" - checksum: 10/70c4a30b300277165cd855889cd3aa681929840a5940413297645c5691e00a3549a2a4153131efdf43fe8277ee8cf5a34c9636dcb649d83ad47f311a015fd380 - languageName: node - linkType: hard - -"qrcode-generator@npm:^1.4.4": - version: 1.5.2 - resolution: "qrcode-generator@npm:1.5.2" - checksum: 10/79a8d466227922cd066364a5d0e58b78f45051463594159f95987f7e8925d6e2c67ec776d38eaeda74d3e4d95ea79c74c4261b6bc19790f55b3d562888765d71 - languageName: node - linkType: hard - -"qs@npm:~6.14.0": - version: 6.14.1 - resolution: "qs@npm:6.14.1" - dependencies: - side-channel: "npm:^1.1.0" - checksum: 10/34b5ab00a910df432d55180ef39c1d1375e550f098b5ec153b41787f1a6a6d7e5f9495593c3b112b77dbc6709d0ae18e55b82847a4c2bbbb0de1e8ccbb1794c5 - languageName: node - linkType: hard - -"query-string@npm:^8.1.0": - version: 8.2.0 - resolution: "query-string@npm:8.2.0" - dependencies: - decode-uri-component: "npm:^0.4.1" - filter-obj: "npm:^5.1.0" - split-on-first: "npm:^3.0.0" - checksum: 10/a9a6d4aafd3444d67d5766c658cb0d64ea5a87fec683538deb1f95446089d1660c75c9accbb030ba384ab6d329bdffbb367279e55cc880c56789678e0a55dd9b - languageName: node - linkType: hard - -"querystringify@npm:^2.1.1": - version: 2.2.0 - resolution: "querystringify@npm:2.2.0" - checksum: 10/46ab16f252fd892fc29d6af60966d338cdfeea68a231e9457631ffd22d67cec1e00141e0a5236a2eb16c0d7d74175d9ec1d6f963660c6f2b1c2fc85b194c5680 - languageName: node - linkType: hard - -"queue-microtask@npm:^1.2.2": - version: 1.2.3 - resolution: "queue-microtask@npm:1.2.3" - checksum: 10/72900df0616e473e824202113c3df6abae59150dfb73ed13273503127235320e9c8ca4aaaaccfd58cf417c6ca92a6e68ee9a5c3182886ae949a768639b388a7b - languageName: node - linkType: hard - -"quick-format-unescaped@npm:^4.0.3": - version: 4.0.4 - resolution: "quick-format-unescaped@npm:4.0.4" - checksum: 10/591eca457509a99368b623db05248c1193aa3cedafc9a077d7acab09495db1231017ba3ad1b5386e5633271edd0a03b312d8640a59ee585b8516a42e15438aa7 - languageName: node - linkType: hard - -"quick-lru@npm:^4.0.1": - version: 4.0.1 - resolution: "quick-lru@npm:4.0.1" - checksum: 10/5c7c75f1c696750f619b165cc9957382f919e4207dabf04597a64f0298861391cdc5ee91a1dde1a5d460ecf7ee1af7fc36fef6d155bef2be66f05d43fd63d4f0 - languageName: node - linkType: hard - -"quick-lru@npm:^5.1.1": - version: 5.1.1 - resolution: "quick-lru@npm:5.1.1" - checksum: 10/a516faa25574be7947969883e6068dbe4aa19e8ef8e8e0fd96cddd6d36485e9106d85c0041a27153286b0770b381328f4072aa40d3b18a19f5f7d2b78b94b5ed - languageName: node - linkType: hard - -"quote-unquote@npm:^1.0.0": - version: 1.0.0 - resolution: "quote-unquote@npm:1.0.0" - checksum: 10/955a2ead534f5b6a3f8d4dc5a4b95ac6468213d3fb11f8c1592a0a56345c45a3d14d5ca04d3de2bc9891493fcac38c03dfa91c48a6159aef50124e9c5afcea49 - languageName: node - linkType: hard - -"raf-schd@npm:^4.0.2": - version: 4.0.3 - resolution: "raf-schd@npm:4.0.3" - checksum: 10/45514041c5ad31fa96aef3bb3c572a843b92da2f2cd1cb4a47c9ad58e48761d3a4126e18daa32b2bfa0bc2551a42d8f324a0e40e536cb656969929602b4e8b58 - languageName: node - linkType: hard - -"randombytes@npm:^2.0.0, randombytes@npm:^2.0.1, randombytes@npm:^2.0.5, randombytes@npm:^2.1.0": - version: 2.1.0 - resolution: "randombytes@npm:2.1.0" - dependencies: - safe-buffer: "npm:^5.1.0" - checksum: 10/4efd1ad3d88db77c2d16588dc54c2b52fd2461e70fe5724611f38d283857094fe09040fa2c9776366803c3152cf133171b452ef717592b65631ce5dc3a2bdafc - languageName: node - linkType: hard - -"randomfill@npm:^1.0.4": - version: 1.0.4 - resolution: "randomfill@npm:1.0.4" - dependencies: - randombytes: "npm:^2.0.5" - safe-buffer: "npm:^5.1.0" - checksum: 10/33734bb578a868d29ee1b8555e21a36711db084065d94e019a6d03caa67debef8d6a1bfd06a2b597e32901ddc761ab483a85393f0d9a75838f1912461d4dbfc7 - languageName: node - linkType: hard - -"range-parser@npm:^1.2.1, range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10/ce21ef2a2dd40506893157970dc76e835c78cf56437e26e19189c48d5291e7279314477b06ac38abd6a401b661a6840f7b03bd0b1249da9b691deeaa15872c26 - languageName: node - linkType: hard - -"raw-body@npm:~2.5.3": - version: 2.5.3 - resolution: "raw-body@npm:2.5.3" - dependencies: - bytes: "npm:~3.1.2" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - unpipe: "npm:~1.0.0" - checksum: 10/f35759fe5a6548e7c529121ead1de4dd163f899749a5896c42e278479df2d9d7f98b5bb17312737c03617765e5a1433e586f717616e5cfbebc13b4738b820601 - languageName: node - linkType: hard - -"rc@npm:1.2.8, rc@npm:^1.2.7, rc@npm:^1.2.8": - version: 1.2.8 - resolution: "rc@npm:1.2.8" - dependencies: - deep-extend: "npm:^0.6.0" - ini: "npm:~1.3.0" - minimist: "npm:^1.2.0" - strip-json-comments: "npm:~2.0.1" - bin: - rc: ./cli.js - checksum: 10/5c4d72ae7eec44357171585938c85ce066da8ca79146b5635baf3d55d74584c92575fa4e2c9eac03efbed3b46a0b2e7c30634c012b4b4fa40d654353d3c163eb - languageName: node - linkType: hard - -"react-beautiful-dnd@npm:^13.1.1": - version: 13.1.1 - resolution: "react-beautiful-dnd@npm:13.1.1" - dependencies: - "@babel/runtime": "npm:^7.9.2" - css-box-model: "npm:^1.2.0" - memoize-one: "npm:^5.1.1" - raf-schd: "npm:^4.0.2" - react-redux: "npm:^7.2.0" - redux: "npm:^4.0.4" - use-memo-one: "npm:^1.1.1" - peerDependencies: - react: ^16.8.5 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.5 || ^17.0.0 || ^18.0.0 - checksum: 10/2de8162a74f7fc78294e5a928b92d3fff02c579d137a25d53b1ab4313abeb108709bb7281512f7f94d18257de3122b8c85cb5a8375113cb8657088b1a9bda65b - languageName: node - linkType: hard - -"react-chartjs-2@npm:^5.2.0": - version: 5.3.1 - resolution: "react-chartjs-2@npm:5.3.1" - peerDependencies: - chart.js: ^4.1.1 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - checksum: 10/889f17ac70806d13135357b0d858ec862b53783bf70ccdffd15f6d03f1a92dae5f02b5e14644136ef5df2bc2a63401642dc0a73b694f568be4f7fbcdf3a58665 - languageName: node - linkType: hard - -"react-copy-to-clipboard@npm:^5.1.0": - version: 5.1.0 - resolution: "react-copy-to-clipboard@npm:5.1.0" - dependencies: - copy-to-clipboard: "npm:^3.3.1" - prop-types: "npm:^15.8.1" - peerDependencies: - react: ^15.3.0 || 16 || 17 || 18 - checksum: 10/56a8b11a268a19d4e4ec409327f1c17d68c4f13a54330b9c0e3271acb44bb6886b72e04d77399c9945968851e8532dd192bbccffd1b2f8b010f4bb47e5743b3b - languageName: node - linkType: hard - -"react-dom@npm:^18.2.0": - version: 18.3.1 - resolution: "react-dom@npm:18.3.1" - dependencies: - loose-envify: "npm:^1.1.0" - scheduler: "npm:^0.23.2" - peerDependencies: - react: ^18.3.1 - checksum: 10/3f4b73a3aa083091173b29812b10394dd06f4ac06aff410b74702cfb3aa29d7b0ced208aab92d5272919b612e5cda21aeb1d54191848cf6e46e9e354f3541f81 - languageName: node - linkType: hard - -"react-dropzone@npm:^14.2.3": - version: 14.3.8 - resolution: "react-dropzone@npm:14.3.8" - dependencies: - attr-accept: "npm:^2.2.4" - file-selector: "npm:^2.1.0" - prop-types: "npm:^15.8.1" - peerDependencies: - react: ">= 16.8 || 18.0.0" - checksum: 10/31d5089c2acb4528a279761473a00a1c148b78ae41a6ac49ed09ee94f1d44595437188308ec838debfa0d08082893b170dc072e680aca00469793a05d61b07f2 - languageName: node - linkType: hard - -"react-i18next@npm:^13.5.0": - version: 13.5.0 - resolution: "react-i18next@npm:13.5.0" - dependencies: - "@babel/runtime": "npm:^7.22.5" - html-parse-stringify: "npm:^3.0.1" - peerDependencies: - i18next: ">= 23.2.3" - react: ">= 16.8.0" - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - checksum: 10/903b486d112cd0aa40bdc3afaefd0c32b91c0a1e3e3561367c8d91ddc0fbad9945f1d630c3ddcd4764795fc00e0887252e2d337256a825caf3a86de038f6b2db - languageName: node - linkType: hard - -"react-is@npm:^16.13.1, react-is@npm:^16.6.3, react-is@npm:^16.7.0, react-is@npm:^16.8.6": - version: 16.13.1 - resolution: "react-is@npm:16.13.1" - checksum: 10/5aa564a1cde7d391ac980bedee21202fc90bdea3b399952117f54fb71a932af1e5902020144fb354b4690b2414a0c7aafe798eb617b76a3d441d956db7726fdf - languageName: node - linkType: hard - -"react-is@npm:^17.0.1, react-is@npm:^17.0.2": - version: 17.0.2 - resolution: "react-is@npm:17.0.2" - checksum: 10/73b36281e58eeb27c9cc6031301b6ae19ecdc9f18ae2d518bdb39b0ac564e65c5779405d623f1df9abf378a13858b79442480244bd579968afc1faf9a2ce5e05 - languageName: node - linkType: hard - -"react-is@npm:^18.2.0, react-is@npm:^18.3.1": - version: 18.3.1 - resolution: "react-is@npm:18.3.1" - checksum: 10/d5f60c87d285af24b1e1e7eaeb123ec256c3c8bdea7061ab3932e3e14685708221bf234ec50b21e10dd07f008f1b966a2730a0ce4ff67905b3872ff2042aec22 - languageName: node - linkType: hard - -"react-markdown@npm:^9.0.1": - version: 9.1.0 - resolution: "react-markdown@npm:9.1.0" - dependencies: - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - devlop: "npm:^1.0.0" - hast-util-to-jsx-runtime: "npm:^2.0.0" - html-url-attributes: "npm:^3.0.0" - mdast-util-to-hast: "npm:^13.0.0" - remark-parse: "npm:^11.0.0" - remark-rehype: "npm:^11.0.0" - unified: "npm:^11.0.0" - unist-util-visit: "npm:^5.0.0" - vfile: "npm:^6.0.0" - peerDependencies: - "@types/react": ">=18" - react: ">=18" - checksum: 10/07045797b926afafc6aff692c9ee7d1cb9b12bc0e2d2b9f22ab17f2d1036dd807034a58565d67cfcfe94fe43961452a977496a175cbc9028ed51f2eec823c2f4 - languageName: node - linkType: hard - -"react-popper@npm:^1.3.4": - version: 1.3.11 - resolution: "react-popper@npm:1.3.11" - dependencies: - "@babel/runtime": "npm:^7.1.2" - "@hypnosphi/create-react-context": "npm:^0.3.1" - deep-equal: "npm:^1.1.1" - popper.js: "npm:^1.14.4" - prop-types: "npm:^15.6.1" - typed-styles: "npm:^0.0.7" - warning: "npm:^4.0.2" - peerDependencies: - react: 0.14.x || ^15.0.0 || ^16.0.0 || ^17.0.0 - checksum: 10/1f7115da1dd0fdca1fc266d2cefa79ed00eca560f72399a9149e9a8a4bc3e9d9fe4e2955bbbe2e3326607ceb3bd4a971e501fb0d6bbf57bf492c0072ae39c2c6 - languageName: node - linkType: hard - -"react-redux@npm:^7.2.0": - version: 7.2.9 - resolution: "react-redux@npm:7.2.9" - dependencies: - "@babel/runtime": "npm:^7.15.4" - "@types/react-redux": "npm:^7.1.20" - hoist-non-react-statics: "npm:^3.3.2" - loose-envify: "npm:^1.4.0" - prop-types: "npm:^15.7.2" - react-is: "npm:^17.0.2" - peerDependencies: - react: ^16.8.3 || ^17 || ^18 - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - checksum: 10/1c3018bd2601e6d18339281867910b583dcbb3d8856403086e08c00abf0dfe467a94c0d1356bafa8cdf107bf1e2c9899a28486e4778e85c8bc4dfed2076b116f - languageName: node - linkType: hard - -"react-router-dom@npm:^6.21.0": - version: 6.30.3 - resolution: "react-router-dom@npm:6.30.3" - dependencies: - "@remix-run/router": "npm:1.23.2" - react-router: "npm:6.30.3" - peerDependencies: - react: ">=16.8" - react-dom: ">=16.8" - checksum: 10/db974d801070e9967a076b31edca902e127793e02dc79f364461b94e81846a588c241d72e069f5b586b4a90ffd99798f5cb97753ac9d22fe90afa6dc008ab520 - languageName: node - linkType: hard - -"react-router@npm:6.30.3, react-router@npm:^6.21.0": - version: 6.30.3 - resolution: "react-router@npm:6.30.3" - dependencies: - "@remix-run/router": "npm:1.23.2" - peerDependencies: - react: ">=16.8" - checksum: 10/1a51bdcc42b8d7979228dea8b5c44a28a4add9b681781f75b74f5f920d20058a92ffe5f1d0ba0621f03abe1384b36025b53b402515ecb35f27a6a2f2f25d6fbe - languageName: node - linkType: hard - -"react-tooltip@npm:^4.5.1": - version: 4.5.1 - resolution: "react-tooltip@npm:4.5.1" - dependencies: - prop-types: "npm:^15.8.1" - uuid: "npm:^7.0.3" - peerDependencies: - react: ">=16.0.0" - react-dom: ">=16.0.0" - checksum: 10/a2031d6a9903f18046bb3374a1a23f739fb5ebd272c049772dec9108d5da141f4cf98354970e824d70a83f06aed48cf7e96ab69616ecc0d4e6e8c73cef4b6823 - languageName: node - linkType: hard - -"react@npm:^18.2.0": - version: 18.3.1 - resolution: "react@npm:18.3.1" - dependencies: - loose-envify: "npm:^1.1.0" - checksum: 10/261137d3f3993eaa2368a83110466fc0e558bc2c7f7ae7ca52d94f03aac945f45146bd85e5f481044db1758a1dbb57879e2fcdd33924e2dde1bdc550ce73f7bf - languageName: node - linkType: hard - -"read-config-file@npm:6.3.2": - version: 6.3.2 - resolution: "read-config-file@npm:6.3.2" - dependencies: - config-file-ts: "npm:^0.2.4" - dotenv: "npm:^9.0.2" - dotenv-expand: "npm:^5.1.0" - js-yaml: "npm:^4.1.0" - json5: "npm:^2.2.0" - lazy-val: "npm:^1.0.4" - checksum: 10/c3a6444105fc1736d6fa15979d1d18e9f0a1165bf3966f1751af676d153f92df9fc7c07158162b62d222919e561e135bdd6155c6fff79f1ed8b78a5a394a579b - languageName: node - linkType: hard - -"read-pkg-up@npm:^7.0.0, read-pkg-up@npm:^7.0.1": - version: 7.0.1 - resolution: "read-pkg-up@npm:7.0.1" - dependencies: - find-up: "npm:^4.1.0" - read-pkg: "npm:^5.2.0" - type-fest: "npm:^0.8.1" - checksum: 10/e4e93ce70e5905b490ca8f883eb9e48b5d3cebc6cd4527c25a0d8f3ae2903bd4121c5ab9c5a3e217ada0141098eeb661313c86fa008524b089b8ed0b7f165e44 - languageName: node - linkType: hard - -"read-pkg@npm:^5.2.0": - version: 5.2.0 - resolution: "read-pkg@npm:5.2.0" - dependencies: - "@types/normalize-package-data": "npm:^2.4.0" - normalize-package-data: "npm:^2.5.0" - parse-json: "npm:^5.0.0" - type-fest: "npm:^0.6.0" - checksum: 10/eb696e60528b29aebe10e499ba93f44991908c57d70f2d26f369e46b8b9afc208ef11b4ba64f67630f31df8b6872129e0a8933c8c53b7b4daf0eace536901222 - languageName: node - linkType: hard - -"read@npm:^1.0.7": - version: 1.0.7 - resolution: "read@npm:1.0.7" - dependencies: - mute-stream: "npm:~0.0.4" - checksum: 10/2777c254e5732cac96f5d0a1c0f6b836c89ae23d8febd405b206f6f24d5de1873420f1a0795e0e3721066650d19adf802c7882c4027143ee0acf942a4f34f97b - languageName: node - linkType: hard - -"readable-stream@npm:3, readable-stream@npm:^3.0.6, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0, readable-stream@npm:^3.5.0, readable-stream@npm:^3.6.0": - version: 3.6.2 - resolution: "readable-stream@npm:3.6.2" - dependencies: - inherits: "npm:^2.0.3" - string_decoder: "npm:^1.1.1" - util-deprecate: "npm:^1.0.1" - checksum: 10/d9e3e53193adcdb79d8f10f2a1f6989bd4389f5936c6f8b870e77570853561c362bee69feca2bbb7b32368ce96a85504aa4cedf7cf80f36e6a9de30d64244048 - languageName: node - linkType: hard - -"readable-stream@npm:^2.0.1, readable-stream@npm:^2.0.5, readable-stream@npm:^2.3.8, readable-stream@npm:~2.3.6": - version: 2.3.8 - resolution: "readable-stream@npm:2.3.8" - dependencies: - core-util-is: "npm:~1.0.0" - inherits: "npm:~2.0.3" - isarray: "npm:~1.0.0" - process-nextick-args: "npm:~2.0.0" - safe-buffer: "npm:~5.1.1" - string_decoder: "npm:~1.1.1" - util-deprecate: "npm:~1.0.1" - checksum: 10/8500dd3a90e391d6c5d889256d50ec6026c059fadee98ae9aa9b86757d60ac46fff24fafb7a39fa41d54cb39d8be56cc77be202ebd4cd8ffcf4cb226cbaa40d4 - languageName: node - linkType: hard - -"readable-stream@npm:^4.0.0": - version: 4.7.0 - resolution: "readable-stream@npm:4.7.0" - dependencies: - abort-controller: "npm:^3.0.0" - buffer: "npm:^6.0.3" - events: "npm:^3.3.0" - process: "npm:^0.11.10" - string_decoder: "npm:^1.3.0" - checksum: 10/bdf096c8ff59452ce5d08f13da9597f9fcfe400b4facfaa88e74ec057e5ad1fdfa140ffe28e5ed806cf4d2055f0b812806e962bca91dce31bc4cef08e53be3a4 - languageName: node - linkType: hard - -"readdir-glob@npm:^1.1.2": - version: 1.1.3 - resolution: "readdir-glob@npm:1.1.3" - dependencies: - minimatch: "npm:^5.1.0" - checksum: 10/ca3a20aa1e715d671302d4ec785a32bf08e59d6d0dd25d5fc03e9e5a39f8c612cdf809ab3e638a79973db7ad6868492edf38504701e313328e767693671447d6 - languageName: node - linkType: hard - -"readdirp@npm:^4.0.1": - version: 4.1.2 - resolution: "readdirp@npm:4.1.2" - checksum: 10/7b817c265940dba90bb9c94d82920d76c3a35ea2d67f9f9d8bd936adcfe02d50c802b14be3dd2e725e002dddbe2cc1c7a0edfb1bc3a365c9dfd5a61e612eea1e - languageName: node - linkType: hard - -"readdirp@npm:~3.6.0": - version: 3.6.0 - resolution: "readdirp@npm:3.6.0" - dependencies: - picomatch: "npm:^2.2.1" - checksum: 10/196b30ef6ccf9b6e18c4e1724b7334f72a093d011a99f3b5920470f0b3406a51770867b3e1ae9711f227ef7a7065982f6ee2ce316746b2cb42c88efe44297fe7 - languageName: node - linkType: hard - -"real-require@npm:^0.2.0": - version: 0.2.0 - resolution: "real-require@npm:0.2.0" - checksum: 10/ddf44ee76301c774e9c9f2826da8a3c5c9f8fc87310f4a364e803ef003aa1a43c378b4323051ced212097fff1af459070f4499338b36a7469df1d4f7e8c0ba4c - languageName: node - linkType: hard - -"recast@npm:^0.11.17": - version: 0.11.23 - resolution: "recast@npm:0.11.23" - dependencies: - ast-types: "npm:0.9.6" - esprima: "npm:~3.1.0" - private: "npm:~0.1.5" - source-map: "npm:~0.5.0" - checksum: 10/6fedea1612203c2e6a3955593ca62a3e9df0ec7962edb557d5b2200fb1d2168515b032c36f4fa8179a479f13a2a3c17aef189248cf6da9be2e2091e18f55e32d - languageName: node - linkType: hard - -"rechoir@npm:^0.6.2": - version: 0.6.2 - resolution: "rechoir@npm:0.6.2" - dependencies: - resolve: "npm:^1.1.6" - checksum: 10/fe76bf9c21875ac16e235defedd7cbd34f333c02a92546142b7911a0f7c7059d2e16f441fe6fb9ae203f459c05a31b2bcf26202896d89e390eda7514d5d2702b - languageName: node - linkType: hard - -"rechoir@npm:^0.8.0": - version: 0.8.0 - resolution: "rechoir@npm:0.8.0" - dependencies: - resolve: "npm:^1.20.0" - checksum: 10/ad3caed8afdefbc33fbc30e6d22b86c35b3d51c2005546f4e79bcc03c074df804b3640ad18945e6bef9ed12caedc035655ec1082f64a5e94c849ff939dc0a788 - languageName: node - linkType: hard - -"recursive-fs@npm:^1.1.2": - version: 1.1.2 - resolution: "recursive-fs@npm:1.1.2" - bin: - recursive-copy: ./bin/recursive-copy - recursive-delete: ./bin/recursive-delete - checksum: 10/f0226cfe4ec5e5d7759bb4ae16a73ac00c2586637a519cac3e5b742d915d6f007beb7086db1a2acad10976bf36ba871240faf385233af60d83cfdb50fce65df3 - languageName: node - linkType: hard - -"redent@npm:^3.0.0": - version: 3.0.0 - resolution: "redent@npm:3.0.0" - dependencies: - indent-string: "npm:^4.0.0" - strip-indent: "npm:^3.0.0" - checksum: 10/fa1ef20404a2d399235e83cc80bd55a956642e37dd197b4b612ba7327bf87fa32745aeb4a1634b2bab25467164ab4ed9c15be2c307923dd08b0fe7c52431ae6b - languageName: node - linkType: hard - -"redux@npm:^4.0.0, redux@npm:^4.0.4": - version: 4.2.1 - resolution: "redux@npm:4.2.1" - dependencies: - "@babel/runtime": "npm:^7.9.2" - checksum: 10/371e4833b671193303a7dea7803c8fdc8e0d566740c78f580e0a3b77b4161da25037626900a2205a5d616117fa6ad09a4232e5a110bd437186b5c6355a041750 - languageName: node - linkType: hard - -"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": - version: 1.0.10 - resolution: "reflect.getprototypeof@npm:1.0.10" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.7" - get-proto: "npm:^1.0.1" - which-builtin-type: "npm:^1.2.1" - checksum: 10/80a4e2be716f4fe46a89a08ccad0863b47e8ce0f49616cab2d65dab0fbd53c6fdba0f52935fd41d37a2e4e22355c272004f920d63070de849f66eea7aeb4a081 - languageName: node - linkType: hard - -"regexp.prototype.flags@npm:^1.5.1, regexp.prototype.flags@npm:^1.5.3, regexp.prototype.flags@npm:^1.5.4": - version: 1.5.4 - resolution: "regexp.prototype.flags@npm:1.5.4" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-errors: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - set-function-name: "npm:^2.0.2" - checksum: 10/8ab897ca445968e0b96f6237641510f3243e59c180ee2ee8d83889c52ff735dd1bf3657fcd36db053e35e1d823dd53f2565d0b8021ea282c9fe62401c6c3bd6d - languageName: node - linkType: hard - -"registry-auth-token@npm:^4.0.0": - version: 4.2.2 - resolution: "registry-auth-token@npm:4.2.2" - dependencies: - rc: "npm:1.2.8" - checksum: 10/00d1b1c69f09df52a0bfbaecee71f2ba094d8fd8d1abc325090655b2c6c8a69c969b31525086c10f95126c3452cd4a0c5c9a6832fb08bec5a32a4e224b790cf8 - languageName: node - linkType: hard - -"registry-url@npm:^5.0.0": - version: 5.1.0 - resolution: "registry-url@npm:5.1.0" - dependencies: - rc: "npm:^1.2.8" - checksum: 10/bcea86c84a0dbb66467b53187fadebfea79017cddfb4a45cf27530d7275e49082fe9f44301976eb0164c438e395684bcf3dae4819b36ff9d1640d8cc60c73df9 - languageName: node - linkType: hard - -"rehype-raw@npm:^7.0.0": - version: 7.0.0 - resolution: "rehype-raw@npm:7.0.0" - dependencies: - "@types/hast": "npm:^3.0.0" - hast-util-raw: "npm:^9.0.0" - vfile: "npm:^6.0.0" - checksum: 10/65dd5809f95410ca5056efe50f5b16cb08a69c0785c6d4ec80c9280487efbaec81d342084f6cfdca5624134c1c4018705d97c37b5c0a21d9625ed8a3c88700f1 - languageName: node - linkType: hard - -"relateurl@npm:^0.2.7": - version: 0.2.7 - resolution: "relateurl@npm:0.2.7" - checksum: 10/f5d6ba58f2a5d5076389090600c243a0ba7072bcf347490a09e4241e2427ccdb260b4e22cea7be4f1fcd3c2bf05908b1e0d0bc9605e3199d4ecf37af1d5681fa - languageName: node - linkType: hard - -"remark-parse@npm:^11.0.0": - version: 11.0.0 - resolution: "remark-parse@npm:11.0.0" - dependencies: - "@types/mdast": "npm:^4.0.0" - mdast-util-from-markdown: "npm:^2.0.0" - micromark-util-types: "npm:^2.0.0" - unified: "npm:^11.0.0" - checksum: 10/59d584be56ebc7c05524989c4ed86eb8a7b6e361942b705ca13a37349f60740a6073aedf7783af46ce920d09dd156148942d5e33e8be3dbcd47f818cb4bc410c - languageName: node - linkType: hard - -"remark-rehype@npm:^11.0.0": - version: 11.1.2 - resolution: "remark-rehype@npm:11.1.2" - dependencies: - "@types/hast": "npm:^3.0.0" - "@types/mdast": "npm:^4.0.0" - mdast-util-to-hast: "npm:^13.0.0" - unified: "npm:^11.0.0" - vfile: "npm:^6.0.0" - checksum: 10/b5374a0bf08398431c92740d0cd9b20aea9df44cee12326820ddcc1b7ee642706604006461ea9799554c347e7caf31e7432132a03b97c508e1f77d29c423bd86 - languageName: node - linkType: hard - -"remove-markdown@npm:^0.5.0": - version: 0.5.5 - resolution: "remove-markdown@npm:0.5.5" - checksum: 10/0cb77c70ea64565ee9cfcb2f447782a02ef27885b8d131c027064f6313f9770da4ec837c53c9461cec7a13c4df50078b2544e89655bd6d4a98d50571df84c38f - languageName: node - linkType: hard - -"remove-trailing-separator@npm:^1.1.0": - version: 1.1.0 - resolution: "remove-trailing-separator@npm:1.1.0" - checksum: 10/d3c20b5a2d987db13e1cca9385d56ecfa1641bae143b620835ac02a6b70ab88f68f117a0021838db826c57b31373d609d52e4f31aca75fc490c862732d595419 - languageName: node - linkType: hard - -"renderkid@npm:^3.0.0": - version: 3.0.0 - resolution: "renderkid@npm:3.0.0" - dependencies: - css-select: "npm:^4.1.3" - dom-converter: "npm:^0.2.0" - htmlparser2: "npm:^6.1.0" - lodash: "npm:^4.17.21" - strip-ansi: "npm:^6.0.1" - checksum: 10/434bd56d9930dd344bcba3ef7683f3dd893396b6bc7e8caa551a4cacbe75a9466dc6cf3d75bc324a5979278a73ef968d7854f8f660dbf1a52c38a73f1fb59b20 - languageName: node - linkType: hard - -"replace-ext@npm:^2.0.0": - version: 2.0.0 - resolution: "replace-ext@npm:2.0.0" - checksum: 10/ed640ac90d24cce4be977642847d138908d430049cc097633be33b072143515cc7d29699675a0c35f6dc3c3c73cb529ed352d59649cf15931740eb31ae083c1e - languageName: node - linkType: hard - -"require-directory@npm:^2.1.1": - version: 2.1.1 - resolution: "require-directory@npm:2.1.1" - checksum: 10/a72468e2589270d91f06c7d36ec97a88db53ae5d6fe3787fadc943f0b0276b10347f89b363b2a82285f650bdcc135ad4a257c61bdd4d00d6df1fa24875b0ddaf - languageName: node - linkType: hard - -"require-from-string@npm:^2.0.2": - version: 2.0.2 - resolution: "require-from-string@npm:2.0.2" - checksum: 10/839a3a890102a658f4cb3e7b2aa13a1f80a3a976b512020c3d1efc418491c48a886b6e481ea56afc6c4cb5eef678f23b2a4e70575e7534eccadf5e30ed2e56eb - languageName: node - linkType: hard - -"requirejs-config-file@npm:^4.0.0": - version: 4.0.0 - resolution: "requirejs-config-file@npm:4.0.0" - dependencies: - esprima: "npm:^4.0.0" - stringify-object: "npm:^3.2.1" - checksum: 10/9fc55813ca8627cc4d3704622702b6b119a222c97825fc61459727d5f9ef9435e4fd34ee03335dc119c66e834d7963fdfe43d9a4df99448d43219587c624ba4e - languageName: node - linkType: hard - -"requirejs@npm:^2.3.5": - version: 2.3.8 - resolution: "requirejs@npm:2.3.8" - bin: - r.js: bin/r.js - r_js: bin/r.js - checksum: 10/7ac26361aecd819abab6a88d0a09beb2e1bb402050bce2ae1c6d5826bfa932c1cc7ab523a8e9bb2cc60c961da4df4ffdaba7e46bae10b12147368f7957a8f280 - languageName: node - linkType: hard - -"requires-port@npm:^1.0.0": - version: 1.0.0 - resolution: "requires-port@npm:1.0.0" - checksum: 10/878880ee78ccdce372784f62f52a272048e2d0827c29ae31e7f99da18b62a2b9463ea03a75f277352f4697c100183debb0532371ad515a2d49d4bfe596dd4c20 - languageName: node - linkType: hard - -"resolve-alpn@npm:^1.0.0": - version: 1.2.1 - resolution: "resolve-alpn@npm:1.2.1" - checksum: 10/744e87888f0b6fa0b256ab454ca0b9c0b80808715e2ef1f3672773665c92a941f6181194e30ccae4a8cd0adbe0d955d3f133102636d2ee0cca0119fec0bc9aec - languageName: node - linkType: hard - -"resolve-cwd@npm:^3.0.0": - version: 3.0.0 - resolution: "resolve-cwd@npm:3.0.0" - dependencies: - resolve-from: "npm:^5.0.0" - checksum: 10/546e0816012d65778e580ad62b29e975a642989108d9a3c5beabfb2304192fa3c9f9146fbdfe213563c6ff51975ae41bac1d3c6e047dd9572c94863a057b4d81 - languageName: node - linkType: hard - -"resolve-dependency-path@npm:^2.0.0": - version: 2.0.0 - resolution: "resolve-dependency-path@npm:2.0.0" - checksum: 10/f7511412546276473bbe0182730baf9bda08a437425f817b1d944ecac4c0a137129c544bf60ca5928b1b89f7124855408c257a12e1b604ebbffeb997bbb81a65 - languageName: node - linkType: hard - -"resolve-from@npm:^4.0.0": - version: 4.0.0 - resolution: "resolve-from@npm:4.0.0" - checksum: 10/91eb76ce83621eea7bbdd9b55121a5c1c4a39e54a9ce04a9ad4517f102f8b5131c2cf07622c738a6683991bf54f2ce178f5a42803ecbd527ddc5105f362cc9e3 - languageName: node - linkType: hard - -"resolve-from@npm:^5.0.0": - version: 5.0.0 - resolution: "resolve-from@npm:5.0.0" - checksum: 10/be18a5e4d76dd711778664829841cde690971d02b6cbae277735a09c1c28f407b99ef6ef3cd585a1e6546d4097b28df40ed32c4a287b9699dcf6d7f208495e23 - languageName: node - linkType: hard - -"resolve-options@npm:^2.0.0": - version: 2.0.0 - resolution: "resolve-options@npm:2.0.0" - dependencies: - value-or-function: "npm:^4.0.0" - checksum: 10/b28584cc089099af42e36292c32bd9af8bc9e28e3ca73c172c0a172d7ed5afb01c75cc2275268c327dceba77a5555b33fbd55617be138874040279fe6ff02fbf - languageName: node - linkType: hard - -"resolve-pkg-maps@npm:^1.0.0": - version: 1.0.0 - resolution: "resolve-pkg-maps@npm:1.0.0" - checksum: 10/0763150adf303040c304009231314d1e84c6e5ebfa2d82b7d94e96a6e82bacd1dcc0b58ae257315f3c8adb89a91d8d0f12928241cba2df1680fbe6f60bf99b0e - languageName: node - linkType: hard - -"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.20.0, resolve@npm:^1.21.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2, resolve@npm:^1.22.4": - version: 1.22.11 - resolution: "resolve@npm:1.22.11" - dependencies: - is-core-module: "npm:^2.16.1" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10/e1b2e738884a08de03f97ee71494335eba8c2b0feb1de9ae065e82c48997f349f77a2b10e8817e147cf610bfabc4b1cb7891ee8eaf5bf80d4ad514a34c4fab0a - languageName: node - linkType: hard - -"resolve@npm:^2.0.0-next.5": - version: 2.0.0-next.5 - resolution: "resolve@npm:2.0.0-next.5" - dependencies: - is-core-module: "npm:^2.13.0" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10/2d6fd28699f901744368e6f2032b4268b4c7b9185fd8beb64f68c93ac6b22e52ae13560ceefc96241a665b985edf9ffd393ae26d2946a7d3a07b7007b7d51e79 - languageName: node - linkType: hard - -"resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.21.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin, resolve@patch:resolve@npm%3A^1.22.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": - version: 1.22.11 - resolution: "resolve@patch:resolve@npm%3A1.22.11#optional!builtin::version=1.22.11&hash=c3c19d" - dependencies: - is-core-module: "npm:^2.16.1" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10/fd342cad25e52cd6f4f3d1716e189717f2522bfd6641109fe7aa372f32b5714a296ed7c238ddbe7ebb0c1ddfe0b7f71c9984171024c97cf1b2073e3e40ff71a8 - languageName: node - linkType: hard - -"resolve@patch:resolve@npm%3A^2.0.0-next.5#optional!builtin": - version: 2.0.0-next.5 - resolution: "resolve@patch:resolve@npm%3A2.0.0-next.5#optional!builtin::version=2.0.0-next.5&hash=c3c19d" - dependencies: - is-core-module: "npm:^2.13.0" - path-parse: "npm:^1.0.7" - supports-preserve-symlinks-flag: "npm:^1.0.0" - bin: - resolve: bin/resolve - checksum: 10/05fa778de9d0347c8b889eb7a18f1f06bf0f801b0eb4610b4871a4b2f22e220900cf0ad525e94f990bb8d8921c07754ab2122c0c225ab4cdcea98f36e64fa4c2 - languageName: node - linkType: hard - -"responselike@npm:^1.0.2": - version: 1.0.2 - resolution: "responselike@npm:1.0.2" - dependencies: - lowercase-keys: "npm:^1.0.0" - checksum: 10/2e9e70f1dcca3da621a80ce71f2f9a9cad12c047145c6ece20df22f0743f051cf7c73505e109814915f23f9e34fb0d358e22827723ee3d56b623533cab8eafcd - languageName: node - linkType: hard - -"responselike@npm:^2.0.0": - version: 2.0.1 - resolution: "responselike@npm:2.0.1" - dependencies: - lowercase-keys: "npm:^2.0.0" - checksum: 10/b122535466e9c97b55e69c7f18e2be0ce3823c5d47ee8de0d9c0b114aa55741c6db8bfbfce3766a94d1272e61bfb1ebf0a15e9310ac5629fbb7446a861b4fd3a - languageName: node - linkType: hard - -"restore-cursor@npm:^3.1.0": - version: 3.1.0 - resolution: "restore-cursor@npm:3.1.0" - dependencies: - onetime: "npm:^5.1.0" - signal-exit: "npm:^3.0.2" - checksum: 10/f877dd8741796b909f2a82454ec111afb84eb45890eb49ac947d87991379406b3b83ff9673a46012fca0d7844bb989f45cc5b788254cf1a39b6b5a9659de0630 - languageName: node - linkType: hard - -"retry@npm:^0.12.0": - version: 0.12.0 - resolution: "retry@npm:0.12.0" - checksum: 10/1f914879f97e7ee931ad05fe3afa629bd55270fc6cf1c1e589b6a99fab96d15daad0fa1a52a00c729ec0078045fe3e399bd4fd0c93bcc906957bdc17f89cb8e6 - languageName: node - linkType: hard - -"retry@npm:^0.13.1": - version: 0.13.1 - resolution: "retry@npm:0.13.1" - checksum: 10/6125ec2e06d6e47e9201539c887defba4e47f63471db304c59e4b82fc63c8e89ca06a77e9d34939a9a42a76f00774b2f46c0d4a4cbb3e287268bd018ed69426d - languageName: node - linkType: hard - -"reusify@npm:^1.0.4": - version: 1.1.0 - resolution: "reusify@npm:1.1.0" - checksum: 10/af47851b547e8a8dc89af144fceee17b80d5beaf5e6f57ed086432d79943434ff67ca526e92275be6f54b6189f6920a24eace75c2657eed32d02c400312b21ec - languageName: node - linkType: hard - -"rimraf@npm:^3.0.2": - version: 3.0.2 - resolution: "rimraf@npm:3.0.2" - dependencies: - glob: "npm:^7.1.3" - bin: - rimraf: bin.js - checksum: 10/063ffaccaaaca2cfd0ef3beafb12d6a03dd7ff1260d752d62a6077b5dfff6ae81bea571f655bb6b589d366930ec1bdd285d40d560c0dae9b12f125e54eb743d5 - languageName: node - linkType: hard - -"rimraf@npm:~2.6.2": - version: 2.6.3 - resolution: "rimraf@npm:2.6.3" - dependencies: - glob: "npm:^7.1.3" - bin: - rimraf: ./bin.js - checksum: 10/756419f2fa99aa119c46a9fc03e09d84ecf5421a80a72d1944c5088c9e4671e77128527a900a313ed9d3fdbdd37e2ae05486cd7e9116d5812d8c31f2399d7c86 - languageName: node - linkType: hard - -"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1, ripemd160@npm:^2.0.3": - version: 2.0.3 - resolution: "ripemd160@npm:2.0.3" - dependencies: - hash-base: "npm:^3.1.2" - inherits: "npm:^2.0.4" - checksum: 10/d15d42ea0460426675e5320f86d3468ab408af95b1761cf35f8d32c0c97b4d3bb72b7226e990e643b96e1637a8ad26b343a6c7666e1a297bcab4f305a1d9d3e3 - languageName: node - linkType: hard - -"roarr@npm:^2.15.3": - version: 2.15.4 - resolution: "roarr@npm:2.15.4" - dependencies: - boolean: "npm:^3.0.1" - detect-node: "npm:^2.0.4" - globalthis: "npm:^1.0.1" - json-stringify-safe: "npm:^5.0.1" - semver-compare: "npm:^1.0.0" - sprintf-js: "npm:^1.1.2" - checksum: 10/baaa5ad91468bf1b7f0263c4132a40865c8638a3d0916b44dd0d42980a77fb53085a3792e3edf16fc4eea9e31c719793c88bd45b1623b760763c4dc59df97619 - languageName: node - linkType: hard - -"rollup-plugin-cleanup@npm:^3.2.1": - version: 3.2.1 - resolution: "rollup-plugin-cleanup@npm:3.2.1" - dependencies: - js-cleanup: "npm:^1.2.0" - rollup-pluginutils: "npm:^2.8.2" - peerDependencies: - rollup: ">=2.0" - checksum: 10/03fe39ead52374e018404e59018ac360f1ec54454f48a468466d0a37aa69358f162bb0554cb0bf911f25d8b9f542c1287a45662e0830a2eb3e320c615cc8cf61 - languageName: node - linkType: hard - -"rollup-pluginutils@npm:^2.8.2": - version: 2.8.2 - resolution: "rollup-pluginutils@npm:2.8.2" - dependencies: - estree-walker: "npm:^0.6.1" - checksum: 10/f3dc20a8731523aff43e07fa50ed84857e9dd3ab81e2cfb0351d517c46820e585bfbd1530a5dddec3ac14d61d41eb9bf50b38ded987e558292790331cc5b0628 - languageName: node - linkType: hard - -"rollup@npm:^4.34.8, rollup@npm:^4.9.6": - version: 4.55.1 - resolution: "rollup@npm:4.55.1" - dependencies: - "@rollup/rollup-android-arm-eabi": "npm:4.55.1" - "@rollup/rollup-android-arm64": "npm:4.55.1" - "@rollup/rollup-darwin-arm64": "npm:4.55.1" - "@rollup/rollup-darwin-x64": "npm:4.55.1" - "@rollup/rollup-freebsd-arm64": "npm:4.55.1" - "@rollup/rollup-freebsd-x64": "npm:4.55.1" - "@rollup/rollup-linux-arm-gnueabihf": "npm:4.55.1" - "@rollup/rollup-linux-arm-musleabihf": "npm:4.55.1" - "@rollup/rollup-linux-arm64-gnu": "npm:4.55.1" - "@rollup/rollup-linux-arm64-musl": "npm:4.55.1" - "@rollup/rollup-linux-loong64-gnu": "npm:4.55.1" - "@rollup/rollup-linux-loong64-musl": "npm:4.55.1" - "@rollup/rollup-linux-ppc64-gnu": "npm:4.55.1" - "@rollup/rollup-linux-ppc64-musl": "npm:4.55.1" - "@rollup/rollup-linux-riscv64-gnu": "npm:4.55.1" - "@rollup/rollup-linux-riscv64-musl": "npm:4.55.1" - "@rollup/rollup-linux-s390x-gnu": "npm:4.55.1" - "@rollup/rollup-linux-x64-gnu": "npm:4.55.1" - "@rollup/rollup-linux-x64-musl": "npm:4.55.1" - "@rollup/rollup-openbsd-x64": "npm:4.55.1" - "@rollup/rollup-openharmony-arm64": "npm:4.55.1" - "@rollup/rollup-win32-arm64-msvc": "npm:4.55.1" - "@rollup/rollup-win32-ia32-msvc": "npm:4.55.1" - "@rollup/rollup-win32-x64-gnu": "npm:4.55.1" - "@rollup/rollup-win32-x64-msvc": "npm:4.55.1" - "@types/estree": "npm:1.0.8" - fsevents: "npm:~2.3.2" - dependenciesMeta: - "@rollup/rollup-android-arm-eabi": - optional: true - "@rollup/rollup-android-arm64": - optional: true - "@rollup/rollup-darwin-arm64": - optional: true - "@rollup/rollup-darwin-x64": - optional: true - "@rollup/rollup-freebsd-arm64": - optional: true - "@rollup/rollup-freebsd-x64": - optional: true - "@rollup/rollup-linux-arm-gnueabihf": - optional: true - "@rollup/rollup-linux-arm-musleabihf": - optional: true - "@rollup/rollup-linux-arm64-gnu": - optional: true - "@rollup/rollup-linux-arm64-musl": - optional: true - "@rollup/rollup-linux-loong64-gnu": - optional: true - "@rollup/rollup-linux-loong64-musl": - optional: true - "@rollup/rollup-linux-ppc64-gnu": - optional: true - "@rollup/rollup-linux-ppc64-musl": - optional: true - "@rollup/rollup-linux-riscv64-gnu": - optional: true - "@rollup/rollup-linux-riscv64-musl": - optional: true - "@rollup/rollup-linux-s390x-gnu": - optional: true - "@rollup/rollup-linux-x64-gnu": - optional: true - "@rollup/rollup-linux-x64-musl": - optional: true - "@rollup/rollup-openbsd-x64": - optional: true - "@rollup/rollup-openharmony-arm64": - optional: true - "@rollup/rollup-win32-arm64-msvc": - optional: true - "@rollup/rollup-win32-ia32-msvc": - optional: true - "@rollup/rollup-win32-x64-gnu": - optional: true - "@rollup/rollup-win32-x64-msvc": - optional: true - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 10/392a8bb68ce492d5f8f59d9420b448e76b2550152482a61688617c1c9c52f8f61162478cfe44f2c6a647e82b0a5e7d61e1ac1f2701ca4d48f4acd231df7bd84a - languageName: node - linkType: hard - -"rrweb-cssom@npm:^0.7.1": - version: 0.7.1 - resolution: "rrweb-cssom@npm:0.7.1" - checksum: 10/e80cf25c223a823921d7ab57c0ce78f5b7ebceab857b400cce99dd4913420ce679834bc5707e8ada47d062e21ad368108a9534c314dc8d72c20aa4a4fa0ed16a - languageName: node - linkType: hard - -"rrweb-cssom@npm:^0.8.0": - version: 0.8.0 - resolution: "rrweb-cssom@npm:0.8.0" - checksum: 10/07521ee36fb6569c17906afad1ac7ff8f099d49ade9249e190693ac36cdf27f88d9acf0cc66978935d5d0a23fca105643d7e9125b9a9d91ed9db9e02d31d7d80 - languageName: node - linkType: hard - -"run-async@npm:^2.4.0": - version: 2.4.1 - resolution: "run-async@npm:2.4.1" - checksum: 10/c79551224dafa26ecc281cb1efad3510c82c79116aaf681f8a931ce70fdf4ca880d58f97d3b930a38992c7aad7955a08e065b32ec194e1dd49d7790c874ece50 - languageName: node - linkType: hard - -"run-parallel@npm:^1.1.9": - version: 1.2.0 - resolution: "run-parallel@npm:1.2.0" - dependencies: - queue-microtask: "npm:^1.2.2" - checksum: 10/cb4f97ad25a75ebc11a8ef4e33bb962f8af8516bb2001082ceabd8902e15b98f4b84b4f8a9b222e5d57fc3bd1379c483886ed4619367a7680dad65316993021d - languageName: node - linkType: hard - -"rxjs@npm:7.8.2, rxjs@npm:^7.4.0, rxjs@npm:^7.5.5, rxjs@npm:^7.8.0, rxjs@npm:^7.8.1, rxjs@npm:^7.8.2": - version: 7.8.2 - resolution: "rxjs@npm:7.8.2" - dependencies: - tslib: "npm:^2.1.0" - checksum: 10/03dff09191356b2b87d94fbc1e97c4e9eb3c09d4452399dddd451b09c2f1ba8d56925a40af114282d7bc0c6fe7514a2236ca09f903cf70e4bbf156650dddb49d - languageName: node - linkType: hard - -"rxjs@npm:^6.6.7": - version: 6.6.7 - resolution: "rxjs@npm:6.6.7" - dependencies: - tslib: "npm:^1.9.0" - checksum: 10/c8263ebb20da80dd7a91c452b9e96a178331f402344bbb40bc772b56340fcd48d13d1f545a1e3d8e464893008c5e306cc42a1552afe0d562b1a6d4e1e6262b03 - languageName: node - linkType: hard - -"safe-array-concat@npm:^1.1.3": - version: 1.1.3 - resolution: "safe-array-concat@npm:1.1.3" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - has-symbols: "npm:^1.1.0" - isarray: "npm:^2.0.5" - checksum: 10/fac4f40f20a3f7da024b54792fcc61059e814566dcbb04586bfefef4d3b942b2408933f25b7b3dd024affd3f2a6bbc916bef04807855e4f192413941369db864 - languageName: node - linkType: hard - -"safe-buffer@npm:5.2.1, safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: 10/32872cd0ff68a3ddade7a7617b8f4c2ae8764d8b7d884c651b74457967a9e0e886267d3ecc781220629c44a865167b61c375d2da6c720c840ecd73f45d5d9451 - languageName: node - linkType: hard - -"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10/7eb5b48f2ed9a594a4795677d5a150faa7eb54483b2318b568dc0c4fc94092a6cce5be02c7288a0500a156282f5276d5688bce7259299568d1053b2150ef374a - languageName: node - linkType: hard - -"safe-push-apply@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-push-apply@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - isarray: "npm:^2.0.5" - checksum: 10/2bd4e53b6694f7134b9cf93631480e7fafc8637165f0ee91d5a4af5e7f33d37de9562d1af5021178dd4217d0230cde8d6530fa28cfa1ebff9a431bf8fff124b4 - languageName: node - linkType: hard - -"safe-regex-test@npm:^1.1.0": - version: 1.1.0 - resolution: "safe-regex-test@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-regex: "npm:^1.2.1" - checksum: 10/ebdb61f305bf4756a5b023ad86067df5a11b26898573afe9e52a548a63c3bd594825d9b0e2dde2eb3c94e57e0e04ac9929d4107c394f7b8e56a4613bed46c69a - languageName: node - linkType: hard - -"safe-stable-stringify@npm:^2.3.1": - version: 2.5.0 - resolution: "safe-stable-stringify@npm:2.5.0" - checksum: 10/2697fa186c17c38c3ca5309637b4ac6de2f1c3d282da27cd5e1e3c88eca0fb1f9aea568a6aabdf284111592c8782b94ee07176f17126031be72ab1313ed46c5c - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:~2.1.0": - version: 2.1.2 - resolution: "safer-buffer@npm:2.1.2" - checksum: 10/7eaf7a0cf37cc27b42fb3ef6a9b1df6e93a1c6d98c6c6702b02fe262d5fcbd89db63320793b99b21cb5348097d0a53de81bd5f4e8b86e20cc9412e3f1cfb4e83 - languageName: node - linkType: hard - -"sanitize-filename@npm:^1.6.3": - version: 1.6.3 - resolution: "sanitize-filename@npm:1.6.3" - dependencies: - truncate-utf8-bytes: "npm:^1.0.0" - checksum: 10/1c162e2cffa797571221c3ed9fe796fa8c6eabb0812418b52a839e4fc63ab130093eb546ec39e1b94b8d3511c0d7de81db3e67906a7e76d7a7bcb6fbab4ed961 - languageName: node - linkType: hard - -"sass-lookup@npm:^3.0.0": - version: 3.0.0 - resolution: "sass-lookup@npm:3.0.0" - dependencies: - commander: "npm:^2.16.0" - bin: - sass-lookup: bin/cli.js - checksum: 10/010b6ae2ee42554ef567a433a1febb9979e91ea99bfacc514e886cf966adba76cd075126d4eac3d557377c30ce2477825bd3d9b59a326571f295c99373a342da - languageName: node - linkType: hard - -"sax@npm:^1.2.4": - version: 1.4.4 - resolution: "sax@npm:1.4.4" - checksum: 10/00ff7b258baa37d98f8abfa0b5c8b3ee739ca37e9b6ecb83405be9e6e5b0b2856394a5eff142db1d987d589b54b139d4236f25830c1e17a2b640efa53c8fda72 - languageName: node - linkType: hard - -"saxes@npm:^6.0.0": - version: 6.0.0 - resolution: "saxes@npm:6.0.0" - dependencies: - xmlchars: "npm:^2.2.0" - checksum: 10/97b50daf6ca3a153e89842efa18a862e446248296622b7473c169c84c823ee8a16e4a43bac2f73f11fc8cb9168c73fbb0d73340f26552bac17970e9052367aa9 - languageName: node - linkType: hard - -"scale-ts@npm:^1.6.0, scale-ts@npm:^1.6.1": - version: 1.6.1 - resolution: "scale-ts@npm:1.6.1" - checksum: 10/f1f9bf1d9abfcfcaf8ae2ae326270beca5c2456cc72f6b6b8230aa175a30bdcd6387678746a4d873c834efbba9c8e015698d42ee67bd71b70f7adfe2e0ba1d39 - languageName: node - linkType: hard - -"scheduler@npm:^0.23.2": - version: 0.23.2 - resolution: "scheduler@npm:0.23.2" - dependencies: - loose-envify: "npm:^1.1.0" - checksum: 10/e8d68b89d18d5b028223edf090092846868a765a591944760942b77ea1f69b17235f7e956696efbb62c8130ab90af7e0949bfb8eba7896335507317236966bc9 - languageName: node - linkType: hard - -"schema-utils@npm:^4.0.0, schema-utils@npm:^4.3.0, schema-utils@npm:^4.3.3": - version: 4.3.3 - resolution: "schema-utils@npm:4.3.3" - dependencies: - "@types/json-schema": "npm:^7.0.9" - ajv: "npm:^8.9.0" - ajv-formats: "npm:^2.1.1" - ajv-keywords: "npm:^5.1.0" - checksum: 10/dba77a46ad7ff0c906f7f09a1a61109e6cb56388f15a68070b93c47a691f516c6a3eb454f81a8cceb0a0e55b87f8b05770a02bfb1f4e0a3143b5887488b2f900 - languageName: node - linkType: hard - -"scryptsy@npm:^2.1.0": - version: 2.1.0 - resolution: "scryptsy@npm:2.1.0" - checksum: 10/1cbdab9d7eee87d2e6aaf86f6a3e759ccd0087d91ca6b760ffe23c0234cb3cc7ba8e1697a59ff84f06a4f08574940c2453dfbbd0e6db64c6c76992a21b6c3733 - languageName: node - linkType: hard - -"secp256k1@npm:^3.8.0": - version: 3.8.1 - resolution: "secp256k1@npm:3.8.1" - dependencies: - bindings: "npm:^1.5.0" - bip66: "npm:^1.1.5" - bn.js: "npm:^4.11.8" - create-hash: "npm:^1.2.0" - drbg.js: "npm:^1.0.1" - elliptic: "npm:^6.5.7" - nan: "npm:^2.14.0" - node-gyp: "npm:latest" - safe-buffer: "npm:^5.1.2" - checksum: 10/dfe9621aea56268878ed384cbf8aac55ad7d3a887816d6e130d202ad679a25546f0079b22ab462f605c30668733e6b7676e4e77c63542d6fc45a7a5ad9ebb3f4 - languageName: node - linkType: hard - -"secure-json-parse@npm:^4.0.0": - version: 4.1.0 - resolution: "secure-json-parse@npm:4.1.0" - checksum: 10/1025c6fd0b8fa0e8c6ac7225fc0b79ecc528b2e51a8446e4bb73bfc47a2450b9e9e9813b84bc9e6735ce30c947b52e5b9d90771521aa9bb2ec216afd24c2da4e - languageName: node - linkType: hard - -"select-hose@npm:^2.0.0": - version: 2.0.0 - resolution: "select-hose@npm:2.0.0" - checksum: 10/08cdd629a394d20e9005e7956f0624307c702cf950cc0458953e9b87ea961d3b1b72ac02266bdb93ac1eec4fcf42b41db9cabe93aa2b7683d71513d133c44fb5 - languageName: node - linkType: hard - -"selfsigned@npm:^2.1.1": - version: 2.4.1 - resolution: "selfsigned@npm:2.4.1" - dependencies: - "@types/node-forge": "npm:^1.3.0" - node-forge: "npm:^1" - checksum: 10/52536623f1cfdeb2f8b9198377f2ce7931c677ea69421238d1dc1ea2983bbe258e56c19e7d1af87035cad7270f19b7e996eaab1212e724d887722502f68e17f2 - languageName: node - linkType: hard - -"semantic-ui-css@npm:^2.5.0": - version: 2.5.0 - resolution: "semantic-ui-css@npm:2.5.0" - dependencies: - jquery: "npm:x.*" - checksum: 10/830b438d10b9f654da6c3076103bf78074be0747c59d64089a3393aeefade301732a5d8a01d5e77f1d580b50e340e762563ddce9869665d2f31b69833c55ee63 - languageName: node - linkType: hard - -"semantic-ui-react@npm:^0.88.2": - version: 0.88.2 - resolution: "semantic-ui-react@npm:0.88.2" - dependencies: - "@babel/runtime": "npm:^7.1.2" - "@semantic-ui-react/event-stack": "npm:^3.1.0" - "@stardust-ui/react-component-event-listener": "npm:~0.38.0" - "@stardust-ui/react-component-ref": "npm:~0.38.0" - classnames: "npm:^2.2.6" - keyboard-key: "npm:^1.0.4" - lodash: "npm:^4.17.15" - prop-types: "npm:^15.7.2" - react-is: "npm:^16.8.6" - react-popper: "npm:^1.3.4" - shallowequal: "npm:^1.1.0" - peerDependencies: - react: ^16.8.0 - react-dom: ^16.8.0 - checksum: 10/b18a417acae1eef46e538724fdcab814f330ecdb5187e093b10e0ed5decad354175b0393c34f37c8720309d5f8380a5597ac5de9ed7fbd78074854660e229f4c - languageName: node - linkType: hard - -"semver-compare@npm:^1.0.0": - version: 1.0.0 - resolution: "semver-compare@npm:1.0.0" - checksum: 10/75f9c7a7786d1756f64b1429017746721e07bd7691bdad6368f7643885d3a98a27586777e9699456564f4844b407e9f186cc1d588a3f9c0be71310e517e942c3 - languageName: node - linkType: hard - -"semver-diff@npm:^3.1.1": - version: 3.1.1 - resolution: "semver-diff@npm:3.1.1" - dependencies: - semver: "npm:^6.3.0" - checksum: 10/8bbe5a5d7add2d5e51b72314a9215cd294d71f41cdc2bf6bd59ee76411f3610b576172896f1d191d0d7294cb9f2f847438d2ee158adacc0c224dca79052812fe - languageName: node - linkType: hard - -"semver@npm:2 || 3 || 4 || 5": - version: 5.7.2 - resolution: "semver@npm:5.7.2" - bin: - semver: bin/semver - checksum: 10/fca14418a174d4b4ef1fecb32c5941e3412d52a4d3d85165924ce3a47fbc7073372c26faf7484ceb4bbc2bde25880c6b97e492473dc7e9708fdfb1c6a02d546e - languageName: node - linkType: hard - -"semver@npm:^6.0.0, semver@npm:^6.2.0, semver@npm:^6.3.0, semver@npm:^6.3.1": - version: 6.3.1 - resolution: "semver@npm:6.3.1" - bin: - semver: bin/semver.js - checksum: 10/1ef3a85bd02a760c6ef76a45b8c1ce18226de40831e02a00bad78485390b98b6ccaa31046245fc63bba4a47a6a592b6c7eedc65cc47126e60489f9cc1ce3ed7e - languageName: node - linkType: hard - -"semver@npm:^7.0.0, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.7.1, semver@npm:~7.7.3": - version: 7.7.3 - resolution: "semver@npm:7.7.3" - bin: - semver: bin/semver.js - checksum: 10/8dbc3168e057a38fc322af909c7f5617483c50caddba135439ff09a754b20bdd6482a5123ff543dad4affa488ecf46ec5fb56d61312ad20bb140199b88dfaea9 - languageName: node - linkType: hard - -"send@npm:~0.19.0, send@npm:~0.19.1": - version: 0.19.2 - resolution: "send@npm:0.19.2" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.1" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:~2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:~2.0.2" - checksum: 10/e932a592f62c58560b608a402d52333a8ae98a5ada076feb5db1d03adaa77c3ca32a7befa1c4fd6dedc186e88f342725b0cb4b3d86835eaf834688b259bef18d - languageName: node - linkType: hard - -"serialize-error@npm:^7.0.1": - version: 7.0.1 - resolution: "serialize-error@npm:7.0.1" - dependencies: - type-fest: "npm:^0.13.1" - checksum: 10/e0aba4dca2fc9fe74ae1baf38dbd99190e1945445a241ba646290f2176cdb2032281a76443b02ccf0caf30da5657d510746506368889a593b9835a497fc0732e - languageName: node - linkType: hard - -"serialize-javascript@npm:^6.0.0, serialize-javascript@npm:^6.0.2": - version: 6.0.2 - resolution: "serialize-javascript@npm:6.0.2" - dependencies: - randombytes: "npm:^2.1.0" - checksum: 10/445a420a6fa2eaee4b70cbd884d538e259ab278200a2ededd73253ada17d5d48e91fb1f4cd224a236ab62ea7ba0a70c6af29fc93b4f3d3078bf7da1c031fde58 - languageName: node - linkType: hard - -"serve-index@npm:^1.9.1": - version: 1.9.1 - resolution: "serve-index@npm:1.9.1" - dependencies: - accepts: "npm:~1.3.4" - batch: "npm:0.6.1" - debug: "npm:2.6.9" - escape-html: "npm:~1.0.3" - http-errors: "npm:~1.6.2" - mime-types: "npm:~2.1.17" - parseurl: "npm:~1.3.2" - checksum: 10/2adce2878d7e30f197e66f30e39f4a404d9ae39295c0c13849bb25e7cf976b93e883204739efd1510559588bed56f8101e32191cbe75f374c6e1e803852194cb - languageName: node - linkType: hard - -"serve-static@npm:~1.16.2": - version: 1.16.3 - resolution: "serve-static@npm:1.16.3" - dependencies: - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:~0.19.1" - checksum: 10/149d6718dd9e53166784d0a65535e21a7c01249d9c51f57224b786a7306354c6807e7811a9f6c143b45c863b1524721fca2f52b5c81a8b5194e3dde034a03b9c - languageName: node - linkType: hard - -"set-function-length@npm:^1.2.2": - version: 1.2.2 - resolution: "set-function-length@npm:1.2.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - checksum: 10/505d62b8e088468917ca4e3f8f39d0e29f9a563b97dbebf92f4bd2c3172ccfb3c5b8e4566d5fcd00784a00433900e7cb8fbc404e2dbd8c3818ba05bb9d4a8a6d - languageName: node - linkType: hard - -"set-function-name@npm:^2.0.2": - version: 2.0.2 - resolution: "set-function-name@npm:2.0.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - functions-have-names: "npm:^1.2.3" - has-property-descriptors: "npm:^1.0.2" - checksum: 10/c7614154a53ebf8c0428a6c40a3b0b47dac30587c1a19703d1b75f003803f73cdfa6a93474a9ba678fa565ef5fbddc2fae79bca03b7d22ab5fd5163dbe571a74 - languageName: node - linkType: hard - -"set-proto@npm:^1.0.0": - version: 1.0.0 - resolution: "set-proto@npm:1.0.0" - dependencies: - dunder-proto: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - checksum: 10/b87f8187bca595ddc3c0721ece4635015fd9d7cb294e6dd2e394ce5186a71bbfa4dc8a35010958c65e43ad83cde09642660e61a952883c24fd6b45ead15f045c - languageName: node - linkType: hard - -"setimmediate@npm:^1.0.5": - version: 1.0.5 - resolution: "setimmediate@npm:1.0.5" - checksum: 10/76e3f5d7f4b581b6100ff819761f04a984fa3f3990e72a6554b57188ded53efce2d3d6c0932c10f810b7c59414f85e2ab3c11521877d1dea1ce0b56dc906f485 - languageName: node - linkType: hard - -"setprototypeof@npm:1.1.0": - version: 1.1.0 - resolution: "setprototypeof@npm:1.1.0" - checksum: 10/02d2564e02a260551bab3ec95358dcfde775fe61272b1b7c488de3676a4bb79f280b5668a324aebe0ec73f0d8ba408bc2d816a609ee5d93b1a7936b9d4ba1208 - languageName: node - linkType: hard - -"setprototypeof@npm:1.2.0, setprototypeof@npm:~1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10/fde1630422502fbbc19e6844346778f99d449986b2f9cdcceb8326730d2f3d9964dbcb03c02aaadaefffecd0f2c063315ebea8b3ad895914bf1afc1747fc172e - languageName: node - linkType: hard - -"sha.js@npm:^2.4.0, sha.js@npm:^2.4.12, sha.js@npm:^2.4.8": - version: 2.4.12 - resolution: "sha.js@npm:2.4.12" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.0" - bin: - sha.js: bin.js - checksum: 10/39c0993592c2ab34eb2daae2199a2a1d502713765aecb611fd97c0c4ab7cd53e902d628e1962aaf384bafd28f55951fef46dcc78799069ce41d74b03aa13b5a7 - languageName: node - linkType: hard - -"shallow-clone@npm:^3.0.0": - version: 3.0.1 - resolution: "shallow-clone@npm:3.0.1" - dependencies: - kind-of: "npm:^6.0.2" - checksum: 10/e066bd540cfec5e1b0f78134853e0d892d1c8945fb9a926a579946052e7cb0c70ca4fc34f875a8083aa7910d751805d36ae64af250a6de6f3d28f9fa7be6c21b - languageName: node - linkType: hard - -"shallowequal@npm:1.1.0, shallowequal@npm:^1.1.0": - version: 1.1.0 - resolution: "shallowequal@npm:1.1.0" - checksum: 10/f4c1de0837f106d2dbbfd5d0720a5d059d1c66b42b580965c8f06bb1db684be8783538b684092648c981294bf817869f743a066538771dbecb293df78f765e00 - languageName: node - linkType: hard - -"shebang-command@npm:^2.0.0": - version: 2.0.0 - resolution: "shebang-command@npm:2.0.0" - dependencies: - shebang-regex: "npm:^3.0.0" - checksum: 10/6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa - languageName: node - linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10/1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 - languageName: node - linkType: hard - -"shell-quote@npm:^1.8.1, shell-quote@npm:^1.8.3": - version: 1.8.3 - resolution: "shell-quote@npm:1.8.3" - checksum: 10/5473e354637c2bd698911224129c9a8961697486cff1fb221f234d71c153fc377674029b0223d1d3c953a68d451d79366abfe53d1a0b46ee1f28eb9ade928f4c - languageName: node - linkType: hard - -"shelljs@npm:^0.8.4": - version: 0.8.5 - resolution: "shelljs@npm:0.8.5" - dependencies: - glob: "npm:^7.0.0" - interpret: "npm:^1.0.0" - rechoir: "npm:^0.6.2" - bin: - shjs: bin/shjs - checksum: 10/f2178274b97b44332bbe9ddb78161137054f55ecf701c7a99db9552cb5478fe279ad5f5131d8a7c2f0730e01ccf0c629d01094143f0541962ce1a3d0243d23f7 - languageName: node - linkType: hard - -"side-channel-list@npm:^1.0.0": - version: 1.0.0 - resolution: "side-channel-list@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - checksum: 10/603b928997abd21c5a5f02ae6b9cc36b72e3176ad6827fab0417ead74580cc4fb4d5c7d0a8a2ff4ead34d0f9e35701ed7a41853dac8a6d1a664fcce1a044f86f - languageName: node - linkType: hard - -"side-channel-map@npm:^1.0.1": - version: 1.0.1 - resolution: "side-channel-map@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - checksum: 10/5771861f77feefe44f6195ed077a9e4f389acc188f895f570d56445e251b861754b547ea9ef73ecee4e01fdada6568bfe9020d2ec2dfc5571e9fa1bbc4a10615 - languageName: node - linkType: hard - -"side-channel-weakmap@npm:^1.0.2": - version: 1.0.2 - resolution: "side-channel-weakmap@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - side-channel-map: "npm:^1.0.1" - checksum: 10/a815c89bc78c5723c714ea1a77c938377ea710af20d4fb886d362b0d1f8ac73a17816a5f6640f354017d7e292a43da9c5e876c22145bac00b76cfb3468001736 - languageName: node - linkType: hard - -"side-channel@npm:^1.0.4, side-channel@npm:^1.1.0": - version: 1.1.0 - resolution: "side-channel@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - side-channel-list: "npm:^1.0.0" - side-channel-map: "npm:^1.0.1" - side-channel-weakmap: "npm:^1.0.2" - checksum: 10/7d53b9db292c6262f326b6ff3bc1611db84ece36c2c7dc0e937954c13c73185b0406c56589e2bb8d071d6fee468e14c39fb5d203ee39be66b7b8174f179afaba - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3": - version: 3.0.7 - resolution: "signal-exit@npm:3.0.7" - checksum: 10/a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 - languageName: node - linkType: hard - -"signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 10/c9fa63bbbd7431066174a48ba2dd9986dfd930c3a8b59de9c29d7b6854ec1c12a80d15310869ea5166d413b99f041bfa3dd80a7947bcd44ea8e6eb3ffeabfa1f - languageName: node - linkType: hard - -"simple-concat@npm:^1.0.0": - version: 1.0.1 - resolution: "simple-concat@npm:1.0.1" - checksum: 10/4d211042cc3d73a718c21ac6c4e7d7a0363e184be6a5ad25c8a1502e49df6d0a0253979e3d50dbdd3f60ef6c6c58d756b5d66ac1e05cda9cacd2e9fc59e3876a - languageName: node - linkType: hard - -"simple-get@npm:^4.0.0": - version: 4.0.1 - resolution: "simple-get@npm:4.0.1" - dependencies: - decompress-response: "npm:^6.0.0" - once: "npm:^1.3.1" - simple-concat: "npm:^1.0.0" - checksum: 10/93f1b32319782f78f2f2234e9ce34891b7ab6b990d19d8afefaa44423f5235ce2676aae42d6743fecac6c8dfff4b808d4c24fe5265be813d04769917a9a44f36 - languageName: node - linkType: hard - -"simple-update-notifier@npm:2.0.0": - version: 2.0.0 - resolution: "simple-update-notifier@npm:2.0.0" - dependencies: - semver: "npm:^7.5.3" - checksum: 10/40bd4f96aa89aedbf717ae9f4ab8fca70e8f7511e8b766feb15471cca3f6fe4fe673743309b08b4ba8abfe0965c9cd927e1de46550a757b819b70fc7430cc85d - languageName: node - linkType: hard - -"skip-regex@npm:^1.0.2": - version: 1.0.2 - resolution: "skip-regex@npm:1.0.2" - checksum: 10/a121a045860343da183c678d53b44c78283b018db71d60af8524ffef179fa028ef419629bb65198bfb9c09854123e7019cfd4c23be4e175254a50c7563b26e8e - languageName: node - linkType: hard - -"slash@npm:^3.0.0": - version: 3.0.0 - resolution: "slash@npm:3.0.0" - checksum: 10/94a93fff615f25a999ad4b83c9d5e257a7280c90a32a7cb8b4a87996e4babf322e469c42b7f649fd5796edd8687652f3fb452a86dc97a816f01113183393f11c - languageName: node - linkType: hard - -"slash@npm:^4.0.0": - version: 4.0.0 - resolution: "slash@npm:4.0.0" - checksum: 10/da8e4af73712253acd21b7853b7e0dbba776b786e82b010a5bfc8b5051a1db38ed8aba8e1e8f400dd2c9f373be91eb1c42b66e91abb407ff42b10feece5e1d2d - languageName: node - linkType: hard - -"slice-ansi@npm:^3.0.0": - version: 3.0.0 - resolution: "slice-ansi@npm:3.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - astral-regex: "npm:^2.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - checksum: 10/5ec6d022d12e016347e9e3e98a7eb2a592213a43a65f1b61b74d2c78288da0aded781f665807a9f3876b9daa9ad94f64f77d7633a0458876c3a4fdc4eb223f24 - languageName: node - linkType: hard - -"smart-buffer@npm:^4.0.2, smart-buffer@npm:^4.2.0": - version: 4.2.0 - resolution: "smart-buffer@npm:4.2.0" - checksum: 10/927484aa0b1640fd9473cee3e0a0bcad6fce93fd7bbc18bac9ad0c33686f5d2e2c422fba24b5899c184524af01e11dd2bd051c2bf2b07e47aff8ca72cbfc60d2 - languageName: node - linkType: hard - -"smoldot@npm:2.0.22": - version: 2.0.22 - resolution: "smoldot@npm:2.0.22" - dependencies: - ws: "npm:^8.8.1" - checksum: 10/8d63720ff7aee9ff4cbfb3d6952c68781aaaecf49fcb20d8b76919e854975b029071778c4c3bd50a18a4c3e0c96857b2b6daa526bbad4a3bee20f2aad8dfe388 - languageName: node - linkType: hard - -"smoldot@npm:2.0.26": - version: 2.0.26 - resolution: "smoldot@npm:2.0.26" - dependencies: - ws: "npm:^8.8.1" - checksum: 10/b975c8ef16e2286b2eddc8c19c18080bd528f27e9abc0e2731304823e67ebe1fc71b01bed2c070d00da1f7e2f69e25c159c976d27eb1796de4a978362dae701e - languageName: node - linkType: hard - -"smoldot@npm:^2.0.34": - version: 2.0.40 - resolution: "smoldot@npm:2.0.40" - dependencies: - ws: "npm:^8.8.1" - checksum: 10/dfbc47c4fd15d8276e8d981cf51e147c3596878effbb7282321aac503808438dbbd6a954975bd735a37848f3ed2bf35994e27f0925231af30efc517ae0942c30 - languageName: node - linkType: hard - -"sockjs@npm:^0.3.24": - version: 0.3.24 - resolution: "sockjs@npm:0.3.24" - dependencies: - faye-websocket: "npm:^0.11.3" - uuid: "npm:^8.3.2" - websocket-driver: "npm:^0.7.4" - checksum: 10/36312ec9772a0e536b69b72e9d1c76bd3d6ecf885c5d8fd6e59811485c916b8ce75f46ec57532f436975815ee14aa9a0e22ae3d9e5c0b18ea37b56d0aaaf439c - languageName: node - linkType: hard - -"socks-proxy-agent@npm:^8.0.3": - version: 8.0.5 - resolution: "socks-proxy-agent@npm:8.0.5" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:^4.3.4" - socks: "npm:^2.8.3" - checksum: 10/ee99e1dacab0985b52cbe5a75640be6e604135e9489ebdc3048635d186012fbaecc20fbbe04b177dee434c319ba20f09b3e7dfefb7d932466c0d707744eac05c - languageName: node - linkType: hard - -"socks@npm:^2.8.3": - version: 2.8.7 - resolution: "socks@npm:2.8.7" - dependencies: - ip-address: "npm:^10.0.1" - smart-buffer: "npm:^4.2.0" - checksum: 10/d19366c95908c19db154f329bbe94c2317d315dc933a7c2b5101e73f32a555c84fb199b62174e1490082a593a4933d8d5a9b297bde7d1419c14a11a965f51356 - languageName: node - linkType: hard - -"sonic-boom@npm:^4.0.1": - version: 4.2.0 - resolution: "sonic-boom@npm:4.2.0" - dependencies: - atomic-sleep: "npm:^1.0.0" - checksum: 10/385ef7fb5ea5976c1d2a1fef0b6df8df6b7caba8696d2d67f689d60c05e3ea2d536752ce7e1c69b9fad844635f1036d07c446f8e8149f5c6a80e0040a455b310 - languageName: node - linkType: hard - -"sort-keys@npm:^4.0.0": - version: 4.2.0 - resolution: "sort-keys@npm:4.2.0" - dependencies: - is-plain-obj: "npm:^2.0.0" - checksum: 10/cbc5adf02eae3f9e2ccbd94eafd6019d705fb217ffd77bc9ecd71b6e4aee617bac93dae91c580fb62f0deb9b0b53f105ba2ae89d253168adf16b7cb3e6cef25a - languageName: node - linkType: hard - -"sortobject@npm:^4.0.0": - version: 4.17.0 - resolution: "sortobject@npm:4.17.0" - checksum: 10/d11bc2ecb01335d498f240d75bb916eab25d97de56fd6f2c0e7f6f7e601641da472b9c300e5486296d7b216cd3d74920c402497713fb402510f9f7907aa0b617 - languageName: node - linkType: hard - -"source-map-explorer@npm:^2.5.3": - version: 2.5.3 - resolution: "source-map-explorer@npm:2.5.3" - dependencies: - btoa: "npm:^1.2.1" - chalk: "npm:^4.1.0" - convert-source-map: "npm:^1.7.0" - ejs: "npm:^3.1.5" - escape-html: "npm:^1.0.3" - glob: "npm:^7.1.6" - gzip-size: "npm:^6.0.0" - lodash: "npm:^4.17.20" - open: "npm:^7.3.1" - source-map: "npm:^0.7.4" - temp: "npm:^0.9.4" - yargs: "npm:^16.2.0" - bin: - sme: bin/cli.js - source-map-explorer: bin/cli.js - checksum: 10/39487c6db499d9e55d724c761d572be6d0e7953eedde848649cabdc200b5195efe3d41ff09916339022791f50d0ec577c9268beb9be10f6f131827a00c22b0c7 - languageName: node - linkType: hard - -"source-map-js@npm:^1.2.1": - version: 1.2.1 - resolution: "source-map-js@npm:1.2.1" - checksum: 10/ff9d8c8bf096d534a5b7707e0382ef827b4dd360a577d3f34d2b9f48e12c9d230b5747974ee7c607f0df65113732711bb701fe9ece3c7edbd43cb2294d707df3 - languageName: node - linkType: hard - -"source-map-support@npm:^0.5.19, source-map-support@npm:~0.5.20": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10/8317e12d84019b31e34b86d483dd41d6f832f389f7417faf8fc5c75a66a12d9686e47f589a0554a868b8482f037e23df9d040d29387eb16fa14cb85f091ba207 - languageName: node - linkType: hard - -"source-map@npm:^0.4.2": - version: 0.4.4 - resolution: "source-map@npm:0.4.4" - dependencies: - amdefine: "npm:>=0.0.4" - checksum: 10/a7bb09072126c7c799aa69b7ab601e9c9088272e1838be1fd76c5565c4c5766af46c940e9712547cf4e068f47432a251aa55393bdbb937c35593e9e96f9eea62 - languageName: node - linkType: hard - -"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0, source-map@npm:~0.6.1": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10/59ef7462f1c29d502b3057e822cdbdae0b0e565302c4dd1a95e11e793d8d9d62006cdc10e0fd99163ca33ff2071360cf50ee13f90440806e7ed57d81cba2f7ff - languageName: node - linkType: hard - -"source-map@npm:^0.7.4, source-map@npm:^0.7.6": - version: 0.7.6 - resolution: "source-map@npm:0.7.6" - checksum: 10/c8d2da7c57c14f3fd7568f764b39ad49bbf9dd7632b86df3542b31fed117d4af2fb74a4f886fc06baf7a510fee68e37998efc3080aacdac951c36211dc29a7a3 - languageName: node - linkType: hard - -"source-map@npm:~0.5.0": - version: 0.5.7 - resolution: "source-map@npm:0.5.7" - checksum: 10/9b4ac749ec5b5831cad1f8cc4c19c4298ebc7474b24a0acf293e2f040f03f8eeccb3d01f12aa0f90cf46d555c887e03912b83a042c627f419bda5152d89c5269 - languageName: node - linkType: hard - -"sourcemap-codec@npm:^1.4.8": - version: 1.4.8 - resolution: "sourcemap-codec@npm:1.4.8" - checksum: 10/6fc57a151e982b5c9468362690c6d062f3a0d4d8520beb68a82f319c79e7a4d7027eeb1e396de0ecc2cd19491e1d602b2d06fd444feac9b63dd43fea4c55a857 - languageName: node - linkType: hard - -"space-separated-tokens@npm:^2.0.0": - version: 2.0.2 - resolution: "space-separated-tokens@npm:2.0.2" - checksum: 10/202e97d7ca1ba0758a0aa4fe226ff98142073bcceeff2da3aad037968878552c3bbce3b3231970025375bbba5aee00c5b8206eda408da837ab2dc9c0f26be990 - languageName: node - linkType: hard - -"spawn-command@npm:0.0.2": - version: 0.0.2 - resolution: "spawn-command@npm:0.0.2" - checksum: 10/f13e8c3c63abd4a0b52fb567eba5f7940d480c5ed3ec61781d38a1850f179b1196c39e6efa2bbd301f82c1bf1cd7807abc8fbd8fc8e44bcaa3975a124c0d1657 - languageName: node - linkType: hard - -"spdx-correct@npm:^3.0.0": - version: 3.2.0 - resolution: "spdx-correct@npm:3.2.0" - dependencies: - spdx-expression-parse: "npm:^3.0.0" - spdx-license-ids: "npm:^3.0.0" - checksum: 10/cc2e4dbef822f6d12142116557d63f5facf3300e92a6bd24e907e4865e17b7e1abd0ee6b67f305cae6790fc2194175a24dc394bfcc01eea84e2bdad728e9ae9a - languageName: node - linkType: hard - -"spdx-exceptions@npm:^2.1.0": - version: 2.5.0 - resolution: "spdx-exceptions@npm:2.5.0" - checksum: 10/bb127d6e2532de65b912f7c99fc66097cdea7d64c10d3ec9b5e96524dbbd7d20e01cba818a6ddb2ae75e62bb0c63d5e277a7e555a85cbc8ab40044984fa4ae15 - languageName: node - linkType: hard - -"spdx-expression-parse@npm:^3.0.0": - version: 3.0.1 - resolution: "spdx-expression-parse@npm:3.0.1" - dependencies: - spdx-exceptions: "npm:^2.1.0" - spdx-license-ids: "npm:^3.0.0" - checksum: 10/a1c6e104a2cbada7a593eaa9f430bd5e148ef5290d4c0409899855ce8b1c39652bcc88a725259491a82601159d6dc790bedefc9016c7472f7de8de7361f8ccde - languageName: node - linkType: hard - -"spdx-license-ids@npm:^3.0.0": - version: 3.0.22 - resolution: "spdx-license-ids@npm:3.0.22" - checksum: 10/a2f214aaf74c21a0172232367ce785157cef45d78617ee4d12aa1246350af566968e28b511e2096b707611566ac3959b85d8bf2d53a65bc6b66580735d3e1965 - languageName: node - linkType: hard - -"spdy-transport@npm:^3.0.0": - version: 3.0.0 - resolution: "spdy-transport@npm:3.0.0" - dependencies: - debug: "npm:^4.1.0" - detect-node: "npm:^2.0.4" - hpack.js: "npm:^2.1.6" - obuf: "npm:^1.1.2" - readable-stream: "npm:^3.0.6" - wbuf: "npm:^1.7.3" - checksum: 10/b93b606b209ca785456bd850b8925f21a76522ee5b46701235ecff3eba17686560c27575f91863842dc843a39772f6d2f5a8755df9eaff0924d20598df18828d - languageName: node - linkType: hard - -"spdy@npm:^4.0.2": - version: 4.0.2 - resolution: "spdy@npm:4.0.2" - dependencies: - debug: "npm:^4.1.0" - handle-thing: "npm:^2.0.0" - http-deceiver: "npm:^1.2.7" - select-hose: "npm:^2.0.0" - spdy-transport: "npm:^3.0.0" - checksum: 10/d29b89e48e7d762e505a2f83b1bc2c92268bd518f1b411864ab42a9e032e387d10467bbce0d8dbf8647bf4914a063aa1d303dff85e248f7a57f81a7b18ac34ef - languageName: node - linkType: hard - -"speedometer@npm:~1.0.0": - version: 1.0.0 - resolution: "speedometer@npm:1.0.0" - checksum: 10/6b322bbb0607c9994fba2a6ac189cf6caea4ce9f5067c1ccfc2848b55883f65d48292bfed4244ce855573ed7cdf0f69943ae6e507f7ec90eef232b64cdba6237 - languageName: node - linkType: hard - -"split-ca@npm:^1.0.1": - version: 1.0.1 - resolution: "split-ca@npm:1.0.1" - checksum: 10/1e7409938a95ee843fe2593156a5735e6ee63772748ee448ea8477a5a3e3abde193c3325b3696e56a5aff07c7dcf6b1f6a2f2a036895b4f3afe96abb366d893f - languageName: node - linkType: hard - -"split-on-first@npm:^3.0.0": - version: 3.0.0 - resolution: "split-on-first@npm:3.0.0" - checksum: 10/75dc27ecbac65cfbeab9a3b90cf046307220192d3d7a30e46aa0f19571cc9b4802aac813f3de2cc9b16f2e46aae72f275659b5d2614bb5369c77724d739e5f73 - languageName: node - linkType: hard - -"split2@npm:^4.0.0": - version: 4.2.0 - resolution: "split2@npm:4.2.0" - checksum: 10/09bbefc11bcf03f044584c9764cd31a252d8e52cea29130950b26161287c11f519807c5e54bd9e5804c713b79c02cefe6a98f4688630993386be353e03f534ab - languageName: node - linkType: hard - -"sprintf-js@npm:^1.1.2": - version: 1.1.3 - resolution: "sprintf-js@npm:1.1.3" - checksum: 10/e7587128c423f7e43cc625fe2f87e6affdf5ca51c1cc468e910d8aaca46bb44a7fbcfa552f787b1d3987f7043aeb4527d1b99559e6621e01b42b3f45e5a24cbb - languageName: node - linkType: hard - -"sprintf-js@npm:~1.0.2": - version: 1.0.3 - resolution: "sprintf-js@npm:1.0.3" - checksum: 10/c34828732ab8509c2741e5fd1af6b767c3daf2c642f267788f933a65b1614943c282e74c4284f4fa749c264b18ee016a0d37a3e5b73aee446da46277d3a85daa - languageName: node - linkType: hard - -"ssh-remote-port-forward@npm:^1.0.4": - version: 1.0.4 - resolution: "ssh-remote-port-forward@npm:1.0.4" - dependencies: - "@types/ssh2": "npm:^0.5.48" - ssh2: "npm:^1.4.0" - checksum: 10/c6c04c5ddfde7cb06e9a8655a152bd28fe6771c6fe62ff0bc08be229491546c410f30b153c968b8d6817a57d38678a270c228f30143ec0fe1be546efc4f6b65a - languageName: node - linkType: hard - -"ssh2@npm:^1.15.0, ssh2@npm:^1.4.0": - version: 1.17.0 - resolution: "ssh2@npm:1.17.0" - dependencies: - asn1: "npm:^0.2.6" - bcrypt-pbkdf: "npm:^1.0.2" - cpu-features: "npm:~0.0.10" - nan: "npm:^2.23.0" - dependenciesMeta: - cpu-features: - optional: true - nan: - optional: true - checksum: 10/5a7e911f234f73c4332f2b436cc6131c164962d2eac71f463ab401b54c4b8627875d9c9be1c55e0bfd1a0eae108cfa33217bc73939287e4a5e81f34f532b1036 - languageName: node - linkType: hard - -"ssri@npm:^13.0.0": - version: 13.0.0 - resolution: "ssri@npm:13.0.0" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10/fd59bfedf0659c1b83f6e15459162da021f08ec0f5834dd9163296f8b77ee82f9656aa1d415c3d3848484293e0e6aefdd482e863e52ddb53d520bb73da1eeec1 - languageName: node - linkType: hard - -"stable-hash@npm:^0.0.5": - version: 0.0.5 - resolution: "stable-hash@npm:0.0.5" - checksum: 10/9222ea2c558e37c4a576cb4e406966b9e6aa05b93f5c4f09ef4aaabe3577439b9b8fbff407b16840b63e2ae83de74290c7b1c2da7360d571e480e46a4aec0a56 - languageName: node - linkType: hard - -"stack-utils@npm:^2.0.6": - version: 2.0.6 - resolution: "stack-utils@npm:2.0.6" - dependencies: - escape-string-regexp: "npm:^2.0.0" - checksum: 10/cdc988acbc99075b4b036ac6014e5f1e9afa7e564482b687da6384eee6a1909d7eaffde85b0a17ffbe186c5247faf6c2b7544e802109f63b72c7be69b13151bb - languageName: node - linkType: hard - -"stat-mode@npm:^1.0.0": - version: 1.0.0 - resolution: "stat-mode@npm:1.0.0" - checksum: 10/a7eac989332f4d057997225af77be14428789821bfbcadd9bdd67e40c73b9d0f9e0fead7171a0e4a8c4366564adcf1d463b16e71c68af8694af3d3ee1b5f88ed - languageName: node - linkType: hard - -"statuses@npm:>= 1.4.0 < 2": - version: 1.5.0 - resolution: "statuses@npm:1.5.0" - checksum: 10/c469b9519de16a4bb19600205cffb39ee471a5f17b82589757ca7bd40a8d92ebb6ed9f98b5a540c5d302ccbc78f15dc03cc0280dd6e00df1335568a5d5758a5c - languageName: node - linkType: hard - -"statuses@npm:~2.0.1, statuses@npm:~2.0.2": - version: 2.0.2 - resolution: "statuses@npm:2.0.2" - checksum: 10/6927feb50c2a75b2a4caab2c565491f7a93ad3d8dbad7b1398d52359e9243a20e2ebe35e33726dee945125ef7a515e9097d8a1b910ba2bbd818265a2f6c39879 - languageName: node - linkType: hard - -"stop-iteration-iterator@npm:^1.0.0, stop-iteration-iterator@npm:^1.1.0": - version: 1.1.0 - resolution: "stop-iteration-iterator@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - internal-slot: "npm:^1.1.0" - checksum: 10/ff36c4db171ee76c936ccfe9541946b77017f12703d4c446652017356816862d3aa029a64e7d4c4ceb484e00ed4a81789333896390d808458638f3a216aa1f41 - languageName: node - linkType: hard - -"store@npm:^2.0.12": - version: 2.0.12 - resolution: "store@npm:2.0.12" - checksum: 10/2245bf29943fe59c2420fbe8ce19c8b86717353edcd6ec30a745cf2faee380b604777aa7f16344a15a8ff33ce689ce61dc95b4e6dc7c737101c00036c311ee7f - languageName: node - linkType: hard - -"stream-browserify@npm:^3.0.0": - version: 3.0.0 - resolution: "stream-browserify@npm:3.0.0" - dependencies: - inherits: "npm:~2.0.4" - readable-stream: "npm:^3.5.0" - checksum: 10/05a3cd0a0ce2d568dbdeb69914557c26a1b0a9d871839666b692eae42b96189756a3ed685affc90dab64ff588a8524c8aec6d85072c07905a1f0d941ea68f956 - languageName: node - linkType: hard - -"stream-composer@npm:^1.0.2": - version: 1.0.2 - resolution: "stream-composer@npm:1.0.2" - dependencies: - streamx: "npm:^2.13.2" - checksum: 10/338b8e088f2eb2c91b0e06907db436525da3620991b13499e57441548e62d3585be185505901b0380cad425889572794e5fe178dd326f5efde654b3ab26df3d3 - languageName: node - linkType: hard - -"stream-http@npm:^3.2.0": - version: 3.2.0 - resolution: "stream-http@npm:3.2.0" - dependencies: - builtin-status-codes: "npm:^3.0.0" - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.6.0" - xtend: "npm:^4.0.2" - checksum: 10/4f85738cbc6de70ecf0a04bc38b6092b4d91dd5317d3d93c88a84c48e63b82a8724ab5fd591df9f587b5139fe439d1748e4e3db3cb09c2b1e23649cb9d89859e - languageName: node - linkType: hard - -"stream-shift@npm:^1.0.2": - version: 1.0.3 - resolution: "stream-shift@npm:1.0.3" - checksum: 10/a24c0a3f66a8f9024bd1d579a533a53be283b4475d4e6b4b3211b964031447bdf6532dd1f3c2b0ad66752554391b7c62bd7ca4559193381f766534e723d50242 - languageName: node - linkType: hard - -"stream-to-array@npm:^2.3.0": - version: 2.3.0 - resolution: "stream-to-array@npm:2.3.0" - dependencies: - any-promise: "npm:^1.1.0" - checksum: 10/7feaf63b38399b850615e6ffcaa951e96e4c8f46745dbce4b553a94c5dc43966933813747014935a3ff97793e7f30a65270bde19f82b2932871a1879229a77cf - languageName: node - linkType: hard - -"streamx@npm:^2.12.0, streamx@npm:^2.12.5, streamx@npm:^2.13.2, streamx@npm:^2.14.0, streamx@npm:^2.15.0, streamx@npm:^2.21.0": - version: 2.23.0 - resolution: "streamx@npm:2.23.0" - dependencies: - events-universal: "npm:^1.0.0" - fast-fifo: "npm:^1.3.2" - text-decoder: "npm:^1.1.0" - checksum: 10/4969d7032b16497172afa2f8ac889d137764963ae564daf1611a03225dd62d9316d51de8098b5866d21722babde71353067184e7a3e9795d6dc17c902904a780 - languageName: node - linkType: hard - -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.0.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.2, string-width@npm:^4.2.3": - version: 4.2.3 - resolution: "string-width@npm:4.2.3" - dependencies: - emoji-regex: "npm:^8.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - strip-ansi: "npm:^6.0.1" - checksum: 10/e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb - languageName: node - linkType: hard - -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: "npm:^0.2.0" - emoji-regex: "npm:^9.2.2" - strip-ansi: "npm:^7.0.1" - checksum: 10/7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 - languageName: node - linkType: hard - -"string.prototype.matchall@npm:^4.0.12": - version: 4.0.12 - resolution: "string.prototype.matchall@npm:4.0.12" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.6" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.6" - gopd: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - internal-slot: "npm:^1.1.0" - regexp.prototype.flags: "npm:^1.5.3" - set-function-name: "npm:^2.0.2" - side-channel: "npm:^1.1.0" - checksum: 10/e4ab34b9e7639211e6c5e9759adb063028c5c5c4fc32ad967838b2bd1e5ce83a66ae8ec755d24a79302849f090b59194571b2c33471e86e7821b21c0f56df316 - languageName: node - linkType: hard - -"string.prototype.repeat@npm:^1.0.0": - version: 1.0.0 - resolution: "string.prototype.repeat@npm:1.0.0" - dependencies: - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.17.5" - checksum: 10/4b1bd91b75fa8fdf0541625184ebe80e445a465ce4253c19c3bccd633898005dadae0f74b85ae72662a53aafb8035bf48f8f5c0755aec09bc106a7f13959d05e - languageName: node - linkType: hard - -"string.prototype.trim@npm:^1.2.10": - version: 1.2.10 - resolution: "string.prototype.trim@npm:1.2.10" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-data-property: "npm:^1.1.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-object-atoms: "npm:^1.0.0" - has-property-descriptors: "npm:^1.0.2" - checksum: 10/47bb63cd2470a64bc5e2da1e570d369c016ccaa85c918c3a8bb4ab5965120f35e66d1f85ea544496fac84b9207a6b722adf007e6c548acd0813e5f8a82f9712a - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.9": - version: 1.0.9 - resolution: "string.prototype.trimend@npm:1.0.9" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10/140c73899b6747de9e499c7c2e7a83d549c47a26fa06045b69492be9cfb9e2a95187499a373983a08a115ecff8bc3bd7b0fb09b8ff72fb2172abe766849272ef - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.8": - version: 1.0.8 - resolution: "string.prototype.trimstart@npm:1.0.8" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10/160167dfbd68e6f7cb9f51a16074eebfce1571656fc31d40c3738ca9e30e35496f2c046fe57b6ad49f65f238a152be8c86fd9a2dd58682b5eba39dad995b3674 - languageName: node - linkType: hard - -"string_decoder@npm:^1.1.1, string_decoder@npm:^1.3.0": - version: 1.3.0 - resolution: "string_decoder@npm:1.3.0" - dependencies: - safe-buffer: "npm:~5.2.0" - checksum: 10/54d23f4a6acae0e93f999a585e673be9e561b65cd4cca37714af1e893ab8cd8dfa52a9e4f58f48f87b4a44918d3a9254326cb80ed194bf2e4c226e2b21767e56 - languageName: node - linkType: hard - -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: "npm:~5.1.0" - checksum: 10/7c41c17ed4dea105231f6df208002ebddd732e8e9e2d619d133cecd8e0087ddfd9587d2feb3c8caf3213cbd841ada6d057f5142cae68a4e62d3540778d9819b4 - languageName: node - linkType: hard - -"stringify-entities@npm:^4.0.0": - version: 4.0.4 - resolution: "stringify-entities@npm:4.0.4" - dependencies: - character-entities-html4: "npm:^2.0.0" - character-entities-legacy: "npm:^3.0.0" - checksum: 10/42bd2f37528795a7b4386bd39dc4699515fb0f0b8c418a6bb29ae205ce66eaff9e8801a2bee65b8049c918c9475a71c7e5911f6a88c19f1d84ebdcba3d881a2d - languageName: node - linkType: hard - -"stringify-object@npm:^3.2.1": - version: 3.3.0 - resolution: "stringify-object@npm:3.3.0" - dependencies: - get-own-enumerable-property-symbols: "npm:^3.0.0" - is-obj: "npm:^1.0.1" - is-regexp: "npm:^1.0.0" - checksum: 10/973782f09a3df3f39a2cf07dbf43fb9ba6cb32976f3616cd0f6c10e0a5c5415dd72b7b700e72920e8da2bf57c3001b8e37b5af7174bab9a748ce0416989e19b1 - languageName: node - linkType: hard - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": - version: 6.0.1 - resolution: "strip-ansi@npm:6.0.1" - dependencies: - ansi-regex: "npm:^5.0.1" - checksum: 10/ae3b5436d34fadeb6096367626ce987057713c566e1e7768818797e00ac5d62023d0f198c4e681eae9e20701721980b26a64a8f5b91238869592a9c6800719a2 - languageName: node - linkType: hard - -"strip-ansi@npm:^7.0.1": - version: 7.1.2 - resolution: "strip-ansi@npm:7.1.2" - dependencies: - ansi-regex: "npm:^6.0.1" - checksum: 10/db0e3f9654e519c8a33c50fc9304d07df5649388e7da06d3aabf66d29e5ad65d5e6315d8519d409c15b32fa82c1df7e11ed6f8cd50b0e4404463f0c9d77c8d0b - languageName: node - linkType: hard - -"strip-bom@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-bom@npm:3.0.0" - checksum: 10/8d50ff27b7ebe5ecc78f1fe1e00fcdff7af014e73cf724b46fb81ef889eeb1015fc5184b64e81a2efe002180f3ba431bdd77e300da5c6685d702780fbf0c8d5b - languageName: node - linkType: hard - -"strip-bom@npm:^4.0.0": - version: 4.0.0 - resolution: "strip-bom@npm:4.0.0" - checksum: 10/9dbcfbaf503c57c06af15fe2c8176fb1bf3af5ff65003851a102749f875a6dbe0ab3b30115eccf6e805e9d756830d3e40ec508b62b3f1ddf3761a20ebe29d3f3 - languageName: node - linkType: hard - -"strip-final-newline@npm:^2.0.0": - version: 2.0.0 - resolution: "strip-final-newline@npm:2.0.0" - checksum: 10/69412b5e25731e1938184b5d489c32e340605bb611d6140344abc3421b7f3c6f9984b21dff296dfcf056681b82caa3bb4cc996a965ce37bcfad663e92eae9c64 - languageName: node - linkType: hard - -"strip-indent@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-indent@npm:3.0.0" - dependencies: - min-indent: "npm:^1.0.0" - checksum: 10/18f045d57d9d0d90cd16f72b2313d6364fd2cb4bf85b9f593523ad431c8720011a4d5f08b6591c9d580f446e78855c5334a30fb91aa1560f5d9f95ed1b4a0530 - languageName: node - linkType: hard - -"strip-json-comments@npm:^3.1.1": - version: 3.1.1 - resolution: "strip-json-comments@npm:3.1.1" - checksum: 10/492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 - languageName: node - linkType: hard - -"strip-json-comments@npm:^5.0.2": - version: 5.0.3 - resolution: "strip-json-comments@npm:5.0.3" - checksum: 10/3ccbf26f278220f785e4b71f8a719a6a063d72558cc63cb450924254af258a4f4c008b8c9b055373a680dc7bd525be9e543ad742c177f8a7667e0b726258e0e4 - languageName: node - linkType: hard - -"strip-json-comments@npm:~2.0.1": - version: 2.0.1 - resolution: "strip-json-comments@npm:2.0.1" - checksum: 10/1074ccb63270d32ca28edfb0a281c96b94dc679077828135141f27d52a5a398ef5e78bcf22809d23cadc2b81dfbe345eb5fd8699b385c8b1128907dec4a7d1e1 - languageName: node - linkType: hard - -"strip-outer@npm:^1.0.1": - version: 1.0.1 - resolution: "strip-outer@npm:1.0.1" - dependencies: - escape-string-regexp: "npm:^1.0.2" - checksum: 10/f8d65d33ca2b49aabc66bb41d689dda7b8b9959d320e3a40a2ef4d7079ff2f67ffb72db43f179f48dbf9495c2e33742863feab7a584d180fa62505439162c191 - languageName: node - linkType: hard - -"style-to-js@npm:^1.0.0": - version: 1.1.21 - resolution: "style-to-js@npm:1.1.21" - dependencies: - style-to-object: "npm:1.0.14" - checksum: 10/5e30b4c52ed4e0294324adab2a43a0438b5495a77a72a6b1258637eebfc4dc8e0614f5ac7bf38a2f514879b3b448215d01fecf1f8d7468b8b95d90bed1d05d57 - languageName: node - linkType: hard - -"style-to-object@npm:1.0.14": - version: 1.0.14 - resolution: "style-to-object@npm:1.0.14" - dependencies: - inline-style-parser: "npm:0.2.7" - checksum: 10/06b86a5cf435dafac908d19082842983f9052d8cf3682915b1bd9251e3fe9b8065dbd2aef060dc5dfa0fa2ee24d717b587a5205f571513a10f30e3947f9d28ff - languageName: node - linkType: hard - -"styled-components@npm:^6.1.1": - version: 6.2.0 - resolution: "styled-components@npm:6.2.0" - dependencies: - "@emotion/is-prop-valid": "npm:1.2.2" - "@emotion/unitless": "npm:0.8.1" - "@types/stylis": "npm:4.2.7" - css-to-react-native: "npm:3.2.0" - csstype: "npm:3.2.3" - postcss: "npm:8.4.49" - shallowequal: "npm:1.1.0" - stylis: "npm:4.3.6" - tslib: "npm:2.6.2" - peerDependencies: - react: ">= 16.8.0" - react-dom: ">= 16.8.0" - checksum: 10/9d39fdeb9f446dd0d005fa18115cffa5b146d153232c2654dd452059411851979a2a4259485d5b79e3cb53c3dc3438b164b03b240b67685ee76ed9979ad4849d - languageName: node - linkType: hard - -"styled-theming@npm:^2.2.0": - version: 2.2.0 - resolution: "styled-theming@npm:2.2.0" - checksum: 10/aa3cce463766f434adf341c2c4c7b1e271768c7af16c23fc207de5fc0ffe08e3364cbfa1b606c35f34ec319e8ba3aabbb87ab5707d76f723cf6180aa672b45a1 - languageName: node - linkType: hard - -"stylis@npm:4.3.6": - version: 4.3.6 - resolution: "stylis@npm:4.3.6" - checksum: 10/6ebe8a37827124e0caf0704c13d39c121f6e6a8433eb8c67cfce508477b24a4434d1731198ba0b6e453655022bbf5beda93585f38ff420545e5356f925f83761 - languageName: node - linkType: hard - -"stylus-lookup@npm:^3.0.1": - version: 3.0.2 - resolution: "stylus-lookup@npm:3.0.2" - dependencies: - commander: "npm:^2.8.1" - debug: "npm:^4.1.0" - bin: - stylus-lookup: bin/cli.js - checksum: 10/94da8b81ef16f73eae0dc734b18165e6f84d41960bc85fb39d9b028f4b6d8c4c2983ce52492751a3eb2e8e65e3e1507adc6739cc3c7893754672546c6af22f62 - languageName: node - linkType: hard - -"sucrase@npm:^3.35.0": - version: 3.35.1 - resolution: "sucrase@npm:3.35.1" - dependencies: - "@jridgewell/gen-mapping": "npm:^0.3.2" - commander: "npm:^4.0.0" - lines-and-columns: "npm:^1.1.6" - mz: "npm:^2.7.0" - pirates: "npm:^4.0.1" - tinyglobby: "npm:^0.2.11" - ts-interface-checker: "npm:^0.1.9" - bin: - sucrase: bin/sucrase - sucrase-node: bin/sucrase-node - checksum: 10/539f5c6ebc1ff8d449a89eb52b8c8944a730b9840ddadbd299a7d89ebcf16c3f4bc9aa59e1f2e112a502e5cf1508f7e02065f0e97c0435eb9a7058e997dfff5a - languageName: node - linkType: hard - -"sumchecker@npm:^3.0.1": - version: 3.0.1 - resolution: "sumchecker@npm:3.0.1" - dependencies: - debug: "npm:^4.1.0" - checksum: 10/5c69776ce2b53040c952cfbca0f7b487b1ee993c55b6d5523f674ec075f30e031fd84b6706dc8ccc4deb9761b58f9925be8806a316e5eedff2286bb48cb75044 - languageName: node - linkType: hard - -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10/5f505c6fa3c6e05873b43af096ddeb22159831597649881aeb8572d6fe3b81e798cc10840d0c9735e0026b250368851b7f77b65e84f4e4daa820a4f69947f55b - languageName: node - linkType: hard - -"supports-color@npm:^7.1.0": - version: 7.2.0 - resolution: "supports-color@npm:7.2.0" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10/c8bb7afd564e3b26b50ca6ee47572c217526a1389fe018d00345856d4a9b08ffbd61fadaf283a87368d94c3dcdb8f5ffe2650a5a65863e21ad2730ca0f05210a - languageName: node - linkType: hard - -"supports-color@npm:^8.0.0, supports-color@npm:^8.1.1": - version: 8.1.1 - resolution: "supports-color@npm:8.1.1" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10/157b534df88e39c5518c5e78c35580c1eca848d7dbaf31bbe06cdfc048e22c7ff1a9d046ae17b25691128f631a51d9ec373c1b740c12ae4f0de6e292037e4282 - languageName: node - linkType: hard - -"supports-preserve-symlinks-flag@npm:^1.0.0": - version: 1.0.0 - resolution: "supports-preserve-symlinks-flag@npm:1.0.0" - checksum: 10/a9dc19ae2220c952bd2231d08ddeecb1b0328b61e72071ff4000c8384e145cc07c1c0bdb3b5a1cb06e186a7b2790f1dee793418b332f6ddf320de25d9125be7e - languageName: node - linkType: hard - -"symbol-tree@npm:^3.2.4": - version: 3.2.4 - resolution: "symbol-tree@npm:3.2.4" - checksum: 10/c09a00aadf279d47d0c5c46ca3b6b2fbaeb45f0a184976d599637d412d3a70bbdc043ff33effe1206dea0e36e0ad226cb957112e7ce9a4bf2daedf7fa4f85c53 - languageName: node - linkType: hard - -"tapable@npm:^2.0.0, tapable@npm:^2.2.0, tapable@npm:^2.2.1, tapable@npm:^2.3.0": - version: 2.3.0 - resolution: "tapable@npm:2.3.0" - checksum: 10/496a841039960533bb6e44816a01fffc2a1eb428bb2051ecab9e87adf07f19e1f937566cbbbb09dceff31163c0ffd81baafcad84db900b601f0155dd0b37e9f2 - languageName: node - linkType: hard - -"tar-fs@npm:^2.0.0, tar-fs@npm:^2.1.4": - version: 2.1.4 - resolution: "tar-fs@npm:2.1.4" - dependencies: - chownr: "npm:^1.1.1" - mkdirp-classic: "npm:^0.5.2" - pump: "npm:^3.0.0" - tar-stream: "npm:^2.1.4" - checksum: 10/bdf7e3cb039522e39c6dae3084b1bca8d7bcc1de1906eae4a1caea6a2250d22d26dcc234118bf879b345d91ebf250a744b196e379334a4abcbb109a78db7d3be - languageName: node - linkType: hard - -"tar-fs@npm:^3.0.7": - version: 3.1.1 - resolution: "tar-fs@npm:3.1.1" - dependencies: - bare-fs: "npm:^4.0.1" - bare-path: "npm:^3.0.0" - pump: "npm:^3.0.0" - tar-stream: "npm:^3.1.5" - dependenciesMeta: - bare-fs: - optional: true - bare-path: - optional: true - checksum: 10/f7f7540b563e10541dc0b95f710c68fc1fccde0c1177b4d3bab2023c6d18da19d941a8697fdc1abff54914b71b6e5f2dfb0455572b5c8993b2ab76571cbbc923 - languageName: node - linkType: hard - -"tar-stream@npm:^2.1.4": - version: 2.2.0 - resolution: "tar-stream@npm:2.2.0" - dependencies: - bl: "npm:^4.0.3" - end-of-stream: "npm:^1.4.1" - fs-constants: "npm:^1.0.0" - inherits: "npm:^2.0.3" - readable-stream: "npm:^3.1.1" - checksum: 10/1a52a51d240c118cbcd30f7368ea5e5baef1eac3e6b793fb1a41e6cd7319296c79c0264ccc5859f5294aa80f8f00b9239d519e627b9aade80038de6f966fec6a - languageName: node - linkType: hard - -"tar-stream@npm:^3.0.0, tar-stream@npm:^3.1.5": - version: 3.1.7 - resolution: "tar-stream@npm:3.1.7" - dependencies: - b4a: "npm:^1.6.4" - fast-fifo: "npm:^1.2.0" - streamx: "npm:^2.15.0" - checksum: 10/b21a82705a72792544697c410451a4846af1f744176feb0ff11a7c3dd0896961552e3def5e1c9a6bbee4f0ae298b8252a1f4c9381e9f991553b9e4847976f05c - languageName: node - linkType: hard - -"tar@npm:^6.1.12": - version: 6.2.1 - resolution: "tar@npm:6.2.1" - dependencies: - chownr: "npm:^2.0.0" - fs-minipass: "npm:^2.0.0" - minipass: "npm:^5.0.0" - minizlib: "npm:^2.1.1" - mkdirp: "npm:^1.0.3" - yallist: "npm:^4.0.0" - checksum: 10/bfbfbb2861888077fc1130b84029cdc2721efb93d1d1fb80f22a7ac3a98ec6f8972f29e564103bbebf5e97be67ebc356d37fa48dbc4960600a1eb7230fbd1ea0 - languageName: node - linkType: hard - -"tar@npm:^7.5.2": - version: 7.5.2 - resolution: "tar@npm:7.5.2" - dependencies: - "@isaacs/fs-minipass": "npm:^4.0.0" - chownr: "npm:^3.0.0" - minipass: "npm:^7.1.2" - minizlib: "npm:^3.1.0" - yallist: "npm:^5.0.0" - checksum: 10/dbad9c9a07863cd1bdf8801d563b3280aa7dd0f4a6cead779ff7516d148dc80b4c04639ba732d47f91f04002f57e8c3c6573a717d649daecaac74ce71daa7ad3 - languageName: node - linkType: hard - -"teex@npm:^1.0.1": - version: 1.0.1 - resolution: "teex@npm:1.0.1" - dependencies: - streamx: "npm:^2.12.5" - checksum: 10/36bf7ce8bb5eb428ad7b14b695ee7fb0a02f09c1a9d8181cc42531208543a920b299d711bf78dad4ff9bcf36ac437ae8e138053734746076e3e0e7d6d76eef64 - languageName: node - linkType: hard - -"temp-file@npm:^3.4.0": - version: 3.4.0 - resolution: "temp-file@npm:3.4.0" - dependencies: - async-exit-hook: "npm:^2.0.1" - fs-extra: "npm:^10.0.0" - checksum: 10/5b7132ff488e91ae928c3e81b25e308d8fc590c08a08fb37b0f1c1e8d186e65d69472abd1af1ea11e1162db2a2e6a7970214c827c92c7c6cebbc91bb7678b037 - languageName: node - linkType: hard - -"temp@npm:^0.9.4": - version: 0.9.4 - resolution: "temp@npm:0.9.4" - dependencies: - mkdirp: "npm:^0.5.1" - rimraf: "npm:~2.6.2" - checksum: 10/38d40564656c6e8e3caee41c592b3cc076d257ab4746ae4a6a179c44eb4a6d3e8a19a08c7716c8e88756bb898d6e56dd0a9e0408249bbcb3c990a178c34d0571 - languageName: node - linkType: hard - -"terser-webpack-plugin@npm:^5.3.16": - version: 5.3.16 - resolution: "terser-webpack-plugin@npm:5.3.16" - dependencies: - "@jridgewell/trace-mapping": "npm:^0.3.25" - jest-worker: "npm:^27.4.5" - schema-utils: "npm:^4.3.0" - serialize-javascript: "npm:^6.0.2" - terser: "npm:^5.31.1" - peerDependencies: - webpack: ^5.1.0 - peerDependenciesMeta: - "@swc/core": - optional: true - esbuild: - optional: true - uglify-js: - optional: true - checksum: 10/09dfbff602acfa114cdd174254b69a04adbc47856021ab351e37982202fd1ec85e0b62ffd5864c98beb8e96aef2f43da490b3448b4541db539c2cff6607394a6 - languageName: node - linkType: hard - -"terser@npm:^5.10.0, terser@npm:^5.31.1": - version: 5.44.1 - resolution: "terser@npm:5.44.1" - dependencies: - "@jridgewell/source-map": "npm:^0.3.3" - acorn: "npm:^8.15.0" - commander: "npm:^2.20.0" - source-map-support: "npm:~0.5.20" - bin: - terser: bin/terser - checksum: 10/516ece205b7db778c4eddb287a556423cb776b7ca591b06270e558a76aa2d57c8d71d9c3c4410b276d3426beb03516fff7d96ff8b517e10730a72908810c6e33 - languageName: node - linkType: hard - -"testcontainers@npm:^10.4.0": - version: 10.28.0 - resolution: "testcontainers@npm:10.28.0" - dependencies: - "@balena/dockerignore": "npm:^1.0.2" - "@types/dockerode": "npm:^3.3.35" - archiver: "npm:^7.0.1" - async-lock: "npm:^1.4.1" - byline: "npm:^5.0.0" - debug: "npm:^4.3.5" - docker-compose: "npm:^0.24.8" - dockerode: "npm:^4.0.5" - get-port: "npm:^7.1.0" - proper-lockfile: "npm:^4.1.2" - properties-reader: "npm:^2.3.0" - ssh-remote-port-forward: "npm:^1.0.4" - tar-fs: "npm:^3.0.7" - tmp: "npm:^0.2.3" - undici: "npm:^5.29.0" - checksum: 10/434d3677e10a114805420f2420831a8eae4091acdaf242787fb100a8755140af0e11eab3932cdb29267f0869af22d0b572532f72ee5450d60f63f3fed30d098c - languageName: node - linkType: hard - -"text-decoder@npm:^1.1.0": - version: 1.2.3 - resolution: "text-decoder@npm:1.2.3" - dependencies: - b4a: "npm:^1.6.4" - checksum: 10/bcdec33c0f070aeac38e46e4cafdcd567a58473ed308bdf75260bfbd8f7dc76acbc0b13226afaec4a169d0cb44cec2ab89c57b6395ccf02e941eaebbe19e124a - languageName: node - linkType: hard - -"text-table@npm:^0.2.0": - version: 0.2.0 - resolution: "text-table@npm:0.2.0" - checksum: 10/4383b5baaeffa9bb4cda2ac33a4aa2e6d1f8aaf811848bf73513a9b88fd76372dc461f6fd6d2e9cb5100f48b473be32c6f95bd983509b7d92bb4d92c10747452 - languageName: node - linkType: hard - -"thenify-all@npm:^1.0.0": - version: 1.6.0 - resolution: "thenify-all@npm:1.6.0" - dependencies: - thenify: "npm:>= 3.1.0 < 4" - checksum: 10/dba7cc8a23a154cdcb6acb7f51d61511c37a6b077ec5ab5da6e8b874272015937788402fd271fdfc5f187f8cb0948e38d0a42dcc89d554d731652ab458f5343e - languageName: node - linkType: hard - -"thenify@npm:>= 3.1.0 < 4": - version: 3.3.1 - resolution: "thenify@npm:3.3.1" - dependencies: - any-promise: "npm:^1.0.0" - checksum: 10/486e1283a867440a904e36741ff1a177faa827cf94d69506f7e3ae4187b9afdf9ec368b3d8da225c192bfe2eb943f3f0080594156bf39f21b57cd1411e2e7f6d - languageName: node - linkType: hard - -"thread-stream@npm:^3.0.0": - version: 3.1.0 - resolution: "thread-stream@npm:3.1.0" - dependencies: - real-require: "npm:^0.2.0" - checksum: 10/ea2d816c4f6077a7062fac5414a88e82977f807c82ee330938fb9691fe11883bb03f078551c0518bb649c239e47ba113d44014fcbb5db42c5abd5996f35e4213 - languageName: node - linkType: hard - -"through2@npm:^2.0.1, through2@npm:~2.0.3": - version: 2.0.5 - resolution: "through2@npm:2.0.5" - dependencies: - readable-stream: "npm:~2.3.6" - xtend: "npm:~4.0.1" - checksum: 10/cd71f7dcdc7a8204fea003a14a433ef99384b7d4e31f5497e1f9f622b3cf3be3691f908455f98723bdc80922a53af7fa10c3b7abbe51c6fd3d536dbc7850e2c4 - languageName: node - linkType: hard - -"through2@npm:^4.0.0": - version: 4.0.2 - resolution: "through2@npm:4.0.2" - dependencies: - readable-stream: "npm:3" - checksum: 10/72c246233d9a989bbebeb6b698ef0b7b9064cb1c47930f79b25d87b6c867e075432811f69b7b2ac8da00ca308191c507bdab913944be8019ac43b036ce88f6ba - languageName: node - linkType: hard - -"through@npm:^2.3.6, through@npm:~2.3.4": - version: 2.3.8 - resolution: "through@npm:2.3.8" - checksum: 10/5da78346f70139a7d213b65a0106f3c398d6bc5301f9248b5275f420abc2c4b1e77c2abc72d218dedc28c41efb2e7c312cb76a7730d04f9c2d37d247da3f4198 - languageName: node - linkType: hard - -"thunky@npm:^1.0.2": - version: 1.1.0 - resolution: "thunky@npm:1.1.0" - checksum: 10/825e3bd07ab3c9fd6f753c457a60957c628cacba5dd0656fd93b037c445e2828b43cf0805a9f2b16b0c5f5a10fd561206271acddb568df4f867f0aea0eb2772f - languageName: node - linkType: hard - -"tiny-invariant@npm:^1.0.6": - version: 1.3.3 - resolution: "tiny-invariant@npm:1.3.3" - checksum: 10/5e185c8cc2266967984ce3b352a4e57cb89dad5a8abb0dea21468a6ecaa67cd5bb47a3b7a85d08041008644af4f667fb8b6575ba38ba5fb00b3b5068306e59fe - languageName: node - linkType: hard - -"tiny-typed-emitter@npm:^2.1.0": - version: 2.1.0 - resolution: "tiny-typed-emitter@npm:2.1.0" - checksum: 10/709bca410054e08df4dc29d5ea0916328bb2900d60245c6a743068ea223887d9fd2c945b6070eb20336275a557a36c2808e5c87d2ed4b60633458632be4a3e10 - languageName: node - linkType: hard - -"tinyexec@npm:^0.3.2": - version: 0.3.2 - resolution: "tinyexec@npm:0.3.2" - checksum: 10/b9d5fed3166fb1acd1e7f9a89afcd97ccbe18b9c1af0278e429455f6976d69271ba2d21797e7c36d57d6b05025e525d2882d88c2ab435b60d1ddf2fea361de57 - languageName: node - linkType: hard - -"tinyglobby@npm:^0.2.11, tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.13": - version: 0.2.15 - resolution: "tinyglobby@npm:0.2.15" - dependencies: - fdir: "npm:^6.5.0" - picomatch: "npm:^4.0.3" - checksum: 10/d72bd826a8b0fa5fa3929e7fe5ba48fceb2ae495df3a231b6c5408cd7d8c00b58ab5a9c2a76ba56a62ee9b5e083626f1f33599734bed1ffc4b792406408f0ca2 - languageName: node - linkType: hard - -"tldts-core@npm:^7.0.19": - version: 7.0.19 - resolution: "tldts-core@npm:7.0.19" - checksum: 10/809229186fdf9202711a09293f5c6ab21d26207f34805a98faee59b6c295806cc88c102553e1f106c5d499228b0f22418c9c5226f6dbf81810eaa3c11c0b022a - languageName: node - linkType: hard - -"tldts@npm:^7.0.8": - version: 7.0.19 - resolution: "tldts@npm:7.0.19" - dependencies: - tldts-core: "npm:^7.0.19" - bin: - tldts: bin/cli.js - checksum: 10/a47f6416bf3790e3313293f00913e14fae44e3315d9ff975c7cae11688ce3532f39d342f45213a2f60a2ac29c3f57f46c870e81d4545724b761891c82658a1d9 - languageName: node - linkType: hard - -"tmp-promise@npm:^3.0.2": - version: 3.0.3 - resolution: "tmp-promise@npm:3.0.3" - dependencies: - tmp: "npm:^0.2.0" - checksum: 10/0ca65b4f233b1d2b01e17a7a62961d32923e4b27383a370bf4d8d52f1062d79c3250e6b6b706ec390e73c9c58c13dc130b3855eedc89c86c7d90beb28b8382e5 - languageName: node - linkType: hard - -"tmp@npm:^0.2.0, tmp@npm:^0.2.1, tmp@npm:^0.2.3": - version: 0.2.5 - resolution: "tmp@npm:0.2.5" - checksum: 10/dd4b78b32385eab4899d3ae296007b34482b035b6d73e1201c4a9aede40860e90997a1452c65a2d21aee73d53e93cd167d741c3db4015d90e63b6d568a93d7ec - languageName: node - linkType: hard - -"to-buffer@npm:^1.2.0, to-buffer@npm:^1.2.1, to-buffer@npm:^1.2.2": - version: 1.2.2 - resolution: "to-buffer@npm:1.2.2" - dependencies: - isarray: "npm:^2.0.5" - safe-buffer: "npm:^5.2.1" - typed-array-buffer: "npm:^1.0.3" - checksum: 10/69d806c20524ff1e4c44d49276bc96ff282dcae484780a3974e275dabeb75651ea430b074a2a4023701e63b3e1d87811cd82c0972f35280fe5461710e4872aba - languageName: node - linkType: hard - -"to-readable-stream@npm:^1.0.0": - version: 1.0.0 - resolution: "to-readable-stream@npm:1.0.0" - checksum: 10/a99e23d49777d9d03686f03cc0bbbcb4648d991648990a98bc93b55cf91a2ae830c41b5efa36802f1c00a34bba93bd33b10346772fd3f49bcf1667a99c85f354 - languageName: node - linkType: hard - -"to-regex-range@npm:^5.0.1": - version: 5.0.1 - resolution: "to-regex-range@npm:5.0.1" - dependencies: - is-number: "npm:^7.0.0" - checksum: 10/10dda13571e1f5ad37546827e9b6d4252d2e0bc176c24a101252153ef435d83696e2557fe128c4678e4e78f5f01e83711c703eef9814eb12dab028580d45980a - languageName: node - linkType: hard - -"to-through@npm:^3.0.0": - version: 3.0.0 - resolution: "to-through@npm:3.0.0" - dependencies: - streamx: "npm:^2.12.5" - checksum: 10/404ad1a346babab53d75d3b4deb779916760fc9e605f4e64ec789366edf08e75ad592a262ca566e7864f77c03375151dcfac4744ff7fd52417cb2a2e9fc60795 - languageName: node - linkType: hard - -"toggle-selection@npm:^1.0.6": - version: 1.0.6 - resolution: "toggle-selection@npm:1.0.6" - checksum: 10/9a0ed0ecbaac72b4944888dacd79fe0a55eeea76120a4c7e46b3bb3d85b24f086e90560bb22f5a965654a25ab43d79ec47dfdb3f1850ba740b14c5a50abc7040 - languageName: node - linkType: hard - -"toidentifier@npm:~1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10/952c29e2a85d7123239b5cfdd889a0dde47ab0497f0913d70588f19c53f7e0b5327c95f4651e413c74b785147f9637b17410ac8c846d5d4a20a5a33eb6dc3a45 - languageName: node - linkType: hard - -"tough-cookie@npm:^4.1.4": - version: 4.1.4 - resolution: "tough-cookie@npm:4.1.4" - dependencies: - psl: "npm:^1.1.33" - punycode: "npm:^2.1.1" - universalify: "npm:^0.2.0" - url-parse: "npm:^1.5.3" - checksum: 10/75663f4e2cd085f16af0b217e4218772adf0617fb3227171102618a54ce0187a164e505d61f773ed7d65988f8ff8a8f935d381f87da981752c1171b076b4afac - languageName: node - linkType: hard - -"tr46@npm:^5.1.0": - version: 5.1.1 - resolution: "tr46@npm:5.1.1" - dependencies: - punycode: "npm:^2.3.1" - checksum: 10/833a0e1044574da5790148fd17866d4ddaea89e022de50279967bcd6b28b4ce0d30d59eb3acf9702b60918975b3bad481400337e3a2e6326cffa5c77b874753d - languageName: node - linkType: hard - -"tr46@npm:~0.0.3": - version: 0.0.3 - resolution: "tr46@npm:0.0.3" - checksum: 10/8f1f5aa6cb232f9e1bdc86f485f916b7aa38caee8a778b378ffec0b70d9307873f253f5cbadbe2955ece2ac5c83d0dc14a77513166ccd0a0c7fe197e21396695 - languageName: node - linkType: hard - -"tree-kill@npm:^1.2.2": - version: 1.2.2 - resolution: "tree-kill@npm:1.2.2" - bin: - tree-kill: cli.js - checksum: 10/49117f5f410d19c84b0464d29afb9642c863bc5ba40fcb9a245d474c6d5cc64d1b177a6e6713129eb346b40aebb9d4631d967517f9fbe8251c35b21b13cd96c7 - languageName: node - linkType: hard - -"trim-lines@npm:^3.0.0": - version: 3.0.1 - resolution: "trim-lines@npm:3.0.1" - checksum: 10/7a1325e4ce8ff7e9e52007600e9c9862a166d0db1f1cf0c9357e359e410acab1278fcd91cc279dfa5123fc37b69f080de02f471e91dbbc61b155b9ca92597929 - languageName: node - linkType: hard - -"trim-newlines@npm:^3.0.0": - version: 3.0.1 - resolution: "trim-newlines@npm:3.0.1" - checksum: 10/b530f3fadf78e570cf3c761fb74fef655beff6b0f84b29209bac6c9622db75ad1417f4a7b5d54c96605dcd72734ad44526fef9f396807b90839449eb543c6206 - languageName: node - linkType: hard - -"trim-repeated@npm:^1.0.0": - version: 1.0.0 - resolution: "trim-repeated@npm:1.0.0" - dependencies: - escape-string-regexp: "npm:^1.0.2" - checksum: 10/e25c235305b82c43f1d64a67a71226c406b00281755e4c2c4f3b1d0b09c687a535dd3c4483327f949f28bb89dc400a0bc5e5b749054f4b99f49ebfe48ba36496 - languageName: node - linkType: hard - -"trough@npm:^2.0.0": - version: 2.2.0 - resolution: "trough@npm:2.2.0" - checksum: 10/999c1cb3db6ec63e1663f911146a90125065da37f66ba342b031d53edb22a62f56c1f934bbc61a55b2b29dd74207544cfd78875b414665c1ffadcd9a9a009eeb - languageName: node - linkType: hard - -"truncate-utf8-bytes@npm:^1.0.0": - version: 1.0.2 - resolution: "truncate-utf8-bytes@npm:1.0.2" - dependencies: - utf8-byte-length: "npm:^1.0.1" - checksum: 10/366e47a0e22cc271d37eb4e62820453fb877784b55b37218842758b7aa1d402eedd0f8833cfb5d6f7a6cae1535d84289bd5e32c4ee962d2a86962fb7038a6983 - languageName: node - linkType: hard - -"ts-api-utils@npm:^1.0.1": - version: 1.4.3 - resolution: "ts-api-utils@npm:1.4.3" - peerDependencies: - typescript: ">=4.2.0" - checksum: 10/713c51e7392323305bd4867422ba130fbf70873ef6edbf80ea6d7e9c8f41eeeb13e40e8e7fe7cd321d74e4864777329797077268c9f570464303a1723f1eed39 - languageName: node - linkType: hard - -"ts-custom-error@npm:^3.2.1": - version: 3.3.1 - resolution: "ts-custom-error@npm:3.3.1" - checksum: 10/92e3a2c426bf6049579aeb889b6f9787e0cfb6bb715a1457e2571708be7fe739662ca9eb2a8c61b72a2d32189645f4fbcf1a370087e030d922e9e2a7b7c1c994 - languageName: node - linkType: hard - -"ts-graphviz@npm:^1.5.0": - version: 1.8.2 - resolution: "ts-graphviz@npm:1.8.2" - checksum: 10/969b06332ca622c148f7b404569af1b972bbe7ee9ba1226350dd0d99bc92c1c95eb6bf9e69aafce51a6c2493a1342b25a8edd6883f27bd516778d401b2a3623f - languageName: node - linkType: hard - -"ts-interface-checker@npm:^0.1.9": - version: 0.1.13 - resolution: "ts-interface-checker@npm:0.1.13" - checksum: 10/9f7346b9e25bade7a1050c001ec5a4f7023909c0e1644c5a96ae20703a131627f081479e6622a4ecee2177283d0069e651e507bedadd3904fc4010ab28ffce00 - languageName: node - linkType: hard - -"ts-loader@npm:^9.5.1": - version: 9.5.4 - resolution: "ts-loader@npm:9.5.4" - dependencies: - chalk: "npm:^4.1.0" - enhanced-resolve: "npm:^5.0.0" - micromatch: "npm:^4.0.0" - semver: "npm:^7.3.4" - source-map: "npm:^0.7.4" - peerDependencies: - typescript: "*" - webpack: ^5.0.0 - checksum: 10/a9977dce1cda5af08010ae92d96fb57981ce52cb6123054b232fc7f71e151969f45e36ca055c0babe01b3b97dcba54b631ad7a50e3e96e839dfd7033c385de05 - languageName: node - linkType: hard - -"tsconfig-paths@npm:^3.10.1, tsconfig-paths@npm:^3.15.0": - version: 3.15.0 - resolution: "tsconfig-paths@npm:3.15.0" - dependencies: - "@types/json5": "npm:^0.0.29" - json5: "npm:^1.0.2" - minimist: "npm:^1.2.6" - strip-bom: "npm:^3.0.0" - checksum: 10/2041beaedc6c271fc3bedd12e0da0cc553e65d030d4ff26044b771fac5752d0460944c0b5e680f670c2868c95c664a256cec960ae528888db6ded83524e33a14 - languageName: node - linkType: hard - -"tsconfig-paths@npm:^4.2.0": - version: 4.2.0 - resolution: "tsconfig-paths@npm:4.2.0" - dependencies: - json5: "npm:^2.2.2" - minimist: "npm:^1.2.6" - strip-bom: "npm:^3.0.0" - checksum: 10/5e55cc2fb6b800eb72011522e10edefccb45b1f9af055681a51354c9b597d1390c6fa9cc356b8c7529f195ac8a90a78190d563159f3a1eed10e01bbd4d01a8ab - languageName: node - linkType: hard - -"tslib@npm:2.6.2": - version: 2.6.2 - resolution: "tslib@npm:2.6.2" - checksum: 10/bd26c22d36736513980091a1e356378e8b662ded04204453d353a7f34a4c21ed0afc59b5f90719d4ba756e581a162ecbf93118dc9c6be5acf70aa309188166ca - languageName: node - linkType: hard - -"tslib@npm:^1.8.1, tslib@npm:^1.9.0": - version: 1.14.1 - resolution: "tslib@npm:1.14.1" - checksum: 10/7dbf34e6f55c6492637adb81b555af5e3b4f9cc6b998fb440dac82d3b42bdc91560a35a5fb75e20e24a076c651438234da6743d139e4feabf0783f3cdfe1dddb - languageName: node - linkType: hard - -"tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0, tslib@npm:^2.6.2, tslib@npm:^2.7.0, tslib@npm:^2.8.0, tslib@npm:^2.8.1": - version: 2.8.1 - resolution: "tslib@npm:2.8.1" - checksum: 10/3e2e043d5c2316461cb54e5c7fe02c30ef6dccb3384717ca22ae5c6b5bc95232a6241df19c622d9c73b809bea33b187f6dbc73030963e29950c2141bc32a79f7 - languageName: node - linkType: hard - -"tsup@npm:*": - version: 8.5.1 - resolution: "tsup@npm:8.5.1" - dependencies: - bundle-require: "npm:^5.1.0" - cac: "npm:^6.7.14" - chokidar: "npm:^4.0.3" - consola: "npm:^3.4.0" - debug: "npm:^4.4.0" - esbuild: "npm:^0.27.0" - fix-dts-default-cjs-exports: "npm:^1.0.0" - joycon: "npm:^3.1.1" - picocolors: "npm:^1.1.1" - postcss-load-config: "npm:^6.0.1" - resolve-from: "npm:^5.0.0" - rollup: "npm:^4.34.8" - source-map: "npm:^0.7.6" - sucrase: "npm:^3.35.0" - tinyexec: "npm:^0.3.2" - tinyglobby: "npm:^0.2.11" - tree-kill: "npm:^1.2.2" - peerDependencies: - "@microsoft/api-extractor": ^7.36.0 - "@swc/core": ^1 - postcss: ^8.4.12 - typescript: ">=4.5.0" - peerDependenciesMeta: - "@microsoft/api-extractor": - optional: true - "@swc/core": - optional: true - postcss: - optional: true - typescript: - optional: true - bin: - tsup: dist/cli-default.js - tsup-node: dist/cli-node.js - checksum: 10/f1927ec2dda93b218b39cd1cac1040902eef66e026261f5c265197c2f660cb5b9e1fb89353d50de5c6a5616463c02800e87e1daad7620b9c9051221d93c66824 - languageName: node - linkType: hard - -"tsutils@npm:^3.21.0": - version: 3.21.0 - resolution: "tsutils@npm:3.21.0" - dependencies: - tslib: "npm:^1.8.1" - peerDependencies: - typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - checksum: 10/ea036bec1dd024e309939ffd49fda7a351c0e87a1b8eb049570dd119d447250e2c56e0e6c00554e8205760e7417793fdebff752a46e573fbe07d4f375502a5b2 - languageName: node - linkType: hard - -"tunnel-agent@npm:^0.6.0": - version: 0.6.0 - resolution: "tunnel-agent@npm:0.6.0" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10/7f0d9ed5c22404072b2ae8edc45c071772affd2ed14a74f03b4e71b4dd1a14c3714d85aed64abcaaee5fec2efc79002ba81155c708f4df65821b444abb0cfade - languageName: node - linkType: hard - -"tweetnacl@npm:1.x.x, tweetnacl@npm:^1.0.3": - version: 1.0.3 - resolution: "tweetnacl@npm:1.0.3" - checksum: 10/ca122c2f86631f3c0f6d28efb44af2a301d4a557a62a3e2460286b08e97567b258c2212e4ad1cfa22bd6a57edcdc54ba76ebe946847450ab0999e6d48ccae332 - languageName: node - linkType: hard - -"tweetnacl@npm:^0.14.3": - version: 0.14.5 - resolution: "tweetnacl@npm:0.14.5" - checksum: 10/04ee27901cde46c1c0a64b9584e04c96c5fe45b38c0d74930710751ea991408b405747d01dfae72f80fc158137018aea94f9c38c651cb9c318f0861a310c3679 - languageName: node - linkType: hard - -"type-check@npm:^0.4.0, type-check@npm:~0.4.0": - version: 0.4.0 - resolution: "type-check@npm:0.4.0" - dependencies: - prelude-ls: "npm:^1.2.1" - checksum: 10/14687776479d048e3c1dbfe58a2409e00367810d6960c0f619b33793271ff2a27f81b52461f14a162f1f89a9b1d8da1b237fc7c99b0e1fdcec28ec63a86b1fec - languageName: node - linkType: hard - -"type-fest@npm:^0.13.1": - version: 0.13.1 - resolution: "type-fest@npm:0.13.1" - checksum: 10/11e9476dc85bf97a71f6844fb67ba8e64a4c7e445724c0f3bd37eb2ddf4bc97c1dc9337bd880b28bce158de1c0cb275c2d03259815a5bf64986727197126ab56 - languageName: node - linkType: hard - -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10/8907e16284b2d6cfa4f4817e93520121941baba36b39219ea36acfe64c86b9dbc10c9941af450bd60832c8f43464974d51c0957f9858bc66b952b66b6914cbb9 - languageName: node - linkType: hard - -"type-fest@npm:^0.21.3": - version: 0.21.3 - resolution: "type-fest@npm:0.21.3" - checksum: 10/f4254070d9c3d83a6e573bcb95173008d73474ceadbbf620dd32d273940ca18734dff39c2b2480282df9afe5d1675ebed5499a00d791758748ea81f61a38961f - languageName: node - linkType: hard - -"type-fest@npm:^0.6.0": - version: 0.6.0 - resolution: "type-fest@npm:0.6.0" - checksum: 10/9ecbf4ba279402b14c1a0614b6761bbe95626fab11377291fecd7e32b196109551e0350dcec6af74d97ced1b000ba8060a23eca33157091e642b409c2054ba82 - languageName: node - linkType: hard - -"type-fest@npm:^0.8.1": - version: 0.8.1 - resolution: "type-fest@npm:0.8.1" - checksum: 10/fd4a91bfb706aeeb0d326ebd2e9a8ea5263979e5dec8d16c3e469a5bd3a946e014a062ef76c02e3086d3d1c7209a56a20a4caafd0e9f9a5c2ab975084ea3d388 - languageName: node - linkType: hard - -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10/0bd9eeae5efd27d98fd63519f999908c009e148039d8e7179a074f105362d4fcc214c38b24f6cda79c87e563cbd12083a4691381ed28559220d4a10c2047bed4 - languageName: node - linkType: hard - -"type@npm:^2.7.2": - version: 2.7.3 - resolution: "type@npm:2.7.3" - checksum: 10/82e99e7795b3de3ecfe685680685e79a77aea515fad9f60b7c55fbf6d43a5c360b1e6e9443354ec8906b38cdf5325829c69f094cb7cd2a1238e85bef9026dc04 - languageName: node - linkType: hard - -"typed-array-buffer@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-buffer@npm:1.0.3" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-typed-array: "npm:^1.1.14" - checksum: 10/3fb91f0735fb413b2bbaaca9fabe7b8fc14a3fa5a5a7546bab8a57e755be0e3788d893195ad9c2b842620592de0e68d4c077d4c2c41f04ec25b8b5bb82fa9a80 - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-byte-length@npm:1.0.3" - dependencies: - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.14" - checksum: 10/269dad101dda73e3110117a9b84db86f0b5c07dad3a9418116fd38d580cab7fc628a4fc167e29b6d7c39da2f53374b78e7cb578b3c5ec7a556689d985d193519 - languageName: node - linkType: hard - -"typed-array-byte-offset@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-byte-offset@npm:1.0.4" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.15" - reflect.getprototypeof: "npm:^1.0.9" - checksum: 10/c2869aa584cdae24ecfd282f20a0f556b13a49a9d5bca1713370bb3c89dff0ccbc5ceb45cb5b784c98f4579e5e3e2a07e438c3a5b8294583e2bd4abbd5104fb5 - languageName: node - linkType: hard - -"typed-array-length@npm:^1.0.7": - version: 1.0.7 - resolution: "typed-array-length@npm:1.0.7" - dependencies: - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - is-typed-array: "npm:^1.1.13" - possible-typed-array-names: "npm:^1.0.0" - reflect.getprototypeof: "npm:^1.0.6" - checksum: 10/d6b2f0e81161682d2726eb92b1dc2b0890890f9930f33f9bcf6fc7272895ce66bc368066d273e6677776de167608adc53fcf81f1be39a146d64b630edbf2081c - languageName: node - linkType: hard - -"typed-styles@npm:^0.0.7": - version: 0.0.7 - resolution: "typed-styles@npm:0.0.7" - checksum: 10/24704459dd5119729a5c20d156f60a1a74489e0a6a57fc6bc93a0d167c805675cc3cadd42ae5d99d7906762e951a44bca9558101353c9d37bedbe8b1e6bf6e51 - languageName: node - linkType: hard - -"typedarray-to-buffer@npm:^3.1.5": - version: 3.1.5 - resolution: "typedarray-to-buffer@npm:3.1.5" - dependencies: - is-typedarray: "npm:^1.0.0" - checksum: 10/7c850c3433fbdf4d04f04edfc751743b8f577828b8e1eb93b95a3bce782d156e267d83e20fb32b3b47813e69a69ab5e9b5342653332f7d21c7d1210661a7a72c - languageName: node - linkType: hard - -"typescript@npm:^5.5.4": - version: 5.9.3 - resolution: "typescript@npm:5.9.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10/c089d9d3da2729fd4ac517f9b0e0485914c4b3c26f80dc0cffcb5de1719a17951e92425d55db59515c1a7ddab65808466debb864d0d56dcf43f27007d0709594 - languageName: node - linkType: hard - -"typescript@patch:typescript@npm%3A^5.5.4#optional!builtin": - version: 5.9.3 - resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=5786d5" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10/696e1b017bc2635f4e0c94eb4435357701008e2f272f553d06e35b494b8ddc60aa221145e286c28ace0c89ee32827a28c2040e3a69bdc108b1a5dc8fb40b72e3 - languageName: node - linkType: hard - -"ufo@npm:^1.6.1": - version: 1.6.2 - resolution: "ufo@npm:1.6.2" - checksum: 10/91888f5a6e21a974b9ce2bc18e0a354d8a84f99f6de3acd57c7a85feb3900a8be0e65d26206d2e9333ab9a3d62289381dbd9e283642816922299364663449fd5 - languageName: node - linkType: hard - -"uglify-js@npm:^3.1.4": - version: 3.19.3 - resolution: "uglify-js@npm:3.19.3" - bin: - uglifyjs: bin/uglifyjs - checksum: 10/6b9639c1985d24580b01bb0ab68e78de310d38eeba7db45bec7850ab4093d8ee464d80ccfaceda9c68d1c366efbee28573b52f95e69ac792354c145acd380b11 - languageName: node - linkType: hard - -"uint8-varint@npm:^2.0.1": - version: 2.0.4 - resolution: "uint8-varint@npm:2.0.4" - dependencies: - uint8arraylist: "npm:^2.0.0" - uint8arrays: "npm:^5.0.0" - checksum: 10/51b5984b0d699d820c255f6cd8fa68628f50b8a09f5f063fa8b22438038e56505ab92445ee2da82966c20bcd5751886c2df8a21708014a3b9b32e871e8869caf - languageName: node - linkType: hard - -"uint8arraylist@npm:^2.0.0": - version: 2.4.8 - resolution: "uint8arraylist@npm:2.4.8" - dependencies: - uint8arrays: "npm:^5.0.1" - checksum: 10/0f4dbffa21de25104e28058440c2ab20691cf5bf894a2032bd6e50b6b6480c7194521af2f6ec0d22855510e952afb0e486e5d95d050856a9a3990a5d276b7c7d - languageName: node - linkType: hard - -"uint8arrays@npm:^5.0.0, uint8arrays@npm:^5.0.1, uint8arrays@npm:^5.0.2": - version: 5.1.0 - resolution: "uint8arrays@npm:5.1.0" - dependencies: - multiformats: "npm:^13.0.0" - checksum: 10/6c9cd1c1519cdf20d4c4e3715b4ee1acf730636409528ea54e77c4d9aa6e7f70aacd86d735f7c8a9902a9181cc3b37fa048590978e2fb90a98fa1dc39465c1af - languageName: node - linkType: hard - -"unbox-primitive@npm:^1.1.0": - version: 1.1.0 - resolution: "unbox-primitive@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - has-bigints: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - which-boxed-primitive: "npm:^1.1.1" - checksum: 10/fadb347020f66b2c8aeacf8b9a79826fa34cc5e5457af4eb0bbc4e79bd87fed0fa795949825df534320f7c13f199259516ad30abc55a6e7b91d8d996ca069e50 - languageName: node - linkType: hard - -"undici-types@npm:~5.26.4": - version: 5.26.5 - resolution: "undici-types@npm:5.26.5" - checksum: 10/0097779d94bc0fd26f0418b3a05472410408877279141ded2bd449167be1aed7ea5b76f756562cb3586a07f251b90799bab22d9019ceba49c037c76445f7cddd - languageName: node - linkType: hard - -"undici-types@npm:~7.16.0": - version: 7.16.0 - resolution: "undici-types@npm:7.16.0" - checksum: 10/db43439f69c2d94cc29f75cbfe9de86df87061d6b0c577ebe9bb3255f49b22c50162a7d7eb413b0458b6510b8ca299ac7cff38c3a29fbd31af9f504bcf7fbc0d - languageName: node - linkType: hard - -"undici@npm:^5.29.0": - version: 5.29.0 - resolution: "undici@npm:5.29.0" - dependencies: - "@fastify/busboy": "npm:^2.0.0" - checksum: 10/0ceca8924a32acdcc0cfb8dd2d368c217840970aa3f5e314fc169608474be6341c5b8e50cad7bd257dbe3b4e432bc5d0a0d000f83644b54fa11a48735ec52b93 - languageName: node - linkType: hard - -"unified@npm:^11.0.0": - version: 11.0.5 - resolution: "unified@npm:11.0.5" - dependencies: - "@types/unist": "npm:^3.0.0" - bail: "npm:^2.0.0" - devlop: "npm:^1.0.0" - extend: "npm:^3.0.0" - is-plain-obj: "npm:^4.0.0" - trough: "npm:^2.0.0" - vfile: "npm:^6.0.0" - checksum: 10/d9e6e88900a075f391b6bbf06f34062d41fa6257798110d1647753cfc2c6a6e2c1d016434e8ee35706c50485f9fb9ae4707a6a4790bd8dc461ec7e7315ed908b - languageName: node - linkType: hard - -"uniq@npm:^1.0.1": - version: 1.0.1 - resolution: "uniq@npm:1.0.1" - checksum: 10/8206535f83745ea83f9da7035f3b983fd6ed5e35b8ed7745441944e4065b616bc67cf0d0a23a86b40ee0074426f0607f0a138f9b78e124eb6a7a6a6966055709 - languageName: node - linkType: hard - -"unique-filename@npm:^5.0.0": - version: 5.0.0 - resolution: "unique-filename@npm:5.0.0" - dependencies: - unique-slug: "npm:^6.0.0" - checksum: 10/a5f67085caef74bdd2a6869a200ed5d68d171f5cc38435a836b5fd12cce4e4eb55e6a190298035c325053a5687ed7a3c96f0a91e82215fd14729769d9ac57d9b - languageName: node - linkType: hard - -"unique-slug@npm:^6.0.0": - version: 6.0.0 - resolution: "unique-slug@npm:6.0.0" - dependencies: - imurmurhash: "npm:^0.1.4" - checksum: 10/b78ed9d5b01ff465f80975f17387750ed3639909ac487fa82c4ae4326759f6de87c2131c0c39eca4c68cf06c537a8d104fba1dfc8a30308f99bc505345e1eba3 - languageName: node - linkType: hard - -"unique-string@npm:^2.0.0": - version: 2.0.0 - resolution: "unique-string@npm:2.0.0" - dependencies: - crypto-random-string: "npm:^2.0.0" - checksum: 10/107cae65b0b618296c2c663b8e52e4d1df129e9af04ab38d53b4f2189e96da93f599c85f4589b7ffaf1a11c9327cbb8a34f04c71b8d4950d3e385c2da2a93828 - languageName: node - linkType: hard - -"unist-util-is@npm:^6.0.0": - version: 6.0.1 - resolution: "unist-util-is@npm:6.0.1" - dependencies: - "@types/unist": "npm:^3.0.0" - checksum: 10/dc3ebfb481f097863ae3674c440add6fe2d51a4cfcd565b13fb759c8a2eaefb71903a619b385e892c2ad6db6a5b60d068dfc5592b6dd57f4b60180082b3136d6 - languageName: node - linkType: hard - -"unist-util-position@npm:^5.0.0": - version: 5.0.0 - resolution: "unist-util-position@npm:5.0.0" - dependencies: - "@types/unist": "npm:^3.0.0" - checksum: 10/89d4da00e74618d7562ac7ac288961df9bcd4ccca6df3b5a90650f018eceb6b95de6e771e88bdbef46cc9d96861d456abe57b7ad1108921e0feb67c6292aa29d - languageName: node - linkType: hard - -"unist-util-stringify-position@npm:^4.0.0": - version: 4.0.0 - resolution: "unist-util-stringify-position@npm:4.0.0" - dependencies: - "@types/unist": "npm:^3.0.0" - checksum: 10/d15c88aca7a31902d95d5b5355bbe09583cf6f6ff6e59e134ef76c76d3c30bc1021f2d7ea5b7897c6d0858ed5f3770c1b19de9c78274f50d72f95a0d05f1af71 - languageName: node - linkType: hard - -"unist-util-visit-parents@npm:^6.0.0": - version: 6.0.2 - resolution: "unist-util-visit-parents@npm:6.0.2" - dependencies: - "@types/unist": "npm:^3.0.0" - unist-util-is: "npm:^6.0.0" - checksum: 10/aa16e97e45bd1d641e1f933d2fb3bf0800865350eaeb5cc0317ab511075480fb4ac5e2a55f57dd72d27311e8ba29fd23908848bd83479849c626be1f7dabcae5 - languageName: node - linkType: hard - -"unist-util-visit@npm:^5.0.0": - version: 5.0.0 - resolution: "unist-util-visit@npm:5.0.0" - dependencies: - "@types/unist": "npm:^3.0.0" - unist-util-is: "npm:^6.0.0" - unist-util-visit-parents: "npm:^6.0.0" - checksum: 10/f2bbde23641e9ade7640358c06ddeec0f38342322eb8e7819d9ee380b0f859d25d084dde22bf63db0280b3b2f36575f15aa1d6c23acf276c91c2493cf799e3b0 - languageName: node - linkType: hard - -"universal-user-agent@npm:^6.0.0": - version: 6.0.1 - resolution: "universal-user-agent@npm:6.0.1" - checksum: 10/fdc8e1ae48a05decfc7ded09b62071f571c7fe0bd793d700704c80cea316101d4eac15cc27ed2bb64f4ce166d2684777c3198b9ab16034f547abea0d3aa1c93c - languageName: node - linkType: hard - -"universalify@npm:^0.1.0": - version: 0.1.2 - resolution: "universalify@npm:0.1.2" - checksum: 10/40cdc60f6e61070fe658ca36016a8f4ec216b29bf04a55dce14e3710cc84c7448538ef4dad3728d0bfe29975ccd7bfb5f414c45e7b78883567fb31b246f02dff - languageName: node - linkType: hard - -"universalify@npm:^0.2.0": - version: 0.2.0 - resolution: "universalify@npm:0.2.0" - checksum: 10/e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 - languageName: node - linkType: hard - -"universalify@npm:^2.0.0": - version: 2.0.1 - resolution: "universalify@npm:2.0.1" - checksum: 10/ecd8469fe0db28e7de9e5289d32bd1b6ba8f7183db34f3bfc4ca53c49891c2d6aa05f3fb3936a81285a905cc509fb641a0c3fc131ec786167eff41236ae32e60 - languageName: node - linkType: hard - -"unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10/4fa18d8d8d977c55cb09715385c203197105e10a6d220087ec819f50cb68870f02942244f1017565484237f1f8c5d3cd413631b1ae104d3096f24fdfde1b4aa2 - languageName: node - linkType: hard - -"unrs-resolver@npm:^1.6.2": - version: 1.11.1 - resolution: "unrs-resolver@npm:1.11.1" - dependencies: - "@unrs/resolver-binding-android-arm-eabi": "npm:1.11.1" - "@unrs/resolver-binding-android-arm64": "npm:1.11.1" - "@unrs/resolver-binding-darwin-arm64": "npm:1.11.1" - "@unrs/resolver-binding-darwin-x64": "npm:1.11.1" - "@unrs/resolver-binding-freebsd-x64": "npm:1.11.1" - "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.11.1" - "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.11.1" - "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.11.1" - "@unrs/resolver-binding-linux-arm64-musl": "npm:1.11.1" - "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.11.1" - "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.11.1" - "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.11.1" - "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.11.1" - "@unrs/resolver-binding-linux-x64-gnu": "npm:1.11.1" - "@unrs/resolver-binding-linux-x64-musl": "npm:1.11.1" - "@unrs/resolver-binding-wasm32-wasi": "npm:1.11.1" - "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.11.1" - "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.11.1" - "@unrs/resolver-binding-win32-x64-msvc": "npm:1.11.1" - napi-postinstall: "npm:^0.3.0" - dependenciesMeta: - "@unrs/resolver-binding-android-arm-eabi": - optional: true - "@unrs/resolver-binding-android-arm64": - optional: true - "@unrs/resolver-binding-darwin-arm64": - optional: true - "@unrs/resolver-binding-darwin-x64": - optional: true - "@unrs/resolver-binding-freebsd-x64": - optional: true - "@unrs/resolver-binding-linux-arm-gnueabihf": - optional: true - "@unrs/resolver-binding-linux-arm-musleabihf": - optional: true - "@unrs/resolver-binding-linux-arm64-gnu": - optional: true - "@unrs/resolver-binding-linux-arm64-musl": - optional: true - "@unrs/resolver-binding-linux-ppc64-gnu": - optional: true - "@unrs/resolver-binding-linux-riscv64-gnu": - optional: true - "@unrs/resolver-binding-linux-riscv64-musl": - optional: true - "@unrs/resolver-binding-linux-s390x-gnu": - optional: true - "@unrs/resolver-binding-linux-x64-gnu": - optional: true - "@unrs/resolver-binding-linux-x64-musl": - optional: true - "@unrs/resolver-binding-wasm32-wasi": - optional: true - "@unrs/resolver-binding-win32-arm64-msvc": - optional: true - "@unrs/resolver-binding-win32-ia32-msvc": - optional: true - "@unrs/resolver-binding-win32-x64-msvc": - optional: true - checksum: 10/4de653508cbaae47883a896bd5cdfef0e5e87b428d62620d16fd35cd534beaebf08ebf0cf2f8b4922aa947b2fe745180facf6cc3f39ba364f7ce0f974cb06a70 - languageName: node - linkType: hard - -"update-browserslist-db@npm:^1.2.0": - version: 1.2.3 - resolution: "update-browserslist-db@npm:1.2.3" - dependencies: - escalade: "npm:^3.2.0" - picocolors: "npm:^1.1.1" - peerDependencies: - browserslist: ">= 4.21.0" - bin: - update-browserslist-db: cli.js - checksum: 10/059f774300efb4b084a49293143c511f3ae946d40397b5c30914e900cd5691a12b8e61b41dd54ed73d3b56c8204165a0333107dd784ccf8f8c81790bcc423175 - languageName: node - linkType: hard - -"update-notifier@npm:^5.0.0": - version: 5.1.0 - resolution: "update-notifier@npm:5.1.0" - dependencies: - boxen: "npm:^5.0.0" - chalk: "npm:^4.1.0" - configstore: "npm:^5.0.1" - has-yarn: "npm:^2.1.0" - import-lazy: "npm:^2.1.0" - is-ci: "npm:^2.0.0" - is-installed-globally: "npm:^0.4.0" - is-npm: "npm:^5.0.0" - is-yarn-global: "npm:^0.3.0" - latest-version: "npm:^5.1.0" - pupa: "npm:^2.1.1" - semver: "npm:^7.3.4" - semver-diff: "npm:^3.1.1" - xdg-basedir: "npm:^4.0.0" - checksum: 10/9df39e2d4f2e59ea788c719baaacf3d2bdde09d065f00319d52c0af255990e15f98ba40c115fb6246b6b2d5468685f36955ae0679c0b7fec834892fe7db4cab2 - languageName: node - linkType: hard - -"uri-js@npm:^4.2.2": - version: 4.4.1 - resolution: "uri-js@npm:4.4.1" - dependencies: - punycode: "npm:^2.1.0" - checksum: 10/b271ca7e3d46b7160222e3afa3e531505161c9a4e097febae9664e4b59912f4cbe94861361a4175edac3a03fee99d91e44b6a58c17a634bc5a664b19fc76fbcb - languageName: node - linkType: hard - -"url-parse-lax@npm:^3.0.0": - version: 3.0.0 - resolution: "url-parse-lax@npm:3.0.0" - dependencies: - prepend-http: "npm:^2.0.0" - checksum: 10/1040e357750451173132228036aff1fd04abbd43eac1fb3e4fca7495a078bcb8d33cb765fe71ad7e473d9c94d98fd67adca63bd2716c815a2da066198dd37217 - languageName: node - linkType: hard - -"url-parse@npm:^1.5.3": - version: 1.5.10 - resolution: "url-parse@npm:1.5.10" - dependencies: - querystringify: "npm:^2.1.1" - requires-port: "npm:^1.0.0" - checksum: 10/c9e96bc8c5b34e9f05ddfeffc12f6aadecbb0d971b3cc26015b58d5b44676a99f50d5aeb1e5c9e61fa4d49961ae3ab1ae997369ed44da51b2f5ac010d188e6ad - languageName: node - linkType: hard - -"usb@npm:2.9.0": - version: 2.9.0 - resolution: "usb@npm:2.9.0" - dependencies: - "@types/w3c-web-usb": "npm:^1.0.6" - node-addon-api: "npm:^6.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.5.0" - checksum: 10/ab68d4247a24a463328e293256aec5682c12163278ab474b7243a9dba6283a44bb74f9e0ca96f1d00197bb271f294549c3a4debdbd3452a02750a4a65ff29ee6 - languageName: node - linkType: hard - -"use-memo-one@npm:^1.1.1": - version: 1.1.3 - resolution: "use-memo-one@npm:1.1.3" - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: 10/8f08eba26d69406b61bb4b8dacdd5a92bd6aef5b53d346dfe87954f7330ee10ecabc937cc7854635155d46053828e85c10b5a5aff7a04720e6a97b9f42999bac - languageName: node - linkType: hard - -"utf-8-validate@npm:^5.0.2": - version: 5.0.10 - resolution: "utf-8-validate@npm:5.0.10" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10/b89cbc13b4badad04828349ebb7aa2ab1edcb02b46ab12ce0ba5b2d6886d684ad4e93347819e3c8d36224c8742422d2dca69f5cc16c72ae4d7eeecc0c5cb544b - languageName: node - linkType: hard - -"utf8-byte-length@npm:^1.0.1": - version: 1.0.5 - resolution: "utf8-byte-length@npm:1.0.5" - checksum: 10/168edff8f7baca974b5bfb5256cebd57deaef8fbf2d0390301dd1009da52de64774d62f088254c94021e372147b6c938aa82f2318a3a19f9ebd21e48b7f40029 - languageName: node - linkType: hard - -"util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 10/474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 - languageName: node - linkType: hard - -"util-extend@npm:^1.0.1": - version: 1.0.3 - resolution: "util-extend@npm:1.0.3" - checksum: 10/da57f399b331f40fe2cea5409b1f4939231433db9b52dac5593e4390a98b7b0d1318a0daefbcc48123fffe5026ef49f418b3e4df7a4cd7649a2583e559c608a5 - languageName: node - linkType: hard - -"util@npm:^0.12.5": - version: 0.12.5 - resolution: "util@npm:0.12.5" - dependencies: - inherits: "npm:^2.0.3" - is-arguments: "npm:^1.0.4" - is-generator-function: "npm:^1.0.7" - is-typed-array: "npm:^1.1.3" - which-typed-array: "npm:^1.1.2" - checksum: 10/61a10de7753353dd4d744c917f74cdd7d21b8b46379c1e48e1c4fd8e83f8190e6bd9978fc4e5102ab6a10ebda6019d1b36572fa4a325e175ec8b789a121f6147 - languageName: node - linkType: hard - -"utila@npm:~0.4": - version: 0.4.0 - resolution: "utila@npm:0.4.0" - checksum: 10/b068d8cb140588da0d0c80ee3c14c6b75d3f68760d8a1c6c3908d0270e9e4056454ff16189586481b7382926c44674f6929d08e06eaf9ec8f62736cd900169c5 - languageName: node - linkType: hard - -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10/5d6949693d58cb2e636a84f3ee1c6e7b2f9c16cb1d42d0ecb386d8c025c69e327205aa1c69e2868cc06a01e5e20681fbba55a4e0ed0cce913d60334024eae798 - languageName: node - linkType: hard - -"uuid@npm:^10.0.0": - version: 10.0.0 - resolution: "uuid@npm:10.0.0" - bin: - uuid: dist/bin/uuid - checksum: 10/35aa60614811a201ff90f8ca5e9ecb7076a75c3821e17f0f5ff72d44e36c2d35fcbc2ceee9c4ac7317f4cc41895da30e74f3885e30313bee48fda6338f250538 - languageName: node - linkType: hard - -"uuid@npm:^7.0.3": - version: 7.0.3 - resolution: "uuid@npm:7.0.3" - bin: - uuid: dist/bin/uuid - checksum: 10/b2a4d30ecd6581015175487426558aafd7f7b4013a2e30802c128cc28cad9abe46ecd36c02f7fbcde7908fd4672334818d56a441c0871963d6bd89d911bef2ea - languageName: node - linkType: hard - -"uuid@npm:^8.3.2": - version: 8.3.2 - resolution: "uuid@npm:8.3.2" - bin: - uuid: dist/bin/uuid - checksum: 10/9a5f7aa1d6f56dd1e8d5f2478f855f25c645e64e26e347a98e98d95781d5ed20062d6cca2eecb58ba7c84bc3910be95c0451ef4161906abaab44f9cb68ffbdd1 - languageName: node - linkType: hard - -"uuid@npm:^9.0.0": - version: 9.0.1 - resolution: "uuid@npm:9.0.1" - bin: - uuid: dist/bin/uuid - checksum: 10/9d0b6adb72b736e36f2b1b53da0d559125ba3e39d913b6072f6f033e0c87835b414f0836b45bcfaf2bdf698f92297fea1c3cc19b0b258bc182c9c43cc0fab9f2 - languageName: node - linkType: hard - -"validate-npm-package-license@npm:^3.0.1": - version: 3.0.4 - resolution: "validate-npm-package-license@npm:3.0.4" - dependencies: - spdx-correct: "npm:^3.0.0" - spdx-expression-parse: "npm:^3.0.0" - checksum: 10/86242519b2538bb8aeb12330edebb61b4eb37fd35ef65220ab0b03a26c0592c1c8a7300d32da3cde5abd08d18d95e8dabfad684b5116336f6de9e6f207eec224 - languageName: node - linkType: hard - -"value-or-function@npm:^4.0.0": - version: 4.0.0 - resolution: "value-or-function@npm:4.0.0" - checksum: 10/16b6aed84b8f9732a7eb7a5035a1480be3689d097a73b1154fb827caf021d5f2b6f60c0dfe694bfc8c9605f06cfc093dc428efdc3d24cb2768fbe202ffd42ae1 - languageName: node - linkType: hard - -"varint@npm:^5.0.0": - version: 5.0.2 - resolution: "varint@npm:5.0.2" - checksum: 10/e1a66bf9a6cea96d1f13259170d4d41b845833acf3a9df990ea1e760d279bd70d5b1f4c002a50197efd2168a2fd43eb0b808444600fd4d23651e8d42fe90eb05 - languageName: node - linkType: hard - -"vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10/31389debef15a480849b8331b220782230b9815a8e0dbb7b9a8369559aed2e9a7800cd904d4371ea74f4c3527db456dc8e7ac5befce5f0d289014dbdf47b2242 - languageName: node - linkType: hard - -"verror@npm:^1.10.0": - version: 1.10.1 - resolution: "verror@npm:1.10.1" - dependencies: - assert-plus: "npm:^1.0.0" - core-util-is: "npm:1.0.2" - extsprintf: "npm:^1.2.0" - checksum: 10/2b24eb830ecee7be69ab84192946074d7e8a85a42b0784d9874a28f52616065953ab4297975c87045879505fe9a6ac38dedad29a7470bbe0324540e5b6e92f62 - languageName: node - linkType: hard - -"vfile-location@npm:^5.0.0": - version: 5.0.3 - resolution: "vfile-location@npm:5.0.3" - dependencies: - "@types/unist": "npm:^3.0.0" - vfile: "npm:^6.0.0" - checksum: 10/f481d592fd507fe242da9a00d7400ded3c91587931f24e64c54f24752d7b30321721a1c99c0d949be1f6ed5fa7f8b169054fd07c744705b65dbdd10a9e4ebfe0 - languageName: node - linkType: hard - -"vfile-message@npm:^4.0.0": - version: 4.0.3 - resolution: "vfile-message@npm:4.0.3" - dependencies: - "@types/unist": "npm:^3.0.0" - unist-util-stringify-position: "npm:^4.0.0" - checksum: 10/7ba3dbeb752722a7913de8ea77c56be58cf805b5e5ccff090b2c4f8a82a32d91e058acb94d1614a40aa28191a5db99fb64014c7dfcad73d982f5d9d6702d2277 - languageName: node - linkType: hard - -"vfile@npm:^6.0.0": - version: 6.0.3 - resolution: "vfile@npm:6.0.3" - dependencies: - "@types/unist": "npm:^3.0.0" - vfile-message: "npm:^4.0.0" - checksum: 10/a5a85293c9eb8787aa42e180edaef00c13199a493d6ed82fecf13ab29a68526850788e22434d77808ea6b17a74e03ff899b9b4711df5b9eee75afcddd7c2e1fb - languageName: node - linkType: hard - -"vinyl-contents@npm:^2.0.0": - version: 2.0.0 - resolution: "vinyl-contents@npm:2.0.0" - dependencies: - bl: "npm:^5.0.0" - vinyl: "npm:^3.0.0" - checksum: 10/10d72a032e6317bf89713565d616df8726ee41601a41c48c7d778e61ab557c0a5fdee883ceecbfb33da4a5e11ea80e76e5ae63c1d13fda61edbb5ef50445c8b2 - languageName: node - linkType: hard - -"vinyl-fs@npm:^4.0.0": - version: 4.0.2 - resolution: "vinyl-fs@npm:4.0.2" - dependencies: - fs-mkdirp-stream: "npm:^2.0.1" - glob-stream: "npm:^8.0.3" - graceful-fs: "npm:^4.2.11" - iconv-lite: "npm:^0.6.3" - is-valid-glob: "npm:^1.0.0" - lead: "npm:^4.0.0" - normalize-path: "npm:3.0.0" - resolve-options: "npm:^2.0.0" - stream-composer: "npm:^1.0.2" - streamx: "npm:^2.14.0" - to-through: "npm:^3.0.0" - value-or-function: "npm:^4.0.0" - vinyl: "npm:^3.0.1" - vinyl-sourcemap: "npm:^2.0.0" - checksum: 10/18815bb9018b22f0c79e2686cc2e308905930246f432f47e7f450bc6c7c295c5717bbba38a4278ec8e7087cb1effe95c8d552051cb92f64e5b05607ccc9a9706 - languageName: node - linkType: hard - -"vinyl-sourcemap@npm:^2.0.0": - version: 2.0.0 - resolution: "vinyl-sourcemap@npm:2.0.0" - dependencies: - convert-source-map: "npm:^2.0.0" - graceful-fs: "npm:^4.2.10" - now-and-later: "npm:^3.0.0" - streamx: "npm:^2.12.5" - vinyl: "npm:^3.0.0" - vinyl-contents: "npm:^2.0.0" - checksum: 10/f23fc251a3eb72100690e5e93685ef776d8fee20e076f29655536a31b5235426b9404eea76b6b268fa00648437acc98aad54a7e76661b97305706c487a54afdb - languageName: node - linkType: hard - -"vinyl@npm:^3.0.0, vinyl@npm:^3.0.1": - version: 3.0.1 - resolution: "vinyl@npm:3.0.1" - dependencies: - clone: "npm:^2.1.2" - remove-trailing-separator: "npm:^1.1.0" - replace-ext: "npm:^2.0.0" - teex: "npm:^1.0.1" - checksum: 10/437f0f38d6a954a64ec067ffa144c3193ca1d9c8e967000abfb217d067f60a268b94515ae13d298f4577593f5fccbab67c12252b9af285ca53c621d6f7b9ddc3 - languageName: node - linkType: hard - -"void-elements@npm:3.1.0": - version: 3.1.0 - resolution: "void-elements@npm:3.1.0" - checksum: 10/0390f818107fa8fce55bb0a5c3f661056001c1d5a2a48c28d582d4d847347c2ab5b7f8272314cac58acf62345126b6b09bea623a185935f6b1c3bbce0dfd7f7f - languageName: node - linkType: hard - -"w3c-xmlserializer@npm:^5.0.0": - version: 5.0.0 - resolution: "w3c-xmlserializer@npm:5.0.0" - dependencies: - xml-name-validator: "npm:^5.0.0" - checksum: 10/d78f59e6b4f924aa53b6dfc56949959229cae7fe05ea9374eb38d11edcec01398b7f5d7a12576bd5acc57ff446abb5c9115cd83b9d882555015437cf858d42f0 - languageName: node - linkType: hard - -"walkdir@npm:^0.4.1": - version: 0.4.1 - resolution: "walkdir@npm:0.4.1" - checksum: 10/54cbe7afc5fb811a55748b0bfa077a9a4aa43f568eb5857db9785af9728e1ad8b1ecf6b9ce6f14b405c6124939a92522e36aaa0397f3f52a9a7a08496f2eebe1 - languageName: node - linkType: hard - -"warning@npm:^4.0.2, warning@npm:^4.0.3": - version: 4.0.3 - resolution: "warning@npm:4.0.3" - dependencies: - loose-envify: "npm:^1.0.0" - checksum: 10/e7842aff036e2e07ce7a6cc3225e707775b969fe3d0577ad64bd24660e3a9ce3017f0b8c22a136566dcd3a151f37b8ed1ccee103b3bd82bd8a571bf80b247bc4 - languageName: node - linkType: hard - -"watchpack@npm:^2.4.4": - version: 2.5.0 - resolution: "watchpack@npm:2.5.0" - dependencies: - glob-to-regexp: "npm:^0.4.1" - graceful-fs: "npm:^4.1.2" - checksum: 10/6793335adecc06944430db1c9dbbb960d357019a3456fa2a5e38a96c0320a9d4444198f3d4a513c9b58306ddd89f2a1754f99056e4b71c512260436287c58361 - languageName: node - linkType: hard - -"wbuf@npm:^1.1.0, wbuf@npm:^1.7.3": - version: 1.7.3 - resolution: "wbuf@npm:1.7.3" - dependencies: - minimalistic-assert: "npm:^1.0.0" - checksum: 10/c18b51c4e1fb19705c94b93c0cf093ba014606abceee949399d56074ef1863bf4897a8d884be24e8d224d18c9ce411cf6924006d0a5430492729af51256e067a - languageName: node - linkType: hard - -"wcwidth@npm:^1.0.1": - version: 1.0.1 - resolution: "wcwidth@npm:1.0.1" - dependencies: - defaults: "npm:^1.0.3" - checksum: 10/182ebac8ca0b96845fae6ef44afd4619df6987fe5cf552fdee8396d3daa1fb9b8ec5c6c69855acb7b3c1231571393bd1f0a4cdc4028d421575348f64bb0a8817 - languageName: node - linkType: hard - -"web-namespaces@npm:^2.0.0": - version: 2.0.1 - resolution: "web-namespaces@npm:2.0.1" - checksum: 10/b6d9f02f1a43d0ef0848a812d89c83801d5bbad57d8bb61f02eb6d7eb794c3736f6cc2e1191664bb26136594c8218ac609f4069722c6f56d9fc2d808fa9271c6 - languageName: node - linkType: hard - -"web-streams-polyfill@npm:^3.0.3": - version: 3.3.3 - resolution: "web-streams-polyfill@npm:3.3.3" - checksum: 10/8e7e13501b3834094a50abe7c0b6456155a55d7571312b89570012ef47ec2a46d766934768c50aabad10a9c30dd764a407623e8bfcc74fcb58495c29130edea9 - languageName: node - linkType: hard - -"web3-core@npm:^4.4.0, web3-core@npm:^4.5.0, web3-core@npm:^4.6.0, web3-core@npm:^4.7.1": - version: 4.7.1 - resolution: "web3-core@npm:4.7.1" - dependencies: - web3-errors: "npm:^1.3.1" - web3-eth-accounts: "npm:^4.3.1" - web3-eth-iban: "npm:^4.0.7" - web3-providers-http: "npm:^4.2.0" - web3-providers-ipc: "npm:^4.0.7" - web3-providers-ws: "npm:^4.0.8" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - dependenciesMeta: - web3-providers-ipc: - optional: true - checksum: 10/c6b9447e62f5c57ccc3c96492adf5630cb3256968c15ce5675c660dec1f6da0bf60397efa88588029640f749ff45a1adaa0167a402ba0b4a46e600d8eda76334 - languageName: node - linkType: hard - -"web3-errors@npm:^1.1.3, web3-errors@npm:^1.2.0, web3-errors@npm:^1.3.0, web3-errors@npm:^1.3.1": - version: 1.3.1 - resolution: "web3-errors@npm:1.3.1" - dependencies: - web3-types: "npm:^1.10.0" - checksum: 10/0d1cb0e02701a4bd619f856b0a6702fdd4cdc0a434029c3c3dcde3f3cc4acaca418117ad10238002aa697745840e7fd312bd43ad5341482b3ff8f9e6eb438a31 - languageName: node - linkType: hard - -"web3-eth-abi@npm:^4.4.1": - version: 4.4.1 - resolution: "web3-eth-abi@npm:4.4.1" - dependencies: - abitype: "npm:0.7.1" - web3-errors: "npm:^1.3.1" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/0c7f4f9f05f04e0ac98f6029edfb3bf7e514efc325f6be83e999203f49c7a0cdc9759f4b1011ce12d80c2044c74a867f7fc0ee83538408c2ebb4c9f407027b7f - languageName: node - linkType: hard - -"web3-eth-accounts@npm:^4.3.1": - version: 4.3.1 - resolution: "web3-eth-accounts@npm:4.3.1" - dependencies: - "@ethereumjs/rlp": "npm:^4.0.1" - crc-32: "npm:^1.2.2" - ethereum-cryptography: "npm:^2.0.0" - web3-errors: "npm:^1.3.1" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/f8b689146c908d88b983bd467c3e794ed96e284490aa3f74e665580202db4f0826d4108f0aa95dc6ef1e14f9a8a41939ff2c4485e9713744dc6474d7082d9239 - languageName: node - linkType: hard - -"web3-eth-contract@npm:^4.5.0, web3-eth-contract@npm:^4.7.2": - version: 4.7.2 - resolution: "web3-eth-contract@npm:4.7.2" - dependencies: - "@ethereumjs/rlp": "npm:^5.0.2" - web3-core: "npm:^4.7.1" - web3-errors: "npm:^1.3.1" - web3-eth: "npm:^4.11.1" - web3-eth-abi: "npm:^4.4.1" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/f5dd22199a69c6f10b0c38daee790341f80247a0155bad03e7c1a9ffad2d6c47722010b4fd0e3fe7832a43eb72a2fceadfd2892712ef199898c1e43067a92c0d - languageName: node - linkType: hard - -"web3-eth-ens@npm:^4.4.0": - version: 4.4.0 - resolution: "web3-eth-ens@npm:4.4.0" - dependencies: - "@adraffy/ens-normalize": "npm:^1.8.8" - web3-core: "npm:^4.5.0" - web3-errors: "npm:^1.2.0" - web3-eth: "npm:^4.8.0" - web3-eth-contract: "npm:^4.5.0" - web3-net: "npm:^4.1.0" - web3-types: "npm:^1.7.0" - web3-utils: "npm:^4.3.0" - web3-validator: "npm:^2.0.6" - checksum: 10/25a1535e095d8ffcbc0641041af69e42aa60ba2989477108a5678c42a06135df9134ccc6024c89c216cb3408848e3905ee178d5b12e3bb740e895ee6ee0bd2cf - languageName: node - linkType: hard - -"web3-eth-iban@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-eth-iban@npm:4.0.7" - dependencies: - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - web3-validator: "npm:^2.0.3" - checksum: 10/9d7521b4d4aef3a0d697905c7859d8e4d7ce82234320beecba9b24d254592a7ccf0354f329289b4e11a816fcbe3eceb842c4c87678f5e8ec622c8351bc1b9170 - languageName: node - linkType: hard - -"web3-eth-personal@npm:^4.1.0": - version: 4.1.0 - resolution: "web3-eth-personal@npm:4.1.0" - dependencies: - web3-core: "npm:^4.6.0" - web3-eth: "npm:^4.9.0" - web3-rpc-methods: "npm:^1.3.0" - web3-types: "npm:^1.8.0" - web3-utils: "npm:^4.3.1" - web3-validator: "npm:^2.0.6" - checksum: 10/a560b0ef1f28961101c47824aa6fc71722c4e581ef5ffc5b68cf1b7db0fd5804032239f872a167a589b3c0ebe223353b8112b38e247e1f5b5ac48991e12f853c - languageName: node - linkType: hard - -"web3-eth@npm:^4.11.1, web3-eth@npm:^4.8.0, web3-eth@npm:^4.9.0": - version: 4.11.1 - resolution: "web3-eth@npm:4.11.1" - dependencies: - setimmediate: "npm:^1.0.5" - web3-core: "npm:^4.7.1" - web3-errors: "npm:^1.3.1" - web3-eth-abi: "npm:^4.4.1" - web3-eth-accounts: "npm:^4.3.1" - web3-net: "npm:^4.1.0" - web3-providers-ws: "npm:^4.0.8" - web3-rpc-methods: "npm:^1.3.0" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/b39f5f1559a012ece0017f3976207ffb5358c4ebb2e8518721efcc4975005ed8948814613795d1ceee67eb28f33608cbc89f6b231534241052de231c6477ed17 - languageName: node - linkType: hard - -"web3-net@npm:^4.1.0": - version: 4.1.0 - resolution: "web3-net@npm:4.1.0" - dependencies: - web3-core: "npm:^4.4.0" - web3-rpc-methods: "npm:^1.3.0" - web3-types: "npm:^1.6.0" - web3-utils: "npm:^4.3.0" - checksum: 10/2899ed28d9afda9f9faee6424752cb967dabf79128bce25321318e069a41571b9bd9477b480f290fd65f07cd6c0c641def0d72f31a730705112bd14c301f4e5e - languageName: node - linkType: hard - -"web3-providers-http@npm:^4.2.0": - version: 4.2.0 - resolution: "web3-providers-http@npm:4.2.0" - dependencies: - cross-fetch: "npm:^4.0.0" - web3-errors: "npm:^1.3.0" - web3-types: "npm:^1.7.0" - web3-utils: "npm:^4.3.1" - checksum: 10/812b05d1e0dd8b6c5005bdcfe3c5fbddfe6cdd082bd2654dfe171ad98c3b7ff85b0bab371c70366d2bace2cf45fbf7d2f087b4cb281dbfa12372b902b8138eeb - languageName: node - linkType: hard - -"web3-providers-ipc@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-providers-ipc@npm:4.0.7" - dependencies: - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - checksum: 10/b953818479f5d9c7b748e10977430fd7e377696f9160ae19b1917c0317e89671c4be824c06723b6fda190258927160fcec0e8e7c1aa87a5f0344008ef7649cda - languageName: node - linkType: hard - -"web3-providers-ws@npm:^4.0.8": - version: 4.0.8 - resolution: "web3-providers-ws@npm:4.0.8" - dependencies: - "@types/ws": "npm:8.5.3" - isomorphic-ws: "npm:^5.0.0" - web3-errors: "npm:^1.2.0" - web3-types: "npm:^1.7.0" - web3-utils: "npm:^4.3.1" - ws: "npm:^8.17.1" - checksum: 10/9b9fa96fa1fc9455fb1b632de50f542d2589710002ea2cb0cd6a5c1ed9f72960d80ce219ac66b038ea6d0a767056fe653aa258a1c084aa78d5745870cc2703b4 - languageName: node - linkType: hard - -"web3-rpc-methods@npm:^1.3.0": - version: 1.3.0 - resolution: "web3-rpc-methods@npm:1.3.0" - dependencies: - web3-core: "npm:^4.4.0" - web3-types: "npm:^1.6.0" - web3-validator: "npm:^2.0.6" - checksum: 10/8c134b1f2ae1cf94d5c452c53fe699d5951c22c62ea82084559db06722a5f0db2047be4209172ff90432c42f70cf8081fea0ea85a024e4cbcd0e037efd9acfa8 - languageName: node - linkType: hard - -"web3-rpc-providers@npm:^1.0.0-rc.4": - version: 1.0.0-rc.4 - resolution: "web3-rpc-providers@npm:1.0.0-rc.4" - dependencies: - web3-errors: "npm:^1.3.1" - web3-providers-http: "npm:^4.2.0" - web3-providers-ws: "npm:^4.0.8" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/a6dff5ce76e6905eb3e8e7175984305b859a35f17ffad9511371e0840097cdccc4d8dd4a4bc893aeb78f93c22034b4c73cac79551a4d7cba204e55590018909b - languageName: node - linkType: hard - -"web3-types@npm:^1.10.0, web3-types@npm:^1.3.0, web3-types@npm:^1.6.0, web3-types@npm:^1.7.0, web3-types@npm:^1.8.0": - version: 1.10.0 - resolution: "web3-types@npm:1.10.0" - checksum: 10/849f05a001896b27082c5b5c46c62b65a28f463366eeec7223802418a61db6d3487ebfb73d1fe6dcad3f0849a76e20706098819cb4e266df4f75ca24617e62a1 - languageName: node - linkType: hard - -"web3-utils@npm:^4.0.7, web3-utils@npm:^4.3.0, web3-utils@npm:^4.3.1, web3-utils@npm:^4.3.3": - version: 4.3.3 - resolution: "web3-utils@npm:4.3.3" - dependencies: - ethereum-cryptography: "npm:^2.0.0" - eventemitter3: "npm:^5.0.1" - web3-errors: "npm:^1.3.1" - web3-types: "npm:^1.10.0" - web3-validator: "npm:^2.0.6" - checksum: 10/c91ebbe67e469fe184ab258564b1f002f6f0e563a91637429c8e5bd3f0653b970d0c45dac544402021a5512297f0bea39aa2dd0b4c9bc6f54d4b58897f2dd002 - languageName: node - linkType: hard - -"web3-validator@npm:^2.0.3, web3-validator@npm:^2.0.6": - version: 2.0.6 - resolution: "web3-validator@npm:2.0.6" - dependencies: - ethereum-cryptography: "npm:^2.0.0" - util: "npm:^0.12.5" - web3-errors: "npm:^1.2.0" - web3-types: "npm:^1.6.0" - zod: "npm:^3.21.4" - checksum: 10/4df08e5317d55cdb674cbd11d7534a6cb41abfa4912cf3ff976c2b34a98e84500732fa0cade68a848e57b61259b4c9b377773f57de6bb69a5029c2ddef1cd0ab - languageName: node - linkType: hard - -"web3@npm:^4.7.0": - version: 4.16.0 - resolution: "web3@npm:4.16.0" - dependencies: - web3-core: "npm:^4.7.1" - web3-errors: "npm:^1.3.1" - web3-eth: "npm:^4.11.1" - web3-eth-abi: "npm:^4.4.1" - web3-eth-accounts: "npm:^4.3.1" - web3-eth-contract: "npm:^4.7.2" - web3-eth-ens: "npm:^4.4.0" - web3-eth-iban: "npm:^4.0.7" - web3-eth-personal: "npm:^4.1.0" - web3-net: "npm:^4.1.0" - web3-providers-http: "npm:^4.2.0" - web3-providers-ws: "npm:^4.0.8" - web3-rpc-methods: "npm:^1.3.0" - web3-rpc-providers: "npm:^1.0.0-rc.4" - web3-types: "npm:^1.10.0" - web3-utils: "npm:^4.3.3" - web3-validator: "npm:^2.0.6" - checksum: 10/8d63e70404914d2717d2675ba19350f112b07e50583a0703a68dd326eeb43a5c82b56f1165f4339cd89e697967581e0cd65fdb42ca0f1150fb7a3ce612f1a829 - languageName: node - linkType: hard - -"webidl-conversions@npm:^3.0.0": - version: 3.0.1 - resolution: "webidl-conversions@npm:3.0.1" - checksum: 10/b65b9f8d6854572a84a5c69615152b63371395f0c5dcd6729c45789052296df54314db2bc3e977df41705eacb8bc79c247cee139a63fa695192f95816ed528ad - languageName: node - linkType: hard - -"webidl-conversions@npm:^7.0.0": - version: 7.0.0 - resolution: "webidl-conversions@npm:7.0.0" - checksum: 10/4c4f65472c010eddbe648c11b977d048dd96956a625f7f8b9d64e1b30c3c1f23ea1acfd654648426ce5c743c2108a5a757c0592f02902cf7367adb7d14e67721 - languageName: node - linkType: hard - -"webpack-cli@npm:^5.1.4": - version: 5.1.4 - resolution: "webpack-cli@npm:5.1.4" - dependencies: - "@discoveryjs/json-ext": "npm:^0.5.0" - "@webpack-cli/configtest": "npm:^2.1.1" - "@webpack-cli/info": "npm:^2.0.2" - "@webpack-cli/serve": "npm:^2.0.5" - colorette: "npm:^2.0.14" - commander: "npm:^10.0.1" - cross-spawn: "npm:^7.0.3" - envinfo: "npm:^7.7.3" - fastest-levenshtein: "npm:^1.0.12" - import-local: "npm:^3.0.2" - interpret: "npm:^3.1.1" - rechoir: "npm:^0.8.0" - webpack-merge: "npm:^5.7.3" - peerDependencies: - webpack: 5.x.x - peerDependenciesMeta: - "@webpack-cli/generators": - optional: true - webpack-bundle-analyzer: - optional: true - webpack-dev-server: - optional: true - bin: - webpack-cli: bin/cli.js - checksum: 10/9ac3ae7c43b032051de2803d751bd3b44e1f226b931dcd56066a8e01b12734d49730903df9235e1eb1b67b2ee7451faf24a219c8f4a229c4f42c42e827eac44c - languageName: node - linkType: hard - -"webpack-dev-middleware@npm:^5.3.4": - version: 5.3.4 - resolution: "webpack-dev-middleware@npm:5.3.4" - dependencies: - colorette: "npm:^2.0.10" - memfs: "npm:^3.4.3" - mime-types: "npm:^2.1.31" - range-parser: "npm:^1.2.1" - schema-utils: "npm:^4.0.0" - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - checksum: 10/3004374130f31c2910da39b80e24296009653bb11caa0b8449d962b67e003d7e73d01fbcfda9be1f1f04179f66a9c39f4caf7963df54303b430e39ba5a94f7c2 - languageName: node - linkType: hard - -"webpack-dev-server@npm:^4.15.1": - version: 4.15.2 - resolution: "webpack-dev-server@npm:4.15.2" - dependencies: - "@types/bonjour": "npm:^3.5.9" - "@types/connect-history-api-fallback": "npm:^1.3.5" - "@types/express": "npm:^4.17.13" - "@types/serve-index": "npm:^1.9.1" - "@types/serve-static": "npm:^1.13.10" - "@types/sockjs": "npm:^0.3.33" - "@types/ws": "npm:^8.5.5" - ansi-html-community: "npm:^0.0.8" - bonjour-service: "npm:^1.0.11" - chokidar: "npm:^3.5.3" - colorette: "npm:^2.0.10" - compression: "npm:^1.7.4" - connect-history-api-fallback: "npm:^2.0.0" - default-gateway: "npm:^6.0.3" - express: "npm:^4.17.3" - graceful-fs: "npm:^4.2.6" - html-entities: "npm:^2.3.2" - http-proxy-middleware: "npm:^2.0.3" - ipaddr.js: "npm:^2.0.1" - launch-editor: "npm:^2.6.0" - open: "npm:^8.0.9" - p-retry: "npm:^4.5.0" - rimraf: "npm:^3.0.2" - schema-utils: "npm:^4.0.0" - selfsigned: "npm:^2.1.1" - serve-index: "npm:^1.9.1" - sockjs: "npm:^0.3.24" - spdy: "npm:^4.0.2" - webpack-dev-middleware: "npm:^5.3.4" - ws: "npm:^8.13.0" - peerDependencies: - webpack: ^4.37.0 || ^5.0.0 - peerDependenciesMeta: - webpack: - optional: true - webpack-cli: - optional: true - bin: - webpack-dev-server: bin/webpack-dev-server.js - checksum: 10/86ca4fb49d2a264243b2284c6027a9a91fd7d47737bbb4096e873be8a3f8493a9577b1535d7cc84de1ee991da7da97686c85788ccac547b0f5cf5c7686aacee9 - languageName: node - linkType: hard - -"webpack-merge@npm:^5.10.0, webpack-merge@npm:^5.7.3": - version: 5.10.0 - resolution: "webpack-merge@npm:5.10.0" - dependencies: - clone-deep: "npm:^4.0.1" - flat: "npm:^5.0.2" - wildcard: "npm:^2.0.0" - checksum: 10/fa46ab200f17d06c7cb49fc37ad91f15769753953c9724adac1061fa305a2a223cb37c3ed25a5f501580c91f11a0800990fe3814c70a77bf1aa5b3fca45a2ac6 - languageName: node - linkType: hard - -"webpack-sources@npm:^3.3.3": - version: 3.3.3 - resolution: "webpack-sources@npm:3.3.3" - checksum: 10/ec5d72607e8068467370abccbfff855c596c098baedbe9d198a557ccf198e8546a322836a6f74241492576adba06100286592993a62b63196832cdb53c8bae91 - languageName: node - linkType: hard - -"webpack-subresource-integrity@npm:^5.2.0-rc.1": - version: 5.2.0-rc.1 - resolution: "webpack-subresource-integrity@npm:5.2.0-rc.1" - peerDependencies: - html-webpack-plugin: ">= 5.0.0-beta.1 < 6" - webpack: ^5.12.0 - peerDependenciesMeta: - html-webpack-plugin: - optional: true - checksum: 10/a63e4e999812a753c70070457e6a2fb7e7ef1a05d8525a89796024fc56f26a0e56bd3e8f2b25e61f0ae969d627770a1fe326bebb58c296577d40c6a12aa4be37 - languageName: node - linkType: hard - -"webpack@npm:^5.89.0": - version: 5.104.1 - resolution: "webpack@npm:5.104.1" - dependencies: - "@types/eslint-scope": "npm:^3.7.7" - "@types/estree": "npm:^1.0.8" - "@types/json-schema": "npm:^7.0.15" - "@webassemblyjs/ast": "npm:^1.14.1" - "@webassemblyjs/wasm-edit": "npm:^1.14.1" - "@webassemblyjs/wasm-parser": "npm:^1.14.1" - acorn: "npm:^8.15.0" - acorn-import-phases: "npm:^1.0.3" - browserslist: "npm:^4.28.1" - chrome-trace-event: "npm:^1.0.2" - enhanced-resolve: "npm:^5.17.4" - es-module-lexer: "npm:^2.0.0" - eslint-scope: "npm:5.1.1" - events: "npm:^3.2.0" - glob-to-regexp: "npm:^0.4.1" - graceful-fs: "npm:^4.2.11" - json-parse-even-better-errors: "npm:^2.3.1" - loader-runner: "npm:^4.3.1" - mime-types: "npm:^2.1.27" - neo-async: "npm:^2.6.2" - schema-utils: "npm:^4.3.3" - tapable: "npm:^2.3.0" - terser-webpack-plugin: "npm:^5.3.16" - watchpack: "npm:^2.4.4" - webpack-sources: "npm:^3.3.3" - peerDependenciesMeta: - webpack-cli: - optional: true - bin: - webpack: bin/webpack.js - checksum: 10/c22b58fdf41d993971516154cb621d13b7b61dd744b7e2c6be972e9afcc9942694a8aaa322c07fba46448c69d663023ff53d0aeeb00eb0b125d83ace5ca8fa3c - languageName: node - linkType: hard - -"websocket-driver@npm:>=0.5.1, websocket-driver@npm:^0.7.4": - version: 0.7.4 - resolution: "websocket-driver@npm:0.7.4" - dependencies: - http-parser-js: "npm:>=0.5.1" - safe-buffer: "npm:>=5.1.0" - websocket-extensions: "npm:>=0.1.1" - checksum: 10/17197d265d5812b96c728e70fd6fe7d067471e121669768fe0c7100c939d997ddfc807d371a728556e24fc7238aa9d58e630ea4ff5fd4cfbb40f3d0a240ef32d - languageName: node - linkType: hard - -"websocket-extensions@npm:>=0.1.1": - version: 0.1.4 - resolution: "websocket-extensions@npm:0.1.4" - checksum: 10/b5399b487d277c78cdd2aef63764b67764aa9899431e3a2fa272c6ad7236a0fb4549b411d89afa76d5afd664c39d62fc19118582dc937e5bb17deb694f42a0d1 - languageName: node - linkType: hard - -"websocket@npm:^1.0.32, websocket@npm:^1.0.34": - version: 1.0.35 - resolution: "websocket@npm:1.0.35" - dependencies: - bufferutil: "npm:^4.0.1" - debug: "npm:^2.2.0" - es5-ext: "npm:^0.10.63" - typedarray-to-buffer: "npm:^3.1.5" - utf-8-validate: "npm:^5.0.2" - yaeti: "npm:^0.0.6" - checksum: 10/c05a80c536de7befadc530e5134947f7cc000493038ab78e3ed03080bb873b4ecedf95ea4e7087e6a98d04f02f31723bd98ec67f85e9159525a769b5a478fa8d - languageName: node - linkType: hard - -"whatwg-encoding@npm:^3.1.1": - version: 3.1.1 - resolution: "whatwg-encoding@npm:3.1.1" - dependencies: - iconv-lite: "npm:0.6.3" - checksum: 10/bbef815eb67f91487c7f2ef96329743f5fd8357d7d62b1119237d25d41c7e452dff8197235b2d3c031365a17f61d3bb73ca49d0ed1582475aa4a670815e79534 - languageName: node - linkType: hard - -"whatwg-mimetype@npm:^4.0.0": - version: 4.0.0 - resolution: "whatwg-mimetype@npm:4.0.0" - checksum: 10/894a618e2d90bf444b6f309f3ceb6e58cf21b2beaa00c8b333696958c4076f0c7b30b9d33413c9ffff7c5832a0a0c8569e5bb347ef44beded72aeefd0acd62e8 - languageName: node - linkType: hard - -"whatwg-url@npm:^14.0.0": - version: 14.2.0 - resolution: "whatwg-url@npm:14.2.0" - dependencies: - tr46: "npm:^5.1.0" - webidl-conversions: "npm:^7.0.0" - checksum: 10/f0a95b0601c64f417c471536a2d828b4c16fe37c13662483a32f02f183ed0f441616609b0663fb791e524e8cd56d9a86dd7366b1fc5356048ccb09b576495e7c - languageName: node - linkType: hard - -"whatwg-url@npm:^5.0.0": - version: 5.0.0 - resolution: "whatwg-url@npm:5.0.0" - dependencies: - tr46: "npm:~0.0.3" - webidl-conversions: "npm:^3.0.0" - checksum: 10/f95adbc1e80820828b45cc671d97da7cd5e4ef9deb426c31bcd5ab00dc7103042291613b3ef3caec0a2335ed09e0d5ed026c940755dbb6d404e2b27f940fdf07 - languageName: node - linkType: hard - -"which-boxed-primitive@npm:^1.0.2, which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": - version: 1.1.1 - resolution: "which-boxed-primitive@npm:1.1.1" - dependencies: - is-bigint: "npm:^1.1.0" - is-boolean-object: "npm:^1.2.1" - is-number-object: "npm:^1.1.1" - is-string: "npm:^1.1.1" - is-symbol: "npm:^1.1.1" - checksum: 10/a877c0667bc089518c83ad4d845cf8296b03efe3565c1de1940c646e00a2a1ae9ed8a185bcfa27cbf352de7906f0616d83b9d2f19ca500ee02a551fb5cf40740 - languageName: node - linkType: hard - -"which-builtin-type@npm:^1.2.1": - version: 1.2.1 - resolution: "which-builtin-type@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - function.prototype.name: "npm:^1.1.6" - has-tostringtag: "npm:^1.0.2" - is-async-function: "npm:^2.0.0" - is-date-object: "npm:^1.1.0" - is-finalizationregistry: "npm:^1.1.0" - is-generator-function: "npm:^1.0.10" - is-regex: "npm:^1.2.1" - is-weakref: "npm:^1.0.2" - isarray: "npm:^2.0.5" - which-boxed-primitive: "npm:^1.1.0" - which-collection: "npm:^1.0.2" - which-typed-array: "npm:^1.1.16" - checksum: 10/22c81c5cb7a896c5171742cd30c90d992ff13fb1ea7693e6cf80af077791613fb3f89aa9b4b7f890bd47b6ce09c6322c409932359580a2a2a54057f7b52d1cbe - languageName: node - linkType: hard - -"which-collection@npm:^1.0.1, which-collection@npm:^1.0.2": - version: 1.0.2 - resolution: "which-collection@npm:1.0.2" - dependencies: - is-map: "npm:^2.0.3" - is-set: "npm:^2.0.3" - is-weakmap: "npm:^2.0.2" - is-weakset: "npm:^2.0.3" - checksum: 10/674bf659b9bcfe4055f08634b48a8588e879161b9fefed57e9ec4ff5601e4d50a05ccd76cf10f698ef5873784e5df3223336d56c7ce88e13bcf52ebe582fc8d7 - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.13, which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19, which-typed-array@npm:^1.1.2": - version: 1.1.19 - resolution: "which-typed-array@npm:1.1.19" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - for-each: "npm:^0.3.5" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - checksum: 10/12be30fb88567f9863186bee1777f11bea09dd59ed8b3ce4afa7dd5cade75e2f4cc56191a2da165113cc7cf79987ba021dac1e22b5b62aa7e5c56949f2469a68 - languageName: node - linkType: hard - -"which@npm:^2.0.1": - version: 2.0.2 - resolution: "which@npm:2.0.2" - dependencies: - isexe: "npm:^2.0.0" - bin: - node-which: ./bin/node-which - checksum: 10/4782f8a1d6b8fc12c65e968fea49f59752bf6302dc43036c3bf87da718a80710f61a062516e9764c70008b487929a73546125570acea95c5b5dcc8ac3052c70f - languageName: node - linkType: hard - -"which@npm:^6.0.0": - version: 6.0.0 - resolution: "which@npm:6.0.0" - dependencies: - isexe: "npm:^3.1.1" - bin: - node-which: bin/which.js - checksum: 10/df19b2cd8aac94b333fa29b42e8e371a21e634a742a3b156716f7752a5afe1d73fb5d8bce9b89326f453d96879e8fe626eb421e0117eb1a3ce9fd8c97f6b7db9 - languageName: node - linkType: hard - -"wide-align@npm:^1.1.5": - version: 1.1.5 - resolution: "wide-align@npm:1.1.5" - dependencies: - string-width: "npm:^1.0.2 || 2 || 3 || 4" - checksum: 10/d5f8027b9a8255a493a94e4ec1b74a27bff6679d5ffe29316a3215e4712945c84ef73ca4045c7e20ae7d0c72f5f57f296e04a4928e773d4276a2f1222e4c2e99 - languageName: node - linkType: hard - -"widest-line@npm:^3.1.0": - version: 3.1.0 - resolution: "widest-line@npm:3.1.0" - dependencies: - string-width: "npm:^4.0.0" - checksum: 10/03db6c9d0af9329c37d74378ff1d91972b12553c7d72a6f4e8525fe61563fa7adb0b9d6e8d546b7e059688712ea874edd5ded475999abdeedf708de9849310e0 - languageName: node - linkType: hard - -"wildcard@npm:^2.0.0": - version: 2.0.1 - resolution: "wildcard@npm:2.0.1" - checksum: 10/e0c60a12a219e4b12065d1199802d81c27b841ed6ad6d9d28240980c73ceec6f856771d575af367cbec2982d9ae7838759168b551776577f155044f5a5ba843c - languageName: node - linkType: hard - -"word-wrap@npm:^1.2.5": - version: 1.2.5 - resolution: "word-wrap@npm:1.2.5" - checksum: 10/1ec6f6089f205f83037be10d0c4b34c9183b0b63fca0834a5b3cee55dd321429d73d40bb44c8fc8471b5203d6e8f8275717f49a8ff4b2b0ab41d7e1b563e0854 - languageName: node - linkType: hard - -"wordwrap@npm:^1.0.0": - version: 1.0.0 - resolution: "wordwrap@npm:1.0.0" - checksum: 10/497d40beb2bdb08e6d38754faa17ce20b0bf1306327f80cb777927edb23f461ee1f6bc659b3c3c93f26b08e1cf4b46acc5bae8fda1f0be3b5ab9a1a0211034cd - languageName: node - linkType: hard - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": - version: 7.0.0 - resolution: "wrap-ansi@npm:7.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10/cebdaeca3a6880da410f75209e68cd05428580de5ad24535f22696d7d9cab134d1f8498599f344c3cf0fb37c1715807a183778d8c648d6cc0cb5ff2bb4236540 - languageName: node - linkType: hard - -"wrap-ansi@npm:^6.0.1": - version: 6.2.0 - resolution: "wrap-ansi@npm:6.2.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10/0d64f2d438e0b555e693b95aee7b2689a12c3be5ac458192a1ce28f542a6e9e59ddfecc37520910c2c88eb1f82a5411260566dba5064e8f9895e76e169e76187 - languageName: node - linkType: hard - -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: "npm:^6.1.0" - string-width: "npm:^5.0.1" - strip-ansi: "npm:^7.0.1" - checksum: 10/7b1e4b35e9bb2312d2ee9ee7dc95b8cb5f8b4b5a89f7dde5543fe66c1e3715663094defa50d75454ac900bd210f702d575f15f3f17fa9ec0291806d2578d1ddf - languageName: node - linkType: hard - -"wrappy@npm:1": - version: 1.0.2 - resolution: "wrappy@npm:1.0.2" - checksum: 10/159da4805f7e84a3d003d8841557196034155008f817172d4e986bd591f74aa82aa7db55929a54222309e01079a65a92a9e6414da5a6aa4b01ee44a511ac3ee5 - languageName: node - linkType: hard - -"write-file-atomic@npm:^3.0.0": - version: 3.0.3 - resolution: "write-file-atomic@npm:3.0.3" - dependencies: - imurmurhash: "npm:^0.1.4" - is-typedarray: "npm:^1.0.0" - signal-exit: "npm:^3.0.2" - typedarray-to-buffer: "npm:^3.1.5" - checksum: 10/0955ab94308b74d32bc252afe69d8b42ba4b8a28b8d79f399f3f405969f82623f981e35d13129a52aa2973450f342107c06d86047572637584e85a1c0c246bf3 - languageName: node - linkType: hard - -"write-json-file@npm:^4.2.0": - version: 4.3.0 - resolution: "write-json-file@npm:4.3.0" - dependencies: - detect-indent: "npm:^6.0.0" - graceful-fs: "npm:^4.1.15" - is-plain-obj: "npm:^2.0.0" - make-dir: "npm:^3.0.0" - sort-keys: "npm:^4.0.0" - write-file-atomic: "npm:^3.0.0" - checksum: 10/33908c591923dc273e6574e7c0e2df157acfcf498e3a87c5615ced006a465c4058877df6abce6fc1acd2844fa3cf4518ace4a34d5d82ab28bcf896317ba1db6f - languageName: node - linkType: hard - -"ws@npm:^8.13.0, ws@npm:^8.15.1, ws@npm:^8.17.1, ws@npm:^8.18.0, ws@npm:^8.8.1": - version: 8.19.0 - resolution: "ws@npm:8.19.0" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ">=5.0.2" - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10/26e4901e93abaf73af9f26a93707c95b4845e91a7a347ec8c569e6e9be7f9df066f6c2b817b2d685544e208207898a750b78461e6e8d810c11a370771450c31b - languageName: node - linkType: hard - -"xdg-basedir@npm:^4.0.0": - version: 4.0.0 - resolution: "xdg-basedir@npm:4.0.0" - checksum: 10/0073d5b59a37224ed3a5ac0dd2ec1d36f09c49f0afd769008a6e9cd3cd666bd6317bd1c7ce2eab47e1de285a286bad11a9b038196413cd753b79770361855f3c - languageName: node - linkType: hard - -"xml-name-validator@npm:^5.0.0": - version: 5.0.0 - resolution: "xml-name-validator@npm:5.0.0" - checksum: 10/43f30f3f6786e406dd665acf08cd742d5f8a46486bd72517edb04b27d1bcd1599664c2a4a99fc3f1e56a3194bff588b12f178b7972bc45c8047bdc4c3ac8d4a1 - languageName: node - linkType: hard - -"xmlbuilder@npm:>=11.0.1, xmlbuilder@npm:^15.1.1": - version: 15.1.1 - resolution: "xmlbuilder@npm:15.1.1" - checksum: 10/e6f4bab2504afdd5f80491bda948894d2146756532521dbe7db33ae0931cd3000e3b4da19b3f5b3f51bedbd9ee06582144d28136d68bd1df96579ecf4d4404a2 - languageName: node - linkType: hard - -"xmlchars@npm:^2.2.0": - version: 2.2.0 - resolution: "xmlchars@npm:2.2.0" - checksum: 10/4ad5924974efd004a47cce6acf5c0269aee0e62f9a805a426db3337af7bcbd331099df174b024ace4fb18971b8a56de386d2e73a1c4b020e3abd63a4a9b917f1 - languageName: node - linkType: hard - -"xtend@npm:^4.0.2, xtend@npm:~4.0.1": - version: 4.0.2 - resolution: "xtend@npm:4.0.2" - checksum: 10/ac5dfa738b21f6e7f0dd6e65e1b3155036d68104e67e5d5d1bde74892e327d7e5636a076f625599dc394330a731861e87343ff184b0047fef1360a7ec0a5a36a - languageName: node - linkType: hard - -"xxhashjs@npm:^0.2.2": - version: 0.2.2 - resolution: "xxhashjs@npm:0.2.2" - dependencies: - cuint: "npm:^0.2.2" - checksum: 10/974dba1b7dd10f550714456366135fc70ba809e6e4db26e18a760a1f57e18dbc7fa6732738abc3f8fee27bb6a28d185240356ff4a57d7ce54282049e1da99886 - languageName: node - linkType: hard - -"y18n@npm:^5.0.5": - version: 5.0.8 - resolution: "y18n@npm:5.0.8" - checksum: 10/5f1b5f95e3775de4514edbb142398a2c37849ccfaf04a015be5d75521e9629d3be29bd4432d23c57f37e5b61ade592fb0197022e9993f81a06a5afbdcda9346d - languageName: node - linkType: hard - -"yaeti@npm:^0.0.6": - version: 0.0.6 - resolution: "yaeti@npm:0.0.6" - checksum: 10/6db12c152f7c363b80071086a3ebf5032e03332604eeda988872be50d6c8469e1f13316175544fa320f72edad696c2d83843ad0ff370659045c1a68bcecfcfea - languageName: node - linkType: hard - -"yallist@npm:^4.0.0": - version: 4.0.0 - resolution: "yallist@npm:4.0.0" - checksum: 10/4cb02b42b8a93b5cf50caf5d8e9beb409400a8a4d85e83bb0685c1457e9ac0b7a00819e9f5991ac25ffabb56a78e2f017c1acc010b3a1babfe6de690ba531abd - languageName: node - linkType: hard - -"yallist@npm:^5.0.0": - version: 5.0.0 - resolution: "yallist@npm:5.0.0" - checksum: 10/1884d272d485845ad04759a255c71775db0fac56308764b4c77ea56a20d56679fad340213054c8c9c9c26fcfd4c4b2a90df993b7e0aaf3cdb73c618d1d1a802a - languageName: node - linkType: hard - -"yaml@npm:^2.2.2": - version: 2.8.2 - resolution: "yaml@npm:2.8.2" - bin: - yaml: bin.mjs - checksum: 10/4eab0074da6bc5a5bffd25b9b359cf7061b771b95d1b3b571852098380db3b1b8f96e0f1f354b56cc7216aa97cea25163377ccbc33a2e9ce00316fe8d02f4539 - languageName: node - linkType: hard - -"yargs-parser@npm:^18.1.3": - version: 18.1.3 - resolution: "yargs-parser@npm:18.1.3" - dependencies: - camelcase: "npm:^5.0.0" - decamelize: "npm:^1.2.0" - checksum: 10/235bcbad5b7ca13e5abc54df61d42f230857c6f83223a38e4ed7b824681875b7f8b6ed52139d88a3ad007050f28dc0324b3c805deac7db22ae3b4815dae0e1bf - languageName: node - linkType: hard - -"yargs-parser@npm:^20.2.2": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 10/0188f430a0f496551d09df6719a9132a3469e47fe2747208b1dd0ab2bb0c512a95d0b081628bbca5400fb20dbf2fabe63d22badb346cecadffdd948b049f3fcc - languageName: node - linkType: hard - -"yargs-parser@npm:^21.1.1": - version: 21.1.1 - resolution: "yargs-parser@npm:21.1.1" - checksum: 10/9dc2c217ea3bf8d858041252d43e074f7166b53f3d010a8c711275e09cd3d62a002969a39858b92bbda2a6a63a585c7127014534a560b9c69ed2d923d113406e - languageName: node - linkType: hard - -"yargs@npm:^16.2.0": - version: 16.2.0 - resolution: "yargs@npm:16.2.0" - dependencies: - cliui: "npm:^7.0.2" - escalade: "npm:^3.1.1" - get-caller-file: "npm:^2.0.5" - require-directory: "npm:^2.1.1" - string-width: "npm:^4.2.0" - y18n: "npm:^5.0.5" - yargs-parser: "npm:^20.2.2" - checksum: 10/807fa21211d2117135d557f95fcd3c3d390530cda2eca0c840f1d95f0f40209dcfeb5ec18c785a1f3425896e623e3b2681e8bb7b6600060eda1c3f4804e7957e - languageName: node - linkType: hard - -"yargs@npm:^17.0.0, yargs@npm:^17.6.2, yargs@npm:^17.7.2": - version: 17.7.2 - resolution: "yargs@npm:17.7.2" - dependencies: - cliui: "npm:^8.0.1" - escalade: "npm:^3.1.1" - get-caller-file: "npm:^2.0.5" - require-directory: "npm:^2.1.1" - string-width: "npm:^4.2.3" - y18n: "npm:^5.0.5" - yargs-parser: "npm:^21.1.1" - checksum: 10/abb3e37678d6e38ea85485ed86ebe0d1e3464c640d7d9069805ea0da12f69d5a32df8e5625e370f9c96dd1c2dc088ab2d0a4dd32af18222ef3c4224a19471576 - languageName: node - linkType: hard - -"yauzl@npm:^2.10.0": - version: 2.10.0 - resolution: "yauzl@npm:2.10.0" - dependencies: - buffer-crc32: "npm:~0.2.3" - fd-slicer: "npm:~1.1.0" - checksum: 10/1e4c311050dc0cf2ee3dbe8854fe0a6cde50e420b3e561a8d97042526b4cf7a0718d6c8d89e9e526a152f4a9cec55bcea9c3617264115f48bd6704cf12a04445 - languageName: node - linkType: hard - -"yocto-queue@npm:^0.1.0": - version: 0.1.0 - resolution: "yocto-queue@npm:0.1.0" - checksum: 10/f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 - languageName: node - linkType: hard - -"zip-stream@npm:^6.0.1": - version: 6.0.1 - resolution: "zip-stream@npm:6.0.1" - dependencies: - archiver-utils: "npm:^5.0.0" - compress-commons: "npm:^6.0.2" - readable-stream: "npm:^4.0.0" - checksum: 10/aa5abd6a89590eadeba040afbc375f53337f12637e5e98330012a12d9886cde7a3ccc28bd91aafab50576035bbb1de39a9a316eecf2411c8b9009c9f94f0db27 - languageName: node - linkType: hard - -"zod@npm:^3.21.4, zod@npm:^3.25.76": - version: 3.25.76 - resolution: "zod@npm:3.25.76" - checksum: 10/f0c963ec40cd96858451d1690404d603d36507c1fc9682f2dae59ab38b578687d542708a7fdbf645f77926f78c9ed558f57c3d3aa226c285f798df0c4da16995 - languageName: node - linkType: hard - -"zwitch@npm:^2.0.0": - version: 2.0.4 - resolution: "zwitch@npm:2.0.4" - checksum: 10/f22ec5fc2d5f02c423c93d35cdfa83573a3a3bd98c66b927c368ea4d0e7252a500df2a90a6b45522be536a96a73404393c958e945fdba95e6832c200791702b6 - languageName: node - linkType: hard diff --git a/screenshot.png b/screenshot.png index 9a501e25..aa3f1af6 100644 Binary files a/screenshot.png and b/screenshot.png differ diff --git a/shared/blockchain/index.ts b/shared/blockchain/index.ts index 3e7b0fc0..5e9190c2 100644 --- a/shared/blockchain/index.ts +++ b/shared/blockchain/index.ts @@ -5,6 +5,6 @@ * that can be used across web and mobile applications. */ -export * from './polkadot'; +export * from './pezkuwi'; // Add more blockchain utility exports as needed diff --git a/shared/blockchain/polkadot.ts b/shared/blockchain/pezkuwi.ts similarity index 94% rename from shared/blockchain/polkadot.ts rename to shared/blockchain/pezkuwi.ts index 2b4be438..f28e68e9 100644 --- a/shared/blockchain/polkadot.ts +++ b/shared/blockchain/pezkuwi.ts @@ -1,5 +1,5 @@ /** - * Polkadot/Substrate blockchain utilities + * Pezkuwi/Bizinikiwi blockchain utilities */ import type { BlockchainNetwork } from '../types/blockchain'; diff --git a/shared/i18n/index.ts b/shared/i18n/index.ts index a25e3ea6..2b124551 100644 --- a/shared/i18n/index.ts +++ b/shared/i18n/index.ts @@ -7,12 +7,14 @@ export { translations as comprehensiveTranslations, supportedLocales } from './translations'; // Import all translation JSON files for i18next compatibility -import en from './locales/en.json?url'; -import tr from './locales/tr.json?url'; -import kmr from './locales/kmr.json?url'; -import ckb from './locales/ckb.json?url'; -import ar from './locales/ar.json?url'; -import fa from './locales/fa.json?url'; +// Note: For Metro bundler (React Native), we import JSON directly +// For Vite (web), the ?url syntax would be used, but we handle this via conditional exports +import en from './locales/en.json'; +import tr from './locales/tr.json'; +import kmr from './locales/kmr.json'; +import ckb from './locales/ckb.json'; +import ar from './locales/ar.json'; +import fa from './locales/fa.json'; /** * Language configuration with RTL support @@ -59,9 +61,16 @@ export const translationUrls = { }; /** - * Translation resources (empty - load dynamically) + * Translation resources (for React Native) */ -export const translations = {}; +export const translations = { + en, + tr, + kmr, + ckb, + ar, + fa, +}; /** * Check if a language is RTL diff --git a/shared/images/favicon.png b/shared/images/favicon.png index fa697152..445f8f22 100644 Binary files a/shared/images/favicon.png and b/shared/images/favicon.png differ diff --git a/shared/images/kurdish-president.png b/shared/images/kurdish-president.png new file mode 100644 index 00000000..78d6edf4 Binary files /dev/null and b/shared/images/kurdish-president.png differ diff --git a/shared/images/kurdistan-map.png b/shared/images/kurdistan-map.png new file mode 100644 index 00000000..281a3b00 Binary files /dev/null and b/shared/images/kurdistan-map.png differ diff --git a/shared/images/pezkuwi-extension.png b/shared/images/pezkuwi-extension.png new file mode 100644 index 00000000..49132d40 Binary files /dev/null and b/shared/images/pezkuwi-extension.png differ diff --git a/shared/images/pezkuwi-wallet.jpg b/shared/images/pezkuwi-wallet.jpg new file mode 100644 index 00000000..ff6f719f Binary files /dev/null and b/shared/images/pezkuwi-wallet.jpg differ diff --git a/shared/lib/citizenship-workflow.ts b/shared/lib/citizenship-workflow.ts index 862a9eba..ff74a683 100644 --- a/shared/lib/citizenship-workflow.ts +++ b/shared/lib/citizenship-workflow.ts @@ -4,9 +4,16 @@ // Handles citizenship verification, status checks, and workflow logic import type { ApiPromise } from '@pezkuwi/api'; -import { web3FromAddress } from '@pezkuwi/extension-dapp'; +// Temporarily disabled for React Native compatibility +// import { web3FromAddress } from '@pezkuwi/extension-dapp'; import type { InjectedAccountWithMeta } from '@pezkuwi/extension-inject/types'; +// Stub for mobile - TODO: implement proper React Native version +const web3FromAddress = async (address: string) => { + // In React Native, we'll use a different signing mechanism + throw new Error('web3FromAddress not implemented for React Native yet'); +}; + // ======================================== // TYPE DEFINITIONS // ======================================== diff --git a/shared/lib/ipfs.ts b/shared/lib/ipfs.ts index 9c1f1460..76d46fc1 100644 --- a/shared/lib/ipfs.ts +++ b/shared/lib/ipfs.ts @@ -1,6 +1,20 @@ import { toast } from 'sonner'; -const PINATA_JWT = import.meta.env.VITE_PINATA_JWT; +// Helper to get environment variables that works in both web (Vite) and React Native (Expo) +const getEnv = (key: string): string | undefined => { + // Check for Vite environment (web) + if (typeof import.meta !== 'undefined' && import.meta.env) { + return (import.meta.env as any)[key]; + } + // Check for Expo environment (React Native) + if (typeof process !== 'undefined' && process.env) { + const expoKey = key.replace('VITE_', 'EXPO_PUBLIC_'); + return process.env[expoKey] || process.env[key]; + } + return undefined; +}; + +const PINATA_JWT = getEnv('VITE_PINATA_JWT'); const PINATA_API = 'https://api.pinata.cloud/pinning/pinFileToIPFS'; export async function uploadToIPFS(file: File): Promise { diff --git a/shared/lib/scores.ts b/shared/lib/scores.ts index b62cf018..c9a5558a 100644 --- a/shared/lib/scores.ts +++ b/shared/lib/scores.ts @@ -139,7 +139,7 @@ export async function getReferralScore( ): Promise { try { if (!api?.query?.referral?.referralCount) { - if (import.meta.env.DEV) console.warn('Referral pallet not available'); + if (typeof __DEV__ !== 'undefined' && __DEV__) console.warn('Referral pallet not available'); return 0; } diff --git a/shared/lib/wallet.ts b/shared/lib/wallet.ts index 517e7e83..fe365eb3 100644 --- a/shared/lib/wallet.ts +++ b/shared/lib/wallet.ts @@ -6,14 +6,29 @@ import type { InjectedAccountWithMeta } from '@pezkuwi/extension-inject/types'; import { getCurrentNetworkConfig } from '../blockchain/endpoints'; +// Helper to get environment variables that works in both web (Vite) and React Native (Expo) +const getEnv = (key: string, defaultValue: string = ''): string => { + // Check for Vite environment (web) + if (typeof import.meta !== 'undefined' && import.meta.env) { + return (import.meta.env as any)[key] || defaultValue; + } + // Check for Expo environment (React Native) + if (typeof process !== 'undefined' && process.env) { + // Expo uses EXPO_PUBLIC_ prefix, Vite uses VITE_ prefix + const expoKey = key.replace('VITE_', 'EXPO_PUBLIC_'); + return process.env[expoKey] || process.env[key] || defaultValue; + } + return defaultValue; +}; + // ======================================== // CHAIN CONFIGURATION // ======================================== export const CHAIN_CONFIG = { - name: import.meta.env.VITE_CHAIN_NAME || 'PezkuwiChain', - symbol: import.meta.env.VITE_CHAIN_TOKEN_SYMBOL || 'PEZ', - decimals: parseInt(import.meta.env.VITE_CHAIN_TOKEN_DECIMALS || '12'), - ss58Format: parseInt(import.meta.env.VITE_CHAIN_SS58_FORMAT || '42'), + name: getEnv('VITE_CHAIN_NAME', 'PezkuwiChain'), + symbol: getEnv('VITE_CHAIN_TOKEN_SYMBOL', 'PEZ'), + decimals: parseInt(getEnv('VITE_CHAIN_TOKEN_DECIMALS', '12')), + ss58Format: parseInt(getEnv('VITE_CHAIN_SS58_FORMAT', '42')), }; // ======================================== @@ -26,13 +41,13 @@ export const CHAIN_CONFIG = { // - 0-999: Reserved for protocol tokens (wHEZ, PEZ, etc.) // - 1000+: Bridged/wrapped external assets (wUSDT, etc.) export const ASSET_IDS = { - WHEZ: parseInt(import.meta.env.VITE_ASSET_WHEZ || '0'), // Wrapped HEZ - PEZ: parseInt(import.meta.env.VITE_ASSET_PEZ || '1'), // PEZ utility token - WUSDT: parseInt(import.meta.env.VITE_ASSET_WUSDT || '1000'), // Wrapped USDT (6 decimals, Asset ID 1000) - USDT: parseInt(import.meta.env.VITE_ASSET_USDT || '3'), - BTC: parseInt(import.meta.env.VITE_ASSET_BTC || '4'), - ETH: parseInt(import.meta.env.VITE_ASSET_ETH || '5'), - DOT: parseInt(import.meta.env.VITE_ASSET_DOT || '6'), + WHEZ: parseInt(getEnv('VITE_ASSET_WHEZ', '0')), // Wrapped HEZ + PEZ: parseInt(getEnv('VITE_ASSET_PEZ', '1')), // PEZ utility token + WUSDT: parseInt(getEnv('VITE_ASSET_WUSDT', '1000')), // Wrapped USDT (6 decimals, Asset ID 1000) + USDT: parseInt(getEnv('VITE_ASSET_USDT', '3')), + BTC: parseInt(getEnv('VITE_ASSET_BTC', '4')), + ETH: parseInt(getEnv('VITE_ASSET_ETH', '5')), + DOT: parseInt(getEnv('VITE_ASSET_DOT', '6')), } as const; // ======================================== @@ -66,8 +81,8 @@ export const ASSET_CONFIGS = { // EXPLORER URLS // ======================================== export const EXPLORER_URLS = { - polkadotJs: import.meta.env.VITE_EXPLORER_URL || 'https://polkadot.js.org/apps/?rpc=', - custom: import.meta.env.VITE_CUSTOM_EXPLORER_URL || 'https://explorer.pezkuwichain.io', + pezkuwiJs: getEnv('VITE_EXPLORER_URL', 'https://js.pezkuwichain.io'), + custom: getEnv('VITE_CUSTOM_EXPLORER_URL', 'https://explorer.pezkuwichain.io'), }; // ======================================== diff --git a/web/.env.example b/web/.env.example index 93202e4f..56d48c07 100644 --- a/web/.env.example +++ b/web/.env.example @@ -99,4 +99,4 @@ VITE_ENABLE_STAKING=true # ======================================== VITE_DEBUG_MODE=false VITE_LOG_LEVEL=info -VITE_API_TIMEOUT=30000 \ No newline at end of file +VITE_API_TIMEOUT=30000 diff --git a/web/package-lock.json b/web/package-lock.json deleted file mode 100644 index 2474a4b2..00000000 --- a/web/package-lock.json +++ /dev/null @@ -1,12924 +0,0 @@ -{ - "name": "vite_react_shadcn_ts", - "version": "0.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "vite_react_shadcn_ts", - "version": "0.0.0", - "dependencies": { - "@hookform/resolvers": "^3.9.0", - "@pezkuwi/api": "^16.5.6", - "@pezkuwi/extension-dapp": "^0.62.11", - "@pezkuwi/keyring": "^14.0.7", - "@pezkuwi/util": "^14.0.7", - "@pezkuwi/util-crypto": "^14.0.7", - "@radix-ui/react-accordion": "^1.2.0", - "@radix-ui/react-alert-dialog": "^1.1.1", - "@radix-ui/react-aspect-ratio": "^1.1.0", - "@radix-ui/react-avatar": "^1.1.0", - "@radix-ui/react-checkbox": "^1.1.1", - "@radix-ui/react-collapsible": "^1.1.0", - "@radix-ui/react-context-menu": "^2.2.1", - "@radix-ui/react-dialog": "^1.1.2", - "@radix-ui/react-dropdown-menu": "^2.1.1", - "@radix-ui/react-hover-card": "^1.1.1", - "@radix-ui/react-label": "^2.1.0", - "@radix-ui/react-menubar": "^1.1.1", - "@radix-ui/react-navigation-menu": "^1.2.0", - "@radix-ui/react-popover": "^1.1.1", - "@radix-ui/react-progress": "^1.1.0", - "@radix-ui/react-radio-group": "^1.2.0", - "@radix-ui/react-scroll-area": "^1.1.0", - "@radix-ui/react-select": "^2.1.1", - "@radix-ui/react-separator": "^1.1.0", - "@radix-ui/react-slider": "^1.2.0", - "@radix-ui/react-slot": "^1.1.0", - "@radix-ui/react-switch": "^1.1.0", - "@radix-ui/react-tabs": "^1.1.0", - "@radix-ui/react-toast": "^1.2.1", - "@radix-ui/react-toggle": "^1.1.0", - "@radix-ui/react-toggle-group": "^1.1.0", - "@radix-ui/react-tooltip": "^1.1.4", - "@sentry/react": "^10.26.0", - "@supabase/supabase-js": "^2.49.4", - "@tanstack/react-query": "^5.56.2", - "@types/dompurify": "^3.0.5", - "@types/react-syntax-highlighter": "^15.5.13", - "@types/uuid": "^10.0.0", - "buffer": "^6.0.3", - "class-variance-authority": "^0.7.1", - "clsx": "^2.1.1", - "cmdk": "^1.0.0", - "date-fns": "^3.6.0", - "dompurify": "^3.3.1", - "embla-carousel-react": "^8.3.0", - "highlight.js": "^11.9.0", - "i18next": "^23.7.6", - "i18next-browser-languagedetector": "^7.2.0", - "input-otp": "^1.2.4", - "lucide-react": "^0.462.0", - "marked": "^12.0.1", - "next-themes": "^0.3.0", - "qrcode": "^1.5.4", - "react": "^18.3.1", - "react-day-picker": "^8.10.1", - "react-dom": "^18.3.1", - "react-hook-form": "^7.53.0", - "react-i18next": "^14.0.0", - "react-resizable-panels": "^2.1.3", - "react-router-dom": "^6.26.2", - "react-syntax-highlighter": "^16.1.0", - "recharts": "^2.12.7", - "sonner": "^1.5.0", - "tailwind-merge": "^2.5.2", - "tailwindcss-animate": "^1.0.7", - "uuid": "^11.1.0", - "vaul": "^0.9.3", - "zod": "^3.23.8" - }, - "devDependencies": { - "@eslint/js": "^9.9.0", - "@tailwindcss/typography": "^0.5.16", - "@testing-library/jest-dom": "^6.9.1", - "@testing-library/react": "^16.3.0", - "@testing-library/user-event": "^14.6.1", - "@types/node": "^22.5.5", - "@types/qrcode": "^1.5.6", - "@types/react": "^18.3.3", - "@types/react-dom": "^18.3.0", - "@vitejs/plugin-react-swc": "^3.5.0", - "autoprefixer": "^10.4.20", - "eslint": "^9.9.0", - "eslint-plugin-react": "^7.37.5", - "eslint-plugin-react-hooks": "^5.1.0-rc.0", - "eslint-plugin-react-refresh": "^0.4.9", - "globals": "^15.15.0", - "husky": "^9.1.7", - "jsdom": "^27.2.0", - "postcss": "^8.4.47", - "tailwindcss": "^3.4.11", - "typescript": "^5.5.3", - "typescript-eslint": "^8.0.1", - "vite": "^5.4.1", - "vite-plugin-node-polyfills": "^0.24.0", - "vitest": "^4.0.10" - } - }, - "node_modules/@acemir/cssom": { - "version": "0.9.30", - "resolved": "https://registry.npmjs.org/@acemir/cssom/-/cssom-0.9.30.tgz", - "integrity": "sha512-9CnlMCI0LmCIq0olalQqdWrJHPzm0/tw3gzOA9zJSgvFX7Xau3D24mAGa4BtwxwY69nsuJW6kQqqCzf/mEcQgg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@adobe/css-tools": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.4.tgz", - "integrity": "sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==", - "dev": true, - "license": "MIT" - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@asamuzakjp/css-color": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-4.1.1.tgz", - "integrity": "sha512-B0Hv6G3gWGMn0xKJ0txEi/jM5iFpT3MfDxmhZFb4W047GvytCf1DHQ1D69W3zHI4yWe2aTZAA0JnbMZ7Xc8DuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@csstools/css-calc": "^2.1.4", - "@csstools/css-color-parser": "^3.1.0", - "@csstools/css-parser-algorithms": "^3.0.5", - "@csstools/css-tokenizer": "^3.0.4", - "lru-cache": "^11.2.4" - } - }, - "node_modules/@asamuzakjp/dom-selector": { - "version": "6.7.6", - "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.6.tgz", - "integrity": "sha512-hBaJER6A9MpdG3WgdlOolHmbOYvSk46y7IQN/1+iqiCuUu6iWdQrs9DGKF8ocqsEqWujWf/V7b7vaDgiUmIvUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@asamuzakjp/nwsapi": "^2.3.9", - "bidi-js": "^1.0.3", - "css-tree": "^3.1.0", - "is-potential-custom-element-name": "^1.0.1", - "lru-cache": "^11.2.4" - } - }, - "node_modules/@asamuzakjp/nwsapi": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/@asamuzakjp/nwsapi/-/nwsapi-2.3.9.tgz", - "integrity": "sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/code-frame": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.27.1", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.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==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bizinikiwi/connect": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/@bizinikiwi/connect/-/connect-2.1.9.tgz", - "integrity": "sha512-dHzMerp2f/Q/xhroUVXTLPIqn6PRBBorGwg/Y1L9TWS9Za8L7J3Iw0XJhN3KI2yqdywOGSYM+hMLuGcvkncgkQ==", - "license": "GPL-3.0-only", - "optional": true, - "dependencies": { - "@bizinikiwi/connect-extension-protocol": "^2.2.2", - "@bizinikiwi/connect-known-chains": "^1.10.3", - "@bizinikiwi/smoldot-discovery": "^2.0.3", - "smoldot": "^2.0.34" - } - }, - "node_modules/@bizinikiwi/connect-extension-protocol": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@bizinikiwi/connect-extension-protocol/-/connect-extension-protocol-2.2.2.tgz", - "integrity": "sha512-2xsfJNAEQqZG1LBxdDzKreBFsvldqTDiC7xGNX/6avWPQDcIkm1gHtVYJ+Yw9wvsEodMrg3gBV87rcFJVgNV/g==", - "license": "GPL-3.0-only", - "optional": true - }, - "node_modules/@bizinikiwi/connect-known-chains": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/@bizinikiwi/connect-known-chains/-/connect-known-chains-1.10.3.tgz", - "integrity": "sha512-MIL+JP/RkkX4ytoxm4enok4OP+k5rAaBM+yNBCdJataTPQ8OrTuv4FGwBXc7SpMZeRado/v+WmiwQT5qFbISRg==", - "license": "GPL-3.0-only", - "optional": true - }, - "node_modules/@bizinikiwi/discovery": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@bizinikiwi/discovery/-/discovery-0.2.2.tgz", - "integrity": "sha512-LSq3/4Fb7i3YNzGW9r9ZVvLR6ojlXPUbhfheoKFncG+IwXKKSP6CMIB8QpRGRKMgr15k4L4rQp0awBWhEVdPyQ==", - "license": "MIT", - "optional": true - }, - "node_modules/@bizinikiwi/smoldot-discovery": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@bizinikiwi/smoldot-discovery/-/smoldot-discovery-2.0.3.tgz", - "integrity": "sha512-7iInxXewJaRZJk+nD89g88uvo1Fhut76cqHi4xCLgZw0dqDhrEzq8LO5MYbISEkZLL4nAANPCmBa0Ohm47fSMA==", - "license": "MIT", - "optional": true, - "dependencies": { - "@bizinikiwi/discovery": "^0.2.2" - } - }, - "node_modules/@csstools/color-helpers": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz", - "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": ">=18" - } - }, - "node_modules/@csstools/css-calc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", - "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-parser-algorithms": "^3.0.5", - "@csstools/css-tokenizer": "^3.0.4" - } - }, - "node_modules/@csstools/css-color-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz", - "integrity": "sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "dependencies": { - "@csstools/color-helpers": "^5.1.0", - "@csstools/css-calc": "^2.1.4" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-parser-algorithms": "^3.0.5", - "@csstools/css-tokenizer": "^3.0.4" - } - }, - "node_modules/@csstools/css-parser-algorithms": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", - "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@csstools/css-tokenizer": "^3.0.4" - } - }, - "node_modules/@csstools/css-syntax-patches-for-csstree": { - "version": "1.0.22", - "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.22.tgz", - "integrity": "sha512-qBcx6zYlhleiFfdtzkRgwNC7VVoAwfK76Vmsw5t+PbvtdknO9StgRk7ROvq9so1iqbdW4uLIDAsXRsTfUrIoOw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT-0", - "engines": { - "node": ">=18" - } - }, - "node_modules/@csstools/css-tokenizer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", - "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - ], - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz", - "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz", - "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz", - "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", - "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", - "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", - "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/object-schema": "^2.1.7", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", - "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", - "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", - "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.1", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "9.39.2", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", - "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", - "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", - "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0", - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@exodus/bytes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@exodus/bytes/-/bytes-1.8.0.tgz", - "integrity": "sha512-8JPn18Bcp8Uo1T82gR8lh2guEOa5KKU/IEKvvdp0sgmi7coPBWf1Doi1EXsGZb2ehc8ym/StJCjffYV+ne7sXQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@exodus/crypto": "^1.0.0-rc.4" - }, - "peerDependenciesMeta": { - "@exodus/crypto": { - "optional": true - } - } - }, - "node_modules/@floating-ui/core": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.3.tgz", - "integrity": "sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==", - "license": "MIT", - "dependencies": { - "@floating-ui/utils": "^0.2.10" - } - }, - "node_modules/@floating-ui/dom": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.4.tgz", - "integrity": "sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==", - "license": "MIT", - "dependencies": { - "@floating-ui/core": "^1.7.3", - "@floating-ui/utils": "^0.2.10" - } - }, - "node_modules/@floating-ui/react-dom": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.6.tgz", - "integrity": "sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==", - "license": "MIT", - "dependencies": { - "@floating-ui/dom": "^1.7.4" - }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, - "node_modules/@floating-ui/utils": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz", - "integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "peerDependencies": { - "react-hook-form": "^7.0.0" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", - "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.4.0" - }, - "engines": { - "node": ">=18.18.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, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - "license": "MIT", - "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==", - "license": "MIT", - "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==", - "license": "MIT" - }, - "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==", - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@noble/curves": { - "version": "1.9.7", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz", - "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==", - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.8.0" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/hashes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pezkuwi/api": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/api/-/api-16.5.6.tgz", - "integrity": "sha512-QATfkkFOAqTBKPVjsJ2RXKjoLXX7tg2gMGR6rz2GzfFyqqydNYcjTcn3zCexJmicesXonXfm9zQy8rjkyvdUYA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/api-augment": "16.5.4", - "@pezkuwi/api-base": "16.5.4", - "@pezkuwi/api-derive": "16.5.4", - "@pezkuwi/keyring": "^14.0.1", - "@pezkuwi/rpc-augment": "16.5.4", - "@pezkuwi/rpc-core": "16.5.4", - "@pezkuwi/rpc-provider": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-augment": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/types-create": "16.5.4", - "@pezkuwi/types-known": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "@pezkuwi/util-crypto": "^14.0.1", - "eventemitter3": "^5.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/api-augment": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/api-augment/-/api-augment-16.5.6.tgz", - "integrity": "sha512-AoLrZfbhUwfVF3PnZqtyulGrsSZXAPiCvO+3+05zsHnxD6Kj6Fpuma/dZZ3gckdnZm1CK3MKTe9Wh9OkjKwqGQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/api-base": "16.5.4", - "@pezkuwi/rpc-augment": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-augment": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/api-base": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/api-base/-/api-base-16.5.6.tgz", - "integrity": "sha512-3RTuJCmYxlmC/uP/n3gEKCrWjRcjQsxyKXsMCzSmkhg0QEWESurqb6JmdVpGu4C60eOEKMa1p0U93+CUlD9nGg==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/rpc-core": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/api-derive": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/api-derive/-/api-derive-16.5.6.tgz", - "integrity": "sha512-g/zNWf0Xfdl5+VPwnqBJeUVSy3AWU2emwx95FkdPC86IANzDIsGkAnfcc2bJgNo/GoaYfDF0Fsc3pjfnMY4OMw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/api": "16.5.4", - "@pezkuwi/api-augment": "16.5.4", - "@pezkuwi/api-base": "16.5.4", - "@pezkuwi/rpc-core": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "@pezkuwi/util-crypto": "^14.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/extension-dapp": { - "version": "0.62.11", - "resolved": "https://registry.npmjs.org/@pezkuwi/extension-dapp/-/extension-dapp-0.62.11.tgz", - "integrity": "sha512-NoSTFsrZDfTgiB77dhCCd1pGDUPHX720S1tv2U0uk1Aapv58eCPYoGKfrkMKXZGyyJWiY/iYxnA8HIcODy4VmQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/extension-inject": "0.62.11", - "@pezkuwi/util": "^14.0.5", - "@pezkuwi/util-crypto": "^14.0.5", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/api": "*", - "@pezkuwi/util": "*", - "@pezkuwi/util-crypto": "*" - } - }, - "node_modules/@pezkuwi/extension-inject": { - "version": "0.62.11", - "resolved": "https://registry.npmjs.org/@pezkuwi/extension-inject/-/extension-inject-0.62.11.tgz", - "integrity": "sha512-RhPyQplwD0oTx+q4+7EtBAIs9W+Bapc7zlTG3Nl+XXkLZza5a0DxOtBWsZx712gH/aBMT6Xtbb9U7k5krl0log==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/api": "^16.5.5", - "@pezkuwi/rpc-provider": "^16.5.5", - "@pezkuwi/types": "^16.5.5", - "@pezkuwi/util": "^14.0.5", - "@pezkuwi/util-crypto": "^14.0.5", - "@pezkuwi/x-global": "^14.0.5", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/api": "*", - "@pezkuwi/util": "*" - } - }, - "node_modules/@pezkuwi/keyring": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/keyring/-/keyring-14.0.7.tgz", - "integrity": "sha512-O3UtSm18Wr231THuVUdxi0F3FPm3Mdhg/NtSR7o2uXQMZIHBgu7m14g2lVz4IP2CSYB9x1KqOeAg4pJ6DNkB5g==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/util": "14.0.1", - "@pezkuwi/util-crypto": "^14.0.2", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "14.0.1", - "@pezkuwi/util-crypto": "^14.0.2" - } - }, - "node_modules/@pezkuwi/networks": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/networks/-/networks-14.0.7.tgz", - "integrity": "sha512-EY6EyAkLgoIp/bwijXGugNBfnKVsmcTI7lW22dx85TWZeGC1PshTB79DahUx81LRccDvmN65+OnSPYg6RhnpDw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/util": "14.0.1", - "@substrate/ss58-registry": "^1.51.0", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/rpc-augment": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/rpc-augment/-/rpc-augment-16.5.6.tgz", - "integrity": "sha512-muS+MByF4EpTImYOmnKTDioQYwj6OYP3rEgt9J34BIe4ci50bB1wnf3XSxHZR0f0nfsiujhFaZBLDD91Uvhzqw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/rpc-core": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/rpc-core": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/rpc-core/-/rpc-core-16.5.6.tgz", - "integrity": "sha512-az4gCdf0I0FvRI9ouiAHYi9icWdvOd2LHDKZN1wM7YvVEjVIfIzbMeDecaYIdv7xe2KXwbMMZcKkueTnkgciJw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/rpc-augment": "16.5.4", - "@pezkuwi/rpc-provider": "16.5.4", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/rpc-provider": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/rpc-provider/-/rpc-provider-16.5.6.tgz", - "integrity": "sha512-gmmT4+OtG7Qk4kPS6/cN3+gfeRTuTXkyYEkiieFLl7pxn5RwTOiF9ePcYy6VC7Ph8xWpZBIqEI5s1Sa+qex3vg==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/keyring": "^14.0.1", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-support": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "@pezkuwi/util-crypto": "^14.0.1", - "@pezkuwi/x-fetch": "^14.0.1", - "@pezkuwi/x-global": "^14.0.1", - "@pezkuwi/x-ws": "^14.0.1", - "eventemitter3": "^5.0.1", - "mock-socket": "^9.3.1", - "nock": "^13.5.5", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@bizinikiwi/connect": "2.1.9" - } - }, - "node_modules/@pezkuwi/types": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types/-/types-16.5.6.tgz", - "integrity": "sha512-7NlAhTyoRa1IBVhcbJqwZM1MlfR6DsZK3wYxTTKlDmTW/gsKJGxs6ItAWhQFVaa3ljS6n+v59uzmxvC93JYSug==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/keyring": "^14.0.1", - "@pezkuwi/types-augment": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/types-create": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "@pezkuwi/util-crypto": "^14.0.1", - "rxjs": "^7.8.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/types-augment": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types-augment/-/types-augment-16.5.6.tgz", - "integrity": "sha512-oEV08wf0B9yjCdZyAxXvqtEyFyUQP1bcSXu2PBupvspZpxIjeptiZm8eUD8ZMJdvM0BJ7yHhxKOBwie8erQ5BQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/types-codec": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types-codec/-/types-codec-16.5.6.tgz", - "integrity": "sha512-4diC1GzePxeW4GM0Djy8FoEaqk2spgqSADLxNGue5hMj7jrgD3XgONaIVcvao4lw5DavIjlLaorDiufbcrEbeA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/util": "^14.0.1", - "@pezkuwi/x-bigint": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/types-create": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types-create/-/types-create-16.5.6.tgz", - "integrity": "sha512-HiiQlhiNWKKPQjRX9xvX7iZCuy4VGclZ7ewbWcFYbmcyTOuBRbIvaw0xqmZ1C8VfznadySgPghuqeZVXL+c56Q==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/types-known": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types-known/-/types-known-16.5.6.tgz", - "integrity": "sha512-iixufb2GoA74JkC0Yy6qtIzcR8u+gGmUD3Jpoz2+MgAGkW7DQzNlwxAiBJLw9Vh0Y7Z9YDBWiEJw6mdELlQonA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/networks": "^14.0.1", - "@pezkuwi/types": "16.5.4", - "@pezkuwi/types-codec": "16.5.4", - "@pezkuwi/types-create": "16.5.4", - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/types-support": { - "version": "16.5.6", - "resolved": "https://registry.npmjs.org/@pezkuwi/types-support/-/types-support-16.5.6.tgz", - "integrity": "sha512-ETZ71NdZZqhgWdM2UdBUnVRCPKnFDebcAYhRflQwBG7nqwpn4YHndYAy6eccaFklRJPQ66VjpTll5FdcXYU1cw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/util": "^14.0.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/util": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/util/-/util-14.0.7.tgz", - "integrity": "sha512-aoLq87+6RP8+8SfXKRKqlmu/S0Kzdv4uurU2ojeukQIxxE0GVimIZg3HQMgTdPIL4KYRzV7N6rNdGEOzxSTAcQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-bigint": "14.0.1", - "@pezkuwi/x-global": "14.0.1", - "@pezkuwi/x-textdecoder": "14.0.1", - "@pezkuwi/x-textencoder": "14.0.1", - "@types/bn.js": "^5.1.6", - "bn.js": "^5.2.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/util-crypto": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/util-crypto/-/util-crypto-14.0.7.tgz", - "integrity": "sha512-VSEKk7sJCf6fPgHP2polmhb6ou9rGA0XUazQSU9G52Fdpe59wmtDk35t445sa6DNdOUF4qFxv5wCrbzKvEVruw==", - "license": "Apache-2.0", - "dependencies": { - "@noble/curves": "^1.3.0", - "@noble/hashes": "^1.3.3", - "@pezkuwi/networks": "14.0.1", - "@pezkuwi/util": "14.0.1", - "@pezkuwi/wasm-crypto": "^7.5.4", - "@pezkuwi/wasm-util": "^7.5.4", - "@pezkuwi/x-bigint": "14.0.1", - "@pezkuwi/x-randomvalues": "14.0.1", - "@scure/base": "^1.1.7", - "@scure/sr25519": "^0.2.0", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "14.0.1" - } - }, - "node_modules/@pezkuwi/wasm-bridge": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-bridge/-/wasm-bridge-7.5.4.tgz", - "integrity": "sha512-UK2SzudaitB3ohXyJQj6K289KReqmiXPXf1Ml4fc87NMSv665d+WYtIW500SR4IlLKp0yfIbvW1VewBz2KIhIw==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/wasm-util": "7.5.3", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*", - "@pezkuwi/x-randomvalues": "*" - } - }, - "node_modules/@pezkuwi/wasm-bridge/node_modules/@pezkuwi/wasm-util": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-util/-/wasm-util-7.5.3.tgz", - "integrity": "sha512-q0nWKtW8eESANGSb9E9K/Omgh++/a/DAUxtx4CGHAKtDu6hURGYxh3SuEEghueeOuY4MX+Fu5gc0R6V/Z0po+g==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*" - } - }, - "node_modules/@pezkuwi/wasm-crypto": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-crypto/-/wasm-crypto-7.5.4.tgz", - "integrity": "sha512-6VDQ1MJnaqt73ezxuf6NOqYJfsrCJ4qPjZoOFmTjNZt9qKNxDpsw0+3mWsszJvKg0hVsy2vAGoFoVIKf+4pHvg==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/wasm-bridge": "7.5.4", - "@pezkuwi/wasm-crypto-asmjs": "7.5.4", - "@pezkuwi/wasm-crypto-init": "7.5.4", - "@pezkuwi/wasm-crypto-wasm": "7.5.4", - "@pezkuwi/wasm-util": "7.5.4", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*", - "@pezkuwi/x-randomvalues": "*" - } - }, - "node_modules/@pezkuwi/wasm-crypto-asmjs": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.5.4.tgz", - "integrity": "sha512-zYBTwm9WbDeUuMzn56HHeA13WfWwDEEe0ojH3i0yiuis1Mo6Ie0J3ii7X7gai17Hbnv9ydfgaePvUHUDjt5PQQ==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*" - } - }, - "node_modules/@pezkuwi/wasm-crypto-init": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-crypto-init/-/wasm-crypto-init-7.5.4.tgz", - "integrity": "sha512-Ie4kQtcj/8J9XaMcnjW0rn9yCCFOHAMwckyfOhddwErxW9p7IzZeEEAxhiI34LaR3OV3/yO3gm8W90WN+k6FCQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/wasm-bridge": "7.5.4", - "@pezkuwi/wasm-crypto-asmjs": "7.5.4", - "@pezkuwi/wasm-crypto-wasm": "7.5.4", - "@pezkuwi/wasm-util": "7.5.4", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*", - "@pezkuwi/x-randomvalues": "*" - } - }, - "node_modules/@pezkuwi/wasm-crypto-wasm": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-crypto-wasm/-/wasm-crypto-wasm-7.5.4.tgz", - "integrity": "sha512-f2Et7jfZ5shYsmDHTuvDjcl+rg3dVGZqXlhx2KnpyGH5jebA8ULaUGxtmO9vUUJjs/rMkJkCNYrZ0YneYtLe4A==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/wasm-util": "7.5.4", - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*" - } - }, - "node_modules/@pezkuwi/wasm-util": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/@pezkuwi/wasm-util/-/wasm-util-7.5.4.tgz", - "integrity": "sha512-DyWWG8Sn7txg2VltSBqF/0zQCYQ0MNNSkrfHKTOOz6esC1abCDq5LKh8rPqy1IQoeD+lUFubIDmNW3G9pH9lfg==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "*" - } - }, - "node_modules/@pezkuwi/x-bigint": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-bigint/-/x-bigint-14.0.7.tgz", - "integrity": "sha512-VoJrNm5+hhNNkqlPCxlUucelj0nzSST6cFWsoBQCqympC/6a5A4wMcTzmm9L4cphwH2aV2dnfbAZQKgx/uv+0A==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/x-fetch": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-fetch/-/x-fetch-14.0.7.tgz", - "integrity": "sha512-xATjfQY5z8Es3Q5sx8gW9tss5KM+ov3K71FVh2Oabokenu7KBwY4bE4abSIwfB2GpcDwwOd9mAhGPEWdMB34AQ==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "node-fetch": "^3.3.2", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/x-global": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-global/-/x-global-14.0.7.tgz", - "integrity": "sha512-0dnXeVSywv2pi12/DqWrgFGTYdP3P8SrgXXL3r5rtVUV7T8bjxXp11SswGd7igBcDw11exuaxzQiiuCmpsOY4g==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/x-randomvalues": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-randomvalues/-/x-randomvalues-14.0.7.tgz", - "integrity": "sha512-m/H7b7PjXSlTcPxUwJeUATO2EdkwmQjPMGqREFOXsYCkPdNIiGRQGAJluIyrJTaN8GAjr3gKt1Q+GxHpcfyFLA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@pezkuwi/util": "14.0.1", - "@pezkuwi/wasm-util": "*" - } - }, - "node_modules/@pezkuwi/x-textdecoder": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-textdecoder/-/x-textdecoder-14.0.7.tgz", - "integrity": "sha512-Kkmk0C3CnHT8O1Mwwc6ICz9qd+o5n2v8I2VKvh+m0Nsg9+Er0edZLHdrBs7lyIsysGh4kEFd0YWOz0BzmIlt/w==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/x-textencoder": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-textencoder/-/x-textencoder-14.0.7.tgz", - "integrity": "sha512-z/594YsW1lLDe73k+cz0pBtrX8tWVzj+pJ3hUm2+1vjl0j2hFlUaqJUiODoZJbf2Be+Fkgvg9wGs2535vZjrwA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "tslib": "^2.8.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@pezkuwi/x-ws": { - "version": "14.0.7", - "resolved": "https://registry.npmjs.org/@pezkuwi/x-ws/-/x-ws-14.0.7.tgz", - "integrity": "sha512-UIHJeHLSMrDPZLs/BBkMplhh5UmOrb4JdKPVHf7TpHtApDcZqJP57PpNvNuiCpyJJvw8sGboJB8gSbzOShAoXA==", - "license": "Apache-2.0", - "dependencies": { - "@pezkuwi/x-global": "14.0.1", - "tslib": "^2.8.0", - "ws": "^8.18.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@radix-ui/number": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", - "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", - "license": "MIT" - }, - "node_modules/@radix-ui/primitive": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", - "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", - "license": "MIT" - }, - "node_modules/@radix-ui/react-accordion": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", - "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collapsible": "1.1.12", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-alert-dialog": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.15.tgz", - "integrity": "sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dialog": "1.1.15", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-arrow": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", - "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-aspect-ratio": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.8.tgz", - "integrity": "sha512-5nZrJTF7gH+e0nZS7/QxFz6tJV4VimhQb1avEgtsJxvvIp5JilL+c58HICsKzPxghdwaDt48hEfPM1au4zGy+w==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-primitive": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", - "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-avatar": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.11.tgz", - "integrity": "sha512-0Qk603AHGV28BOBO34p7IgD5m+V5Sg/YovfayABkoDDBM5d3NCx0Mp4gGrjzLGes1jV5eNOE1r3itqOR33VC6Q==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-context": "1.1.3", - "@radix-ui/react-primitive": "2.1.4", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-is-hydrated": "0.1.0", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", - "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", - "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-checkbox": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.3.tgz", - "integrity": "sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-use-size": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-collapsible": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", - "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-collection": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", - "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-compose-refs": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", - "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-context": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", - "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-context-menu": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.16.tgz", - "integrity": "sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-menu": "2.1.16", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-dialog": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", - "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-focus-guards": "1.1.3", - "@radix-ui/react-focus-scope": "1.1.7", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "aria-hidden": "^1.2.4", - "react-remove-scroll": "^2.6.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-direction": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", - "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", - "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-escape-keydown": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-dropdown-menu": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz", - "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-menu": "2.1.16", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-focus-guards": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", - "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-focus-scope": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", - "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-hover-card": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.15.tgz", - "integrity": "sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-id": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", - "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-label": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.8.tgz", - "integrity": "sha512-FmXs37I6hSBVDlO4y764TNz1rLgKwjJMQ0EGte6F3Cb3f4bIuHB/iLa/8I9VKkmOy+gNHq8rql3j686ACVV21A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-primitive": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", - "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-menu": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz", - "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-focus-guards": "1.1.3", - "@radix-ui/react-focus-scope": "1.1.7", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-roving-focus": "1.1.11", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "aria-hidden": "^1.2.4", - "react-remove-scroll": "^2.6.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-menubar": { - "version": "1.1.16", - "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.16.tgz", - "integrity": "sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-menu": "2.1.16", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-roving-focus": "1.1.11", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-navigation-menu": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", - "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-visually-hidden": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-popover": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", - "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-focus-guards": "1.1.3", - "@radix-ui/react-focus-scope": "1.1.7", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "aria-hidden": "^1.2.4", - "react-remove-scroll": "^2.6.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-popper": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", - "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", - "license": "MIT", - "dependencies": { - "@floating-ui/react-dom": "^2.0.0", - "@radix-ui/react-arrow": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-use-rect": "1.1.1", - "@radix-ui/react-use-size": "1.1.1", - "@radix-ui/rect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-portal": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", - "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-presence": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", - "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-primitive": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", - "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-primitive/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.8.tgz", - "integrity": "sha512-+gISHcSPUJ7ktBy9RnTqbdKW78bcGke3t6taawyZ71pio1JewwGSJizycs7rLhGTvMJYCQB1DBK4KQsxs7U8dA==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-context": "1.1.3", - "@radix-ui/react-primitive": "2.1.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", - "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-primitive": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", - "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-radio-group": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.3.8.tgz", - "integrity": "sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-roving-focus": "1.1.11", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-use-size": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-roving-focus": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", - "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-scroll-area": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", - "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", - "license": "MIT", - "dependencies": { - "@radix-ui/number": "1.1.1", - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-select": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.6.tgz", - "integrity": "sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/number": "1.1.1", - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-focus-guards": "1.1.3", - "@radix-ui/react-focus-scope": "1.1.7", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-visually-hidden": "1.2.3", - "aria-hidden": "^1.2.4", - "react-remove-scroll": "^2.6.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-separator": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.8.tgz", - "integrity": "sha512-sDvqVY4itsKwwSMEe0jtKgfTh+72Sy3gPmQpjqcQneqQ4PFmr/1I0YA+2/puilhggCe2gJcx5EBAYFkWkdpa5g==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", - "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-slot": "1.2.4" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-slider": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.3.6.tgz", - "integrity": "sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==", - "license": "MIT", - "dependencies": { - "@radix-ui/number": "1.1.1", - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-use-size": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-slot": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz", - "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-switch": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.2.6.tgz", - "integrity": "sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-previous": "1.1.1", - "@radix-ui/react-use-size": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-tabs": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", - "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-roving-focus": "1.1.11", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-toast": { - "version": "1.2.15", - "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.15.tgz", - "integrity": "sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-collection": "1.1.7", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-callback-ref": "1.1.1", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-use-layout-effect": "1.1.1", - "@radix-ui/react-visually-hidden": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-toggle": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.10.tgz", - "integrity": "sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-toggle-group": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.11.tgz", - "integrity": "sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-direction": "1.1.1", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-roving-focus": "1.1.11", - "@radix-ui/react-toggle": "1.1.10", - "@radix-ui/react-use-controllable-state": "1.2.2" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-tooltip": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.8.tgz", - "integrity": "sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.3", - "@radix-ui/react-compose-refs": "1.1.2", - "@radix-ui/react-context": "1.1.2", - "@radix-ui/react-dismissable-layer": "1.1.11", - "@radix-ui/react-id": "1.1.1", - "@radix-ui/react-popper": "1.2.8", - "@radix-ui/react-portal": "1.1.9", - "@radix-ui/react-presence": "1.1.5", - "@radix-ui/react-primitive": "2.1.3", - "@radix-ui/react-slot": "1.2.3", - "@radix-ui/react-use-controllable-state": "1.2.2", - "@radix-ui/react-visually-hidden": "1.2.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", - "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "1.1.2" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", - "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-controllable-state": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", - "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-use-effect-event": "0.0.2", - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-effect-event": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", - "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-escape-keydown": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", - "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-use-callback-ref": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-is-hydrated": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", - "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", - "license": "MIT", - "dependencies": { - "use-sync-external-store": "^1.5.0" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-layout-effect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", - "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-previous": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", - "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", - "license": "MIT", - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-rect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", - "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", - "license": "MIT", - "dependencies": { - "@radix-ui/rect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-use-size": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", - "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-use-layout-effect": "1.1.1" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@radix-ui/react-visually-hidden": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", - "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-primitive": "2.1.3" - }, - "peerDependencies": { - "@types/react": "*", - "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@radix-ui/rect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", - "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", - "license": "MIT" - }, - "node_modules/@remix-run/router": { - "version": "1.23.1", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.23.1.tgz", - "integrity": "sha512-vDbaOzF7yT2Qs4vO6XV1MHcJv+3dgR1sT+l3B8xxOVhUC336prMvqrvsLL/9Dnw2xr6Qhz4J0dmS0llNAbnUmQ==", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", - "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rollup/plugin-inject": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", - "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.3" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", - "integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/@rollup/pluginutils/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.55.1.tgz", - "integrity": "sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.55.1.tgz", - "integrity": "sha512-eFZCb1YUqhTysgW3sj/55du5cG57S7UTNtdMjCW7LwVcj3dTTcowCsC8p7uBdzKsZYa8J7IDE8lhMI+HX1vQvg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.55.1.tgz", - "integrity": "sha512-p3grE2PHcQm2e8PSGZdzIhCKbMCw/xi9XvMPErPhwO17vxtvCN5FEA2mSLgmKlCjHGMQTP6phuQTYWUnKewwGg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.55.1.tgz", - "integrity": "sha512-rDUjG25C9qoTm+e02Esi+aqTKSBYwVTaoS1wxcN47/Luqef57Vgp96xNANwt5npq9GDxsH7kXxNkJVEsWEOEaQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.55.1.tgz", - "integrity": "sha512-+JiU7Jbp5cdxekIgdte0jfcu5oqw4GCKr6i3PJTlXTCU5H5Fvtkpbs4XJHRmWNXF+hKmn4v7ogI5OQPaupJgOg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.55.1.tgz", - "integrity": "sha512-V5xC1tOVWtLLmr3YUk2f6EJK4qksksOYiz/TCsFHu/R+woubcLWdC9nZQmwjOAbmExBIVKsm1/wKmEy4z4u4Bw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.55.1.tgz", - "integrity": "sha512-Rn3n+FUk2J5VWx+ywrG/HGPTD9jXNbicRtTM11e/uorplArnXZYsVifnPPqNNP5BsO3roI4n8332ukpY/zN7rQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.55.1.tgz", - "integrity": "sha512-grPNWydeKtc1aEdrJDWk4opD7nFtQbMmV7769hiAaYyUKCT1faPRm2av8CX1YJsZ4TLAZcg9gTR1KvEzoLjXkg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.55.1.tgz", - "integrity": "sha512-a59mwd1k6x8tXKcUxSyISiquLwB5pX+fJW9TkWU46lCqD/GRDe9uDN31jrMmVP3feI3mhAdvcCClhV8V5MhJFQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.55.1.tgz", - "integrity": "sha512-puS1MEgWX5GsHSoiAsF0TYrpomdvkaXm0CofIMG5uVkP6IBV+ZO9xhC5YEN49nsgYo1DuuMquF9+7EDBVYu4uA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.55.1.tgz", - "integrity": "sha512-r3Wv40in+lTsULSb6nnoudVbARdOwb2u5fpeoOAZjFLznp6tDU8kd+GTHmJoqZ9lt6/Sys33KdIHUaQihFcu7g==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.55.1.tgz", - "integrity": "sha512-MR8c0+UxAlB22Fq4R+aQSPBayvYa3+9DrwG/i1TKQXFYEaoW3B5b/rkSRIypcZDdWjWnpcvxbNaAJDcSbJU3Lw==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.55.1.tgz", - "integrity": "sha512-3KhoECe1BRlSYpMTeVrD4sh2Pw2xgt4jzNSZIIPLFEsnQn9gAnZagW9+VqDqAHgm1Xc77LzJOo2LdigS5qZ+gw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.55.1.tgz", - "integrity": "sha512-ziR1OuZx0vdYZZ30vueNZTg73alF59DicYrPViG0NEgDVN8/Jl87zkAPu4u6VjZST2llgEUjaiNl9JM6HH1Vdw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.55.1.tgz", - "integrity": "sha512-uW0Y12ih2XJRERZ4jAfKamTyIHVMPQnTZcQjme2HMVDAHY4amf5u414OqNYC+x+LzRdRcnIG1YodLrrtA8xsxw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.55.1.tgz", - "integrity": "sha512-u9yZ0jUkOED1BFrqu3BwMQoixvGHGZ+JhJNkNKY/hyoEgOwlqKb62qu+7UjbPSHYjiVy8kKJHvXKv5coH4wDeg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.55.1.tgz", - "integrity": "sha512-/0PenBCmqM4ZUd0190j7J0UsQ/1nsi735iPRakO8iPciE7BQ495Y6msPzaOmvx0/pn+eJVVlZrNrSh4WSYLxNg==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.55.1.tgz", - "integrity": "sha512-a8G4wiQxQG2BAvo+gU6XrReRRqj+pLS2NGXKm8io19goR+K8lw269eTrPkSdDTALwMmJp4th2Uh0D8J9bEV1vg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.55.1.tgz", - "integrity": "sha512-bD+zjpFrMpP/hqkfEcnjXWHMw5BIghGisOKPj+2NaNDuVT+8Ds4mPf3XcPHuat1tz89WRL+1wbcxKY3WSbiT7w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.55.1.tgz", - "integrity": "sha512-eLXw0dOiqE4QmvikfQ6yjgkg/xDM+MdU9YJuP4ySTibXU0oAvnEWXt7UDJmD4UkYialMfOGFPJnIHSe/kdzPxg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ] - }, - "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.55.1.tgz", - "integrity": "sha512-xzm44KgEP11te3S2HCSyYf5zIzWmx3n8HDCc7EE59+lTcswEWNpvMLfd9uJvVX8LCg9QWG67Xt75AuHn4vgsXw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.55.1.tgz", - "integrity": "sha512-yR6Bl3tMC/gBok5cz/Qi0xYnVbIxGx5Fcf/ca0eB6/6JwOY+SRUcJfI0OpeTpPls7f194as62thCt/2BjxYN8g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.55.1.tgz", - "integrity": "sha512-3fZBidchE0eY0oFZBnekYCfg+5wAB0mbpCBuofh5mZuzIU/4jIVkbESmd2dOsFNS78b53CYv3OAtwqkZZmU5nA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.55.1.tgz", - "integrity": "sha512-xGGY5pXj69IxKb4yv/POoocPy/qmEGhimy/FoTpTSVju3FYXUQQMFCaZZXJVidsmGxRioZAwpThl/4zX41gRKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.55.1.tgz", - "integrity": "sha512-SPEpaL6DX4rmcXtnhdrQYgzQ5W2uW3SCJch88lB2zImhJRhIIK44fkUrgIV/Q8yUNfw5oyZ5vkeQsZLhCb06lw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@scure/base": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", - "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/sr25519": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@scure/sr25519/-/sr25519-0.2.0.tgz", - "integrity": "sha512-uUuLP7Z126XdSizKtrCGqYyR3b3hYtJ6Fg/XFUXmc2//k2aXHDLqZwFeXxL97gg4XydPROPVnuaHGF2+xriSKg==", - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.9.2", - "@noble/hashes": "~1.8.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@sentry-internal/browser-utils": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-10.32.1.tgz", - "integrity": "sha512-sjLLep1es3rTkbtAdTtdpc/a6g7v7bK5YJiZJsUigoJ4NTiFeMI5uIDCxbH/tjJ1q23YE1LzVn7T96I+qBRjHA==", - "license": "MIT", - "dependencies": { - "@sentry/core": "10.32.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry-internal/feedback": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-10.32.1.tgz", - "integrity": "sha512-O24G8jxbfBY1RE/v2qFikPJISVMOrd/zk8FKyl+oUVYdOxU2Ucjk2cR3EQruBFlc7irnL6rT3GPfRZ/kBgLkmQ==", - "license": "MIT", - "dependencies": { - "@sentry/core": "10.32.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry-internal/replay": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-10.32.1.tgz", - "integrity": "sha512-KKmLUgIaLRM0VjrMA1ByQTawZyRDYSkG2evvEOVpEtR9F0sumidAQdi7UY71QEKE1RYe/Jcp/3WoaqsMh8tbnQ==", - "license": "MIT", - "dependencies": { - "@sentry-internal/browser-utils": "10.32.1", - "@sentry/core": "10.32.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry-internal/replay-canvas": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-10.32.1.tgz", - "integrity": "sha512-/XGTzWNWVc+B691fIVekV2KeoHFEDA5KftrLFAhEAW7uWOwk/xy3aQX4TYM0LcPm2PBKvoumlAD+Sd/aXk63oA==", - "license": "MIT", - "dependencies": { - "@sentry-internal/replay": "10.32.1", - "@sentry/core": "10.32.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry/browser": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-10.32.1.tgz", - "integrity": "sha512-NPNCXTZ05ZGTFyJdKNqjykpFm+urem0ebosILQiw3C4BxNVNGH4vfYZexyl6prRhmg91oB6GjVNiVDuJiap1gg==", - "license": "MIT", - "dependencies": { - "@sentry-internal/browser-utils": "10.32.1", - "@sentry-internal/feedback": "10.32.1", - "@sentry-internal/replay": "10.32.1", - "@sentry-internal/replay-canvas": "10.32.1", - "@sentry/core": "10.32.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry/core": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-10.32.1.tgz", - "integrity": "sha512-PH2ldpSJlhqsMj2vCTyU0BI2Fx1oIDhm7Izo5xFALvjVCS0gmlqHt1udu6YlKn8BtpGH6bGzssvv5APrk+OdPQ==", - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/@sentry/react": { - "version": "10.32.1", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-10.32.1.tgz", - "integrity": "sha512-/tX0HeACbAmVP57x8txTrGk/U3fa9pDBaoAtlOrnPv5VS/aC5SGkehXWeTGSAa+ahlOWwp3IF8ILVXRiOoG/Vg==", - "license": "MIT", - "dependencies": { - "@sentry/browser": "10.32.1", - "@sentry/core": "10.32.1", - "hoist-non-react-statics": "^3.3.2" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "react": "^16.14.0 || 17.x || 18.x || 19.x" - } - }, - "node_modules/@standard-schema/spec": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", - "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@substrate/ss58-registry": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/@substrate/ss58-registry/-/ss58-registry-1.51.0.tgz", - "integrity": "sha512-TWDurLiPxndFgKjVavCniytBIw+t4ViOi7TYp9h/D0NMmkEc9klFTo+827eyEJ0lELpqO207Ey7uGxUa+BS1jQ==", - "license": "Apache-2.0" - }, - "node_modules/@supabase/auth-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/auth-js/-/auth-js-2.89.0.tgz", - "integrity": "sha512-wiWZdz8WMad8LQdJMWYDZ2SJtZP5MwMqzQq3ehtW2ngiI3UTgbKiFrvMUUS3KADiVlk4LiGfODB2mrYx7w2f8w==", - "license": "MIT", - "dependencies": { - "tslib": "2.8.1" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@supabase/functions-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/functions-js/-/functions-js-2.89.0.tgz", - "integrity": "sha512-XEueaC5gMe5NufNYfBh9kPwJlP5M2f+Ogr8rvhmRDAZNHgY6mI35RCkYDijd92pMcNM7g8pUUJov93UGUnqfyw==", - "license": "MIT", - "dependencies": { - "tslib": "2.8.1" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@supabase/postgrest-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/postgrest-js/-/postgrest-js-2.89.0.tgz", - "integrity": "sha512-/b0fKrxV9i7RNOEXMno/I1862RsYhuUo+Q6m6z3ar1f4ulTMXnDfv0y4YYxK2POcgrOXQOgKYQx1eArybyNvtg==", - "license": "MIT", - "dependencies": { - "tslib": "2.8.1" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@supabase/realtime-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/realtime-js/-/realtime-js-2.89.0.tgz", - "integrity": "sha512-aMOvfDb2a52u6PX6jrrjvACHXGV3zsOlWRzZsTIOAJa0hOVvRp01AwC1+nLTGUzxzezejrYeCX+KnnM1xHdl+w==", - "license": "MIT", - "dependencies": { - "@types/phoenix": "^1.6.6", - "@types/ws": "^8.18.1", - "tslib": "2.8.1", - "ws": "^8.18.2" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@supabase/storage-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/storage-js/-/storage-js-2.89.0.tgz", - "integrity": "sha512-6zKcXofk/M/4Eato7iqpRh+B+vnxeiTumCIP+Tz26xEqIiywzD9JxHq+udRrDuv6hXE+pmetvJd8n5wcf4MFRQ==", - "license": "MIT", - "dependencies": { - "iceberg-js": "^0.8.1", - "tslib": "2.8.1" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@supabase/supabase-js": { - "version": "2.89.0", - "resolved": "https://registry.npmjs.org/@supabase/supabase-js/-/supabase-js-2.89.0.tgz", - "integrity": "sha512-KlaRwSfFA0fD73PYVMHj5/iXFtQGCcX7PSx0FdQwYEEw9b2wqM7GxadY+5YwcmuEhalmjFB/YvqaoNVF+sWUlg==", - "license": "MIT", - "dependencies": { - "@supabase/auth-js": "2.89.0", - "@supabase/functions-js": "2.89.0", - "@supabase/postgrest-js": "2.89.0", - "@supabase/realtime-js": "2.89.0", - "@supabase/storage-js": "2.89.0" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/@swc/core": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.15.8.tgz", - "integrity": "sha512-T8keoJjXaSUoVBCIjgL6wAnhADIb09GOELzKg10CjNg+vLX48P93SME6jTfte9MZIm5m+Il57H3rTSk/0kzDUw==", - "dev": true, - "hasInstallScript": true, - "license": "Apache-2.0", - "dependencies": { - "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.25" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.15.8", - "@swc/core-darwin-x64": "1.15.8", - "@swc/core-linux-arm-gnueabihf": "1.15.8", - "@swc/core-linux-arm64-gnu": "1.15.8", - "@swc/core-linux-arm64-musl": "1.15.8", - "@swc/core-linux-x64-gnu": "1.15.8", - "@swc/core-linux-x64-musl": "1.15.8", - "@swc/core-win32-arm64-msvc": "1.15.8", - "@swc/core-win32-ia32-msvc": "1.15.8", - "@swc/core-win32-x64-msvc": "1.15.8" - }, - "peerDependencies": { - "@swc/helpers": ">=0.5.17" - }, - "peerDependenciesMeta": { - "@swc/helpers": { - "optional": true - } - } - }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.15.8.tgz", - "integrity": "sha512-M9cK5GwyWWRkRGwwCbREuj6r8jKdES/haCZ3Xckgkl8MUQJZA3XB7IXXK1IXRNeLjg6m7cnoMICpXv1v1hlJOg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.15.8.tgz", - "integrity": "sha512-j47DasuOvXl80sKJHSi2X25l44CMc3VDhlJwA7oewC1nV1VsSzwX+KOwE5tLnfORvVJJyeiXgJORNYg4jeIjYQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.15.8.tgz", - "integrity": "sha512-siAzDENu2rUbwr9+fayWa26r5A9fol1iORG53HWxQL1J8ym4k7xt9eME0dMPXlYZDytK5r9sW8zEA10F2U3Xwg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.15.8.tgz", - "integrity": "sha512-o+1y5u6k2FfPYbTRUPvurwzNt5qd0NTumCTFscCNuBksycloXY16J8L+SMW5QRX59n4Hp9EmFa3vpvNHRVv1+Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.15.8.tgz", - "integrity": "sha512-koiCqL09EwOP1S2RShCI7NbsQuG6r2brTqUYE7pV7kZm9O17wZ0LSz22m6gVibpwEnw8jI3IE1yYsQTVpluALw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.15.8.tgz", - "integrity": "sha512-4p6lOMU3bC+Vd5ARtKJ/FxpIC5G8v3XLoPEZ5s7mLR8h7411HWC/LmTXDHcrSXRC55zvAVia1eldy6zDLz8iFQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.15.8.tgz", - "integrity": "sha512-z3XBnbrZAL+6xDGAhJoN4lOueIxC/8rGrJ9tg+fEaeqLEuAtHSW2QHDHxDwkxZMjuF/pZ6MUTjHjbp8wLbuRLA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.15.8.tgz", - "integrity": "sha512-djQPJ9Rh9vP8GTS/Df3hcc6XP6xnG5c8qsngWId/BLA9oX6C7UzCPAn74BG/wGb9a6j4w3RINuoaieJB3t+7iQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.15.8.tgz", - "integrity": "sha512-/wfAgxORg2VBaUoFdytcVBVCgf1isWZIEXB9MZEUty4wwK93M/PxAkjifOho9RN3WrM3inPLabICRCEgdHpKKQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.15.8", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.15.8.tgz", - "integrity": "sha512-GpMePrh9Sl4d61o4KAHOOv5is5+zt6BEXCOCgs/H0FLGeii7j9bWDE8ExvKFy2GRRZVNR1ugsnzaGWHKM6kuzA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/@swc/types": { - "version": "0.1.25", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.25.tgz", - "integrity": "sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@swc/counter": "^0.1.3" - } - }, - "node_modules/@tailwindcss/typography": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.19.tgz", - "integrity": "sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "6.0.10" - }, - "peerDependencies": { - "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" - } - }, - "node_modules/@tanstack/query-core": { - "version": "5.90.16", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.90.16.tgz", - "integrity": "sha512-MvtWckSVufs/ja463/K4PyJeqT+HMlJWtw6PrCpywznd2NSgO3m4KwO9RqbFqGg6iDE8vVMFWMeQI4Io3eEYww==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/react-query": { - "version": "5.90.16", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.90.16.tgz", - "integrity": "sha512-bpMGOmV4OPmif7TNMteU/Ehf/hoC0Kf98PDc0F4BZkFrEapRMEqI/V6YS0lyzwSV6PQpY1y4xxArUIfBW5LVxQ==", - "license": "MIT", - "dependencies": { - "@tanstack/query-core": "5.90.16" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^18 || ^19" - } - }, - "node_modules/@testing-library/dom": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.1.tgz", - "integrity": "sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.3.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "picocolors": "1.1.1", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@testing-library/jest-dom": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.9.1.tgz", - "integrity": "sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@adobe/css-tools": "^4.4.0", - "aria-query": "^5.0.0", - "css.escape": "^1.5.1", - "dom-accessibility-api": "^0.6.3", - "picocolors": "^1.1.1", - "redent": "^3.0.0" - }, - "engines": { - "node": ">=14", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/@testing-library/jest-dom/node_modules/dom-accessibility-api": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz", - "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@testing-library/react": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-16.3.1.tgz", - "integrity": "sha512-gr4KtAWqIOQoucWYD/f6ki+j5chXfcPc74Col/6poTyqTmn7zRmodWahWRCp8tYd+GMqBonw6hstNzqjbs6gjw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@testing-library/dom": "^10.0.0", - "@types/react": "^18.0.0 || ^19.0.0", - "@types/react-dom": "^18.0.0 || ^19.0.0", - "react": "^18.0.0 || ^19.0.0", - "react-dom": "^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "@types/react-dom": { - "optional": true - } - } - }, - "node_modules/@testing-library/user-event": { - "version": "14.6.1", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.6.1.tgz", - "integrity": "sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12", - "npm": ">=6" - }, - "peerDependencies": { - "@testing-library/dom": ">=7.21.4" - } - }, - "node_modules/@types/aria-query": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", - "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@types/bn.js": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.2.0.tgz", - "integrity": "sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/chai": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", - "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/deep-eql": "*", - "assertion-error": "^2.0.1" - } - }, - "node_modules/@types/d3-array": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz", - "integrity": "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw==", - "license": "MIT" - }, - "node_modules/@types/d3-color": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", - "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", - "license": "MIT" - }, - "node_modules/@types/d3-ease": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", - "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", - "license": "MIT" - }, - "node_modules/@types/d3-interpolate": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", - "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", - "license": "MIT", - "dependencies": { - "@types/d3-color": "*" - } - }, - "node_modules/@types/d3-path": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", - "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", - "license": "MIT" - }, - "node_modules/@types/d3-scale": { - "version": "4.0.9", - "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", - "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==", - "license": "MIT", - "dependencies": { - "@types/d3-time": "*" - } - }, - "node_modules/@types/d3-shape": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.7.tgz", - "integrity": "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==", - "license": "MIT", - "dependencies": { - "@types/d3-path": "*" - } - }, - "node_modules/@types/d3-time": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", - "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==", - "license": "MIT" - }, - "node_modules/@types/d3-timer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", - "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", - "license": "MIT" - }, - "node_modules/@types/deep-eql": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", - "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/dompurify": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/dompurify/-/dompurify-3.0.5.tgz", - "integrity": "sha512-1Wg0g3BtQF7sSb27fJQAKck1HECM6zV1EB66j8JH9i3LCjYabJa0FSdiSgsD5K/RbrsR0SiraKacLB+T8ZVYAg==", - "license": "MIT", - "dependencies": { - "@types/trusted-types": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "22.19.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz", - "integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==", - "license": "MIT", - "dependencies": { - "undici-types": "~6.21.0" - } - }, - "node_modules/@types/phoenix": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/@types/phoenix/-/phoenix-1.6.7.tgz", - "integrity": "sha512-oN9ive//QSBkf19rfDv45M7eZPi0eEXylht2OLEXicu5b4KoQ1OzXIw+xDSGWxSxe1JmepRR/ZH283vsu518/Q==", - "license": "MIT" - }, - "node_modules/@types/prismjs": { - "version": "1.26.5", - "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.5.tgz", - "integrity": "sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==", - "license": "MIT" - }, - "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==", - "license": "MIT" - }, - "node_modules/@types/qrcode": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.5.6.tgz", - "integrity": "sha512-te7NQcV2BOvdj2b1hCAHzAoMNuj65kNBMz0KBaxM6c3VGBOhU0dURQKOtH8CFNI/dsKkwlv32p26qYQTWoB5bw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/react": { - "version": "18.3.27", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.27.tgz", - "integrity": "sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==", - "license": "MIT", - "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.2.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==", - "devOptional": true, - "license": "MIT", - "peerDependencies": { - "@types/react": "^18.0.0" - } - }, - "node_modules/@types/react-syntax-highlighter": { - "version": "15.5.13", - "resolved": "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-15.5.13.tgz", - "integrity": "sha512-uLGJ87j6Sz8UaBAooU0T6lWJ0dBmjZgN1PZTrj05TNql2/XpC6+4HhMT5syIdFUUt+FASfCeLLv4kBygNU+8qA==", - "license": "MIT", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", - "license": "MIT" - }, - "node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "license": "MIT" - }, - "node_modules/@types/uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==", - "license": "MIT" - }, - "node_modules/@types/ws": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", - "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.52.0.tgz", - "integrity": "sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.52.0", - "@typescript-eslint/type-utils": "8.52.0", - "@typescript-eslint/utils": "8.52.0", - "@typescript-eslint/visitor-keys": "8.52.0", - "ignore": "^7.0.5", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.52.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.52.0.tgz", - "integrity": "sha512-iIACsx8pxRnguSYhHiMn2PvhvfpopO9FXHyn1mG5txZIsAaB6F0KwbFnUQN3KCiG3Jcuad/Cao2FAs1Wp7vAyg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/scope-manager": "8.52.0", - "@typescript-eslint/types": "8.52.0", - "@typescript-eslint/typescript-estree": "8.52.0", - "@typescript-eslint/visitor-keys": "8.52.0", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.52.0.tgz", - "integrity": "sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.52.0", - "@typescript-eslint/types": "^8.52.0", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.52.0.tgz", - "integrity": "sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.52.0", - "@typescript-eslint/visitor-keys": "8.52.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.52.0.tgz", - "integrity": "sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.52.0.tgz", - "integrity": "sha512-JD3wKBRWglYRQkAtsyGz1AewDu3mTc7NtRjR/ceTyGoPqmdS5oCdx/oZMWD5Zuqmo6/MpsYs0wp6axNt88/2EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.52.0", - "@typescript-eslint/typescript-estree": "8.52.0", - "@typescript-eslint/utils": "8.52.0", - "debug": "^4.4.3", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.52.0.tgz", - "integrity": "sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.52.0.tgz", - "integrity": "sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/project-service": "8.52.0", - "@typescript-eslint/tsconfig-utils": "8.52.0", - "@typescript-eslint/types": "8.52.0", - "@typescript-eslint/visitor-keys": "8.52.0", - "debug": "^4.4.3", - "minimatch": "^9.0.5", - "semver": "^7.7.3", - "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.4.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "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, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.52.0.tgz", - "integrity": "sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.52.0", - "@typescript-eslint/types": "8.52.0", - "@typescript-eslint/typescript-estree": "8.52.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.52.0.tgz", - "integrity": "sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.52.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@vitejs/plugin-react-swc": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.11.0.tgz", - "integrity": "sha512-YTJCGFdNMHCMfjODYtxRNVAYmTWQ1Lb8PulP/2/f/oEEtglw8oKxKIZmmRkyXrVrHfsKOaVkAc3NT9/dMutO5w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rolldown/pluginutils": "1.0.0-beta.27", - "@swc/core": "^1.12.11" - }, - "peerDependencies": { - "vite": "^4 || ^5 || ^6 || ^7" - } - }, - "node_modules/@vitest/expect": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.16.tgz", - "integrity": "sha512-eshqULT2It7McaJkQGLkPjPjNph+uevROGuIMJdG3V+0BSR2w9u6J9Lwu+E8cK5TETlfou8GRijhafIMhXsimA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@standard-schema/spec": "^1.0.0", - "@types/chai": "^5.2.2", - "@vitest/spy": "4.0.16", - "@vitest/utils": "4.0.16", - "chai": "^6.2.1", - "tinyrainbow": "^3.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/pretty-format": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.16.tgz", - "integrity": "sha512-eNCYNsSty9xJKi/UdVD8Ou16alu7AYiS2fCPRs0b1OdhJiV89buAXQLpTbe+X8V9L6qrs9CqyvU7OaAopJYPsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tinyrainbow": "^3.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.16.tgz", - "integrity": "sha512-VWEDm5Wv9xEo80ctjORcTQRJ539EGPB3Pb9ApvVRAY1U/WkHXmmYISqU5E79uCwcW7xYUV38gwZD+RV755fu3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/utils": "4.0.16", - "pathe": "^2.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/snapshot": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.16.tgz", - "integrity": "sha512-sf6NcrYhYBsSYefxnry+DR8n3UV4xWZwWxYbCJUt2YdvtqzSPR7VfGrY0zsv090DAbjFZsi7ZaMi1KnSRyK1XA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "4.0.16", - "magic-string": "^0.30.21", - "pathe": "^2.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/spy": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.16.tgz", - "integrity": "sha512-4jIOWjKP0ZUaEmJm00E0cOBLU+5WE0BpeNr3XN6TEF05ltro6NJqHWxXD0kA8/Zc8Nh23AT8WQxwNG+WeROupw==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.16.tgz", - "integrity": "sha512-h8z9yYhV3e1LEfaQ3zdypIrnAg/9hguReGZoS7Gl0aBG5xgA410zBqECqmaF/+RkTggRsfnzc1XaAHA6bmUufA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "4.0.16", - "tinyrainbow": "^3.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "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, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "license": "MIT" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/aria-hidden": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", - "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", - "license": "MIT", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "license": "MIT", - "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.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/assert": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", - "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "is-nan": "^1.3.2", - "object-is": "^1.1.5", - "object.assign": "^4.1.4", - "util": "^0.12.5" - } - }, - "node_modules/assertion-error": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", - "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.23", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.23.tgz", - "integrity": "sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "browserslist": "^4.28.1", - "caniuse-lite": "^1.0.30001760", - "fraction.js": "^5.3.4", - "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, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/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" - } - ], - "license": "MIT" - }, - "node_modules/baseline-browser-mapping": { - "version": "2.9.11", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.11.tgz", - "integrity": "sha512-Sg0xJUNDU1sJNGdfGWhVHX0kkZ+HWcvmVymJbj6NSgZZmW/8S9Y2HQ5euytnIgakgxN6papOAWiwDo1ctFDcoQ==", - "dev": true, - "license": "Apache-2.0", - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "require-from-string": "^2.0.2" - } - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bn.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz", - "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==", - "license": "MIT" - }, - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/browser-resolve": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz", - "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve": "^1.17.0" - } - }, - "node_modules/browser-resolve/node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.16.1", - "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/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/browserify-rsa": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz", - "integrity": "sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^5.2.1", - "randombytes": "^2.1.0", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/browserify-sign": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.5.tgz", - "integrity": "sha512-C2AUdAJg6rlM2W5QMp2Q4KGQMVBwR1lIimTsUnutJ8bMpW5B52pGpR2gEnNBNwijumDo5FojQ0L9JrXA8m4YEw==", - "dev": true, - "license": "ISC", - "dependencies": { - "bn.js": "^5.2.2", - "browserify-rsa": "^4.1.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.6.1", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.9", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/browserify-sign/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/browserify-sign/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/browserify-sign/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "license": "MIT", - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/browserslist": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" - }, - "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" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.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==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001762", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001762.tgz", - "integrity": "sha512-PxZwGNvH7Ak8WX5iXzoK1KPZttBXNPuaOvI2ZYU7NrlM+d9Ov+TUvlLOBNGzVXAntMSMMlJPd+jY6ovrVjSmUw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/chai": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz", - "integrity": "sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/character-entities": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", - "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", - "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/cipher-base": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.7.tgz", - "integrity": "sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/class-variance-authority": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", - "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", - "license": "Apache-2.0", - "dependencies": { - "clsx": "^2.1.1" - }, - "funding": { - "url": "https://polar.sh/cva" - } - }, - "node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/cmdk": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.1.1.tgz", - "integrity": "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-compose-refs": "^1.1.1", - "@radix-ui/react-dialog": "^1.1.6", - "@radix-ui/react-id": "^1.1.0", - "@radix-ui/react-primitive": "^2.0.2" - }, - "peerDependencies": { - "react": "^18 || ^19 || ^19.0.0-rc", - "react-dom": "^18 || ^19 || ^19.0.0-rc" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "license": "MIT" - }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "license": "MIT" - }, - "node_modules/console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "node_modules/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - } - }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.1", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.1.tgz", - "integrity": "sha512-r4ESw/IlusD17lgQi1O20Fa3qNnsckR126TdUuBgAu7GBYSIPvdNyONd3Zrxh0xCwA4+6w/TDArBPsMvhur+KQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "browserify-cipher": "^1.0.1", - "browserify-sign": "^4.2.3", - "create-ecdh": "^4.0.4", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "diffie-hellman": "^5.0.3", - "hash-base": "~3.0.4", - "inherits": "^2.0.4", - "pbkdf2": "^3.1.2", - "public-encrypt": "^4.0.3", - "randombytes": "^2.1.0", - "randomfill": "^1.0.4" - }, - "engines": { - "node": ">= 0.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/css-tree": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz", - "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "mdn-data": "2.12.2", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" - } - }, - "node_modules/css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", - "dev": true, - "license": "MIT" - }, - "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==", - "license": "MIT", - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssstyle": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.7.tgz", - "integrity": "sha512-7D2EPVltRrsTkhpQmksIu+LxeWAIEk6wRDMJ1qljlv+CKHJM+cJLlfhWIzNA44eAsHXSNe3+vO6DW1yCYx8SuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@asamuzakjp/css-color": "^4.1.1", - "@csstools/css-syntax-patches-for-csstree": "^1.0.21", - "css-tree": "^3.1.0", - "lru-cache": "^11.2.4" - }, - "engines": { - "node": ">=20" - } - }, - "node_modules/csstype": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", - "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", - "license": "MIT" - }, - "node_modules/d3-array": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", - "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", - "license": "ISC", - "dependencies": { - "internmap": "1 - 2" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-color": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", - "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-ease": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", - "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-format": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", - "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-interpolate": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", - "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", - "license": "ISC", - "dependencies": { - "d3-color": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", - "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-scale": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", - "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", - "license": "ISC", - "dependencies": { - "d3-array": "2.10.0 - 3", - "d3-format": "1 - 3", - "d3-interpolate": "1.2.0 - 3", - "d3-time": "2.1.1 - 3", - "d3-time-format": "2 - 4" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-shape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", - "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", - "license": "ISC", - "dependencies": { - "d3-path": "^3.1.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", - "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", - "license": "ISC", - "dependencies": { - "d3-array": "2 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-time-format": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", - "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", - "license": "ISC", - "dependencies": { - "d3-time": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-timer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", - "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/data-uri-to-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", - "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/data-urls": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-6.0.0.tgz", - "integrity": "sha512-BnBS08aLUM+DKamupXs3w2tJJoqU+AkaE/+6vQxi/G/DPmIZFJJp9Dkb1kM03AZx8ADehDUZgsNxju3mPXZYIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^15.0.0" - }, - "engines": { - "node": ">=20" - } - }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/date-fns": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", - "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/kossnocorp" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decimal.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", - "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", - "dev": true, - "license": "MIT" - }, - "node_modules/decimal.js-light": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz", - "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", - "license": "MIT" - }, - "node_modules/decode-named-character-reference": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz", - "integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==", - "license": "MIT", - "dependencies": { - "character-entities": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/des.js": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", - "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "license": "MIT" - }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "license": "Apache-2.0" - }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/dijkstrajs": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz", - "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==", - "license": "MIT" - }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "license": "MIT" - }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dom-accessibility-api": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - } - }, - "node_modules/domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/dompurify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.1.tgz", - "integrity": "sha512-qkdCKzLNtrgPFP1Vo+98FRzJnBRGe4ffyCea9IwHB1fyxPOeNTHpLKYGd4Uk9xvNoH0ZoOjwZxNptyMwqrId1Q==", - "license": "(MPL-2.0 OR Apache-2.0)", - "optionalDependencies": { - "@types/trusted-types": "^2.0.7" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.5.267", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.267.tgz", - "integrity": "sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==", - "dev": true, - "license": "ISC" - }, - "node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/embla-carousel": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/embla-carousel/-/embla-carousel-8.6.0.tgz", - "integrity": "sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==", - "license": "MIT" - }, - "node_modules/embla-carousel-react": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/embla-carousel-react/-/embla-carousel-react-8.6.0.tgz", - "integrity": "sha512-0/PjqU7geVmo6F734pmPqpyHqiM99olvyecY7zdweCw+6tKEXnrE90pBiBbMMU8s5tICemzpQ3hi5EpxzGW+JA==", - "license": "MIT", - "dependencies": { - "embla-carousel": "8.6.0", - "embla-carousel-reactive-utils": "8.6.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - } - }, - "node_modules/embla-carousel-reactive-utils": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/embla-carousel-reactive-utils/-/embla-carousel-reactive-utils-8.6.0.tgz", - "integrity": "sha512-fMVUDUEx0/uIEDM0Mz3dHznDhfX+znCCDCeIophYb1QGVM7YThSWX+wz11zlYwWFOr74b4QLGg0hrGPJeG2s4A==", - "license": "MIT", - "peerDependencies": { - "embla-carousel": "8.6.0" - } - }, - "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==", - "license": "MIT" - }, - "node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-abstract": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", - "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.2.tgz", - "integrity": "sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.1", - "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" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-module-lexer": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", - "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", - "dev": true, - "license": "MIT" - }, - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "9.39.2", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", - "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.8.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.21.1", - "@eslint/config-helpers": "^0.4.2", - "@eslint/core": "^0.17.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.39.2", - "@eslint/plugin-kit": "^0.4.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.4.0", - "eslint-visitor-keys": "^4.2.1", - "espree": "^10.4.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.37.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", - "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.3", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.2.1", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.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.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", - "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-react-refresh": { - "version": "0.4.26", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.26.tgz", - "integrity": "sha512-1RETEylht2O6FM/MvgnyvT+8K21wLqDNg4qD51Zj3guhjt433XbnnkVttHMyaVyAFD03QSV4LPS5iE3VQmO7XQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "eslint": ">=8.40" - } - }, - "node_modules/eslint-scope": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", - "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", - "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.15.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", - "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true, - "license": "MIT" - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eventemitter3": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", - "license": "MIT" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/expect-type": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", - "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-equals": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.4.0.tgz", - "integrity": "sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==", - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fastq": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", - "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "license": "MIT", - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/fetch-blob": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", - "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "paypal", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "dependencies": { - "node-domexception": "^1.0.0", - "web-streams-polyfill": "^3.0.3" - }, - "engines": { - "node": "^12.20 || >= 14.13" - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true, - "license": "ISC" - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/formdata-polyfill": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", - "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", - "license": "MIT", - "dependencies": { - "fetch-blob": "^3.1.2" - }, - "engines": { - "node": ">=12.20.0" - } - }, - "node_modules/fraction.js": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", - "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/rawify" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "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==", - "dev": true, - "license": "MIT", - "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-nonce": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", - "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "15.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", - "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hash-base": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.5.tgz", - "integrity": "sha512-vXm0l45VbcHEVlTCzs8M+s0VeYsB2lnlAaThoLKGXr3bE/VWDOelNUnycUPEhKEaXARL2TEFjBOyUiM6+55KBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", - "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/highlight.js": { - "version": "11.11.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.11.1.tgz", - "integrity": "sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/highlightjs-vue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/highlightjs-vue/-/highlightjs-vue-1.0.0.tgz", - "integrity": "sha512-PDEfEF102G23vHmPhLyPboFCD+BkMGu+GuJe2d9/eH4FsCwvgBpnc9n0pGE+ffKdph38s6foEZiEjdgHdzp+IA==", - "license": "CC0-1.0" - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "license": "BSD-3-Clause", - "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/html-encoding-sniffer": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-6.0.0.tgz", - "integrity": "sha512-CV9TW3Y3f8/wT0BRFc1/KAVQ3TUHiXmaAb6VW9vtiMFf7SLoMd1PdAc4W3KFOFETBJUb90KatHqlsZMWV+R9Gg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@exodus/bytes": "^1.6.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - } - }, - "node_modules/html-parse-stringify": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz", - "integrity": "sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==", - "license": "MIT", - "dependencies": { - "void-elements": "3.1.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", - "dev": true, - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/husky": { - "version": "9.1.7", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.7.tgz", - "integrity": "sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==", - "dev": true, - "license": "MIT", - "bin": { - "husky": "bin.js" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/typicode" - } - }, - "node_modules/i18next": { - "version": "23.16.8", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.16.8.tgz", - "integrity": "sha512-06r/TitrM88Mg5FdUXAKL96dJMzgqLE5dv3ryBAra4KCwD9mJ4ndOTS95ZuymIGoE+2hzfdaMak2X11/es7ZWg==", - "funding": [ - { - "type": "individual", - "url": "https://locize.com" - }, - { - "type": "individual", - "url": "https://locize.com/i18next.html" - }, - { - "type": "individual", - "url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project" - } - ], - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.2" - } - }, - "node_modules/i18next-browser-languagedetector": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-7.2.2.tgz", - "integrity": "sha512-6b7r75uIJDWCcCflmbof+sJ94k9UQO4X0YR62oUfqGI/GjCLVzlCwu8TFdRZIqVLzWbzNcmkmhfqKEr4TLz4HQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.2" - } - }, - "node_modules/iceberg-js": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/iceberg-js/-/iceberg-js-0.8.1.tgz", - "integrity": "sha512-1dhVQZXhcHje7798IVM+xoo/1ZdVfzOMIc8/rgVSijRK38EDqOJoGula9N/8ZI5RD8QTxNQtK/Gozpr+qUqRRA==", - "license": "MIT", - "engines": { - "node": ">=20.0.0" - } - }, - "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" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/input-otp": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/input-otp/-/input-otp-1.4.2.tgz", - "integrity": "sha512-l3jWwYNvrEa6NTCt7BECfCm48GvwuZzkoeG3gBL2w4CHeOXW3eKFmf9UNYkNfYc3mxMrthMnxjIE07MT0zLBQA==", - "license": "MIT", - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" - } - }, - "node_modules/internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/internmap": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", - "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "license": "MIT", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-arguments": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", - "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-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==", - "license": "MIT", - "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, - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hexadecimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", - "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/isomorphic-timers-promises": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/isomorphic-timers-promises/-/isomorphic-timers-promises-1.0.1.tgz", - "integrity": "sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/iterator.prototype": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", - "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "get-proto": "^1.0.0", - "has-symbols": "^1.1.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/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==", - "license": "MIT", - "bin": { - "jiti": "bin/jiti.js" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "27.4.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-27.4.0.tgz", - "integrity": "sha512-mjzqwWRD9Y1J1KUi7W97Gja1bwOOM5Ug0EZ6UDK3xS7j7mndrkwozHtSblfomlzyB4NepioNt+B2sOSzczVgtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@acemir/cssom": "^0.9.28", - "@asamuzakjp/dom-selector": "^6.7.6", - "@exodus/bytes": "^1.6.0", - "cssstyle": "^5.3.4", - "data-urls": "^6.0.0", - "decimal.js": "^10.6.0", - "html-encoding-sniffer": "^6.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.6", - "is-potential-custom-element-name": "^1.0.1", - "parse5": "^8.0.0", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^6.0.0", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^8.0.0", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^15.1.0", - "ws": "^8.18.3", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "canvas": "^3.0.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "license": "ISC" - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lilconfig": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", - "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", - "license": "MIT", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antonk52" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "license": "MIT" - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "license": "MIT" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "license": "MIT", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lowlight": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.20.0.tgz", - "integrity": "sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==", - "license": "MIT", - "dependencies": { - "fault": "^1.0.0", - "highlight.js": "~10.7.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/lowlight/node_modules/highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/lru-cache": { - "version": "11.2.4", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.4.tgz", - "integrity": "sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==", - "dev": true, - "license": "BlueOak-1.0.0", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/lucide-react": { - "version": "0.462.0", - "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.462.0.tgz", - "integrity": "sha512-NTL7EbAao9IFtuSivSZgrAh4fZd09Lr+6MTkqIxuHaH2nnYiYIzXPo06cOxHg9wKLdj6LL8TByG4qpePqwgx/g==", - "license": "ISC", - "peerDependencies": { - "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" - } - }, - "node_modules/lz-string": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", - "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "lz-string": "bin/bin.js" - } - }, - "node_modules/magic-string": { - "version": "0.30.21", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5" - } - }, - "node_modules/marked": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz", - "integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==", - "license": "MIT", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/mdn-data": { - "version": "2.12.2", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz", - "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true, - "license": "ISC" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", - "dev": true, - "license": "MIT" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mock-socket": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/mock-socket/-/mock-socket-9.3.1.tgz", - "integrity": "sha512-qxBgB7Qa2sEQgHFjj0dSigq7fX4k6Saisd5Nelwp2q8mlbAFh5dHV9JTTlF8viYJLSSWgMCZFUom8PJcMNBoJw==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/next-themes": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.3.0.tgz", - "integrity": "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==", - "license": "MIT", - "peerDependencies": { - "react": "^16.8 || ^17 || ^18", - "react-dom": "^16.8 || ^17 || ^18" - } - }, - "node_modules/nock": { - "version": "13.5.6", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.5.6.tgz", - "integrity": "sha512-o2zOYiCpzRqSzPj0Zt/dQ/DqZeYoaQ7TUonc/xUPjCGl9WeHpNbxgVvOquXYAaJzI0M9BXV3HTzG0p8IUAbBTQ==", - "license": "MIT", - "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "propagate": "^2.0.0" - }, - "engines": { - "node": ">= 10.13" - } - }, - "node_modules/node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", - "deprecated": "Use your platform's native DOMException instead", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/jimmywarting" - }, - { - "type": "github", - "url": "https://paypal.me/jimmywarting" - } - ], - "license": "MIT", - "engines": { - "node": ">=10.5.0" - } - }, - "node_modules/node-fetch": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", - "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", - "license": "MIT", - "dependencies": { - "data-uri-to-buffer": "^4.0.0", - "fetch-blob": "^3.1.4", - "formdata-polyfill": "^4.0.10" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/node-fetch" - } - }, - "node_modules/node-releases": { - "version": "2.0.27", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-stdlib-browser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-stdlib-browser/-/node-stdlib-browser-1.3.1.tgz", - "integrity": "sha512-X75ZN8DCLftGM5iKwoYLA3rjnrAEs97MkzvSd4q2746Tgpg8b8XWiBGiBG4ZpgcAqBgtgPHTiAc8ZMCvZuikDw==", - "dev": true, - "license": "MIT", - "dependencies": { - "assert": "^2.0.0", - "browser-resolve": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^5.7.1", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "create-require": "^1.1.1", - "crypto-browserify": "^3.12.1", - "domain-browser": "4.22.0", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "isomorphic-timers-promises": "^1.0.1", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "pkg-dir": "^5.0.0", - "process": "^0.11.10", - "punycode": "^1.4.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.1", - "url": "^0.11.4", - "util": "^0.12.4", - "vm-browserify": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-stdlib-browser/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/node-stdlib-browser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "license": "MIT", - "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, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", - "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", - "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", - "dev": true, - "license": "MIT", - "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, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obug": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz", - "integrity": "sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==", - "dev": true, - "funding": [ - "https://github.com/sponsors/sxzz", - "https://opencollective.com/debug" - ], - "license": "MIT" - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", - "dev": true, - "license": "MIT" - }, - "node_modules/own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true, - "license": "(MIT AND Zlib)" - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-asn1": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.9.tgz", - "integrity": "sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg==", - "dev": true, - "license": "ISC", - "dependencies": { - "asn1.js": "^4.10.1", - "browserify-aes": "^1.2.0", - "evp_bytestokey": "^1.0.3", - "pbkdf2": "^3.1.5", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse-entities": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.2.tgz", - "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", - "license": "MIT", - "dependencies": { - "@types/unist": "^2.0.0", - "character-entities-legacy": "^3.0.0", - "character-reference-invalid": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0", - "is-hexadecimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-entities/node_modules/@types/unist": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", - "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", - "license": "MIT" - }, - "node_modules/parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz", - "integrity": "sha512-9m4m5GSgXjL4AjumKzq1Fgfp3Z8rsvjRNbnkVwfu2ImRqE5D0LnY2QfDen18FSY9C573YU5XxSapdHZTZ2WolA==", - "dev": true, - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "dev": true, - "license": "MIT" - }, - "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==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "license": "MIT" - }, - "node_modules/pathe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "dev": true, - "license": "MIT" - }, - "node_modules/pbkdf2": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.5.tgz", - "integrity": "sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "ripemd160": "^2.0.3", - "safe-buffer": "^5.2.1", - "sha.js": "^2.4.12", - "to-buffer": "^1.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "license": "MIT", - "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==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/pngjs": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", - "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", - "license": "MIT", - "engines": { - "node": ">=10.13.0" - } - }, - "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, - "license": "MIT", - "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" - } - ], - "license": "MIT", - "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==", - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-import/node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.16.1", - "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/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" - } - ], - "license": "MIT", - "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" - } - ], - "license": "MIT", - "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" - } - ], - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "^6.1.1" - }, - "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "postcss": "^8.2.14" - } - }, - "node_modules/postcss-nested/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==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "license": "MIT" - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/pretty-format/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/prismjs": { - "version": "1.30.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", - "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "license": "MIT" - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/property-information": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", - "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.2.tgz", - "integrity": "sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/qrcode": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz", - "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==", - "license": "MIT", - "dependencies": { - "dijkstrajs": "^1.0.1", - "pngjs": "^5.0.0", - "yargs": "^15.3.1" - }, - "bin": { - "qrcode": "bin/qrcode" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/qs": { - "version": "6.14.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz", - "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "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" - } - ], - "license": "MIT" - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-day-picker": { - "version": "8.10.1", - "resolved": "https://registry.npmjs.org/react-day-picker/-/react-day-picker-8.10.1.tgz", - "integrity": "sha512-TMx7fNbhLk15eqcMt+7Z7S2KF7mfTId/XJDjKE8f+IUcFn0l08/kI4FiYTL/0yuOLmEcbR4Fwe3GJf/NiiMnPA==", - "license": "MIT", - "funding": { - "type": "individual", - "url": "https://github.com/sponsors/gpbl" - }, - "peerDependencies": { - "date-fns": "^2.28.0 || ^3.0.0", - "react": "^16.8.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==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" - }, - "peerDependencies": { - "react": "^18.3.1" - } - }, - "node_modules/react-hook-form": { - "version": "7.70.0", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.70.0.tgz", - "integrity": "sha512-COOMajS4FI3Wuwrs3GPpi/Jeef/5W1DRR84Yl5/ShlT3dKVFUfoGiEZ/QE6Uw8P4T2/CLJdcTVYKvWBMQTEpvw==", - "license": "MIT", - "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-i18next": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-14.1.3.tgz", - "integrity": "sha512-wZnpfunU6UIAiJ+bxwOiTmBOAaB14ha97MjOEnLGac2RJ+h/maIYXZuTHlmyqQVX1UVHmU1YDTQ5vxLmwfXTjw==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.9", - "html-parse-stringify": "^3.0.1" - }, - "peerDependencies": { - "i18next": ">= 23.2.3", - "react": ">= 16.8.0" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "license": "MIT" - }, - "node_modules/react-remove-scroll": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", - "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", - "license": "MIT", - "dependencies": { - "react-remove-scroll-bar": "^2.3.7", - "react-style-singleton": "^2.2.3", - "tslib": "^2.1.0", - "use-callback-ref": "^1.3.3", - "use-sidecar": "^1.1.3" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-remove-scroll-bar": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", - "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", - "license": "MIT", - "dependencies": { - "react-style-singleton": "^2.2.2", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-resizable-panels": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-2.1.9.tgz", - "integrity": "sha512-z77+X08YDIrgAes4jl8xhnUu1LNIRp4+E7cv4xHmLOxxUPO/ML7PSrE813b90vj7xvQ1lcf7g2uA9GeMZonjhQ==", - "license": "MIT", - "peerDependencies": { - "react": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc", - "react-dom": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - } - }, - "node_modules/react-router": { - "version": "6.30.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.30.2.tgz", - "integrity": "sha512-H2Bm38Zu1bm8KUE5NVWRMzuIyAV8p/JrOaBJAwVmp37AXG72+CZJlEBw6pdn9i5TBgLMhNDgijS4ZlblpHyWTA==", - "license": "MIT", - "dependencies": { - "@remix-run/router": "1.23.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "react": ">=16.8" - } - }, - "node_modules/react-router-dom": { - "version": "6.30.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.30.2.tgz", - "integrity": "sha512-l2OwHn3UUnEVUqc6/1VMmR1cvZryZ3j3NzapC2eUXO1dB0sYp5mvwdjiXhpUbRb21eFow3qSxpP8Yv6oAU824Q==", - "license": "MIT", - "dependencies": { - "@remix-run/router": "1.23.1", - "react-router": "6.30.2" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" - } - }, - "node_modules/react-smooth": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.4.tgz", - "integrity": "sha512-gnGKTpYwqL0Iii09gHobNolvX4Kiq4PKx6eWBCYYix+8cdw+cGo3do906l1NBPKkSWx1DghC1dlWG9L2uGd61Q==", - "license": "MIT", - "dependencies": { - "fast-equals": "^5.0.1", - "prop-types": "^15.8.1", - "react-transition-group": "^4.4.5" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/react-style-singleton": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", - "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", - "license": "MIT", - "dependencies": { - "get-nonce": "^1.0.0", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-syntax-highlighter": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-16.1.0.tgz", - "integrity": "sha512-E40/hBiP5rCNwkeBN1vRP+xow1X0pndinO+z3h7HLsHyjztbyjfzNWNKuAsJj+7DLam9iT4AaaOZnueCU+Nplg==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.28.4", - "highlight.js": "^10.4.1", - "highlightjs-vue": "^1.0.0", - "lowlight": "^1.17.0", - "prismjs": "^1.30.0", - "refractor": "^5.0.0" - }, - "engines": { - "node": ">= 16.20.2" - }, - "peerDependencies": { - "react": ">= 0.14.0" - } - }, - "node_modules/react-syntax-highlighter/node_modules/highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/react-transition-group": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", - "license": "BSD-3-Clause", - "dependencies": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": ">=16.6.0", - "react-dom": ">=16.6.0" - } - }, - "node_modules/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==", - "license": "MIT", - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/recharts": { - "version": "2.15.4", - "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.4.tgz", - "integrity": "sha512-UT/q6fwS3c1dHbXv2uFgYJ9BMFHu3fwnd7AYZaEQhXuYQ4hgsxLvsUXzGdKeZrW5xopzDCvuA2N41WJ88I7zIw==", - "license": "MIT", - "dependencies": { - "clsx": "^2.0.0", - "eventemitter3": "^4.0.1", - "lodash": "^4.17.21", - "react-is": "^18.3.1", - "react-smooth": "^4.0.4", - "recharts-scale": "^0.4.4", - "tiny-invariant": "^1.3.1", - "victory-vendor": "^36.6.8" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "react": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/recharts-scale": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz", - "integrity": "sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==", - "license": "MIT", - "dependencies": { - "decimal.js-light": "^2.4.1" - } - }, - "node_modules/recharts/node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "license": "MIT" - }, - "node_modules/recharts/node_modules/react-is": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - "license": "MIT" - }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/refractor": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-5.0.0.tgz", - "integrity": "sha512-QXOrHQF5jOpjjLfiNk5GFnWhRXvxjUVnlFxkeDmewR5sXkr3iM46Zo+CnRR8B+MDVqkULW4EcLVcRBNOPXHosw==", - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@types/prismjs": "^1.0.0", - "hastscript": "^9.0.0", - "parse-entities": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "license": "ISC" - }, - "node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/ripemd160": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz", - "integrity": "sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash-base": "^3.1.2", - "inherits": "^2.0.4" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/ripemd160/node_modules/hash-base": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.2.tgz", - "integrity": "sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/ripemd160/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/ripemd160/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/ripemd160/node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/ripemd160/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/ripemd160/node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/rollup": { - "version": "4.55.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.55.1.tgz", - "integrity": "sha512-wDv/Ht1BNHB4upNbK74s9usvl7hObDnvVzknxqY/E/O3X6rW1U1rV1aENEfJ54eFZDTNo7zv1f5N4edCluH7+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.8" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.55.1", - "@rollup/rollup-android-arm64": "4.55.1", - "@rollup/rollup-darwin-arm64": "4.55.1", - "@rollup/rollup-darwin-x64": "4.55.1", - "@rollup/rollup-freebsd-arm64": "4.55.1", - "@rollup/rollup-freebsd-x64": "4.55.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.55.1", - "@rollup/rollup-linux-arm-musleabihf": "4.55.1", - "@rollup/rollup-linux-arm64-gnu": "4.55.1", - "@rollup/rollup-linux-arm64-musl": "4.55.1", - "@rollup/rollup-linux-loong64-gnu": "4.55.1", - "@rollup/rollup-linux-loong64-musl": "4.55.1", - "@rollup/rollup-linux-ppc64-gnu": "4.55.1", - "@rollup/rollup-linux-ppc64-musl": "4.55.1", - "@rollup/rollup-linux-riscv64-gnu": "4.55.1", - "@rollup/rollup-linux-riscv64-musl": "4.55.1", - "@rollup/rollup-linux-s390x-gnu": "4.55.1", - "@rollup/rollup-linux-x64-gnu": "4.55.1", - "@rollup/rollup-linux-x64-musl": "4.55.1", - "@rollup/rollup-openbsd-x64": "4.55.1", - "@rollup/rollup-openharmony-arm64": "4.55.1", - "@rollup/rollup-win32-arm64-msvc": "4.55.1", - "@rollup/rollup-win32-ia32-msvc": "4.55.1", - "@rollup/rollup-win32-x64-gnu": "4.55.1", - "@rollup/rollup-win32-x64-msvc": "4.55.1", - "fsevents": "~2.3.2" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "license": "Apache-2.0", - "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, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "dev": true, - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, - "node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "license": "ISC" - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true, - "license": "MIT" - }, - "node_modules/sha.js": { - "version": "2.4.12", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz", - "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==", - "dev": true, - "license": "(MIT AND BSD-3-Clause)", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.0" - }, - "bin": { - "sha.js": "bin.js" - }, - "engines": { - "node": ">= 0.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true, - "license": "ISC" - }, - "node_modules/smoldot": { - "version": "2.0.40", - "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-2.0.40.tgz", - "integrity": "sha512-h6XC/kKDLdZBBTI0X8y4ZxmaZ2KYVVB0+5isCQm6j26ljeNjHZUDOV+hf8VyoE23+jg00wrxNJ2IVcIAURxwtg==", - "license": "GPL-3.0-or-later WITH Classpath-exception-2.0", - "optional": true, - "dependencies": { - "ws": "^8.8.1" - } - }, - "node_modules/sonner": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/sonner/-/sonner-1.7.4.tgz", - "integrity": "sha512-DIS8z4PfJRbIyfVFDVnK9rO3eYDtse4Omcm6bt0oEr5/jtLgysmjuBl1frJ9E/EQZrFmKx2A8m/s5s9CRXIzhw==", - "license": "MIT", - "peerDependencies": { - "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", - "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true, - "license": "MIT" - }, - "node_modules/std-env": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", - "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", - "dev": true, - "license": "MIT" - }, - "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, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "node_modules/stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "dev": true, - "license": "MIT", - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.12", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", - "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.6", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.6", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "regexp.prototype.flags": "^1.5.3", - "set-function-name": "^2.0.2", - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.repeat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sucrase": { - "version": "3.35.1", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.1.tgz", - "integrity": "sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==", - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "tinyglobby": "^0.2.11", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true, - "license": "MIT" - }, - "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==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/dcastil" - } - }, - "node_modules/tailwindcss": { - "version": "3.4.19", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.19.tgz", - "integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==", - "license": "MIT", - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "arg": "^5.0.2", - "chokidar": "^3.6.0", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.3.2", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "jiti": "^1.21.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/tailwindcss-animate": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz", - "integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==", - "license": "MIT", - "peerDependencies": { - "tailwindcss": ">=3.0.0 || insiders" - } - }, - "node_modules/tailwindcss/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==", - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", - "license": "MIT", - "dependencies": { - "is-core-module": "^2.16.1", - "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/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "license": "MIT", - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "license": "MIT", - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/tiny-invariant": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", - "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", - "license": "MIT" - }, - "node_modules/tinybench": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", - "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", - "dev": true, - "license": "MIT" - }, - "node_modules/tinyexec": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz", - "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", - "license": "MIT", - "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==", - "license": "MIT", - "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==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/tinyrainbow": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.0.3.tgz", - "integrity": "sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tldts": { - "version": "7.0.19", - "resolved": "https://registry.npmjs.org/tldts/-/tldts-7.0.19.tgz", - "integrity": "sha512-8PWx8tvC4jDB39BQw1m4x8y5MH1BcQ5xHeL2n7UVFulMPH/3Q0uiamahFJ3lXA0zO2SUyRXuVVbWSDmstlt9YA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tldts-core": "^7.0.19" - }, - "bin": { - "tldts": "bin/cli.js" - } - }, - "node_modules/tldts-core": { - "version": "7.0.19", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-7.0.19.tgz", - "integrity": "sha512-lJX2dEWx0SGH4O6p+7FPwYmJ/bu1JbcGJ8RLaG9b7liIgZ85itUVEPbMtWRVrde/0fnDPEPHW10ZsKW3kVsE9A==", - "dev": true, - "license": "MIT" - }, - "node_modules/to-buffer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.2.tgz", - "integrity": "sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "isarray": "^2.0.5", - "safe-buffer": "^5.2.1", - "typed-array-buffer": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-6.0.0.tgz", - "integrity": "sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "tldts": "^7.0.5" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/tr46": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-6.0.0.tgz", - "integrity": "sha512-bLVMLPtstlZ4iMQHpFHTR7GAGj2jxi8Dg0s2h2MafAE4uSWF98FC/3MomU51iQAMf8/qDUbKWf5GxuvvVcXEhw==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=20" - } - }, - "node_modules/ts-api-utils": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", - "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "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==", - "license": "Apache-2.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==", - "license": "0BSD" - }, - "node_modules/tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", - "dev": true, - "license": "MIT" - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-eslint": { - "version": "8.52.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.52.0.tgz", - "integrity": "sha512-atlQQJ2YkO4pfTVQmQ+wvYQwexPDOIgo+RaVcD7gHgzy/IQA+XTyuxNM9M9TVXvttkF7koBHmcwisKdOAf2EcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.52.0", - "@typescript-eslint/parser": "8.52.0", - "@typescript-eslint/typescript-estree": "8.52.0", - "@typescript-eslint/utils": "8.52.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "license": "MIT" - }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", - "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^1.4.1", - "qs": "^6.12.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/url/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/use-callback-ref": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", - "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", - "license": "MIT", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-sidecar": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", - "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", - "license": "MIT", - "dependencies": { - "detect-node-es": "^1.1.0", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "@types/react": "*", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "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==", - "license": "MIT", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "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==", - "license": "MIT" - }, - "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" - ], - "license": "MIT", - "bin": { - "uuid": "dist/esm/bin/uuid" - } - }, - "node_modules/vaul": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/vaul/-/vaul-0.9.9.tgz", - "integrity": "sha512-7afKg48srluhZwIkaU+lgGtFCUsYBSGOl8vcc8N/M3YQlZFlynHD15AE+pwrYdc826o7nrIND4lL9Y6b9WWZZQ==", - "license": "MIT", - "dependencies": { - "@radix-ui/react-dialog": "^1.1.1" - }, - "peerDependencies": { - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" - } - }, - "node_modules/victory-vendor": { - "version": "36.9.2", - "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz", - "integrity": "sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==", - "license": "MIT AND ISC", - "dependencies": { - "@types/d3-array": "^3.0.3", - "@types/d3-ease": "^3.0.0", - "@types/d3-interpolate": "^3.0.1", - "@types/d3-scale": "^4.0.2", - "@types/d3-shape": "^3.1.0", - "@types/d3-time": "^3.0.0", - "@types/d3-timer": "^3.0.0", - "d3-array": "^3.1.6", - "d3-ease": "^3.0.1", - "d3-interpolate": "^3.0.1", - "d3-scale": "^4.0.2", - "d3-shape": "^3.1.0", - "d3-time": "^3.0.0", - "d3-timer": "^3.0.1" - } - }, - "node_modules/vite": { - "version": "5.4.21", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", - "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vite-plugin-node-polyfills": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/vite-plugin-node-polyfills/-/vite-plugin-node-polyfills-0.24.0.tgz", - "integrity": "sha512-GA9QKLH+vIM8NPaGA+o2t8PDfFUl32J8rUp1zQfMKVJQiNkOX4unE51tR6ppl6iKw5yOrDAdSH7r/UIFLCVhLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/plugin-inject": "^5.0.5", - "node-stdlib-browser": "^1.2.0" - }, - "funding": { - "url": "https://github.com/sponsors/davidmyersdev" - }, - "peerDependencies": { - "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/vitest": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.0.16.tgz", - "integrity": "sha512-E4t7DJ9pESL6E3I8nFjPa4xGUd3PmiWDLsDztS2qXSJWfHtbQnwAWylaBvSNY48I3vr8PTqIZlyK8TE3V3CA4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/expect": "4.0.16", - "@vitest/mocker": "4.0.16", - "@vitest/pretty-format": "4.0.16", - "@vitest/runner": "4.0.16", - "@vitest/snapshot": "4.0.16", - "@vitest/spy": "4.0.16", - "@vitest/utils": "4.0.16", - "es-module-lexer": "^1.7.0", - "expect-type": "^1.2.2", - "magic-string": "^0.30.21", - "obug": "^2.1.1", - "pathe": "^2.0.3", - "picomatch": "^4.0.3", - "std-env": "^3.10.0", - "tinybench": "^2.9.0", - "tinyexec": "^1.0.2", - "tinyglobby": "^0.2.15", - "tinyrainbow": "^3.0.3", - "vite": "^6.0.0 || ^7.0.0", - "why-is-node-running": "^2.3.0" - }, - "bin": { - "vitest": "vitest.mjs" - }, - "engines": { - "node": "^20.0.0 || ^22.0.0 || >=24.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@opentelemetry/api": "^1.9.0", - "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0", - "@vitest/browser-playwright": "4.0.16", - "@vitest/browser-preview": "4.0.16", - "@vitest/browser-webdriverio": "4.0.16", - "@vitest/ui": "4.0.16", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@opentelemetry/api": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@vitest/browser-playwright": { - "optional": true - }, - "@vitest/browser-preview": { - "optional": true - }, - "@vitest/browser-webdriverio": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } - } - }, - "node_modules/vitest/node_modules/@esbuild/aix-ppc64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz", - "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/android-arm": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz", - "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/android-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz", - "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/android-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz", - "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/darwin-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz", - "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/darwin-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz", - "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz", - "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/freebsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz", - "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-arm": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz", - "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz", - "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-ia32": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz", - "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-loong64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz", - "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-mips64el": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz", - "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-ppc64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz", - "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-riscv64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz", - "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-s390x": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz", - "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/linux-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz", - "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/netbsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz", - "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/openbsd-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz", - "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/sunos-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz", - "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/win32-arm64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz", - "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/win32-ia32": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz", - "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@esbuild/win32-x64": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz", - "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/vitest/node_modules/@vitest/mocker": { - "version": "4.0.16", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.16.tgz", - "integrity": "sha512-yb6k4AZxJTB+q9ycAvsoxGn+j/po0UaPgajllBgt1PzoMAAmJGYFdDk0uCcRcxb3BrME34I6u8gHZTQlkqSZpg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/spy": "4.0.16", - "estree-walker": "^3.0.3", - "magic-string": "^0.30.21" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "msw": "^2.4.9", - "vite": "^6.0.0 || ^7.0.0-0" - }, - "peerDependenciesMeta": { - "msw": { - "optional": true - }, - "vite": { - "optional": true - } - } - }, - "node_modules/vitest/node_modules/esbuild": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz", - "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.27.2", - "@esbuild/android-arm": "0.27.2", - "@esbuild/android-arm64": "0.27.2", - "@esbuild/android-x64": "0.27.2", - "@esbuild/darwin-arm64": "0.27.2", - "@esbuild/darwin-x64": "0.27.2", - "@esbuild/freebsd-arm64": "0.27.2", - "@esbuild/freebsd-x64": "0.27.2", - "@esbuild/linux-arm": "0.27.2", - "@esbuild/linux-arm64": "0.27.2", - "@esbuild/linux-ia32": "0.27.2", - "@esbuild/linux-loong64": "0.27.2", - "@esbuild/linux-mips64el": "0.27.2", - "@esbuild/linux-ppc64": "0.27.2", - "@esbuild/linux-riscv64": "0.27.2", - "@esbuild/linux-s390x": "0.27.2", - "@esbuild/linux-x64": "0.27.2", - "@esbuild/netbsd-arm64": "0.27.2", - "@esbuild/netbsd-x64": "0.27.2", - "@esbuild/openbsd-arm64": "0.27.2", - "@esbuild/openbsd-x64": "0.27.2", - "@esbuild/openharmony-arm64": "0.27.2", - "@esbuild/sunos-x64": "0.27.2", - "@esbuild/win32-arm64": "0.27.2", - "@esbuild/win32-ia32": "0.27.2", - "@esbuild/win32-x64": "0.27.2" - } - }, - "node_modules/vitest/node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/vitest/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, - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/vitest/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/vitest/node_modules/vite": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.0.tgz", - "integrity": "sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.27.0", - "fdir": "^6.5.0", - "picomatch": "^4.0.3", - "postcss": "^8.5.6", - "rollup": "^4.43.0", - "tinyglobby": "^0.2.15" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^20.19.0 || >=22.12.0", - "jiti": ">=1.21.0", - "less": "^4.0.0", - "lightningcss": "^1.21.0", - "sass": "^1.70.0", - "sass-embedded": "^1.70.0", - "stylus": ">=0.54.8", - "sugarss": "^5.0.0", - "terser": "^5.16.0", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "jiti": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/void-elements": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "dev": true, - "license": "MIT", - "dependencies": { - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/webidl-conversions": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-8.0.1.tgz", - "integrity": "sha512-BMhLD/Sw+GbJC21C/UgyaZX41nPt8bUTg+jWyDeg7e7YN4xOM05YPSIXceACnXVtqyEw/LMClUQMtMZ+PGGpqQ==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=20" - } - }, - "node_modules/whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/whatwg-url": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-15.1.0.tgz", - "integrity": "sha512-2ytDk0kiEj/yu90JOAp44PVPUkO9+jVhyf+SybKlRHSDlvOOZhdPIrr7xTH64l4WixO2cP+wQIcgujkGBPPz6g==", - "dev": true, - "license": "MIT", - "dependencies": { - "tr46": "^6.0.0", - "webidl-conversions": "^8.0.0" - }, - "engines": { - "node": ">=20" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "license": "ISC" - }, - "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, - "license": "MIT", - "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/why-is-node-running": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", - "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", - "dev": true, - "license": "MIT", - "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ws": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true, - "license": "MIT" - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "license": "ISC" - }, - "node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "license": "MIT", - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "license": "ISC", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yargs/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zod": { - "version": "3.25.76", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", - "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - } - } -} diff --git a/web/package.json b/web/package.json index 185a0abc..ab0ce0c1 100644 --- a/web/package.json +++ b/web/package.json @@ -16,7 +16,7 @@ }, "dependencies": { "@hookform/resolvers": "^3.9.0", - "@pezkuwi/api": "^16.5.6", + "@pezkuwi/api": "^16.5.9", "@pezkuwi/extension-dapp": "^0.62.14", "@pezkuwi/keyring": "^14.0.7", "@pezkuwi/util": "^14.0.7", diff --git a/web/public/docs/sdk/src/guides/enable_pov_reclaim.rs b/web/public/docs/sdk/src/guides/enable_pov_reclaim.rs index 6469b368..75030ac8 100644 --- a/web/public/docs/sdk/src/guides/enable_pov_reclaim.rs +++ b/web/public/docs/sdk/src/guides/enable_pov_reclaim.rs @@ -6,7 +6,7 @@ //! technical details are available in the original [pull request](https://github.com/pezkuwichain/pezkuwi-sdk/issues/257). //! //! # What is PoV reclaim? -//! When a teyrchain submits a block to a relay chain like Pezkuwi or Kusama, it sends the block +//! When a teyrchain submits a block to a relay chain like Pezkuwi or Dicle, it sends the block //! itself and a storage proof. Together they form the Proof-of-Validity (PoV). The PoV allows the //! relay chain to validate the teyrchain block by re-executing it. Relay chain //! validators distribute this PoV among themselves over the network. This distribution is costly diff --git a/web/public/docs/sdk/src/pezkuwi_sdk/templates.rs b/web/public/docs/sdk/src/pezkuwi_sdk/templates.rs index 07a54d19..51867a00 100644 --- a/web/public/docs/sdk/src/pezkuwi_sdk/templates.rs +++ b/web/public/docs/sdk/src/pezkuwi_sdk/templates.rs @@ -18,7 +18,7 @@ //! template can act as a good starting point for those who want to launch a solochain. //! - [`teyrchain-template`](https://github.com/pezkuwichain/pezkuwi-sdk-teyrchain-template): //! A teyrchain template ready to be connected to a relay-chain, such as [Paseo](https://github.com/paseo-network/.github) -//! , Kusama or Pezkuwi. +//! , Dicle or Pezkuwi. //! //! Note that these templates are mirrored automatically from [this](https://github.com/pezkuwichain/pezkuwi-sdk/blob/master/templates) //! directory of pezkuwi-sdk, therefore any changes to them should be made as a PR to this repo. diff --git a/web/public/docs/sdk/src/reference_docs/glossary.rs b/web/public/docs/sdk/src/reference_docs/glossary.rs index e0c7de9a..376709d4 100644 --- a/web/public/docs/sdk/src/reference_docs/glossary.rs +++ b/web/public/docs/sdk/src/reference_docs/glossary.rs @@ -104,7 +104,7 @@ //! #### Teyrchain //! //! Short for "parallelized chain" a teyrchain is a specialized blockchain that runs in parallel to -//! the Relay Chain (Pezkuwi, Kusama, etc.), benefiting from the shared security and +//! the Relay Chain (Pezkuwi, Dicle, etc.), benefiting from the shared security and //! interoperability features of it. //! //! **Synonyms**: AppChain diff --git a/web/src/App.tsx b/web/src/App.tsx index d46f007d..e8af99cf 100644 --- a/web/src/App.tsx +++ b/web/src/App.tsx @@ -2,7 +2,7 @@ import { useEffect, lazy, Suspense } from 'react'; import { BrowserRouter as Router, Routes, Route, useLocation } from 'react-router-dom'; import { ThemeProvider } from '@/components/theme-provider'; import { AppProvider } from '@/contexts/AppContext'; -import { PolkadotProvider } from '@/contexts/PolkadotContext'; +import { PezkuwiProvider } from '@/contexts/PezkuwiContext'; import { WalletProvider } from '@/contexts/WalletContext'; import { WebSocketProvider } from '@/contexts/WebSocketContext'; import { IdentityProvider } from '@/contexts/IdentityContext'; @@ -102,7 +102,7 @@ function App() { - + @@ -218,7 +218,7 @@ function App() { - + diff --git a/web/src/components/AccountBalance.tsx b/web/src/components/AccountBalance.tsx index 77d66dea..5030747f 100644 --- a/web/src/components/AccountBalance.tsx +++ b/web/src/components/AccountBalance.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { usePolkadot } from '@/contexts/PolkadotContext'; +import { usePezkuwi } from '@/contexts/PezkuwiContext'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; import { Wallet, TrendingUp, ArrowDownRight, RefreshCw, Award, Plus, Coins, Send, Shield, Users } from 'lucide-react'; import { Button } from '@/components/ui/button'; @@ -18,7 +18,7 @@ interface TokenBalance { } export const AccountBalance: React.FC = () => { - const { api, isApiReady, selectedAccount } = usePolkadot(); + const { api, isApiReady, selectedAccount } = usePezkuwi(); const [balance, setBalance] = useState<{ free: string; reserved: string; diff --git a/web/src/components/AddLiquidityModal.tsx b/web/src/components/AddLiquidityModal.tsx index 22f6d4b1..f99ac16e 100644 --- a/web/src/components/AddLiquidityModal.tsx +++ b/web/src/components/AddLiquidityModal.tsx @@ -1,7 +1,7 @@ import React, { useState, useEffect } from 'react'; import { X, Plus, Info, AlertCircle } from 'lucide-react'; import { web3FromAddress } from '@pezkuwi/extension-dapp'; -import { usePolkadot } from '@/contexts/PolkadotContext'; +import { usePezkuwi } from '@/contexts/PezkuwiContext'; import { useWallet } from '@/contexts/WalletContext'; import { Button } from '@/components/ui/button'; import { Alert, AlertDescription } from '@/components/ui/alert'; @@ -54,7 +54,7 @@ export const AddLiquidityModal: React.FC = ({ asset0 = 0, // Default to wHEZ asset1 = 1 // Default to PEZ }) => { - const { api, selectedAccount, isApiReady } = usePolkadot(); + const { api, selectedAccount, isApiReady } = usePezkuwi(); const { balances, refreshBalances } = useWallet(); const [amount0, setAmount0] = useState(''); diff --git a/web/src/components/AppLayout.tsx b/web/src/components/AppLayout.tsx index b950aa9f..9c6800e5 100644 --- a/web/src/components/AppLayout.tsx +++ b/web/src/components/AppLayout.tsx @@ -28,7 +28,7 @@ import { StakingDashboard } from './staking/StakingDashboard'; import { MultiSigWallet } from './wallet/MultiSigWallet'; import { useWallet } from '@/contexts/WalletContext'; import { supabase } from '@/lib/supabase'; -import { PolkadotWalletButton } from './PolkadotWalletButton'; +import { PezkuwiWalletButton } from './PezkuwiWalletButton'; import { DEXDashboard } from './dex/DEXDashboard'; import { P2PDashboard } from './p2p/P2PDashboard'; import EducationPlatform from '../pages/EducationPlatform'; @@ -286,7 +286,7 @@ const AppLayout: React.FC = () => { - + diff --git a/web/src/components/HeroSection.tsx b/web/src/components/HeroSection.tsx index 646a6709..41caa232 100644 --- a/web/src/components/HeroSection.tsx +++ b/web/src/components/HeroSection.tsx @@ -1,12 +1,14 @@ import React, { useState, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; -import { ChevronRight, Shield } from 'lucide-react'; -import { usePolkadot } from '../contexts/PolkadotContext'; +import { ChevronRight, Shield, Smartphone } from 'lucide-react'; +import { usePezkuwi } from '../contexts/PezkuwiContext'; +import { useWallet } from '../contexts/WalletContext'; // Import useWallet import { formatBalance } from '@pezkuwi/lib/wallet'; const HeroSection: React.FC = () => { const { t } = useTranslation(); - const { api, isApiReady } = usePolkadot(); + const { api, isApiReady } = usePezkuwi(); + const { selectedAccount } = useWallet(); // Use selectedAccount from WalletContext const [stats, setStats] = useState({ activeProposals: 0, totalVoters: 0, @@ -18,6 +20,20 @@ const HeroSection: React.FC = () => { const fetchStats = async () => { if (!api || !isApiReady) return; + let currentTrustScore = 0; // Default if not fetched or no account + if (selectedAccount?.address) { + try { + // Assuming pallet-staking-score has a storage item for trust scores + // The exact query might need adjustment based on chain metadata + const rawTrustScore = await api.query.stakingScore.trustScore(selectedAccount.address); + // Assuming trustScore is a simple number or a wrapper around it + currentTrustScore = rawTrustScore.isSome ? rawTrustScore.unwrap().toNumber() : 0; + } catch (err) { + if (import.meta.env.DEV) console.warn('Failed to fetch trust score:', err); + currentTrustScore = 0; + } + } + try { // Fetch active referenda let activeProposals = 0; @@ -60,13 +76,14 @@ const HeroSection: React.FC = () => { activeProposals, totalVoters, tokensStaked, - trustScore: 0 // TODO: Calculate trust score + trustScore: currentTrustScore }); if (import.meta.env.DEV) console.log('✅ Hero stats updated:', { activeProposals, totalVoters, - tokensStaked + tokensStaked, + trustScore: currentTrustScore }); } catch (error) { if (import.meta.env.DEV) console.error('Failed to fetch hero stats:', error); @@ -74,7 +91,7 @@ const HeroSection: React.FC = () => { }; fetchStats(); - }, [api, isApiReady]); + }, [api, isApiReady, selectedAccount]); // Add selectedAccount to dependencies return (
@@ -133,6 +150,14 @@ const HeroSection: React.FC = () => { {t('hero.exploreGovernance', 'Explore Governance')} + + + {t('hero.downloadWallet', 'Download Mobile Wallet')} +